forked from OSchip/llvm-project
62 lines
1.4 KiB
Fortran
62 lines
1.4 KiB
Fortran
! RUN: not %flang_fc1 -fdebug-unparse-with-symbols %s 2>&1 | FileCheck %s
|
|
! CHECK: Label '50' was not found
|
|
! CHECK-NOT: error: Label '55' is in a construct that prevents its use as a branch target here
|
|
! CHECK: Label '55' is in a construct that prevents its use as a branch target here
|
|
! CHECK: Label '70' is not a branch target
|
|
! CHECK: Control flow use of '70'
|
|
! CHECK: error: Label '80' is in a construct that prevents its use as a branch target here
|
|
! CHECK: error: Label '90' is in a construct that prevents its use as a branch target here
|
|
! CHECK: error: Label '91' is in a construct that prevents its use as a branch target here
|
|
! CHECK: error: Label '92' is in a construct that prevents its use as a branch target here
|
|
|
|
subroutine sub00(a,b,n,m)
|
|
real a(n,m)
|
|
real b(n,m)
|
|
if (n .ne. m) then
|
|
goto 50
|
|
end if
|
|
6 n = m
|
|
end subroutine sub00
|
|
|
|
subroutine sub01(a,b,n,m)
|
|
real a(n,m)
|
|
real b(n,m)
|
|
if (n .ne. m) then
|
|
goto 55
|
|
else
|
|
55 continue
|
|
end if
|
|
60 n = m
|
|
end subroutine sub01
|
|
|
|
subroutine sub02(a,b,n,m)
|
|
real a(n,m)
|
|
real b(n,m)
|
|
if (n .ne. m) then
|
|
goto 70
|
|
else
|
|
return
|
|
end if
|
|
70 FORMAT (1x,i6)
|
|
end subroutine sub02
|
|
|
|
subroutine sub03(a,n)
|
|
real a(n)
|
|
forall (j=1:n)
|
|
80 a(n) = j
|
|
end forall
|
|
go to 80
|
|
end subroutine sub03
|
|
|
|
subroutine sub04(a,n)
|
|
real a(n)
|
|
where (a > 0)
|
|
90 a = 1
|
|
elsewhere (a < 0)
|
|
91 a = 2
|
|
elsewhere
|
|
92 a = 3
|
|
end where
|
|
if (n - 3) 90, 91, 92
|
|
end subroutine sub04
|