Fix 'eval' in class extends clauses to be always-strict
Compiler backends get their language mode from the current function, but should instead be deriving it from the current scope. This allows proper handling of the always-strictness of class declarations and expressions, and in particular the treatment of 'eval' calls in an extends clause as a strict eval. Also fix the parser's RecordEvalCall logic to only reach out to the DeclarationScope in sloppy mode, which fixes the strange case of a sloppy function thinking it contains a sloppy eval when in fact it contains only a strict eval. BUG=v8:4970 LOG=n Review-Url: https://codereview.chromium.org/1931003003 Cr-Commit-Position: refs/heads/master@{#36001}
Showing
Please
register
or
sign in
to comment