| // RUN: %clang_cc1 %s -Eonly -verify |
| |
| #pragma GCC poison rindex |
| rindex(some_string, 'h'); // expected-error {{attempt to use a poisoned identifier}} |
| |
| #define BAR _Pragma ("GCC poison XYZW") XYZW /*NO ERROR*/ |
| XYZW // ok |
| BAR |
| XYZW // expected-error {{attempt to use a poisoned identifier}} |
| |
| // Pragma poison shouldn't warn from macro expansions defined before the token |
| // is poisoned. |
| |
| #define strrchr rindex2 |
| #pragma GCC poison rindex2 |
| |
| // Can poison multiple times. |
| #pragma GCC poison rindex2 |
| |
| strrchr(some_string, 'h'); // ok. |