summaryrefslogtreecommitdiff
path: root/test/scanners/javascript/trace-test.expected.raydebug
diff options
context:
space:
mode:
authormurphy <murphy@rubychan.de>2009-10-19 16:58:17 +0000
committermurphy <murphy@rubychan.de>2009-10-19 16:58:17 +0000
commit6d6daf996226c3665bdefaeda642163555d96e24 (patch)
treee5c1bb53b9e1f5b64d70af8c370ef278a5b9e69e /test/scanners/javascript/trace-test.expected.raydebug
parenta6f93eb4304a062af43083a75d525acc1af9883d (diff)
downloadcoderay-6d6daf996226c3665bdefaeda642163555d96e24.tar.gz
JavaScript scanner updated:
* false, null, true, undefined are :pre_constant now * fixed floats starting with a dot * added support for XML literals (cool!) * function definitions are detected and highlighted as :function * added Prototype, SunSpider and TraceMonkey tests as test code
Diffstat (limited to 'test/scanners/javascript/trace-test.expected.raydebug')
-rw-r--r--test/scanners/javascript/trace-test.expected.raydebug5930
1 files changed, 5930 insertions, 0 deletions
diff --git a/test/scanners/javascript/trace-test.expected.raydebug b/test/scanners/javascript/trace-test.expected.raydebug
new file mode 100644
index 0000000..08b6826
--- /dev/null
+++ b/test/scanners/javascript/trace-test.expected.raydebug
@@ -0,0 +1,5930 @@
+comment(/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */)
+comment(/**
+ * A number of the tests in this file depend on the setting of
+ * HOTLOOP. Define some constants up front, so they're easy to grep
+ * for.
+ */)
+comment(// The HOTLOOP constant we depend on; only readable from our stats)
+comment(// object in debug builds.)
+ident(const) ident(haveTracemonkey) operator(=) operator(!!()local_variable(this)operator(.)ident(tracemonkey)operator(\))
+ident(const) ident(HOTLOOP) operator(=) ident(haveTracemonkey) operator(?) ident(tracemonkey)operator(.)ident(HOTLOOP) operator(:) integer(2)operator(;)
+comment(// The loop count at which we trace)
+ident(const) ident(RECORDLOOP) operator(=) ident(HOTLOOP)operator(;)
+comment(// The loop count at which we run the trace)
+ident(const) ident(RUNLOOP) operator(=) ident(HOTLOOP) operator(+) integer(1)operator(;)
+
+keyword(var) ident(gDoMandelbrotTest) operator(=) pre_constant(true)operator(;)
+keyword(if) operator(()string<delimiter(")content(gSkipSlowTests)delimiter(")> keyword(in) local_variable(this) operator(&&) ident(gSkipSlowTests)operator(\)) operator({)
+ ident(print)operator(()string<delimiter(")content(** Skipping slow tests)delimiter(")>operator(\))operator(;)
+ ident(gDoMandelbrotTest) operator(=) pre_constant(false)operator(;)
+operator(})
+
+keyword(if) operator((!()string<delimiter(')content(gSrcdir)delimiter(')> keyword(in) local_variable(this)operator(\)\))
+ ident(gSrcdir) operator(=) string<delimiter(')content(.)delimiter(')>operator(;)
+
+keyword(if) operator((!()string<delimiter(')content(gReportSummary)delimiter(')> keyword(in) local_variable(this)operator(\)\))
+ ident(gReportSummary) operator(=) pre_constant(true)operator(;)
+
+keyword(var) ident(testName) operator(=) pre_constant(null)operator(;)
+keyword(if) operator(()string<delimiter(")content(arguments)delimiter(")> keyword(in) local_variable(this) operator(&&) local_variable(arguments)operator(.)ident(length) operator(>) integer(0)operator(\))
+ ident(testName) operator(=) local_variable(arguments)operator([)integer(0)operator(])operator(;)
+keyword(var) ident(fails) operator(=) operator([)operator(])operator(,) ident(passes) operator(=) operator([)operator(])operator(;)
+
+keyword(function) function(jitstatHandler)operator(()ident(f)operator(\))
+operator({)
+ keyword(if) operator((!)ident(haveTracemonkey)operator(\))
+ keyword(return)operator(;)
+
+ comment(// XXXbz this is a nasty hack, but I can't figure out a way to)
+ comment(// just use jitstats.tbl here)
+ ident(f)operator(()string<delimiter(")content(recorderStarted)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(recorderAborted)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(traceCompleted)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(sideExitIntoInterpreter)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(timeoutIntoInterpreter)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(typeMapMismatchAtEntry)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(returnToDifferentLoopHeader)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(traceTriggered)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(globalShapeMismatchAtEntry)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(treesTrashed)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(slotPromoted)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(unstableLoopVariable)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(breakLoopExits)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(returnLoopExits)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(mergedLoopExits)delimiter(")>operator(\))
+ ident(f)operator(()string<delimiter(")content(noCompatInnerTrees)delimiter(")>operator(\))operator(;)
+ ident(f)operator(()string<delimiter(")content(blacklisted)delimiter(")>operator(\))operator(;)
+operator(})
+
+keyword(var) ident(jitProps) operator(=) operator({)operator(})operator(;)
+ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ ident(jitProps)operator([)ident(prop)operator(]) operator(=) pre_constant(true)operator(;)
+ operator(}\))operator(;)
+keyword(var) ident(hadJITstats) operator(=) pre_constant(false)operator(;)
+keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(jitProps)operator(\))
+ ident(hadJITstats) operator(=) pre_constant(true)operator(;)
+
+keyword(function) function(test)operator(()ident(f)operator(\))
+operator({)
+ comment(// Clear out any accumulated confounding state in the oracle / JIT cache.)
+ ident(gc)operator(()operator(\))operator(;)
+
+ keyword(if) operator((!)ident(testName) operator(||) ident(testName) operator(==) ident(f)operator(.)ident(name)operator(\)) operator({)
+ keyword(var) ident(expectedJITstats) operator(=) ident(f)operator(.)ident(jitstats)operator(;)
+ keyword(if) operator(()ident(hadJITstats) operator(&&) ident(expectedJITstats)operator(\))
+ operator({)
+ keyword(var) ident(expectedProps) operator(=) operator({)operator(})operator(;)
+ ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ keyword(if) operator(()ident(prop) keyword(in) ident(expectedJITstats)operator(\))
+ ident(expectedProps)operator([)ident(prop)operator(]) operator(=) pre_constant(true)operator(;)
+ operator(}\))operator(;)
+ keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(expectedJITstats)operator(\))
+ operator({)
+ keyword(if) operator((!()ident(p) keyword(in) ident(expectedProps)operator(\)\))
+ keyword(throw) string<delimiter(")content(Bad property in )delimiter(")> operator(+) ident(f)operator(.)ident(name) operator(+) string<delimiter(")content(.jitstats: )delimiter(")> operator(+) ident(p)operator(;)
+ operator(})
+ operator(})
+
+ comment(// Collect our jit stats)
+ keyword(var) ident(localJITstats) operator(=) operator({)operator(})operator(;)
+ ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ ident(localJITstats)operator([)ident(prop)operator(]) operator(=) ident(tracemonkey)operator([)ident(prop)operator(])operator(;)
+ operator(}\))operator(;)
+ ident(check)operator(()ident(f)operator(.)ident(name)operator(,) ident(f)operator(()operator(\))operator(,) ident(f)operator(.)ident(expected)operator(,) ident(localJITstats)operator(,) ident(expectedJITstats)operator(\))operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(map_test)operator(()ident(t)operator(,) ident(cases)operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(cases)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(function) function(c)operator(()operator(\)) operator({) keyword(return) ident(t)operator(()ident(cases)operator([)ident(i)operator(])operator(.)ident(input)operator(\))operator(;) operator(})
+ ident(c)operator(.)ident(expected) operator(=) ident(cases)operator([)ident(i)operator(])operator(.)ident(expected)operator(;)
+ ident(c)operator(.)ident(name) operator(=) ident(t)operator(.)ident(name) operator(+) string<delimiter(")content(()delimiter(")> operator(+) ident(uneval)operator(()ident(cases)operator([)ident(i)operator(])operator(.)ident(input)operator(\)) operator(+) string<delimiter(")content(\))delimiter(")>operator(;)
+ ident(test)operator(()ident(c)operator(\))operator(;)
+ operator(})
+operator(})
+
+comment(// Use this function to compare expected and actual test results.)
+comment(// Types must match.)
+comment(// For numbers, treat NaN as matching NaN, distinguish 0 and -0, and)
+comment(// tolerate a certain degree of error for other values.)
+comment(//)
+comment(// These are the same criteria used by the tests in js/tests, except that)
+comment(// we distinguish 0 and -0.)
+keyword(function) function(close_enough)operator(()ident(expected)operator(,) ident(actual)operator(\))
+operator({)
+ keyword(if) operator(()keyword(typeof) ident(expected) operator(!=) keyword(typeof) ident(actual)operator(\))
+ keyword(return) pre_constant(false)operator(;)
+ keyword(if) operator(()keyword(typeof) ident(expected) operator(!=) string<delimiter(')content(number)delimiter(')>operator(\))
+ keyword(return) ident(actual) operator(==) ident(expected)operator(;)
+
+ comment(// Distinguish NaN from other values. Using x != x comparisons here)
+ comment(// works even if tests redefine isNaN.)
+ keyword(if) operator(()ident(actual) operator(!=) ident(actual)operator(\))
+ keyword(return) ident(expected) operator(!=) ident(expected)
+ keyword(if) operator(()ident(expected) operator(!=) ident(expected)operator(\))
+ keyword(return) pre_constant(false)operator(;)
+
+ comment(// Tolerate a certain degree of error.)
+ keyword(if) operator(()ident(actual) operator(!=) ident(expected)operator(\))
+ keyword(return) ident(Math)operator(.)ident(abs)operator(()ident(actual) operator(-) ident(expected)operator(\)) operator(<=) float(1E-10)operator(;)
+
+ comment(// Distinguish 0 and -0.)
+ keyword(if) operator(()ident(actual) operator(==) integer(0)operator(\))
+ keyword(return) operator(()integer(1) operator(/) ident(actual) operator(>) integer(0)operator(\)) operator(==) operator(()integer(1) operator(/) ident(expected) operator(>) integer(0)operator(\))operator(;)
+
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+
+keyword(function) function(check)operator(()ident(desc)operator(,) ident(actual)operator(,) ident(expected)operator(,) ident(oldJITstats)operator(,) ident(expectedJITstats)operator(\))
+operator({)
+ keyword(if) operator(()ident(close_enough)operator(()ident(expected)operator(,) ident(actual)operator(\)\)) operator({)
+ keyword(var) ident(pass) operator(=) pre_constant(true)operator(;)
+ ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ keyword(if) operator(()ident(expectedJITstats) operator(&&) ident(prop) keyword(in) ident(expectedJITstats) operator(&&)
+ ident(expectedJITstats)operator([)ident(prop)operator(]) operator(!=)
+ ident(tracemonkey)operator([)ident(prop)operator(]) operator(-) ident(oldJITstats)operator([)ident(prop)operator(]\)) operator({)
+ ident(pass) operator(=) pre_constant(false)operator(;)
+ operator(})
+ operator(}\))operator(;)
+ keyword(if) operator(()ident(pass)operator(\)) operator({)
+ ident(passes)operator(.)ident(push)operator(()ident(desc)operator(\))operator(;)
+ keyword(return) ident(print)operator(()string<delimiter(")content(TEST-PASS | trace-test.js |)delimiter(")>operator(,) ident(desc)operator(\))operator(;)
+ operator(})
+ operator(})
+ ident(fails)operator(.)ident(push)operator(()ident(desc)operator(\))operator(;)
+ keyword(var) ident(expectedStats) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(if) operator(()ident(expectedJITstats)operator(\)) operator({)
+ ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ keyword(if) operator(()ident(prop) keyword(in) ident(expectedJITstats)operator(\)) operator({)
+ keyword(if) operator(()ident(expectedStats)operator(\))
+ ident(expectedStats) operator(+=) string<delimiter(")content( )delimiter(")>operator(;)
+ ident(expectedStats) operator(+=)
+ ident(prop) operator(+) string<delimiter(")content(: )delimiter(")> operator(+) ident(expectedJITstats)operator([)ident(prop)operator(])operator(;)
+ operator(})
+ operator(}\))operator(;)
+ operator(})
+ keyword(var) ident(actualStats) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(if) operator(()ident(expectedJITstats)operator(\)) operator({)
+ ident(jitstatHandler)operator(()keyword(function)operator(()ident(prop)operator(\)) operator({)
+ keyword(if) operator(()ident(prop) keyword(in) ident(expectedJITstats)operator(\)) operator({)
+ keyword(if) operator(()ident(actualStats)operator(\))
+ ident(actualStats) operator(+=) string<delimiter(")content( )delimiter(")>operator(;)
+ ident(actualStats) operator(+=) ident(prop) operator(+) string<delimiter(")content(: )delimiter(")> operator(+) operator(()ident(tracemonkey)operator([)ident(prop)operator(])operator(-)ident(oldJITstats)operator([)ident(prop)operator(]\))operator(;)
+ operator(})
+ operator(}\))operator(;)
+ operator(})
+ ident(print)operator(()string<delimiter(")content(TEST-UNEXPECTED-FAIL | trace-test.js |)delimiter(")>operator(,) ident(desc)operator(,) key<delimiter(")content(: expected)delimiter(")>operator(,) keyword(typeof)operator(()ident(expected)operator(\))operator(,)
+ string<delimiter(")content(()delimiter(")>operator(,) ident(uneval)operator(()ident(expected)operator(\))operator(,) string<delimiter(")content(\))delimiter(")>operator(,)
+ operator(()ident(expectedStats) operator(?) string<delimiter(")content( [)delimiter(")> operator(+) ident(expectedStats) operator(+) string<delimiter(")content(] )delimiter(")> operator(:) string<delimiter(")delimiter(")>operator(\))operator(,)
+ string<delimiter(")content(!= actual)delimiter(")>operator(,)
+ keyword(typeof)operator(()ident(actual)operator(\))operator(,) string<delimiter(")content(()delimiter(")>operator(,) ident(uneval)operator(()ident(actual)operator(\))operator(,) string<delimiter(")content(\))delimiter(")>operator(,)
+ operator(()ident(actualStats) operator(?) string<delimiter(")content( [)delimiter(")> operator(+) ident(actualStats) operator(+) string<delimiter(")content(] )delimiter(")> operator(:) string<delimiter(")delimiter(")>operator(\)\))operator(;)
+operator(})
+
+keyword(function) function(ifInsideLoop)operator(()operator(\))
+operator({)
+ keyword(var) ident(cond) operator(=) pre_constant(true)operator(,) ident(intCond) operator(=) integer(5)operator(,) ident(count) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(cond)operator(\))
+ ident(count)operator(++;)
+ keyword(if) operator(()ident(intCond)operator(\))
+ ident(count)operator(++;)
+ operator(})
+ keyword(return) ident(count)operator(;)
+operator(})
+ident(ifInsideLoop)operator(.)ident(expected) operator(=) integer(200)operator(;)
+ident(test)operator(()ident(ifInsideLoop)operator(\))operator(;)
+
+keyword(function) function(bitwiseAnd_inner)operator(()ident(bitwiseAndValue)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(60000)operator(;) ident(i)operator(++)operator(\))
+ ident(bitwiseAndValue) operator(=) ident(bitwiseAndValue) operator(&) ident(i)operator(;)
+ keyword(return) ident(bitwiseAndValue)operator(;)
+operator(})
+keyword(function) function(bitwiseAnd)operator(()operator(\))
+operator({)
+ keyword(return) ident(bitwiseAnd_inner)operator(()integer(12341234)operator(\))operator(;)
+operator(})
+ident(bitwiseAnd)operator(.)ident(expected) operator(=) integer(0)operator(;)
+ident(test)operator(()ident(bitwiseAnd)operator(\))operator(;)
+
+keyword(if) operator((!)ident(testName) operator(||) ident(testName) operator(==) string<delimiter(")content(bitwiseGlobal)delimiter(")>operator(\)) operator({)
+ ident(bitwiseAndValue) operator(=) ident(Math)operator(.)ident(pow)operator(()integer(2)operator(,)integer(32)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(60000)operator(;) ident(i)operator(++)operator(\))
+ ident(bitwiseAndValue) operator(=) ident(bitwiseAndValue) operator(&) ident(i)operator(;)
+ ident(check)operator(()string<delimiter(")content(bitwiseGlobal)delimiter(")>operator(,) ident(bitwiseAndValue)operator(,) integer(0)operator(\))operator(;)
+operator(})
+
+
+keyword(function) function(equalInt)operator(()operator(\))
+operator({)
+ keyword(var) ident(i1) operator(=) integer(55)operator(,) ident(one) operator(=) integer(1)operator(,) ident(zero) operator(=) integer(0)operator(,) ident(undef)operator(;)
+ keyword(var) ident(o1) operator(=) operator({) operator(})operator(,) ident(o2) operator(=) operator({) operator(})operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(5)delimiter(")>operator(;)
+ keyword(var) ident(hits) operator(=) operator([)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5000)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(i1) operator(==) integer(55)operator(\)) ident(hits)operator([)integer(0)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(!=) integer(56)operator(\)) ident(hits)operator([)integer(1)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(<) integer(56)operator(\)) ident(hits)operator([)integer(2)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(>) integer(50)operator(\)) ident(hits)operator([)integer(3)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(<=) integer(60)operator(\)) ident(hits)operator([)integer(4)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(>=) integer(30)operator(\)) ident(hits)operator([)integer(5)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(==) integer(7)operator(\)) ident(hits)operator([)integer(6)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(!=) integer(55)operator(\)) ident(hits)operator([)integer(7)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(<) integer(30)operator(\)) ident(hits)operator([)integer(8)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(>) integer(90)operator(\)) ident(hits)operator([)integer(9)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(<=) integer(40)operator(\)) ident(hits)operator([)integer(10)operator(])operator(++;)
+ keyword(if) operator(()ident(i1) operator(>=) integer(70)operator(\)) ident(hits)operator([)integer(11)operator(])operator(++;)
+ keyword(if) operator(()ident(o1) operator(==) ident(o2)operator(\)) ident(hits)operator([)integer(12)operator(])operator(++;)
+ keyword(if) operator(()ident(o2) operator(!=) pre_constant(null)operator(\)) ident(hits)operator([)integer(13)operator(])operator(++;)
+ keyword(if) operator(()ident(s) operator(<) integer(10)operator(\)) ident(hits)operator([)integer(14)operator(])operator(++;)
+ keyword(if) operator(()pre_constant(true) operator(<) ident(zero)operator(\)) ident(hits)operator([)integer(15)operator(])operator(++;)
+ keyword(if) operator(()ident(undef) operator(>) ident(one)operator(\)) ident(hits)operator([)integer(16)operator(])operator(++;)
+ keyword(if) operator(()ident(undef) operator(<) ident(zero)operator(\)) ident(hits)operator([)integer(17)operator(])operator(++;)
+ operator(})
+ keyword(return) ident(hits)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(equalInt)operator(.)ident(expected) operator(=) string<delimiter(")content(5000,5000,5000,5000,5000,5000,0,0,0,0,0,0,0,5000,5000,0,0,0)delimiter(")>operator(;)
+ident(test)operator(()ident(equalInt)operator(\))operator(;)
+
+keyword(var) ident(a)operator(;)
+keyword(function) function(setelem)operator(()operator(\))
+operator({)
+ ident(a) operator(=) operator([)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(,)integer(0)operator(])operator(;)
+ ident(a) operator(=) ident(a)operator(.)ident(concat)operator(()ident(a)operator(,) ident(a)operator(,) ident(a)operator(\))operator(;)
+ keyword(var) ident(l) operator(=) ident(a)operator(.)ident(length)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(l)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)ident(i)operator(]) operator(=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(setelem)operator(.)ident(expected) operator(=) string<delimiter(")content(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83)delimiter(")>operator(;)
+ident(test)operator(()ident(setelem)operator(\))operator(;)
+
+keyword(function) function(getelem_inner)operator(()ident(a)operator(\))
+operator({)
+ keyword(var) ident(accum) operator(=) integer(0)operator(;)
+ keyword(var) ident(l) operator(=) ident(a)operator(.)ident(length)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(l)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(accum) operator(+=) ident(a)operator([)ident(i)operator(])operator(;)
+ operator(})
+ keyword(return) ident(accum)operator(;)
+operator(})
+keyword(function) function(getelem)operator(()operator(\))
+operator({)
+ keyword(return) ident(getelem_inner)operator(()ident(a)operator(\))operator(;)
+operator(})
+ident(getelem)operator(.)ident(expected) operator(=) integer(3486)operator(;)
+ident(test)operator(()ident(getelem)operator(\))operator(;)
+
+ident(globalName) operator(=) integer(907)operator(;)
+keyword(function) function(name)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(=) ident(globalName)operator(;)
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(name)operator(.)ident(expected) operator(=) integer(907)operator(;)
+ident(test)operator(()ident(name)operator(\))operator(;)
+
+keyword(var) ident(globalInt) operator(=) integer(0)operator(;)
+keyword(if) operator((!)ident(testName) operator(||) ident(testName) operator(==) string<delimiter(")content(globalGet)delimiter(")>operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(500)operator(;) ident(i)operator(++)operator(\))
+ ident(globalInt) operator(=) ident(globalName) operator(+) ident(i)operator(;)
+ ident(check)operator(()string<delimiter(")content(globalGet)delimiter(")>operator(,) ident(globalInt)operator(,) ident(globalName) operator(+) integer(499)operator(\))operator(;)
+operator(})
+
+keyword(if) operator((!)ident(testName) operator(||) ident(testName) operator(==) string<delimiter(")content(globalSet)delimiter(")>operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(500)operator(;) ident(i)operator(++)operator(\))
+ ident(globalInt) operator(=) ident(i)operator(;)
+ ident(check)operator(()string<delimiter(")content(globalSet)delimiter(")>operator(,) ident(globalInt)operator(,) integer(499)operator(\))operator(;)
+operator(})
+
+keyword(function) function(arith)operator(()operator(\))
+operator({)
+ keyword(var) ident(accum) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(accum) operator(+=) operator(()ident(i) operator(*) integer(2)operator(\)) operator(-) integer(1)operator(;)
+ operator(})
+ keyword(return) ident(accum)operator(;)
+operator(})
+ident(arith)operator(.)ident(expected) operator(=) integer(9800)operator(;)
+ident(test)operator(()ident(arith)operator(\))operator(;)
+
+keyword(function) function(lsh_inner)operator(()ident(n)operator(\))
+operator({)
+ keyword(var) ident(r)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(35)operator(;) ident(i)operator(++)operator(\))
+ ident(r) operator(=) hex(0x1) operator(<<) ident(n)operator(;)
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(map_test) operator(()ident(lsh_inner)operator(,)
+ operator([{)key(input)operator(:) integer(15)operator(,) key(expected)operator(:) integer(32768)operator(})operator(,)
+ operator({)key(input)operator(:) integer(55)operator(,) key(expected)operator(:) integer(8388608)operator(})operator(,)
+ operator({)key(input)operator(:) integer(1)operator(,) key(expected)operator(:) integer(2)operator(})operator(,)
+ operator({)key(input)operator(:) integer(0)operator(,) key(expected)operator(:) integer(1)operator(}]\))operator(;)
+
+keyword(function) function(rsh_inner)operator(()ident(n)operator(\))
+operator({)
+ keyword(var) ident(r)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(35)operator(;) ident(i)operator(++)operator(\))
+ ident(r) operator(=) hex(0x11010101) operator(>>) ident(n)operator(;)
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(map_test) operator(()ident(rsh_inner)operator(,)
+ operator([{)key(input)operator(:) integer(8)operator(,) key(expected)operator(:) integer(1114369)operator(})operator(,)
+ operator({)key(input)operator(:) integer(5)operator(,) key(expected)operator(:) integer(8914952)operator(})operator(,)
+ operator({)key(input)operator(:) integer(35)operator(,) key(expected)operator(:) integer(35659808)operator(})operator(,)
+ operator({)key(input)operator(:) operator(-)integer(1)operator(,) key(expected)operator(:) integer(0)operator(}]\))operator(;)
+
+keyword(function) function(ursh_inner)operator(()ident(n)operator(\))
+operator({)
+ keyword(var) ident(r)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(35)operator(;) ident(i)operator(++)operator(\))
+ ident(r) operator(=) operator(-)integer(55) operator(>>>) ident(n)operator(;)
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(map_test) operator(()ident(ursh_inner)operator(,)
+ operator([{)key(input)operator(:) integer(8)operator(,) key(expected)operator(:) integer(16777215)operator(})operator(,)
+ operator({)key(input)operator(:) integer(33)operator(,) key(expected)operator(:) integer(2147483620)operator(})operator(,)
+ operator({)key(input)operator(:) integer(0)operator(,) key(expected)operator(:) integer(4294967241)operator(})operator(,)
+ operator({)key(input)operator(:) integer(1)operator(,) key(expected)operator(:) integer(2147483620)operator(}]\))operator(;)
+
+keyword(function) function(doMath_inner)operator(()ident(cos)operator(\))
+operator({)
+ keyword(var) ident(s) operator(=) integer(0)operator(;)
+ keyword(var) ident(sin) operator(=) ident(Math)operator(.)ident(sin)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(200)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(=) operator(-)ident(Math)operator(.)ident(pow)operator(()ident(sin)operator(()ident(i)operator(\)) operator(+) ident(cos)operator(()ident(i) operator(*) float(0.75)operator(\))operator(,) integer(4)operator(\))operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+keyword(function) function(doMath)operator(()operator(\)) operator({)
+ keyword(return) ident(doMath_inner)operator(()ident(Math)operator(.)ident(cos)operator(\))operator(;)
+operator(})
+ident(doMath)operator(.)ident(expected) operator(=) operator(-)float(0.5405549555611059)operator(;)
+ident(test)operator(()ident(doMath)operator(\))operator(;)
+
+keyword(function) function(fannkuch)operator(()operator(\)) operator({)
+ keyword(var) ident(count) operator(=) ident(Array)operator(()integer(8)operator(\))operator(;)
+ keyword(var) ident(r) operator(=) integer(8)operator(;)
+ keyword(var) ident(done) operator(=) integer(0)operator(;)
+ keyword(while) operator(()ident(done) operator(<) integer(40)operator(\)) operator({)
+ comment(// write-out the first 30 permutations)
+ ident(done) operator(+=) ident(r)operator(;)
+ keyword(while) operator(()ident(r) operator(!=) integer(1)operator(\)) operator({) ident(count)operator([)ident(r) operator(-) integer(1)operator(]) operator(=) ident(r)operator(;) ident(r)operator(--;) operator(})
+ keyword(while) operator(()pre_constant(true)operator(\)) operator({)
+ ident(count)operator([)ident(r)operator(]) operator(=) ident(count)operator([)ident(r)operator(]) operator(-) integer(1)operator(;)
+ keyword(if) operator(()ident(count)operator([)ident(r)operator(]) operator(>) integer(0)operator(\)) keyword(break)operator(;)
+ ident(r)operator(++;)
+ operator(})
+ operator(})
+ keyword(return) ident(done)operator(;)
+operator(})
+ident(fannkuch)operator(.)ident(expected) operator(=) integer(41)operator(;)
+ident(test)operator(()ident(fannkuch)operator(\))operator(;)
+
+keyword(function) function(xprop)operator(()operator(\))
+operator({)
+ ident(a) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(20)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(+=) integer(7)operator(;)
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(xprop)operator(.)ident(expected) operator(=) integer(140)operator(;)
+ident(test)operator(()ident(xprop)operator(\))operator(;)
+
+keyword(var) ident(a) operator(=) integer(2)operator(;)
+keyword(function) function(getprop_inner)operator(()ident(o2)operator(\))
+operator({)
+ keyword(var) ident(o) operator(=) operator({)key(a)operator(:)integer(5)operator(})operator(;)
+ keyword(var) ident(t) operator(=) local_variable(this)operator(;)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(20)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(t) operator(=) local_variable(this)operator(;)
+ ident(x) operator(+=) ident(o)operator(.)ident(a) operator(+) ident(o2)operator(.)ident(a) operator(+) local_variable(this)operator(.)ident(a) operator(+) ident(t)operator(.)ident(a)operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+keyword(function) function(getprop)operator(()operator(\)) operator({)
+ keyword(return) ident(getprop_inner)operator(({)key(a)operator(:)integer(9)operator(}\))operator(;)
+operator(})
+ident(getprop)operator(.)ident(expected) operator(=) integer(360)operator(;)
+ident(test)operator(()ident(getprop)operator(\))operator(;)
+
+keyword(function) function(mod)operator(()operator(\))
+operator({)
+ keyword(var) ident(mods) operator(=) operator([-)integer(1)operator(,-)integer(1)operator(,-)integer(1)operator(,-)integer(1)operator(])operator(;)
+ keyword(var) ident(a) operator(=) float(9.5)operator(,) ident(b) operator(=) operator(-)integer(5)operator(,) ident(c) operator(=) integer(42)operator(,) ident(d) operator(=) operator(()integer(1)operator(/)integer(0)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(20)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(mods)operator([)integer(0)operator(]) operator(=) ident(a) operator(%) ident(b)operator(;)
+ ident(mods)operator([)integer(1)operator(]) operator(=) ident(b) operator(%) integer(1)operator(;)
+ ident(mods)operator([)integer(2)operator(]) operator(=) ident(c) operator(%) ident(d)operator(;)
+ ident(mods)operator([)integer(3)operator(]) operator(=) ident(c) operator(%) ident(a)operator(;)
+ ident(mods)operator([)integer(4)operator(]) operator(=) ident(b) operator(%) integer(0)operator(;)
+ operator(})
+ keyword(return) ident(mods)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(mod)operator(.)ident(expected) operator(=) string<delimiter(")content(4.5,0,42,4,NaN)delimiter(")>operator(;)
+ident(test)operator(()ident(mod)operator(\))operator(;)
+
+keyword(function) function(glob_f1)operator(()operator(\)) operator({)
+ keyword(return) integer(1)operator(;)
+operator(})
+keyword(function) function(glob_f2)operator(()operator(\)) operator({)
+ keyword(return) ident(glob_f1)operator(()operator(\))operator(;)
+operator(})
+keyword(function) function(call)operator(()operator(\))
+operator({)
+ keyword(var) ident(q1) operator(=) integer(0)operator(,) ident(q2) operator(=) integer(0)operator(,) ident(q3) operator(=) integer(0)operator(,) ident(q4) operator(=) integer(0)operator(,) ident(q5) operator(=) integer(0)operator(;)
+ keyword(var) ident(o) operator(=) operator({)operator(})operator(;)
+ keyword(function) function(f1)operator(()operator(\)) operator({)
+ keyword(return) integer(1)operator(;)
+ operator(})
+ keyword(function) function(f2)operator(()ident(f)operator(\)) operator({)
+ keyword(return) ident(f)operator(()operator(\))operator(;)
+ operator(})
+ ident(o)operator(.)ident(f) operator(=) ident(f1)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(q1) operator(+=) ident(f1)operator(()operator(\))operator(;)
+ ident(q2) operator(+=) ident(f2)operator(()ident(f1)operator(\))operator(;)
+ ident(q3) operator(+=) ident(glob_f1)operator(()operator(\))operator(;)
+ ident(q4) operator(+=) ident(o)operator(.)ident(f)operator(()operator(\))operator(;)
+ ident(q5) operator(+=) ident(glob_f2)operator(()operator(\))operator(;)
+ operator(})
+ keyword(var) ident(ret) operator(=) ident(String)operator(([)ident(q1)operator(,) ident(q2)operator(,) ident(q3)operator(,) ident(q4)operator(,) ident(q5)operator(]\))operator(;)
+ keyword(return) ident(ret)operator(;)
+operator(})
+ident(call)operator(.)ident(expected) operator(=) string<delimiter(")content(100,100,100,100,100)delimiter(")>operator(;)
+ident(test)operator(()ident(call)operator(\))operator(;)
+
+keyword(function) function(setprop)operator(()operator(\))
+operator({)
+ keyword(var) ident(obj) operator(=) operator({) key(a)operator(:-)integer(1) operator(})operator(;)
+ keyword(var) ident(obj2) operator(=) operator({) key(b)operator(:-)integer(1)operator(,) key(a)operator(:-)integer(1) operator(})operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(20)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(obj2)operator(.)ident(b) operator(=) ident(obj)operator(.)ident(a) operator(=) ident(i)operator(;)
+ operator(})
+ keyword(return) operator([)ident(obj)operator(.)ident(a)operator(,) ident(obj2)operator(.)ident(a)operator(,) ident(obj2)operator(.)ident(b)operator(])operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(setprop)operator(.)ident(expected) operator(=) string<delimiter(")content(19,-1,19)delimiter(")>operator(;)
+ident(test)operator(()ident(setprop)operator(\))operator(;)
+
+keyword(function) function(testif)operator(()operator(\)) operator({)
+ keyword(var) ident(q) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator((()ident(i) operator(&) integer(1)operator(\)) operator(==) integer(0)operator(\))
+ ident(q)operator(++;)
+ keyword(else)
+ ident(q)operator(--;)
+ operator(})
+ keyword(return) ident(q)operator(;)
+operator(})
+ident(testif)operator(.)ident(expected) operator(=) integer(0)operator(;)
+ident(test)operator(()ident(testif)operator(\))operator(;)
+
+keyword(var) ident(globalinc) operator(=) integer(0)operator(;)
+keyword(function) function(testincops)operator(()ident(n)operator(\)) operator({)
+ keyword(var) ident(i) operator(=) integer(0)operator(,) ident(o) operator(=) operator({)key(p)operator(:)integer(0)operator(})operator(,) ident(a) operator(=) operator([)integer(0)operator(])operator(;)
+ ident(n) operator(=) integer(100)operator(;)
+
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(n)operator(;) ident(i)operator(++)operator(\))operator(;)
+ keyword(while) operator(()ident(i)operator(--) operator(>) integer(0)operator(\))operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(n)operator(;) operator(++)ident(i)operator(\))operator(;)
+ keyword(while) operator((--)ident(i) operator(>=) integer(0)operator(\))operator(;)
+
+ keyword(for) operator(()ident(o)operator(.)ident(p) operator(=) integer(0)operator(;) ident(o)operator(.)ident(p) operator(<) ident(n)operator(;) ident(o)operator(.)ident(p)operator(++)operator(\)) ident(globalinc)operator(++;)
+ keyword(while) operator(()ident(o)operator(.)ident(p)operator(--) operator(>) integer(0)operator(\)) operator(--)ident(globalinc)operator(;)
+ keyword(for) operator(()ident(o)operator(.)ident(p) operator(=) integer(0)operator(;) ident(o)operator(.)ident(p) operator(<) ident(n)operator(;) operator(++)ident(o)operator(.)ident(p)operator(\)) operator(++)ident(globalinc)operator(;)
+ keyword(while) operator((--)ident(o)operator(.)ident(p) operator(>=) integer(0)operator(\)) ident(globalinc)operator(--;)
+
+ operator(++)ident(i)operator(;) comment(// set to 0)
+ keyword(for) operator(()ident(a)operator([)ident(i)operator(]) operator(=) integer(0)operator(;) ident(a)operator([)ident(i)operator(]) operator(<) ident(n)operator(;) ident(a)operator([)ident(i)operator(])operator(++)operator(\))operator(;)
+ keyword(while) operator(()ident(a)operator([)ident(i)operator(])operator(--) operator(>) integer(0)operator(\))operator(;)
+ keyword(for) operator(()ident(a)operator([)ident(i)operator(]) operator(=) integer(0)operator(;) ident(a)operator([)ident(i)operator(]) operator(<) ident(n)operator(;) operator(++)ident(a)operator([)ident(i)operator(]\))operator(;)
+ keyword(while) operator((--)ident(a)operator([)ident(i)operator(]) operator(>=) integer(0)operator(\))operator(;)
+
+ keyword(return) operator([++)ident(o)operator(.)ident(p)operator(,) operator(++)ident(a)operator([)ident(i)operator(])operator(,) ident(globalinc)operator(])operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(testincops)operator(.)ident(expected) operator(=) string<delimiter(")content(0,0,0)delimiter(")>operator(;)
+ident(test)operator(()ident(testincops)operator(\))operator(;)
+
+keyword(function) function(trees)operator(()operator(\)) operator({)
+ keyword(var) ident(i) operator(=) integer(0)operator(,) ident(o) operator(=) operator([)integer(0)operator(,)integer(0)operator(,)integer(0)operator(])operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator((()ident(i) operator(&) integer(1)operator(\)) operator(==) integer(0)operator(\)) ident(o)operator([)integer(0)operator(])operator(++;)
+ keyword(else) keyword(if) operator((()ident(i) operator(&) integer(2)operator(\)) operator(==) integer(0)operator(\)) ident(o)operator([)integer(1)operator(])operator(++;)
+ keyword(else) ident(o)operator([)integer(2)operator(])operator(++;)
+ operator(})
+ keyword(return) ident(String)operator(()ident(o)operator(\))operator(;)
+operator(})
+ident(trees)operator(.)ident(expected) operator(=) string<delimiter(")content(50,25,25)delimiter(")>operator(;)
+ident(test)operator(()ident(trees)operator(\))operator(;)
+
+keyword(function) function(unboxint)operator(()operator(\)) operator({)
+ keyword(var) ident(q) operator(=) integer(0)operator(;)
+ keyword(var) ident(o) operator(=) operator([)integer(4)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\))
+ ident(q) operator(=) ident(o)operator([)integer(0)operator(]) operator(<<) integer(1)operator(;)
+ keyword(return) ident(q)operator(;)
+operator(})
+ident(unboxint)operator(.)ident(expected) operator(=) integer(8)operator(;)
+ident(test)operator(()ident(unboxint)operator(\))operator(;)
+
+keyword(function) function(strings)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(,) ident(b) operator(=) operator(-)integer(1)operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(abcdefghij)delimiter(")>operator(,) ident(s2) operator(=) string<delimiter(")content(a)delimiter(")>operator(;)
+ keyword(var) ident(f) operator(=) string<delimiter(")content(f)delimiter(")>operator(;)
+ keyword(var) ident(c) operator(=) integer(0)operator(,) ident(d) operator(=) integer(0)operator(,) ident(e) operator(=) integer(0)operator(,) ident(g) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)ident(i)operator(]) operator(=) operator(()ident(s)operator(.)ident(substring)operator(()ident(i)operator(,) ident(i)operator(+)integer(1)operator(\)) operator(+) ident(s)operator([)ident(i)operator(]) operator(+) ident(String)operator(.)ident(fromCharCode)operator(()ident(s2)operator(.)ident(charCodeAt)operator(()integer(0)operator(\)) operator(+) ident(i)operator(\)\))operator(.)ident(concat)operator(()ident(i)operator(\)) operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(s)operator([)ident(i)operator(]) operator(==) ident(f)operator(\))
+ ident(c)operator(++;)
+ keyword(if) operator(()ident(s)operator([)ident(i)operator(]) operator(!=) string<delimiter(')content(b)delimiter(')>operator(\))
+ ident(d)operator(++;)
+ keyword(if) operator(()string<delimiter(")content(B)delimiter(")> operator(>) ident(s2)operator(\))
+ ident(g)operator(++;) comment(// f already used)
+ keyword(if) operator(()ident(s2) operator(<) string<delimiter(")content(b)delimiter(")>operator(\))
+ ident(e)operator(++;)
+ ident(b) operator(=) ident(s)operator(.)ident(length)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(toString)operator(()operator(\)) operator(+) ident(b) operator(+) ident(c) operator(+) ident(d) operator(+) ident(e) operator(+) ident(g)operator(;)
+operator(})
+ident(strings)operator(.)ident(expected) operator(=) string<delimiter(")content(aaa00,bbb11,ccc22,ddd33,eee44,fff55,ggg66,hhh77,iii88,jjj991019100)delimiter(")>operator(;)
+ident(test)operator(()ident(strings)operator(\))operator(;)
+
+keyword(function) function(dependentStrings)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(t) operator(=) string<delimiter(")content(abcdefghijklmnopqrst)delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(var) ident(s) operator(=) ident(t)operator(.)ident(substring)operator(()integer(2)operator(*)ident(i)operator(,) integer(2)operator(*)ident(i) operator(+) integer(2)operator(\))operator(;)
+ ident(a)operator([)ident(i)operator(]) operator(=) ident(s) operator(+) ident(s)operator(.)ident(length)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(dependentStrings)operator(.)ident(expected) operator(=) string<delimiter(")content(ab2cd2ef2gh2ij2kl2mn2op2qr2st2)delimiter(")>operator(;)
+ident(test)operator(()ident(dependentStrings)operator(\))operator(;)
+
+keyword(function) function(stringConvert)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(s1) operator(=) string<delimiter(")content(F)delimiter(")>operator(,) ident(s2) operator(=) string<delimiter(")content(1.3)delimiter(")>operator(,) ident(s3) operator(=) string<delimiter(")content(5)delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)integer(0)operator(]) operator(=) integer(1) operator(>>) ident(s1)operator(;)
+ ident(a)operator([)integer(1)operator(]) operator(=) integer(10) operator(-) ident(s2)operator(;)
+ ident(a)operator([)integer(2)operator(]) operator(=) integer(15) operator(*) ident(s3)operator(;)
+ ident(a)operator([)integer(3)operator(]) operator(=) ident(s3) operator(|) integer(32)operator(;)
+ ident(a)operator([)integer(4)operator(]) operator(=) ident(s2) operator(+) integer(60)operator(;)
+ comment(// a[5] = 9 + s3;)
+ comment(// a[6] = -s3;)
+ ident(a)operator([)integer(7)operator(]) operator(=) ident(s3) operator(&) string<delimiter(")content(7)delimiter(")>operator(;)
+ comment(// a[8] = ~s3;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(stringConvert)operator(.)ident(expected) operator(=) string<delimiter(")content(1,8.7,75,37,1.360,,,5)delimiter(")>operator(;)
+ident(test)operator(()ident(stringConvert)operator(\))operator(;)
+
+keyword(function) function(orTestHelper)operator(()ident(a)operator(,) ident(b)operator(,) ident(n)operator(\))
+operator({)
+ keyword(var) ident(k) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(n)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(a) operator(||) ident(b)operator(\))
+ ident(k) operator(+=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(k)operator(;)
+operator(})
+
+keyword(var) ident(orNaNTest1)operator(,) ident(orNaNTest2)operator(;)
+
+ident(orNaNTest1) operator(=) keyword(new) ident(Function)operator(()string<delimiter(")content(return orTestHelper(NaN, NaN, 10\);)delimiter(")>operator(\))operator(;)
+ident(orNaNTest1)operator(.)ident(name) operator(=) string<delimiter(')content(orNaNTest1)delimiter(')>operator(;)
+ident(orNaNTest1)operator(.)ident(expected) operator(=) integer(0)operator(;)
+ident(orNaNTest2) operator(=) keyword(new) ident(Function)operator(()string<delimiter(")content(return orTestHelper(NaN, 1, 10\);)delimiter(")>operator(\))operator(;)
+ident(orNaNTest2)operator(.)ident(name) operator(=) string<delimiter(')content(orNaNTest2)delimiter(')>operator(;)
+ident(orNaNTest2)operator(.)ident(expected) operator(=) integer(45)operator(;)
+ident(test)operator(()ident(orNaNTest1)operator(\))operator(;)
+ident(test)operator(()ident(orNaNTest2)operator(\))operator(;)
+
+keyword(function) function(andTestHelper)operator(()ident(a)operator(,) ident(b)operator(,) ident(n)operator(\))
+operator({)
+ keyword(var) ident(k) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(n)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(a) operator(&&) ident(b)operator(\))
+ ident(k) operator(+=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(k)operator(;)
+operator(})
+
+keyword(if) operator((!)ident(testName) operator(||) ident(testName) operator(==) string<delimiter(")content(truthies)delimiter(")>operator(\)) operator({)
+ operator(()keyword(function) operator(()operator(\)) operator({)
+ keyword(var) ident(opsies) operator(=) operator([)string<delimiter(")content(||)delimiter(")>operator(,) string<delimiter(")content(&&)delimiter(")>operator(])operator(;)
+ keyword(var) ident(falsies) operator(=) operator([)pre_constant(null)operator(,) pre_constant(undefined)operator(,) pre_constant(false)operator(,) ident(NaN)operator(,) integer(0)operator(,) string<delimiter(")delimiter(")>operator(])operator(;)
+ keyword(var) ident(truthies) operator(=) operator([{)operator(})operator(,) pre_constant(true)operator(,) integer(1)operator(,) integer(42)operator(,) integer(1)operator(/)integer(0)operator(,) operator(-)integer(1)operator(/)integer(0)operator(,) string<delimiter(")content(blah)delimiter(")>operator(])operator(;)
+ keyword(var) ident(boolies) operator(=) operator([)ident(falsies)operator(,) ident(truthies)operator(])operator(;)
+
+ comment(// The for each here should abort tracing, so that this test framework)
+ comment(// relies only on the interpreter while the orTestHelper and andTestHelper)
+ comment(// functions get trace-JITed.)
+ keyword(for) ident(each) operator(()keyword(var) ident(op) keyword(in) ident(opsies)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(boolies)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) keyword(in) ident(boolies)operator([)ident(i)operator(]\)) operator({)
+ keyword(var) ident(x) operator(=) ident(uneval)operator(()ident(boolies)operator([)ident(i)operator(])operator([)ident(j)operator(]\))operator(;)
+ keyword(for) operator(()keyword(var) ident(k) keyword(in) ident(boolies)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(l) keyword(in) ident(boolies)operator([)ident(k)operator(]\)) operator({)
+ keyword(var) ident(y) operator(=) ident(uneval)operator(()ident(boolies)operator([)ident(k)operator(])operator([)ident(l)operator(]\))operator(;)
+ keyword(var) ident(prefix) operator(=) operator(()ident(op) operator(==) string<delimiter(")content(||)delimiter(")>operator(\)) operator(?) string<delimiter(")content(or)delimiter(")> operator(:) string<delimiter(")content(and)delimiter(")>operator(;)
+ keyword(var) ident(f) operator(=) keyword(new) ident(Function)operator(()string<delimiter(")content(return )delimiter(")> operator(+) ident(prefix) operator(+) string<delimiter(")content(TestHelper()delimiter(")> operator(+) ident(x) operator(+) string<delimiter(")content(,)delimiter(")> operator(+) ident(y) operator(+) string<delimiter(")content(,10\))delimiter(")>operator(\))operator(;)
+ ident(f)operator(.)ident(name) operator(=) ident(prefix) operator(+) string<delimiter(")content(Test()delimiter(")> operator(+) ident(x) operator(+) string<delimiter(")content(,)delimiter(")> operator(+) ident(y) operator(+) string<delimiter(")content(\))delimiter(")>operator(;)
+ ident(f)operator(.)ident(expected) operator(=) ident(eval)operator(()ident(x) operator(+) ident(op) operator(+) ident(y)operator(\)) operator(?) integer(45) operator(:) integer(0)operator(;)
+ ident(test)operator(()ident(f)operator(\))operator(;)
+ operator(})
+ operator(})
+ operator(})
+ operator(})
+ operator(})
+ operator(}\))operator(()operator(\))operator(;)
+operator(})
+
+keyword(function) function(nonEmptyStack1Helper)operator(()ident(o)operator(,) ident(farble)operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(j) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(o)operator(\))
+ ident(a)operator([)ident(j)operator(++)operator(]) operator(=) ident(i)operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+
+keyword(function) function(nonEmptyStack1)operator(()operator(\)) operator({)
+ keyword(return) ident(nonEmptyStack1Helper)operator(({)key(a)operator(:)integer(1)operator(,)key(b)operator(:)integer(2)operator(,)key(c)operator(:)integer(3)operator(,)key(d)operator(:)integer(4)operator(,)key(e)operator(:)integer(5)operator(,)key(f)operator(:)integer(6)operator(,)key(g)operator(:)integer(7)operator(,)key(h)operator(:)integer(8)operator(})operator(,) string<delimiter(")content(hi)delimiter(")>operator(\))operator(;)
+operator(})
+
+ident(nonEmptyStack1)operator(.)ident(expected) operator(=) string<delimiter(")content(abcdefgh)delimiter(")>operator(;)
+ident(test)operator(()ident(nonEmptyStack1)operator(\))operator(;)
+
+keyword(function) function(nonEmptyStack2)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(c) keyword(in) operator({)key(a)operator(:)integer(1)operator(,) key(b)operator(:)integer(2)operator(,) key(c)operator(:)integer(3)operator(}\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(+=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(String)operator(()ident(a)operator(\))operator(;)
+operator(})
+ident(nonEmptyStack2)operator(.)ident(expected) operator(=) string<delimiter(")content(135)delimiter(")>operator(;)
+ident(test)operator(()ident(nonEmptyStack2)operator(\))operator(;)
+
+keyword(function) function(arityMismatchMissingArg)operator(()ident(arg)operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(a) operator(=) integer(0)operator(,) ident(i) operator(=) integer(1)operator(;) ident(i) operator(<) integer(10000)operator(;) ident(i) operator(*=) integer(2)operator(\)) operator({)
+ ident(a) operator(+=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(arityMismatchMissingArg)operator(.)ident(expected) operator(=) integer(16383)operator(;)
+ident(test)operator(()ident(arityMismatchMissingArg)operator(\))operator(;)
+
+keyword(function) function(arityMismatchExtraArg)operator(()operator(\))
+operator({)
+ keyword(return) ident(arityMismatchMissingArg)operator(()integer(1)operator(,) integer(2)operator(\))operator(;)
+operator(})
+ident(arityMismatchExtraArg)operator(.)ident(expected) operator(=) integer(16383)operator(;)
+ident(test)operator(()ident(arityMismatchExtraArg)operator(\))operator(;)
+
+keyword(function) function(MyConstructor)operator(()ident(i)operator(\))
+operator({)
+ local_variable(this)operator(.)ident(i) operator(=) ident(i)operator(;)
+operator(})
+ident(MyConstructor)operator(.)ident(prototype)operator(.)function(toString) operator(=) keyword(function)operator(()operator(\)) operator({)keyword(return) local_variable(this)operator(.)ident(i) operator(+) string<delimiter(")delimiter(")>operator(})operator(;)
+
+keyword(function) function(newTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) keyword(new) ident(MyConstructor)operator(()ident(i)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(newTest)operator(.)ident(expected) operator(=) string<delimiter(")content(0123456789)delimiter(")>operator(;)
+ident(test)operator(()ident(newTest)operator(\))operator(;)
+
+comment(// The following functions use a delay line of length 2 to change the value)
+comment(// of the callee without exiting the traced loop. This is obviously tuned to)
+comment(// match the current HOTLOOP setting of 2.)
+keyword(function) function(shapelessArgCalleeLoop)operator(()ident(f)operator(,) ident(g)operator(,) ident(h)operator(,) ident(a)operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(f)operator(()ident(i)operator(,) ident(a)operator(\))operator(;)
+ ident(f) operator(=) ident(g)operator(;)
+ ident(g) operator(=) ident(h)operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(shapelessVarCalleeLoop)operator(()ident(f0)operator(,) ident(g)operator(,) ident(h)operator(,) ident(a)operator(\))
+operator({)
+ keyword(var) ident(f) operator(=) ident(f0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(f)operator(()ident(i)operator(,) ident(a)operator(\))operator(;)
+ ident(f) operator(=) ident(g)operator(;)
+ ident(g) operator(=) ident(h)operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(shapelessLetCalleeLoop)operator(()ident(f0)operator(,) ident(g)operator(,) ident(h)operator(,) ident(a)operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(let) ident(f) operator(=) ident(f0)operator(;)
+ ident(f)operator(()ident(i)operator(,) ident(a)operator(\))operator(;)
+ ident(f) operator(=) ident(g)operator(;)
+ ident(g) operator(=) ident(h)operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(shapelessUnknownCalleeLoop)operator(()ident(n)operator(,) ident(f)operator(,) ident(g)operator(,) ident(h)operator(,) ident(a)operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ operator(()ident(n) operator(||) ident(f)operator(\))operator(()ident(i)operator(,) ident(a)operator(\))operator(;)
+ ident(f) operator(=) ident(g)operator(;)
+ ident(g) operator(=) ident(h)operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(shapelessCalleeTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+
+ keyword(var) function(helper) operator(=) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)ident(i)operator(]) operator(=) ident(i)operator(;)
+ ident(shapelessArgCalleeLoop)operator(()ident(helper)operator(,) ident(helper)operator(,) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)ident(i)operator(]) operator(=) operator(-)ident(i)operator(,) ident(a)operator(\))operator(;)
+
+ function(helper) operator(=) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(10) operator(+) ident(i)operator(]) operator(=) ident(i)operator(;)
+ ident(shapelessVarCalleeLoop)operator(()ident(helper)operator(,) ident(helper)operator(,) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(10) operator(+) ident(i)operator(]) operator(=) operator(-)ident(i)operator(,) ident(a)operator(\))operator(;)
+
+ function(helper) operator(=) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(20) operator(+) ident(i)operator(]) operator(=) ident(i)operator(;)
+ ident(shapelessLetCalleeLoop)operator(()ident(helper)operator(,) ident(helper)operator(,) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(20) operator(+) ident(i)operator(]) operator(=) operator(-)ident(i)operator(,) ident(a)operator(\))operator(;)
+
+ function(helper) operator(=) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(30) operator(+) ident(i)operator(]) operator(=) ident(i)operator(;)
+ ident(shapelessUnknownCalleeLoop)operator(()pre_constant(null)operator(,) ident(helper)operator(,) ident(helper)operator(,) keyword(function) operator(()ident(i)operator(,) ident(a)operator(\)) ident(a)operator([)integer(30) operator(+) ident(i)operator(]) operator(=) operator(-)ident(i)operator(,) ident(a)operator(\))operator(;)
+
+ keyword(try) operator({)
+ ident(helper) operator(=) operator({)key(hack)operator(:) integer(42)operator(})operator(;)
+ ident(shapelessUnknownCalleeLoop)operator(()pre_constant(null)operator(,) ident(helper)operator(,) ident(helper)operator(,) ident(helper)operator(,) ident(a)operator(\))operator(;)
+ operator(}) keyword(catch) operator(()ident(e)operator(\)) operator({)
+ keyword(if) operator(()ident(e) operator(+) string<delimiter(")delimiter(")> operator(!=) string<delimiter(")content(TypeError: f is not a function)delimiter(")>operator(\))
+ ident(print)operator(()string<delimiter(")content(shapelessUnknownCalleeLoop: unexpected exception )delimiter(")> operator(+) ident(e)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(shapelessCalleeTest)operator(.)ident(expected) operator(=) string<delimiter(")content(01-2-3-4-5-6-7-8-901-2-3-4-5-6-7-8-9012345678901-2-3-4-5-6-7-8-9)delimiter(")>operator(;)
+ident(test)operator(()ident(shapelessCalleeTest)operator(\))operator(;)
+
+keyword(function) function(typeofTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(values) operator(=) operator([)string<delimiter(")content(hi)delimiter(")>operator(,) string<delimiter(")content(hi)delimiter(")>operator(,) string<delimiter(")content(hi)delimiter(")>operator(,) pre_constant(null)operator(,) integer(5)operator(,) float(5.1)operator(,) pre_constant(true)operator(,) pre_constant(undefined)operator(,) regexp<delimiter(/)content(foo)delimiter(/)>operator(,) ident(typeofTest)operator(,) operator([)operator(])operator(,) operator({)operator(}])operator(,) ident(types) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(values)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(types)operator([)ident(i)operator(]) operator(=) keyword(typeof) ident(values)operator([)ident(i)operator(])operator(;)
+ keyword(return) ident(types)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(typeofTest)operator(.)ident(expected) operator(=) string<delimiter(")content(string,string,string,object,number,number,boolean,undefined,object,function,object,object)delimiter(")>operator(;)
+ident(test)operator(()ident(typeofTest)operator(\))operator(;)
+
+keyword(function) function(joinTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(8)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) operator([)ident(String)operator(.)ident(fromCharCode)operator(()integer(97) operator(+) ident(i)operator(\)])operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(8)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(8)operator(;) ident(j)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(])operator([)integer(1) operator(+) ident(j)operator(]) operator(=) ident(j)operator(;)
+ operator(})
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(8)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(+=) ident(a)operator([)ident(i)operator(])operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(joinTest)operator(.)ident(expected) operator(=) string<delimiter(")content(a,0,1,2,3,4,5,6,7b,0,1,2,3,4,5,6,7c,0,1,2,3,4,5,6,7d,0,1,2,3,4,5,6,7e,0,1,2,3,4,5,6,7f,0,1,2,3,4,5,6,7g,0,1,2,3,4,5,6,7h,0,1,2,3,4,5,6,7)delimiter(")>operator(;)
+ident(test)operator(()ident(joinTest)operator(\))operator(;)
+
+keyword(function) function(arity1)operator(()ident(x)operator(\))
+operator({)
+ keyword(return) operator(()ident(x) operator(==) pre_constant(undefined)operator(\)) operator(?) integer(1) operator(:) integer(0)operator(;)
+operator(})
+keyword(function) function(missingArgTest)operator(()operator(\)) operator({)
+ keyword(var) ident(q)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(q) operator(=) ident(arity1)operator(()operator(\))operator(;)
+ operator(})
+ keyword(return) ident(q)operator(;)
+operator(})
+ident(missingArgTest)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(missingArgTest)operator(\))operator(;)
+
+function(JSON) operator(=) keyword(function) operator(()operator(\)) operator({)
+ keyword(return) operator({)
+ function(stringify)operator(:) keyword(function) function(stringify)operator(()ident(value)operator(,) ident(whitelist)operator(\)) operator({)
+ keyword(switch) operator(()keyword(typeof)operator(()ident(value)operator(\)\)) operator({)
+ keyword(case) string<delimiter(")content(object)delimiter(")>operator(:)
+ keyword(return) ident(value)operator(.)ident(constructor)operator(.)ident(name)operator(;)
+ operator(})
+ operator(})
+ operator(})operator(;)
+operator(})operator(()operator(\))operator(;)
+
+keyword(function) function(missingArgTest2)operator(()operator(\)) operator({)
+ keyword(var) ident(testPairs) operator(=) operator([)
+ operator([)string<delimiter(")content({})delimiter(")>operator(,) operator({)operator(}])operator(,)
+ operator([)string<delimiter(")content([])delimiter(")>operator(,) operator([)operator(]])operator(,)
+ operator([)string<delimiter(')content({"foo":"bar"})delimiter(')>operator(,) operator({)key<delimiter(")content(foo)delimiter(")>operator(:)string<delimiter(")content(bar)delimiter(")>operator(}])operator(,)
+ operator(])
+
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) ident(testPairs)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(var) ident(s) operator(=) ident(JSON)operator(.)ident(stringify)operator(()ident(testPairs)operator([)ident(i)operator(])operator([)integer(1)operator(]\))
+ ident(a)operator([)ident(i)operator(]) operator(=) ident(s)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(missingArgTest2)operator(.)ident(expected) operator(=) string<delimiter(")content(Object,Array,Object)delimiter(")>operator(;)
+ident(test)operator(()ident(missingArgTest2)operator(\))operator(;)
+
+keyword(function) function(deepForInLoop)operator(()operator(\)) operator({)
+ comment(// NB: the number of props set in C is arefully tuned to match HOTLOOP = 2.)
+ keyword(function) function(C)operator(()operator(\))operator({)local_variable(this)operator(.)ident(p) operator(=) integer(1)operator(,) local_variable(this)operator(.)ident(q) operator(=) integer(2)operator(})
+ ident(C)operator(.)ident(prototype) operator(=) operator({)key(p)operator(:)integer(1)operator(,) key(q)operator(:)integer(2)operator(,) key(r)operator(:)integer(3)operator(,) key(s)operator(:)integer(4)operator(,) key(t)operator(:)integer(5)operator(})operator(;)
+ keyword(var) ident(o) operator(=) keyword(new) ident(C)operator(;)
+ keyword(var) ident(j) operator(=) integer(0)operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(o)operator(\))
+ ident(a)operator([)ident(j)operator(++)operator(]) operator(=) ident(i)operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(deepForInLoop)operator(.)ident(expected) operator(=) string<delimiter(")content(pqrst)delimiter(")>operator(;)
+ident(test)operator(()ident(deepForInLoop)operator(\))operator(;)
+
+keyword(function) function(nestedExit)operator(()ident(x)operator(\)) operator({)
+ keyword(var) ident(q) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ operator({)
+ keyword(if) operator(()ident(x)operator(\))
+ operator(++)ident(q)operator(;)
+ operator(})
+operator(})
+keyword(function) function(nestedExitLoop)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(10)operator(;) operator(++)ident(j)operator(\))
+ ident(nestedExit)operator(()ident(j) operator(<) integer(7)operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(nestedExitLoop)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(nestedExitLoop)operator(\))operator(;)
+
+keyword(function) function(bitsinbyte)operator(()ident(b)operator(\)) operator({)
+ keyword(var) ident(m) operator(=) integer(1)operator(,) ident(c) operator(=) integer(0)operator(;)
+ keyword(while)operator(()ident(m)operator(<)hex(0x100)operator(\)) operator({)
+ keyword(if)operator(()ident(b) operator(&) ident(m)operator(\)) ident(c)operator(++;)
+ ident(m) operator(<<=) integer(1)operator(;)
+ operator(})
+ keyword(return) integer(1)operator(;)
+operator(})
+keyword(function) function(TimeFunc)operator(()ident(func)operator(\)) operator({)
+ keyword(var) ident(x)operator(,)ident(y)operator(;)
+ keyword(for)operator(()keyword(var) ident(y)operator(=)integer(0)operator(;) ident(y)operator(<)integer(256)operator(;) ident(y)operator(++)operator(\)) ident(func)operator(()ident(y)operator(\))operator(;)
+operator(})
+keyword(function) function(nestedExit2)operator(()operator(\)) operator({)
+ ident(TimeFunc)operator(()ident(bitsinbyte)operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(nestedExit2)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(nestedExit2)operator(\))operator(;)
+
+keyword(function) function(parsingNumbers)operator(()operator(\)) operator({)
+ keyword(var) ident(s1) operator(=) string<delimiter(")content(123)delimiter(")>operator(;)
+ keyword(var) ident(s1z) operator(=) string<delimiter(")content(123zzz)delimiter(")>operator(;)
+ keyword(var) ident(s2) operator(=) string<delimiter(")content(123.456)delimiter(")>operator(;)
+ keyword(var) ident(s2z) operator(=) string<delimiter(")content(123.456zzz)delimiter(")>operator(;)
+
+ keyword(var) ident(e1) operator(=) integer(123)operator(;)
+ keyword(var) ident(e2) operator(=) float(123.456)operator(;)
+
+ keyword(var) ident(r1)operator(,) ident(r1z)operator(,) ident(r2)operator(,) ident(r2z)operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(r1) operator(=) ident(parseInt)operator(()ident(s1)operator(\))operator(;)
+ ident(r1z) operator(=) ident(parseInt)operator(()ident(s1z)operator(\))operator(;)
+ ident(r2) operator(=) ident(parseFloat)operator(()ident(s2)operator(\))operator(;)
+ ident(r2z) operator(=) ident(parseFloat)operator(()ident(s2z)operator(\))operator(;)
+ operator(})
+
+ keyword(if) operator(()ident(r1) operator(==) ident(e1) operator(&&) ident(r1z) operator(==) ident(e1) operator(&&) ident(r2) operator(==) ident(e2) operator(&&) ident(r2z) operator(==) ident(e2)operator(\))
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+ keyword(return) string<delimiter(")content(fail)delimiter(")>operator(;)
+operator(})
+ident(parsingNumbers)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(parsingNumbers)operator(\))operator(;)
+
+keyword(function) function(matchInLoop)operator(()operator(\)) operator({)
+ keyword(var) ident(k) operator(=) string<delimiter(")content(hi)delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(var) ident(result) operator(=) ident(k)operator(.)ident(match)operator(()regexp<delimiter(/)content(hi)delimiter(/)>operator(\)) operator(!=) pre_constant(null)operator(;)
+ operator(})
+ keyword(return) ident(result)operator(;)
+operator(})
+ident(matchInLoop)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(matchInLoop)operator(\))operator(;)
+
+keyword(function) function(testMatchAsCondition)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)string<delimiter(')content(0)delimiter(')>operator(,) string<delimiter(')content(0)delimiter(')>operator(,) string<delimiter(')content(0)delimiter(')>operator(,) string<delimiter(')content(0)delimiter(')>operator(])operator(;)
+ keyword(var) ident(r) operator(=) regexp<delimiter(/)content(0)delimiter(/)>operator(;)
+ string<delimiter(")content(x)delimiter(")>operator(.)ident(q)operator(;)
+ keyword(for) operator(()keyword(var) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(4)operator(;) ident(z)operator(++)operator(\))
+ ident(a)operator([)ident(z)operator(])operator(.)ident(match)operator(()ident(r)operator(\)) operator(?) integer(1) operator(:) integer(2)operator(;)
+operator(})
+ident(test)operator(()ident(testMatchAsCondition)operator(\))operator(;)
+
+keyword(function) function(deep1)operator(()ident(x)operator(\)) operator({)
+ keyword(if) operator(()ident(x) operator(>) integer(90)operator(\))
+ keyword(return) integer(1)operator(;)
+ keyword(return) integer(2)operator(;)
+operator(})
+keyword(function) function(deep2)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\))
+ ident(deep1)operator(()ident(i)operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(deep2)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(deep2)operator(\))operator(;)
+
+keyword(function) function(heavyFn1)operator(()ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(3)operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(3)operator(;)
+ keyword(return) operator([)integer(0)operator(,) ident(i)operator(])operator(.)ident(map)operator(()keyword(function) operator(()ident(i)operator(\)) ident(i) operator(+) ident(x)operator(\))operator(;)
+ operator(})
+ keyword(return) operator([)operator(])operator(;)
+operator(})
+keyword(function) function(testHeavy)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<=) integer(3)operator(;) ident(i)operator(++)operator(\))
+ ident(heavyFn1)operator(()ident(i)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testHeavy)operator(\))operator(;)
+
+keyword(function) function(heavyFn2)operator(()ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(<) integer(1000)operator(\))
+ keyword(return) ident(heavyFn1)operator(()ident(i)operator(\))operator(;)
+ keyword(return) keyword(function) operator(()operator(\)) ident(i)operator(;)
+operator(})
+keyword(function) function(testHeavy2)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<=) integer(3)operator(;) ident(i)operator(++)operator(\))
+ ident(heavyFn2)operator(()ident(i)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testHeavy2)operator(\))operator(;)
+
+keyword(var) ident(merge_type_maps_x) operator(=) integer(0)operator(,) ident(merge_type_maps_y) operator(=) integer(0)operator(;)
+keyword(function) function(merge_type_maps)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(merge_type_maps_x) operator(=) integer(0)operator(;) ident(merge_type_maps_x) operator(<) integer(50)operator(;) operator(++)ident(merge_type_maps_x)operator(\))
+ keyword(if) operator((()ident(merge_type_maps_x) operator(&) integer(1)operator(\)) operator(==) integer(1)operator(\))
+ operator(++)ident(merge_type_maps_y)operator(;)
+ keyword(return) operator([)ident(merge_type_maps_x)operator(,)ident(merge_type_maps_y)operator(])operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(merge_type_maps)operator(.)ident(expected) operator(=) string<delimiter(")content(50,25)delimiter(")>operator(;)
+ident(test)operator(()ident(merge_type_maps)operator(\))
+
+keyword(function) function(inner_double_outer_int)operator(()operator(\)) operator({)
+ keyword(function) function(f)operator(()ident(i)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(m) operator(=) integer(0)operator(;) ident(m) operator(<) integer(20)operator(;) operator(++)ident(m)operator(\))
+ keyword(for) operator(()keyword(var) ident(n) operator(=) integer(0)operator(;) ident(n) operator(<) integer(100)operator(;) ident(n) operator(+=) ident(i)operator(\))
+ operator(;)
+ keyword(return) ident(n)operator(;)
+ operator(})
+ keyword(return) ident(f)operator(()float(.5)operator(\))operator(;)
+operator(})
+ident(inner_double_outer_int)operator(.)ident(expected) operator(=) integer(100)operator(;)
+ident(test)operator(()ident(inner_double_outer_int)operator(\))operator(;)
+
+keyword(function) function(newArrayTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) keyword(new) ident(Array)operator(()operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(map)operator(()keyword(function)operator(()ident(x)operator(\)) ident(x)operator(.)ident(length)operator(\))operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(newArrayTest)operator(.)ident(expected)operator(=)string<delimiter(")content(0,0,0,0,0,0,0,0,0,0)delimiter(")>operator(;)
+ident(test)operator(()ident(newArrayTest)operator(\))operator(;)
+
+keyword(function) function(stringSplitTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(a,b)delimiter(")>
+ keyword(var) ident(a) operator(=) pre_constant(null)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(a) operator(=) ident(s)operator(.)ident(split)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()operator(\))operator(;)
+operator(})
+ident(stringSplitTest)operator(.)ident(expected)operator(=)string<delimiter(")content(a,b)delimiter(")>operator(;)
+ident(test)operator(()ident(stringSplitTest)operator(\))operator(;)
+
+keyword(function) function(stringSplitIntoArrayTest)operator(()operator(\))
+operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(a,b)delimiter(")>
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) ident(s)operator(.)ident(split)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()operator(\))operator(;)
+operator(})
+ident(stringSplitIntoArrayTest)operator(.)ident(expected)operator(=)string<delimiter(")content(a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a,b)delimiter(")>operator(;)
+ident(test)operator(()ident(stringSplitIntoArrayTest)operator(\))operator(;)
+
+keyword(function) function(forVarInWith)operator(()operator(\)) operator({)
+ keyword(function) function(foo)operator(()operator(\)) operator(({)key(notk)operator(:)integer(42)operator(}\))operator(;)
+ keyword(function) function(bar)operator(()operator(\)) operator(({)key(p)operator(:)integer(1)operator(,) key(q)operator(:)integer(2)operator(,) key(r)operator(:)integer(3)operator(,) key(s)operator(:)integer(4)operator(,) key(t)operator(:)integer(5)operator(}\))operator(;)
+ keyword(var) ident(o) operator(=) ident(foo)operator(()operator(\))operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(with) operator(()ident(o)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(k) keyword(in) ident(bar)operator(()operator(\)\))
+ ident(a)operator([)ident(a)operator(.)ident(length)operator(]) operator(=) ident(k)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(forVarInWith)operator(.)ident(expected) operator(=) string<delimiter(")content(pqrst)delimiter(")>operator(;)
+ident(test)operator(()ident(forVarInWith)operator(\))operator(;)
+
+keyword(function) function(inObjectTest)operator(()operator(\)) operator({)
+ keyword(var) ident(o) operator(=) operator({)key(p)operator(:) integer(1)operator(,) key(q)operator(:) integer(2)operator(,) key(r)operator(:) integer(3)operator(,) key(s)operator(:) integer(4)operator(,) key(t)operator(:) integer(5)operator(})operator(;)
+ keyword(var) ident(r) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(o)operator(\)) operator({)
+ keyword(if) operator((!()ident(i) keyword(in) ident(o)operator(\)\))
+ keyword(break)operator(;)
+ keyword(if) operator((()ident(i) operator(+) ident(i)operator(\)) keyword(in) ident(o)operator(\))
+ keyword(break)operator(;)
+ operator(++)ident(r)operator(;)
+ operator(})
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(inObjectTest)operator(.)ident(expected) operator(=) integer(5)operator(;)
+ident(test)operator(()ident(inObjectTest)operator(\))operator(;)
+
+keyword(function) function(inArrayTest)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)integer(0)operator(,) integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(,) integer(5)operator(,) integer(6)operator(,) integer(7)operator(,) integer(8)operator(,) integer(9)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator((!()ident(i) keyword(in) ident(a)operator(\)\))
+ keyword(break)operator(;)
+ operator(})
+ keyword(return) ident(i)operator(;)
+operator(})
+ident(inArrayTest)operator(.)ident(expected) operator(=) integer(10)operator(;)
+ident(test)operator(()ident(inArrayTest)operator(\))operator(;)
+
+keyword(function) function(innerLoopIntOuterDouble)operator(()operator(\)) operator({)
+ keyword(var) ident(n) operator(=) integer(10000)operator(,) ident(i)operator(=)integer(0)operator(,) ident(j)operator(=)integer(0)operator(,) ident(count)operator(=)integer(0)operator(,) ident(limit)operator(=)integer(0)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(1)operator(;) ident(i) operator(<=) ident(n)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(limit) operator(=) ident(i) operator(*) integer(1)operator(;)
+ keyword(for) operator(()ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(limit)operator(;) operator(++)ident(j)operator(\)) operator({)
+ operator(++)ident(count)operator(;)
+ operator(})
+ operator(})
+ keyword(return) string<delimiter(")delimiter(")> operator(+) ident(count)operator(;)
+operator(})
+ident(innerLoopIntOuterDouble)operator(.)ident(expected)operator(=)string<delimiter(")content(50005000)delimiter(")>operator(;)
+ident(test)operator(()ident(innerLoopIntOuterDouble)operator(\))operator(;)
+
+keyword(function) function(outerline)operator(()operator(\))operator({)
+ keyword(var) ident(i)operator(=)integer(0)operator(;)
+ keyword(var) ident(j)operator(=)integer(0)operator(;)
+
+ keyword(for) operator(()ident(i) operator(=) integer(3)operator(;) ident(i)operator(<=) integer(100000)operator(;) ident(i)operator(+=)integer(2)operator(\))
+ operator({)
+ keyword(for) operator(()ident(j) operator(=) integer(3)operator(;) ident(j) operator(<) integer(1000)operator(;) ident(j)operator(+=)integer(2)operator(\))
+ operator({)
+ keyword(if) operator((()ident(i) operator(&) integer(1)operator(\)) operator(==) integer(1)operator(\))
+ keyword(break)operator(;)
+ operator(})
+ operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(outerline)operator(.)ident(expected)operator(=)string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(outerline)operator(\))operator(;)
+
+keyword(function) function(addAccumulations)operator(()ident(f)operator(\)) operator({)
+ keyword(var) ident(a) operator(=) ident(f)operator(()operator(\))operator(;)
+ keyword(var) ident(b) operator(=) ident(f)operator(()operator(\))operator(;)
+ keyword(return) ident(a)operator(()operator(\)) operator(+) ident(b)operator(()operator(\))operator(;)
+operator(})
+
+keyword(function) function(loopingAccumulator)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(return) keyword(function) operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ operator(++)ident(x)operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+ operator(})
+operator(})
+
+keyword(function) function(testLoopingAccumulator)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) ident(addAccumulations)operator(()ident(loopingAccumulator)operator(\))operator(;)
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testLoopingAccumulator)operator(.)ident(expected) operator(=) integer(20)operator(;)
+ident(test)operator(()ident(testLoopingAccumulator)operator(\))operator(;)
+
+keyword(function) function(testBranchingLoop)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(51)operator(\)) operator({)
+ ident(x) operator(+=) integer(10)operator(;)
+ operator(})
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testBranchingLoop)operator(.)ident(expected) operator(=) integer(110)operator(;)
+ident(test)operator(()ident(testBranchingLoop)operator(\))operator(;)
+
+keyword(function) function(testBranchingUnstableLoop)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(51)operator(\)) operator({)
+ ident(x) operator(+=) float(10.1)operator(;)
+ operator(})
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testBranchingUnstableLoop)operator(.)ident(expected) operator(=) float(110.1)operator(;)
+ident(test)operator(()ident(testBranchingUnstableLoop)operator(\))operator(;)
+
+keyword(function) function(testBranchingUnstableLoopCounter)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(51)operator(\)) operator({)
+ ident(i) operator(+=) float(1.1)operator(;)
+ operator(})
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testBranchingUnstableLoopCounter)operator(.)ident(expected) operator(=) integer(99)operator(;)
+ident(test)operator(()ident(testBranchingUnstableLoopCounter)operator(\))operator(;)
+
+
+keyword(function) function(testBranchingUnstableObject)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator({)key(s)operator(:) string<delimiter(")content(a)delimiter(")>operator(})operator(;)
+ keyword(var) ident(t) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(51)operator(\))
+ operator({)
+ ident(x)operator(.)ident(s) operator(=) integer(5)operator(;)
+ operator(})
+ ident(t) operator(+=) ident(x)operator(.)ident(s)operator(;)
+ operator(})
+ keyword(return) ident(t)operator(.)ident(length)operator(;)
+operator(})
+ident(testBranchingUnstableObject)operator(.)ident(expected) operator(=) integer(100)operator(;)
+ident(test)operator(()ident(testBranchingUnstableObject)operator(\))operator(;)
+
+keyword(function) function(testArrayDensityChange)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(x)operator([)ident(i)operator(]) operator(=) string<delimiter(")content(asdf)delimiter(")>operator(;)
+ operator(})
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;) ident(i) operator(<) ident(x)operator(.)ident(length)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(51)operator(\))
+ operator({)
+ ident(x)operator([)integer(199)operator(]) operator(=) string<delimiter(")content(asdf)delimiter(")>operator(;)
+ operator(})
+ keyword(if) operator(()ident(x)operator([)ident(i)operator(]\))
+ ident(count) operator(+=) ident(x)operator([)ident(i)operator(])operator(.)ident(length)operator(;)
+ operator(})
+ keyword(return) ident(count)operator(;)
+operator(})
+ident(testArrayDensityChange)operator(.)ident(expected) operator(=) integer(404)operator(;)
+ident(test)operator(()ident(testArrayDensityChange)operator(\))operator(;)
+
+keyword(function) function(testDoubleToStr)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) float(0.0)operator(;)
+ keyword(var) ident(y) operator(=) float(5.5)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(200)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(x) operator(+=) ident(parseFloat)operator(()ident(y)operator(.)ident(toString)operator(()operator(\)\))operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testDoubleToStr)operator(.)ident(expected) operator(=) float(5.5)operator(*)integer(200)operator(;)
+ident(test)operator(()ident(testDoubleToStr)operator(\))operator(;)
+
+keyword(function) function(testNumberToString)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) keyword(new) ident(Number)operator(()integer(0)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ ident(x)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testNumberToString)operator(\))operator(;)
+
+keyword(function) function(testDecayingInnerLoop)operator(()operator(\)) operator({)
+ keyword(var) ident(i)operator(,) ident(j)operator(,) ident(k) operator(=) integer(10)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5000)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(for) operator(()ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(k)operator(;) operator(++)ident(j)operator(\))operator(;)
+ operator(--)ident(k)operator(;)
+ operator(})
+ keyword(return) ident(i)operator(;)
+operator(})
+ident(testDecayingInnerLoop)operator(.)ident(expected) operator(=) integer(5000)operator(;)
+ident(test)operator(()ident(testDecayingInnerLoop)operator(\))operator(;)
+
+keyword(function) function(testContinue)operator(()operator(\)) operator({)
+ keyword(var) ident(i)operator(;)
+ keyword(var) ident(total) operator(=) integer(0)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(20)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(==) integer(11)operator(\))
+ keyword(continue)operator(;)
+ ident(total)operator(++;)
+ operator(})
+ keyword(return) ident(total)operator(;)
+operator(})
+ident(testContinue)operator(.)ident(expected) operator(=) integer(19)operator(;)
+ident(test)operator(()ident(testContinue)operator(\))operator(;)
+
+keyword(function) function(testContinueWithLabel)operator(()operator(\)) operator({)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(j) operator(=) integer(20)operator(;)
+ ident(checkiandj) operator(:)
+ keyword(while) operator(()ident(i) operator(<) integer(10)operator(\)) operator({)
+ ident(i) operator(+=) integer(1)operator(;)
+ ident(checkj) operator(:)
+ keyword(while) operator(()ident(j) operator(>) integer(10)operator(\)) operator({)
+ ident(j) operator(-=) integer(1)operator(;)
+ keyword(if) operator((()ident(j) operator(%) integer(2)operator(\)) operator(==) integer(0)operator(\))
+ keyword(continue) ident(checkj)operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(i) operator(+) ident(j)operator(;)
+operator(})
+ident(testContinueWithLabel)operator(.)ident(expected) operator(=) integer(20)operator(;)
+ident(test)operator(()ident(testContinueWithLabel)operator(\))operator(;)
+
+keyword(function) function(testDivision)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) integer(32768)operator(;)
+ keyword(var) ident(b)operator(;)
+ keyword(while) operator(()ident(b) operator(!==) integer(1)operator(\)) operator({)
+ ident(b) operator(=) ident(a) operator(/) integer(2)operator(;)
+ ident(a) operator(=) ident(b)operator(;)
+ operator(})
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(testDivision)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testDivision)operator(\))operator(;)
+
+keyword(function) function(testDivisionFloat)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) float(32768.0)operator(;)
+ keyword(var) ident(b)operator(;)
+ keyword(while) operator(()ident(b) operator(!==) integer(1)operator(\)) operator({)
+ ident(b) operator(=) ident(a) operator(/) float(2.0)operator(;)
+ ident(a) operator(=) ident(b)operator(;)
+ operator(})
+ keyword(return) ident(a) operator(===) float(1.0)operator(;)
+operator(})
+ident(testDivisionFloat)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testDivisionFloat)operator(\))operator(;)
+
+keyword(function) function(testToUpperToLower)operator(()operator(\)) operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(Hello)delimiter(")>operator(,) ident(s1)operator(,) ident(s2)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(s1) operator(=) ident(s)operator(.)ident(toLowerCase)operator(()operator(\))operator(;)
+ ident(s2) operator(=) ident(s)operator(.)ident(toUpperCase)operator(()operator(\))operator(;)
+ operator(})
+ keyword(return) ident(s1) operator(+) ident(s2)operator(;)
+operator(})
+ident(testToUpperToLower)operator(.)ident(expected) operator(=) string<delimiter(")content(helloHELLO)delimiter(")>operator(;)
+ident(test)operator(()ident(testToUpperToLower)operator(\))operator(;)
+
+keyword(function) function(testReplace2)operator(()operator(\)) operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")content(H e l l o)delimiter(")>operator(,) ident(s1)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\))
+ ident(s1) operator(=) ident(s)operator(.)ident(replace)operator(()string<delimiter(")content( )delimiter(")>operator(,) string<delimiter(")delimiter(")>operator(\))operator(;)
+ keyword(return) ident(s1)operator(;)
+operator(})
+ident(testReplace2)operator(.)ident(expected) operator(=) string<delimiter(")content(He l l o)delimiter(")>operator(;)
+ident(test)operator(()ident(testReplace2)operator(\))operator(;)
+
+keyword(function) function(testBitwise)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(10000)operator(;)
+ keyword(var) ident(y) operator(=) integer(123456)operator(;)
+ keyword(var) ident(z) operator(=) integer(987234)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(50)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(x) operator(=) ident(x) operator(^) ident(y)operator(;)
+ ident(y) operator(=) ident(y) operator(|) ident(z)operator(;)
+ ident(z) operator(=) operator(~)ident(x)operator(;)
+ operator(})
+ keyword(return) ident(x) operator(+) ident(y) operator(+) ident(z)operator(;)
+operator(})
+ident(testBitwise)operator(.)ident(expected) operator(=) operator(-)integer(1298)operator(;)
+ident(test)operator(()ident(testBitwise)operator(\))operator(;)
+
+keyword(function) function(testSwitch)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(var) ident(ret) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(switch) operator(()ident(x)operator(\)) operator({)
+ keyword(case) integer(0)operator(:)
+ ident(ret) operator(+=) integer(1)operator(;)
+ keyword(break)operator(;)
+ keyword(case) integer(1)operator(:)
+ ident(ret) operator(+=) integer(2)operator(;)
+ keyword(break)operator(;)
+ keyword(case) integer(2)operator(:)
+ ident(ret) operator(+=) integer(3)operator(;)
+ keyword(break)operator(;)
+ keyword(case) integer(3)operator(:)
+ ident(ret) operator(+=) integer(4)operator(;)
+ keyword(break)operator(;)
+ keyword(default)operator(:)
+ ident(x) operator(=) integer(0)operator(;)
+ operator(})
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(ret)operator(;)
+operator(})
+ident(testSwitch)operator(.)ident(expected) operator(=) integer(226)operator(;)
+ident(test)operator(()ident(testSwitch)operator(\))operator(;)
+
+keyword(function) function(testSwitchString)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) string<delimiter(")content(asdf)delimiter(")>operator(;)
+ keyword(var) ident(ret) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(switch) operator(()ident(x)operator(\)) operator({)
+ keyword(case) string<delimiter(")content(asdf)delimiter(")>operator(:)
+ ident(x) operator(=) string<delimiter(")content(asd)delimiter(")>operator(;)
+ ident(ret) operator(+=) integer(1)operator(;)
+ keyword(break)operator(;)
+ keyword(case) string<delimiter(")content(asd)delimiter(")>operator(:)
+ ident(x) operator(=) string<delimiter(")content(as)delimiter(")>operator(;)
+ ident(ret) operator(+=) integer(2)operator(;)
+ keyword(break)operator(;)
+ keyword(case) string<delimiter(")content(as)delimiter(")>operator(:)
+ ident(x) operator(=) string<delimiter(")content(a)delimiter(")>operator(;)
+ ident(ret) operator(+=) integer(3)operator(;)
+ keyword(break)operator(;)
+ keyword(case) string<delimiter(")content(a)delimiter(")>operator(:)
+ ident(x) operator(=) string<delimiter(")content(foo)delimiter(")>operator(;)
+ ident(ret) operator(+=) integer(4)operator(;)
+ keyword(break)operator(;)
+ keyword(default)operator(:)
+ ident(x) operator(=) string<delimiter(")content(asdf)delimiter(")>operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(ret)operator(;)
+operator(})
+ident(testSwitchString)operator(.)ident(expected) operator(=) integer(200)operator(;)
+ident(test)operator(()ident(testSwitchString)operator(\))operator(;)
+
+keyword(function) function(testNegZero1Helper)operator(()ident(z)operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) ident(z) operator(=) operator(-)ident(z)operator(;) operator(})
+ keyword(return) ident(Math)operator(.)ident(atan2)operator(()integer(0)operator(,) operator(-)integer(0)operator(\)) operator(==) ident(Math)operator(.)ident(atan2)operator(()integer(0)operator(,) ident(z)operator(\))operator(;)
+operator(})
+
+keyword(var) function(testNegZero1) operator(=) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(testNegZero1Helper)operator(()integer(0)operator(\))operator(;) operator(})
+ident(testNegZero1)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testNegZero1)operator(.)ident(name) operator(=) string<delimiter(')content(testNegZero1)delimiter(')>operator(;)
+ident(testNegZero1Helper)operator(()integer(1)operator(\))operator(;)
+ident(test)operator(()ident(testNegZero1)operator(\))operator(;)
+
+comment(// No test case, just make sure this doesn't assert.)
+keyword(function) function(testNegZero2)operator(()operator(\)) operator({)
+ keyword(var) ident(z) operator(=) integer(0)operator(;)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) operator(({)key(p)operator(:) operator((-)ident(z)operator(\)}\))operator(;) operator(})
+operator(})
+ident(testNegZero2)operator(()operator(\))operator(;)
+
+keyword(function) function(testConstSwitch)operator(()operator(\)) operator({)
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) operator({) keyword(switch)operator(()float(1.1)operator(\)) operator({) keyword(case) ident(NaN)operator(:) keyword(case) integer(2)operator(:) operator(}) ident(x) operator(=) integer(2)operator(;) operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testConstSwitch)operator(.)ident(expected) operator(=) integer(2)operator(;)
+ident(test)operator(()ident(testConstSwitch)operator(\))operator(;)
+
+keyword(function) function(testConstSwitch2)operator(()operator(\)) operator({)
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({) keyword(switch)operator(()integer(0)operator(/)integer(0)operator(\)) operator({) operator(}) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testConstSwitch2)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testConstSwitch2)operator(\))operator(;)
+
+keyword(function) function(testConstIf)operator(()operator(\)) operator({)
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) operator({) keyword(if) operator(()float(1.1) operator(||) integer(5)operator(\)) operator({) operator(}) ident(x) operator(=) integer(2)operator(;)operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testConstIf)operator(.)ident(expected) operator(=) integer(2)operator(;)
+ident(test)operator(()ident(testConstIf)operator(\))operator(;)
+
+keyword(function) function(testTypeofHole)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(6)operator(\))operator(;)
+ ident(a)operator([)integer(5)operator(]) operator(=) integer(3)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(6)operator(;) operator(++)ident(i)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) keyword(typeof) ident(a)operator([)ident(i)operator(])operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testTypeofHole)operator(.)ident(expected) operator(=) string<delimiter(")content(undefined,undefined,undefined,undefined,undefined,number)delimiter(")>
+ident(test)operator(()ident(testTypeofHole)operator(\))operator(;)
+
+keyword(function) function(testNativeLog)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)ident(i)operator(]) operator(=) ident(Math)operator(.)ident(log)operator(()ident(Math)operator(.)ident(pow)operator(()ident(Math)operator(.)ident(E)operator(,) integer(10)operator(\)\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNativeLog)operator(.)ident(expected) operator(=) string<delimiter(")content(10,10,10,10,10)delimiter(")>operator(;)
+ident(test)operator(()ident(testNativeLog)operator(\))operator(;)
+
+keyword(function) function(test_JSOP_ARGSUB)operator(()operator(\)) operator({)
+ keyword(function) function(f0)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(0)operator(])operator(;) operator(})
+ keyword(function) function(f1)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(1)operator(])operator(;) operator(})
+ keyword(function) function(f2)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(2)operator(])operator(;) operator(})
+ keyword(function) function(f3)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(3)operator(])operator(;) operator(})
+ keyword(function) function(f4)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(4)operator(])operator(;) operator(})
+ keyword(function) function(f5)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(5)operator(])operator(;) operator(})
+ keyword(function) function(f6)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(6)operator(])operator(;) operator(})
+ keyword(function) function(f7)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(7)operator(])operator(;) operator(})
+ keyword(function) function(f8)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(8)operator(])operator(;) operator(})
+ keyword(function) function(f9)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator([)integer(9)operator(])operator(;) operator(})
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)integer(0)operator(]) operator(=) ident(f0)operator(()string<delimiter(')content(a)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(1)operator(]) operator(=) ident(f1)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(2)operator(]) operator(=) ident(f2)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(3)operator(]) operator(=) ident(f3)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(4)operator(]) operator(=) ident(f4)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(5)operator(]) operator(=) ident(f5)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(6)operator(]) operator(=) ident(f6)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(7)operator(]) operator(=) ident(f7)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(8)operator(]) operator(=) ident(f8)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(,)string<delimiter(')content(i)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(9)operator(]) operator(=) ident(f9)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(,)string<delimiter(')content(i)delimiter(')>operator(,)string<delimiter(')content(j)delimiter(')>operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(test_JSOP_ARGSUB)operator(.)ident(expected) operator(=) string<delimiter(")content(abcdefghij)delimiter(")>operator(;)
+ident(test)operator(()ident(test_JSOP_ARGSUB)operator(\))operator(;)
+
+keyword(function) function(test_JSOP_ARGCNT)operator(()operator(\)) operator({)
+ keyword(function) function(f0)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f1)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f2)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f3)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f4)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f5)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f6)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f7)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f8)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(function) function(f9)operator(()operator(\)) operator({) keyword(return) local_variable(arguments)operator(.)ident(length)operator(;) operator(})
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(a)operator([)integer(0)operator(]) operator(=) ident(f0)operator(()string<delimiter(')content(a)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(1)operator(]) operator(=) ident(f1)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(2)operator(]) operator(=) ident(f2)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(3)operator(]) operator(=) ident(f3)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(4)operator(]) operator(=) ident(f4)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(5)operator(]) operator(=) ident(f5)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(6)operator(]) operator(=) ident(f6)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(7)operator(]) operator(=) ident(f7)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(8)operator(]) operator(=) ident(f8)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(,)string<delimiter(')content(i)delimiter(')>operator(\))operator(;)
+ ident(a)operator([)integer(9)operator(]) operator(=) ident(f9)operator(()string<delimiter(')content(a)delimiter(')>operator(,)string<delimiter(')content(b)delimiter(')>operator(,)string<delimiter(')content(c)delimiter(')>operator(,)string<delimiter(')content(d)delimiter(')>operator(,)string<delimiter(')content(e)delimiter(')>operator(,)string<delimiter(')content(f)delimiter(')>operator(,)string<delimiter(')content(g)delimiter(')>operator(,)string<delimiter(')content(h)delimiter(')>operator(,)string<delimiter(')content(i)delimiter(')>operator(,)string<delimiter(')content(j)delimiter(')>operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(test_JSOP_ARGCNT)operator(.)ident(expected) operator(=) string<delimiter(")content(1,2,3,4,5,6,7,8,9,10)delimiter(")>operator(;)
+ident(test)operator(()ident(test_JSOP_ARGCNT)operator(\))operator(;)
+
+keyword(function) function(testNativeMax)operator(()operator(\)) operator({)
+ keyword(var) ident(out) operator(=) operator([)operator(])operator(,) ident(k)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(k) operator(=) ident(Math)operator(.)ident(max)operator(()ident(k)operator(,) ident(i)operator(\))operator(;)
+ operator(})
+ ident(out)operator(.)ident(push)operator(()ident(k)operator(\))operator(;)
+
+ ident(k) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(k) operator(=) ident(Math)operator(.)ident(max)operator(()ident(k)operator(,) ident(i)operator(\))operator(;)
+ operator(})
+ ident(out)operator(.)ident(push)operator(()ident(k)operator(\))operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(k) operator(=) ident(Math)operator(.)ident(max)operator(()integer(0)operator(,) operator(-)integer(0)operator(\))operator(;)
+ operator(})
+ ident(out)operator(.)ident(push)operator((()integer(1) operator(/) ident(k)operator(\)) operator(<) integer(0)operator(\))operator(;)
+ keyword(return) ident(out)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNativeMax)operator(.)ident(expected) operator(=) string<delimiter(")content(NaN,4,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testNativeMax)operator(\))operator(;)
+
+keyword(function) function(testFloatArrayIndex)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(a)operator([)integer(3)operator(]) operator(=) integer(5)operator(;)
+ ident(a)operator([)float(3.5)operator(]) operator(=) integer(7)operator(;)
+ operator(})
+ keyword(return) ident(a)operator([)integer(3)operator(]) operator(+) string<delimiter(")content(,)delimiter(")> operator(+) ident(a)operator([)float(3.5)operator(])operator(;)
+operator(})
+ident(testFloatArrayIndex)operator(.)ident(expected) operator(=) string<delimiter(")content(5,7)delimiter(")>operator(;)
+ident(test)operator(()ident(testFloatArrayIndex)operator(\))operator(;)
+
+keyword(function) function(testStrict)operator(()operator(\)) operator({)
+ keyword(var) ident(n) operator(=) integer(10)operator(,) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(a)operator([)integer(0)operator(]) operator(=) operator(()ident(n) operator(===) integer(10)operator(\))operator(;)
+ ident(a)operator([)integer(1)operator(]) operator(=) operator(()ident(n) operator(!==) integer(10)operator(\))operator(;)
+ ident(a)operator([)integer(2)operator(]) operator(=) operator(()ident(n) operator(===) pre_constant(null)operator(\))operator(;)
+ ident(a)operator([)integer(3)operator(]) operator(=) operator(()ident(n) operator(==) pre_constant(null)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testStrict)operator(.)ident(expected) operator(=) string<delimiter(")content(true,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testStrict)operator(\))operator(;)
+
+keyword(function) function(testSetPropNeitherMissNorHit)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) keyword(if) operator((({)operator(}\))operator(.)ident(__proto__) operator(=) integer(1)operator(\)) operator({) operator(}) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testSetPropNeitherMissNorHit)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testSetPropNeitherMissNorHit)operator(\))operator(;)
+
+keyword(function) function(testPrimitiveConstructorPrototype)operator(()operator(\)) operator({)
+ keyword(var) function(f) operator(=) keyword(function)operator(()operator(\))operator({)operator(})operator(;)
+ ident(f)operator(.)ident(prototype) operator(=) pre_constant(false)operator(;)
+ keyword(for) operator(()ident(let) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) operator({) keyword(new) ident(f)operator(;) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testPrimitiveConstructorPrototype)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testPrimitiveConstructorPrototype)operator(\))operator(;)
+
+keyword(function) function(testSideExitInConstructor)operator(()operator(\)) operator({)
+ keyword(var) ident(FCKConfig) operator(=) operator({)operator(})operator(;)
+ ident(FCKConfig)operator(.)ident(CoreStyles) operator(=)
+ operator({)
+ key<delimiter(')content(Bold)delimiter(')>operator(:) operator({) operator(})operator(,)
+ key<delimiter(')content(Italic)delimiter(')>operator(:) operator({) operator(})operator(,)
+ key<delimiter(')content(FontFace)delimiter(')>operator(:) operator({) operator(})operator(,)
+ key<delimiter(')content(Size)delimiter(')> operator(:)
+ operator({)
+ key(Overrides)operator(:) operator([) operator(])
+ operator(})operator(,)
+
+ key<delimiter(')content(Color)delimiter(')> operator(:)
+ operator({)
+ key(Element)operator(:) string<delimiter(')delimiter(')>operator(,)
+ key(Styles)operator(:) operator({) operator(})operator(,)
+ key(Overrides)operator(:) operator([) operator(])
+ operator(})operator(,)
+ key<delimiter(')content(BackColor)delimiter(')>operator(:) operator({)
+ key(Element) operator(:) string<delimiter(')delimiter(')>operator(,)
+ key(Styles) operator(:) operator({) key<delimiter(')content(background-color)delimiter(')> operator(:) string<delimiter(')delimiter(')> operator(})
+ operator(})operator(,)
+
+ operator(})operator(;)
+ keyword(var) function(FCKStyle) operator(=) keyword(function)operator(()ident(A)operator(\)) operator({)
+ ident(A)operator(.)ident(Element)operator(;)
+ operator(})operator(;)
+
+ keyword(var) ident(pass) operator(=) pre_constant(true)operator(;)
+ keyword(for) operator(()keyword(var) ident(s) keyword(in) ident(FCKConfig)operator(.)ident(CoreStyles)operator(\)) operator({)
+ keyword(var) ident(x) operator(=) keyword(new) ident(FCKStyle)operator(()ident(FCKConfig)operator(.)ident(CoreStyles)operator([)ident(s)operator(]\))operator(;)
+ keyword(if) operator((!)ident(x)operator(\))
+ ident(pass) operator(=) pre_constant(false)operator(;)
+ operator(})
+ keyword(return) ident(pass)operator(;)
+operator(})
+ident(testSideExitInConstructor)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testSideExitInConstructor)operator(\))operator(;)
+
+keyword(function) function(testNot)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Object)operator(()operator(\))operator(,) ident(b) operator(=) pre_constant(null)operator(,) ident(c) operator(=) string<delimiter(")content(foo)delimiter(")>operator(,) ident(d) operator(=) string<delimiter(")delimiter(")>operator(,) ident(e) operator(=) integer(5)operator(,) ident(f) operator(=) integer(0)operator(,) ident(g) operator(=) float(5.5)operator(,) ident(h) operator(=) operator(-)integer(0)operator(,) ident(i) operator(=) pre_constant(true)operator(,) ident(j) operator(=) pre_constant(false)operator(,) ident(k) operator(=) pre_constant(undefined)operator(;)
+ keyword(var) ident(r)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(r) operator(=) operator([!)ident(a)operator(,) operator(!)ident(b)operator(,) operator(!)ident(c)operator(,) operator(!)ident(d)operator(,) operator(!)ident(e)operator(,) operator(!)ident(f)operator(,) operator(!)ident(g)operator(,) operator(!)ident(h)operator(,) operator(!)ident(i)operator(,) operator(!)ident(j)operator(,) operator(!)ident(k)operator(])operator(;)
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNot)operator(.)ident(expected) operator(=) string<delimiter(")content(false,true,false,true,false,true,false,true,false,true,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testNot)operator(\))operator(;)
+
+keyword(function) function(doTestDifferingArgc)operator(()ident(a)operator(,) ident(b)operator(\))
+operator({)
+ keyword(var) ident(k) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ ident(k) operator(+=) ident(i)operator(;)
+ operator(})
+ keyword(return) ident(k)operator(;)
+operator(})
+keyword(function) function(testDifferingArgc)operator(()operator(\))
+operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ ident(x) operator(+=) ident(doTestDifferingArgc)operator(()integer(1)operator(,) integer(2)operator(\))operator(;)
+ ident(x) operator(+=) ident(doTestDifferingArgc)operator(()integer(1)operator(\))operator(;)
+ ident(x) operator(+=) ident(doTestDifferingArgc)operator(()integer(1)operator(,) integer(2)operator(,) integer(3)operator(\))operator(;)
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testDifferingArgc)operator(.)ident(expected) operator(=) integer(45)operator(*)integer(3)operator(;)
+ident(test)operator(()ident(testDifferingArgc)operator(\))operator(;)
+
+keyword(function) function(doTestMoreArgcThanNargs)operator(()operator(\))
+operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ ident(x) operator(=) ident(x) operator(+) local_variable(arguments)operator([)integer(3)operator(])operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+keyword(function) function(testMoreArgcThanNargs)operator(()operator(\))
+operator({)
+ keyword(return) ident(doTestMoreArgcThanNargs)operator(()integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(,) integer(5)operator(,) integer(6)operator(,) integer(7)operator(,) integer(8)operator(,) integer(9)operator(,) integer(10)operator(\))operator(;)
+operator(})
+ident(testMoreArgcThanNargs)operator(.)ident(expected) operator(=) integer(4)operator(*)integer(10)operator(;)
+ident(test)operator(()ident(testMoreArgcThanNargs)operator(\))operator(;)
+
+comment(// Test stack reconstruction after a nested exit)
+keyword(function) function(testNestedExitStackInner)operator(()ident(j)operator(,) ident(counter)operator(\)) operator({)
+ operator(++)ident(counter)operator(;)
+ keyword(var) ident(b) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(1)operator(;) ident(i) operator(<=) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\)) operator({)
+ operator(++)ident(b)operator(;)
+ keyword(var) ident(a)operator(;)
+ comment(// Make sure that once everything has been traced we suddenly switch to)
+ comment(// a different control flow the first time we run the outermost tree,)
+ comment(// triggering a side exit.)
+ keyword(if) operator(()ident(j) operator(<) ident(RUNLOOP)operator(\))
+ ident(a) operator(=) integer(1)operator(;)
+ keyword(else)
+ ident(a) operator(=) integer(0)operator(;)
+ operator(++)ident(b)operator(;)
+ ident(b) operator(+=) ident(a)operator(;)
+ operator(})
+ keyword(return) ident(counter) operator(+) ident(b)operator(;)
+operator(})
+keyword(function) function(testNestedExitStackOuter)operator(()operator(\)) operator({)
+ keyword(var) ident(counter) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(1)operator(;) ident(j) operator(<=) ident(RUNLOOP)operator(;) operator(++)ident(j)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(k) operator(=) integer(1)operator(;) ident(k) operator(<=) ident(RUNLOOP)operator(;) operator(++)ident(k)operator(\)) operator({)
+ ident(counter) operator(=) ident(testNestedExitStackInner)operator(()ident(j)operator(,) ident(counter)operator(\))operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(counter)operator(;)
+operator(})
+ident(testNestedExitStackOuter)operator(.)ident(expected) operator(=) integer(81)operator(;)
+ident(test)operator(()ident(testNestedExitStackOuter)operator(\))operator(;)
+
+keyword(function) function(testHOTLOOPSize)operator(()operator(\)) operator({)
+ keyword(return) ident(HOTLOOP) operator(>) integer(1)operator(;)
+operator(})
+ident(testHOTLOOPSize)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testHOTLOOPSize)operator(\))operator(;)
+
+keyword(function) function(testMatchStringObject)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(String)operator(()string<delimiter(")content(foo)delimiter(")>operator(\))operator(;)
+ keyword(var) ident(b)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(300)operator(;) ident(i)operator(++)operator(\))
+ ident(b) operator(=) ident(a)operator(.)ident(match)operator(()regexp<delimiter(/)content(bar)delimiter(/)>operator(\))operator(;)
+ keyword(return) ident(b)operator(;)
+operator(})
+ident(testMatchStringObject)operator(.)ident(expected) operator(=) pre_constant(null)operator(;)
+ident(test)operator(()ident(testMatchStringObject)operator(\))operator(;)
+
+keyword(function) function(innerSwitch)operator(()ident(k)operator(\))
+operator({)
+ keyword(var) ident(m) operator(=) integer(0)operator(;)
+
+ keyword(switch) operator(()ident(k)operator(\))
+ operator({)
+ keyword(case) integer(0)operator(:)
+ ident(m) operator(=) integer(1)operator(;)
+ keyword(break)operator(;)
+ operator(})
+
+ keyword(return) ident(m)operator(;)
+operator(})
+keyword(function) function(testInnerSwitchBreak)operator(()operator(\))
+operator({)
+ keyword(var) ident(r) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ ident(r)operator([)ident(i)operator(]) operator(=) ident(innerSwitch)operator(()integer(0)operator(\))operator(;)
+ operator(})
+
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testInnerSwitchBreak)operator(.)ident(expected) operator(=) string<delimiter(")content(1,1,1,1,1)delimiter(")>operator(;)
+ident(test)operator(()ident(testInnerSwitchBreak)operator(\))operator(;)
+
+keyword(function) function(testArrayNaNIndex)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({) operator([)local_variable(this)operator([)ident(NaN)operator(]])operator(;) operator(})
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) keyword(if)operator(([)integer(1)operator(])operator([-)integer(0)operator(]\)) operator({) operator(}) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testArrayNaNIndex)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testArrayNaNIndex)operator(\))operator(;)
+
+keyword(function) function(innerTestInnerMissingArgs)operator(()ident(a)operator(,)ident(b)operator(,)ident(c)operator(,)ident(d)operator(\))
+operator({)
+ keyword(if) operator(()ident(a)operator(\)) operator({)
+ operator(}) keyword(else) operator({)
+ operator(})
+operator(})
+keyword(function) function(doTestInnerMissingArgs)operator(()ident(k)operator(\))
+operator({)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(innerTestInnerMissingArgs)operator(()ident(k)operator(\))operator(;)
+ operator(})
+operator(})
+keyword(function) function(testInnerMissingArgs)operator(()operator(\))
+operator({)
+ ident(doTestInnerMissingArgs)operator(()integer(1)operator(\))operator(;)
+ ident(doTestInnerMissingArgs)operator(()integer(0)operator(\))operator(;)
+ keyword(return) integer(1)operator(;)
+operator(})
+ident(testInnerMissingArgs)operator(.)ident(expected) operator(=) integer(1)operator(;) comment(//Expected: that we don't crash.)
+ident(test)operator(()ident(testInnerMissingArgs)operator(\))operator(;)
+
+keyword(function) function(regexpLastIndex)operator(()operator(\))
+operator({)
+ keyword(var) ident(n) operator(=) integer(0)operator(;)
+ keyword(var) ident(re) operator(=) regexp<delimiter(/)content(hi)delimiter(/)modifier(g)>operator(;)
+ keyword(var) ident(ss) operator(=) string<delimiter(")content( hi hi hi hi hi hi hi hi hi hi)delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ comment(// re.exec(ss\);)
+ ident(n) operator(+=) operator(()ident(re)operator(.)ident(lastIndex) operator(>) integer(0)operator(\)) operator(?) integer(3) operator(:) integer(0)operator(;)
+ ident(re)operator(.)ident(lastIndex) operator(=) integer(0)operator(;)
+ operator(})
+ keyword(return) ident(n)operator(;)
+operator(})
+ident(regexpLastIndex)operator(.)ident(expected) operator(=) integer(0)operator(;) comment(// 30;)
+ident(test)operator(()ident(regexpLastIndex)operator(\))operator(;)
+
+keyword(function) function(testHOTLOOPCorrectness)operator(()operator(\)) operator({)
+ keyword(var) ident(b) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(HOTLOOP)operator(;) operator(++)ident(i)operator(\))
+ operator(++)ident(b)operator(;)
+ keyword(return) ident(b)operator(;)
+operator(})
+ident(testHOTLOOPCorrectness)operator(.)ident(expected) operator(=) ident(HOTLOOP)operator(;)
+ident(testHOTLOOPCorrectness)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceTriggered)operator(:) integer(0)
+operator(})operator(;)
+comment(// Change the global shape right before doing the test)
+local_variable(this)operator(.)ident(testHOTLOOPCorrectnessVar) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testHOTLOOPCorrectness)operator(\))operator(;)
+
+keyword(function) function(testRUNLOOPCorrectness)operator(()operator(\)) operator({)
+ keyword(var) ident(b) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) operator(++)ident(i)operator(\)) operator({)
+ operator(++)ident(b)operator(;)
+ operator(})
+ keyword(return) ident(b)operator(;)
+operator(})
+ident(testRUNLOOPCorrectness)operator(.)ident(expected) operator(=) ident(RUNLOOP)operator(;)
+ident(testRUNLOOPCorrectness)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceTriggered)operator(:) integer(1)
+operator(})operator(;)
+comment(// Change the global shape right before doing the test)
+local_variable(this)operator(.)ident(testRUNLOOPCorrectnessVar) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testRUNLOOPCorrectness)operator(\))operator(;)
+
+keyword(function) function(testDateNow)operator(()operator(\)) operator({)
+ comment(// Accessing global.Date for the first time will change the global shape,)
+ comment(// so do it before the loop starts; otherwise we have to loop an extra time)
+ comment(// to pick things up.)
+ keyword(var) ident(time) operator(=) ident(Date)operator(.)ident(now)operator(()operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(RUNLOOP)operator(;) operator(++)ident(j)operator(\))
+ ident(time) operator(=) ident(Date)operator(.)ident(now)operator(()operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testDateNow)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(testDateNow)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceTriggered)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testDateNow)operator(\))operator(;)
+
+keyword(function) function(testINITELEM)operator(()operator(\))
+operator({)
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(x) operator(=) operator({) integer(0)operator(:) integer(5)operator(,) integer(1)operator(:) integer(5) operator(})operator(;)
+ keyword(return) ident(x)operator([)integer(0)operator(]) operator(+) ident(x)operator([)integer(1)operator(])operator(;)
+operator(})
+ident(testINITELEM)operator(.)ident(expected) operator(=) integer(10)operator(;)
+ident(test)operator(()ident(testINITELEM)operator(\))operator(;)
+
+keyword(function) function(testUndefinedBooleanCmp)operator(()operator(\))
+operator({)
+ keyword(var) ident(t) operator(=) pre_constant(true)operator(,) ident(f) operator(=) pre_constant(false)operator(,) ident(x) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(x)operator([)integer(0)operator(]) operator(=) ident(t) operator(==) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(1)operator(]) operator(=) ident(t) operator(!=) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(2)operator(]) operator(=) ident(t) operator(===) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(3)operator(]) operator(=) ident(t) operator(!==) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(4)operator(]) operator(=) ident(t) operator(<) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(5)operator(]) operator(=) ident(t) operator(>) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(6)operator(]) operator(=) ident(t) operator(<=) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(7)operator(]) operator(=) ident(t) operator(>=) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(8)operator(]) operator(=) ident(f) operator(==) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(9)operator(]) operator(=) ident(f) operator(!=) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(10)operator(]) operator(=) ident(f) operator(===) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(11)operator(]) operator(=) ident(f) operator(!==) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(12)operator(]) operator(=) ident(f) operator(<) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(13)operator(]) operator(=) ident(f) operator(>) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(14)operator(]) operator(=) ident(f) operator(<=) pre_constant(undefined)operator(;)
+ ident(x)operator([)integer(15)operator(]) operator(=) ident(f) operator(>=) pre_constant(undefined)operator(;)
+ operator(})
+ keyword(return) ident(x)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testUndefinedBooleanCmp)operator(.)ident(expected) operator(=) string<delimiter(")content(false,true,false,true,false,false,false,false,false,true,false,true,false,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testUndefinedBooleanCmp)operator(\))operator(;)
+
+keyword(function) function(testConstantBooleanExpr)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(3)operator(;) operator(++)ident(j)operator(\)) operator({) keyword(if)operator(()pre_constant(true) operator(<=) pre_constant(true)operator(\)) operator({) operator(}) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testConstantBooleanExpr)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testConstantBooleanExpr)operator(\))operator(;)
+
+keyword(function) function(testNegativeGETELEMIndex)operator(()operator(\))
+operator({)
+ keyword(for) operator(()ident(let) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(3)operator(;++)ident(i)operator(\)) operator(/)ident(x)operator(/)operator([-)integer(4)operator(])operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testNegativeGETELEMIndex)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testNegativeGETELEMIndex)operator(\))operator(;)
+
+keyword(function) function(doTestInvalidCharCodeAt)operator(()ident(input)operator(\))
+operator({)
+ keyword(var) ident(q) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(q) operator(+=) ident(input)operator(.)ident(charCodeAt)operator(()ident(i)operator(\))operator(;)
+ keyword(return) ident(q)operator(;)
+operator(})
+keyword(function) function(testInvalidCharCodeAt)operator(()operator(\))
+operator({)
+ keyword(return) ident(doTestInvalidCharCodeAt)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+operator(})
+ident(testInvalidCharCodeAt)operator(.)ident(expected) operator(=) string<delimiter(")content(NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN)delimiter(")>operator(;)
+ident(test)operator(()ident(testInvalidCharCodeAt)operator(\))operator(;)
+
+keyword(function) function(FPQuadCmp)operator(()operator(\))
+operator({)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(3)operator(;) operator(++)ident(j)operator(\)) operator({) pre_constant(true) operator(==) integer(0)operator(;) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(FPQuadCmp)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(FPQuadCmp)operator(\))operator(;)
+
+keyword(function) function(testDestructuring)operator(()operator(\)) operator({)
+ keyword(var) ident(t) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(HOTLOOP) operator(+) integer(1)operator(;) operator(++)ident(i)operator(\)) operator({)
+ keyword(var) operator([)ident(r)operator(,) ident(g)operator(,) ident(b)operator(]) operator(=) operator([)integer(1)operator(,) integer(1)operator(,) integer(1)operator(])operator(;)
+ ident(t) operator(+=) ident(r) operator(+) ident(g) operator(+) ident(b)operator(;)
+ operator(})
+ keyword(return) ident(t)
+operator(})
+ident(testDestructuring)operator(.)ident(expected) operator(=) operator(()ident(HOTLOOP) operator(+) integer(1)operator(\)) operator(*) integer(3)operator(;)
+ident(test)operator(()ident(testDestructuring)operator(\))operator(;)
+
+keyword(function) function(loopWithUndefined1)operator(()ident(t)operator(,) ident(val)operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(6)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(6)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) operator(()ident(t) operator(>) ident(val)operator(\))operator(;)
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(loopWithUndefined1)operator(()float(5.0)operator(,) integer(2)operator(\))operator(;) comment(//compile version with val=int)
+
+keyword(function) function(testLoopWithUndefined1)operator(()operator(\)) operator({)
+ keyword(return) ident(loopWithUndefined1)operator(()float(5.0)operator(\))operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;) comment(//val=undefined)
+operator(})operator(;)
+ident(testLoopWithUndefined1)operator(.)ident(expected) operator(=) string<delimiter(")content(false,false,false,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testLoopWithUndefined1)operator(\))operator(;)
+
+keyword(function) function(loopWithUndefined2)operator(()ident(t)operator(,) ident(dostuff)operator(,) ident(val)operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(6)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(6)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(dostuff)operator(\)) operator({)
+ ident(val) operator(=) integer(1)operator(;)
+ ident(a)operator([)ident(i)operator(]) operator(=) operator(()ident(t) operator(>) ident(val)operator(\))operator(;)
+ operator(}) keyword(else) operator({)
+ ident(a)operator([)ident(i)operator(]) operator(=) operator(()ident(val) operator(==) pre_constant(undefined)operator(\))operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(a)operator(;)
+operator(})
+keyword(function) function(testLoopWithUndefined2)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) ident(loopWithUndefined2)operator(()float(5.0)operator(,) pre_constant(true)operator(,) integer(2)operator(\))operator(;)
+ keyword(var) ident(b) operator(=) ident(loopWithUndefined2)operator(()float(5.0)operator(,) pre_constant(true)operator(\))operator(;)
+ keyword(var) ident(c) operator(=) ident(loopWithUndefined2)operator(()float(5.0)operator(,) pre_constant(false)operator(,) integer(8)operator(\))operator(;)
+ keyword(var) ident(d) operator(=) ident(loopWithUndefined2)operator(()float(5.0)operator(,) pre_constant(false)operator(\))operator(;)
+ keyword(return) operator([)ident(a)operator([)integer(0)operator(])operator(,) ident(b)operator([)integer(0)operator(])operator(,) ident(c)operator([)integer(0)operator(])operator(,) ident(d)operator([)integer(0)operator(]])operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testLoopWithUndefined2)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,false,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testLoopWithUndefined2)operator(\))operator(;)
+
+comment(//test no multitrees assert)
+keyword(function) function(testBug462388)operator(()operator(\)) operator({)
+ keyword(var) ident(c) operator(=) integer(0)operator(,) ident(v)operator(;) keyword(for) ident(each) operator(()ident(let) ident(x) keyword(in) operator([)string<delimiter(")delimiter(")>operator(,)ident(v)operator(,)ident(v)operator(,)ident(v)operator(]\)) operator({) keyword(for) operator(()ident(c)operator(=)integer(0)operator(;)ident(c)operator(<)integer(4)operator(;++)ident(c)operator(\)) operator({) operator(}) operator(})
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug462388)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug462388)operator(\))operator(;)
+
+comment(//test no multitrees assert)
+keyword(function) function(testBug462407)operator(()operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(let) ident(i) keyword(in) operator([)integer(0)operator(,) operator({)operator(})operator(,) integer(0)operator(,) float(1.5)operator(,) operator({)operator(})operator(,) integer(0)operator(,) float(1.5)operator(,) integer(0)operator(,) integer(0)operator(]\)) operator({) operator(})
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug462407)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug462407)operator(\))operator(;)
+
+comment(//test no multitrees assert)
+keyword(function) function(testBug463490)operator(()operator(\)) operator({)
+ keyword(function) function(f)operator(()ident(a)operator(,) ident(b)operator(,) ident(d)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(d)operator(\))
+ ident(b) operator(/)operator(=) integer(2)operator(;)
+ operator(})
+ keyword(return) ident(a) operator(+) ident(b)operator(;)
+ operator(})
+ comment(//integer stable loop)
+ ident(f)operator(()integer(2)operator(,) integer(2)operator(,) pre_constant(false)operator(\))operator(;)
+ comment(//double stable loop)
+ ident(f)operator(()integer(3)operator(,) float(4.5)operator(,) pre_constant(false)operator(\))operator(;)
+ comment(//integer unstable branch)
+ ident(f)operator(()integer(2)operator(,) integer(2)operator(,) pre_constant(true)operator(\))operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})operator(;)
+ident(testBug463490)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug463490)operator(\))operator(;)
+
+comment(// Test no assert (bug 464089\))
+keyword(function) function(shortRecursiveLoop)operator(()ident(b)operator(,) ident(c)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(c)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(if) operator(()ident(b)operator(\))
+ ident(shortRecursiveLoop)operator(()ident(c) operator(-) integer(1)operator(\))operator(;)
+ operator(})
+operator(})
+keyword(function) function(testClosingRecursion)operator(()operator(\)) operator({)
+ ident(shortRecursiveLoop)operator(()pre_constant(false)operator(,) integer(1)operator(\))operator(;)
+ ident(shortRecursiveLoop)operator(()pre_constant(true)operator(,) integer(3)operator(\))operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testClosingRecursion)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testClosingRecursion)operator(\))operator(;)
+
+comment(// Test no assert or crash from outer recorders (bug 465145\))
+keyword(function) function(testBug465145)operator(()operator(\)) operator({)
+ local_variable(this)operator(.)ident(__defineSetter__)operator(()string<delimiter(")content(x)delimiter(")>operator(,) keyword(function)operator(()operator(\))operator({)operator(}\))operator(;)
+ local_variable(this)operator(.)ident(watch)operator(()string<delimiter(")content(x)delimiter(")>operator(,) keyword(function)operator(()operator(\))operator({)operator(}\))operator(;)
+ ident(y) operator(=) local_variable(this)operator(;)
+ keyword(for) operator(()keyword(var) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(2)operator(;) operator(++)ident(z)operator(\)) operator({) ident(x) operator(=) ident(y) operator(})operator(;)
+ local_variable(this)operator(.)ident(__defineSetter__)operator(()string<delimiter(")content(x)delimiter(")>operator(,) keyword(function)operator(()operator(\))operator({)operator(}\))operator(;)
+ keyword(for) operator(()keyword(var) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(2)operator(;) operator(++)ident(z)operator(\)) operator({) ident(x) operator(=) ident(y) operator(})operator(;)
+operator(})
+
+keyword(function) function(testTrueShiftTrue)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(5)operator(;++)ident(i)operator(\)) ident(a)operator([)ident(i)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) operator(()pre_constant(true) operator(<<) pre_constant(true)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testTrueShiftTrue)operator(.)ident(expected) operator(=) string<delimiter(")content(2,2,2,2,2)delimiter(")>operator(;)
+ident(test)operator(()ident(testTrueShiftTrue)operator(\))operator(;)
+
+comment(// Test no assert or crash)
+keyword(function) function(testBug465261)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(2)operator(;) operator(++)ident(z)operator(\)) operator({) keyword(for) ident(each) operator(()ident(let) ident(x) keyword(in) operator([)integer(0)operator(,) pre_constant(true)operator(,) operator(()keyword(void) integer(0)operator(\))operator(,) integer(0)operator(,) operator(()keyword(void)
+ integer(0)operator(\)]\)) operator({) keyword(if)operator(()ident(x)operator(\))operator({)operator(}) operator(}) operator(})operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug465261)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug465261)operator(\))operator(;)
+
+keyword(function) function(testBug465272)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for) operator(()ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) ident(a)operator([)ident(j)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) operator((()integer(5)operator(\)) operator(-) integer(2)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testBug465272)operator(.)ident(expected) operator(=) string<delimiter(")content(3,3,3,3,3)delimiter(")>
+ident(test)operator(()ident(testBug465272)operator(\))operator(;)
+
+keyword(function) function(testBug465483)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(4)operator(\))operator(;)
+ keyword(var) ident(c) operator(=) integer(0)operator(;)
+ keyword(for) ident(each) operator(()ident(i) keyword(in) operator([)integer(4)operator(,) string<delimiter(')content(a)delimiter(')>operator(,) string<delimiter(')content(b)delimiter(')>operator(,) operator(()keyword(void) integer(0)operator(\)]\)) ident(a)operator([)ident(c)operator(++)operator(]) operator(=) string<delimiter(')delimiter(')> operator(+) operator(()ident(i) operator(+) ident(i)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(')content(,)delimiter(')>operator(\))operator(;)
+operator(})
+ident(testBug465483)operator(.)ident(expected) operator(=) string<delimiter(')content(8,aa,bb,NaN)delimiter(')>operator(;)
+ident(test)operator(()ident(testBug465483)operator(\))operator(;)
+
+keyword(function) function(testNullCallee)operator(()operator(\)) operator({)
+ keyword(try) operator({)
+ keyword(function) function(f)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(x)operator([)ident(i)operator(]) operator(=) ident(a)operator([)ident(i)operator(])operator(.)ident(toString)operator(()operator(\))operator(;)
+ keyword(return) ident(x)operator(.)ident(join)operator(()string<delimiter(')content(,)delimiter(')>operator(\))operator(;)
+ operator(})
+ ident(f)operator(([[)integer(1)operator(])operator(,[)integer(2)operator(])operator(,[)integer(3)operator(])operator(,[)integer(4)operator(])operator(,[)integer(5)operator(]]\))operator(;)
+ ident(f)operator(([)pre_constant(null)operator(,) pre_constant(null)operator(,) pre_constant(null)operator(,) pre_constant(null)operator(,) pre_constant(null)operator(]\))operator(;)
+ operator(}) keyword(catch) operator(()ident(e)operator(\)) operator({)
+ keyword(return) pre_constant(true)operator(;)
+ operator(})
+ keyword(return) pre_constant(false)operator(;)
+operator(})
+ident(testNullCallee)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testNullCallee)operator(\))operator(;)
+
+comment(//test no multitrees assert)
+keyword(function) function(testBug466128)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(a) operator(=) integer(0)operator(;) ident(a) operator(<) integer(3)operator(;) operator(++)ident(a)operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(let) ident(b) keyword(in) operator([)integer(1)operator(,) integer(2)operator(,) string<delimiter(")content(three)delimiter(")>operator(,) integer(4)operator(,) integer(5)operator(,) integer(6)operator(,) integer(7)operator(,) integer(8)operator(]\)) operator({)
+ operator(})
+ operator(})
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug466128)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug466128)operator(\))operator(;)
+
+comment(//test no assert)
+keyword(function) function(testBug465688)operator(()operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(let) ident(d) keyword(in) operator([-)hex(0x80000000)operator(,) operator(-)hex(0x80000000)operator(]\)) operator(-) operator(-)ident(d)operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug465688)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug465688)operator(\))operator(;)
+
+comment(//test no assert)
+keyword(function) function(testBug466262)operator(()operator(\)) operator({)
+ keyword(var) ident(e) operator(=) integer(1)operator(;)
+ keyword(for) operator(()keyword(var) ident(d) operator(=) integer(0)operator(;) ident(d) operator(<) integer(3)operator(;) operator(++)ident(d)operator(\)) operator({)
+ keyword(if) operator(()ident(d) operator(==) integer(2)operator(\)) operator({)
+ ident(e) operator(=) string<delimiter(")delimiter(")>operator(;)
+ operator(})
+ operator(})
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testBug466262)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testBug466262)operator(\))operator(;)
+
+keyword(function) function(testNewDate)operator(()operator(\))
+operator({)
+ comment(// Accessing global.Date for the first time will change the global shape,)
+ comment(// so do it before the loop starts; otherwise we have to loop an extra time)
+ comment(// to pick things up.)
+ keyword(var) ident(start) operator(=) keyword(new) ident(Date)operator(()operator(\))operator(;)
+ keyword(var) ident(time) operator(=) keyword(new) ident(Date)operator(()operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(RUNLOOP)operator(;) operator(++)ident(j)operator(\))
+ ident(time) operator(=) keyword(new) ident(Date)operator(()operator(\))operator(;)
+ keyword(return) ident(time) operator(>) integer(0) operator(&&) ident(time) operator(>=) ident(start)operator(;)
+operator(})
+ident(testNewDate)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testNewDate)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceTriggered)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testNewDate)operator(\))operator(;)
+
+keyword(function) function(testArrayPushPop)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(,) ident(sum1) operator(=) integer(0)operator(,) ident(sum2) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(sum1) operator(+=) ident(a)operator(.)ident(push)operator(()ident(i)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(sum2) operator(+=) ident(a)operator(.)ident(pop)operator(()operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()ident(sum1)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()ident(sum2)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testArrayPushPop)operator(.)ident(expected) operator(=) string<delimiter(")content(55,45)delimiter(")>operator(;)
+ident(test)operator(()ident(testArrayPushPop)operator(\))operator(;)
+
+keyword(function) function(testSlowArrayPop)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) operator([)integer(0)operator(])operator(;)
+ ident(a)operator([)ident(RUNLOOP)operator(-)integer(1)operator(])operator(.)ident(__defineGetter__)operator(()string<delimiter(")content(0)delimiter(")>operator(,) keyword(function) operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(xyzzy)delimiter(')>operator(;) operator(}\))operator(;)
+
+ keyword(var) ident(last)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(last) operator(=) ident(a)operator([)ident(i)operator(])operator(.)ident(pop)operator(()operator(\))operator(;) comment(// reenters interpreter in getter)
+ keyword(return) ident(last)operator(;)
+operator(})
+ident(testSlowArrayPop)operator(.)ident(expected) operator(=) string<delimiter(')content(xyzzy)delimiter(')>operator(;)
+ident(test)operator(()ident(testSlowArrayPop)operator(\))operator(;)
+
+comment(// Same thing but it needs to reconstruct multiple stack frames (so,)
+comment(// multiple functions called inside the loop\))
+keyword(function) function(testSlowArrayPopMultiFrame)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) operator([)integer(0)operator(])operator(;)
+ ident(a)operator([)ident(RUNLOOP)operator(-)integer(1)operator(])operator(.)ident(__defineGetter__)operator(()string<delimiter(")content(0)delimiter(")>operator(,) keyword(function) operator(()operator(\)) operator({) keyword(return) integer(23)operator(;) operator(}\))operator(;)
+
+ keyword(function) function(child)operator(()ident(a)operator(,) ident(i)operator(\)) operator({)
+ keyword(return) ident(a)operator([)ident(i)operator(])operator(.)ident(pop)operator(()operator(\))operator(;) comment(// reenters interpreter in getter)
+ operator(})
+ keyword(function) function(parent)operator(()ident(a)operator(,) ident(i)operator(\)) operator({)
+ keyword(return) ident(child)operator(()ident(a)operator(,) ident(i)operator(\))operator(;)
+ operator(})
+ keyword(function) function(gramps)operator(()ident(a)operator(,) ident(i)operator(\)) operator({)
+ keyword(return) ident(parent)operator(()ident(a)operator(,) ident(i)operator(\))operator(;)
+ operator(})
+
+ keyword(var) ident(last)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(last) operator(=) ident(gramps)operator(()ident(a)operator(,) ident(i)operator(\))operator(;)
+ keyword(return) ident(last)operator(;)
+operator(})
+ident(testSlowArrayPopMultiFrame)operator(.)ident(expected) operator(=) integer(23)operator(;)
+ident(test)operator(()ident(testSlowArrayPopMultiFrame)operator(\))operator(;)
+
+comment(// Same thing but nested trees, each reconstructing one or more stack frames )
+comment(// (so, several functions with loops, such that the loops end up being)
+comment(// nested though they are not lexically nested\))
+
+keyword(function) function(testSlowArrayPopNestedTrees)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(=) operator([)integer(0)operator(])operator(;)
+ ident(a)operator([)ident(RUNLOOP)operator(-)integer(1)operator(])operator(.)ident(__defineGetter__)operator(()string<delimiter(")content(0)delimiter(")>operator(,) keyword(function) operator(()operator(\)) operator({) keyword(return) float(3.14159) operator(}\))operator(;)
+
+ keyword(function) function(child)operator(()ident(a)operator(,) ident(i)operator(,) ident(j)operator(,) ident(k)operator(\)) operator({)
+ keyword(var) ident(last) operator(=) float(2.71828)operator(;)
+ keyword(for) operator(()keyword(var) ident(l) operator(=) integer(0)operator(;) ident(l) operator(<) ident(RUNLOOP)operator(;) ident(l)operator(++)operator(\))
+ keyword(if) operator(()ident(i) operator(==) ident(RUNLOOP)operator(-)integer(1) operator(&&) ident(j) operator(==) ident(RUNLOOP)operator(-)integer(1) operator(&&) ident(k) operator(==) ident(RUNLOOP)operator(-)integer(1)operator(\))
+ ident(last) operator(=) ident(a)operator([)ident(l)operator(])operator(.)ident(pop)operator(()operator(\))operator(;) comment(// reenters interpreter in getter)
+ keyword(return) ident(last)operator(;)
+ operator(})
+ keyword(function) function(parent)operator(()ident(a)operator(,) ident(i)operator(,) ident(j)operator(\)) operator({)
+ keyword(var) ident(last)operator(;)
+ keyword(for) operator(()keyword(var) ident(k) operator(=) integer(0)operator(;) ident(k) operator(<) ident(RUNLOOP)operator(;) ident(k)operator(++)operator(\))
+ ident(last) operator(=) ident(child)operator(()ident(a)operator(,) ident(i)operator(,) ident(j)operator(,) ident(k)operator(\))operator(;)
+ keyword(return) ident(last)operator(;)
+ operator(})
+ keyword(function) function(gramps)operator(()ident(a)operator(,) ident(i)operator(\)) operator({)
+ keyword(var) ident(last)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(RUNLOOP)operator(;) ident(j)operator(++)operator(\))
+ ident(last) operator(=) ident(parent)operator(()ident(a)operator(,) ident(i)operator(,) ident(j)operator(\))operator(;)
+ keyword(return) ident(last)operator(;)
+ operator(})
+
+ keyword(var) ident(last)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ ident(last) operator(=) ident(gramps)operator(()ident(a)operator(,) ident(i)operator(\))operator(;)
+ keyword(return) ident(last)operator(;)
+operator(})
+ident(testSlowArrayPopNestedTrees)operator(.)ident(expected) operator(=) float(3.14159)operator(;)
+ident(test)operator(()ident(testSlowArrayPopNestedTrees)operator(\))operator(;)
+
+keyword(function) function(testResumeOp)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)integer(1)operator(,)string<delimiter(")content(2)delimiter(")>operator(,)integer(3)operator(,)string<delimiter(")content(4)delimiter(")>operator(,)integer(5)operator(,)string<delimiter(")content(6)delimiter(")>operator(,)integer(7)operator(,)string<delimiter(")content(8)delimiter(")>operator(,)integer(9)operator(,)string<delimiter(")content(10)delimiter(")>operator(,)integer(11)operator(,)string<delimiter(")content(12)delimiter(")>operator(,)integer(13)operator(,)string<delimiter(")content(14)delimiter(")>operator(,)integer(15)operator(,)string<delimiter(")content(16)delimiter(")>operator(])operator(;)
+ keyword(var) ident(x) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(while) operator(()ident(a)operator(.)ident(length) operator(>) integer(0)operator(\))
+ ident(x) operator(+=) ident(a)operator(.)ident(pop)operator(()operator(\))operator(;)
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testResumeOp)operator(.)ident(expected) operator(=) string<delimiter(")content(16151413121110987654321)delimiter(")>operator(;)
+ident(test)operator(()ident(testResumeOp)operator(\))operator(;)
+
+keyword(function) function(testUndefinedCmp)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) pre_constant(false)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({) keyword(if) operator(()pre_constant(undefined) operator(<) pre_constant(false)operator(\)) operator({) ident(a) operator(=) pre_constant(true)operator(;) operator(}) operator(})
+ keyword(return) ident(a)operator(;)
+operator(})
+ident(testUndefinedCmp)operator(.)ident(expected) operator(=) pre_constant(false)operator(;)
+ident(test)operator(()ident(testUndefinedCmp)operator(\))operator(;)
+
+keyword(function) function(reallyDeepNestedExit)operator(()ident(schedule)operator(\))
+operator({)
+ keyword(var) ident(c) operator(=) integer(0)operator(,) ident(j) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(for) operator(()ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) ident(j)operator(++)operator(\)) operator({)
+ ident(c) operator(+=) operator(()ident(schedule)operator([)ident(i)operator(*)integer(4) operator(+) ident(j)operator(]) operator(==) integer(1)operator(\)) operator(?) integer(1) operator(:) integer(2)operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(c)operator(;)
+operator(})
+keyword(function) function(testReallyDeepNestedExit)operator(()operator(\))
+operator({)
+ keyword(var) ident(c) operator(=) integer(0)operator(;)
+ keyword(var) ident(schedule1) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(*)integer(4)operator(\))operator(;)
+ keyword(var) ident(schedule2) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(*)integer(4)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(*)integer(4)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(schedule1)operator([)ident(i)operator(]) operator(=) integer(0)operator(;)
+ ident(schedule2)operator([)ident(i)operator(]) operator(=) integer(0)operator(;)
+ operator(})
+ comment(/**
+ * First innermost compile: true branch runs through.
+ * Second '': false branch compiles new loop edge.
+ * First outer compile: expect true branch.
+ * Second '': hit false branch.
+ */)
+ ident(schedule1)operator([)integer(0)operator(*)integer(4) operator(+) integer(3)operator(]) operator(=) integer(1)operator(;)
+ keyword(var) ident(schedules) operator(=) operator([)ident(schedule1)operator(,)
+ ident(schedule2)operator(,)
+ ident(schedule1)operator(,)
+ ident(schedule2)operator(,)
+ ident(schedule2)operator(])operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(c) operator(+=) ident(reallyDeepNestedExit)operator(()ident(schedules)operator([)ident(i)operator(]\))operator(;)
+ operator(})
+ keyword(return) ident(c)operator(;)
+operator(})
+ident(testReallyDeepNestedExit)operator(.)ident(expected) operator(=) integer(198)operator(;)
+ident(test)operator(()ident(testReallyDeepNestedExit)operator(\))operator(;)
+
+keyword(function) function(testRegExpTest)operator(()operator(\)) operator({)
+ keyword(var) ident(r) operator(=) regexp<delimiter(/)content(abc)delimiter(/)>operator(;)
+ keyword(var) ident(flag) operator(=) pre_constant(false)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(flag) operator(=) ident(r)operator(.)ident(test)operator(()string<delimiter(")content(abc)delimiter(")>operator(\))operator(;)
+ keyword(return) ident(flag)operator(;)
+operator(})
+ident(testRegExpTest)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testRegExpTest)operator(\))operator(;)
+
+keyword(function) function(testNumToString)operator(()operator(\)) operator({)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(d) operator(=) integer(123456789)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(r) operator(=) operator([)
+ ident(d)operator(.)ident(toString)operator(()operator(\))operator(,)
+ operator((-)ident(d)operator(\))operator(.)ident(toString)operator(()operator(\))operator(,)
+ ident(d)operator(.)ident(toString)operator(()integer(10)operator(\))operator(,)
+ operator((-)ident(d)operator(\))operator(.)ident(toString)operator(()integer(10)operator(\))operator(,)
+ ident(d)operator(.)ident(toString)operator(()integer(16)operator(\))operator(,)
+ operator((-)ident(d)operator(\))operator(.)ident(toString)operator(()integer(16)operator(\))operator(,)
+ ident(d)operator(.)ident(toString)operator(()integer(36)operator(\))operator(,)
+ operator((-)ident(d)operator(\))operator(.)ident(toString)operator(()integer(36)operator(\))
+ operator(])operator(;)
+ operator(})
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNumToString)operator(.)ident(expected) operator(=) string<delimiter(")content(123456789,-123456789,123456789,-123456789,75bcd15,-75bcd15,21i3v9,-21i3v9)delimiter(")>operator(;)
+ident(test)operator(()ident(testNumToString)operator(\))operator(;)
+
+keyword(function) function(testLongNumToString)operator(()operator(\)) operator({)
+ keyword(var) ident(s)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(=) operator(()hex(0x08000000)operator(\))operator(.)ident(toString)operator(()integer(2)operator(\))operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testLongNumToString)operator(.)ident(expected) operator(=) string<delimiter(')content(1000000000000000000000000000)delimiter(')>operator(;)
+ident(test)operator(()ident(testLongNumToString)operator(\))operator(;)
+
+keyword(function) function(testSubstring)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(actual) operator(=) string<delimiter(")delimiter(")>operator(.)ident(substring)operator(()integer(5)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(actual)operator(;)
+operator(})
+ident(testSubstring)operator(.)ident(expected) operator(=) string<delimiter(")delimiter(")>operator(;)
+ident(test)operator(()ident(testSubstring)operator(\))operator(;)
+
+keyword(function) function(testForInLoopChangeIteratorType)operator(()operator(\)) operator({)
+ keyword(for)operator(()ident(y) keyword(in) operator([)integer(0)operator(,)integer(1)operator(,)integer(2)operator(]\)) ident(y) operator(=) ident(NaN)operator(;)
+ operator(()keyword(function)operator(()operator(\))operator({)
+ operator([)operator(])operator(.)ident(__proto__)operator(.)ident(u) operator(=) keyword(void) integer(0)operator(;)
+ keyword(for) operator(()ident(let) ident(y) keyword(in) operator([)integer(5)operator(,)integer(6)operator(,)integer(7)operator(,)integer(8)operator(]\))
+ ident(y) operator(=) ident(NaN)operator(;)
+ keyword(delete) operator([)operator(])operator(.)ident(__proto__)operator(.)ident(u)operator(;)
+ operator(}\))operator(()operator(\))
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testForInLoopChangeIteratorType)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testForInLoopChangeIteratorType)operator(\))operator(;)
+
+keyword(function) function(testGrowDenseArray)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(a)operator([)ident(i)operator(]) operator(|=) integer(5)operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testGrowDenseArray)operator(.)ident(expected) operator(=) string<delimiter(")content(5,5,5,5,5,5,5,5,5,5)delimiter(")>operator(;)
+ident(test)operator(()ident(testGrowDenseArray)operator(\))operator(;)
+
+keyword(function) function(testCallProtoMethod)operator(()operator(\)) operator({)
+ keyword(function) function(X)operator(()operator(\)) operator({) local_variable(this)operator(.)ident(x) operator(=) integer(1)operator(;) operator(})
+ ident(X)operator(.)ident(prototype)operator(.)function(getName) operator(=) keyword(function) operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(X)delimiter(")>operator(;) operator(})
+
+ keyword(function) function(Y)operator(()operator(\)) operator({) local_variable(this)operator(.)ident(x) operator(=) integer(2)operator(;) operator(})
+ ident(Y)operator(.)ident(prototype)operator(.)function(getName) operator(=) keyword(function)operator(()operator(\)) string<delimiter(")content(Y)delimiter(")>operator(;)
+
+ keyword(var) ident(a) operator(=) operator([)keyword(new) ident(X)operator(,) keyword(new) ident(X)operator(,) keyword(new) ident(X)operator(,) keyword(new) ident(X)operator(,) keyword(new) ident(Y)operator(])operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(')delimiter(')>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(+=) ident(a)operator([)ident(i)operator(])operator(.)ident(getName)operator(()operator(\))operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testCallProtoMethod)operator(.)ident(expected) operator(=) string<delimiter(')content(XXXXY)delimiter(')>operator(;)
+ident(test)operator(()ident(testCallProtoMethod)operator(\))operator(;)
+
+keyword(function) function(testTypeUnstableForIn)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)integer(1)operator(,)integer(2)operator(,)integer(3)operator(,)integer(4)operator(,)integer(5)operator(,)integer(6)operator(,)integer(7)operator(,)integer(8)operator(,)integer(9)operator(,)integer(10)operator(,)integer(11)operator(,)integer(12)operator(,)integer(13)operator(,)integer(14)operator(,)integer(15)operator(,)integer(16)operator(])operator(;)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(a)operator(\)) operator({)
+ ident(i) operator(=) ident(parseInt)operator(()ident(i)operator(\))operator(;)
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testTypeUnstableForIn)operator(.)ident(expected) operator(=) integer(16)operator(;)
+ident(test)operator(()ident(testTypeUnstableForIn)operator(\))operator(;)
+
+keyword(function) function(testAddUndefined)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(3)operator(;) operator(++)ident(j)operator(\))
+ operator(()integer(0) operator(+) keyword(void) integer(0)operator(\)) operator(&&) integer(0)operator(;)
+operator(})
+ident(test)operator(()ident(testAddUndefined)operator(\))operator(;)
+
+keyword(function) function(testStringify)operator(()operator(\)) operator({)
+ keyword(var) ident(t) operator(=) pre_constant(true)operator(,) ident(f) operator(=) pre_constant(false)operator(,) ident(u) operator(=) pre_constant(undefined)operator(,) ident(n) operator(=) integer(5)operator(,) ident(d) operator(=) float(5.5)operator(,) ident(s) operator(=) string<delimiter(")content(x)delimiter(")>operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(a)operator([)integer(0)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(t)operator(;)
+ ident(a)operator([)integer(1)operator(]) operator(=) ident(t) operator(+) string<delimiter(")delimiter(")>operator(;)
+ ident(a)operator([)integer(2)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(f)operator(;)
+ ident(a)operator([)integer(3)operator(]) operator(=) ident(f) operator(+) string<delimiter(")delimiter(")>operator(;)
+ ident(a)operator([)integer(4)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(u)operator(;)
+ ident(a)operator([)integer(5)operator(]) operator(=) ident(u) operator(+) string<delimiter(")delimiter(")>operator(;)
+ ident(a)operator([)integer(6)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(n)operator(;)
+ ident(a)operator([)integer(7)operator(]) operator(=) ident(n) operator(+) string<delimiter(")delimiter(")>operator(;)
+ ident(a)operator([)integer(8)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(d)operator(;)
+ ident(a)operator([)integer(9)operator(]) operator(=) ident(d) operator(+) string<delimiter(")delimiter(")>operator(;)
+ ident(a)operator([)integer(10)operator(]) operator(=) string<delimiter(")delimiter(")> operator(+) ident(s)operator(;)
+ ident(a)operator([)integer(11)operator(]) operator(=) ident(s) operator(+) string<delimiter(")delimiter(")>operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testStringify)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,false,false,undefined,undefined,5,5,5.5,5.5,x,x)delimiter(")>operator(;)
+ident(test)operator(()ident(testStringify)operator(\))operator(;)
+
+keyword(function) function(testObjectToString)operator(()operator(\)) operator({)
+ keyword(var) ident(o) operator(=) operator({)function(toString)operator(:) keyword(function)operator(()operator(\))string<delimiter(")content(foo)delimiter(")>operator(})operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(+=) ident(o)operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testObjectToString)operator(.)ident(expected) operator(=) string<delimiter(")content(foofoofoofoofoofoofoofoofoofoo)delimiter(")>operator(;)
+ident(test)operator(()ident(testObjectToString)operator(\))operator(;)
+
+keyword(function) function(testObjectToNumber)operator(()operator(\)) operator({)
+ keyword(var) ident(o) operator(=) operator({)function(valueOf)operator(:) keyword(function)operator(()operator(\))operator(-)integer(3)operator(})operator(;)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(x) operator(-=) ident(o)operator(;)
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testObjectToNumber)operator(.)ident(expected) operator(=) integer(30)operator(;)
+ident(test)operator(()ident(testObjectToNumber)operator(\))operator(;)
+
+keyword(function) function(my_iterator_next)operator(()operator(\)) operator({)
+ keyword(if) operator(()local_variable(this)operator(.)ident(i) operator(==) integer(10)operator(\)) operator({)
+ local_variable(this)operator(.)ident(i) operator(=) integer(0)operator(;)
+ keyword(throw) local_variable(this)operator(.)ident(StopIteration)operator(;)
+ operator(})
+ keyword(return) local_variable(this)operator(.)ident(i)operator(++;)
+operator(})
+keyword(function) function(testCustomIterator)operator(()operator(\)) operator({)
+ keyword(var) ident(o) operator(=) operator({)
+ function(__iterator__)operator(:) keyword(function) operator(()operator(\)) operator({)
+ keyword(return) operator({)
+ key(i)operator(:) integer(0)operator(,)
+ key(next)operator(:) ident(my_iterator_next)operator(,)
+ key(StopIteration)operator(:) ident(StopIteration)
+ operator(})operator(;)
+ operator(})
+ operator(})operator(;)
+ keyword(var) ident(a)operator(=[)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(k) operator(=) integer(0)operator(;) ident(k) operator(<) integer(100)operator(;) ident(k) operator(+=) integer(10)operator(\)) operator({)
+ keyword(for)operator(()keyword(var) ident(j) keyword(in) ident(o)operator(\)) operator({)
+ ident(a)operator([)ident(k) operator(+) operator(()ident(j) operator(>>) integer(0)operator(\)]) operator(=) ident(j)operator(*)ident(k)operator(;)
+ operator(})
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()operator(\))operator(;)
+operator(})
+ident(testCustomIterator)operator(.)ident(expected) operator(=) string<delimiter(")content(0,0,0,0,0,0,0,0,0,0,0,10,20,30,40,50,60,70,80,90,0,20,40,60,80,100,120,140,160,180,0,30,60,90,120,150,180,210,240,270,0,40,80,120,160,200,240,280,320,360,0,50,100,150,200,250,300,350,400,450,0,60,120,180,240,300,360,420,480,540,0,70,140,210,280,350,420,490,560,630,0,80,160,240,320,400,480,560,640,720,0,90,180,270,360,450,540,630,720,810)delimiter(")>operator(;)
+ident(test)operator(()ident(testCustomIterator)operator(\))operator(;)
+
+keyword(function) function(bug464403)operator(()operator(\)) operator({)
+ ident(print)operator(()integer(8)operator(\))operator(;)
+ keyword(var) ident(u) operator(=) operator([)ident(print)operator(,) ident(print)operator(,) keyword(function)operator(()operator(\))operator({)operator(}])
+ keyword(for) ident(each) operator(()ident(x) keyword(in) ident(u)operator(\)) keyword(for) operator(()ident(u)operator(.)ident(e) keyword(in) operator([)integer(1)operator(,)integer(1)operator(,)integer(1)operator(,)integer(1)operator(]\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(bug464403)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(bug464403)operator(\))operator(;)
+
+keyword(function) function(testBoxDoubleWithDoubleSizedInt)operator(()operator(\))
+operator({)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(3)operator(\))operator(;)
+
+ keyword(while) operator(()ident(i) operator(<) ident(a)operator(.)ident(length)operator(\))
+ ident(a)operator([)ident(i)operator(++)operator(]) operator(=) hex(0x5a827999)operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testBoxDoubleWithDoubleSizedInt)operator(.)ident(expected) operator(=) string<delimiter(")content(1518500249,1518500249,1518500249)delimiter(")>operator(;)
+ident(test)operator(()ident(testBoxDoubleWithDoubleSizedInt)operator(\))operator(;)
+
+keyword(function) function(testObjectOrderedCmp)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for)operator(()keyword(var) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(5)operator(;++)ident(i)operator(\)) ident(a)operator([)ident(i)operator(]) operator(=) operator(({)operator(}) operator(<) operator({)operator(}\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testObjectOrderedCmp)operator(.)ident(expected) operator(=) string<delimiter(")content(false,false,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testObjectOrderedCmp)operator(\))operator(;)
+
+keyword(function) function(testObjectOrderedCmp2)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(for)operator(()keyword(var) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(5)operator(;++)ident(i)operator(\)) ident(a)operator([)ident(i)operator(]) operator(=) operator(()string<delimiter(")delimiter(")> operator(<=) pre_constant(null)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testObjectOrderedCmp2)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,true,true,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testObjectOrderedCmp2)operator(\))operator(;)
+
+keyword(function) function(testLogicalNotNaN)operator(()operator(\)) operator({)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(a) operator(=) keyword(new) ident(Array)operator(()integer(5)operator(\))operator(;)
+ keyword(while) operator(()ident(i) operator(<) ident(a)operator(.)ident(length)operator(\))
+ ident(a)operator([)ident(i)operator(++)operator(]) operator(=) operator(!)ident(NaN)operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()operator(\))operator(;)
+operator(})
+ident(testLogicalNotNaN)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,true,true,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testLogicalNotNaN)operator(\))operator(;)
+
+keyword(function) function(testStringToInt32)operator(()operator(\)) operator({)
+ keyword(var) ident(s) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) ident(s) operator(+=) operator(()string<delimiter(")content(1e+81)delimiter(")> operator(^) integer(3)operator(\))operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testStringToInt32)operator(.)ident(expected) operator(=) string<delimiter(")content(33333)delimiter(")>operator(;)
+ident(test)operator(()ident(testStringToInt32)operator(\))operator(;)
+
+keyword(function) function(testIn)operator(()operator(\)) operator({)
+ keyword(var) ident(array) operator(=) operator([)integer(3)operator(])operator(;)
+ keyword(var) ident(obj) operator(=) operator({) key<delimiter(")content(-1)delimiter(")>operator(:) integer(5)operator(,) key<delimiter(")content(1.7)delimiter(")>operator(:) integer(3)operator(,) key<delimiter(")content(foo)delimiter(")>operator(:) integer(5)operator(,) key<delimiter(")content(1)delimiter(")>operator(:) integer(7) operator(})operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({)
+ ident(a)operator(.)ident(push)operator(()string<delimiter(")content(0)delimiter(")> keyword(in) ident(array)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator((-)integer(1) keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()float(1.7) keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()string<delimiter(")content(foo)delimiter(")> keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()integer(1) keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()string<delimiter(")content(1)delimiter(")> keyword(in) ident(array)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator((-)integer(2) keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()float(2.7) keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()string<delimiter(")content(bar)delimiter(")> keyword(in) ident(obj)operator(\))operator(;)
+ ident(a)operator(.)ident(push)operator(()integer(2) keyword(in) ident(obj)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testIn)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testIn)operator(\))operator(;)
+
+keyword(function) function(testBranchCse)operator(()operator(\)) operator({)
+ ident(empty) operator(=) operator([)operator(])operator(;)
+ ident(out) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(10)operator(;++)ident(j)operator(\)) operator({) ident(empty)operator([)integer(42)operator(])operator(;) ident(out)operator(.)ident(push)operator((()integer(1) operator(*) operator(()integer(1)operator(\)\)) operator(|) string<delimiter(")delimiter(")>operator(\))operator(;) operator(})
+ keyword(return) ident(out)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testBranchCse)operator(.)ident(expected) operator(=) string<delimiter(")content(1,1,1,1,1,1,1,1,1,1)delimiter(")>operator(;)
+ident(test)operator(()ident(testBranchCse)operator(\))operator(;)
+
+keyword(function) function(testMulOverflow)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()ident(let) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) ident(a)operator(.)ident(push)operator(()integer(0) operator(|) operator((()hex(0x60000009)operator(\)) operator(*) hex(0x60000009)operator(\)\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testMulOverflow)operator(.)ident(expected) operator(=) string<delimiter(")content(-1073741824,-1073741824,-1073741824,-1073741824,-1073741824)delimiter(")>operator(;)
+ident(test)operator(()ident(testMulOverflow)operator(\))operator(;)
+
+keyword(function) function(testThinLoopDemote)operator(()operator(\)) operator({)
+ keyword(function) function(f)operator(()operator(\))
+ operator({)
+ keyword(var) ident(k) operator(=) integer(1)operator(;)
+ keyword(for) operator(()keyword(var) ident(n) operator(=) integer(0)operator(;) ident(n) operator(<) integer(4)operator(;) ident(n)operator(++)operator(\)) operator({)
+ ident(k) operator(=) operator(()ident(k) operator(*) integer(10)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(k)operator(;)
+ operator(})
+ ident(f)operator(()operator(\))operator(;)
+ keyword(return) ident(f)operator(()operator(\))operator(;)
+operator(})
+ident(testThinLoopDemote)operator(.)ident(expected) operator(=) integer(10000)operator(;)
+ident(testThinLoopDemote)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(1)operator(,)
+ key(traceTriggered)operator(:) integer(2)operator(,)
+ key(unstableLoopVariable)operator(:) integer(0)
+operator(})operator(;)
+ident(test)operator(()ident(testThinLoopDemote)operator(\))operator(;)
+
+keyword(var) ident(global) operator(=) local_variable(this)operator(;)
+keyword(function) function(testWeirdDateParseOuter)operator(()operator(\))
+operator({)
+ keyword(var) ident(vDateParts) operator(=) operator([)string<delimiter(")content(11)delimiter(")>operator(,) string<delimiter(")content(17)delimiter(")>operator(,) string<delimiter(")content(2008)delimiter(")>operator(])operator(;)
+ keyword(var) ident(out) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(vI) operator(=) integer(0)operator(;) ident(vI) operator(<) ident(vDateParts)operator(.)ident(length)operator(;) ident(vI)operator(++)operator(\))
+ ident(out)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()ident(vDateParts)operator([)ident(vI)operator(]\)\))operator(;)
+ comment(/* Mutate the global shape so we fall off trace; this causes
+ * additional oddity */)
+ ident(global)operator(.)ident(x) operator(=) ident(Math)operator(.)ident(random)operator(()operator(\))operator(;)
+ keyword(return) ident(out)operator(;)
+operator(})
+keyword(function) function(testWeirdDateParseInner)operator(()ident(pVal)operator(\))
+operator({)
+ keyword(var) ident(vR) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(vI) operator(=) integer(0)operator(;) ident(vI) operator(<) ident(pVal)operator(.)ident(length)operator(;) ident(vI)operator(++)operator(\)) operator({)
+ keyword(var) ident(vC) operator(=) ident(pVal)operator(.)ident(charAt)operator(()ident(vI)operator(\))operator(;)
+ keyword(if) operator((()ident(vC) operator(>=) string<delimiter(')content(0)delimiter(')>operator(\)) operator(&&) operator(()ident(vC) operator(<=) string<delimiter(')content(9)delimiter(')>operator(\)\))
+ ident(vR) operator(=) operator(()ident(vR) operator(*) integer(10)operator(\)) operator(+) ident(parseInt)operator(()ident(vC)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(vR)operator(;)
+operator(})
+keyword(function) function(testWeirdDateParse)operator(()operator(\)) operator({)
+ keyword(var) ident(result) operator(=) operator([)operator(])operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(11)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(17)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(2008)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(11)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(17)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(2008)delimiter(")>operator(\)\))operator(;)
+ ident(result) operator(=) ident(result)operator(.)ident(concat)operator(()ident(testWeirdDateParseOuter)operator(()operator(\)\))operator(;)
+ ident(result) operator(=) ident(result)operator(.)ident(concat)operator(()ident(testWeirdDateParseOuter)operator(()operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(11)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(17)delimiter(")>operator(\)\))operator(;)
+ ident(result)operator(.)ident(push)operator(()ident(testWeirdDateParseInner)operator(()string<delimiter(")content(2008)delimiter(")>operator(\)\))operator(;)
+ keyword(return) ident(result)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testWeirdDateParse)operator(.)ident(expected) operator(=) string<delimiter(")content(11,17,2008,11,17,2008,11,17,2008,11,17,2008,11,17,2008)delimiter(")>operator(;)
+ident(testWeirdDateParse)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(8)operator(,)
+ key(recorderAborted)operator(:) integer(1)operator(,)
+ key(traceCompleted)operator(:) integer(7)operator(,)
+ key(traceTriggered)operator(:) integer(14)operator(,)
+ key(unstableLoopVariable)operator(:) integer(3)operator(,)
+ key(noCompatInnerTrees)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testWeirdDateParse)operator(\))operator(;)
+
+keyword(function) function(testUndemotableBinaryOp)operator(()operator(\)) operator({)
+ keyword(var) ident(out) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()ident(let) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) ident(out)operator(.)ident(push)operator(()integer(6) operator(-) operator((()keyword(void) integer(0)operator(\)) operator(^) hex(0x80000005)operator(\)\))operator(;) operator(})
+ keyword(return) ident(out)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testUndemotableBinaryOp)operator(.)ident(expected) operator(=) string<delimiter(")content(2147483649,2147483649,2147483649,2147483649,2147483649)delimiter(")>operator(;)
+ident(test)operator(()ident(testUndemotableBinaryOp)operator(\))operator(;)
+
+keyword(function) function(testNullRelCmp)operator(()operator(\)) operator({)
+ keyword(var) ident(out) operator(=) operator([)operator(])operator(;)
+ keyword(for)operator(()ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(3)operator(;++)ident(j)operator(\)) operator({) ident(out)operator(.)ident(push)operator(()integer(3) operator(>) pre_constant(null)operator(\))operator(;) ident(out)operator(.)ident(push)operator(()integer(3) operator(<) pre_constant(null)operator(\))operator(;) ident(out)operator(.)ident(push)operator(()integer(0) operator(==) pre_constant(null)operator(\))operator(;) ident(out)operator(.)ident(push)operator(()integer(3) operator(==) pre_constant(null)operator(\))operator(;) operator(})
+ keyword(return) ident(out)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNullRelCmp)operator(.)ident(expected) operator(=) string<delimiter(")content(true,false,false,false,true,false,false,false,true,false,false,false)delimiter(")>operator(;)
+ident(test)operator(()ident(testNullRelCmp)operator(\))operator(;)
+
+keyword(function) function(testEqFalseEmptyString)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(5)operator(;++)ident(i)operator(\)) ident(x)operator(.)ident(push)operator(()pre_constant(false) operator(==) string<delimiter(")delimiter(")>operator(\))operator(;)
+ keyword(return) ident(x)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testEqFalseEmptyString)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,true,true,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testEqFalseEmptyString)operator(\))operator(;)
+
+keyword(function) function(testIncDec2)operator(()ident(ii)operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()ident(let) ident(j)operator(=)integer(0)operator(;)ident(j)operator(<)integer(5)operator(;++)ident(j)operator(\)) operator({)
+ ident(ii)operator(=)ident(j)operator(;)
+ ident(jj)operator(=)ident(j)operator(;)
+ keyword(var) ident(kk)operator(=)ident(j)operator(;)
+ ident(x)operator(.)ident(push)operator(()ident(ii)operator(--)operator(\))operator(;)
+ ident(x)operator(.)ident(push)operator(()ident(jj)operator(--)operator(\))operator(;)
+ ident(x)operator(.)ident(push)operator(()ident(kk)operator(--)operator(\))operator(;)
+ ident(x)operator(.)ident(push)operator((++)ident(ii)operator(\))operator(;)
+ ident(x)operator(.)ident(push)operator((++)ident(jj)operator(\))operator(;)
+ ident(x)operator(.)ident(push)operator((++)ident(kk)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(x)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+keyword(function) function(testIncDec)operator(()operator(\)) operator({)
+ keyword(return) ident(testIncDec2)operator(()integer(0)operator(\))operator(;)
+operator(})
+ident(testIncDec)operator(.)ident(expected) operator(=) string<delimiter(")content(0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4)delimiter(")>operator(;)
+ident(test)operator(()ident(testIncDec)operator(\))operator(;)
+
+keyword(function) function(testApply)operator(()operator(\)) operator({)
+ keyword(var) ident(q) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(Array)operator(.)ident(prototype)operator(.)ident(push)operator(.)ident(apply)operator(()ident(q)operator(,) operator([)integer(5)operator(]\))operator(;)
+ keyword(return) ident(q)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testApply)operator(.)ident(expected) operator(=) string<delimiter(")content(5,5,5,5,5,5,5,5,5,5)delimiter(")>operator(;)
+ident(test)operator(()ident(testApply)operator(\))operator(;)
+
+keyword(function) function(testNestedForIn)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator({)key(x)operator(:) integer(1)operator(,) key(y)operator(:) integer(2)operator(,) key(z)operator(:) integer(3)operator(})operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(')delimiter(')>operator(;)
+ keyword(for) operator(()keyword(var) ident(p1) keyword(in) ident(a)operator(\))
+ keyword(for) operator(()keyword(var) ident(p2) keyword(in) ident(a)operator(\))
+ ident(s) operator(+=) ident(p1) operator(+) ident(p2) operator(+) string<delimiter(')content( )delimiter(')>operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testNestedForIn)operator(.)ident(expected) operator(=) string<delimiter(')content(xx xy xz yx yy yz zx zy zz )delimiter(')>operator(;)
+ident(test)operator(()ident(testNestedForIn)operator(\))operator(;)
+
+keyword(function) function(testForEach)operator(()operator(\)) operator({)
+ keyword(var) ident(r)operator(;)
+ keyword(var) ident(a) operator(=) operator([)string<delimiter(")content(zero)delimiter(")>operator(,) string<delimiter(")content(one)delimiter(")>operator(,) string<delimiter(")content(two)delimiter(")>operator(,) string<delimiter(")content(three)delimiter(")>operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(r) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) ident(each) operator(()keyword(var) ident(s) keyword(in) ident(a)operator(\))
+ ident(r) operator(+=) ident(s) operator(+) string<delimiter(")content( )delimiter(")>operator(;)
+ operator(})
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(testForEach)operator(.)ident(expected) operator(=) string<delimiter(")content(zero one two three )delimiter(")>operator(;)
+ident(test)operator(()ident(testForEach)operator(\))operator(;)
+
+keyword(function) function(testThinForEach)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)string<delimiter(")content(red)delimiter(")>operator(])operator(;)
+ keyword(var) ident(n) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ keyword(for) ident(each) operator(()keyword(var) ident(v) keyword(in) ident(a)operator(\))
+ keyword(if) operator(()ident(v)operator(\))
+ ident(n)operator(++;)
+ keyword(return) ident(n)operator(;)
+operator(})
+ident(testThinForEach)operator(.)ident(expected) operator(=) integer(10)operator(;)
+ident(test)operator(()ident(testThinForEach)operator(\))operator(;)
+
+keyword(function) function(testComparisons)operator(()operator(\))
+operator({)
+ comment(// All the special values from each of the types in)
+ comment(// ECMA-262, 3rd ed. section 8)
+ keyword(var) ident(undefinedType)operator(,) ident(nullType)operator(,) ident(booleanType)operator(,) ident(stringType)operator(,) ident(numberType)operator(,) ident(objectType)operator(;)
+
+ keyword(var) ident(types) operator(=) operator([)operator(])operator(;)
+ ident(types)operator([)ident(undefinedType) operator(=) integer(0)operator(]) operator(=) string<delimiter(")content(Undefined)delimiter(")>operator(;)
+ ident(types)operator([)ident(nullType) operator(=) integer(1)operator(]) operator(=) string<delimiter(")content(Null)delimiter(")>operator(;)
+ ident(types)operator([)ident(booleanType) operator(=) integer(2)operator(]) operator(=) string<delimiter(")content(Boolean)delimiter(")>operator(;)
+ ident(types)operator([)ident(stringType) operator(=) integer(3)operator(]) operator(=) string<delimiter(")content(String)delimiter(")>operator(;)
+ ident(types)operator([)ident(numberType) operator(=) integer(4)operator(]) operator(=) string<delimiter(")content(Number)delimiter(")>operator(;)
+ ident(types)operator([)ident(objectType) operator(=) integer(5)operator(]) operator(=) string<delimiter(")content(Object)delimiter(")>operator(;)
+
+ keyword(var) ident(JSVAL_INT_MIN) operator(=) operator(-)ident(Math)operator(.)ident(pow)operator(()integer(2)operator(,) integer(30)operator(\))operator(;)
+ keyword(var) ident(JSVAL_INT_MAX) operator(=) ident(Math)operator(.)ident(pow)operator(()integer(2)operator(,) integer(30)operator(\)) operator(-) integer(1)operator(;)
+
+ comment(// Values from every ES3 type, hitting all the edge-case and special values)
+ comment(// that can be dreamed up)
+ keyword(var) ident(values) operator(=)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) pre_constant(undefined)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(undefinedType)
+ operator(})operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) pre_constant(null)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(nullType)
+ operator(})operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) pre_constant(true)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(booleanType)
+ operator(})operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) pre_constant(false)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(booleanType)
+ operator(})operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")delimiter(")>operator(;) operator(})operator(,)
+ key(type)operator(:) ident(stringType)
+ operator(})operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:)
+ operator({)
+ comment(// a > [, for string-object comparisons)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(a)delimiter(")>operator(;) operator(})operator(,)
+ key(type)operator(:) ident(stringType)
+ operator(})operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:)
+ operator({)
+ comment(// Z < [, for string-object comparisons)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(Z)delimiter(")>operator(;) operator(})operator(,)
+ key(type)operator(:) ident(stringType)
+ operator(})operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) integer(0)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator(-)integer(0)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) integer(1)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(Math)operator(.)ident(E)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MIN) operator(-) integer(1)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MIN)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MIN) operator(+) integer(1)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MAX) operator(-) integer(1)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MAX)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(JSVAL_INT_MAX) operator(+) integer(1)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(Infinity)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator(-)ident(Infinity)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) ident(NaN)operator(;) operator(})operator(,)
+ key(type)operator(:) ident(numberType)
+ operator(})operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator({)operator(})operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator({) key(valueOf)operator(:) pre_constant(undefined) operator(})operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator([)operator(])operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator([)string<delimiter(")delimiter(")>operator(])operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator([)string<delimiter(")content(a)delimiter(")>operator(])operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:)
+ operator({)
+ function(value)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) operator([)integer(0)operator(])operator(;) operator(})operator(,)
+ key(type)operator(:) ident(objectType)
+ operator(})
+ operator(})operator(;)
+
+ keyword(var) ident(orderOps) operator(=)
+ operator({)
+ key<delimiter(")content(<)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(<) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(>)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(>) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(<=)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(<=) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(>=)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(>=) ident(b)operator(;) operator(})
+ operator(})operator(;)
+ keyword(var) ident(eqOps) operator(=)
+ operator({)
+ key<delimiter(")content(==)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(==) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(!=)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(!=) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(===)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(===) ident(b)operator(;) operator(})operator(,)
+ key<delimiter(")content(!==)delimiter(")>operator(:) keyword(function)operator(()ident(a)operator(,) ident(b)operator(\)) operator({) keyword(return) ident(a) operator(!==) ident(b)operator(;) operator(})
+ operator(})operator(;)
+
+
+ keyword(var) ident(notEqualIncomparable) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(false) operator(})
+ operator(})operator(;)
+ keyword(var) ident(notEqualLessThan) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(false) operator(})
+ operator(})operator(;)
+ keyword(var) ident(notEqualGreaterThan) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(notEqualNorDifferent) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(strictlyEqual) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(false) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(looselyEqual) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(looselyEqualNotDifferent) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(looselyEqualIncomparable) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(true) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(false) operator(})
+ operator(})operator(;)
+ keyword(var) ident(strictlyEqualNotDifferent) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(false) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(true) operator(})
+ operator(})operator(;)
+ keyword(var) ident(strictlyEqualIncomparable) operator(=)
+ operator({)
+ key(eq)operator(:) operator({) key<delimiter(")content(==)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(===)delimiter(")>operator(:) pre_constant(true)operator(,) key<delimiter(")content(!==)delimiter(")>operator(:) pre_constant(false) operator(})operator(,)
+ key(order)operator(:) operator({) key<delimiter(")content(<)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(<=)delimiter(")>operator(:) pre_constant(false)operator(,) key<delimiter(")content(>=)delimiter(")>operator(:) pre_constant(false) operator(})
+ operator(})operator(;)
+
+ keyword(var) ident(comparingZeroToSomething) operator(=)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(looselyEqualNotDifferent)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(looselyEqual)
+ operator(})operator(;)
+
+ keyword(var) ident(comparingObjectOrObjectWithValueUndefined) operator(=)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(;)
+
+ comment(// Constructed expected-value matrix)
+ keyword(var) ident(expected) operator(=)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(strictlyEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(looselyEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualIncomparable)
+ operator(})operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(looselyEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(strictlyEqualNotDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualNorDifferent)
+ operator(})operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(looselyEqualNotDifferent)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(looselyEqual)
+ operator(})operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(looselyEqualNotDifferent)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(comparingZeroToSomething)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(comparingZeroToSomething)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(strictlyEqual)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualIncomparable)
+ operator(})operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(comparingObjectOrObjectWithValueUndefined)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(comparingObjectOrObjectWithValueUndefined)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualLessThan)
+ operator(})operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualGreaterThan)
+ operator(})operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:)
+ operator({)
+ key<delimiter(")content(undefined)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content(null)delimiter(")>operator(:) ident(notEqualNorDifferent)operator(,)
+ key<delimiter(")content(true)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(false)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(')content("")delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content("a")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(')content("Z")delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(-0)delimiter(")>operator(:) ident(looselyEqual)operator(,)
+ key<delimiter(")content(1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Math.E)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN - 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MIN + 1)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX - 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(JSVAL_INT_MAX + 1)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(Infinity)delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content(-Infinity)delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(")content(NaN)delimiter(")>operator(:) ident(notEqualIncomparable)operator(,)
+ key<delimiter(")content({})delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content({ valueOf: undefined })delimiter(")>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([])delimiter(")>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content([""])delimiter(')>operator(:) ident(notEqualGreaterThan)operator(,)
+ key<delimiter(')content(["a"])delimiter(')>operator(:) ident(notEqualLessThan)operator(,)
+ key<delimiter(")content([0])delimiter(")>operator(:) ident(notEqualNorDifferent)
+ operator(})
+ operator(})operator(;)
+
+
+
+ keyword(var) ident(failures) operator(=) operator([)operator(])operator(;)
+ keyword(function) function(fail)operator(()ident(a)operator(,) ident(ta)operator(,) ident(b)operator(,) ident(tb)operator(,) ident(ex)operator(,) ident(ac)operator(,) ident(op)operator(\))
+ operator({)
+ ident(failures)operator(.)ident(push)operator(()string<delimiter(")content(()delimiter(")> operator(+) ident(a) operator(+) string<delimiter(")content( )delimiter(")> operator(+) ident(op) operator(+) string<delimiter(")content( )delimiter(")> operator(+) ident(b) operator(+) string<delimiter(")content(\) wrong: )delimiter(")> operator(+)
+ string<delimiter(")content(expected )delimiter(")> operator(+) ident(ex) operator(+) string<delimiter(")content(, got )delimiter(")> operator(+) ident(ac) operator(+)
+ string<delimiter(")content( (types )delimiter(")> operator(+) ident(types)operator([)ident(ta)operator(]) operator(+) string<delimiter(")content(, )delimiter(")> operator(+) ident(types)operator([)ident(tb)operator(]) operator(+) string<delimiter(")content(\))delimiter(")>operator(\))operator(;)
+ operator(})
+
+ keyword(var) ident(result) operator(=) pre_constant(false)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) keyword(in) ident(values)operator(\))
+ operator({)
+ keyword(for) operator(()keyword(var) ident(j) keyword(in) ident(values)operator(\))
+ operator({)
+ comment(// Constants, so hoist to help JIT know that)
+ keyword(var) ident(vala) operator(=) ident(values)operator([)ident(i)operator(])operator(,) ident(valb) operator(=) ident(values)operator([)ident(j)operator(])operator(;)
+ keyword(var) ident(a) operator(=) ident(vala)operator(.)ident(value)operator(()operator(\))operator(,) ident(b) operator(=) ident(valb)operator(.)ident(value)operator(()operator(\))operator(;)
+
+ keyword(for) operator(()keyword(var) ident(opname) keyword(in) ident(orderOps)operator(\))
+ operator({)
+ keyword(var) ident(op) operator(=) ident(orderOps)operator([)ident(opname)operator(])operator(;)
+ keyword(var) ident(expect) operator(=) ident(expected)operator([)ident(i)operator(])operator([)ident(j)operator(])operator(.)ident(order)operator([)ident(opname)operator(])operator(;)
+ keyword(var) ident(failed) operator(=) pre_constant(false)operator(;)
+
+ keyword(for) operator(()keyword(var) ident(iter) operator(=) integer(0)operator(;) ident(iter) operator(<) integer(5)operator(;) ident(iter)operator(++)operator(\))
+ operator({)
+ ident(result) operator(=) ident(op)operator(()ident(a)operator(,) ident(b)operator(\))operator(;)
+ ident(failed) operator(=) ident(failed) operator(||) ident(result) operator(!==) ident(expect)operator(;)
+ operator(})
+
+ keyword(if) operator(()ident(failed)operator(\))
+ ident(fail)operator(()ident(i)operator(,) ident(vala)operator(.)ident(type)operator(,) ident(j)operator(,) ident(valb)operator(.)ident(type)operator(,) ident(expect)operator(,) ident(result)operator(,) ident(opname)operator(\))operator(;)
+ operator(})
+
+ keyword(for) operator(()keyword(var) ident(opname) keyword(in) ident(eqOps)operator(\))
+ operator({)
+ keyword(var) ident(op) operator(=) ident(eqOps)operator([)ident(opname)operator(])operator(;)
+ keyword(var) ident(expect) operator(=) ident(expected)operator([)ident(i)operator(])operator([)ident(j)operator(])operator(.)ident(eq)operator([)ident(opname)operator(])operator(;)
+ keyword(var) ident(failed) operator(=) pre_constant(false)operator(;)
+
+ keyword(for) operator(()keyword(var) ident(iter) operator(=) integer(0)operator(;) ident(iter) operator(<) integer(5)operator(;) ident(iter)operator(++)operator(\))
+ operator({)
+ ident(result) operator(=) ident(op)operator(()ident(a)operator(,) ident(b)operator(\))operator(;)
+ ident(failed) operator(=) ident(failed) operator(||) ident(result) operator(!==) ident(expect)operator(;)
+ operator(})
+
+ keyword(if) operator(()ident(failed)operator(\))
+ ident(fail)operator(()ident(i)operator(,) ident(vala)operator(.)ident(type)operator(,) ident(j)operator(,) ident(valb)operator(.)ident(type)operator(,) ident(expect)operator(,) ident(result)operator(,) ident(opname)operator(\))operator(;)
+ operator(})
+ operator(})
+ operator(})
+
+ keyword(if) operator(()ident(failures)operator(.)ident(length) operator(==) integer(0)operator(\))
+ keyword(return) string<delimiter(")content(no failures reported!)delimiter(")>operator(;)
+
+ keyword(return) string<delimiter(")char(\\n)delimiter(")> operator(+) ident(failures)operator(.)ident(join)operator(()string<delimiter(")content(,)char(\\n)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testComparisons)operator(.)ident(expected) operator(=) string<delimiter(")content(no failures reported!)delimiter(")>operator(;)
+ident(test)operator(()ident(testComparisons)operator(\))operator(;)
+
+keyword(function) function(testBug504520)operator(()operator(\)) operator({)
+ comment(// A bug involving comparisons.)
+ keyword(var) ident(arr) operator(=) operator([)integer(1)operator(/)integer(0)operator(,) integer(1)operator(/)integer(0)operator(,) integer(1)operator(/)integer(0)operator(,) integer(1)operator(/)integer(0)operator(,) integer(1)operator(/)integer(0)operator(,) integer(0)operator(])operator(;)
+ ident(assertEq)operator(()ident(arr)operator(.)ident(length) operator(>) ident(RUNLOOP)operator(,) pre_constant(true)operator(\))operator(;)
+
+ keyword(var) ident(s) operator(=) string<delimiter(')delimiter(')>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(arr)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(arr)operator([)ident(i)operator(]) operator(>=) integer(1)operator(/)integer(0) operator(?) pre_constant(null) operator(:) operator(()ident(s) operator(+=) ident(i)operator(\))operator(;)
+ ident(assertEq)operator(()ident(s)operator(,) string<delimiter(')content(5)delimiter(')>operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testBug504520)operator(\))operator(;)
+
+keyword(function) function(testBug504520Harder)operator(()operator(\)) operator({)
+ comment(// test 1024 similar cases)
+ keyword(var) ident(vals) operator(=) operator([)integer(1)operator(/)integer(0)operator(,) operator(-)integer(1)operator(/)integer(0)operator(,) integer(0)operator(,) integer(0)operator(/)integer(0)operator(])operator(;)
+ keyword(var) ident(ops) operator(=) operator([)string<delimiter(")content(===)delimiter(")>operator(,) string<delimiter(")content(!==)delimiter(")>operator(,) string<delimiter(")content(==)delimiter(")>operator(,) string<delimiter(")content(!=)delimiter(")>operator(,) string<delimiter(")content(<)delimiter(")>operator(,) string<delimiter(")content(>)delimiter(")>operator(,) string<delimiter(")content(<=)delimiter(")>operator(,) string<delimiter(")content(>=)delimiter(")>operator(])operator(;)
+ keyword(for) ident(each) operator(()keyword(var) ident(x) keyword(in) ident(vals)operator(\)) operator({)
+ keyword(for) ident(each) operator(()keyword(var) ident(y) keyword(in) ident(vals)operator(\)) operator({)
+ keyword(for) ident(each) operator(()keyword(var) ident(op) keyword(in) ident(ops)operator(\)) operator({)
+ keyword(for) ident(each) operator(()keyword(var) ident(z) keyword(in) ident(vals)operator(\)) operator({)
+ comment(// Assume eval is correct. This depends on the global)
+ comment(// Infinity property not having been reassigned.)
+ keyword(var) ident(xz) operator(=) ident(eval)operator(()ident(x) operator(+) ident(op) operator(+) ident(z)operator(\))operator(;)
+ keyword(var) ident(yz) operator(=) ident(eval)operator(()ident(y) operator(+) ident(op) operator(+) ident(z)operator(\))operator(;)
+
+ keyword(var) ident(arr) operator(=) operator([)ident(x)operator(,) ident(x)operator(,) ident(x)operator(,) ident(x)operator(,) ident(x)operator(,) ident(y)operator(])operator(;)
+ ident(assertEq)operator(()ident(arr)operator(.)ident(length) operator(>) ident(RUNLOOP)operator(,) pre_constant(true)operator(\))operator(;)
+ keyword(var) ident(expected) operator(=) operator([)ident(xz)operator(,) ident(xz)operator(,) ident(xz)operator(,) ident(xz)operator(,) ident(xz)operator(,) ident(yz)operator(])operator(;)
+
+ comment(// ?: looks superfluous but that's what we're testing here)
+ keyword(var) ident(fun) operator(=) ident(eval)operator(()
+ string<delimiter(')content((function (arr, results\) {)content(\\n)delimiter(')> operator(+)
+ string<delimiter(')content( for (let i = 0; i < arr.length; i++\))content(\\n)delimiter(')> operator(+)
+ string<delimiter(')content( results.push(arr[i])delimiter(')> operator(+) ident(op) operator(+) ident(z) operator(+) string<delimiter(')content( ? "true" : "false"\);)content(\\n)delimiter(')> operator(+)
+ string<delimiter(')content(}\);)content(\\n)delimiter(')>operator(\))operator(;)
+ keyword(var) ident(actual) operator(=) operator([)operator(])operator(;)
+ ident(fun)operator(()ident(arr)operator(,) ident(actual)operator(\))operator(;)
+ ident(assertEq)operator(()string<delimiter(")delimiter(")> operator(+) ident(actual)operator(,) string<delimiter(")delimiter(")> operator(+) ident(expected)operator(\))operator(;)
+ operator(})
+ operator(})
+ operator(})
+ operator(})
+operator(})
+ident(test)operator(()ident(testBug504520Harder)operator(\))operator(;)
+
+keyword(function) function(testCaseAbort)operator(()operator(\))
+operator({)
+ keyword(var) ident(four) operator(=) string<delimiter(")content(4)delimiter(")>operator(;)
+ keyword(var) ident(r) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ keyword(switch) operator(()ident(i)operator(\))
+ operator({)
+ keyword(case) ident(four)operator(:) ident(r) operator(+=) integer(1)operator(;) keyword(break)operator(;)
+ keyword(default)operator(:) ident(r) operator(+=) integer(2)operator(;) keyword(break)operator(;)
+ operator(})
+ operator(})
+
+ keyword(return) string<delimiter(")delimiter(")> operator(+) ident(r)operator(;)
+operator(})
+ident(testCaseAbort)operator(.)ident(expected) operator(=) string<delimiter(")content(10)delimiter(")>operator(;)
+ident(testCaseAbort)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderAborted)operator(:) integer(0)
+operator(})operator(;)
+ident(test)operator(()ident(testCaseAbort)operator(\))operator(;)
+
+keyword(function) function(testApplyCallHelper)operator(()ident(f)operator(\)) operator({)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(]\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(,)integer(1)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(,)integer(1)operator(]\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(,)integer(1)operator(,)integer(2)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(,)integer(1)operator(,)integer(2)operator(]\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(]\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(,)integer(4)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(,)integer(4)operator(]\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(call)operator(()local_variable(this)operator(,)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(,)integer(4)operator(,)integer(5)operator(\))operator(;)
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) ident(f)operator(.)ident(apply)operator(()local_variable(this)operator(,[)integer(0)operator(,)integer(1)operator(,)integer(2)operator(,)integer(3)operator(,)integer(4)operator(,)integer(5)operator(]\))
+ ident(r)operator(.)ident(push)operator(()ident(x)operator(\))operator(;)
+ keyword(return)operator(()ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\)\))operator(;)
+operator(})
+keyword(function) function(testApplyCall)operator(()operator(\)) operator({)
+ keyword(var) ident(r) operator(=) ident(testApplyCallHelper)operator(()keyword(function) operator(()ident(a0)operator(,)ident(a1)operator(,)ident(a2)operator(,)ident(a3)operator(,)ident(a4)operator(,)ident(a5)operator(,)ident(a6)operator(,)ident(a7)operator(\)) operator({) ident(x) operator(=) operator([)ident(a0)operator(,)ident(a1)operator(,)ident(a2)operator(,)ident(a3)operator(,)ident(a4)operator(,)ident(a5)operator(,)ident(a6)operator(,)ident(a7)operator(])operator(;) operator(}\))operator(;)
+ ident(r) operator(+=) ident(testApplyCallHelper)operator(()keyword(function) operator(()ident(a0)operator(,)ident(a1)operator(,)ident(a2)operator(,)ident(a3)operator(,)ident(a4)operator(,)ident(a5)operator(,)ident(a6)operator(,)ident(a7)operator(\)) operator({) ident(x) operator(=) operator([)ident(a0)operator(,)ident(a1)operator(,)ident(a2)operator(,)ident(a3)operator(,)ident(a4)operator(,)ident(a5)operator(,)ident(a6)operator(,)ident(a7)operator(])operator(;) operator(}\))operator(;)
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(testApplyCall)operator(.)ident(expected) operator(=)
+string<delimiter(")content(,,,,,,,,,,,,,,,,,,,,,,,,0,,,,,,,,0,,,,,,,,0,1,,,,,,,0,1,,,,,,,0,1,2,,,,,,0,1,2,,,,,,0,1,2,3,,,,,0,1,2,3,,,,,0,1,2,3,4,,,,0,1,2,3,4,,,,0,1,2,3,4,5,,,0,1,2,3,4,5,,)delimiter(")> operator(+)
+string<delimiter(")content(,,,,,,,,,,,,,,,,,,,,,,,,0,,,,,,,,0,,,,,,,,0,1,,,,,,,0,1,,,,,,,0,1,2,,,,,,0,1,2,,,,,,0,1,2,3,,,,,0,1,2,3,,,,,0,1,2,3,4,,,,0,1,2,3,4,,,,0,1,2,3,4,5,,,0,1,2,3,4,5,,)delimiter(")>operator(;)
+ident(test)operator(()ident(testApplyCall)operator(\))operator(;)
+
+keyword(function) function(testApplyUnboxHelper)operator(()ident(f)operator(,)ident(a)operator(\)) operator({)
+ keyword(var) ident(q)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(q) operator(=) ident(f)operator(.)ident(apply)operator(()ident(f)operator(,)ident(a)operator(\))operator(;)
+ keyword(return) ident(q)operator(;)
+operator(})
+keyword(function) function(testApplyUnbox)operator(()operator(\)) operator({)
+ keyword(var) function(f) operator(=) keyword(function)operator(()ident(x)operator(\)) operator({) keyword(return) ident(x)operator(;) operator(})
+ keyword(return) operator([)ident(testApplyUnboxHelper)operator(()ident(f)operator(,[)integer(1)operator(]\))operator(,) ident(testApplyUnboxHelper)operator(()ident(f)operator(,[)pre_constant(true)operator(]\)])operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testApplyUnbox)operator(.)ident(expected) operator(=) string<delimiter(")content(1,true)delimiter(")>operator(;)
+ident(test)operator(()ident(testApplyUnbox)operator(\))operator(;)
+
+keyword(function) function(testCallPick)operator(()operator(\)) operator({)
+ keyword(function) function(g)operator(()ident(x)operator(,)ident(a)operator(\)) operator({)
+ ident(x)operator(.)ident(f)operator(()operator(\))operator(;)
+ operator(})
+
+ keyword(var) ident(x) operator(=) operator([)operator(])operator(;)
+ ident(x)operator(.)function(f) operator(=) keyword(function)operator(()operator(\)) operator({) operator(})
+
+ keyword(var) ident(y) operator(=) operator([)operator(])operator(;)
+ ident(y)operator(.)function(f) operator(=) keyword(function)operator(()operator(\)) operator({) operator(})
+
+ keyword(var) ident(z) operator(=) operator([)ident(x)operator(,)ident(x)operator(,)ident(x)operator(,)ident(x)operator(,)ident(x)operator(,)ident(y)operator(,)ident(y)operator(,)ident(y)operator(,)ident(y)operator(,)ident(y)operator(])operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(g)operator(.)ident(call)operator(()local_variable(this)operator(,) ident(z)operator([)ident(i)operator(])operator(,) string<delimiter(")delimiter(")>operator(\))operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testCallPick)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testCallPick)operator(\))operator(;)
+
+keyword(function) function(testInvertNullAfterNegateNull)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator(!)pre_constant(null)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator(-)pre_constant(null)operator(;)
+ keyword(return) string<delimiter(")content(no assertion)delimiter(")>operator(;)
+operator(})
+ident(testInvertNullAfterNegateNull)operator(.)ident(expected) operator(=) string<delimiter(")content(no assertion)delimiter(")>operator(;)
+ident(test)operator(()ident(testInvertNullAfterNegateNull)operator(\))operator(;)
+
+keyword(function) function(testUnaryImacros)operator(()operator(\))
+operator({)
+ keyword(function) function(checkArg)operator(()ident(x)operator(\))
+ operator({)
+ keyword(return) integer(1)operator(;)
+ operator(})
+
+ keyword(var) ident(o) operator(=) operator({) key(valueOf)operator(:) ident(checkArg)operator(,) key(toString)operator(:) pre_constant(null) operator(})operator(;)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(var) ident(v) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(v) operator(+=) operator(+)ident(o) operator(+) operator(-(-)ident(o)operator(\))operator(;)
+
+ keyword(var) ident(results) operator(=) operator([)ident(v) operator(===) integer(10) operator(?) string<delimiter(")content(valueOf passed)delimiter(")> operator(:) string<delimiter(")content(valueOf failed)delimiter(")>operator(])operator(;)
+
+ ident(o)operator(.)ident(valueOf) operator(=) pre_constant(null)operator(;)
+ ident(o)operator(.)ident(toString) operator(=) ident(checkArg)operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(v) operator(+=) operator(+)ident(o) operator(+) operator(-(-)ident(o)operator(\))operator(;)
+
+ ident(results)operator(.)ident(push)operator(()ident(v) operator(===) integer(20) operator(?) string<delimiter(")content(toString passed)delimiter(")> operator(:) string<delimiter(")content(toString failed)delimiter(")>operator(\))operator(;)
+
+ keyword(return) ident(results)operator(.)ident(join)operator(()string<delimiter(")content(, )delimiter(")>operator(\))operator(;)
+operator(})
+ident(testUnaryImacros)operator(.)ident(expected) operator(=) string<delimiter(")content(valueOf passed, toString passed)delimiter(")>operator(;)
+ident(test)operator(()ident(testUnaryImacros)operator(\))operator(;)
+
+keyword(function) function(testAddAnyInconvertibleObject)operator(()operator(\))
+operator({)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(function) function(toString)operator(()operator(\)) operator({) operator(++)ident(count)operator(;) keyword(if) operator(()ident(count) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) string<delimiter(")delimiter(")> operator(+) ident(count)operator(;) operator(})
+ keyword(var) ident(o) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) integer(5) operator(+) ident(o)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) string<delimiter(")content(594)delimiter(")>operator(\))
+ keyword(return) string<delimiter(")content(expected q === '594', got )delimiter(")> operator(+) ident(q) operator(+) string<delimiter(")content( (type )delimiter(")> operator(+) keyword(typeof) ident(q) operator(+) string<delimiter(")content(\))delimiter(")>operator(;)
+ keyword(if) operator(()ident(count) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count === 95, got )delimiter(")> operator(+) ident(count)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with 5 + o)delimiter(")>operator(;) comment(// hey, a rhyme!)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testAddAnyInconvertibleObject)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testAddAnyInconvertibleObject)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testAddAnyInconvertibleObject)operator(\))operator(;)
+
+keyword(function) function(testAddInconvertibleObjectAny)operator(()operator(\))
+operator({)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(function) function(toString)operator(()operator(\))
+ operator({)
+ operator(++)ident(count)operator(;)
+ keyword(if) operator(()ident(count) operator(==) integer(95)operator(\))
+ keyword(return) operator({)operator(})operator(;)
+ keyword(return) string<delimiter(")delimiter(")> operator(+) ident(count)operator(;)
+ operator(})
+ keyword(var) ident(o) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) ident(o) operator(+) integer(5)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) string<delimiter(")content(945)delimiter(")>operator(\))
+ keyword(return) string<delimiter(")content(expected q === '945', got )delimiter(")> operator(+) ident(q) operator(+) string<delimiter(")content( (type )delimiter(")> operator(+) keyword(typeof) ident(q) operator(+) string<delimiter(")content(\))delimiter(")>operator(;)
+ keyword(if) operator(()ident(count) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count === 95, got )delimiter(")> operator(+) ident(count)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with o + 5)delimiter(")>operator(;)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testAddInconvertibleObjectAny)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testAddInconvertibleObjectAny)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testAddInconvertibleObjectAny)operator(\))operator(;)
+
+keyword(function) function(testAddInconvertibleObjectInconvertibleObject)operator(()operator(\))
+operator({)
+ keyword(var) ident(count1) operator(=) integer(0)operator(;)
+ keyword(function) function(toString1)operator(()operator(\)) operator({) operator(++)ident(count1)operator(;) keyword(if) operator(()ident(count1) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) string<delimiter(")delimiter(")> operator(+) ident(count1)operator(;) operator(})
+ keyword(var) ident(o1) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString1)operator(})operator(;)
+ keyword(var) ident(count2) operator(=) integer(0)operator(;)
+ keyword(function) function(toString2)operator(()operator(\)) operator({) operator(++)ident(count2)operator(;) keyword(if) operator(()ident(count2) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) string<delimiter(")delimiter(")> operator(+) ident(count2)operator(;) operator(})
+ keyword(var) ident(o2) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString2)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) ident(o1) operator(+) ident(o2)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) string<delimiter(")content(9494)delimiter(")>operator(\))
+ keyword(return) string<delimiter(")content(expected q === '9494', got )delimiter(")> operator(+) ident(q) operator(+) string<delimiter(")content( (type )delimiter(")> operator(+) keyword(typeof) ident(q) operator(+) string<delimiter(")content(\))delimiter(")>operator(;)
+ keyword(if) operator(()ident(count1) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count1 === 95, got )delimiter(")> operator(+) ident(count1)operator(;)
+ keyword(if) operator(()ident(count2) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected count2 === 94, got )delimiter(")> operator(+) ident(count2)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with o1 + o2)delimiter(")>operator(;)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testAddInconvertibleObjectInconvertibleObject)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testAddInconvertibleObjectInconvertibleObject)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testAddInconvertibleObjectInconvertibleObject)operator(\))operator(;)
+
+keyword(function) function(testBitOrAnyInconvertibleObject)operator(()operator(\))
+operator({)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(function) function(toString)operator(()operator(\)) operator({) operator(++)ident(count)operator(;) keyword(if) operator(()ident(count) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) ident(count)operator(;) operator(})
+ keyword(var) ident(o) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) integer(1) operator(|) ident(o)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected q === 95, got )delimiter(")> operator(+) ident(q)operator(;)
+ keyword(if) operator(()ident(count) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count === 95, got )delimiter(")> operator(+) ident(count)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with 2 | o)delimiter(")>operator(;) comment(// hey, a rhyme!)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testBitOrAnyInconvertibleObject)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testBitOrAnyInconvertibleObject)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testBitOrAnyInconvertibleObject)operator(\))operator(;)
+
+keyword(function) function(testBitOrInconvertibleObjectAny)operator(()operator(\))
+operator({)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(function) function(toString)operator(()operator(\)) operator({) operator(++)ident(count)operator(;) keyword(if) operator(()ident(count) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) ident(count)operator(;) operator(})
+ keyword(var) ident(o) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) ident(o) operator(|) integer(1)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected q === 95, got )delimiter(")> operator(+) ident(q)operator(;)
+ keyword(if) operator(()ident(count) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count === 95, got )delimiter(")> operator(+) ident(count)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with o | 2)delimiter(")>operator(;)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testBitOrInconvertibleObjectAny)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testBitOrInconvertibleObjectAny)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testBitOrInconvertibleObjectAny)operator(\))operator(;)
+
+keyword(function) function(testBitOrInconvertibleObjectInconvertibleObject)operator(()operator(\))
+operator({)
+ keyword(var) ident(count1) operator(=) integer(0)operator(;)
+ keyword(function) function(toString1)operator(()operator(\)) operator({) operator(++)ident(count1)operator(;) keyword(if) operator(()ident(count1) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) ident(count1)operator(;) operator(})
+ keyword(var) ident(o1) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString1)operator(})operator(;)
+ keyword(var) ident(count2) operator(=) integer(0)operator(;)
+ keyword(function) function(toString2)operator(()operator(\)) operator({) operator(++)ident(count2)operator(;) keyword(if) operator(()ident(count2) operator(==) integer(95)operator(\)) keyword(return) operator({)operator(})operator(;) keyword(return) ident(count2)operator(;) operator(})
+ keyword(var) ident(o2) operator(=) operator({)key(valueOf)operator(:) pre_constant(undefined)operator(,) key(toString)operator(:) ident(toString2)operator(})operator(;)
+
+ keyword(var) ident(threw) operator(=) pre_constant(false)operator(;)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(100)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(q) operator(=) ident(o1) operator(|) ident(o2)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ ident(threw) operator(=) pre_constant(true)operator(;)
+ keyword(if) operator(()ident(i) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected i === 94, got )delimiter(")> operator(+) ident(i)operator(;)
+ keyword(if) operator(()ident(q) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected q === 94, got )delimiter(")> operator(+) ident(q)operator(;)
+ keyword(if) operator(()ident(count1) operator(!==) integer(95)operator(\))
+ keyword(return) string<delimiter(")content(expected count1 === 95, got )delimiter(")> operator(+) ident(count1)operator(;)
+ keyword(if) operator(()ident(count2) operator(!==) integer(94)operator(\))
+ keyword(return) string<delimiter(")content(expected count2 === 94, got )delimiter(")> operator(+) ident(count2)operator(;)
+ operator(})
+ keyword(if) operator((!)ident(threw)operator(\))
+ keyword(return) string<delimiter(")content(expected throw with o1 | o2)delimiter(")>operator(;)
+
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+operator(})
+ident(testBitOrInconvertibleObjectInconvertibleObject)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(testBitOrInconvertibleObjectInconvertibleObject)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testBitOrInconvertibleObjectInconvertibleObject)operator(\))operator(;)
+
+keyword(function) function(testCaseTypeMismatchBadness)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(3)operator(;) operator(++)ident(z)operator(\))
+ operator({)
+ keyword(switch) operator(()string<delimiter(")delimiter(")>operator(\))
+ operator({)
+ keyword(default)operator(:)
+ keyword(case) integer(9)operator(:)
+ keyword(break)operator(;)
+
+ keyword(case) string<delimiter(")delimiter(")>operator(:)
+ keyword(case) tag(<x)tag(/>)operator(:)
+ keyword(break)operator(;)
+ operator(})
+ operator(})
+
+ keyword(return) string<delimiter(")content(no crash)delimiter(")>operator(;)
+operator(})
+ident(testCaseTypeMismatchBadness)operator(.)ident(expected) operator(=) string<delimiter(")content(no crash)delimiter(")>operator(;)
+ident(testCaseTypeMismatchBadness)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderAborted)operator(:) integer(0)
+operator(})operator(;)
+ident(test)operator(()ident(testCaseTypeMismatchBadness)operator(\))operator(;)
+
+keyword(function) function(testDoubleComparison)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(500000)operator(;) operator(++)ident(i)operator(\))
+ operator({)
+ keyword(switch) operator(()integer(1) operator(/) integer(0)operator(\))
+ operator({)
+ keyword(case) ident(Infinity)operator(:)
+ operator(})
+ operator(})
+
+ keyword(return) string<delimiter(")content(finished)delimiter(")>operator(;)
+operator(})
+ident(testDoubleComparison)operator(.)ident(expected) operator(=) string<delimiter(")content(finished)delimiter(")>operator(;)
+ident(testDoubleComparison)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testDoubleComparison)operator(\))operator(;)
+
+keyword(function) function(testLirBufOOM)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)
+ string<delimiter(")content(12345678901234)delimiter(")>operator(,)
+ string<delimiter(")content(123456789012)delimiter(")>operator(,)
+ string<delimiter(")content(1234567890123456789012345678)delimiter(")>operator(,)
+ string<delimiter(")content(12345678901234567890123456789012345678901234567890123456)delimiter(")>operator(,)
+ string<delimiter(")content(f)delimiter(")>operator(,)
+ string<delimiter(")content($)delimiter(")>operator(,)
+ string<delimiter(")delimiter(")>operator(,)
+ string<delimiter(")content(f(\))delimiter(")>operator(,)
+ string<delimiter(")content(()char(\\\\)content(*\))delimiter(")>operator(,)
+ string<delimiter(")content(b(\))delimiter(")>operator(,)
+ string<delimiter(")content((\))delimiter(")>operator(,)
+ string<delimiter(")content((#\))delimiter(")>operator(,)
+ string<delimiter(")content(ABCDEFGHIJK)delimiter(")>operator(,)
+ string<delimiter(")content(ABCDEFGHIJKLM)delimiter(")>operator(,)
+ string<delimiter(")content(ABCDEFGHIJKLMNOPQ)delimiter(")>operator(,)
+ string<delimiter(")content(ABCDEFGH)delimiter(")>operator(,)
+ string<delimiter(")content((.\))delimiter(")>operator(,)
+ string<delimiter(")content((|\))delimiter(")>operator(,)
+ string<delimiter(")content((\)$)delimiter(")>operator(,)
+ string<delimiter(")content(/(\))delimiter(")>operator(,)
+ string<delimiter(")content((.\)$)delimiter(")>
+ operator(])operator(;)
+
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(200)operator(;) operator(++)ident(j)operator(\)) operator({)
+ keyword(var) ident(js) operator(=) string<delimiter(")delimiter(")> operator(+) ident(j)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ string<delimiter(")delimiter(")>operator(.)ident(match)operator(()ident(a)operator([)ident(i)operator(]) operator(+) ident(js)operator(\))
+ operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testLirBufOOM)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testLirBufOOM)operator(\))operator(;)
+
+keyword(function) function(testStringResolve)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) ident(each) operator(()ident(let) ident(d) keyword(in) operator([)keyword(new) ident(String)operator(()string<delimiter(')content(q)delimiter(')>operator(\))operator(,) keyword(new) ident(String)operator(()string<delimiter(')content(q)delimiter(')>operator(\))operator(,) keyword(new) ident(String)operator(()string<delimiter(')content(q)delimiter(')>operator(\)]\)) operator({)
+ keyword(if) operator((()string<delimiter(")delimiter(")> operator(+) operator(()integer(0) keyword(in) ident(d)operator(\)\)) operator(===) string<delimiter(")content(true)delimiter(")>operator(\))
+ ident(x)operator(++;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testStringResolve)operator(.)ident(expected) operator(=) integer(3)operator(;)
+ident(test)operator(()ident(testStringResolve)operator(\))operator(;)
+
+comment(//test no multitrees assert)
+keyword(function) function(testGlobalMultitrees1)operator(()operator(\)) operator({)
+ operator(()keyword(function)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(e) keyword(in) operator([)string<delimiter(')content(A)delimiter(')>operator(,) integer(1)operator(,) string<delimiter(')content(A)delimiter(')>operator(]\)) operator({)
+ operator(})
+ operator(})
+ operator(}\))operator(()operator(\))operator(;)
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testGlobalMultitrees1)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testGlobalMultitrees1)operator(\))operator(;)
+
+keyword(var) ident(q) operator(=) operator([)operator(])operator(;)
+keyword(for) ident(each) operator(()ident(b) keyword(in) operator([)hex(0x3FFFFFFF)operator(,) hex(0x3FFFFFFF)operator(,) hex(0x3FFFFFFF)operator(]\)) operator({)
+ keyword(for) ident(each) operator(()ident(let) ident(e) keyword(in) operator([{)operator(})operator(,) operator({)operator(})operator(,) operator({)operator(})operator(,) string<delimiter(")delimiter(")>operator(,) operator({)operator(}]\)) operator({)
+ ident(b) operator(=) operator(()ident(b) operator(|) hex(0x40000000)operator(\)) operator(+) integer(1)operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(b)operator(\))operator(;)
+ operator(})
+operator(})
+keyword(function) function(testLetWithUnstableGlobal)operator(()operator(\)) operator({)
+ keyword(return) ident(q)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testLetWithUnstableGlobal)operator(.)ident(expected) operator(=) string<delimiter(")content(2147483648,-1073741823,-1073741822,-1073741821,-1073741820,2147483648,-1073741823,-1073741822,-1073741821,-1073741820,2147483648,-1073741823,-1073741822,-1073741821,-1073741820)delimiter(")>operator(;)
+ident(test)operator(()ident(testLetWithUnstableGlobal)operator(\))operator(;)
+keyword(delete) ident(b)operator(;)
+keyword(delete) ident(q)operator(;)
+
+keyword(for) ident(each) operator(()ident(testBug474769_b) keyword(in) operator([)integer(1)operator(,) integer(1)operator(,) integer(1)operator(,) float(1.5)operator(,) integer(1)operator(,) integer(1)operator(]\)) operator({)
+ operator(()keyword(function)operator(()operator(\)) operator({) keyword(for) ident(each) operator(()ident(let) ident(testBug474769_h) keyword(in) operator([)integer(0)operator(,) integer(0)operator(,) float(1.4)operator(,) string<delimiter(")delimiter(")>operator(]\)) operator({)operator(}) operator(}\))operator(()operator(\))
+operator(})
+keyword(function) function(testBug474769)operator(()operator(\)) operator({)
+ keyword(return) ident(testBug474769_b)operator(;)
+operator(})
+ident(testBug474769)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testBug474769)operator(\))operator(;)
+
+keyword(function) function(testReverseArgTypes)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) string<delimiter(')delimiter(')>operator(.)ident(replace)operator(()string<delimiter(')delimiter(')>operator(,) regexp<delimiter(/)content(x)delimiter(/)>operator(\))operator(;)
+ keyword(return) integer(1)operator(;)
+operator(})
+ident(testReverseArgTypes)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testReverseArgTypes)operator(\))operator(;)
+
+keyword(function) function(testBug458838)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) integer(1)operator(;)
+ keyword(function) function(g)operator(()operator(\)) operator({)
+ keyword(var) ident(b) operator(=) integer(0)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(b) operator(+=) ident(a)operator(;)
+ operator(})
+ keyword(return) ident(b)operator(;)
+ operator(})
+
+ keyword(return) ident(g)operator(()operator(\))operator(;)
+operator(})
+ident(testBug458838)operator(.)ident(expected) operator(=) integer(10)operator(;)
+ident(testBug458838)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testBug458838)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry)operator(()operator(\)) operator({)
+ local_variable(this)operator(.)ident(__defineSetter__)operator(()string<delimiter(')content(x)delimiter(')>operator(,) keyword(function)operator(()operator(\))operator({)operator(}\))
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) operator(++)ident(j)operator(\)) operator({) ident(x) operator(=) integer(3)operator(;) operator(})
+ keyword(return) integer(1)operator(;)
+operator(})
+ident(testInterpreterReentry)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testInterpreterReentry)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry2)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) pre_constant(false)operator(;)
+ keyword(var) ident(b) operator(=) operator({)operator(})operator(;)
+ keyword(var) ident(c) operator(=) pre_constant(false)operator(;)
+ keyword(var) ident(d) operator(=) operator({)operator(})operator(;)
+ local_variable(this)operator(.)ident(__defineGetter__)operator(()string<delimiter(')content(e)delimiter(')>operator(,) keyword(function)operator(()operator(\))operator({)operator(}\))operator(;)
+ keyword(for) operator(()ident(let) ident(f) keyword(in) local_variable(this)operator(\)) ident(print)operator(()ident(f)operator(\))operator(;)
+ operator([)integer(1) keyword(for) ident(each) operator(()ident(g) keyword(in) local_variable(this)operator(\)) keyword(for) ident(each) operator(()ident(h) keyword(in) operator([)operator(]\)])
+ keyword(return) integer(1)operator(;)
+operator(})
+ident(testInterpreterReentry2)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testInterpreterReentry2)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry3)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(i)operator(=)integer(0)operator(;)ident(i)operator(<)integer(5)operator(;++)ident(i)operator(\)) local_variable(this)operator([)string<delimiter(")content(y)delimiter(")> operator(+) ident(i)operator(]) operator(=) keyword(function)operator(()operator(\))operator({)operator(})operator(;)
+ local_variable(this)operator(.)ident(__defineGetter__)operator(()string<delimiter(')content(e)delimiter(')>operator(,) keyword(function) operator(()ident(x2)operator(\)) operator({) ident(yield)operator(;) operator(}\))operator(;)
+ operator([)integer(1) keyword(for) ident(each) operator(()ident(a) keyword(in) local_variable(this)operator(\)) keyword(for) operator(()ident(b) keyword(in) operator({)operator(}\)])operator(;)
+ keyword(return) integer(1)operator(;)
+operator(})
+ident(testInterpreterReentry3)operator(.)ident(expected) operator(=) integer(1)operator(;)
+ident(test)operator(()ident(testInterpreterReentry3)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry4)operator(()operator(\)) operator({)
+ keyword(var) ident(obj) operator(=) operator({)key(a)operator(:)integer(1)operator(,) key(b)operator(:)integer(1)operator(,) key(c)operator(:)integer(1)operator(,) key(d)operator(:)integer(1)operator(,) ident(get) ident(e)operator(()operator(\)) integer(1000) operator(})operator(;)
+ keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(obj)operator(\))
+ ident(obj)operator([)ident(p)operator(])operator(;)
+operator(})
+ident(test)operator(()ident(testInterpreterReentry4)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry5)operator(()operator(\)) operator({)
+ keyword(var) ident(arr) operator(=) operator([)integer(0)operator(,) integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(])operator(;)
+ ident(arr)operator(.)ident(__defineGetter__)operator(()string<delimiter(")content(4)delimiter(")>operator(,) keyword(function)operator(()operator(\)) integer(1000)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(arr)operator([)ident(i)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(arr)operator(\))
+ ident(arr)operator([)ident(p)operator(])operator(;)
+operator(})
+ident(test)operator(()ident(testInterpreterReentry5)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry6)operator(()operator(\)) operator({)
+ keyword(var) ident(obj) operator(=) operator({)key(a)operator(:)integer(1)operator(,) key(b)operator(:)integer(1)operator(,) key(c)operator(:)integer(1)operator(,) key(d)operator(:)integer(1)operator(,) ident(set) ident(e)operator(()ident(x)operator(\)) operator({) local_variable(this)operator(.)ident(_e) operator(=) ident(x)operator(;) operator(}})operator(;)
+ keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(obj)operator(\))
+ ident(obj)operator([)ident(p)operator(]) operator(=) string<delimiter(")content(grue)delimiter(")>operator(;)
+ keyword(return) ident(obj)operator(.)ident(_e)operator(;)
+operator(})
+ident(testInterpreterReentry6)operator(.)ident(expected) operator(=) string<delimiter(")content(grue)delimiter(")>operator(;)
+ident(test)operator(()ident(testInterpreterReentry6)operator(\))operator(;)
+
+keyword(function) function(testInterpreterReentry7)operator(()operator(\)) operator({)
+ keyword(var) ident(arr) operator(=) operator([)integer(0)operator(,) integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(])operator(;)
+ ident(arr)operator(.)ident(__defineSetter__)operator(()string<delimiter(")content(4)delimiter(")>operator(,) keyword(function)operator(()ident(x)operator(\)) operator({) local_variable(this)operator(.)ident(_4) operator(=) ident(x)operator(;) operator(}\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(arr)operator([)ident(i)operator(]) operator(=) string<delimiter(")content(grue)delimiter(")>operator(;)
+ keyword(var) ident(tmp) operator(=) ident(arr)operator(.)ident(_4)operator(;)
+ keyword(for) operator(()keyword(var) ident(p) keyword(in) ident(arr)operator(\))
+ ident(arr)operator([)ident(p)operator(]) operator(=) string<delimiter(")content(bleen)delimiter(")>operator(;)
+ keyword(return) ident(tmp) operator(+) string<delimiter(")content( )delimiter(")> operator(+) ident(arr)operator(.)ident(_4)operator(;)
+operator(})
+ident(testInterpreterReentry7)operator(.)ident(expected) operator(=) string<delimiter(")content(grue bleen)delimiter(")>operator(;)
+ident(test)operator(()ident(testInterpreterReentry7)operator(\))operator(;)
+
+comment(// Bug 462027 comment 54.)
+keyword(function) function(testInterpreterReentery8)operator(()operator(\)) operator({)
+ keyword(var) ident(e) operator(=) tag(<x>)tag(<y)tag(/>)tag(</x>)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({) operator(+[)ident(e)operator(])operator(;) operator(})
+operator(})
+ident(test)operator(()ident(testInterpreterReentery8)operator(\))operator(;)
+
+keyword(function) function(testHolePushing)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)string<delimiter(")content(foobar)delimiter(")>operator(,) string<delimiter(")content(baz)delimiter(")>operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(=) operator([,) string<delimiter(")content(overwritten)delimiter(")>operator(,) string<delimiter(")content(new)delimiter(")>operator(])operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(")content([)delimiter(")>operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(s) operator(+=) operator(()ident(i) keyword(in) ident(a)operator(\)) operator(?) ident(a)operator([)ident(i)operator(]) operator(:) string<delimiter(")content(<hole>)delimiter(")>operator(;)
+ keyword(if) operator(()ident(i) operator(!=) ident(a)operator(.)ident(length) operator(-) integer(1)operator(\))
+ ident(s) operator(+=) string<delimiter(")content(,)delimiter(")>operator(;)
+ operator(})
+ keyword(return) ident(s) operator(+) string<delimiter(")content(], )delimiter(")> operator(+) operator(()integer(0) keyword(in) ident(a)operator(\))operator(;)
+operator(})
+ident(testHolePushing)operator(.)ident(expected) operator(=) string<delimiter(")content([<hole>,overwritten,new], false)delimiter(")>operator(;)
+ident(test)operator(()ident(testHolePushing)operator(\))operator(;)
+
+keyword(function) function(testDeepBail1)operator(()operator(\)) operator({)
+ keyword(var) ident(y) operator(=) tag(<z)tag(/>)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP)operator(;) ident(i)operator(++)operator(\))
+ string<delimiter(")delimiter(")> keyword(in) ident(y)operator(;)
+operator(})
+ident(test)operator(()ident(testDeepBail1)operator(\))operator(;)
+
+comment(/* Array comprehension tests */)
+
+keyword(function) function(Range)operator(()ident(start)operator(,) ident(stop)operator(\)) operator({)
+ local_variable(this)operator(.)ident(i) operator(=) ident(start)operator(;)
+ local_variable(this)operator(.)ident(stop) operator(=) ident(stop)operator(;)
+operator(})
+ident(Range)operator(.)ident(prototype) operator(=) operator({)
+ function(__iterator__)operator(:) keyword(function)operator(()operator(\)) local_variable(this)operator(,)
+ function(next)operator(:) keyword(function)operator(()operator(\)) operator({)
+ keyword(if) operator(()local_variable(this)operator(.)ident(i) operator(>=) local_variable(this)operator(.)ident(stop)operator(\))
+ keyword(throw) ident(StopIteration)operator(;)
+ keyword(return) local_variable(this)operator(.)ident(i)operator(++;)
+ operator(})
+operator(})operator(;)
+
+keyword(function) function(range)operator(()ident(start)operator(,) ident(stop)operator(\)) operator({)
+ keyword(return) keyword(new) ident(Range)operator(()ident(start)operator(,) ident(stop)operator(\))operator(;)
+operator(})
+
+keyword(function) function(testArrayComp1)operator(()operator(\)) operator({)
+ keyword(return) operator([)ident(a) keyword(for) operator(()ident(a) keyword(in) ident(range)operator(()integer(0)operator(,) integer(10)operator(\)\)])operator(.)ident(join)operator(()string<delimiter(')delimiter(')>operator(\))operator(;)
+operator(})
+ident(testArrayComp1)operator(.)ident(expected)operator(=)string<delimiter(')content(0123456789)delimiter(')>operator(;)
+ident(test)operator(()ident(testArrayComp1)operator(\))operator(;)
+
+keyword(function) function(testArrayComp2)operator(()operator(\)) operator({)
+ keyword(return) operator([)ident(a) operator(+) ident(b) keyword(for) operator(()ident(a) keyword(in) ident(range)operator(()integer(0)operator(,) integer(5)operator(\)\)) keyword(for) operator(()ident(b) keyword(in) ident(range)operator(()integer(0)operator(,) integer(5)operator(\)\)])operator(.)ident(join)operator(()string<delimiter(')delimiter(')>operator(\))operator(;)
+operator(})
+ident(testArrayComp2)operator(.)ident(expected)operator(=)string<delimiter(')content(0123412345234563456745678)delimiter(')>operator(;)
+ident(test)operator(()ident(testArrayComp2)operator(\))operator(;)
+
+keyword(function) function(testSwitchUndefined)operator(()operator(\))
+operator({)
+ keyword(var) ident(x) operator(=) pre_constant(undefined)operator(;)
+ keyword(var) ident(y) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ keyword(switch) operator(()ident(x)operator(\))
+ operator({)
+ keyword(default)operator(:)
+ ident(y)operator(++;)
+ operator(})
+ operator(})
+ keyword(return) ident(y)operator(;)
+operator(})
+ident(testSwitchUndefined)operator(.)ident(expected) operator(=) integer(5)operator(;)
+ident(test)operator(()ident(testSwitchUndefined)operator(\))operator(;)
+
+keyword(function) function(testTableSwitch1)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) string<delimiter(')content(miss)delimiter(')>operator(;)
+ keyword(var) ident(i)operator(,) ident(j) operator(=) integer(0)operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(RUNLOOP) operator(+) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(switch) operator(()ident(x)operator(\)) operator({)
+ keyword(case) integer(1)operator(:) keyword(case) integer(2)operator(:) keyword(case) integer(3)operator(:) keyword(case) integer(4)operator(:) keyword(case) integer(5)operator(:) keyword(throw) string<delimiter(")content(FAIL)delimiter(")>operator(;)
+ keyword(default)operator(:) ident(j)operator(++;)
+ operator(})
+ operator(})
+ ident(assertEq)operator(()ident(i)operator(,) ident(j)operator(\))operator(;)
+operator(})
+ident(testTableSwitch1)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testTableSwitch1)operator(\))operator(;)
+
+keyword(function) function(testTableSwitch2)operator(()operator(\)) operator({)
+ keyword(var) ident(arr) operator(=) operator([)integer(2)operator(,) integer(2)operator(,) integer(2)operator(,) integer(2)operator(,) integer(2)operator(,) integer(5)operator(,) integer(2)operator(,) integer(2)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(,) integer(5)operator(])operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(')delimiter(')>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(arr)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(switch) operator(()ident(arr)operator([)ident(i)operator(]\)) operator({)
+ keyword(case) integer(0)operator(:) keyword(case) integer(1)operator(:) keyword(case) integer(3)operator(:) keyword(case) integer(4)operator(:)
+ keyword(throw) string<delimiter(")content(FAIL)delimiter(")>operator(;)
+ keyword(case) integer(2)operator(:)
+ ident(s) operator(+=) string<delimiter(')content(2)delimiter(')>operator(;)
+ keyword(break)operator(;)
+ keyword(case) integer(5)operator(:)
+ ident(s) operator(+=) string<delimiter(')content(5)delimiter(')>operator(;)
+ operator(})
+ operator(})
+ ident(assertEq)operator(()ident(s)operator(,) ident(arr)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\)\))operator(;)
+operator(})
+ident(testTableSwitch2)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(4)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testTableSwitch2)operator(\))operator(;)
+
+keyword(function) function(testGeneratorDeepBail)operator(()operator(\)) operator({)
+ keyword(function) function(g)operator(()operator(\)) operator({) ident(yield) integer(2)operator(;) operator(})
+ keyword(var) ident(iterables) operator(=) operator([[)integer(1)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(])operator(,) ident(g)operator(()operator(\)])operator(;)
+
+ keyword(var) ident(total) operator(=) integer(0)operator(;)
+ keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(iterables)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ keyword(for) ident(each) operator(()ident(let) ident(j) keyword(in) ident(iterables)operator([)ident(i)operator(]\))
+ ident(total) operator(+=) ident(j)operator(;)
+ keyword(return) ident(total)operator(;)
+operator(})
+ident(testGeneratorDeepBail)operator(.)ident(expected) operator(=) integer(3)operator(;)
+ident(test)operator(()ident(testGeneratorDeepBail)operator(\))operator(;)
+
+keyword(function) function(testRegexpGet)operator(()operator(\)) operator({)
+ keyword(var) ident(re) operator(=) regexp<delimiter(/)content(hi)delimiter(/)>operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\))
+ ident(a)operator(.)ident(push)operator(()ident(re)operator(.)ident(source)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(testRegexpGet)operator(.)ident(expected) operator(=) string<delimiter(")content(hi,hi,hi,hi,hi)delimiter(")>operator(;)
+ident(test)operator(()ident(testRegexpGet)operator(\))operator(;)
+
+keyword(function) function(testThrowingObjectEqUndefined)operator(()operator(\))
+operator({)
+ keyword(try)
+ operator({)
+ keyword(var) ident(obj) operator(=) operator({) function(toString)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(throw) integer(0)operator(;) operator(}) operator(})operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ string<delimiter(")delimiter(")> operator(+) operator(()ident(obj) operator(==) pre_constant(undefined)operator(\))operator(;)
+ keyword(return) ident(i) operator(===) integer(5)operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ keyword(return) string<delimiter(")delimiter(")> operator(+) ident(e)operator(;)
+ operator(})
+operator(})
+ident(testThrowingObjectEqUndefined)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testThrowingObjectEqUndefined)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testThrowingObjectEqUndefined)operator(\))operator(;)
+
+keyword(function) function(x4)operator(()ident(v)operator(\)) operator({) keyword(return) string<delimiter(")delimiter(")> operator(+) ident(v) operator(+) ident(v) operator(+) ident(v) operator(+) ident(v)operator(;) operator(})
+keyword(function) function(testConvertibleObjectEqUndefined)operator(()operator(\))
+operator({)
+ keyword(var) ident(compares) operator(=)
+ operator([)
+ pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,)
+ pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,)
+ pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,)
+ pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,)
+ pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,)
+ pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,)
+ pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,)
+ pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,)
+ pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,) pre_constant(false)operator(,)
+ pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,) pre_constant(undefined)operator(,)
+ operator(])operator(;)
+ keyword(var) ident(count) operator(=) integer(0)operator(;)
+ keyword(var) ident(obj) operator(=) operator({) function(valueOf)operator(:) keyword(function)operator(()operator(\)) operator({) ident(count)operator(++;) keyword(return) integer(1)operator(;) operator(}) operator(})operator(;)
+ keyword(var) ident(results) operator(=) ident(compares)operator(.)ident(map)operator(()keyword(function)operator(()ident(v)operator(\)) operator({) keyword(return) string<delimiter(")content(unwritten)delimiter(")>operator(;) operator(}\))operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(,) ident(sz) operator(=) ident(compares)operator(.)ident(length)operator(;) ident(i) operator(<) ident(sz)operator(;) ident(i)operator(++)operator(\))
+ ident(results)operator([)ident(i)operator(]) operator(=) ident(compares)operator([)ident(i)operator(]) operator(==) ident(obj)operator(;)
+
+ keyword(return) ident(results)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\)) operator(+) ident(count)operator(;)
+operator(})
+ident(testConvertibleObjectEqUndefined)operator(.)ident(expected) operator(=)
+ ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+)
+ ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) ident(x4)operator(()pre_constant(false)operator(\)) operator(+) string<delimiter(")content(20)delimiter(")>operator(;)
+ident(testConvertibleObjectEqUndefined)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testConvertibleObjectEqUndefined)operator(\))operator(;)
+
+keyword(function) function(testUndefinedPropertyAccess)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator([)integer(1)operator(,)integer(2)operator(,)integer(3)operator(])operator(;)
+ keyword(var) ident(y) operator(=) operator({)operator(})operator(;)
+ keyword(var) ident(a) operator(=) operator({) key(foo)operator(:) integer(1) operator(})operator(;)
+ ident(y)operator(.)ident(__proto__) operator(=) ident(x)operator(;)
+ keyword(var) ident(z) operator(=) operator([)ident(x)operator(,) ident(x)operator(,) ident(x)operator(,) ident(y)operator(,) ident(y)operator(,) ident(y)operator(,) ident(y)operator(,) ident(a)operator(,) ident(a)operator(,) ident(a)operator(])operator(;)
+ keyword(var) ident(s) operator(=) string<delimiter(")delimiter(")>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(z)operator(.)ident(length)operator(;) operator(++)ident(i)operator(\))
+ ident(s) operator(+=) ident(z)operator([)ident(i)operator(])operator(.)ident(foo)operator(;)
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testUndefinedPropertyAccess)operator(.)ident(expected) operator(=) string<delimiter(")content(undefinedundefinedundefinedundefinedundefinedundefinedundefined111)delimiter(")>operator(;)
+ident(testUndefinedPropertyAccess)operator(.)ident(jitstats) operator(=) operator({)
+ key(traceCompleted)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testUndefinedPropertyAccess)operator(\))operator(;)
+
+ident(q) operator(=) string<delimiter(")delimiter(")>operator(;)
+keyword(function) function(g)operator(()operator(\)) operator({) ident(q) operator(+=) string<delimiter(")content(g)delimiter(")>operator(;) operator(})
+keyword(function) function(h)operator(()operator(\)) operator({) ident(q) operator(+=) string<delimiter(")content(h)delimiter(")>operator(;) operator(})
+ident(a) operator(=) operator([)ident(g)operator(,) ident(g)operator(,) ident(g)operator(,) ident(g)operator(,) ident(h)operator(])operator(;)
+keyword(for) operator(()ident(i)operator(=)integer(0)operator(;) ident(i)operator(<)integer(5)operator(;) ident(i)operator(++)operator(\)) operator({) ident(f) operator(=) ident(a)operator([)ident(i)operator(])operator(;) ident(f)operator(()operator(\))operator(;) operator(})
+
+keyword(function) function(testRebranding)operator(()operator(\)) operator({)
+ keyword(return) ident(q)operator(;)
+operator(})
+ident(testRebranding)operator(.)ident(expected) operator(=) string<delimiter(")content(ggggh)delimiter(")>operator(;)
+ident(test)operator(()ident(testRebranding)operator(\))operator(;)
+keyword(delete) ident(q)operator(;)
+keyword(delete) ident(g)operator(;)
+keyword(delete) ident(h)operator(;)
+keyword(delete) ident(a)operator(;)
+keyword(delete) ident(f)operator(;)
+
+keyword(function) function(testRebranding2)operator(()operator(\)) operator({)
+ comment(// Same as testRebranding, but the object to be rebranded isn't the global.)
+ keyword(var) ident(x) operator(=) string<delimiter(")content(FAIL)delimiter(")>operator(;)
+ keyword(function) function(g)operator(()operator(\))operator({)operator(})
+ keyword(function) function(h)operator(()operator(\))operator({) ident(x) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;) operator(})
+ keyword(var) ident(obj) operator(=) operator({)key(m)operator(:) ident(g)operator(})operator(;)
+ keyword(var) ident(arr) operator(=) operator([)ident(g)operator(,) ident(g)operator(,) ident(g)operator(,) ident(g)operator(,) ident(h)operator(])operator(;)
+ ident(assertEq)operator(()ident(arr)operator(.)ident(length) operator(>) ident(RUNLOOP)operator(,) pre_constant(true)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(obj)operator(.)ident(m) operator(=) ident(arr)operator([)ident(i)operator(])operator(;)
+ ident(obj)operator(.)ident(m)operator(()operator(\))operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testRebranding2)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testRebranding2)operator(\))operator(;)
+
+keyword(function) function(testBug502914)operator(()operator(\)) operator({)
+ comment(// Assigning a non-function to a function-valued property on trace should)
+ comment(// bump the shape.)
+ keyword(function) function(f1)operator(()operator(\)) operator({)operator(})
+ keyword(function) function(C)operator(()operator(\)) operator({)operator(})
+ keyword(var) ident(x) operator(=) ident(C)operator(.)ident(prototype) operator(=) operator({)key(m)operator(:) ident(f1)operator(})operator(;)
+ ident(x)operator(.)ident(m)operator(()operator(\))operator(;) comment(// brand scope)
+ keyword(var) ident(arr) operator(=) operator([)keyword(new) ident(C)operator(,) keyword(new) ident(C)operator(,) keyword(new) ident(C)operator(,) ident(x)operator(])operator(;)
+ keyword(try) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(arr)operator([)ident(i)operator(])operator(.)ident(m) operator(=) integer(12)operator(;)
+ ident(x)operator(.)ident(m)operator(()operator(\))operator(;) comment(// should throw last time through)
+ operator(})
+ operator(}) keyword(catch) operator(()ident(exc)operator(\)) operator({)
+ keyword(return) ident(exc)operator(.)ident(constructor)operator(.)ident(name)operator(;)
+ operator(})
+ keyword(return) string<delimiter(")content(no exception)delimiter(")>operator(;)
+operator(})
+ident(testBug502914)operator(.)ident(expected) operator(=) string<delimiter(")content(TypeError)delimiter(")>operator(;)
+ident(test)operator(()ident(testBug502914)operator(\))operator(;)
+
+keyword(function) function(testLambdaCtor)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(x) operator(=) integer(0)operator(;) ident(x) operator(<) ident(RUNLOOP)operator(;) operator(++)ident(x)operator(\)) operator({)
+ keyword(var) function(f) operator(=) keyword(function)operator(()operator(\))operator({)operator(})operator(;)
+ ident(a)operator([)ident(a)operator(.)ident(length)operator(]) operator(=) keyword(new) ident(f)operator(;)
+ operator(})
+
+ comment(// This prints false until the upvar2 bug is fixed:)
+ comment(// print(a[HOTLOOP].__proto__ !== a[HOTLOOP-1].__proto__\);)
+
+ comment(// Assert that the last f was properly constructed.)
+ keyword(return) ident(a)operator([)ident(RUNLOOP)operator(-)integer(1)operator(])operator(.)ident(__proto__) operator(===) ident(f)operator(.)ident(prototype)operator(;)
+operator(})
+ident(testLambdaCtor)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testLambdaCtor)operator(\))operator(;)
+
+keyword(function) function(testNonStubGetter)operator(()operator(\)) operator({)
+ ident(let) operator(([)operator(]) operator(=) pre_constant(false)operator(\)) operator({) operator(()local_variable(this)operator(.)ident(watch)operator(()string<delimiter(")content(x)delimiter(")>operator(,) regexp<delimiter(/)content(a)delimiter(/)modifier(g)>operator(\)\))operator(;) operator(})operator(;)
+ operator(()keyword(function) operator(()operator(\)) operator({) operator(()ident(eval)operator(()string<delimiter(")content((function(\){for each (x in [1, 2, 2]\);}\);)delimiter(")>operator(\)\))operator(()operator(\))operator(;) operator(}\))operator(()operator(\))operator(;)
+ local_variable(this)operator(.)ident(unwatch)operator(()string<delimiter(")content(x)delimiter(")>operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testNonStubGetter)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testNonStubGetter)operator(\))operator(;)
+
+keyword(function) function(testString)operator(()operator(\)) operator({)
+ keyword(var) ident(q)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<=) ident(RUNLOOP)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(q) operator(=) operator([)operator(])operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(()keyword(void) integer(0)operator(\)\))operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(()pre_constant(true)operator(\)\))operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(()integer(5)operator(\)\))operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(()float(5.5)operator(\)\))operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(()string<delimiter(")content(5)delimiter(")>operator(\)\))operator(;)
+ ident(q)operator(.)ident(push)operator(()ident(String)operator(([)integer(5)operator(]\)\))operator(;)
+ operator(})
+ keyword(return) ident(q)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testString)operator(.)ident(expected) operator(=) string<delimiter(")content(undefined,true,5,5.5,5,5)delimiter(")>operator(;)
+ident(testString)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testString)operator(\))operator(;)
+
+keyword(function) function(testToStringBeforeValueOf)operator(()operator(\))
+operator({)
+ keyword(var) ident(o) operator(=) operator({)function(toString)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(s)delimiter(")>operator(;) operator(})operator(,) function(valueOf)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(v)delimiter(")>operator(;) operator(}) operator(})operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator(.)ident(push)operator(()ident(String)operator(()ident(o)operator(\)\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testToStringBeforeValueOf)operator(.)ident(expected) operator(=) string<delimiter(")content(s,s,s,s,s,s,s,s,s,s)delimiter(")>operator(;)
+ident(testToStringBeforeValueOf)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testToStringBeforeValueOf)operator(\))operator(;)
+
+keyword(function) function(testNullToString)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator(.)ident(push)operator(()ident(String)operator(()pre_constant(null)operator(\)\))operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(var) ident(t) operator(=) keyword(typeof) ident(a)operator([)ident(i)operator(])operator(;)
+ keyword(if) operator(()ident(t) operator(!=) string<delimiter(")content(string)delimiter(")>operator(\))
+ ident(a)operator(.)ident(push)operator(()ident(t)operator(\))operator(;)
+ operator(})
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testNullToString)operator(.)ident(expected) operator(=) string<delimiter(")content(null,null,null,null,null,null,null,null,null,null)delimiter(")>operator(;)
+ident(testNullToString)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(2)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(2)operator(,)
+ key(recorderAborted)operator(:) integer(0)
+operator(})operator(;)
+ident(test)operator(()ident(testNullToString)operator(\))operator(;)
+
+keyword(function) function(testAddNull)operator(()operator(\))
+operator({)
+ keyword(var) ident(rv)operator(;)
+ keyword(for) operator(()keyword(var) ident(x) operator(=) integer(0)operator(;) ident(x) operator(<) ident(HOTLOOP) operator(+) integer(1)operator(;) operator(++)ident(x)operator(\))
+ ident(rv) operator(=) pre_constant(null) operator(+) operator([,,)operator(])operator(;)
+ keyword(return) ident(rv)operator(;)
+operator(})
+ident(testAddNull)operator(.)ident(expected) operator(=) string<delimiter(")content(null,)delimiter(")>operator(;)
+ident(testAddNull)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)
+operator(})operator(;)
+ident(test)operator(()ident(testAddNull)operator(\))operator(;)
+
+keyword(function) function(testClosures)operator(()operator(\))
+operator({)
+ keyword(function) function(MyObject)operator(()ident(id)operator(\)) operator({)
+ keyword(var) ident(thisObject) operator(=) local_variable(this)operator(;)
+ local_variable(this)operator(.)ident(id) operator(=) ident(id)operator(;)
+ local_variable(this)operator(.)ident(toString) operator(=) ident(str)operator(;)
+
+ keyword(function) function(str)operator(()operator(\)) operator({)
+ keyword(return) string<delimiter(")delimiter(")> operator(+) local_variable(this)operator(.)ident(id) operator(+) ident(thisObject)operator(.)ident(id)operator(;)
+ operator(})
+ operator(})
+
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator(.)ident(push)operator(()keyword(new) ident(MyObject)operator(()ident(i)operator(\)\))operator(;)
+ keyword(return) ident(a)operator(.)ident(toString)operator(()operator(\))operator(;)
+operator(})
+ident(testClosures)operator(.)ident(expected) operator(=) string<delimiter(")content(00,11,22,33,44)delimiter(")>operator(;)
+ident(test)operator(()ident(testClosures)operator(\))operator(;)
+
+keyword(function) function(testMoreClosures)operator(()operator(\)) operator({)
+ keyword(var) ident(f) operator(=) operator({)operator(})operator(,) ident(max) operator(=) integer(3)operator(;)
+
+ keyword(var) function(hello) operator(=) keyword(function)operator(()ident(n)operator(\)) operator({)
+ keyword(function) function(howdy)operator(()operator(\)) operator({) keyword(return) ident(n) operator(*) ident(n) operator(})
+ ident(f)operator(.)ident(test) operator(=) ident(howdy)operator(;)
+ operator(})operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<=) ident(max)operator(;) ident(i)operator(++)operator(\))
+ ident(hello)operator(()ident(i)operator(\))operator(;)
+
+ keyword(return) ident(f)operator(.)ident(test)operator(()operator(\))operator(;)
+operator(})
+ident(testMoreClosures)operator(.)ident(expected) operator(=) integer(9)operator(;)
+ident(test)operator(()ident(testMoreClosures)operator(\))operator(;)
+
+keyword(function) function(testLambdaInitedVar)operator(()operator(\)) operator({)
+ keyword(var) function(jQuery) operator(=) keyword(function) operator(()ident(a)operator(,) ident(b)operator(\)) operator({)
+ keyword(return) ident(jQuery) operator(&&) ident(jQuery)operator(.)ident(length)operator(;)
+ operator(})
+ keyword(return) ident(jQuery)operator(()operator(\))operator(;)
+operator(})
+
+ident(testLambdaInitedVar)operator(.)ident(expected) operator(=) integer(2)operator(;)
+ident(test)operator(()ident(testLambdaInitedVar)operator(\))operator(;)
+
+keyword(function) function(testNestedEscapingLambdas)operator(()operator(\))
+operator({)
+ keyword(try) operator({)
+ keyword(return) operator(()keyword(function)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(,) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(function) function(setTimeout)operator(()ident(f)operator(,) ident(t)operator(\)) operator({)
+ ident(a)operator(.)ident(push)operator(()ident(f)operator(\))operator(;)
+ operator(})
+
+ keyword(function) function(runTimeouts)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator([)ident(i)operator(])operator(()operator(\))operator(;)
+ operator(})
+
+ keyword(var) predefined($foo) operator(=) string<delimiter(")content(#nothiddendiv)delimiter(")>operator(;)
+ ident(setTimeout)operator(()keyword(function)operator(()operator(\))operator({)
+ ident(r)operator(.)ident(push)operator(()predefined($foo)operator(\))operator(;)
+ ident(setTimeout)operator(()keyword(function)operator(()operator(\))operator({)
+ ident(r)operator(.)ident(push)operator(()predefined($foo)operator(\))operator(;)
+ operator(})operator(,) integer(100)operator(\))operator(;)
+ operator(})operator(,) integer(100)operator(\))operator(;)
+
+ ident(runTimeouts)operator(()operator(\))operator(;)
+
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+ operator(}\))operator(()operator(\))operator(;)
+ operator(}) keyword(catch) operator(()ident(e)operator(\)) operator({)
+ keyword(return) ident(e)operator(;)
+ operator(})
+operator(})
+ident(testNestedEscapingLambdas)operator(.)ident(expected) operator(=) string<delimiter(")content(#nothiddendiv#nothiddendiv)delimiter(")>operator(;)
+ident(test)operator(()ident(testNestedEscapingLambdas)operator(\))operator(;)
+
+keyword(function) function(testPropagatedFunArgs)operator(()operator(\))
+operator({)
+ keyword(var) ident(win) operator(=) local_variable(this)operator(;)
+ keyword(var) ident(res) operator(=) operator([)operator(])operator(,) ident(q) operator(=) operator([)operator(])operator(;)
+ keyword(function) function(addEventListener)operator(()ident(name)operator(,) ident(func)operator(,) ident(flag)operator(\)) operator({)
+ ident(q)operator(.)ident(push)operator(()ident(func)operator(\))operator(;)
+ operator(})
+
+ keyword(var) ident(pageInfo)operator(,) ident(obs)operator(;)
+ ident(addEventListener)operator(()string<delimiter(")content(load)delimiter(")>operator(,) ident(handleLoad)operator(,) pre_constant(true)operator(\))operator(;)
+
+ keyword(var) ident(observer) operator(=) operator({)
+ function(observe)operator(:) keyword(function)operator(()ident(win)operator(,) ident(topic)operator(,) ident(data)operator(\)) operator({)
+ comment(// obs.removeObserver(observer, "page-info-dialog-loaded"\);)
+ ident(handlePageInfo)operator(()operator(\))operator(;)
+ operator(})
+ operator(})operator(;)
+
+ keyword(function) function(handleLoad)operator(()operator(\)) operator({)
+ ident(pageInfo) operator(=) operator({) function(toString)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(pageInfo)delimiter(")>operator(;) operator(}) operator(})operator(;)
+ ident(obs) operator(=) operator({) function(addObserver)operator(:) keyword(function) operator(()ident(obs)operator(,) ident(topic)operator(,) ident(data)operator(\)) operator({) ident(obs)operator(.)ident(observe)operator(()ident(win)operator(,) ident(topic)operator(,) ident(data)operator(\))operator(;) operator(}) operator(})operator(;)
+ ident(obs)operator(.)ident(addObserver)operator(()ident(observer)operator(,) string<delimiter(")content(page-info-dialog-loaded)delimiter(")>operator(,) pre_constant(false)operator(\))operator(;)
+ operator(})
+
+ keyword(function) function(handlePageInfo)operator(()operator(\)) operator({)
+ ident(res)operator(.)ident(push)operator(()ident(pageInfo)operator(\))operator(;)
+ keyword(function) predefined($)operator(()ident(aId)operator(\)) operator({) ident(res)operator(.)ident(push)operator(()ident(pageInfo)operator(\))operator(;) operator(})operator(;)
+ keyword(var) ident(feedTab) operator(=) predefined($)operator(()string<delimiter(")content(feedTab)delimiter(")>operator(\))operator(;)
+ operator(})
+
+ ident(q)operator([)integer(0)operator(])operator(()operator(\))operator(;)
+ keyword(return) ident(res)operator(.)ident(join)operator(()string<delimiter(')content(,)delimiter(')>operator(\))operator(;)
+operator(})
+ident(testPropagatedFunArgs)operator(.)ident(expected) operator(=) string<delimiter(")content(pageInfo,pageInfo)delimiter(")>operator(;)
+ident(test)operator(()ident(testPropagatedFunArgs)operator(\))operator(;)
+
+comment(// Second testPropagatedFunArgs test -- this is a crash-test.)
+operator(()keyword(function) operator(()operator(\)) operator({)
+ keyword(var) ident(escapee)operator(;)
+
+ keyword(function) function(testPropagatedFunArgs)operator(()operator(\))
+ operator({)
+ ident(const) ident(magic) operator(=) integer(42)operator(;)
+
+ keyword(var) ident(win) operator(=) local_variable(this)operator(;)
+ keyword(var) ident(res) operator(=) operator([)operator(])operator(,) ident(q) operator(=) operator([)operator(])operator(;)
+ keyword(function) function(addEventListener)operator(()ident(name)operator(,) ident(func)operator(,) ident(flag)operator(\)) operator({)
+ ident(q)operator(.)ident(push)operator(()ident(func)operator(\))operator(;)
+ operator(})
+
+ keyword(var) ident(pageInfo) operator(=) string<delimiter(")content(pageInfo)delimiter(")>operator(,) ident(obs)operator(;)
+ ident(addEventListener)operator(()string<delimiter(")content(load)delimiter(")>operator(,) ident(handleLoad)operator(,) pre_constant(true)operator(\))operator(;)
+
+ keyword(var) ident(observer) operator(=) operator({)
+ function(observe)operator(:) keyword(function)operator(()ident(win)operator(,) ident(topic)operator(,) ident(data)operator(\)) operator({)
+ comment(// obs.removeObserver(observer, "page-info-dialog-loaded"\);)
+ ident(handlePageInfo)operator(()operator(\))operator(;)
+ operator(})
+ operator(})operator(;)
+
+ keyword(function) function(handleLoad)operator(()operator(\)) operator({)
+ comment(//pageInfo = { toString: function(\) { return "pageInfo"; } };)
+ ident(obs) operator(=) operator({) function(addObserver)operator(:) keyword(function) operator(()ident(obs)operator(,) ident(topic)operator(,) ident(data)operator(\)) operator({) ident(obs)operator(.)ident(observe)operator(()ident(win)operator(,) ident(topic)operator(,) ident(data)operator(\))operator(;) operator(}) operator(})operator(;)
+ ident(obs)operator(.)ident(addObserver)operator(()ident(observer)operator(,) string<delimiter(")content(page-info-dialog-loaded)delimiter(")>operator(,) pre_constant(false)operator(\))operator(;)
+ operator(})
+
+ keyword(function) function(handlePageInfo)operator(()operator(\)) operator({)
+ ident(res)operator(.)ident(push)operator(()ident(pageInfo)operator(\))operator(;)
+ keyword(function) predefined($)operator(()ident(aId)operator(\)) operator({)
+ keyword(function) function(notSafe)operator(()operator(\)) operator({)
+ keyword(return) ident(magic)operator(;)
+ operator(})
+ ident(notSafe)operator(()operator(\))operator(;)
+ ident(res)operator(.)ident(push)operator(()ident(pageInfo)operator(\))operator(;)
+ operator(})operator(;)
+ keyword(var) ident(feedTab) operator(=) predefined($)operator(()string<delimiter(")content(feedTab)delimiter(")>operator(\))operator(;)
+ operator(})
+
+ ident(escapee) operator(=) ident(q)operator([)integer(0)operator(])operator(;)
+ keyword(return) ident(res)operator(.)ident(join)operator(()string<delimiter(')content(,)delimiter(')>operator(\))operator(;)
+ operator(})
+
+ ident(testPropagatedFunArgs)operator(()operator(\))operator(;)
+
+ ident(escapee)operator(()operator(\))operator(;)
+operator(}\))operator(()operator(\))operator(;)
+
+keyword(function) function(testStringLengthNoTinyId)operator(()operator(\))
+operator({)
+ keyword(var) ident(x) operator(=) string<delimiter(")content(unset)delimiter(")>operator(;)
+ keyword(var) ident(t) operator(=) keyword(new) ident(String)operator(()string<delimiter(")delimiter(")>operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(x) operator(=) ident(t)operator([)string<delimiter(")content(-1)delimiter(")>operator(])operator(;)
+
+ keyword(var) ident(r) operator(=) string<delimiter(")content(t['-1'] is )delimiter(")> operator(+) ident(x)operator(;)
+ ident(t)operator([)string<delimiter(")content(-1)delimiter(")>operator(]) operator(=) string<delimiter(")content(foo)delimiter(")>operator(;)
+ ident(r) operator(+=) string<delimiter(")content( when unset, ')delimiter(")> operator(+) ident(t)operator([)string<delimiter(")content(-1)delimiter(")>operator(]) operator(+) string<delimiter(")content(' when set)delimiter(")>operator(;)
+ keyword(return) ident(r)operator(;)
+operator(})
+ident(testStringLengthNoTinyId)operator(.)ident(expected) operator(=) string<delimiter(")content(t['-1'] is undefined when unset, 'foo' when set)delimiter(")>operator(;)
+ident(test)operator(()ident(testStringLengthNoTinyId)operator(\))operator(;)
+
+keyword(function) function(testLengthInString)operator(()operator(\))
+operator({)
+ keyword(var) ident(s) operator(=) keyword(new) ident(String)operator(()operator(\))operator(;)
+ keyword(var) ident(res) operator(=) string<delimiter(")content(length)delimiter(")> keyword(in) ident(s)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(res) operator(=) ident(res) operator(&&) operator(()string<delimiter(")content(length)delimiter(")> keyword(in) ident(s)operator(\))operator(;)
+ ident(res) operator(=) ident(res) operator(&&) ident(s)operator(.)ident(hasOwnProperty)operator(()string<delimiter(")content(length)delimiter(")>operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(res) operator(=) ident(res) operator(&&) ident(s)operator(.)ident(hasOwnProperty)operator(()string<delimiter(")content(length)delimiter(")>operator(\))operator(;)
+ keyword(return) ident(res)operator(;)
+operator(})
+ident(testLengthInString)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testLengthInString)operator(\))operator(;)
+
+keyword(function) function(testSlowArrayLength)operator(()operator(\))
+operator({)
+ keyword(var) ident(counter) operator(=) integer(0)operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ ident(a)operator([)integer(10000000) operator(-) integer(1)operator(]) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(counter)operator(++;)
+ keyword(return) ident(counter)operator(;)
+operator(})
+ident(testSlowArrayLength)operator(.)ident(expected) operator(=) integer(10000000)operator(;)
+ident(testSlowArrayLength)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testSlowArrayLength)operator(\))operator(;)
+
+keyword(function) function(testObjectLength)operator(()operator(\))
+operator({)
+ keyword(var) ident(counter) operator(=) integer(0)operator(;)
+ keyword(var) ident(a) operator(=) operator({)operator(})operator(;)
+ ident(a)operator(.)ident(length) operator(=) integer(10000000)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(counter)operator(++;)
+ keyword(return) ident(counter)operator(;)
+operator(})
+ident(testObjectLength)operator(.)ident(expected) operator(=) integer(10000000)operator(;)
+ident(testObjectLength)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testObjectLength)operator(\))operator(;)
+
+keyword(function) function(testChangingObjectWithLength)operator(()operator(\))
+operator({)
+ keyword(var) ident(obj) operator(=) operator({) key(length)operator(:) integer(10) operator(})operator(;)
+ keyword(var) ident(dense) operator(=) operator([)integer(0)operator(,) integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(,) integer(5)operator(,) integer(6)operator(,) integer(7)operator(,) integer(8)operator(,) integer(9)operator(])operator(;)
+ keyword(var) ident(slow) operator(=) operator([)integer(0)operator(,) integer(1)operator(,) integer(2)operator(,) integer(3)operator(,) integer(4)operator(,) integer(5)operator(,) integer(6)operator(,) integer(7)operator(,) integer(8)operator(,) integer(9)operator(])operator(;) ident(slow)operator(.)ident(slow) operator(=) integer(5)operator(;)
+
+ comment(/*
+ * The elements of objs constitute a De Bruijn sequence repeated 4x to trace
+ * and run native code for every object and transition.
+ */)
+ keyword(var) ident(objs) operator(=) operator([)ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,)
+ ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,)
+ ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,)
+ ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,)
+ ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,)
+ ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,)
+ ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,) ident(dense)operator(,)
+ ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,)
+ ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,) ident(slow)operator(,)
+ ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(,) ident(obj)operator(])operator(;)
+
+ keyword(var) ident(counter) operator(=) integer(0)operator(;)
+
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(,) ident(sz) operator(=) ident(objs)operator(.)ident(length)operator(;) ident(i) operator(<) ident(sz)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ keyword(var) ident(o) operator(=) ident(objs)operator([)ident(i)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(o)operator(.)ident(length)operator(;) ident(j)operator(++)operator(\))
+ ident(counter)operator(++;)
+ operator(})
+
+ keyword(return) ident(counter)operator(;)
+operator(})
+ident(testChangingObjectWithLength)operator(.)ident(expected) operator(=) integer(400)operator(;)
+ident(testChangingObjectWithLength)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(15) comment(// empirically determined)
+operator(})operator(;)
+ident(test)operator(()ident(testChangingObjectWithLength)operator(\))operator(;)
+
+keyword(function) function(testNEWINIT)operator(()operator(\))
+operator({)
+ keyword(var) ident(a)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(a) operator(=) operator([{)operator(}])operator(;)
+ keyword(return) ident(uneval)operator(()ident(a)operator(\))operator(;)
+operator(})
+ident(testNEWINIT)operator(.)ident(expected) operator(=) string<delimiter(")content([{}])delimiter(")>operator(;)
+ident(test)operator(()ident(testNEWINIT)operator(\))operator(;)
+
+keyword(function) function(testNEWINIT_DOUBLE)operator(()operator(\))
+operator({)
+ keyword(for) operator(()keyword(var) ident(z) operator(=) integer(0)operator(;) ident(z) operator(<) integer(2)operator(;) operator(++)ident(z)operator(\)) operator({) operator(({) float(0.1)operator(:) pre_constant(null) operator(}\)})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testNEWINIT_DOUBLE)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testNEWINIT_DOUBLE)operator(\))operator(;)
+
+keyword(function) function(testIntOverflow)operator(()operator(\)) operator({)
+ comment(// int32_max - 7)
+ keyword(var) ident(ival) operator(=) integer(2147483647) operator(-) integer(7)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(30)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(ival) operator(+=) integer(2)operator(;)
+ operator(})
+ keyword(return) operator(()ident(ival) operator(<) integer(2147483647)operator(\))operator(;)
+operator(})
+ident(testIntOverflow)operator(.)ident(expected) operator(=) pre_constant(false)operator(;)
+ident(testIntOverflow)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(2)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(2)operator(,)
+ key(traceTriggered)operator(:) integer(2)operator(,)
+operator(})operator(;)
+ident(test)operator(()ident(testIntOverflow)operator(\))operator(;)
+
+keyword(function) function(testIntUnderflow)operator(()operator(\)) operator({)
+ comment(// int32_min + 8)
+ keyword(var) ident(ival) operator(=) operator(-)integer(2147483648) operator(+) integer(8)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(30)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(ival) operator(-=) integer(2)operator(;)
+ operator(})
+ keyword(return) operator(()ident(ival) operator(>) operator(-)integer(2147483648)operator(\))operator(;)
+operator(})
+ident(testIntUnderflow)operator(.)ident(expected) operator(=) pre_constant(false)operator(;)
+ident(testIntUnderflow)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(2)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(2)operator(,)
+ key(traceTriggered)operator(:) integer(2)operator(,)
+operator(})operator(;)
+ident(test)operator(()ident(testIntUnderflow)operator(\))operator(;)
+
+keyword(function) function(testCALLELEM)operator(()operator(\))
+operator({)
+ keyword(function) function(f)operator(()operator(\)) operator({)
+ keyword(return) integer(5)operator(;)
+ operator(})
+
+ keyword(function) function(g)operator(()operator(\)) operator({)
+ keyword(return) integer(7)operator(;)
+ operator(})
+
+ keyword(var) ident(x) operator(=) operator([)ident(f)operator(,)ident(f)operator(,)ident(f)operator(,)ident(f)operator(,)ident(g)operator(])operator(;)
+ keyword(var) ident(y) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\))
+ ident(y) operator(=) ident(x)operator([)ident(i)operator(])operator(()operator(\))operator(;)
+ keyword(return) ident(y)operator(;)
+operator(})
+ident(testCALLELEM)operator(.)ident(expected) operator(=) integer(7)operator(;)
+ident(test)operator(()ident(testCALLELEM)operator(\))operator(;)
+
+keyword(function) function(testNewString)operator(()operator(\))
+operator({)
+ keyword(var) ident(o) operator(=) operator({) function(toString)operator(:) keyword(function)operator(()operator(\)) operator({) keyword(return) string<delimiter(")content(string)delimiter(")>operator(;) operator(}) operator(})operator(;)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()ident(o)operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()integer(3)operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()float(2.5)operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()string<delimiter(")content(string)delimiter(")>operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()pre_constant(null)operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()pre_constant(true)operator(\)\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(push)operator(()keyword(typeof) keyword(new) ident(String)operator(()pre_constant(undefined)operator(\)\))operator(;)
+ keyword(return) ident(r)operator(.)ident(length) operator(===) integer(35) operator(&&) ident(r)operator(.)ident(every)operator(()keyword(function)operator(()ident(v)operator(\)) operator({) keyword(return) ident(v) operator(===) string<delimiter(")content(object)delimiter(")>operator(;) operator(}\))operator(;)
+operator(})
+ident(testNewString)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testNewString)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(7)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceCompleted)operator(:) integer(7)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(7)
+operator(})operator(;)
+ident(test)operator(()ident(testNewString)operator(\))operator(;)
+
+keyword(function) function(testWhileObjectOrNull)operator(()operator(\))
+operator({)
+ keyword(try)
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(3)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ keyword(var) ident(o) operator(=) operator({) key(p)operator(:) operator({) key(p)operator(:) pre_constant(null) operator(}) operator(})operator(;)
+ keyword(while) operator(()ident(o)operator(.)ident(p)operator(\))
+ ident(o) operator(=) ident(o)operator(.)ident(p)operator(;)
+ operator(})
+ keyword(return) string<delimiter(")content(pass)delimiter(")>operator(;)
+ operator(})
+ keyword(catch) operator(()ident(e)operator(\))
+ operator({)
+ keyword(return) string<delimiter(")content(threw exception: )delimiter(")> operator(+) ident(e)operator(;)
+ operator(})
+operator(})
+ident(testWhileObjectOrNull)operator(.)ident(expected) operator(=) string<delimiter(")content(pass)delimiter(")>operator(;)
+ident(test)operator(()ident(testWhileObjectOrNull)operator(\))operator(;)
+
+keyword(function) function(testDenseArrayProp)operator(()operator(\))
+operator({)
+ operator([)operator(])operator(.)ident(__proto__)operator(.)ident(x) operator(=) integer(1)operator(;)
+ operator(({)operator(}\))operator(.)ident(__proto__)operator(.)ident(x) operator(=) integer(2)operator(;)
+ keyword(var) ident(a) operator(=) operator([[)operator(])operator(,[)operator(])operator(,[)operator(])operator(,({)operator(}\))operator(.)ident(__proto__)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) operator(++)ident(i)operator(\))
+ ident(uneval)operator(()ident(a)operator([)ident(i)operator(])operator(.)ident(x)operator(\))operator(;)
+ keyword(delete) operator([)operator(])operator(.)ident(__proto__)operator(.)ident(x)operator(;)
+ keyword(delete) operator(({)operator(}\))operator(.)ident(__proto__)operator(.)ident(x)operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testDenseArrayProp)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testDenseArrayProp)operator(\))operator(;)
+
+keyword(function) function(testNewWithNonNativeProto)operator(()operator(\))
+operator({)
+ keyword(function) function(f)operator(()operator(\)) operator({) operator(})
+ keyword(var) ident(a) operator(=) ident(f)operator(.)ident(prototype) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ keyword(var) ident(o) operator(=) keyword(new) ident(f)operator(()operator(\))operator(;)
+ keyword(return) ident(Object)operator(.)ident(getPrototypeOf)operator(()ident(o)operator(\)) operator(===) ident(a) operator(&&) ident(o)operator(.)ident(splice) operator(===) ident(Array)operator(.)ident(prototype)operator(.)ident(splice)operator(;)
+operator(})
+ident(testNewWithNonNativeProto)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testNewWithNonNativeProto)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testNewWithNonNativeProto)operator(\))operator(;)
+
+keyword(function) function(testLengthOnNonNativeProto)operator(()operator(\))
+operator({)
+ keyword(var) ident(o) operator(=) operator({)operator(})operator(;)
+ ident(o)operator(.)ident(__proto__) operator(=) operator([)integer(3)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) ident(j)operator(++)operator(\))
+ ident(o)operator([)integer(0)operator(])operator(;)
+
+ keyword(var) ident(o2) operator(=) operator({)operator(})operator(;)
+ ident(o2)operator(.)ident(__proto__) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) ident(j)operator(++)operator(\))
+ ident(o2)operator(.)ident(length)operator(;)
+
+ keyword(function) function(foo)operator(()operator(\)) operator({) operator(})
+ ident(foo)operator(.)ident(__proto__) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(5)operator(;) ident(j)operator(++)operator(\))
+ ident(foo)operator(.)ident(length)operator(;)
+
+ keyword(return) string<delimiter(")content(no assertion)delimiter(")>operator(;)
+operator(})
+ident(testLengthOnNonNativeProto)operator(.)ident(expected) operator(=) string<delimiter(")content(no assertion)delimiter(")>operator(;)
+ident(test)operator(()ident(testLengthOnNonNativeProto)operator(\))operator(;)
+
+keyword(function) function(testDeepPropertyShadowing)operator(()operator(\))
+operator({)
+ keyword(function) function(h)operator(()ident(node)operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(while) operator(()ident(node)operator(\)) operator({)
+ ident(x)operator(++;)
+ ident(node) operator(=) ident(node)operator(.)ident(parent)operator(;)
+ operator(})
+ keyword(return) ident(x)operator(;)
+ operator(})
+ keyword(var) ident(tree) operator(=) operator({)key(__proto__)operator(:) operator({)key(__proto__)operator(:) operator({)key(parent)operator(:) pre_constant(null)operator(}}})operator(;)
+ ident(h)operator(()ident(tree)operator(\))operator(;)
+ ident(h)operator(()ident(tree)operator(\))operator(;)
+ ident(tree)operator(.)ident(parent) operator(=) operator({)operator(})operator(;)
+ ident(assertEq)operator(()ident(h)operator(()ident(tree)operator(\))operator(,) integer(2)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testDeepPropertyShadowing)operator(\))operator(;)
+
+comment(// Complicated whitebox test for bug 487845.)
+keyword(function) function(testGlobalShapeChangeAfterDeepBail)operator(()operator(\)) operator({)
+ keyword(function) function(f)operator(()ident(name)operator(\)) operator({)
+ local_variable(this)operator([)ident(name)operator(]) operator(=) integer(1)operator(;) comment(// may change global shape)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ operator(;) comment(// MonitorLoopEdge eventually triggers assertion)
+ operator(})
+
+ comment(// When i==3, deep-bail, then change global shape enough times to exhaust)
+ comment(// the array of GlobalStates.)
+ keyword(var) ident(arr) operator(=) operator([[)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(])operator(,) operator([)string<delimiter(")content(bug0)delimiter(")>operator(,) string<delimiter(")content(bug1)delimiter(")>operator(,) string<delimiter(")content(bug2)delimiter(")>operator(,) string<delimiter(")content(bug3)delimiter(")>operator(,) string<delimiter(")content(bug4)delimiter(")>operator(]])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(arr)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(arr)operator([)ident(i)operator(])operator(.)ident(forEach)operator(()ident(f)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testGlobalShapeChangeAfterDeepBail)operator(\))operator(;)
+keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ keyword(delete) local_variable(this)operator([)string<delimiter(")content(bug)delimiter(")> operator(+) ident(i)operator(])operator(;)
+
+keyword(function) function(testFunctionIdentityChange)operator(()operator(\))
+operator({)
+ keyword(function) function(a)operator(()operator(\)) operator({)operator(})
+ keyword(function) function(b)operator(()operator(\)) operator({)operator(})
+
+ keyword(var) ident(o) operator(=) operator({) key(a)operator(:) ident(a)operator(,) key(b)operator(:) ident(b) operator(})operator(;)
+
+ keyword(for) operator(()keyword(var) ident(prop) keyword(in) ident(o)operator(\))
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(1000)operator(;) ident(i)operator(++)operator(\))
+ ident(o)operator([)ident(prop)operator(])operator(()operator(\))operator(;)
+ operator(})
+
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testFunctionIdentityChange)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(testFunctionIdentityChange)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(2)operator(,)
+ key(traceCompleted)operator(:) integer(2)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testFunctionIdentityChange)operator(\))operator(;)
+
+keyword(function) function(testStringObjectLength)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) keyword(new) ident(String)operator(()string<delimiter(")content(foo)delimiter(")>operator(\))operator(,) ident(y) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(y) operator(=) ident(x)operator(.)ident(length)operator(;)
+ keyword(return) ident(y)operator(;)
+operator(})
+ident(testStringObjectLength)operator(.)ident(expected) operator(=) integer(3)operator(;)
+ident(test)operator(()ident(testStringObjectLength)operator(\))operator(;)
+
+keyword(var) ident(_quit)operator(;)
+keyword(function) function(testNestedDeepBail)operator(()operator(\))
+operator({)
+ ident(_quit) operator(=) pre_constant(false)operator(;)
+ keyword(function) function(loop)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ operator(;)
+ operator(})
+ ident(loop)operator(()operator(\))operator(;)
+
+ keyword(function) function(f)operator(()operator(\)) operator({)
+ ident(loop)operator(()operator(\))operator(;)
+ ident(_quit) operator(=) pre_constant(true)operator(;)
+ operator(})
+ keyword(var) ident(stk) operator(=) operator([[)integer(1)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(])operator(,) operator([)operator(]])operator(;)
+ keyword(while) operator((!)ident(_quit)operator(\))
+ ident(stk)operator(.)ident(pop)operator(()operator(\))operator(.)ident(forEach)operator(()ident(f)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testNestedDeepBail)operator(\))operator(;)
+keyword(delete) ident(_quit)operator(;)
+
+keyword(function) function(testSlowNativeCtor)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ keyword(new) ident(Date)operator(()operator(\))operator(.)ident(valueOf)operator(()operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testSlowNativeCtor)operator(\))operator(;)
+
+keyword(function) function(testSlowNativeBail)operator(()operator(\)) operator({)
+ keyword(var) ident(a) operator(=) operator([)string<delimiter(')content(0)delimiter(')>operator(,) string<delimiter(')content(1)delimiter(')>operator(,) string<delimiter(')content(2)delimiter(')>operator(,) string<delimiter(')content(3)delimiter(')>operator(,) string<delimiter(')content(+)delimiter(')>operator(])operator(;)
+ keyword(try) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(a)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ keyword(new) ident(RegExp)operator(()ident(a)operator([)ident(i)operator(]\))operator(;)
+ operator(}) keyword(catch) operator(()ident(exc)operator(\)) operator({)
+ ident(assertEq)operator(()string<delimiter(")delimiter(")>operator(+)ident(exc)operator(.)ident(stack)operator(.)ident(match)operator(()regexp<delimiter(/)content(^RegExp)delimiter(/)>operator(\))operator(,) string<delimiter(")content(RegExp)delimiter(")>operator(\))operator(;)
+ operator(})
+operator(})
+ident(test)operator(()ident(testSlowNativeBail)operator(\))operator(;)
+
+comment(/* Test the proper operation of the left shift operator. This is especially
+ * important on ARM as an explicit mask is required at the native instruction
+ * level. */)
+keyword(function) function(testShiftLeft)operator(()operator(\))
+operator({)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(j) operator(=) integer(0)operator(;)
+
+ keyword(var) ident(shifts) operator(=) operator([)integer(0)operator(,)integer(1)operator(,)integer(7)operator(,)integer(8)operator(,)integer(15)operator(,)integer(16)operator(,)integer(23)operator(,)integer(24)operator(,)integer(31)operator(])operator(;)
+
+ comment(/* Samples from the simple shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) integer(1) operator(<<) ident(shifts)operator([)ident(i)operator(])operator(;)
+
+ comment(/* Samples outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) integer(1) operator(<<) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(32)operator(\))operator(;)
+
+ comment(/* Samples far outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) integer(1) operator(<<) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(224)operator(\))operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) integer(1) operator(<<) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(256)operator(\))operator(;)
+
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testShiftLeft)operator(.)ident(expected) operator(=)
+ string<delimiter(")content(1,2,128,256,32768,65536,8388608,16777216,-2147483648,)delimiter(")>operator(+)
+ string<delimiter(")content(1,2,128,256,32768,65536,8388608,16777216,-2147483648,)delimiter(")>operator(+)
+ string<delimiter(")content(1,2,128,256,32768,65536,8388608,16777216,-2147483648,)delimiter(")>operator(+)
+ string<delimiter(")content(1,2,128,256,32768,65536,8388608,16777216,-2147483648)delimiter(")>operator(;)
+ident(test)operator(()ident(testShiftLeft)operator(\))operator(;)
+
+comment(/* Test the proper operation of the logical right shift operator. This is
+ * especially important on ARM as an explicit mask is required at the native
+ * instruction level. */)
+keyword(function) function(testShiftRightLogical)operator(()operator(\))
+operator({)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(j) operator(=) integer(0)operator(;)
+
+ keyword(var) ident(shifts) operator(=) operator([)integer(0)operator(,)integer(1)operator(,)integer(7)operator(,)integer(8)operator(,)integer(15)operator(,)integer(16)operator(,)integer(23)operator(,)integer(24)operator(,)integer(31)operator(])operator(;)
+
+ comment(/* Samples from the simple shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>>) ident(shifts)operator([)ident(i)operator(])operator(;)
+
+ comment(/* Samples outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(32)operator(\))operator(;)
+
+ comment(/* Samples far outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(224)operator(\))operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(256)operator(\))operator(;)
+
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+comment(/* Note: Arguments to the ">>>" operator are converted to unsigned 32-bit
+ * integers during evaluation. As a result, -2147483648 >>> 0 evaluates to the
+ * unsigned interpretation of the same value, which is 2147483648. */)
+ident(testShiftRightLogical)operator(.)ident(expected) operator(=)
+ string<delimiter(")content(2147483648,1073741824,16777216,8388608,65536,32768,256,128,1,)delimiter(")>operator(+)
+ string<delimiter(")content(2147483648,1073741824,16777216,8388608,65536,32768,256,128,1,)delimiter(")>operator(+)
+ string<delimiter(")content(2147483648,1073741824,16777216,8388608,65536,32768,256,128,1,)delimiter(")>operator(+)
+ string<delimiter(")content(2147483648,1073741824,16777216,8388608,65536,32768,256,128,1)delimiter(")>operator(;)
+ident(test)operator(()ident(testShiftRightLogical)operator(\))operator(;)
+
+comment(/* Test the proper operation of the arithmetic right shift operator. This is
+ * especially important on ARM as an explicit mask is required at the native
+ * instruction level. */)
+keyword(function) function(testShiftRightArithmetic)operator(()operator(\))
+operator({)
+ keyword(var) ident(r) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(j) operator(=) integer(0)operator(;)
+
+ keyword(var) ident(shifts) operator(=) operator([)integer(0)operator(,)integer(1)operator(,)integer(7)operator(,)integer(8)operator(,)integer(15)operator(,)integer(16)operator(,)integer(23)operator(,)integer(24)operator(,)integer(31)operator(])operator(;)
+
+ comment(/* Samples from the simple shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>) ident(shifts)operator([)ident(i)operator(])operator(;)
+
+ comment(/* Samples outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(32)operator(\))operator(;)
+
+ comment(/* Samples far outside the normal shift range. */)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(224)operator(\))operator(;)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(shifts)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator([)ident(j)operator(++)operator(]) operator(=) operator(-)integer(2147483648) operator(>>) operator(()ident(shifts)operator([)ident(i)operator(]) operator(+) integer(256)operator(\))operator(;)
+
+ keyword(return) ident(r)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testShiftRightArithmetic)operator(.)ident(expected) operator(=)
+ string<delimiter(")content(-2147483648,-1073741824,-16777216,-8388608,-65536,-32768,-256,-128,-1,)delimiter(")>operator(+)
+ string<delimiter(")content(-2147483648,-1073741824,-16777216,-8388608,-65536,-32768,-256,-128,-1,)delimiter(")>operator(+)
+ string<delimiter(")content(-2147483648,-1073741824,-16777216,-8388608,-65536,-32768,-256,-128,-1,)delimiter(")>operator(+)
+ string<delimiter(")content(-2147483648,-1073741824,-16777216,-8388608,-65536,-32768,-256,-128,-1)delimiter(")>operator(;)
+ident(test)operator(()ident(testShiftRightArithmetic)operator(\))operator(;)
+
+keyword(function) function(testStringConstructorWithExtraArg)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\))
+ keyword(new) ident(String)operator(()keyword(new) ident(String)operator(()operator(\))operator(,) integer(2)operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testStringConstructorWithExtraArg)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testStringConstructorWithExtraArg)operator(\))operator(;)
+
+keyword(function) function(testConstructorBail)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) keyword(new) ident(Number)operator(()regexp<delimiter(/)content(x)delimiter(/)>operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testConstructorBail)operator(\))operator(;)
+
+keyword(function) function(testNewArrayCount)operator(()operator(\))
+operator({)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(=) operator([)integer(0)operator(])operator(;)
+ ident(assertEq)operator(()ident(a)operator(.)ident(__count__)operator(,) integer(1)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) ident(i)operator(++)operator(\))
+ ident(a) operator(=) operator([)integer(0)operator(,) operator(,) integer(2)operator(])operator(;)
+ ident(assertEq)operator(()ident(a)operator(.)ident(__count__)operator(,) integer(2)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testNewArrayCount)operator(\))operator(;)
+
+keyword(function) function(testNewArrayCount2)operator(()operator(\)) operator({)
+ keyword(var) ident(x) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(x) operator(=) keyword(new) ident(Array)operator(()integer(1)operator(,)integer(2)operator(,)integer(3)operator(\))operator(.)ident(__count__)operator(;)
+ keyword(return) ident(x)operator(;)
+operator(})
+ident(testNewArrayCount2)operator(.)ident(expected) operator(=) integer(3)operator(;)
+ident(test)operator(()ident(testNewArrayCount2)operator(\))operator(;)
+
+keyword(function) function(testGetCallObjInlined)operator(()ident(i)operator(\)) operator({)
+ keyword(if) operator(()ident(i) operator(>) integer(7)operator(\)) ident(eval)operator(()string<delimiter(")content(1)delimiter(")>operator(\))operator(;)
+ keyword(return) integer(1)operator(;)
+operator(})
+
+keyword(function) function(testGetCallObj)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ ident(testGetCallObjInlined)operator(()ident(i)operator(\))operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testGetCallObj)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testGetCallObj)operator(\))operator(;)
+
+keyword(function) function(testGetThis)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(3)operator(;) operator(++)ident(i)operator(\)) operator({)
+ operator(()keyword(function)operator(()operator(\)) operator({) keyword(return) local_variable(this)operator(;) operator(}\))operator(()operator(\))operator(;)
+ operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testGetThis)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testGetThis)operator(\))operator(;)
+
+keyword(function) function(testArrayNamedProp)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(x) operator(=) integer(0)operator(;) ident(x) operator(<) integer(10)operator(;) operator(++)ident(x)operator(\)) operator({) operator([)integer(4)operator(])operator(.)ident(sort)operator(--) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testArrayNamedProp)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testArrayNamedProp)operator(\))operator(;)
+
+keyword(function) function(testUndemoteLateGlobalSlots)operator(()operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(aaa) keyword(in) operator([)string<delimiter(")delimiter(")>operator(,) string<delimiter(")delimiter(")>operator(,) integer(0)operator(/)integer(0)operator(,) string<delimiter(")delimiter(")>operator(]\)) operator({)
+ operator(++)ident(aaa)operator(;)
+ keyword(for) ident(each) operator(()ident(bbb) keyword(in) operator([)integer(0)operator(,) string<delimiter(")delimiter(")>operator(,) ident(aaa)operator(,) string<delimiter(")delimiter(")>operator(,) integer(0)operator(,) string<delimiter(")delimiter(")>operator(,) integer(0)operator(/)integer(0)operator(]\)) operator({)
+ operator(})
+ operator(})
+ keyword(delete) ident(aaa)operator(;)
+ keyword(delete) ident(bbb)operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testUndemoteLateGlobalSlots)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testUndemoteLateGlobalSlots)operator(\))operator(;)
+
+keyword(function) function(testSetProtoRegeneratesObjectShape)operator(()operator(\))
+operator({)
+ keyword(var) function(f) operator(=) keyword(function)operator(()operator(\)) operator({)operator(})operator(;)
+ keyword(var) function(g) operator(=) keyword(function)operator(()operator(\)) operator({)operator(})operator(;)
+ ident(g)operator(.)ident(prototype)operator(.)ident(__proto__) operator(=) operator({)operator(})operator(;)
+
+ keyword(function) function(iq)operator(()ident(obj)operator(\))
+ operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) operator(++)ident(i)operator(\))
+ string<delimiter(")delimiter(")> operator(+) ident(obj)operator(.)ident(prototype)operator(;)
+ operator(})
+
+ ident(iq)operator(()ident(f)operator(\))operator(;)
+ ident(iq)operator(()ident(f)operator(\))operator(;)
+ ident(iq)operator(()ident(f)operator(\))operator(;)
+ ident(iq)operator(()ident(f)operator(\))operator(;)
+ ident(iq)operator(()ident(g)operator(\))operator(;)
+
+ keyword(if) operator(()ident(shapeOf)operator(()ident(f)operator(.)ident(prototype)operator(\)) operator(===) ident(shapeOf)operator(()ident(g)operator(.)ident(prototype)operator(\)\))
+ keyword(return) string<delimiter(")content(object shapes same after proto of one is changed)delimiter(")>operator(;)
+
+ keyword(return) pre_constant(true)operator(;)
+operator(})
+ident(testSetProtoRegeneratesObjectShape)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+ident(test)operator(()ident(testSetProtoRegeneratesObjectShape)operator(\))operator(;)
+
+keyword(function) function(testFewerGlobalsInInnerTree)operator(()operator(\)) operator({)
+ keyword(for) ident(each) operator(()ident(a) keyword(in) operator([)keyword(new) ident(Number)operator(()integer(1)operator(\))operator(,) keyword(new) ident(Number)operator(()integer(1)operator(\))operator(,) operator({)operator(})operator(,) operator({)operator(})operator(,) keyword(new) ident(Number)operator(()integer(1)operator(\)]\)) operator({)
+ keyword(for) ident(each) operator(()ident(b) keyword(in) operator([)integer(2)operator(,) string<delimiter(")delimiter(")>operator(,) integer(2)operator(,) string<delimiter(")delimiter(")>operator(,) string<delimiter(")delimiter(")>operator(,) string<delimiter(")delimiter(")>operator(]\)) operator({)
+ keyword(for) ident(each) operator(()ident(c) keyword(in) operator([{)operator(})operator(,) operator({)operator(})operator(,) integer(3)operator(,) integer(3)operator(,) integer(3)operator(,) integer(3)operator(,) operator({)operator(})operator(,) operator({)operator(}]\)) operator({)
+ integer(4) operator(+) ident(a)operator(;)
+ operator(})
+ operator(})
+ operator(})
+ keyword(delete) ident(a)operator(;)
+ keyword(delete) ident(b)operator(;)
+ keyword(delete) ident(c)operator(;)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testFewerGlobalsInInnerTree)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testFewerGlobalsInInnerTree)operator(\))operator(;)
+
+keyword(function) function(testMethodInit)operator(()operator(\)) operator({) comment(// bug 503198)
+ keyword(function) function(o)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(o)delimiter(')>operator(;) operator(})
+ keyword(function) function(k)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(k)delimiter(')>operator(;) operator(})
+
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ ident(x) operator(=) operator({)key(o)operator(:) ident(o)operator(,) key(k)operator(:) ident(k)operator(})operator(;)
+ keyword(return) ident(x)operator(.)ident(o)operator(()operator(\)) operator(+) ident(x)operator(.)ident(k)operator(()operator(\))operator(;)
+operator(})
+ident(testMethodInit)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(testMethodInit)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(traceCompleted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testMethodInit)operator(\))operator(;)
+
+keyword(function) function(testMethodSet)operator(()operator(\)) operator({) comment(// bug 503198)
+ keyword(function) function(o)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(o)delimiter(')>operator(;) operator(})
+ keyword(function) function(k)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(k)delimiter(')>operator(;) operator(})
+
+ keyword(var) ident(x)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\)) operator({)
+ ident(x) operator(=) operator({)operator(})operator(;)
+ ident(x)operator(.)ident(o) operator(=) ident(o)operator(;)
+ ident(x)operator(.)ident(k) operator(=) ident(k)operator(;)
+ operator(})
+ keyword(return) ident(x)operator(.)ident(o)operator(()operator(\)) operator(+) ident(x)operator(.)ident(k)operator(()operator(\))operator(;)
+operator(})
+ident(testMethodSet)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(testMethodSet)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(traceCompleted)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testMethodSet)operator(\))operator(;)
+
+keyword(function) function(testMethodInitSafety)operator(()operator(\)) operator({)
+ keyword(function) function(f)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(fail)delimiter(')>operator(;) operator(})
+ keyword(function) function(g)operator(()operator(\)) operator({) keyword(return) string<delimiter(')content(ok)delimiter(')>operator(;) operator(})
+
+ keyword(var) ident(s)operator(;)
+ keyword(var) ident(arr) operator(=) operator([)ident(f)operator(,) ident(f)operator(,) ident(f)operator(,) ident(f)operator(,) ident(g)operator(])operator(;)
+ ident(assertEq)operator(()ident(arr)operator(.)ident(length) operator(>) ident(RUNLOOP)operator(,) pre_constant(true)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(arr)operator(.)ident(length)operator(;) ident(i)operator(++)operator(\)) operator({)
+ keyword(var) ident(x) operator(=) operator({)key(m)operator(:) ident(arr)operator([)ident(i)operator(]})operator(;)
+ ident(s) operator(=) ident(x)operator(.)ident(m)operator(()operator(\))operator(;)
+ operator(})
+ keyword(return) ident(s)operator(;)
+operator(})
+ident(testMethodInitSafety)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testMethodInitSafety)operator(\))operator(;)
+
+keyword(function) function(testModuloWithNegative1)operator(()operator(\)) operator({)
+ keyword(var) ident(v) operator(=) integer(0)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(2)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(c) operator(=) ident(v)operator(;)
+ ident(v) operator(-=) integer(1)operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(2)operator(;) operator(++)ident(j)operator(\))
+ ident(c) operator(%=) operator(-)integer(1)operator(;)
+ operator(})
+ keyword(return) integer(1)operator(/)ident(c)operator(;)
+operator(})
+ident(testModuloWithNegative1)operator(.)ident(expected) operator(=) operator(-)ident(Infinity)operator(;)
+ident(test)operator(()ident(testModuloWithNegative1)operator(\))operator(;)
+
+keyword(function) function(testDivisionWithNegative1)operator(()operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(3)operator(;) ident(i) operator(>=) integer(0)operator(;) operator(--)ident(i)operator(\))
+ ident(c) operator(=) ident(i) operator(/) operator(-)integer(1)operator(;)
+ keyword(return) integer(1)operator(/)ident(c)operator(;)
+operator(})
+ident(testDivisionWithNegative1)operator(.)ident(expected) operator(=) operator(-)ident(Infinity)operator(;)
+ident(test)operator(()ident(testDivisionWithNegative1)operator(\))operator(;)
+
+keyword(function) function(testInt32ToId)operator(()operator(\))
+operator({)
+ comment(// Ensure that a property which is a negative integer that does not fit in a)
+ comment(// jsval is properly detected by the 'in' operator.)
+ keyword(var) ident(obj) operator(=) operator({) key<delimiter(")content(-1073741828)delimiter(")>operator(:) integer(17) operator(})operator(;)
+ keyword(var) ident(index) operator(=) operator(-)integer(1073741819)operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ ident(a)operator(.)ident(push)operator(()ident(index) keyword(in) ident(obj)operator(\))operator(;)
+ ident(index)operator(--;)
+ operator(})
+
+ comment(// Ensure that a property which is a negative integer that does not fit in a)
+ comment(// jsval is properly *not* detected by the 'in' operator. In this case)
+ comment(// wrongly applying INT_TO_JSID to -2147483648 will shift off the sign bit)
+ comment(// (the only bit set in that number\) and bitwise-or that value with 1,)
+ comment(// producing jsid(1\) -- which actually represents "0", not "-2147483648".)
+ comment(// Thus 'in' will report a "-2147483648" property when none exists, because)
+ comment(// it thinks the request was really whether the object had property "0".)
+ keyword(var) ident(obj2) operator(=) operator({) integer(0)operator(:) integer(17) operator(})operator(;)
+ keyword(var) ident(b) operator(=) operator([)operator(])operator(;)
+ keyword(var) ident(index) operator(=) operator(-()integer(1) operator(<<) integer(28)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(10)operator(;) ident(i)operator(++)operator(\))
+ operator({)
+ ident(b)operator(.)ident(push)operator(()ident(index) keyword(in) ident(obj2)operator(\))operator(;)
+ ident(index) operator(=) ident(index) operator(-) operator(()integer(1) operator(<<) integer(28)operator(\))operator(;)
+ operator(})
+
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\)) operator(+) ident(b)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testInt32ToId)operator(.)ident(expected) operator(=)
+ string<delimiter(")content(false,false,false,false,false,false,false,false,false,true)delimiter(")> operator(+)
+ string<delimiter(")content(false,false,false,false,false,false,false,false,false,false)delimiter(")>operator(;)
+ident(testInt32ToId)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(2)
+operator(})operator(;)
+ident(test)operator(()ident(testInt32ToId)operator(\))operator(;)
+
+keyword(function) function(testOwnPropertyWithInOperator)operator(()operator(\))
+operator({)
+ keyword(var) ident(o) operator(=) operator({) integer(0)operator(:) integer(0)operator(,) integer(1)operator(:) integer(1)operator(,) integer(2)operator(:) integer(2)operator(,) integer(3)operator(:) integer(3)operator(,) integer(4)operator(:) integer(4)operator(,) integer(5)operator(:) integer(5)operator(,) integer(6)operator(:) integer(6) operator(})operator(;)
+ keyword(var) ident(a) operator(=) operator([)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(7)operator(;) ident(i)operator(++)operator(\))
+ ident(a)operator(.)ident(push)operator(()ident(i) keyword(in) ident(o)operator(\))operator(;)
+ keyword(return) ident(a)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\))operator(;)
+operator(})
+ident(testOwnPropertyWithInOperator)operator(.)ident(expected) operator(=) string<delimiter(")content(true,true,true,true,true,true,true)delimiter(")>operator(;)
+ident(testOwnPropertyWithInOperator)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testOwnPropertyWithInOperator)operator(\))operator(;)
+
+keyword(function) function(testBug501690)operator(()operator(\)) operator({)
+ comment(// Property cache assertion when 3 objects along a prototype chain have the same shape.)
+ keyword(function) function(B)operator(()operator(\))operator({)operator(})
+ ident(B)operator(.)ident(prototype) operator(=) operator({)key(x)operator(:) integer(123)operator(})operator(;)
+
+ keyword(function) function(D)operator(()operator(\))operator({)operator(})
+ ident(D)operator(.)ident(prototype) operator(=) keyword(new) ident(B)operator(;)
+ ident(D)operator(.)ident(prototype)operator(.)ident(x) operator(=) integer(1)operator(;) comment(// [1] shapeOf(B.prototype\) == shapeOf(D.prototype\))
+
+ ident(arr) operator(=) operator([)keyword(new) ident(D)operator(,) keyword(new) ident(D)operator(,) keyword(new) ident(D)operator(,) ident(D)operator(.)ident(prototype)operator(])operator(;) comment(// [2] all the same shape)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ ident(assertEq)operator(()ident(arr)operator([)ident(i)operator(])operator(.)ident(x)operator(,) integer(1)operator(\))operator(;) comment(// same kshape [2], same vshape [1])
+operator(})
+ident(test)operator(()ident(testBug501690)operator(\))operator(;)
+
+keyword(function) function(testObjectVsPrototype)operator(()operator(\)) operator({)
+ keyword(function) function(D)operator(()operator(\)) operator({)operator(})
+ keyword(var) ident(b) operator(=) ident(D)operator(.)ident(prototype) operator(=) operator({)key(x)operator(:) integer(1)operator(})operator(;)
+ keyword(var) ident(d) operator(=) keyword(new) ident(D)operator(;)
+ keyword(var) ident(arr) operator(=) operator([)ident(b)operator(,) ident(b)operator(,) ident(b)operator(,) ident(d)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(4)operator(;) ident(i)operator(++)operator(\))
+ ident(arr)operator([)ident(i)operator(])operator(.)ident(x) operator(=) ident(i)operator(;)
+
+ ident(d)operator(.)ident(y) operator(=) integer(12)operator(;)
+ ident(assertEq)operator(()ident(d)operator(.)ident(x)operator(,) integer(3)operator(\))operator(;)
+operator(})
+ident(test)operator(()ident(testObjectVsPrototype)operator(\))operator(;)
+
+keyword(function) function(testEliminatedGuardWithinAnchor)operator(()operator(\)) operator({)
+ keyword(for) operator(()ident(let) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(5)operator(;) operator(++)ident(i)operator(\)) operator({) ident(i) operator(/) operator(()ident(i) operator(*) ident(i)operator(\))operator(;) operator(})
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+ident(testEliminatedGuardWithinAnchor)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(testOwnPropertyWithInOperator)operator(.)ident(jitstats) operator(=) operator({)
+ key(sideExitIntoInterpreter)operator(:) integer(3)
+operator(})operator(;)
+ident(test)operator(()ident(testEliminatedGuardWithinAnchor)operator(\))operator(;)
+
+keyword(function) function(testNativeSetter)operator(()operator(\)) operator({)
+ keyword(var) ident(re) operator(=) regexp<delimiter(/)content(foo)delimiter(/)>operator(;)
+ keyword(var) ident(N) operator(=) ident(RUNLOOP) operator(+) integer(10)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(N)operator(;) ident(i)operator(++)operator(\))
+ ident(re)operator(.)ident(lastIndex) operator(=) ident(i)operator(;)
+ ident(assertEq)operator(()ident(re)operator(.)ident(lastIndex)operator(,) ident(N) operator(-) integer(1)operator(\))operator(;)
+operator(})
+ident(testNativeSetter)operator(.)ident(jitstats) operator(=) operator({)
+ key(recorderStarted)operator(:) integer(1)operator(,)
+ key(recorderAborted)operator(:) integer(0)operator(,)
+ key(traceTriggered)operator(:) integer(1)operator(,)
+ key(sideExitIntoInterpreter)operator(:) integer(1)
+operator(})operator(;)
+ident(test)operator(()ident(testNativeSetter)operator(\))operator(;)
+
+keyword(function) function(testBug507425)operator(()operator(\)) operator({)
+ keyword(var) ident(r) operator(=) regexp<delimiter(/)content(x)delimiter(/)>operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(3)operator(;) ident(i)operator(++)operator(\))
+ ident(r)operator(.)ident(lastIndex) operator(=) integer(0)operator(;) comment(// call a setter)
+ keyword(var) ident(s) operator(=) string<delimiter(')content(;)delimiter(')>operator(;)
+ keyword(try) operator({)
+ keyword(for) operator(()ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) integer(80)operator(;) ident(i)operator(++)operator(\))
+ ident(s) operator(+=) ident(s)operator(;) comment(// call js_CanLeaveTrace)
+ operator(}) keyword(catch) operator(()ident(exc)operator(\)) operator({)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+ operator(})
+operator(})
+ident(testBug507425)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testBug507425)operator(\))operator(;)
+
+comment(/*****************************************************************************
+ * *
+ * _____ _ _ _____ ______ _____ _______ *
+ * |_ _| \\ | |/ ____| ____| __ \\__ __| *
+ * | | | \\| | (___ | |__ | |__\) | | | *
+ * | | | . ` |\\___ \\| __| | _ / | | *
+ * _| |_| |\\ |____\) | |____| | \\ \\ | | *
+ * |_____|_| \\_|_____/|______|_| \\_\\ |_| *
+ * *
+ * *
+ * _______ ______ _____ _______ _____ *
+ * |__ __| ____|/ ____|__ __/ ____| *
+ * | | | |__ | (___ | | | (___ *
+ * | | | __| \\___ \\ | | \\___ \\ *
+ * | | | |____ ____\) | | | ____\) | *
+ * |_| |______|_____/ |_| |_____/ *
+ * *
+ * *
+ * ____ ______ ______ ____ _____ ______ _ _ ______ _____ ______ *
+ * | _ \\| ____| ____/ __ \\| __ \\| ____| | | | | ____| __ \\| ____| *
+ * | |_\) | |__ | |__ | | | | |__\) | |__ | |__| | |__ | |__\) | |__ *
+ * | _ <| __| | __|| | | | _ /| __| | __ | __| | _ /| __| *
+ * | |_\) | |____| | | |__| | | \\ \\| |____ | | | | |____| | \\ \\| |____ *
+ * |____/|______|_| \\____/|_| \\_\\______| |_| |_|______|_| \\_\\______| *
+ * *
+ *****************************************************************************/)
+
+ident(load)operator(()ident(gSrcdir) operator(+) string<delimiter(")content(/math-trace-tests.js)delimiter(")>operator(\))operator(;)
+
+comment(// BEGIN MANDELBROT STUFF)
+comment(// XXXbz I would dearly like to wrap it up into a function to avoid polluting)
+comment(// the global scope, but the function ends up heavyweight, and then we lose on)
+comment(// the jit.)
+keyword(if) operator(()ident(gDoMandelbrotTest)operator(\)) operator({)
+ident(load)operator(()ident(gSrcdir) operator(+) string<delimiter(")content(/mandelbrot-results.js)delimiter(")>operator(\))operator(;)
+comment(//function testMandelbrotAll(\) {)
+ comment(// Configuration options that affect which codepaths we follow.)
+ keyword(var) ident(doImageData) operator(=) pre_constant(true)operator(;)
+ keyword(var) ident(avoidSparseArray) operator(=) pre_constant(true)operator(;)
+
+ comment(// Control of iteration numbers and sizing. We'll do)
+ comment(// scaler * colorNames.length iterations or so before deciding that we)
+ comment(// don't escape.)
+ ident(const) ident(scaler) operator(=) integer(5)operator(;)
+ ident(const) ident(numRows) operator(=) integer(600)operator(;)
+ ident(const) ident(numCols) operator(=) integer(600)operator(;)
+
+ ident(const) ident(colorNames) operator(=) operator([)
+ string<delimiter(")content(black)delimiter(")>operator(,)
+ string<delimiter(")content(green)delimiter(")>operator(,)
+ string<delimiter(")content(blue)delimiter(")>operator(,)
+ string<delimiter(")content(red)delimiter(")>operator(,)
+ string<delimiter(")content(purple)delimiter(")>operator(,)
+ string<delimiter(")content(orange)delimiter(")>operator(,)
+ string<delimiter(")content(cyan)delimiter(")>operator(,)
+ string<delimiter(")content(yellow)delimiter(")>operator(,)
+ string<delimiter(")content(magenta)delimiter(")>operator(,)
+ string<delimiter(")content(brown)delimiter(")>operator(,)
+ string<delimiter(")content(pink)delimiter(")>operator(,)
+ string<delimiter(")content(chartreuse)delimiter(")>operator(,)
+ string<delimiter(")content(darkorange)delimiter(")>operator(,)
+ string<delimiter(")content(crimson)delimiter(")>operator(,)
+ string<delimiter(")content(gray)delimiter(")>operator(,)
+ string<delimiter(")content(deeppink)delimiter(")>operator(,)
+ string<delimiter(")content(firebrick)delimiter(")>operator(,)
+ string<delimiter(")content(lavender)delimiter(")>operator(,)
+ string<delimiter(")content(lawngreen)delimiter(")>operator(,)
+ string<delimiter(")content(lightsalmon)delimiter(")>operator(,)
+ string<delimiter(")content(lime)delimiter(")>operator(,)
+ string<delimiter(")content(goldenrod)delimiter(")>
+ operator(])operator(;)
+ ident(const) ident(threshold) operator(=) operator(()ident(colorNames)operator(.)ident(length) operator(-) integer(1)operator(\)) operator(*) ident(scaler)operator(;)
+
+ comment(// Now set up our colors)
+ keyword(var) ident(colors) operator(=) operator([)operator(])operator(;)
+ comment(// 3-part for loop (iterators buggy, we will add a separate test for them\))
+ keyword(for) operator(()keyword(var) ident(colorNameIdx) operator(=) integer(0)operator(;) ident(colorNameIdx) operator(<) ident(colorNames)operator(.)ident(length)operator(;) operator(++)ident(colorNameIdx)operator(\)) operator({)
+ comment(//for (var colorNameIdx in colorNames\) {)
+ ident(colorNameIdx) operator(=) ident(parseInt)operator(()ident(colorNameIdx)operator(\))operator(;)
+ ident(colors)operator(.)ident(push)operator(([)ident(colorNameIdx)operator(,) ident(colorNameIdx)operator(,) ident(colorNameIdx)operator(,) integer(0)operator(]\))operator(;)
+ operator(})
+
+ comment(// Storage for our point data)
+ keyword(var) ident(points)operator(;)
+
+ keyword(var) ident(scratch) operator(=) operator({)operator(})operator(;)
+ keyword(var) ident(scratchZ) operator(=) operator({)operator(})operator(;)
+ keyword(function) function(complexMult)operator(()ident(a)operator(,) ident(b)operator(\)) operator({)
+ keyword(var) ident(newr) operator(=) ident(a)operator(.)ident(r) operator(*) ident(b)operator(.)ident(r) operator(-) ident(a)operator(.)ident(i) operator(*) ident(b)operator(.)ident(i)operator(;)
+ keyword(var) ident(newi) operator(=) ident(a)operator(.)ident(r) operator(*) ident(b)operator(.)ident(i) operator(+) ident(a)operator(.)ident(i) operator(*) ident(b)operator(.)ident(r)operator(;)
+ ident(scratch)operator(.)ident(r) operator(=) ident(newr)operator(;)
+ ident(scratch)operator(.)ident(i) operator(=) ident(newi)operator(;)
+ keyword(return) ident(scratch)operator(;)
+ operator(})
+ keyword(function) function(complexAdd)operator(()ident(a)operator(,) ident(b)operator(\)) operator({)
+ ident(scratch)operator(.)ident(r) operator(=) ident(a)operator(.)ident(r) operator(+) ident(b)operator(.)ident(r)operator(;)
+ ident(scratch)operator(.)ident(i) operator(=) ident(a)operator(.)ident(i) operator(+) ident(b)operator(.)ident(i)operator(;)
+ keyword(return) ident(scratch)operator(;)
+ operator(})
+ keyword(function) function(abs)operator(()ident(a)operator(\)) operator({)
+ keyword(return) ident(Math)operator(.)ident(sqrt)operator(()ident(a)operator(.)ident(r) operator(*) ident(a)operator(.)ident(r) operator(+) ident(a)operator(.)ident(i) operator(*) ident(a)operator(.)ident(i)operator(\))operator(;)
+ operator(})
+
+ keyword(function) function(escapeAbsDiff)operator(()ident(normZ)operator(,) ident(absC)operator(\)) operator({)
+ keyword(var) ident(absZ) operator(=) ident(Math)operator(.)ident(sqrt)operator(()ident(normZ)operator(\))operator(;)
+ keyword(return) ident(normZ) operator(>) ident(absZ) operator(+) ident(absC)operator(;)
+ operator(})
+
+ keyword(function) function(escapeNorm2)operator(()ident(normZ)operator(\)) operator({)
+ keyword(return) ident(normZ) operator(>) integer(4)operator(;)
+ operator(})
+
+ keyword(function) function(fuzzyColors)operator(()ident(i)operator(\)) operator({)
+ keyword(return) ident(Math)operator(.)ident(floor)operator(()ident(i) operator(/) ident(scaler)operator(\)) operator(+) integer(1)operator(;)
+ operator(})
+
+ keyword(function) function(moddedColors)operator(()ident(i)operator(\)) operator({)
+ keyword(return) operator(()ident(i) operator(%) operator(()ident(colorNames)operator(.)ident(length) operator(-) integer(1)operator(\)\)) operator(+) integer(1)operator(;)
+ operator(})
+
+ keyword(function) function(computeEscapeSpeedObjects)operator(()ident(real)operator(,) ident(imag)operator(\)) operator({)
+ keyword(var) ident(c) operator(=) operator({) key(r)operator(:) ident(real)operator(,) key(i)operator(:) ident(imag) operator(})
+ ident(scratchZ)operator(.)ident(r) operator(=) ident(scratchZ)operator(.)ident(i) operator(=) integer(0)operator(;)
+ keyword(var) ident(absC) operator(=) ident(abs)operator(()ident(c)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(;) ident(i) operator(<) ident(threshold)operator(;) operator(++)ident(i)operator(\)) operator({)
+ ident(scratchZ) operator(=) ident(complexAdd)operator(()ident(c)operator(,) ident(complexMult)operator(()ident(scratchZ)operator(,) ident(scratchZ)operator(\)\))operator(;)
+ keyword(if) operator(()ident(escape)operator(()ident(scratchZ)operator(.)ident(r) operator(*) ident(scratchZ)operator(.)ident(r) operator(+) ident(scratchZ)operator(.)ident(i) operator(*) ident(scratchZ)operator(.)ident(i)operator(,)
+ ident(absC)operator(\)\)) operator({)
+ keyword(return) ident(colorMap)operator(()ident(i)operator(\))operator(;)
+ operator(})
+ operator(})
+ keyword(return) integer(0)operator(;)
+ operator(})
+
+ keyword(function) function(computeEscapeSpeedOneObject)operator(()ident(real)operator(,) ident(imag)operator(\)) operator({)
+ comment(// fold in the fact that we start with 0)
+ keyword(var) ident(r) operator(=) ident(real)operator(;)
+ keyword(var) ident(i) operator(=) ident(imag)operator(;)
+ keyword(var) ident(absC) operator(=) ident(abs)operator(({)key(r)operator(:) ident(real)operator(,) key(i)operator(:) ident(imag)operator(}\))operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(threshold)operator(;) operator(++)ident(j)operator(\)) operator({)
+ keyword(var) ident(r2) operator(=) ident(r) operator(*) ident(r)operator(;)
+ keyword(var) ident(i2) operator(=) ident(i) operator(*) ident(i)operator(;)
+ keyword(if) operator(()ident(escape)operator(()ident(r2) operator(+) ident(i2)operator(,) ident(absC)operator(\)\)) operator({)
+ keyword(return) ident(colorMap)operator(()ident(j)operator(\))operator(;)
+ operator(})
+ ident(i) operator(=) integer(2) operator(*) ident(r) operator(*) ident(i) operator(+) ident(imag)operator(;)
+ ident(r) operator(=) ident(r2) operator(-) ident(i2) operator(+) ident(real)operator(;)
+ operator(})
+ keyword(return) integer(0)operator(;)
+ operator(})
+
+ keyword(function) function(computeEscapeSpeedDoubles)operator(()ident(real)operator(,) ident(imag)operator(\)) operator({)
+ comment(// fold in the fact that we start with 0)
+ keyword(var) ident(r) operator(=) ident(real)operator(;)
+ keyword(var) ident(i) operator(=) ident(imag)operator(;)
+ keyword(var) ident(absC) operator(=) ident(Math)operator(.)ident(sqrt)operator(()ident(real) operator(*) ident(real) operator(+) ident(imag) operator(*) ident(imag)operator(\))operator(;)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) ident(threshold)operator(;) operator(++)ident(j)operator(\)) operator({)
+ keyword(var) ident(r2) operator(=) ident(r) operator(*) ident(r)operator(;)
+ keyword(var) ident(i2) operator(=) ident(i) operator(*) ident(i)operator(;)
+ keyword(if) operator(()ident(escape)operator(()ident(r2) operator(+) ident(i2)operator(,) ident(absC)operator(\)\)) operator({)
+ keyword(return) ident(colorMap)operator(()ident(j)operator(\))operator(;)
+ operator(})
+ ident(i) operator(=) integer(2) operator(*) ident(r) operator(*) ident(i) operator(+) ident(imag)operator(;)
+ ident(r) operator(=) ident(r2) operator(-) ident(i2) operator(+) ident(real)operator(;)
+ operator(})
+ keyword(return) integer(0)operator(;)
+ operator(})
+
+ keyword(var) ident(computeEscapeSpeed) operator(=) ident(computeEscapeSpeedDoubles)operator(;)
+ keyword(var) ident(escape) operator(=) ident(escapeNorm2)operator(;)
+ keyword(var) ident(colorMap) operator(=) ident(fuzzyColors)operator(;)
+
+ keyword(function) function(addPointOrig)operator(()ident(pointArray)operator(,) ident(n)operator(,) ident(i)operator(,) ident(j)operator(\)) operator({)
+ keyword(if) operator((!)ident(points)operator([)ident(n)operator(]\)) operator({)
+ ident(points)operator([)ident(n)operator(]) operator(=) operator([)operator(])operator(;)
+ ident(points)operator([)ident(n)operator(])operator(.)ident(push)operator(([)ident(i)operator(,) ident(j)operator(,) integer(1)operator(,) integer(1)operator(]\))operator(;)
+ operator(}) keyword(else) operator({)
+ keyword(var) ident(point) operator(=) ident(points)operator([)ident(n)operator(])operator([)ident(points)operator([)ident(n)operator(])operator(.)ident(length)operator(-)integer(1)operator(])operator(;)
+ keyword(if) operator(()ident(point)operator([)integer(0)operator(]) operator(==) ident(i) operator(&&) ident(point)operator([)integer(1)operator(]) operator(==) ident(j) operator(-) ident(point)operator([)integer(3)operator(]\)) operator({)
+ operator(++)ident(point)operator([)integer(3)operator(])operator(;)
+ operator(}) keyword(else) operator({)
+ ident(points)operator([)ident(n)operator(])operator(.)ident(push)operator(([)ident(i)operator(,) ident(j)operator(,) integer(1)operator(,) integer(1)operator(]\))operator(;)
+ operator(})
+ operator(})
+ operator(})
+
+ keyword(function) function(addPointImagedata)operator(()ident(pointArray)operator(,) ident(n)operator(,) ident(col)operator(,) ident(row)operator(\)) operator({)
+ keyword(var) ident(slotIdx) operator(=) operator((()ident(row) operator(*) ident(numCols)operator(\)) operator(+) ident(col)operator(\)) operator(*) integer(4)operator(;)
+ ident(pointArray)operator([)ident(slotIdx)operator(]) operator(=) ident(colors)operator([)ident(n)operator(])operator([)integer(0)operator(])operator(;)
+ ident(pointArray)operator([)ident(slotIdx)operator(+)integer(1)operator(]) operator(=) ident(colors)operator([)ident(n)operator(])operator([)integer(1)operator(])operator(;)
+ ident(pointArray)operator([)ident(slotIdx)operator(+)integer(2)operator(]) operator(=) ident(colors)operator([)ident(n)operator(])operator([)integer(2)operator(])operator(;)
+ ident(pointArray)operator([)ident(slotIdx)operator(+)integer(3)operator(]) operator(=) ident(colors)operator([)ident(n)operator(])operator([)integer(3)operator(])operator(;)
+ operator(})
+
+ keyword(function) function(createMandelSet)operator(()operator(\)) operator({)
+ keyword(var) ident(realRange) operator(=) operator({) key(min)operator(:) operator(-)float(2.1)operator(,) key(max)operator(:) integer(1) operator(})operator(;)
+ keyword(var) ident(imagRange) operator(=) operator({) key(min)operator(:) operator(-)float(1.5)operator(,) key(max)operator(:) float(1.5) operator(})operator(;)
+
+ keyword(var) ident(addPoint)operator(;)
+ keyword(if) operator(()ident(doImageData)operator(\)) operator({)
+ ident(addPoint) operator(=) ident(addPointImagedata)operator(;)
+ ident(points) operator(=) keyword(new) ident(Array)operator(()integer(4)operator(*)ident(numCols)operator(*)ident(numRows)operator(\))operator(;)
+ keyword(if) operator(()ident(avoidSparseArray)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(idx) operator(=) integer(0)operator(;) ident(idx) operator(<) integer(4)operator(*)ident(numCols)operator(*)ident(numRows)operator(;) operator(++)ident(idx)operator(\)) operator({)
+ ident(points)operator([)ident(idx)operator(]) operator(=) integer(0)operator(;)
+ operator(})
+ operator(})
+ operator(}) keyword(else) operator({)
+ ident(addPoint) operator(=) ident(addPointOrig)operator(;)
+ ident(points) operator(=) operator([)operator(])operator(;)
+ operator(})
+ keyword(var) ident(realStep) operator(=) operator(()ident(realRange)operator(.)ident(max) operator(-) ident(realRange)operator(.)ident(min)operator(\))operator(/)ident(numCols)operator(;)
+ keyword(var) ident(imagStep) operator(=) operator(()ident(imagRange)operator(.)ident(min) operator(-) ident(imagRange)operator(.)ident(max)operator(\))operator(/)ident(numRows)operator(;)
+ keyword(for) operator(()keyword(var) ident(i) operator(=) integer(0)operator(,) ident(curReal) operator(=) ident(realRange)operator(.)ident(min)operator(;)
+ ident(i) operator(<) ident(numCols)operator(;)
+ operator(++)ident(i)operator(,) ident(curReal) operator(+=) ident(realStep)operator(\)) operator({)
+ keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(,) ident(curImag) operator(=) ident(imagRange)operator(.)ident(max)operator(;)
+ ident(j) operator(<) ident(numRows)operator(;)
+ operator(++)ident(j)operator(,) ident(curImag) operator(+=) ident(imagStep)operator(\)) operator({)
+ keyword(var) ident(n) operator(=) ident(computeEscapeSpeed)operator(()ident(curReal)operator(,) ident(curImag)operator(\))operator(;)
+ ident(addPoint)operator(()ident(points)operator(,) ident(n)operator(,) ident(i)operator(,) ident(j)operator(\))
+ operator(})
+ operator(})
+ keyword(var) ident(result)operator(;)
+ keyword(if) operator(()ident(doImageData)operator(\)) operator({)
+ keyword(if) operator(()ident(colorMap) operator(==) ident(fuzzyColors)operator(\)) operator({)
+ ident(result) operator(=) ident(mandelbrotImageDataFuzzyResult)operator(;)
+ operator(}) keyword(else) operator({)
+ ident(result) operator(=) ident(mandelbrotImageDataModdedResult)operator(;)
+ operator(})
+ operator(}) keyword(else) operator({)
+ ident(result) operator(=) ident(mandelbrotNoImageDataResult)operator(;)
+ operator(})
+ keyword(return) ident(points)operator(.)ident(toSource)operator(()operator(\)) operator(==) ident(result)operator(;)
+ operator(})
+
+ ident(createMandelSet)operator(.)ident(expected) operator(=) pre_constant(true)operator(;)
+
+ ident(const) ident(escapeTests) operator(=) operator([) ident(escapeAbsDiff) operator(])operator(;)
+ ident(const) ident(colorMaps) operator(=) operator([) ident(fuzzyColors)operator(,) ident(moddedColors) operator(])operator(;)
+ ident(const) ident(escapeComputations) operator(=) operator([) ident(computeEscapeSpeedObjects)operator(,)
+ ident(computeEscapeSpeedOneObject)operator(,)
+ ident(computeEscapeSpeedDoubles) operator(])operator(;)
+ comment(// Test all possible escape-speed generation codepaths, using the)
+ comment(// imageData + sparse array avoidance storage.)
+ ident(doImageData) operator(=) pre_constant(true)operator(;)
+ ident(avoidSparseArray) operator(=) pre_constant(true)operator(;)
+ keyword(for) operator(()keyword(var) ident(escapeIdx) keyword(in) ident(escapeTests)operator(\)) operator({)
+ ident(escape) operator(=) ident(escapeTests)operator([)ident(escapeIdx)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(colorMapIdx) keyword(in) ident(colorMaps)operator(\)) operator({)
+ ident(colorMap) operator(=) ident(colorMaps)operator([)ident(colorMapIdx)operator(])operator(;)
+ keyword(for) operator(()keyword(var) ident(escapeComputationIdx) keyword(in) ident(escapeComputations)operator(\)) operator({)
+ ident(computeEscapeSpeed) operator(=) ident(escapeComputations)operator([)ident(escapeComputationIdx)operator(])operator(;)
+ ident(test)operator(()ident(createMandelSet)operator(\))operator(;)
+ operator(})
+ operator(})
+ operator(})
+
+ comment(// Test all possible storage strategies. Note that we already tested)
+ comment(// doImageData == true with avoidSparseArray == true.)
+ ident(escape) operator(=) ident(escapeAbsDiff)operator(;)
+ ident(colorMap) operator(=) ident(fuzzyColors)operator(;) comment(// This part doesn't really matter too much here)
+ ident(computeEscapeSpeed) operator(=) ident(computeEscapeSpeedDoubles)operator(;)
+
+ ident(doImageData) operator(=) pre_constant(true)operator(;)
+ ident(avoidSparseArray) operator(=) pre_constant(false)operator(;)
+ ident(test)operator(()ident(createMandelSet)operator(\))operator(;)
+
+ ident(escape) operator(=) ident(escapeNorm2)operator(;)
+ ident(doImageData) operator(=) pre_constant(false)operator(;) comment(// avoidSparseArray doesn't matter here)
+ ident(test)operator(()ident(createMandelSet)operator(\))operator(;)
+comment(//})
+comment(//testMandelbrotAll(\);)
+operator(}) comment(/* if (gDoMandelbrotTest\) */)
+comment(// END MANDELBROT STUFF)
+
+comment(/*****************************************************************************
+ * _ _ ____ _ __ ____ _____ ______ *
+ * | \\ | |/ __ \\ | \\/ |/ __ \\| __ \\| ____| *
+ * | \\| | | | | | \\ / | | | | |__\) | |__ *
+ * | . ` | | | | | |\\/| | | | | _ /| __| *
+ * | |\\ | |__| | | | | | |__| | | \\ \\| |____ *
+ * |_| \\_|\\____/ |_| |_|\\____/|_| \\_\\______| *
+ * *
+ * _______ ______ _____ _______ _____ *
+ * |__ __| ____|/ ____|__ __/ ____| *
+ * | | | |__ | (___ | | | (___ *
+ * | | | __| \\___ \\ | | \\___ \\ *
+ * | | | |____ ____\) | | | ____\) | *
+ * |_| |______|_____/ |_| |_____/ *
+ * *
+ * ______ _______ ______ _____ _ _ ______ _____ ______ _ *
+ * /\\ | ____|__ __| ____| __ \\ | | | | ____| __ \\| ____| | *
+ * / \\ | |__ | | | |__ | |__\) | | |__| | |__ | |__\) | |__ | | *
+ * / /\\ \\ | __| | | | __| | _ / | __ | __| | _ /| __| | | *
+ * / ____ \\| | | | | |____| | \\ \\ | | | | |____| | \\ \\| |____|_| *
+ * /_/ \\_\\_| |_| |______|_| \\_\\ |_| |_|______|_| \\_\\______(_\) *
+ * *
+ *****************************************************************************/)
+
+comment(/* NOTE: Keep this test last, since it screws up all for...in loops after it. */)
+keyword(function) function(testGlobalProtoAccess)operator(()operator(\)) operator({)
+ keyword(return) string<delimiter(")content(ok)delimiter(")>operator(;)
+operator(})
+local_variable(this)operator(.)ident(__proto__)operator(.)ident(a) operator(=) integer(3)operator(;) keyword(for) operator(()keyword(var) ident(j) operator(=) integer(0)operator(;) ident(j) operator(<) integer(4)operator(;) operator(++)ident(j)operator(\)) operator({) operator([)ident(a)operator(])operator(;) operator(})
+ident(testGlobalProtoAccess)operator(.)ident(expected) operator(=) string<delimiter(")content(ok)delimiter(")>operator(;)
+ident(test)operator(()ident(testGlobalProtoAccess)operator(\))operator(;)
+
+comment(/* Keep these at the end so that we can see the summary after the trace-debug spew. */)
+keyword(if) operator(()ident(gReportSummary)operator(\)) operator({)
+ ident(print)operator(()string<delimiter(")char(\\n)content(passed:)delimiter(")>operator(,) ident(passes)operator(.)ident(length) operator(&&) ident(passes)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\)\))operator(;)
+ ident(print)operator(()string<delimiter(")char(\\n)content(FAILED:)delimiter(")>operator(,) ident(fails)operator(.)ident(length) operator(&&) ident(fails)operator(.)ident(join)operator(()string<delimiter(")content(,)delimiter(")>operator(\)\))operator(;)
+operator(})