summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/namelist_13.f90
blob: 185b522e7f0328b8a4f4feb824331450b6d2bfc3 (plain)
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
!{ dg-do run }
! Tests simple derived types.
! Provided by Paul Thomas - pault@gcc.gnu.org

program namelist_13

  type                        ::      yourtype
    integer, dimension(2)     ::      yi = (/8,9/)
    real, dimension(2)        ::      yx = (/80.,90./)
    character(len=2)          ::      ych = "xx"
  end type yourtype

  type                        ::      mytype
    integer, dimension(2)     ::      myi = (/800,900/)
    real, dimension(2)        ::      myx = (/8000.,9000./)
    character(len=2)          ::      mych = "zz"
    type(yourtype)            ::      my_yourtype
  end type mytype

  type(mytype)                ::      z
  integer                     ::      ier
  integer                     ::      zeros(10)
  namelist /mynml/ zeros, z

  zeros = 0
  zeros(5) = 1

  open(10,status="scratch", delim="apostrophe")
  write (10, nml=mynml, iostat=ier)
  if (ier.ne.0) call abort

  rewind (10)
  read (10, NML=mynml, IOSTAT=ier)
  if (ier.ne.0) call abort
  close (10)

end program namelist_13