OSDN Git Service

Fix PR42205.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / bconstp-1.c
1 /* { dg-do compile } */
2
3 /* This test checks that builtin_constant_p can be used safely in
4    initializers for static data.  The macro X() defined below should
5    be an acceptable initializer expression no matter how complex its
6    argument is.  */
7
8 extern int a;
9 extern int b;
10
11 extern int foo(void);
12 extern int bar(void);
13
14 #define X(exp) (__builtin_constant_p(exp) ? (exp) : -1)
15
16 const short tests[] = {
17   X(0),
18   X(a),
19   X(0 && a),
20   X(a && b),
21   X(foo()),
22   X(0 && foo()),
23   X(a && foo()),
24   X(foo() && bar())
25 };