| ! { dg-do run } |
| ! PR fortran/93483 |
| ! |
| ! Verify that resolution (host associated parameter vs. contained function) works. |
| ! |
| ! Contributed by Mikael Morin |
| |
| module m |
| implicit none |
| integer, parameter :: a(*) = [ 7, 11 ] |
| contains |
| subroutine bug |
| real :: b(1), c(1) |
| b = [ real :: (a(1)) ] |
| c = [ real :: a(1) ] |
| print *, b, c |
| if (any (b /= [ 14. ])) stop 1 |
| if (any (c /= [ 14. ])) stop 2 |
| contains |
| function a(c) |
| integer :: a, c |
| a = c + 13 |
| end function a |
| end subroutine bug |
| end module m |
| |
| program p |
| use m |
| call bug |
| end program p |