1! RUN: %S/test_modfile.sh %s %t %flang_fc1 2! REQUIRES: shell 3module m 4 integer(8), parameter :: a = 1, b = 2_8 5 parameter(n=3,l=-3,e=1.0/3.0) 6 real :: x(a:2*(a+b*n)-1) 7 real, dimension(8) :: y 8 type t(c, d) 9 integer, kind :: c = 1 10 integer, len :: d = a + b 11 end type 12 type(t(a+3,:)), allocatable :: z 13 class(t(a+4,:)), allocatable :: z2 14 class(*), allocatable :: z4 15 real*2 :: f 16 complex*32 :: g 17 type t2(i, j, h) 18 integer, len :: h 19 integer, kind :: j 20 integer, len :: i 21 end type 22contains 23 subroutine foo(x) 24 real :: x(2:) 25 end 26 subroutine bar(x) 27 real :: x(..) 28 end 29 subroutine baz(x) 30 type(*) :: x 31 end 32end 33 34!Expect: m.mod 35!module m 36! integer(8),parameter::a=1_8 37! integer(8),parameter::b=2_8 38! integer(4),parameter::n=3_4 39! integer(4),parameter::l=-3_4 40! real(4),parameter::e=3.333333432674407958984375e-1_4 41! real(4)::x(1_8:13_8) 42! real(4)::y(1_8:8_8) 43! type::t(c,d) 44! integer(4),kind::c=1_4 45! integer(4),len::d=3_4 46! end type 47! type(t(c=4_4,d=:)),allocatable::z 48! class(t(c=5_4,d=:)),allocatable::z2 49! class(*),allocatable::z4 50! real(2)::f 51! complex(16)::g 52! type::t2(i,j,h) 53! integer(4),len::h 54! integer(4),kind::j 55! integer(4),len::i 56! end type 57!contains 58! subroutine foo(x) 59! real(4)::x(2_8:) 60! end 61! subroutine bar(x) 62! real(4)::x(..) 63! end 64! subroutine baz(x) 65! type(*)::x 66! end 67!end 68