From 6e07f5a75ba2c949ac96efabd5248c76b9957112 Mon Sep 17 00:00:00 2001 From: littledan Date: Mon, 21 Sep 2015 09:30:25 -0700 Subject: [PATCH] Stage sloppy block-scoped functions (Annex B 3.3) Turn on some test262 tests that pass now. R=adamk LOG=Y BUG=v8:4285 Review URL: https://codereview.chromium.org/1357233002 Cr-Commit-Position: refs/heads/master@{#30853} --- src/flag-definitions.h | 32 ++++++++++++++--------------- test/test262-es6/test262-es6.status | 9 -------- 2 files changed, 16 insertions(+), 25 deletions(-) diff --git a/src/flag-definitions.h b/src/flag-definitions.h index bac581b49e..df22b0bd5d 100644 --- a/src/flag-definitions.h +++ b/src/flag-definitions.h @@ -188,25 +188,25 @@ DEFINE_IMPLICATION(es_staging, harmony) DEFINE_BOOL(legacy_const, true, "legacy semantics for const in sloppy mode") // Features that are still work in progress (behind individual flags). -#define HARMONY_INPROGRESS(V) \ - V(harmony_modules, "harmony modules") \ - V(harmony_regexps, "harmony regular expression extensions") \ - V(harmony_proxies, "harmony proxies") \ - V(harmony_sloppy_function, "harmony sloppy function block scoping") \ - V(harmony_unicode_regexps, "harmony unicode regexps") \ - V(harmony_tolength, "harmony ToLength") \ - V(harmony_reflect, "harmony Reflect API") \ - V(harmony_destructuring, "harmony destructuring") \ - V(harmony_default_parameters, "harmony default parameters") \ - V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ +#define HARMONY_INPROGRESS(V) \ + V(harmony_modules, "harmony modules") \ + V(harmony_regexps, "harmony regular expression extensions") \ + V(harmony_proxies, "harmony proxies") \ + V(harmony_unicode_regexps, "harmony unicode regexps") \ + V(harmony_tolength, "harmony ToLength") \ + V(harmony_reflect, "harmony Reflect API") \ + V(harmony_destructuring, "harmony destructuring") \ + V(harmony_default_parameters, "harmony default parameters") \ + V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ V(harmony_simd, "harmony simd") // Features that are complete (but still behind --harmony/es-staging flag). -#define HARMONY_STAGED(V) \ - V(harmony_tostring, "harmony toString") \ - V(harmony_concat_spreadable, "harmony isConcatSpreadable") \ - V(harmony_rest_parameters, "harmony rest parameters") \ - V(harmony_sloppy, "harmony features in sloppy mode") \ +#define HARMONY_STAGED(V) \ + V(harmony_tostring, "harmony toString") \ + V(harmony_concat_spreadable, "harmony isConcatSpreadable") \ + V(harmony_rest_parameters, "harmony rest parameters") \ + 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") // Features that are shipping (turned on by default, but internal flag remains). diff --git a/test/test262-es6/test262-es6.status b/test/test262-es6/test262-es6.status index 504580e0c7..0a8f4e8798 100644 --- a/test/test262-es6/test262-es6.status +++ b/test/test262-es6/test262-es6.status @@ -113,15 +113,6 @@ 'language/statements/for-of/const-bound-names-fordecl-tdz-for-of': [PASS, FAIL_SLOPPY], 'language/statements/for-of/const-fresh-binding-per-iteration-for-of': [PASS, FAIL_SLOPPY], - # Functions in blocks are var-declared and hoisted in sloppy mode - # https://code.google.com/p/v8/issues/detail?id=3305 - 'language/block-scope/shadowing/dynamic-lookup-from-closure': [PASS, FAIL_SLOPPY], - 'language/block-scope/shadowing/lookup-from-closure': [PASS, FAIL_SLOPPY], - '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/statements/let/block-local-closure-set-before-initialization': [PASS, FAIL_SLOPPY], - # https://code.google.com/p/v8/issues/detail?id=4405 'language/block-scope/leave/outermost-binding-updated-in-catch-block-nested-block-let-declaration-unseen-outside-of-block': [PASS, FAIL],