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

Unified Diff: src/parsing/parser.cc

Issue 2124813002: [debugger] omit exception events for rethrown exceptions in async. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: addressed comments Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/interpreter/bytecode-generator.cc ('k') | src/parsing/parser-base.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/parsing/parser.cc
diff --git a/src/parsing/parser.cc b/src/parsing/parser.cc
index d74b36604f8b6acf7a2d9adf25178f4c5156712f..8669b035fe5b68157b05f6c4cd01f7c4fd28f4e3 100644
--- a/src/parsing/parser.cc
+++ b/src/parsing/parser.cc
@@ -4779,8 +4779,9 @@ ZoneList<Statement*>* Parser::ParseEagerFunctionBody(
// The position of the yield is important for reporting the exception
// caused by calling the .throw method on a generator suspended at the
// initial yield (i.e. right after generator instantiation).
- Yield* yield = factory()->NewYield(get_proxy, assignment,
- scope_->start_position());
+ Yield* yield =
+ factory()->NewYield(get_proxy, assignment, scope_->start_position(),
+ Yield::kOnExceptionThrow);
try_block->statements()->Add(
factory()->NewExpressionStatement(yield, kNoSourcePosition),
zone());
@@ -5733,7 +5734,8 @@ Expression* ParserTraits::RewriteAwaitExpression(Expression* value,
Expression* do_expr = factory->NewDoExpression(do_block, temp_var, nopos);
generator_object = factory->NewVariableProxy(generator_object_variable);
- return factory->NewYield(generator_object, do_expr, nopos);
+ return factory->NewYield(generator_object, do_expr, nopos,
+ Yield::kOnExceptionRethrow);
}
ZoneList<Expression*>* ParserTraits::GetNonPatternList() const {
@@ -6346,7 +6348,8 @@ Expression* ParserTraits::RewriteYieldStar(
Statement* yield_output;
{
Expression* output_proxy = factory->NewVariableProxy(var_output);
- Yield* yield = factory->NewYield(generator, output_proxy, nopos);
+ Yield* yield = factory->NewYield(generator, output_proxy, nopos,
+ Yield::kOnExceptionThrow);
yield_output = factory->NewExpressionStatement(yield, nopos);
}
« no previous file with comments | « src/interpreter/bytecode-generator.cc ('k') | src/parsing/parser-base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698