diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2016-10-18 04:14:25 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2016-10-18 04:14:25 +0000 |
commit | c680ada5f527a33ea7c793704019fb46c795d5f4 (patch) | |
tree | 1999f935b9407f3f6f2dea1eb9f1e478784747f9 /libgfortran/io/io.h | |
parent | b78027d1a3f9a8fdf3386e24dcfd6679006dd154 (diff) | |
download | gcc-c680ada5f527a33ea7c793704019fb46c795d5f4.zip gcc-c680ada5f527a33ea7c793704019fb46c795d5f4.tar.gz gcc-c680ada5f527a33ea7c793704019fb46c795d5f4.tar.bz2 |
re PR fortran/48298 ([F03] User-Defined Derived-Type IO (DTIO))
2016-10-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/48298
* io/io.h: Move size_used from dtp to unit structure. Add bool
has_size to unit structure.
* read.c (read_x): Use has_size and size_used.
* transfer.c (read_sf_internal,read_sf,read_block_form,
read_block_form4): Likewise.
(data_transfer_init): If parent, initialize the size variables.
(finalize_transfer): Set the size variable using size_used in
gfc_unit. (write_block): Delete bogus/dead code.
* gfortran.dg/dtio_17.f90: New test.
From-SVN: r241294
Diffstat (limited to 'libgfortran/io/io.h')
-rw-r--r-- | libgfortran/io/io.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h index aaacc08..edc520a 100644 --- a/libgfortran/io/io.h +++ b/libgfortran/io/io.h @@ -514,7 +514,6 @@ typedef struct st_parameter_dt large enough to hold a complex value (two reals) of the largest kind. */ char value[32]; - GFC_IO_INT size_used; formatted_dtio fdtio_ptr; unformatted_dtio ufdtio_ptr; } p; @@ -650,6 +649,8 @@ typedef struct gfc_unit /* DTIO Parent/Child procedure, 0 = parent, >0 = child level. */ int child_dtio; int last_char; + bool has_size; + GFC_IO_INT size_used; } gfc_unit; |