summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js')
-rw-r--r--js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js b/js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js
new file mode 100644
index 0000000000..d3c7d3824c
--- /dev/null
+++ b/js/src/tests/test262/language/eval-code/direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js
@@ -0,0 +1,22 @@
+// This file was procedurally generated from the following sources:
+// - src/direct-eval-code/arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.case
+// - src/direct-eval-code/arrow-func/fn-body-cntns-arguments-lex-bind.template
+/*---
+description: Declare "arguments" and assign to it in direct eval code (Declare |arguments| when the function body contains an |arguments| lexical binding.)
+esid: sec-evaldeclarationinstantiation
+flags: [generated, noStrict]
+---*/
+
+const oldArguments = globalThis.arguments;
+let count = 0;
+const f = (p = eval("var arguments = 'param'"), q = () => arguments) => {
+ let arguments = "local";
+ assert.sameValue(arguments, "local");
+ assert.sameValue(q(), "param");
+ count++;
+}
+f();
+assert.sameValue(count, 1);
+assert.sameValue(globalThis.arguments, oldArguments, "globalThis.arguments unchanged");
+
+reportCompare(0, 0);