modfile12.f90
1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
! RUN: %S/test_modfile.sh %s %t %f18
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_4
! 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