Index: src/parsing/parser.cc |
diff --git a/src/parsing/parser.cc b/src/parsing/parser.cc |
index e3063d8b1fc251ddc5b493391e5fbb858ad097ad..22f74807fbadfd382d89c298158638c4bbedcdbd 100644 |
--- a/src/parsing/parser.cc |
+++ b/src/parsing/parser.cc |
@@ -784,7 +784,8 @@ Parser::Parser(ParseInfo* info) |
DCHECK(!info->script().is_null() || info->source_stream() != NULL); |
set_allow_lazy(info->allow_lazy_parsing()); |
set_allow_natives(FLAG_allow_natives_syntax || info->is_native()); |
- set_allow_tailcalls(FLAG_harmony_tailcalls && !info->is_native()); |
+ set_allow_tailcalls(FLAG_harmony_tailcalls && !info->is_native() && |
+ info->isolate()->is_tail_call_elimination_enabled()); |
set_allow_harmony_sloppy(FLAG_harmony_sloppy); |
set_allow_harmony_sloppy_function(FLAG_harmony_sloppy_function); |
set_allow_harmony_sloppy_let(FLAG_harmony_sloppy_let); |