summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/bug558531.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/basic/bug558531.js')
-rw-r--r--js/src/jit-test/tests/basic/bug558531.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/bug558531.js b/js/src/jit-test/tests/basic/bug558531.js
new file mode 100644
index 0000000000..ddabce8799
--- /dev/null
+++ b/js/src/jit-test/tests/basic/bug558531.js
@@ -0,0 +1,46 @@
+function f2(c) {
+ return {
+ g: c.match(/:/) & c.match(/:/) & c.match(/f/) & c.m & c.a & c.match(/f/) &
+ c.match(/c/) & c.match(/a/) & (/s/) & c.match(/e/) & c.match(/s/) &
+ (c.match(/./) & c.i) & (c.match(/\*/)) & (c.match(/n/)),
+ y: c.a & c.a & c.match(/\)/) & c.match(/\)/) & c.match(/\)/)
+ & c.match(/\\/),
+ c: c.match(/f/)
+ }
+}
+function f1(c) {
+ t = f2(c.replace(/s/))
+ try {
+ eval(c)
+ } catch(e) {}
+ f4();
+ if (c.indexOf("<") == -1 || c.indexOf())
+ try {} catch(e) {}
+ try {
+ try {
+ l
+ } catch(e) {}
+ if ("unwatch" in this) {}
+ g
+ } catch(e) {}
+ try {} catch(p) {}
+}
+function f4() {
+ try {} catch(e) {} {
+ try {
+ eval(s + "")
+ } catch(e) {}
+ }
+} [{}]
+s = [{},{}];
+(function(){}())
+s[{},{},{}] = [function(){}]
+a = [{},{},{}].concat([{},{}])
+f1("")
+f1("")
+f1("n")
+f1("")
+f1("(__proto__=null)")
+f1("for(var z=0;z<1;z++){gc()(*::*)}")
+f1("gc()")
+f1("<")