| ! This can fail because BB is not resolved correctly. | |
| module M1 | |
| INTEGER p | |
| CONTAINS | |
| subroutine AA () | |
| implicit NONE | |
| p = BB () | |
| CONTAINS | |
| subroutine AA_1 () | |
| implicit NONE | |
| integer :: i | |
| i = BB () | |
| end subroutine | |
| function BB() | |
| integer :: BB | |
| BB = 1 | |
| end function | |
| end subroutine | |
| function BB() | |
| implicit NONE | |
| integer :: BB | |
| BB = 2 | |
| end function | |
| end module | |
| program P1 | |
| USE M1 | |
| implicit none | |
| p = 0 | |
| call AA () | |
| if (p /= 1) STOP 1 | |
| end |