Index: src/factory.cc |
diff --git a/src/factory.cc b/src/factory.cc |
index 0973f1ea1c904b157c99cf57eaa051d9978e99a6..86654c9a8ba5b02e13cf66fa5e9ada17d9344b3e 100644 |
--- a/src/factory.cc |
+++ b/src/factory.cc |
@@ -2225,7 +2225,8 @@ Handle<DebugInfo> Factory::NewDebugInfo(Handle<SharedFunctionInfo> shared) { |
Handle<JSObject> Factory::NewArgumentsObject(Handle<JSFunction> callee, |
int length) { |
- bool strict_mode_callee = is_strict(callee->shared()->language_mode()); |
+ bool strict_mode_callee = is_strict(callee->shared()->language_mode()) || |
+ !callee->is_simple_parameter_list(); |
Handle<Map> map = strict_mode_callee ? isolate()->strict_arguments_map() |
: isolate()->sloppy_arguments_map(); |