blob: 0f5094f420948611c51ac2009d3902989d66ff51 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
! { dg-do run }
! Check fix for PR24783 where we did try to resolve the implicit type
! from the wrong namespace thus rejecting valid code.
MODULE mod1
IMPLICIT NONE
CONTAINS
SUBROUTINE sub(vec, ny)
IMPLICIT REAL (a-h,o-z)
IMPLICIT INTEGER (i-n)
DIMENSION vec(ny)
ny = fun(vec(ny),1,1)
RETURN
END SUBROUTINE sub
REAL FUNCTION fun(r1, i1, i2)
IMPLICIT REAL (r,f)
IMPLICIT INTEGER (i)
DIMENSION r1(i1:i2)
r1(i1) = i1 + 1
r1(i2) = i2 + 1
fun = r1(i1) + r1(i2)
END FUNCTION fun
END MODULE mod1
use mod1
IMPLICIT REAL (d)
INTEGER i
dimension di(5)
i = 1
if (fun(di(i),1,2).NE.5) call abort()
call sub(di(i),i)
if (i.NE.4) call abort()
end
! { dg-final { cleanup-modules "mod1" } }
|