OSDN Git Service

PR c++/43076
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / pr43058.c
1 /* PR debug/43058 */
2 /* { dg-do compile } */
3 /* { dg-options "-g -O2" } */
4
5 extern void *f1 (void *, void *, void *);
6 extern void *f2 (const char *, int, int, int, void *(*) ());
7 extern void *f3 (const char *);
8 extern void *f4 (void *s);
9 extern void *f5 (void *);
10
11 void test (void)
12 {
13 #define X1 f1 (f2 ("a", 1, 0, 0, f5), \
14                f4 (({ const char *a = "b"; f3 (a); })), \
15                ({ const char *a = "c"; f3 (a); }));
16 #define X2 X1 X1 X1 X1 X1 X1 X1 X1 X1 X1
17 #define X3 X2 X2 X2 X2 X2 X2 X2 X2 X2 X2
18 #define X4 X3 X3 X3 X3 X3 X3 X3 X3 X3 X3
19   X4 X4
20 }