diff options
Diffstat (limited to 'js/src/jit-test/tests/modules/bug-1420420-2.js')
-rw-r--r-- | js/src/jit-test/tests/modules/bug-1420420-2.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/modules/bug-1420420-2.js b/js/src/jit-test/tests/modules/bug-1420420-2.js new file mode 100644 index 0000000000..e67882300b --- /dev/null +++ b/js/src/jit-test/tests/modules/bug-1420420-2.js @@ -0,0 +1,17 @@ +// Test re-instantiation module after failure. + +load(libdir + "asserts.js"); + +registerModule("good", parseModule(`export let x`)); + +registerModule("y1", parseModule(`export let y`)); +registerModule("y2", parseModule(`export let y`)); +registerModule("bad", parseModule(`export* from "y1"; export* from "y2";`)); + +registerModule("a", parseModule(`import* as ns from "good"; import {y} from "bad";`)); + +let b = registerModule("b", parseModule(`import "a";`)); +let c = registerModule("c", parseModule(`import "a";`)); + +assertThrowsInstanceOf(() => b.declarationInstantiation(), SyntaxError); +assertThrowsInstanceOf(() => c.declarationInstantiation(), SyntaxError); |