10 Mar 2017 4:12
#19045
The following program complains about inconsistent kind types when compiled in 64-bit mode, but not in 32-bit mode. The error message disappears if the pointer declaration is deleted or if it is not nullified, even though the pointer is not referenced anywhere.
Module m
Type d
Integer :: i
End Type d
Integer, Pointer :: j => Null()
!
Contains
!
Subroutine s1 (ad)
Type(d) :: ad
!
Call s2 (ad%i)
Return
End Subroutine s1
!
Subroutine s2 (i)
Integer :: i
!
Return
End Subroutine s2
End Module m
[/code]