1 /* { dg-do compile } */
2 /* { dg-options "-fgnu-tm" } */
10 void f_first (void) { x
++; }
12 void __attribute__((transaction_safe
))
15 f_extern (); /* { dg-error "unsafe function call" } */
20 void __attribute__((transaction_may_cancel_outer
))
23 f_extern (); /* { dg-error "unsafe function call" } */
31 __transaction_atomic
{
32 f_extern (); /* { dg-error "unsafe function call" } */
36 __transaction_relaxed
{
41 __transaction_atomic
[[outer
]] {
42 f_extern (); /* { dg-error "unsafe function call" } */
48 void f_later () { f_first(); test_safe(); }