blob: a1df5777df8bfa50e6b8041439e358b3ec0045b0 [file] [log] [blame]
// Copyright 2018 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --expose-gc
this.__proto__ = new Proxy({}, {});
function test1() {
eval("bla");
}
assertThrows(test1, ReferenceError);
assertThrows(test1, ReferenceError);
assertThrows(test1, ReferenceError);
function test2() {
gc();
eval("bla");
}
assertThrows(test2, ReferenceError);
assertThrows(test2, ReferenceError);
assertThrows(test2, ReferenceError);
function foo() {
try {
eval("bla");
} catch(e) {
return;
}
throw 1337;
}
function test3() {
gc();
foo();
foo();
}
assertDoesNotThrow(test3);
assertDoesNotThrow(test3);
assertDoesNotThrow(test3);