Index: src/parsing/parser.cc |
diff --git a/src/parsing/parser.cc b/src/parsing/parser.cc |
index 5fabd8e25f122b960a3f72a47d400149fded36d4..8fe70b598751621ac3942f3bf4d8d8bc1c135d02 100644 |
--- a/src/parsing/parser.cc |
+++ b/src/parsing/parser.cc |
@@ -2505,7 +2505,7 @@ Statement* Parser::ParseReturnStatement(bool* ok) { |
function_state_, ReturnExprContext::kInsideValidReturnStatement); |
return_value = ParseExpression(true, CHECK_OK); |
- if (allow_tailcalls() && !is_sloppy(language_mode())) { |
+ if (allow_tailcalls() && !is_sloppy(language_mode()) && !is_resumable()) { |
// ES6 14.6.1 Static Semantics: IsInTailPosition |
function_state_->AddImplicitTailCallExpression(return_value); |
} |