Files
clang-p2996/flang/test/Semantics/modfile12.f90
Peter Klausler 8ed7ea0896 [flang] Defer conversion of PDT default initializers (#91026)
As the kinds of the integer types of type parameters may well depend on
the values of other type parameters, defer the attempt to convert their
values to the point of type instantiation instead of doing it during
declaration processing.
2024-05-09 09:56:01 -07:00

67 lines
1.3 KiB
Fortran

! RUN: %python %S/test_modfile.py %s %flang_fc1
module m
integer(8), parameter :: a = 1, b = 2_8
parameter(n=3,l=-3,e=1.0/3.0)
real :: x(a:2*(a+b*n)-1)
real, dimension(8) :: y
type t(c, d)
integer, kind :: c = 1
integer, len :: d = a + b
end type
type(t(a+3,:)), allocatable :: z
class(t(a+4,:)), allocatable :: z2
class(*), allocatable :: z4
real*2 :: f
complex*32 :: g
type t2(i, j, h)
integer, len :: h
integer, kind :: j
integer, len :: i
end type
contains
subroutine foo(x)
real :: x(2:)
end
subroutine bar(x)
real :: x(..)
end
subroutine baz(x)
type(*) :: x
end
end
!Expect: m.mod
!module m
! integer(8),parameter::a=1_8
! integer(8),parameter::b=2_8
! integer(4),parameter::n=3_4
! integer(4),parameter::l=-3_4
! real(4),parameter::e=3.333333432674407958984375e-1_4
! real(4)::x(1_8:13_8)
! real(4)::y(1_8:8_8)
! type::t(c,d)
! integer(4),kind::c=1_4
! integer(4),len::d=3_8
! end type
! type(t(c=4_4,d=:)),allocatable::z
! class(t(c=5_4,d=:)),allocatable::z2
! class(*),allocatable::z4
! real(2)::f
! complex(16)::g
! type::t2(i,j,h)
! integer(4),len::h
! integer(4),kind::j
! integer(4),len::i
! end type
!contains
! subroutine foo(x)
! real(4)::x(2_8:)
! end
! subroutine bar(x)
! real(4)::x(..)
! end
! subroutine baz(x)
! type(*)::x
! end
!end