! Test IO of arrays in derived type arrays | |
! { dg-do run } | |
! { dg-options "-std=legacy" } | |
! | |
program main | |
character *1000 buf1, buf2 | |
type :: foo_type | |
integer x(3) | |
integer y(4) | |
integer z(5) | |
character*11 a(3) | |
end type foo_type | |
type (foo_type) :: foo(2) | |
foo(1)%x = 3 | |
foo(1)%y = 4 | |
foo(1)%z = 5 | |
foo(1)%a = "hello world" | |
foo(2)%x = 30 | |
foo(2)%y = 40 | |
foo(2)%z = 50 | |
foo(2)%a = "HELLO WORLD" | |
write (buf1,*) foo | |
write (buf2,*) ((foo(i)%x(j),j=1,3), (foo(i)%y(j),j=1,4), (foo(i)%z(j),j=1,5), (foo(i)%a(j),j=1,3), i=1,2) | |
if (buf1.ne.buf2) STOP 1 | |
end program main |