| Index: src/parsing/parser.h
|
| diff --git a/src/parsing/parser.h b/src/parsing/parser.h
|
| index 2fef7738c2ff8c37289a26e2116539458a8defc3..caddcb944c97fe3678f03f7c683aaf85a38bd59b 100644
|
| --- a/src/parsing/parser.h
|
| +++ b/src/parsing/parser.h
|
| @@ -643,7 +643,7 @@ class Parser : public ParserBase<Parser> {
|
|
|
| Block* BuildParameterInitializationBlock(
|
| const ParserFormalParameters& parameters, bool* ok);
|
| - Block* BuildRejectPromiseOnException(Block* block);
|
| + Block* BuildRejectPromiseOnException(Block* block, bool* ok);
|
|
|
| // Consumes the ending }.
|
| ZoneList<Statement*>* ParseEagerFunctionBody(
|
| @@ -737,8 +737,10 @@ class Parser : public ParserBase<Parser> {
|
| void RewriteParameterInitializer(Expression* expr, Scope* scope);
|
|
|
| Expression* BuildCreateJSGeneratorObject(int pos, FunctionKind kind);
|
| - Expression* BuildPromiseResolve(Expression* value, int pos);
|
| - Expression* BuildPromiseReject(Expression* value, int pos);
|
| + Expression* BuildResolvePromise(Expression* value, int pos);
|
| + Expression* BuildRejectPromise(Expression* value, int pos);
|
| + VariableProxy* BuildDotPromise();
|
| + VariableProxy* BuildDotDebugIsActive();
|
|
|
| // Generic AST generator for throwing errors from compiled code.
|
| Expression* NewThrowError(Runtime::FunctionId function_id,
|
| @@ -1078,7 +1080,8 @@ void ParserBaseTraits<Parser>::AddParameterInitializationBlock(
|
| if (!*ok) return;
|
|
|
| if (is_async) {
|
| - init_block = delegate()->BuildRejectPromiseOnException(init_block);
|
| + init_block = delegate()->BuildRejectPromiseOnException(init_block, ok);
|
| + if (!*ok) return;
|
| }
|
|
|
| if (init_block != nullptr) {
|
|
|