Commit 9f9cb990 authored by littledan's avatar littledan Committed by Commit bot

Stage sloppy classes

This patch puts --harmony-sloppy into staging. Now that let, lexically-scoped
functions and ES2015 sloppy mode const semantics have been split off into
separate flags, the change only enables classes in sloppy mode.

BUG=v8:3305
R=adamk
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#30141}
parent e261540b
......@@ -189,7 +189,6 @@ DEFINE_BOOL(legacy_const, true, "legacy semantics for const in sloppy mode")
V(harmony_modules, "harmony modules") \
V(harmony_regexps, "harmony regular expression extensions") \
V(harmony_proxies, "harmony proxies") \
V(harmony_sloppy, "harmony features in sloppy mode") \
V(harmony_sloppy_function, "harmony sloppy function block scoping") \
V(harmony_sloppy_let, "harmony let in sloppy mode") \
V(harmony_unicode_regexps, "harmony unicode regexps") \
......@@ -204,7 +203,8 @@ DEFINE_BOOL(legacy_const, true, "legacy semantics for const in sloppy mode")
V(harmony_array_includes, "harmony Array.prototype.includes") \
V(harmony_tostring, "harmony toString") \
V(harmony_concat_spreadable, "harmony isConcatSpreadable") \
V(harmony_rest_parameters, "harmony rest parameters")
V(harmony_rest_parameters, "harmony rest parameters") \
V(harmony_sloppy, "harmony features in sloppy mode")
// Features that are shipping (turned on by default, but internal flag remains).
#define HARMONY_SHIPPING(V) \
......
......@@ -76,12 +76,6 @@
# Class, let, const in sloppy mode.
# https://code.google.com/p/v8/issues/detail?id=3305
'built-ins/Array/prototype/concat/Array.prototype.concat_non-array': [PASS, FAIL_SLOPPY],
'built-ins/Promise/all/ctx-ctor': [PASS, FAIL_SLOPPY],
'built-ins/Promise/prototype/then/ctor-custom': [PASS, FAIL_SLOPPY],
'built-ins/Promise/race/ctx-ctor': [PASS, FAIL_SLOPPY],
'built-ins/Promise/reject/ctx-ctor': [PASS, FAIL_SLOPPY],
'built-ins/Promise/resolve/ctx-ctor': [PASS, FAIL_SLOPPY],
'language/block-scope/leave/finally-block-let-declaration-only-shadows-outer-parameter-value-1': [PASS, FAIL_SLOPPY],
'language/block-scope/leave/finally-block-let-declaration-only-shadows-outer-parameter-value-2': [PASS, FAIL_SLOPPY],
'language/block-scope/leave/for-loop-block-let-declaration-only-shadows-outer-parameter-value-1': [PASS, FAIL_SLOPPY],
......@@ -114,120 +108,6 @@
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-function-declaration': [PASS, FAIL_SLOPPY],
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-var': [PASS, FAIL_SLOPPY],
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-var-with-function-declaration': [PASS, FAIL_SLOPPY],
'language/class/definition/ClassDeclaration_restricted-properties': [PASS, FAIL_SLOPPY],
'language/class/definition/ClassExpression_restricted-properties': [PASS, FAIL_SLOPPY],
'language/class/definition/ClassMethod_restricted-properties': [PASS, FAIL_SLOPPY],
'language/class/method-definition/generator-no-yield': [PASS, FAIL_SLOPPY],
'language/class/method-definition/generator-return': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-expression-with-rhs': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-expression-without-rhs': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-generator-method-binding-identifier': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-literal-property-name': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-property-name': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-statement': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-as-yield-operand': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-newline': [PASS, FAIL_SLOPPY],
'language/class/method-definition/yield-star-before-newline': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/accessor/*': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/method/*': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/generator-constructor': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/generator-prototype': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/getter-constructor': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/getter-prototype': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/method-constructor': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/method-prototype': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/setter-constructor': [PASS, FAIL_SLOPPY],
'language/computed-property-names/class/static/setter-prototype': [PASS, FAIL_SLOPPY],
'language/computed-property-names/to-name-side-effects/class': [PASS, FAIL_SLOPPY],
'language/computed-property-names/to-name-side-effects/numbers-class': [PASS, FAIL_SLOPPY],
'language/expressions/arrow-function/lexical-super-call-from-within-constructor':[PASS, FAIL_SLOPPY],
'language/expressions/arrow-function/lexical-super-property': [PASS, FAIL_SLOPPY],
'language/expressions/arrow-function/lexical-super-property-from-within-constructor': [PASS, FAIL_SLOPPY],
'language/expressions/arrow-function/lexical-supercall-from-immediately-invoked-arrow': [PASS, FAIL_SLOPPY],
'language/expressions/class/restricted-properties': [PASS, FAIL_SLOPPY],
'language/expressions/object/method-definition/generator-param-redecl-const': [PASS, FAIL_SLOPPY],
'language/expressions/object/method-definition/generator-shadow-parameter-const': [PASS, FAIL_SLOPPY],
'language/rest-parameters/with-new-target': [PASS, FAIL_SLOPPY],
'language/statements/class/arguments/access': [PASS, FAIL_SLOPPY],
'language/statements/class/arguments/default-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/accessors': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/constructable-but-no-prototype': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/constructor-property': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/constructor-strict-by-default': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/getters': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/getters-2': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/implicit-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/invalid-extends': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-expression-with-rhs': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-generator-method-binding-identifier': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-literal-property-name': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-property-name': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-statement': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-yield-operand': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-newline': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-star-before-newline': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-named-eval-arguments': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-restricted-properties': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/numeric-property-names': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/prototype-getter': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/prototype-property': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/prototype-setter': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/prototype-wiring': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/setters': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/setters-2': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/side-effects-in-extends': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/side-effects-in-property-define': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/this-access-restriction': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/this-access-restriction-2': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/this-check-ordering': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/basic': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/const': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/expression': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/in-extends-expression': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/in-extends-expression-assigned': [PASS, FAIL_SLOPPY],
'language/statements/class/name-binding/in-extends-expression-grouped': [PASS, FAIL_SLOPPY],
'language/statements/class/strict-mode/arguments-caller': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/binding': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/builtins': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/class-definition-evaluation-empty-constructor-heritage-present': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/class-definition-null-proto': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/class-definition-null-proto-contains-return-override': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/class-definition-null-proto-missing-return-override': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/class-definition-superclass-generator': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/default-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/default-constructor-2': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-boolean': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-empty': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-null': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-number': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-object': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-string': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-symbol': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-this': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/derived-class-return-override-with-undefined': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/superclass-prototype-setter-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/superclass-prototype-setter-method-override': [PASS, FAIL_SLOPPY],
'language/statements/class/subclass/superclass-static-method-override': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-getter': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-methods': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-setter': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-static-getter': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-static-methods': [PASS, FAIL_SLOPPY],
'language/statements/class/super/in-static-setter': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-body-has-direct-super-class-heritage': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-body-method-definition-super-property': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-declaration-binding-identifier-class-element-list': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-declaration-computed-method-definition': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-declaration-computed-method-generator-definition': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-declaration-heritage-identifier-reference-class-element-list': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-expression': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-expression-binding-identifier-opt-class-element-list': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-expression-heritage-identifier-reference': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/class-method-propname-constructor': [PASS, FAIL_SLOPPY],
'language/statements/class/syntax/early-errors/class-body-constructor-empty-missing-class-heritage': [PASS, FAIL_SLOPPY],
'language/statements/const/block-local-closure-get-before-initialization': [PASS, FAIL_SLOPPY],
'language/statements/const/block-local-use-before-initialization-in-declaration-statement': [PASS, FAIL_SLOPPY],
'language/statements/const/block-local-use-before-initialization-in-prior-statement': [PASS, FAIL_SLOPPY],
......@@ -296,12 +176,6 @@
'language/statements/let/syntax/with-initialisers-in-statement-positions-default-statement-list': [PASS, FAIL_SLOPPY],
'language/statements/let/syntax/without-initialisers-in-statement-positions-case-expression-statement-list': [PASS, FAIL_SLOPPY],
'language/statements/let/syntax/without-initialisers-in-statement-positions-default-statement-list': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-yield-as-expression-without-rhs': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-return': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/methods-gen-no-yield': [PASS, FAIL_SLOPPY],
'language/statements/class/definition/fn-name-static-precedence': [PASS, FAIL_SLOPPY],
'language/statements/class/restricted-properties': [PASS, FAIL_SLOPPY],
'language/statements/class/name': [PASS, FAIL_SLOPPY],
# https://code.google.com/p/v8/issues/detail?id=3305
# This times out in sloppy mode because sloppy const assignment does not throw.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment