chakra-core/ChakraCore

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

Open

#357 建立於 2016年2月19日

在 GitHub 查看
 (4 留言) (0 反應) (0 負責人)JavaScript (9,000 star) (1,374 fork)batch import
BugSeverity: 2help wanted

描述

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

貢獻者指南