chakra-core/ChakraCore
View on GitHubHoisting a var declaration past a lexical declaration of the same name should be a SyntaxError
Open
#357 opened on Feb 19, 2016
BugSeverity: 2help wanted
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).