summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/20050122-2.c
blob: 1e297be8cb6ba06091e87c2c75e7583a7f905e0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* Related to PR 19484.  */
/* { dg-require-effective-target trampolines } */

extern void foo (void) __attribute__((noreturn));
int n;

void
g (void)
{
  __label__ lab;
  void h (void) { if (n == 2) goto lab; }
  void (*f1) (void) = foo;
  void (*f2) (void) = h;

  f2 ();
  if (n)
    f1 ();
  n = 1;
 lab:
  n++;
}