Merge from trunk @ 138209
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / altivec-macros.c
blobd95a68dd966e85aab5700cedcbdf7e6f8dddcefe
1 /* Copyright (C) 2007 Free Software Foundation, Inc. */
3 /* { dg-do preprocess } */
4 /* { dg-options "-maltivec" } */
6 /* Conditional macros should not be expanded by pragmas. */
7 #pragma __vector
8 _Pragma ("__vector")
10 /* Redefinition of conditional macros. */
11 /* No warning should be generated. */
13 #define __vector __new_vector
14 #define __pixel __new_pixel
15 #define __bool __new_bool
16 #define vector new_vector
17 #define pixel new_pixel
18 #define bool new_bool
20 /* Definition of conditional macros. */
21 /* No warning should be generated. */
23 #undef __vector
24 #define __vector __new_vector
26 #undef __pixel
27 #define __pixel __new_pixel
29 #undef __bool
30 #define __bool __new_bool
32 #undef vector
33 #define vector new_vector
35 #undef pixel
36 #define pixel new_pixel
38 #undef bool
39 #define bool new_bool
41 /* Re-definition of "unconditional" macros. */
42 /* Warnings should be generated as usual. */
44 #define __vector __newer_vector
45 #define __pixel __newer_pixel
46 #define __bool __newer_bool
47 #define vector newer_vector
48 #define pixel newer_pixel
49 #define bool newer_bool
51 /* { dg-warning "redefined" "__vector redefined" { target *-*-* } 44 } */
52 /* { dg-warning "redefined" "__pixel redefined" { target *-*-* } 45 } */
53 /* { dg-warning "redefined" "__bool redefined" { target *-*-* } 46 } */
54 /* { dg-warning "redefined" "vector redefined" { target *-*-* } 47 } */
55 /* { dg-warning "redefined" "pixel redefined" { target *-*-* } 48 } */
56 /* { dg-warning "redefined" "bool redefined" { target *-*-* } 49 } */
58 /* { dg-warning "previous" "prev __vector defn" { target *-*-* } 24 } */
59 /* { dg-warning "previous" "prev __pixel defn" { target *-*-* } 27 } */
60 /* { dg-warning "previous" "prev __bool defn" { target *-*-* } 30 } */
61 /* { dg-warning "previous" "prev vector defn" { target *-*-* } 33 } */
62 /* { dg-warning "previous" "prev pixel defn" { target *-*-* } 36 } */
63 /* { dg-warning "previous" "prev bool defn" { target *-*-* } 39 } */