blob: a9d860bf0414fcb8b77c54fd29a74eacdeda9ad5 (
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
34
35
|
! { dg-do run }
! PR 22607: External/module pure return-by-reference functions
pure function hoj()
integer :: hoj(3)
hoj = (/1, 2, 3/)
end function hoj
module huj_mod
contains
pure function huj()
integer :: huj(3)
huj = (/1, 2, 3/)
end function huj
end module huj_mod
program pure_byref_3
use huj_mod
implicit none
interface
pure function hoj()
integer :: hoj(3)
end function hoj
end interface
integer :: a(3)
a = huj()
if (.not. all(a == (/1, 2, 3/))) call abort()
a = hoj()
if (.not. all(a == (/1, 2, 3/))) call abort()
end program pure_byref_3
! { dg-final { cleanup-modules "huj_mod" } }
|