|
|
Created:
4 years, 2 months ago by Toon Verwaest Modified:
4 years, 1 month ago Reviewers:
adamk CC:
v8-reviews_googlegroups.com, rmcilroy Target Ref:
refs/pending/heads/master Project:
v8 Visibility:
Public. |
DescriptionOnly rewrite all statements in a block if we're in a breakable scope
BUG=
Committed: https://crrev.com/cc782c0a1616e1d996deb5183cd9dc574bc06bfc
Cr-Commit-Position: refs/heads/master@{#40492}
Patch Set 1 #Patch Set 2 : Still walk backwards until we see the first statement that actually produces a value #Patch Set 3 : Update test again #
Total comments: 1
Patch Set 4 : comment #Messages
Total messages: 23 (14 generated)
verwaest@chromium.org changed reviewers: + adamk@chromium.org
ptal
I'm missing how this handles finding the last non-empty statement. e.g., eval("42; var x") needs to return 42. Kicking off a try run now... Also, I'd like to make sure we have tests for both labeled and unlabeled blocks (I don't see any labeled blocks in the big completion.js test).
The CQ bit was checked by adamk@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: v8_mac_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel_ng/builds/11147) v8_mac_rel_ng_triggered on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel_ng_triggered/bui...)
Good point, I'll look into it tomorrow. Odd we don't have a single test in our own suite for that case...
The CQ bit was checked by verwaest@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Now I walk backwards until the value is_set_; except if breakable_.
The CQ bit was checked by verwaest@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Very good point!We have missed tests for unlabeled blocks at http://buyessayfast.net/ and had a lot of bugs later.
lgtm once this has a comment https://codereview.chromium.org/2431273002/diff/40001/src/parsing/rewriter.cc File src/parsing/rewriter.cc (right): https://codereview.chromium.org/2431273002/diff/40001/src/parsing/rewriter.cc... src/parsing/rewriter.cc:127: for (int i = statements->length() - 1; i >= 0 && (breakable_ || !is_set_); That's quite a fancy for loop, please add a comment explaining the reasoning here.
The CQ bit was checked by verwaest@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from adamk@chromium.org Link to the patchset: https://codereview.chromium.org/2431273002/#ps60001 (title: "comment")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Committed patchset #4 (id:60001)
Message was sent while issue was closed.
Description was changed from ========== Only rewrite all statements in a block if we're in a breakable scope BUG= ========== to ========== Only rewrite all statements in a block if we're in a breakable scope BUG= Committed: https://crrev.com/cc782c0a1616e1d996deb5183cd9dc574bc06bfc Cr-Commit-Position: refs/heads/master@{#40492} ==========
Message was sent while issue was closed.
Patchset 4 (id:??) landed as https://crrev.com/cc782c0a1616e1d996deb5183cd9dc574bc06bfc Cr-Commit-Position: refs/heads/master@{#40492} |