Index: src/parser.cc |
diff --git a/src/parser.cc b/src/parser.cc |
index 830e2dd0faee7a3b76844c3a5d964439bef92dae..ece0cfeaec142d58991fd6037b51f8f9e27d6a2f 100644 |
--- a/src/parser.cc |
+++ b/src/parser.cc |
@@ -5121,12 +5121,15 @@ bool ParserApi::Parse(CompilationInfo* info) { |
FunctionLiteral* result = NULL; |
Handle<Script> script = info->script(); |
if (info->is_lazy()) { |
- Parser parser(script, true, NULL, NULL); |
+ bool allow_natives_syntax = |
+ FLAG_allow_natives_syntax || |
+ info->is_native(); |
+ Parser parser(script, allow_natives_syntax, NULL, NULL); |
result = parser.ParseLazy(info); |
} else { |
// Whether we allow %identifier(..) syntax. |
bool allow_natives_syntax = |
- info->allows_natives_syntax() || FLAG_allow_natives_syntax; |
+ info->is_native() || FLAG_allow_natives_syntax; |
ScriptDataImpl* pre_data = info->pre_parse_data(); |
Parser parser(script, allow_natives_syntax, info->extension(), pre_data); |
if (pre_data != NULL && pre_data->has_error()) { |