- 28 Apr, 2015 1 commit
-
-
dslomov authored
Just parsing, no desugaring yet. R=arv@chromium.org,rossberg@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1107053002 Cr-Commit-Position: refs/heads/master@{#28112}
-
- 27 Apr, 2015 1 commit
-
-
dslomov authored
Just a refactoring, real pattern parsing comes in a later CL. R=rossberg@chromium.org,marja@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1066933005 Cr-Commit-Position: refs/heads/master@{#28084}
-
- 22 Apr, 2015 3 commits
-
-
dslomov authored
R=marja@chromium.org,rossberg@chromium.org Review URL: https://codereview.chromium.org/1065983005 Cr-Commit-Position: refs/heads/master@{#28005}
-
machenbach authored
Revert of Revert of [strong] checking of this & super in constructors (patchset #1 id:1 of https://codereview.chromium.org/1105453002/) Reason for revert: Was an infrastructure problem. Original issue's description: > Revert of [strong] checking of this & super in constructors (patchset #7 id:110001 of https://codereview.chromium.org/1024063002/) > > Reason for revert: > [Sheriff] Breaks mac gc stress: > http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1024 > > Original issue's description: > > [strong] checking of this & super in constructors > > > > R=dslomov@chromium.org, marja@chromium.org > > BUG=v8:3956 > > LOG=N > > > > Enforces for constructors that > > - the only use of 'super' is the super constructor call > > - the only use of 'this' is a property assignment > > - both of these must happen at the top-level of the body > > - 'this' may only be assigned after the 'super' call > > - 'return' may only be used after the last assignment to 'this' > > > > Not yet working for arrow functions (there might be deeper bugs with those). > > > > Committed: https://crrev.com/580d66bcda66220d2f3062ac58daf925436df74c > > Cr-Commit-Position: refs/heads/master@{#27977} > > TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:3956 TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 Review URL: https://codereview.chromium.org/1073103004 Cr-Commit-Position: refs/heads/master@{#28001}
-
machenbach authored
Revert of [strong] checking of this & super in constructors (patchset #7 id:110001 of https://codereview.chromium.org/1024063002/) Reason for revert: [Sheriff] Breaks mac gc stress: http://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/1024 Original issue's description: > [strong] checking of this & super in constructors > > R=dslomov@chromium.org, marja@chromium.org > BUG=v8:3956 > LOG=N > > Enforces for constructors that > - the only use of 'super' is the super constructor call > - the only use of 'this' is a property assignment > - both of these must happen at the top-level of the body > - 'this' may only be assigned after the 'super' call > - 'return' may only be used after the last assignment to 'this' > > Not yet working for arrow functions (there might be deeper bugs with those). > > Committed: https://crrev.com/580d66bcda66220d2f3062ac58daf925436df74c > Cr-Commit-Position: refs/heads/master@{#27977} TBR=dslomov@chromium.org,marja@chromium.org,conradw@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 Review URL: https://codereview.chromium.org/1105453002 Cr-Commit-Position: refs/heads/master@{#27991}
-
- 21 Apr, 2015 2 commits
-
-
rossberg authored
R=dslomov@chromium.org, marja@chromium.org BUG=v8:3956 LOG=N Enforces for constructors that - the only use of 'super' is the super constructor call - the only use of 'this' is a property assignment - both of these must happen at the top-level of the body - 'this' may only be assigned after the 'super' call - 'return' may only be used after the last assignment to 'this' Not yet working for arrow functions (there might be deeper bugs with those). Review URL: https://codereview.chromium.org/1024063002 Cr-Commit-Position: refs/heads/master@{#27977}
-
wingo authored
This commit is a precursor to making lazy arrow function parsing use similar logic to function(){} argument parsing. Originally landed in these three CLs: https://codereview.chromium.org/1078093002 https://codereview.chromium.org/1083623002 https://codereview.chromium.org/1083953002 These were rolled out due to a performance regression on CodeLoad. This patchset will fix that by avoiding creation of a DuplicateFinder in the full parser. R=marja@chromium.org BUG= LOG=N Review URL: https://codereview.chromium.org/1100713002 Cr-Commit-Position: refs/heads/master@{#27960}
-
- 17 Apr, 2015 1 commit
-
-
wingo authored
Revert https://codereview.chromium.org/1078093002/ and follow-on parser patches due to a perf regression. This reverts commit 53ddccfc. This reverts commit 71d3213a. This reverts commit 0f432ebb. This reverts commit 1dbc4327. R=marja@chromium.org Review URL: https://codereview.chromium.org/1094653002 Cr-Commit-Position: refs/heads/master@{#27912}
-
- 16 Apr, 2015 1 commit
-
-
conradw authored
Implements the strong mode proposal's restrictions on the syntax of the switch statement. Also fixes a minor bug with empty statements in strong mode and improves StrongUndefinedArrow parser synch tests. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1084983002 Cr-Commit-Position: refs/heads/master@{#27885}
-
- 13 Apr, 2015 2 commits
-
-
wingo authored
This is a follow-up to https://codereview.chromium.org/1078093002. R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/1083623002 Cr-Commit-Position: refs/heads/master@{#27780}
-
wingo authored
This commit is a precursor to making lazy arrow function parsing use similar logic to function(){} argument parsing. R=arv@chromium.org BUG=4020 LOG=N Review URL: https://codereview.chromium.org/1078093002 Cr-Commit-Position: refs/heads/master@{#27773}
-
- 10 Apr, 2015 2 commits
-
-
conradw authored
Implements the strong mode proposal's static restrictions on the use of the identifier 'undefined', for arrow functions. Assumes these restrictions are intended to be identical to the restrictions on the use of 'eval and 'arguments' in strict mode. In addition, Location variables inconsistantly named (e.g. dupe_error_loc vs dupe_loc) are now consistently named the shorter way. Baseline: https://codereview.chromium.org/1070633002 BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1060883004 Cr-Commit-Position: refs/heads/master@{#27756}
-
conradw authored
identifier. Delete unused (and now incorrect) function IsValidStrictVariable. Implements the strong mode proposal's static restrictions on the use of the identifier 'undefined'. Assumes these restrictions are intended to be identical to the restrictions on the use of 'eval' and 'arguments' in strict mode. The AllowEvalOrArgumentsAsIdentifier enum has been renamed to AllowRestrictedIdentifiers as logic involving it is now also used for this case. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1070633002 Cr-Commit-Position: refs/heads/master@{#27744}
-
- 09 Apr, 2015 1 commit
-
-
caitpotter88 authored
BUG=v8:3018 R= LOG=N Review URL: https://codereview.chromium.org/938443002 Cr-Commit-Position: refs/heads/master@{#27714}
-
- 08 Apr, 2015 1 commit
-
-
caitpotter88 authored
Instead of "unexpected token" errors, report something meatier and more actionable. BUG= R=marja@chromium.org, arv@chromium.org LOG=N Review URL: https://codereview.chromium.org/1062263002 Cr-Commit-Position: refs/heads/master@{#27677}
-
- 07 Apr, 2015 1 commit
-
-
caitpotter88 authored
The ES6 grammar forbids the initialization of variable declarations in IterationStatements. This CL will report `for (var x = y in z)` as a SyntaxError in strict mode (as done in JSC). It is possible that this could break sites in sloppy mode, and so that change can wait. BUG= R= LOG=N Review URL: https://codereview.chromium.org/1033823002 Cr-Commit-Position: refs/heads/master@{#27639}
-
- 19 Mar, 2015 1 commit
-
-
rossberg authored
R=dslomov@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1019283002 Cr-Commit-Position: refs/heads/master@{#27320}
-
- 13 Mar, 2015 3 commits
-
-
dslomov authored
Also fix parsing of declarations after case labels. R=waldron.rick@gmail.com,rossberg@chromium.org BUG=v8:3939 LOG=N Review URL: https://codereview.chromium.org/964063003 Cr-Commit-Position: refs/heads/master@{#27189}
-
rossberg authored
R=marja@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1002253002 Cr-Commit-Position: refs/heads/master@{#27188}
-
dslomov authored
We have been shipping harmony scoping for 2 Chrome releases now (M41 and M42). Time to remove the flag. R=rossberg@chromium.org LOG=Y Review URL: https://codereview.chromium.org/1007783002 Cr-Commit-Position: refs/heads/master@{#27187}
-
- 20 Feb, 2015 1 commit
-
-
adamk authored
This avoids accidental coercion-to-bool when calling ReportMessage() in the parser (e.g., from pointer types), and as a bonus makes callsites easier to read. Review URL: https://codereview.chromium.org/939303002 Cr-Commit-Position: refs/heads/master@{#26788}
-
- 19 Feb, 2015 1 commit
-
-
rossberg authored
R=marja@chromium.org BUG= Review URL: https://codereview.chromium.org/939063002 Cr-Commit-Position: refs/heads/master@{#26751}
-
- 17 Feb, 2015 2 commits
-
-
Andreas Rossberg authored
R=marja@chromium.org BUG= Review URL: https://codereview.chromium.org/931223002 Cr-Commit-Position: refs/heads/master@{#26701}
-
marja authored
R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/927953003 Cr-Commit-Position: refs/heads/master@{#26697}
-
- 13 Feb, 2015 1 commit
-
-
arv authored
The preparser needs to log the usage of super properties and then update the scope when we create the function later. BUG=v8:3888 LOG=N R=dslomov@chromium.org, marja Review URL: https://codereview.chromium.org/923683002 Cr-Commit-Position: refs/heads/master@{#26642}
-
- 12 Feb, 2015 1 commit
-
-
marja authored
(To minimize the diff of actually interesting unifications.) R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/915383002 Cr-Commit-Position: refs/heads/master@{#26620}
-
- 10 Feb, 2015 1 commit
-
-
marja authored
It's unnecessary; PreParser can just use normal Scopes for the things it needs to track. Note: the only functionalities of PreParserScope were keeping track of the scope stack, and for each scope, the scope type and language mode. Those are now done by Scope. PreParser doesn't yet put variables into scopes (that will be done in a follow up). R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/912563004 Cr-Commit-Position: refs/heads/master@{#26544}
-
- 06 Feb, 2015 3 commits
-
-
arv authored
BUG=None R=adamk LOG=N Review URL: https://codereview.chromium.org/905003003 Cr-Commit-Position: refs/heads/master@{#26498}
-
arv authored
We incorrectly disallowed eval and arguments in accessor and method names. This was because we checked the name inside the ParseFunctionLiteral. We now flag accessors so that lazy parsing of these functions are treated correctly. BUG=v8:1984 R=adamk, dslomov@chromium.org LOG=N Review URL: https://codereview.chromium.org/899363002 Cr-Commit-Position: refs/heads/master@{#26497}
-
dslomov authored
R=arv@chromium.org BUG=v8:3834 LOG=N Review URL: https://codereview.chromium.org/885643004 Cr-Commit-Position: refs/heads/master@{#26483}
-
- 05 Feb, 2015 1 commit
-
-
marja authored
It doesn't do anything for now, but it implies strict mode. Added tests to test-parsing.cc to test that. BUG= Review URL: https://codereview.chromium.org/898983002 Cr-Commit-Position: refs/heads/master@{#26460}
-
- 04 Feb, 2015 1 commit
-
-
marja authored
This enables adding more language modes in the future. For maximum flexibility, LanguageMode is a bitmask, so we're not restricted to use a sequence of language modes which are progressively stricter, but we can express the language mode as combination of features. For now, LanguageMode can only be "sloppy" or "strict", and there are STATIC_ASSERTS in places which need to change when more modes are added. LanguageMode is a bit like the old LanguageMode when "extended" mode was still around (see https://codereview.chromium.org/8417035 and https://codereview.chromium.org/181543002 ) except that it's transmitted through all the layers (there's no StrictModeFlag). BUG= Review URL: https://codereview.chromium.org/894683003 Cr-Commit-Position: refs/heads/master@{#26419}
-
- 03 Feb, 2015 1 commit
-
-
dslomov authored
R=arv@chromium.org,rossberg@chromium.org BUG=v8:3834 LOG=N Review URL: https://codereview.chromium.org/867153003 Cr-Commit-Position: refs/heads/master@{#26409}
-
- 30 Jan, 2015 2 commits
-
-
caitpotter88 authored
BUG=v8:2159 LOG=N R=marja@chromium.org, arv@chromium.org Review URL: https://codereview.chromium.org/885243002 Cr-Commit-Position: refs/heads/master@{#26362}
-
arv authored
For example let and class should only be allowed inside function/block/script. We have to continue to support const in statements in sloppy mode for backwards compatibility. BUG=3831 LOG=Y R=dslomov@chromium.org, adamk Review URL: https://codereview.chromium.org/869293002 Cr-Commit-Position: refs/heads/master@{#26337}
-
- 29 Jan, 2015 1 commit
-
-
arv authored
This removes the duplicate property check from object literals. Instead we repurpose the ObjectLiteralChecker into two cases, implemented by two subclasses to ObjectLiteralCheckerBase called ObjectLiteralChecker and ClassLiteralChecker. The object literal checker now only checks for duplicate __proto__ fields in object literals. The class literal checker checks for duplicate constructors, non constructor fields named constructor as well as static properties named prototype. BUG=v8:3819 LOG=Y R=adamk, dslomov@chromium.org Review URL: https://codereview.chromium.org/873823003 Cr-Commit-Position: refs/heads/master@{#26336}
-
- 15 Jan, 2015 1 commit
-
-
arv authored
This adds support for computed property names, under the flag --harmony-computed-property-names, for both object literals and classes. This is a revert of the revert, 7d48fd9d. BUG=v8:3754 LOG=Y R=dslomov@chromium.org Review URL: https://codereview.chromium.org/798243004 Cr-Commit-Position: refs/heads/master@{#26084}
-
- 18 Dec, 2014 1 commit
-
-
caitpotter88 authored
LOG=N BUG= R=arv@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/812163003 Cr-Commit-Position: refs/heads/master@{#25895}
-
- 17 Dec, 2014 2 commits
-
-
machenbach authored
Revert of ES6 computed property names (patchset #1 id:1 of https://codereview.chromium.org/792233008/) Reason for revert: [sheriff] Still crashes on win32 (XP): http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%201/builds/1380 Original issue's description: > ES6 computed property names > > This adds support for computed property names, under the flag > --harmony-computed-property-names, for both object literals and > classes. > > This is a revert of the revert, a76419f0. > > This changes to do an early bailout in > HOptimizedGraphBuilder::VisitObjectLiteral instead of doing that in the later > loop. > > BUG=v8:3754 > LOG=Y > TBR=dslomov@chromium.org TBR=dslomov@chromium.org,arv@chromium.org NOTREECHECKS=true NOTRY=true BUG=v8:3754 Review URL: https://codereview.chromium.org/811593004 Cr-Commit-Position: refs/heads/master@{#25872}
-
arv authored
This adds support for computed property names, under the flag --harmony-computed-property-names, for both object literals and classes. This is a revert of the revert, a76419f0. This changes to do an early bailout in HOptimizedGraphBuilder::VisitObjectLiteral instead of doing that in the later loop. BUG=v8:3754 LOG=Y TBR=dslomov@chromium.org Review URL: https://codereview.chromium.org/792233008 Cr-Commit-Position: refs/heads/master@{#25868}
-