v8/test/mjsunit/harmony
adamk 0bdaa4d877 Fix eval calls in initializers of arrow function parameters
This requires copying usage flags from the outer scope to the
arrow scope upon encountering the arrow token.

In order to properly pass-on the calls_eval bit, now record
that bit on script scopes just like everywhere else, and add
necessary code to scopes.cc to handle that change in behavior.

Also factored out scope flag propagation to its own method to
make the call site simple (though note that only the eval
bit makes any difference for arrows).

BUG=v8:4395
LOG=n

Review URL: https://codereview.chromium.org/1423613002

Cr-Commit-Position: refs/heads/master@{#31660}
2015-10-29 15:16:40 +00:00
..
regress Fix eval calls in initializers of arrow function parameters 2015-10-29 15:16:40 +00:00
array-concat.js Guard @@isConcatSpreadable behind a flag 2015-07-08 21:49:58 +00:00
array-includes-to-object-sloppy.js Add Array.prototype.includes 2014-12-10 08:58:15 +00:00
array-includes-to-object-strict.js Add Array.prototype.includes 2014-12-10 08:58:15 +00:00
array-includes.js Add Array.prototype.includes 2014-12-10 08:58:15 +00:00
array-length.js Reland of Check that array length stays a safe integer in Array.prototype.push (patchset #1 id:1 of https://codereview.chromium.org/1418093007/ ) 2015-10-27 16:30:45 +00:00
arrow-rest-params-lazy-parsing.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
arrow-rest-params.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
atomics.js [Atomics] Remove support for atomic accesses on floating-point values. 2015-09-15 21:25:14 +00:00
block-conflicts-sloppy.js Add class to existing lexical scoping tests 2015-08-12 18:43:06 +00:00
block-const-assign-sloppy.js Delete --harmony-computed-property-names flag 2015-08-05 21:32:38 +00:00
block-eval-var-over-legacy-const.js Test for var declarations in eval which conflict with let 2015-10-12 14:31:01 +00:00
block-eval-var-over-let.js Test for var declarations in eval which conflict with let 2015-10-12 14:31:01 +00:00
block-for-sloppy.js [es6] Implement completion value reform (--harmony-completion). 2015-10-08 13:57:04 +00:00
block-lazy-compile.js Preliminary code for block scopes and block contexts. 2011-08-11 16:29:28 +00:00
block-leave-sloppy.js Split off a separate --harmony_sloppy_let flag 2015-07-25 00:05:18 +00:00
block-let-contextual-sloppy.js Prohibit let in lexical bindings 2015-10-05 20:29:22 +00:00
block-let-crankshaft-sloppy.js Split off a separate --harmony_sloppy_let flag 2015-07-25 00:05:18 +00:00
block-let-declaration-sloppy.js Add class to existing lexical scoping tests 2015-08-12 18:43:06 +00:00
block-let-semantics-sloppy.js Implement sloppy-mode block-defined functions (Annex B 3.3) 2015-09-21 04:31:09 +00:00
block-scope-class.js Split function block scoping into a separate flag 2015-08-12 00:00:01 +00:00
block-scoping-sloppy.js [turbofan] Initial support for monomorphic/polymorphic property loads. 2015-10-19 05:24:51 +00:00
block-scoping-top-level-sloppy.js Split off a separate --harmony_sloppy_let flag 2015-07-25 00:05:18 +00:00
block-sloppy-function.js Extend Annex B 3.3 sloppy-mode block-scoped hoisting to scripts, eval 2015-09-30 23:48:34 +00:00
classes-derived-return-type.js [es6] Fix return checking in derived constructors 2015-04-28 16:09:30 +00:00
completion.js [es6] Implement completion value reform (--harmony-completion). 2015-10-08 13:57:04 +00:00
dataview-accessors.js Fix data view accessors to throw execptions on offsets bigger than size_t. 2013-11-18 15:16:22 +00:00
default-parameters-debug.js [es6] Implement default parameters 2015-08-17 12:02:08 +00:00
default-parameters.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
destructuring-parameters-literalcount-nolazy.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
destructuring-parameters-literalcount.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
destructuring.js Destructuring array without initializer throws an exception 2015-10-06 17:01:28 +00:00
do-expressions.js Adapt tests in preparation of shipping --harmony-completion. 2015-10-23 10:26:01 +00:00
futex.js Remove harmony-atomics flag and collapse it into sharedarraybuffer flag 2015-09-01 18:34:00 +00:00
module-linking.js Remove --harmony-scoping flag. 2015-03-13 15:15:57 +00:00
module-parsing-eval.js Enable compiling mjsunit tests as ES6 modules 2015-02-10 19:11:55 +00:00
module-recompile.js Implement proper module linking. 2012-07-09 08:59:03 +00:00
module-resolution.js Remove --harmony-scoping flag. 2015-03-13 15:15:57 +00:00
modules.js Enable compiling mjsunit tests as ES6 modules 2015-02-10 19:11:55 +00:00
private.js Update to ES2015 == semantics for Symbol/SIMD wrappers 2015-10-27 20:20:24 +00:00
proxies-example-membrane.js Remove proxies from --harmony switch for M38, because problems 2014-08-08 09:58:19 +00:00
proxies-for.js Fix ToNameArray 2015-05-22 10:57:20 +00:00
proxies-function.js [runtime] Replace many buggy uses of %_CallFunction with %_Call. 2015-09-08 13:35:32 +00:00
proxies-hash.js Enable ES6 Map and Set by default 2014-08-05 19:37:32 +00:00
proxies-json.js Remove proxies from --harmony switch for M38, because problems 2014-08-08 09:58:19 +00:00
proxies-symbols.js Enable ES6 Symbols by default 2014-08-04 18:17:54 +00:00
proxies-with-unscopables.js ES6: Update unscopables to match spec 2014-12-16 20:07:41 +00:00
proxies-with.js Proxies: Make 'with' work, plus minor other fixes 2013-07-19 14:07:23 +00:00
proxies.js Fix keyed stores to strings convertible to indices 2015-07-13 10:46:35 +00:00
reflect-apply.js [es6] implement Reflect.apply() & Reflect.construct() 2015-03-19 14:47:27 +00:00
reflect-construct.js [es6] implement Reflect.apply() & Reflect.construct() 2015-03-19 14:47:27 +00:00
reflect-enumerate-delete.js [es6] Implement Reflect.enumerate. 2015-10-15 12:59:37 +00:00
reflect-enumerate-opt.js [es6] Implement Reflect.enumerate. 2015-10-15 12:59:37 +00:00
reflect-enumerate-special-cases.js [es6] Implement Reflect.enumerate. 2015-10-15 12:59:37 +00:00
reflect-enumerate.js [es6] Implement Reflect.enumerate. 2015-10-15 12:59:37 +00:00
reflect-get-prototype-of.js [es6] Partially implement Reflect.getPrototypeOf. 2015-10-21 15:45:24 +00:00
reflect-prevent-extensions.js [es6] Partially implement Reflect.preventExtensions. 2015-10-21 09:23:47 +00:00
reflect-set-prototype-of.js Fix corner-case behavior of JSObject::SetPrototype. 2015-10-23 14:52:26 +00:00
reflect.js [es6] Partially implement Reflect.setPrototypeOf. 2015-10-22 11:21:43 +00:00
regexp-flags.js Split --harmony-unicode and --harmony-unicode-regexps. 2015-02-05 14:17:09 +00:00
regexp-sticky.js RegExp: Fix update of lastIndex on non-global sticky 2015-10-06 21:24:12 +00:00
regexp-tolength.js Make RegExp use ToLength on lastIndex when flag is turned on 2015-10-15 14:10:48 +00:00
rest-params-lazy-parsing.js Remove --harmony-arrow-functions flag 2015-09-30 19:50:40 +00:00
rest-params.js [es6] Re-implement rest parameters via desugaring. 2015-09-02 21:11:05 +00:00
set-prototype-of.js Fix corner-case behavior of JSObject::SetPrototype. 2015-10-23 14:52:26 +00:00
sharedarraybuffer.js Revert of Add %TypedArray% to proto chain (patchset #6 id:100001 of https://codereview.chromium.org/1186733002/) 2015-06-17 09:05:51 +00:00
simd.js Update to ES2015 == semantics for Symbol/SIMD wrappers 2015-10-27 20:20:24 +00:00
to-length.js [runtime] Implement %_ToLength via ToLengthStub. 2015-10-19 08:35:18 +00:00
to-name.js [es6] Implement Date.prototype[@@toPrimitive] as C++ builtin. 2015-08-31 12:53:10 +00:00
to-number.js [es6] Implement Date.prototype[@@toPrimitive] as C++ builtin. 2015-08-31 12:53:10 +00:00
to-primitive.js [es6] Implement Date.prototype[@@toPrimitive] as C++ builtin. 2015-08-31 12:53:10 +00:00
to-string.js [es6] Implement Date.prototype[@@toPrimitive] as C++ builtin. 2015-08-31 12:53:10 +00:00
typed-array-includes.js Add includes method to typed arrays 2015-08-11 17:55:24 +00:00
unicode-escapes-in-regexps.js Split --harmony-unicode and --harmony-unicode-regexps. 2015-02-05 14:17:09 +00:00