| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- // RUN: %clang_cc1 -fsyntax-only -verify -pedantic %s
- #define for 0 // expected-warning {{keyword is hidden by macro definition}}
- #define final 1
- #define __HAVE_X 0
- #define _HAVE_X 0
- #define X__Y
- #undef for
- #undef final
- #undef __HAVE_X
- #undef _HAVE_X
- #undef X__Y
- #undef __cplusplus
- #define __cplusplus
- // whitelisted definitions
- #define while while
- #define const
- #define static
- #define extern
- #define inline
- #undef while
- #undef const
- #undef static
- #undef extern
- #undef inline
- #define inline __inline
- #undef inline
- #define inline __inline__
- #undef inline
- #define inline inline__ // expected-warning {{keyword is hidden by macro definition}}
- #undef inline
- #define extern __inline // expected-warning {{keyword is hidden by macro definition}}
- #undef extern
- #define extern __extern // expected-warning {{keyword is hidden by macro definition}}
- #undef extern
- #define extern __extern__ // expected-warning {{keyword is hidden by macro definition}}
- #undef extern
- #define inline _inline // expected-warning {{keyword is hidden by macro definition}}
- #undef inline
- #define volatile // expected-warning {{keyword is hidden by macro definition}}
- #undef volatile
- #pragma clang diagnostic warning "-Wreserved-id-macro"
- #define switch if // expected-warning {{keyword is hidden by macro definition}}
- #define final 1
- #define __HAVE_X 0 // expected-warning {{macro name is a reserved identifier}}
- #define _HAVE_X 0 // expected-warning {{macro name is a reserved identifier}}
- #define X__Y // expected-warning {{macro name is a reserved identifier}}
- #undef __cplusplus // expected-warning {{macro name is a reserved identifier}}
- #undef _HAVE_X // expected-warning {{macro name is a reserved identifier}}
- #undef X__Y // expected-warning {{macro name is a reserved identifier}}
- int x;
|