//@ runDefault("--useBigInt=true", "--useConcurrentJIT=false") function assert(a) { if (!a) throw new Error("Bad assertion"); } function foo(a, b) { return a === b; } noInline(foo); for (let i = 0; i < 100000; i++) { assert(!foo(2n, 3n)); assert(foo(3n, 3n)); } assert(!foo(3, 3n)); assert(!foo(0.33, 3n)); assert(!foo("3", 3n)); assert(!foo(Symbol("3"), 3n)); assert(!foo(true, 3n)); assert(!foo(false, 3n)); assert(!foo(NaN, 3n)); assert(!foo(null, 3n)); assert(!foo(undefined, 3n)); assert(!foo(+Infinity, 3n)); assert(!foo(-Infinity, 3n)); function bar() { return 3n; } noInline(bar); for (let i = 0; i < 100000; i++) assert(bar() === bar());