libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / pr106809.c
blob11e158185cf4679fd26e9a5965c91384de622fd2
1 /* { dg-do compile } */
2 /* { dg-additional-options "-Wuninitialized" } */
4 int foo (int x, int *val)
6 switch (x)
8 #define C(n) \
9 case n + 0: return *val; \
10 case n + 1: return *val; \
11 case n + 2: return *val; \
12 case n + 3: return *val; \
13 case n + 4: return *val; \
14 case n + 5: return *val; \
15 case n + 6: return *val; \
16 case n + 7: return *val; \
17 case n + 8: return *val; \
18 case n + 9: return *val;
19 #define C1(n) \
20 C(n+00) C(n+10) C(n+20) C(n+30) C(n+40) \
21 C(n+50) C(n+60) C(n+70) C(n+80) C(n+90)
22 #define C10(n) \
23 C1(n+000) C1(n+100) C1(n+200) C1(n+300) C1(n+400) \
24 C1(n+500) C1(n+600) C1(n+700) C1(n+800) C1(n+900)
25 C10(1000)
27 return 0;