Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(771)

Issue 1376623002: Extend Annex B 3.3 sloppy-mode block-scoped hoisting to scripts, eval (Closed)

Created:
5 years, 2 months ago by Dan Ehrenberg
Modified:
5 years, 2 months ago
Reviewers:
adamk
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Extend Annex B 3.3 sloppy-mode block-scoped hoisting to scripts, eval The ES2015 spec is missing an extension of sloppy-mode block-scoped function behavior to the global scope in scripts, as well as to eval. This patch brings that hoisting to those two areas. The behavior is not perfectly spec-compliant since properties created on the global scope should be set as enumerable even if they are non-enumerable previously, but the attributes will not be modified if the property already exists under this patch. BUG=v8:4441 LOG=Y R=adamk TEST=reddit comment functionality seems to be fixed Committed: https://crrev.com/76da493315bcd0fdf6b2bbecc462d8546e6a4cc0 Cr-Commit-Position: refs/heads/master@{#31037}

Patch Set 1 #

Patch Set 2 : TODO about property attributes #

Patch Set 3 : tests #

Patch Set 4 : rebase #

Total comments: 1

Patch Set 5 : Tests, many of which fail #

Total comments: 8

Patch Set 6 : Improve tests #

Total comments: 2

Patch Set 7 : An additional test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+113 lines, -7 lines) Patch
M src/parser.cc View 1 2 3 4 5 1 chunk +7 lines, -0 lines 0 comments Download
M test/mjsunit/harmony/block-sloppy-function.js View 1 2 3 4 5 6 2 chunks +106 lines, -7 lines 0 comments Download

Messages

Total messages: 23 (8 generated)
Dan Ehrenberg
5 years, 2 months ago (2015-09-29 22:50:52 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1376623002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1376623002/20001
5 years, 2 months ago (2015-09-29 22:51:19 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_win64_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win64_rel/builds/9126)
5 years, 2 months ago (2015-09-29 22:57:13 UTC) #6
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1376623002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1376623002/40001
5 years, 2 months ago (2015-09-29 23:06:33 UTC) #8
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1376623002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1376623002/60001
5 years, 2 months ago (2015-09-29 23:07:14 UTC) #10
adamk
Code looks good, but needs more tests. https://codereview.chromium.org/1376623002/diff/60001/test/mjsunit/harmony/block-sloppy-function.js File test/mjsunit/harmony/block-sloppy-function.js (right): https://codereview.chromium.org/1376623002/diff/60001/test/mjsunit/harmony/block-sloppy-function.js#newcode149 test/mjsunit/harmony/block-sloppy-function.js:149: // Test ...
5 years, 2 months ago (2015-09-29 23:23:15 UTC) #11
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-09-29 23:30:58 UTC) #13
Dan Ehrenberg
Added some tests, but a number are commented out because they fail. The worst of ...
5 years, 2 months ago (2015-09-30 16:25:29 UTC) #14
adamk
I think only the final one of these tests needs to be fixed before landing ...
5 years, 2 months ago (2015-09-30 18:24:26 UTC) #15
Dan Ehrenberg
https://chromiumcodereview.appspot.com/1376623002/diff/80001/test/mjsunit/harmony/block-sloppy-function.js File test/mjsunit/harmony/block-sloppy-function.js (right): https://chromiumcodereview.appspot.com/1376623002/diff/80001/test/mjsunit/harmony/block-sloppy-function.js#newcode214 test/mjsunit/harmony/block-sloppy-function.js:214: // assertTrue(globalUndefinedHoistedDescriptor.configurable); On 2015/09/30 at 18:24:26, adamk wrote: > ...
5 years, 2 months ago (2015-09-30 23:06:55 UTC) #16
adamk
One last test tweak, lgtm once that's added. https://chromiumcodereview.appspot.com/1376623002/diff/100001/test/mjsunit/harmony/block-sloppy-function.js File test/mjsunit/harmony/block-sloppy-function.js (right): https://chromiumcodereview.appspot.com/1376623002/diff/100001/test/mjsunit/harmony/block-sloppy-function.js#newcode224 test/mjsunit/harmony/block-sloppy-function.js:224: writable: ...
5 years, 2 months ago (2015-09-30 23:13:25 UTC) #17
Dan Ehrenberg
https://chromiumcodereview.appspot.com/1376623002/diff/100001/test/mjsunit/harmony/block-sloppy-function.js File test/mjsunit/harmony/block-sloppy-function.js (right): https://chromiumcodereview.appspot.com/1376623002/diff/100001/test/mjsunit/harmony/block-sloppy-function.js#newcode224 test/mjsunit/harmony/block-sloppy-function.js:224: writable: true, On 2015/09/30 at 23:13:25, adamk wrote: > ...
5 years, 2 months ago (2015-09-30 23:27:21 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1376623002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1376623002/120001
5 years, 2 months ago (2015-09-30 23:27:46 UTC) #21
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 2 months ago (2015-09-30 23:48:32 UTC) #22
commit-bot: I haz the power
5 years, 2 months ago (2015-09-30 23:48:45 UTC) #23
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/76da493315bcd0fdf6b2bbecc462d8546e6a4cc0
Cr-Commit-Position: refs/heads/master@{#31037}

Powered by Google App Engine
This is Rietveld 408576698