| /* C99 6.10.8 para 4: None of [the predefined macro names] shall be |
| the subject of a #define or an #undef preprocessing directive. We |
| pass -fno-show-column as otherwise dejagnu gets confused. */ |
| |
| /* { dg-do preprocess } */ |
| /* { dg-options "-fno-show-column" } */ |
| |
| #undef __DATE__ /* { dg-warning "undefining" "__DATE__" } */ |
| #undef __TIME__ /* { dg-warning "undefining" "__TIME__" } */ |
| #undef __FILE__ /* { dg-warning "undefining" "__FILE__" } */ |
| #undef __LINE__ /* { dg-warning "undefining" "__LINE__" } */ |
| #undef __STDC__ /* { dg-warning "undefining" "__STDC__" } */ |
| |
| /* These should be protected from #undef, but aren't, because they |
| are set with normal #define commands - and on top of that, some |
| of them are library properties, outside our control. To consider: |
| warn about undefining/redefining any identifier beginning with |
| __STDC_ . |
| |
| __STDC_HOSTED__ |
| __STDC_VERSION__ |
| __STDC_IEC_559__ |
| __STDC_IEC_559_COMPLEX__ |
| __STDC_ISO_10646__ |
| */ |