1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fexceptions -fcheck-pointer-bounds -mmpx" } */
3 
4 extern int f2 (const char*, int, ...);
5 extern long int f3 (int *);
6 extern void err (void) __attribute__((__error__("error")));
7 
8 extern __inline __attribute__ ((__always_inline__)) int
f1(int i,...)9 f1 (int i, ...)
10 {
11   if (__builtin_constant_p (i))
12     {
13       if (i)
14 	err ();
15       return f2 ("", i);
16     }
17 
18   return f2 ("", i);
19 }
20 
21 int
test()22 test ()
23 {
24   int i;
25 
26   if (f1 (0))
27     if (f3 (&i))
28       i = 0;
29 
30   return i;
31 }
32 
33 
34