blob: 8a5c124612a99fe083e3b395531ee128ae3d0c23 [file] [log] [blame]
! RUN: %python %S/test_modfile.py %s %flang_fc1
MODULE M1
TYPE T1
REAL(KIND=4), DIMENSION(:, :), POINTER :: ptr => Null()
END TYPE T1
TYPE O1
TYPE(T1), POINTER :: d => Null()
END TYPE O1
END MODULE
!Expect: m1.mod
!module m1
!type::t1
!real(4),pointer::ptr(:,:)=>NULL()
!end type
!intrinsic::null
!type::o1
!type(t1),pointer::d=>NULL()
!end type
!end
MODULE M2
USE M1,only : &
o1_prv => o1
public
TYPE D1
TYPE(o1_prv), PRIVATE :: prv = o1_prv ()
END TYPE D1
END MODULE
!Expect: m2.mod
!module m2
!use m1,only:o1_prv=>o1
!type::d1
!type(o1_prv),private::prv=o1_prv(d=NULL())
!end type
!end
MODULE M3
USE M2 , only : d1_prv => D1
PUBLIC
TYPE d1_ext
TYPE(d1_prv), PRIVATE :: prv = d1_prv()
END TYPE
END MODULE
!Expect: m3.mod
!module m3
!use m2,only:o1_prv
!use m2,only:d1_prv=>d1
!private::o1_prv
!type::d1_ext
!type(d1_prv),private::prv=d1_prv(prv=o1_prv(d=NULL()))
!end type
!end