annotate gcc/testsuite/gfortran.dg/implied_do_io_4.f90 @ 132:d34655255c78

update gcc-8.2
author mir3636
date Thu, 25 Oct 2018 10:21:07 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 ! { dg-do run }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 ! { dg-additional-options "-ffrontend-optimize -fdump-tree-original" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 ! PR fortran/35339 - make sure that I/O of an implied DO loop
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 ! of allocatable character arrays a) works and b) is converted
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 ! to a transfer_array
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 program main
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 implicit none
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 integer:: i
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 integer, parameter:: N = 10
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 character(len=:), dimension(:),allocatable:: ca
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 allocate(character(len=N):: ca(3))
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 open(unit=10,status="scratch")
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 ca(1) = "foo"
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 ca(2) = "bar"
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 ca(3) = "xyzzy"
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 write (10, '(3A10)') (ca(i),i=1,3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 rewind (10)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 ca(:) = ''
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 read (10, '(3A10)') (ca(i),i=1,3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 if (ca(1) /= 'foo' .or. ca(2) /= 'bar' .or. ca(3) /= 'xyzzy') call abort
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 end program
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 ! { dg-final { scan-tree-dump-times "_gfortran_transfer_array" 2 "original" } }