1! RUN: not %flang_fc1 -fdebug-unparse-with-symbols %s 2>&1 | FileCheck %s
2! CHECK: Label '50' was not found
3! CHECK: warning: Label '55' is in a construct that should not be used as a branch target here
4! CHECK: Label '70' is not a branch target
5! CHECK: Control flow use of '70'
6! CHECK: error: Label '80' is in a construct that prevents its use as a branch target here
7! CHECK: error: Label '90' is in a construct that prevents its use as a branch target here
8! CHECK: error: Label '91' is in a construct that prevents its use as a branch target here
9! CHECK: error: Label '92' is in a construct that prevents its use as a branch target here
10
11subroutine sub00(a,b,n,m)
12  real a(n,m)
13  real b(n,m)
14  if (n .ne. m) then
15     goto 50
16  end if
176 n = m
18end subroutine sub00
19
20subroutine sub01(a,b,n,m)
21  real a(n,m)
22  real b(n,m)
23  if (n .ne. m) then
24     goto 55
25  else
2655   continue
27  end if
2860 n = m
29end subroutine sub01
30
31subroutine sub02(a,b,n,m)
32  real a(n,m)
33  real b(n,m)
34  if (n .ne. m) then
35     goto 70
36  else
37     return
38  end if
3970 FORMAT (1x,i6)
40end subroutine sub02
41
42subroutine sub03(a,n)
43  real a(n)
44  forall (j=1:n)
4580  a(n) = j
46  end forall
47  go to 80
48end subroutine sub03
49
50subroutine sub04(a,n)
51  real a(n)
52  where (a > 0)
5390  a = 1
54  elsewhere (a < 0)
5591  a = 2
56  elsewhere
5792  a = 3
58  end where
59  if (n - 3) 90, 91, 92
60end subroutine sub04
61