2018-06-05 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / pr43058.c
blobbba6f814a71bcf9028a858d6c964a43ca69fc0b5
1 /* PR debug/43058 */
2 /* { dg-do compile } */
3 /* { dg-options "-g -O2" } */
4 /* { dg-timeout-factor 4 } */
6 extern void *f1 (void *, void *, void *);
7 extern void *f2 (const char *, int, int, int, void *(*) ());
8 extern void *f3 (const char *);
9 extern void *f4 (void *s);
10 extern void *f5 (void *);
12 void test (void)
14 #define X1 f1 (f2 ("a", 1, 0, 0, f5), \
15 f4 (({ const char *a = "b"; f3 (a); })), \
16 ({ const char *a = "c"; f3 (a); }));
17 #define X2 X1 X1 X1 X1 X1 X1 X1 X1 X1 X1
18 #define X3 X2 X2 X2 X2 X2 X2 X2 X2 X2 X2
19 #define X4 X3 X3 X3 X3 X3 X3 X3 X3 X3 X3
20 X4 X4