// WeakMap constructor should propagate exception while getting key and value. load(libdir + "asserts.js"); var k1 = {}; var v1 = 42; var error_thrower_0 = { get 0() { throw new Error; }, 1: v1 }; assertThrowsInstanceOf(() => new WeakMap([error_thrower_0]), Error); var error_thrower_1 = { 0: k1, get 1() { throw new Error; } }; assertThrowsInstanceOf(() => new WeakMap([error_thrower_1]), Error);