summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/function-code/S10.4A1.1_T2.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/function-code/S10.4A1.1_T2.js')
-rw-r--r--js/src/tests/test262/language/function-code/S10.4A1.1_T2.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/function-code/S10.4A1.1_T2.js b/js/src/tests/test262/language/function-code/S10.4A1.1_T2.js
new file mode 100644
index 0000000000..94cc81701f
--- /dev/null
+++ b/js/src/tests/test262/language/function-code/S10.4A1.1_T2.js
@@ -0,0 +1,33 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: Every function call enters a new execution context
+es5id: 10.4A1.1_T2
+description: Recursive function call
+---*/
+
+var y;
+
+function f(a){
+ var x;
+
+ if (a === 1)
+ return x;
+ else {
+ if(x === undefined) {
+ x = 0;
+ } else {
+ x = 1;
+ }
+ return f(1);
+ }
+}
+
+y = f(0);
+
+if(!(y === undefined)){
+ $ERROR("#1: Recursive function calls shares execution context");
+}
+
+reportCompare(0, 0);