1 /* { dg-do compile } */
2 /* { dg-options "-O2 -Wall" } */
3 /* { dg-require-effective-target indirect_jumps } */
4 
5 #include <setjmp.h>
6 
7 jmp_buf buf;
8 
9 void foo (int);
10 void bar (int) __attribute__((leaf));
11 
enumerate_locals(int indent)12 void enumerate_locals (int indent)
13 {
14   foo (0);
15   while (indent--)
16     {
17       int local_indent = 8 + (8 * indent);
18       if (local_indent != 8)
19 	{
20 	  setjmp (buf);
21 	  bar (local_indent);  /* { dg-bogus "may be used uninitialized" } */
22 	}
23     }
24   foo (1);
25 }
26