| /* { dg-do compile } */ |
| |
| unsigned long ok = 0UL; |
| #pragma GCC diagnostic push |
| #pragma GCC diagnostic warning "-Wtraditional" |
| unsigned long bad = 1UL; /* { dg-warning "suffix" } */ |
| /* Note the extra space before the pragma on this next line: */ |
| #pragma GCC diagnostic pop |
| unsigned long ok_again = 2UL; /* { dg-bogus "suffix" } */ |
| |
| /* Redundant with the previous pop, but just shows that it fails to stop the |
| * following warning with an unpatched GCC: */ |
| #pragma GCC diagnostic ignored "-Wtraditional" |
| |
| /* { dg-bogus "would be stringified" "" { target *-*-* } .+1 } */ |
| #define UNW_DEC_PROLOGUE(fmt, body, rlen, arg) \ |
| do { \ |
| unw_rlen = rlen; \ |
| *(int *)arg = body; \ |
| printf(" %s:%s(rlen=%lu)\n", \ |
| fmt, (body ? "body" : "prologue"), (unsigned long)rlen); \ |
| } while (0) |