blob: cb898bc48ec713dad8fbb8ead59ed4694487441e [file] [log] [blame]
! { dg-do run }
! Tests the fix for the bug PR33233, in which the reference to 'x'
! in 'inner' wrongly host-associated with the variable 'x' rather
! than the function.
!
! Contributed by Tobias Burnus <burnus@gcc.gnu.org>
!
MODULE m
REAL :: x(3) = (/ 1.5, 2.5, 3.5 /)
CONTAINS
SUBROUTINE s
if (x(2) .eq. 2.5) STOP 1
CONTAINS
FUNCTION x(n, m)
integer, optional :: m
if (present(m)) then
x = REAL(n)**m
else
x = 0.0
end if
END FUNCTION
END SUBROUTINE s
END MODULE m
use m
call s
end