bocoup / test262

Home Page:http://test262.ecmascript.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tests for lexical scoping semantics in eval contexts

jugglinmike opened this issue · comments

Eval can go in all sorts of places, such as

(({[eval("var x")]: y}) => x)([1])

(which I think should be a ReferenceError, but I may be mistaken)

Putting eval all over the place gets at lots of weird edge cases of
scoping. V8 has put a lot of work into getting these right, but we're
still not positive we do everywhere, and we haven't gotten very
complete test coverage from our fuzzer. We've had lots of crashing
bugs and also lots of scope mis-resolution. One piece of difficulty is
arrow function parameters, whose scopes aren't immediately clear when
being parsed from left to right.

This may be more easy to get a full set of tests running using the new
tools for programmatic test generation (even if it's not automated with
the dev branch yet).