chakra-core/ChakraCore

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

Open

#357 aberto em 19 de fev. de 2016

Ver no GitHub
 (4 comments) (0 reactions) (0 assignees)JavaScript (1.374 forks)batch import
BugSeverity: 2help wanted

Métricas do repositório

Stars
 (9.000 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

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).

Guia do colaborador