chakra-core/ChakraCore

Hoisting a var declaration past a lexical declaration of the same name should be a SyntaxError

Open

#357 ouverte le 19 févr. 2016

Voir sur GitHub
 (4 commentaires) (0 réactions) (0 assignés)JavaScript (1 374 forks)batch import
BugSeverity: 2help wanted

Métriques du dépôt

Stars
 (9 000 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

Second bullet point of block static semantics and similarly for function body static semantics.

E.g.

let x;
{
    var x; // error (already works)
    let y;
    var y; // should be an error (doesn't work)
    {
        var y; // should also be an error (doesn't work)
    }
}

This applies for var declarations hoisting past all lexical declarations, i.e. let, const, class, function (and generators and async functions).

Guide contributeur