Index: src/asmjs/asm-typer.cc |
diff --git a/src/asmjs/asm-typer.cc b/src/asmjs/asm-typer.cc |
index dff43b7db61bf4c402a2dfd3fd774cfb11c8641c..2d01ab0ece6a2b505c264f8dfaf72f79568b8b34 100644 |
--- a/src/asmjs/asm-typer.cc |
+++ b/src/asmjs/asm-typer.cc |
@@ -563,6 +563,9 @@ Assignment* ExtractInitializerExpression(Statement* statement) { |
AsmType* AsmTyper::ValidateModuleBeforeFunctionsPhase(FunctionLiteral* fun) { |
DeclarationScope* scope = fun->scope(); |
if (!scope->is_function_scope()) FAIL(fun, "Not at function scope."); |
+ if (scope->inner_scope_calls_eval()) { |
+ FAIL(fun, "Invalid asm.js module using eval."); |
+ } |
if (!ValidAsmIdentifier(fun->name())) |
FAIL(fun, "Invalid asm.js identifier in module name."); |
module_name_ = fun->name(); |