1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/* { dg-do compile } */ /* { dg-options "-fgnu-tm" } */ void unsafe(void) __attribute__((transaction_unsafe)); void f(void) { int a; __transaction_atomic { a = 1; __transaction_atomic { __transaction_cancel; } } unsafe(); }