summaryrefslogtreecommitdiffstats
path: root/js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js')
-rw-r--r--js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js b/js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js
new file mode 100644
index 000000000..e380846e2
--- /dev/null
+++ b/js/src/tests/ecma_6/LexicalEnvironment/var-in-catch-body-annex-b-eval.js
@@ -0,0 +1,21 @@
+// Tests annex B.3.5 that introduces a var via direct eval.
+
+var x = "global-x";
+var log = "";
+
+// Tests that direct eval works.
+function g() {
+ try { throw 8; } catch (x) {
+ eval("var x = 42;");
+ log += x;
+ }
+ x = "g";
+ log += x;
+}
+g();
+
+assertEq(x, "global-x");
+assertEq(log, "42g");
+
+if ("reportCompare" in this)
+ reportCompare(true, true)