1 /* { dg-do compile } */
2 /* { dg-options "-Os -fprofile-arcs" } */
3 /* { dg-require-profiling "-fprofile-generate" } */
4 
5 struct
6 {
7   int authority;
8 } * a, *b, c, d;
9 int e, f;
10 static int
fn1()11 fn1 ()
12 {
13   if (a)
14     goto verified;
15   if (b)
16     goto matched;
17   return -126;
18 matched:
19   e = 0;
20 verified:
21   if (b)
22     for (; &c != b; c = d)
23       ;
24   return 0;
25 }
26 
27 int
fn2()28 fn2 ()
29 {
30   for (;;)
31     {
32       f = fn1 ();
33       switch (f)
34         {
35         case -126:
36           continue;
37         default:
38           return 0;
39         }
40     }
41 }
42 
43