| /* { dg-do compile } */ |
| /* { dg-options "-fgnu-tm -ftrack-macro-expansion=0" } */ |
| |
| #define W(X) __attribute__((transaction_wrap(X))) |
| void f1(void); |
| void f2(int); |
| int i3; |
| int f7(void); |
| |
| void g1(void) W(f1); |
| void g2(void) W(f2); /* { dg-error "is not compatible" } */ |
| void g3(void) W(i3); /* { dg-error "is not a function" } */ |
| void g4(void) W(f4); /* { dg-error "not declared in this scope\|not an identifier" } */ |
| void g5(void) W(1); /* { dg-error "not an identifier" } */ |
| void g6(void) W("f1"); /* { dg-error "not an identifier" } */ |
| void g7(void) W(f7); /* { dg-error "is not compatible" } */ |