! RUN: %S/test_errors.sh %s %t %f18 ! C1131, C1133 -- check valid and invalid DO loop naming ! C1131 (R1119) If the do-stmt of a do-construct specifies a do-construct-name, ! the corresponding end-do shall be an end-do-stmt specifying the same ! do-construct-name. If the do-stmt of a do-construct does not specify a ! do-construct-name, the corresponding end-do shall not specify a ! do-construct-name. ! ! C1133 (R1119) If the do-stmt is a label-do-stmt, the corresponding end-do ! shall be identified with the same label. subroutine s1() implicit none ! Valid construct validdo: do while (.true.) print *, "hello" cycle validdo print *, "Weird to get here" end do validdo validdo: do while (.true.) print *, "Hello" end do validdo ! Missing name on initial DO do while (.true.) print *, "Hello" !ERROR: DO construct name unexpected end do formerlabelmissing dolabel: do while (.true.) print *, "Hello" !ERROR: DO construct name mismatch end do differentlabel dowithcycle: do while (.true.) print *, "Hello" !ERROR: CYCLE construct-name is not in scope cycle validdo end do dowithcycle end subroutine s1