summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/der_array_io_1.f90
blob: 244b600746c615bec97d4b34ff6b13eea2c0fc1c (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
! Test IO of arrays of integers in derived types
! { dg-do run }
! { dg-options "-std=legacy" }
!
program main

  character* 10000 :: buf1, buf2
  type xyz
     integer :: x, y(3), z
  end type xyz

  type (xyz) :: foo(4)

  do i=1,ubound(foo,1)
     foo(i)%x = 100*i
     do j=1,3
        foo(i)%y(j) = 100*i + 10*j 
     enddo
     foo(i)%z = 100*i+40
  enddo

  write (buf1, '(20i4)')  foo
  write (buf2, '(20i4)')  (foo(i)%x, (foo(i)%y(j), j=1,3), foo(i)%z, i=1,4)

  if (buf1.ne.buf2) call abort
end program main