view gcc/testsuite/g++.dg/cpp0x/noexcept05.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// Make sure that we force an LSDA for a noexcept spec so
// that the personality routine will call terminate.  Also check that we
// optimize away the EH cleanup for var because the personality routine
// will call terminate before unwinding: there should not be an EH region
// (i.e. LEHB/LEHE labels) around the call to g().

// { dg-final { scan-assembler-not "_ZSt9terminatev" } }
// { dg-final { scan-assembler-not "EHB" } }
// { dg-final { scan-assembler "LSDA" } }

// { dg-do compile { target c++11 } }

struct A { ~A(); };
void g();
void f() noexcept
{
  A var;
  g();
}