summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/arguments/strict-args-flushstack.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/arguments/strict-args-flushstack.js')
-rw-r--r--js/src/jit-test/tests/arguments/strict-args-flushstack.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/arguments/strict-args-flushstack.js b/js/src/jit-test/tests/arguments/strict-args-flushstack.js
new file mode 100644
index 0000000000..257018ba3f
--- /dev/null
+++ b/js/src/jit-test/tests/arguments/strict-args-flushstack.js
@@ -0,0 +1,27 @@
+/*
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/licenses/publicdomain/
+ */
+var args;
+
+function test()
+{
+ "use strict";
+ eval("args = arguments;");
+ var a = [];
+ for (var i = 0; i < 9; i++)
+ a.push(arguments);
+ return a;
+}
+
+var a = test();
+
+assertEq(Array.isArray(a), true);
+assertEq(a.length, 9);
+
+var count = 0;
+a.forEach(function(v, i) { count++; assertEq(v, args); });
+assertEq(count, 9);
+
+assertEq(Object.prototype.toString.call(args), "[object Arguments]");
+assertEq(args.length, 0);