| !RUN: %python %S/../Semantics/test_errors.py %s %flang_fc1 -pedantic -Werror |
| blockdata |
| endblockdata |
| block data |
| end blockdata |
| block data |
| endblock data |
| |
| subroutine one(p) |
| doubleprecision d1 |
| double precision d2 |
| enum, bind(c) |
| enumerator :: e1=1 |
| endenum |
| enum, bind(c) |
| enumerator :: e2=2 |
| end enum |
| class(*), pointer :: p |
| integer assigned |
| |
| d1 = 0. |
| d2 = 0. |
| associate(s=>d1) |
| endassociate |
| associate(s=>d2) |
| end associate |
| block |
| endblock |
| block |
| end block |
| critical |
| endcritical |
| critical |
| end critical |
| do |
| enddo |
| do |
| end do |
| endfile(1) |
| end file(1) |
| if (.false.) then |
| elseif (.false.) then |
| else if (.false.) then |
| endif |
| if (.false.) then |
| end if |
| where ([.false.]) |
| elsewhere ([.false.]) |
| else where ([.false.]) |
| endwhere |
| where ([.false.]) |
| end where |
| forall(j=1:2) |
| endforall |
| forall(j=1:2) |
| end forall |
| selectcase(1) |
| case(1) |
| endselect |
| select case(1) |
| case(1) |
| end select |
| selecttype(p) |
| type is(doubleprecision) |
| endselect |
| select type(p) |
| type is(double precision) |
| end select |
| !PORTABILITY: deprecated usage |
| assign 10 to assigned |
| goto 10 |
| 10 go to 20 |
| !PORTABILITY: deprecated usage |
| 20 goto assigned |
| !PORTABILITY: deprecated usage |
| go to assigned |
| endsubroutine |
| |
| subroutine two(x,y) |
| use iso_fortran_env, only: team_type |
| real, intent(inout) :: x |
| real, intent(in out) :: y |
| type(team_type) t |
| change team(t) |
| endteam |
| change team(t) |
| end team |
| end subroutine |
| subroutine three |
| endsubroutine three |
| subroutine four |
| end subroutine four |
| |
| function f1() |
| f1 = 0. |
| endfunction |
| function f2() |
| f2 = 0. |
| end function |
| function f3() |
| f3 = 0. |
| endfunction f3 |
| function f4() |
| f4 = 0. |
| end function f4 |
| module m1 |
| interface |
| module subroutine p1 |
| endsubroutine |
| module subroutine p2 |
| end subroutine |
| module subroutine p3 |
| endsubroutine p3 |
| module subroutine p4 |
| end subroutine p4 |
| endinterface |
| interface |
| end interface |
| interface g1 |
| endinterface g1 |
| interface g2 |
| end interface g2 |
| endmodule |
| module m2 |
| end module |
| module m3 |
| endmodule m3 |
| module m4 |
| end module m4 |
| submodule(m1) sm1 |
| contains |
| module procedure p1 |
| endprocedure |
| endsubmodule |
| submodule(m1) sm2 |
| contains |
| module procedure p2 |
| end procedure |
| end submodule |
| submodule(m1) sm3 |
| contains |
| module procedure p3 |
| endprocedure p3 |
| endsubmodule sm3 |
| submodule(m1) sm4 |
| contains |
| module procedure p4 |
| end procedure p4 |
| end submodule sm4 |
| |
| program p |
| !PORTABILITY: missing space |
| realprogrammersusefortran |
| !PORTABILITY: missing space |
| commonprogrammersusefortran |
| endprogram p |