summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/bug1684821.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/bug1684821.js')
-rw-r--r--js/src/jit-test/tests/debug/bug1684821.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/bug1684821.js b/js/src/jit-test/tests/debug/bug1684821.js
new file mode 100644
index 0000000000..dfbefd9962
--- /dev/null
+++ b/js/src/jit-test/tests/debug/bug1684821.js
@@ -0,0 +1,26 @@
+let g = newGlobal({newCompartment: true});
+let d = new Debugger(g);
+
+d.onDebuggerStatement = function (frame) {
+ frame.environment;
+};
+
+g.evaluate(`
+ function * foo() {
+ // Force CallObject + LexicalEnvironmentObject
+ let x;
+ let y = () => x;
+
+ // Force DebuggerEnvironment
+ debugger;
+
+ // Force suspend and frame snapshot
+ yield;
+
+ // Popping this frame will trigger a second snapshot
+ }
+`)
+
+let x = g.foo();
+x.next();
+x.next();