blob: 0e8608360529cd27b03f7d7ac5deda5444ad16a0 [file] [log] [blame]
// { dg-do compile { target *-*-darwin* } }
// { dg-final { scan-assembler "GCC_except_table0" } }
void needed();
void unneeded();
/* APPLE LOCAL begin omit calls to empty destructors 5559195 */
int n = 0;
/* APPLE LOCAL end omit calls to empty destructors 5559195 */
class Bar
{
public:
Bar() {}
/* APPLE LOCAL begin omit calls to empty destructors 5559195 */
virtual ~Bar() {
// Without this nontrivial operation, destructor is optimized away and
// GCC_except_table0 is not generated.
n = 1;
}
/* APPLE LOCAL end omit calls to empty destructors 5559195 */
void unneeded();
};
void needed()
{
Bar b;
}
//#if 0
void unneeded()
{
Bar b;
b.unneeded();
}
//#endif
int main()
{
needed();
return 0;
}