// Copyright 2016 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: --allow-natives-syntax | |
'use strict'; | |
var resolved = Promise.resolve(); | |
var count = 0; | |
Object.defineProperty(Promise.prototype, 'constructor', | |
{ get() { count++; return Promise; } }) | |
async function foo() { | |
await resolved; | |
return resolved; | |
} | |
async function bar() { | |
throw 1; | |
} | |
foo(); | |
bar(); | |
%RunMicrotasks(); | |
assertEquals(2, count); |