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

Issue 2255353002: [parser] Allow duplicate __proto__ keys in patterns (Closed)

Created:
4 years, 4 months ago by gsathya
Modified:
4 years, 4 months ago
Reviewers:
caitp, Dan Ehrenberg, 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

[parser] Allow duplicate __proto__ keys in patterns This patch subsumes CoverInitializedNameProduction to create an ObjectLiteralProduction which is now used to report the duplicate proto error as well. This patch also changes ObjectLiteralChecker::CheckProperty to record an ObjectLiteralProduction error instead of bailing out immediately. Once we realize that we're in a pattern, we rewind the error, otherwise we report the error. BUG=v8:5121 Committed: https://crrev.com/fc52e323611a3f2e5812611a2a4915e6760c65e5 Cr-Commit-Position: refs/heads/master@{#38764}

Patch Set 1 #

Patch Set 2 : rebase with master #

Patch Set 3 : fix rebase issues #

Total comments: 8

Patch Set 4 : review comments #

Total comments: 5

Patch Set 5 : create objectliteral production #

Total comments: 3

Patch Set 6 : remove some test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+41 lines, -35 lines) Patch
M src/parsing/expression-classifier.h View 1 2 3 4 6 chunks +17 lines, -17 lines 0 comments Download
M src/parsing/parser-base.h View 1 2 3 4 13 chunks +20 lines, -15 lines 0 comments Download
M test/cctest/test-parsing.cc View 1 2 3 4 5 3 chunks +4 lines, -0 lines 0 comments Download
M test/test262/test262.status View 1 2 3 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 42 (29 generated)
gsathya
4 years, 4 months ago (2016-08-18 20:24:16 UTC) #12
adamk
Main confusion is why the need to add ForgiveExpressionError... https://codereview.chromium.org/2255353002/diff/40001/src/parsing/parser-base.h File src/parsing/parser-base.h (right): https://codereview.chromium.org/2255353002/diff/40001/src/parsing/parser-base.h#newcode2418 src/parsing/parser-base.h:2418: ...
4 years, 4 months ago (2016-08-18 20:35:22 UTC) #13
gsathya
PTAL https://codereview.chromium.org/2255353002/diff/40001/src/parsing/parser-base.h File src/parsing/parser-base.h (right): https://codereview.chromium.org/2255353002/diff/40001/src/parsing/parser-base.h#newcode2418 src/parsing/parser-base.h:2418: classifier->ForgiveExpressionError(); On 2016/08/18 20:35:22, adamk wrote: > Is ...
4 years, 4 months ago (2016-08-19 20:11:18 UTC) #17
adamk
https://codereview.chromium.org/2255353002/diff/60001/src/parsing/expression-classifier.h File src/parsing/expression-classifier.h (right): https://codereview.chromium.org/2255353002/diff/60001/src/parsing/expression-classifier.h#newcode29 src/parsing/expression-classifier.h:29: T(AnnexBDuplicateProtoProduction, 12) Let's just call this DuplicateProtoProduction. https://codereview.chromium.org/2255353002/diff/60001/src/parsing/parser-base.h File ...
4 years, 4 months ago (2016-08-19 20:17:08 UTC) #18
caitp
https://codereview.chromium.org/2255353002/diff/60001/src/parsing/parser-base.h File src/parsing/parser-base.h (left): https://codereview.chromium.org/2255353002/diff/60001/src/parsing/parser-base.h#oldcode917 src/parsing/parser-base.h:917: if (a.beg_pos < 0 || (b.beg_pos >= 0 && ...
4 years, 4 months ago (2016-08-19 23:11:19 UTC) #20
caitp
4 years, 4 months ago (2016-08-19 23:11:27 UTC) #21
gsathya
PTAL https://codereview.chromium.org/2255353002/diff/60001/src/parsing/expression-classifier.h File src/parsing/expression-classifier.h (right): https://codereview.chromium.org/2255353002/diff/60001/src/parsing/expression-classifier.h#newcode29 src/parsing/expression-classifier.h:29: T(AnnexBDuplicateProtoProduction, 12) On 2016/08/19 20:17:07, adamk wrote: > ...
4 years, 4 months ago (2016-08-19 23:22:58 UTC) #27
adamk
lgtm % tests https://codereview.chromium.org/2255353002/diff/80001/test/cctest/test-parsing.cc File test/cctest/test-parsing.cc (right): https://codereview.chromium.org/2255353002/diff/80001/test/cctest/test-parsing.cc#newcode6790 test/cctest/test-parsing.cc:6790: "{{ __proto__: x, __proto__: y}}", Why ...
4 years, 4 months ago (2016-08-19 23:27:35 UTC) #28
gsathya
On 2016/08/19 23:27:35, adamk wrote: > lgtm % tests > > https://codereview.chromium.org/2255353002/diff/80001/test/cctest/test-parsing.cc > File test/cctest/test-parsing.cc ...
4 years, 4 months ago (2016-08-20 00:00:37 UTC) #33
adamk
lgtm
4 years, 4 months ago (2016-08-20 00:11:42 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2255353002/100001
4 years, 4 months ago (2016-08-20 00:56:44 UTC) #38
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 4 months ago (2016-08-20 01:01:47 UTC) #40
commit-bot: I haz the power
4 years, 4 months ago (2016-08-20 01:02:04 UTC) #42
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/fc52e323611a3f2e5812611a2a4915e6760c65e5
Cr-Commit-Position: refs/heads/master@{#38764}

Powered by Google App Engine
This is Rietveld 408576698