v8/test/mjsunit/es6
Caitlin Potter 26ffd5bf94 [parser] report early error when assigning to a tagged template call
Previously, Function("++f`...`) would not throw an exception until the
created function was called. Now, it throws an early ReferenceError.

This change matches the behaviour in JavaScriptCore and SpiderMonkey.

Ordinary calls such as Function("++f()") are still thrown at runtime,
also compatible with JavaScriptCore and SpiderMonkey.

BUG=v8:4480, v8:6910
R=marja@chromium.org, littledan@chromium.org

Change-Id: If31c6d360a0464744eff5d8dd377ebff184ae00e
Reviewed-on: https://chromium-review.googlesource.com/712794
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#48553}
2017-10-13 14:51:15 +00:00
..
debug-promises [debug-wrapper] Adapt tests, breakpoint.actual_location 2016-11-21 09:29:17 +00:00
regress [turbofan] Remove --turbo shorthand for --turbo-filter. 2017-06-23 11:19:19 +00:00
arguments-iterator.js
array-concat-revoked-proxy-1.js
array-concat-revoked-proxy-2.js
array-concat.js
array-copywithin.js
array-fill.js
array-find.js
array-findindex.js
array-from.js
array-iterator-detached.js [builtins] throw if TypedArray buffer is detached during iteration 2017-01-03 20:12:19 +00:00
array-iterator-turbo.js [turbofan] Fix type for HOLEY_DOUBLE_ELEMENTS loads. 2017-07-13 09:04:10 +00:00
array-iterator.js
array-length.js
array-of.js
array-prototype-values.js
array-reverse-order.js
array-species-constructor-accessor.js
array-species-constructor-delete.js
array-species-constructor.js
array-species-delete.js
array-species-modified.js
array-species-neg-zero.js
array-species-parent-constructor.js
array-species-proto.js
array-species.js [builtins] Array.prototype.concat should set length on return value 2017-08-28 18:02:48 +00:00
array-tostring.js
arraybuffer-species.js
arrow-functions-lexical-arguments.js
arrow-functions-this.js
arrow-functions.js
arrow-rest-params-lazy-parsing.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
arrow-rest-params.js
block-conflicts-sloppy.js
block-conflicts.js
block-const-assign-sloppy.js
block-const-assign.js
block-eval-var-over-let.js
block-for-sloppy.js
block-for.js
block-leave-sloppy.js
block-leave.js
block-let-contextual-sloppy.js
block-let-crankshaft-sloppy.js Use --opt instead of --crankshaft in tests. 2017-04-28 14:20:39 +00:00
block-let-crankshaft.js Use --opt instead of --crankshaft in tests. 2017-04-28 14:20:39 +00:00
block-let-declaration-sloppy.js
block-let-declaration.js
block-let-semantics-sloppy.js
block-let-semantics.js
block-scope-class.js
block-scoping-sloppy.js Use --opt instead of --crankshaft in tests. 2017-04-28 14:20:39 +00:00
block-scoping-top-level-sloppy.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
block-scoping-top-level.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
block-scoping.js Use --opt instead of --crankshaft in tests. 2017-04-28 14:20:39 +00:00
block-sloppy-function.js [scopes] Fix sloppy-mode block-scoped function hoisting edge case 2017-06-22 08:18:55 +00:00
built-in-accessor-names.js
call-with-spread-modify-array-iterator.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
call-with-spread-modify-next.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
call-with-spread.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
catch-parameter-redeclaration.js
class-computed-property-names-super.js
class-property-name-eval-arguments.js
classes-derived-return-type.js
classes-experimental.js
classes-lazy-parsing.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
classes-maps.js
classes-proxy.js
classes-subclass-arrays.js
classes-subclass-builtins.js [regexp] Remove unused code 2016-10-25 07:19:13 +00:00
classes-super.js
classes.js Fix completion value of class declarations. 2017-02-28 19:36:45 +00:00
classof-proxy.js
collection-iterator.js [turbofan] Inline Map and Set iterators into optimized code. 2017-07-14 07:02:00 +00:00
collections.js
completion.js Fix completion value of class declarations. 2017-02-28 19:36:45 +00:00
computed-property-names-classes.js Install the 'name' property in classes at runtime 2016-12-07 10:35:00 +00:00
computed-property-names-deopt.js
computed-property-names-object-literals-methods.js [runtime] Use custom maps for function closures ... 2017-07-13 13:23:06 +00:00
computed-property-names-super.js
computed-property-names.js
default-parameters-destructuring.js
default-parameters.js
destructuring-assignment-lazy.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
destructuring-assignment.js [parser] don't treat SuperCall as a valid DestructuringAssignmentTarget 2017-04-24 20:54:36 +00:00
destructuring-parameters-literalcount-nolazy.js
destructuring-parameters-literalcount.js
destructuring.js Update tests which are now failing with FLAG_lazy_inner_functions. 2016-11-22 15:46:17 +00:00
empty-for.js
for-each-in-catch.js
for-of.js
function-length-configurable.js
function-name-configurable.js
function-name.js [parser] Improve propagation of SharedFunctionInfo::has_shared_name(). 2017-06-20 09:27:49 +00:00
function-prototype-name.js
generator-destructuring.js Update tests which are now failing with FLAG_lazy_inner_functions. 2016-11-22 15:46:17 +00:00
generators-iteration.js
generators-objects.js
generators-parsing.js
generators-poisoned-properties.js
generators-runtime.js
generators-states.js
global-proto-proxy.js Allow global prototype to be a Proxy 2017-03-23 18:33:38 +00:00
hasinstance-symbol.js
indexed-integer-exotics.js
instanceof-proxies.js
instanceof.js
iteration-semantics.js
iteration-syntax.js
iterator-close.js
iterator-prototype.js
json.js
map-minus-zero.js
math-cbrt.js
math-clz32.js
math-expm1.js
math-fround.js
math-hyperbolic.js
math-hypot.js
math-log1p.js
math-log2-log10.js
math-sign.js
math-trunc.js
math.js
method-name-eval-arguments.js
microtask-delivery.js
new-target.js delete new.target should return true 2017-10-06 15:29:15 +00:00
numeric-literals.js
object-assign.js
object-literals-method.js
object-literals-property-shorthand.js
object-literals-super.js
object-tostring.js
pattern-brand-check.js
promise-internal-setter.js
promise-lookup-getter-setter.js Align __lookupGetter__/__lookupSetter__ behavior with the spec 2016-12-22 19:24:47 +00:00
promise-species.js
promise-thenable-proxy.js [promises] Move PromiseResolveThenableJob to c++ 2016-09-21 03:49:50 +00:00
promises.js [mjsunit] Exit on hitting unreachable code instead of throwing 2017-02-16 14:46:55 +00:00
prototype-ordinary-objects.js
proxies-accesschecks.js
proxies-apply.js [builtins] Introduce CallProxy builtin based on CSA 2017-07-14 11:22:48 +00:00
proxies-bind.js
proxies-construct.js [builtins] Introduce ConstructProxy builtin based on CSA 2017-07-19 05:21:13 +00:00
proxies-constructor.js [builtins] Port Proxy constructor to CSA. 2017-07-10 12:15:53 +00:00
proxies-cross-realm-exception.js
proxies-define-property.js
proxies-delete-property.js
proxies-example-membrane.js
proxies-for.js
proxies-function.js
proxies-get-own-property-descriptor.js
proxies-get-prototype-of.js
proxies-get.js Reland "[builtins] Port Proxy set trap to CSA" 2017-09-01 13:45:54 +00:00
proxies-global-reference.js
proxies-has-own-property.js
proxies-has.js [builtins] Port Proxy has trap to CSA 2017-08-16 13:05:45 +00:00
proxies-hash.js
proxies-integrity.js
proxies-is-extensible.js
proxies-json.js
proxies-keys.js
proxies-object-assign.js
proxies-ownkeys.js
proxies-prevent-extensions.js
proxies-property-is-enumerable.js
proxies-prototype-handler-stackoverflow.js
proxies-prototype-target-stackoverflow.js
proxies-revocable.js
proxies-set-prototype-of.js
proxies-set.js Reland "[builtins] Port Proxy set trap to CSA" 2017-09-01 13:45:54 +00:00
proxies-with-unscopables.js
proxies-with.js
proxies.js [runtime] Use strict mode map for the Proxy function 2017-10-06 10:58:31 +00:00
reflect-apply.js
reflect-construct.js [cleanup] Audit uses of InstallWithIntrinsicDefaultProto. 2017-06-19 15:58:43 +00:00
reflect-define-property.js Fix common misspellings 2017-08-02 09:35:28 +00:00
reflect-get-own-property-descriptor.js
reflect-get-prototype-of.js
reflect-own-keys.js
reflect-prevent-extensions.js
reflect-set-prototype-of.js
reflect.js [runtime] Let native setters have a return value. 2016-10-26 09:00:08 +00:00
regexp-constructor.js
regexp-flags.js [regexp] Use consistent map checks for fast paths 2016-10-21 11:58:50 +00:00
regexp-match-lastindex.js
regexp-prototype.js
regexp-replace-lastindex.js
regexp-sticky.js [builtins] Port String.prototype.{search, match} to CSA 2017-10-11 12:05:22 +00:00
regexp-tolength.js
regexp-tostring.js
rest-params-lazy-parsing.js [mjsunit] Remove non-existing flags from tests. 2017-05-02 08:53:51 +00:00
rest-params.js Remove the 'caller' property from the strict-mode arguments map 2016-11-04 14:30:29 +00:00
set-minus-zero.js
sloppy-restrictive-block-function.js Remove always-true --harmony-restrictive-declarations flag 2016-11-04 18:50:41 +00:00
species.js
spread-array.js
spread-call-new-class.js [Turbofan] Implement super calls with spread bytecode in assembly code. 2017-01-18 10:34:24 +00:00
spread-call-new.js
spread-call-super-property.js
spread-call.js [runtime] Port SpreadCall code to CSA. 2017-06-20 11:44:02 +00:00
string-codepointat.js
string-endswith.js [builtins] Move StringEndsWith to a C++ builtin. 2016-10-11 11:28:12 +00:00
string-fromcodepoint.js
string-html.js [builtins] Convert String HTML functions (ex. anchor, big, bold) to CSA 2017-09-16 07:18:32 +00:00
string-includes.js [builtins] Move StringIncludes to a builtin. 2016-10-10 15:01:32 +00:00
string-iterator.js Reland "[builtins] migrate C++ String Iterator builtins to baseline TurboFan" 2016-09-29 15:49:19 +00:00
string-match.js [builtins] Port String.prototype.{search, match} to CSA 2017-10-11 12:05:22 +00:00
string-raw.js
string-repeat.js [builtins] Port String.prototype.repeat to CSA 2017-09-15 06:51:56 +00:00
string-replace.js [string] Fix null handling in MaybeCallFunctionAtSymbol 2017-04-28 05:58:16 +00:00
string-search.js [builtins] Port String.prototype.{search, match} to CSA 2017-10-11 12:05:22 +00:00
string-split.js [string] Fix null handling in MaybeCallFunctionAtSymbol 2017-04-28 05:58:16 +00:00
string-startswith.js [runtime] Add PositiveNumberToUint32 helper to avoid double to uint roundtrip 2016-12-19 12:06:58 +00:00
super-with-spread-modify-array-iterator.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
super-with-spread-modify-next.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
super-with-spread.js [tests] Change '% OptimizeFunctionOnNextCall' to ' %OptimizeFunctionOnNextCall'. 2017-06-02 17:53:48 +00:00
super.js
symbols.js [runtime] Object.create(null) creates a slow object 2016-10-25 08:30:50 +00:00
templates.js [parser] report early error when assigning to a tagged template call 2017-10-13 14:51:15 +00:00
throw-type-error-function-restrictions.js
typed-array-iterator.js
typedarray-construct-by-array-like-prototype-element-added.js [builtins] Add a fast path to construct TypedArrays from holey arrays. 2017-04-26 15:36:36 +00:00
typedarray-construct-by-array-like.js [builtins] Allow TypedArray constructor to accept big negative numbers. 2017-07-13 06:43:53 +00:00
typedarray-construct-by-buffer-ordering.js [builtins] Port TypedArrayConstructByArrayLike to CodeStubAssembler. 2017-03-24 17:40:22 +00:00
typedarray-construct-offset-not-smi.js [tests] Use mock arraybuffer allocator in test to avoid huge allocation. 2017-07-03 08:11:00 +00:00
typedarray-copywithin.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-every.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-fill.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-find.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-findindex.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-foreach.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-from.js
typedarray-indexing.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-iteration.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-map.js [builtins] Enable %TypedArray%.prototype.{some,every,reduce,reduceRight,map} CSA builtins by default 2017-05-19 12:17:37 +00:00
typedarray-neutered.js [turbofan] Don't check for neutered array buffers eagerly. 2016-11-16 10:36:08 +00:00
typedarray-of.js
typedarray-proto.js
typedarray-reduce.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-reverse.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-set-length-internal.js
typedarray-set-length.js
typedarray-slice.js Fix common misspellings 2017-08-02 09:35:28 +00:00
typedarray-sort.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray-species.js
typedarray-tostring.js Reland [typedarrays] Check detached buffer at start of typed array methods 2017-04-26 06:10:17 +00:00
typedarray.js [builtins] Throw when setting typed arrays from large sources 2017-09-04 13:11:42 +00:00
unicode-character-ranges.js
unicode-escapes-in-regexps.js
unicode-escapes.js
unicode-regexp-backrefs.js
unicode-regexp-ignore-case-noi18n.js
unicode-regexp-ignore-case.js
unicode-regexp-last-index.js
unicode-regexp-restricted-syntax.js
unicode-regexp-unanchored-advance.js
unicode-regexp-zero-length.js
unscopables.js