text: // Copyright 2019 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
  
  function opt(){
      (new (function(){
          try{
              r.c>new class extends(W.y.h){}
              l.g.e._
              function _(){}[]=({[l](){}}),c()
          }catch(x){}
      }));
      (((function(){})())?.v)()
  }
  %PrepareFunctionForOptimization(opt)
  assertThrows(() => opt());
  assertThrows(() => opt());
  %OptimizeFunctionOnNextCall(opt)
  assertThrows(() => opt());
  