1 /* Prove that HANDLE_PRAGMA_PUSH_POP_MACRO handling works somewhat. */
2 
3 /* { dg-do link { target *-*-mingw* } } */
4 
5 #define TEXT1  "ABC"
6 #define TEXT2  "DEF"
7 
main()8 int main()
9 {
10   if (__builtin_strcmp (TEXT1 TEXT2, "ABCDEF") != 0)
11     link_error ();
12 
13 #pragma push_macro("TEXT1")
14 #undef TEXT1
15 #define TEXT1  "XYZ"
16 
17   if (__builtin_strcmp (TEXT1 TEXT2, "XYZDEF") != 0)
18     link_error ();
19 
20 #pragma pop_macro("TEXT1")
21 
22   if (__builtin_strcmp (TEXT1 TEXT2, "ABCDEF") != 0)
23     link_error ();
24 
25   return 0;
26 }
27