1 /* Copyright (C) 2007 Free Software Foundation, Inc.  */
2 
3 /* { dg-do preprocess } */
4 /* { dg-require-effective-target powerpc_altivec_ok } */
5 /* { dg-options "-maltivec" } */
6 
7 /* Conditional macros should not be expanded by pragmas.  */
8 #pragma __vector
9 _Pragma ("__vector")
10 
11 /* Redefinition of conditional macros.  */
12 /* No warning should be generated.  */
13 
14 #define __vector __new_vector
15 #define __pixel __new_pixel
16 #define __bool __new_bool
17 #define vector new_vector
18 #define pixel new_pixel
19 #define bool new_bool
20 
21 /* Definition of conditional macros.  */
22 /* No warning should be generated.  */
23 
24 #undef __vector
25 #define __vector __new_vector
26 /* { dg-message "-:location of the previous"  "prev __vector defn"  { target *-*-* } .-1 } */
27 
28 #undef __pixel
29 #define __pixel __new_pixel
30 /* { dg-message "-:location of the previous"  "prev __pixel defn"   { target *-*-* } .-1 } */
31 
32 #undef __bool
33 #define __bool __new_bool
34 /* { dg-message "-:location of the previous"  "prev __bool defn"    { target *-*-* } .-1 } */
35 
36 #undef vector
37 #define vector new_vector
38 /* { dg-message "-:location of the previous"  "prev vector defn"    { target *-*-* } .-1 } */
39 
40 #undef pixel
41 #define pixel new_pixel
42 /* { dg-message "-:location of the previous"  "prev pixel defn"     { target *-*-* } .-1 } */
43 
44 #undef bool
45 #define bool new_bool
46 /* { dg-message "-:location of the previous"  "prev bool defn"      { target *-*-* } .-1 } */
47 
48 /* Re-definition of "unconditional" macros.  */
49 /* Warnings should be generated as usual.  */
50 
51 #define __vector	__newer_vector
52 /* { dg-warning "-:redefined" "__vector redefined"  { target *-*-* } .-1 } */
53 
54 #define __pixel		__newer_pixel
55 /* { dg-warning "-:redefined" "__pixel redefined"   { target *-*-* } .-1 } */
56 
57 #define __bool		__newer_bool
58 /* { dg-warning "-:redefined" "__bool redefined"    { target *-*-* } .-1 } */
59 
60 #define vector		newer_vector
61 /* { dg-warning "-:redefined" "vector redefined"    { target *-*-* } .-1 } */
62 
63 #define pixel		newer_pixel
64 /* { dg-warning "-:redefined" "pixel redefined"     { target *-*-* } .-1 } */
65 
66 #define bool		newer_bool
67 /* { dg-warning "-:redefined" "bool redefined"      { target *-*-* } .-1 } */
68