Peter Klausler 210e675cfd
[flang] Accept CHANGE TEAM/END TEAM as branch target (#123822)
It is valid to jump to a CHANGE TEAM statement from anywhere in the
containing executable part, and valid to jump to an END TEAM statement
from within the construct.
2025-01-27 08:54:56 -08:00

20 lines
532 B
Fortran

! RUN: %python %S/test_errors.py %s %flang_fc1
program main
use, intrinsic:: iso_fortran_env, only: team_type
type(team_type) team
logical :: p = false
1 change team(team)
2 if (p) goto 1 ! ok
if (p) goto 2 ! ok
if (p) goto 3 ! ok
if (p) goto 4 ! ok
if (p) goto 5 ! ok
3 end team
4 continue
if (p) goto 1 ! ok
!ERROR: Label '2' is in a construct that prevents its use as a branch target here
if (p) goto 2
!ERROR: Label '3' is in a construct that prevents its use as a branch target here
if (p) goto 3
5 end