]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - tests/stress/infer-uninitialized-closure-var.js
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / tests / stress / infer-uninitialized-closure-var.js
diff --git a/tests/stress/infer-uninitialized-closure-var.js b/tests/stress/infer-uninitialized-closure-var.js
new file mode 100644 (file)
index 0000000..aa64af4
--- /dev/null
@@ -0,0 +1,26 @@
+function foo(p) {
+    var x;
+    
+    noInline(f);
+    
+    if (p) {
+        var f = function() { return x; }
+        
+        foo(false);
+        
+        for (var i = 0; i < 10000; ++i) {
+            var result = f();
+            if (result !== void 0)
+                throw "Error: bad result (1): " + result;
+        }
+        
+        x = 43;
+        
+        var result = f();
+        if (result != 43)
+            throw "Error: bad result (2): " + result;
+    } else
+        x = 42;
+}
+
+foo(true);