- 15 Aug, 2015 1 commit
-
-
caitpotter88 authored
Second item in section 13.7.5.1 states that the error should be a SyntaxError, when previously CheckAndRewriteReferenceExpression would always emit a ReferenceError. BUG=v8:4373 R=adamk, rossberg LOG=N CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1292393002 Cr-Commit-Position: refs/heads/master@{#30184}
-
- 13 Aug, 2015 2 commits
-
-
adamk authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1290193003 Cr-Commit-Position: refs/heads/master@{#30168}
-
adamk authored
In doing so, fix calls CheckAndRewriteReferenceExpression to take proper start and end positions (instead of just pointing at the first token in the LHS expression). BUG=v8:4370 LOG=n Review URL: https://codereview.chromium.org/1290013002 Cr-Commit-Position: refs/heads/master@{#30166}
-
- 04 Aug, 2015 1 commit
-
-
rossberg authored
Store arity in FormalParameters; store name (instead of var) and is_rest flag in individual parameters. Ensure that the arity is always maintained consistently. This is preparation for more parameter destructuring adjustments. In particular, a follow-up CL will separate parameter recording from declaring the variables. R=adamk@chromium.org, littledan@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1259013003 Cr-Commit-Position: refs/heads/master@{#30002}
-
- 23 Jul, 2015 1 commit
-
-
rossberg authored
In particular, rename FormalParameterParsingState and friends to FormalParameters etc. This should not change any logic, but is a preparatory CL for a bunch of follow-up fixes and clean-ups. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1247443004 Cr-Commit-Position: refs/heads/master@{#29807}
-
- 20 Jul, 2015 1 commit
-
-
rossberg authored
R=mstarzinger@chromium.org BUG=v8:4312 LOG=N Review URL: https://codereview.chromium.org/1240273002 Cr-Commit-Position: refs/heads/master@{#29756}
-
- 15 Jul, 2015 1 commit
-
-
mvstanton authored
A sloppy mode eval call that establishes strict mode will leak that strictness into the sloppy surrounding scope on recompile. This changes the structure of the type feedback vector for the function and crashes follow. The fix is straightforward. BUG=491536, 503565 LOG=N Review URL: https://codereview.chromium.org/1231343003 Cr-Commit-Position: refs/heads/master@{#29671}
-
- 09 Jul, 2015 1 commit
-
-
adamk authored
When running without a snapshot, the GlobalEval function gets lazy compiled. By the time we compile it, its name is "eval", which causes the parser to choke (functions named "eval" aren't allowed in strict mode!). Instead, we now always skip checking the function name when lazy-parsing, as the name has already been checked appropriately by the preparser. Also cleaned up other cases that don't require name checking by introducing FunctionNameValidity enum and passing appropriate values throughout the parser and preparser. This lets us pass an additional 18 test262 tests. BUG=v8:4198 LOG=n Review URL: https://codereview.chromium.org/1227093005 Cr-Commit-Position: refs/heads/master@{#29559}
-
- 08 Jul, 2015 1 commit
-
-
arv authored
Allow let in sloppy mode with --harmony-sloppy Allow ES'15 const in sloppy mode with --harmony-sloppy --no-legacy-const Functions in block are not done yet. They are only let bound in the block at this point. BUG=v8:3305, v8:2198 LOG=N R=littledan@chromium.org, rossberg@chromium.org, adamk@chromium.org Review URL: https://codereview.chromium.org/1219853004 Cr-Commit-Position: refs/heads/master@{#29536}
-
- 07 Jul, 2015 1 commit
-
-
arv authored
This flag is on by default but it will allow us to turn that off in favor of harmony-sloppy in the future. BUG=v8:3305, v8:2198 LOG=N R=littledan@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1218803006 Cr-Commit-Position: refs/heads/master@{#29526}
-
- 22 Jun, 2015 3 commits
-
-
dslomov authored
Scoping for initializers is yet incorrect. Defaults are not supported. R=arv@chromium.org,rossberg@chromium.org BUG=v8:811 LOG=N Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70 Cr-Commit-Position: refs/heads/master@{#29184} Review URL: https://codereview.chromium.org/1189743003 Cr-Commit-Position: refs/heads/master@{#29192}
-
machenbach authored
Revert of [destructuring] Implement parameter pattern matching. (patchset #7 id:120001 of https://codereview.chromium.org/1189743003/) Reason for revert: [Sheriff] Breaks tsan: http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/4392 Original issue's description: > [destructuring] Implement parameter pattern matching. > > Scoping for initializers is yet incorrect. Defaults are not supported. > > R=arv@chromium.org,rossberg@chromium.org > BUG=v8:811 > LOG=N > > Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70 > Cr-Commit-Position: refs/heads/master@{#29184} TBR=arv@chromium.org,rossberg@chromium.org,caitpotter88@gmail.com,wingo@igalia.com,dslomov@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:811 Review URL: https://codereview.chromium.org/1195163007 Cr-Commit-Position: refs/heads/master@{#29188}
-
dslomov authored
Scoping for initializers is yet incorrect. Defaults are not supported. R=arv@chromium.org,rossberg@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1189743003 Cr-Commit-Position: refs/heads/master@{#29184}
-
- 15 Jun, 2015 2 commits
-
-
dslomov authored
R=arv@chromium.org,wingo@igalia.com,caitpotter88@gmail.com LOG=N BUG=v8:811 Review URL: https://codereview.chromium.org/1167393005 Cr-Commit-Position: refs/heads/master@{#29029}
-
rossberg authored
R=arv@chromium.org, conradw@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1180943007 Cr-Commit-Position: refs/heads/master@{#29026}
-
- 09 Jun, 2015 4 commits
-
-
dslomov authored
Pushed the detection logic down to ParseAndClassifyIdentifier in preparation to having patterns in parameter positions. R=arv@chromium.org,rossberg@chromium.org,wingo@igalia.com BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1170153003 Cr-Commit-Position: refs/heads/master@{#28876}
-
arv authored
Revert of Revert of [es6] Parsing of new.target (patchset #1 id:1 of https://codereview.chromium.org/1170263002/) Reason for revert: The bot needs to be clobbered. Original issue's description: > Revert of [es6] Parsing of new.target (patchset #2 id:20001 of https://codereview.chromium.org/1169853002/) > > Reason for revert: > [Sheriff] fails messages: > http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20custom%20snapshot%20-%20debug/builds/1703 > > Original issue's description: > > [es6] Parsing of new.target > > > > BUG=v8:3887 > > LOG=N > > R=adamk@chromium.org, dslomov@chromium.org > > > > Committed: https://crrev.com/ae06bdde7763d673b39948b710df414217265cce > > Cr-Commit-Position: refs/heads/master@{#28865} > > TBR=adamk@chromium.org,dslomov@chromium.org,arv@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:3887 > > Committed: https://crrev.com/fe97cfccf3faabbeff87b9b5fbacd7ceb8219304 > Cr-Commit-Position: refs/heads/master@{#28868} TBR=adamk@chromium.org,dslomov@chromium.org,machenbach@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3887 Review URL: https://codereview.chromium.org/1168393008 Cr-Commit-Position: refs/heads/master@{#28870}
-
machenbach authored
Revert of [es6] Parsing of new.target (patchset #2 id:20001 of https://codereview.chromium.org/1169853002/) Reason for revert: [Sheriff] fails messages: http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20custom%20snapshot%20-%20debug/builds/1703 Original issue's description: > [es6] Parsing of new.target > > BUG=v8:3887 > LOG=N > R=adamk@chromium.org, dslomov@chromium.org > > Committed: https://crrev.com/ae06bdde7763d673b39948b710df414217265cce > Cr-Commit-Position: refs/heads/master@{#28865} TBR=adamk@chromium.org,dslomov@chromium.org,arv@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3887 Review URL: https://codereview.chromium.org/1170263002 Cr-Commit-Position: refs/heads/master@{#28868}
-
arv authored
BUG=v8:3887 LOG=N R=adamk@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/1169853002 Cr-Commit-Position: refs/heads/master@{#28865}
-
- 04 Jun, 2015 1 commit
-
-
arv authored
We used to only store the uses_super_property in the preparse data logger. Let the logger use NeedsHomeObject instead. BUG=v8:3768 LOG=N R=wingo, adamk Review URL: https://codereview.chromium.org/1164073003 Cr-Commit-Position: refs/heads/master@{#28806}
-
- 01 Jun, 2015 2 commits
-
-
caitpotter88 authored
Revert of [es6] implement default parameters via desugaring (patchset #19 id:380001 of https://codereview.chromium.org/1127063003/) Reason for revert: Broken on arm64 Original issue's description: > [es6] implement default parameters via desugaring > > Stage 1 implementation: > > - Parameters can't be referenced before initialized (from left-to-right) > - SingleNameBindings only, no support for BindingPatterns > > Known issues: > > - Incorrect scoping (parameter expressions may reference variables declared in function body) > - Function arity is untouched > - Hole-checking needs work > - Rest parameters are broken when mixed with optional arguments > > BUG=v8:2160 > LOG=N > R=arv@chromium.org, rossberg@chromium.org > > Committed: https://crrev.com/892c85485881f8be2f17bd83238980f858126576 > Cr-Commit-Position: refs/heads/master@{#28739} TBR=rossberg@chromium.org,wingo@igalia.com,arv@chromium.org,dslomov@chromium.org,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:2160 Review URL: https://codereview.chromium.org/1163853002 Cr-Commit-Position: refs/heads/master@{#28740}
-
caitpotter88 authored
Stage 1 implementation: - Parameters can't be referenced before initialized (from left-to-right) - SingleNameBindings only, no support for BindingPatterns Known issues: - Incorrect scoping (parameter expressions may reference variables declared in function body) - Function arity is untouched - Hole-checking needs work - Rest parameters are broken when mixed with optional arguments BUG=v8:2160 LOG=N R=arv@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1127063003 Cr-Commit-Position: refs/heads/master@{#28739}
-
- 26 May, 2015 1 commit
-
-
arv authored
When we enter a method that needs access to the [[HomeObject]] we allocate a local variable `.home_object` and assign it the value from the [[HomeObject]] private symbol. Something along the lines of: method() { var .home_object = %ThisFunction()[home_object_symbol]; ... } BUG=v8:3867, v8:4031 LOG=N Review URL: https://codereview.chromium.org/1135243004 Cr-Commit-Position: refs/heads/master@{#28644}
-
- 18 May, 2015 2 commits
-
-
caitpotter88 authored
BUG=v8:4107, v8:2159 LOG=N R=arv@chromium.org Review URL: https://codereview.chromium.org/1141223002 Cr-Commit-Position: refs/heads/master@{#28454}
-
yangguo authored
Review URL: https://codereview.chromium.org/1130133003 Cr-Commit-Position: refs/heads/master@{#28439}
-
- 13 May, 2015 1 commit
-
-
wingo authored
R=dslomov@chromium.org LOG=N BUG= Review URL: https://codereview.chromium.org/1138153003 Cr-Commit-Position: refs/heads/master@{#28391}
-
- 06 May, 2015 1 commit
-
-
vogelheim authored
long and trivial functions, so that they can be eagerly compiled after all. This essentially allows the parser to renege on its earlier decision to lazy-parse, if additional information suggests it was a bad decision. BUG=chromium:470930 LOG=Y Review URL: https://codereview.chromium.org/1102523003 Cr-Commit-Position: refs/heads/master@{#28252}
-
- 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}
-