// |reftest| skip-if(!xulRuntime.shell) // Any copyright is dedicated to the Public Domain. // http://creativecommons.org/licenses/publicdomain/ //----------------------------------------------------------------------------- var BUGNUMBER = 822041; var summary = "Live generators should not cache SPS state"; print(BUGNUMBER + ": " + summary); function gen() { var x = yield turnoff(); yield x; yield 'bye'; } function turnoff() { print("Turning off profiler\n"); disableSPSProfiling(); return 'hi'; } for (var slowAsserts of [ true, false ]) { // The slowAssertions setting is not expected to matter if (slowAsserts) enableSPSProfilingWithSlowAssertions(); else enableSPSProfiling(); g = gen(); assertEq(g.next(), 'hi'); assertEq(g.send('gurgitating...'), 'gurgitating...'); for (var x in g) assertEq(x, 'bye'); } // This is really a crashtest reportCompare(0, 0, 'ok');