// Copyright 2017 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-syntaxclassMyErrorA{}classMyErrorB{}classA{}classBextendsA{constructor(){try{super();}catch(e){thrownewMyErrorB();}}}varthrower=newProxy(A,{get(target,property,receiver){if(property==='prototype')thrownewMyErrorA();}});assertThrows(()=>Reflect.construct(B,[],thrower),MyErrorB);assertThrows(()=>Reflect.construct(B,[],thrower),MyErrorB);%OptimizeFunctionOnNextCall(B);assertThrows(()=>Reflect.construct(B,[],thrower),MyErrorB);