1*6c1ac141SIvan Zhechev! RUN: %python %S/test_errors.py %s %flang_fc1 264ab3302SCarolineConcatto! C1131, C1133 -- check valid and invalid DO loop naming 364ab3302SCarolineConcatto! C1131 (R1119) If the do-stmt of a do-construct specifies a do-construct-name, 464ab3302SCarolineConcatto! the corresponding end-do shall be an end-do-stmt specifying the same 564ab3302SCarolineConcatto! do-construct-name. If the do-stmt of a do-construct does not specify a 664ab3302SCarolineConcatto! do-construct-name, the corresponding end-do shall not specify a 764ab3302SCarolineConcatto! do-construct-name. 864ab3302SCarolineConcatto! 964ab3302SCarolineConcatto! C1133 (R1119) If the do-stmt is a label-do-stmt, the corresponding end-do 1064ab3302SCarolineConcatto! shall be identified with the same label. 1164ab3302SCarolineConcatto 1264ab3302SCarolineConcattosubroutine s1() 1364ab3302SCarolineConcatto implicit none 1464ab3302SCarolineConcatto ! Valid construct 1564ab3302SCarolineConcatto validdo: do while (.true.) 1664ab3302SCarolineConcatto print *, "hello" 1764ab3302SCarolineConcatto cycle validdo 1864ab3302SCarolineConcatto print *, "Weird to get here" 1964ab3302SCarolineConcatto end do validdo 2064ab3302SCarolineConcatto 2164ab3302SCarolineConcatto validdo: do while (.true.) 2264ab3302SCarolineConcatto print *, "Hello" 2364ab3302SCarolineConcatto end do validdo 2464ab3302SCarolineConcatto 2564ab3302SCarolineConcatto ! Missing name on initial DO 2664ab3302SCarolineConcatto do while (.true.) 2764ab3302SCarolineConcatto print *, "Hello" 2864ab3302SCarolineConcatto!ERROR: DO construct name unexpected 2964ab3302SCarolineConcatto end do formerlabelmissing 3064ab3302SCarolineConcatto 3164ab3302SCarolineConcatto dolabel: do while (.true.) 3264ab3302SCarolineConcatto print *, "Hello" 3364ab3302SCarolineConcatto!ERROR: DO construct name mismatch 3464ab3302SCarolineConcatto end do differentlabel 3564ab3302SCarolineConcatto 3664ab3302SCarolineConcatto dowithcycle: do while (.true.) 3764ab3302SCarolineConcatto print *, "Hello" 3864ab3302SCarolineConcatto!ERROR: CYCLE construct-name is not in scope 3964ab3302SCarolineConcatto cycle validdo 4064ab3302SCarolineConcatto end do dowithcycle 4164ab3302SCarolineConcatto 4264ab3302SCarolineConcattoend subroutine s1 43