blob: d0de1f44913f8f91c29fae53aa2dc996e358a871 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
! Program to test contained functions calling their siblings.
! This is tricky because we don't find the declaration for the sibling
! function until after the caller has been parsed.
program contained_3
call test
contains
subroutine test
if (sub(3) .ne. 6) call abort
end subroutine
integer function sub(i)
integer i
if (i .gt. 1) then
sub = sub2(i) * i
else
sub = 1
end if
end function
integer function sub2(i)
integer i
sub2 = sub(i - 1)
end function
end program
|