1! { dg-do compile }
2! various checks which verify that we don't change do-iterators
3DO I=1,5       ! { dg-error "cannot be redefined" "changing do-iterator 1" }
4   I=1         ! { dg-error "cannot be redefined" "changing do-iterator 1" }
5END DO
6DO I=1,5       ! { dg-error "cannot be redefined" "changing do-iterator 2" }
7   READ(5,*) I ! { dg-error "cannot be redefined" "changing do-iterator 2" }
8END DO
9DO I=1,5       ! { dg-error "cannot be redefined" "changing do-iterator 3" }
10   READ(5,*,iostat=i) j ! { dg-error "cannot be redefined" "changing do-iterator 3" }
11ENDDO
12END
13