From 8e327405b861ea4ce8ac3c82a87a7c20d0ad36b4 Mon Sep 17 00:00:00 2001 From: jvdelisle Date: Mon, 7 Apr 2008 22:05:52 +0000 Subject: 2008-04-07 Jerry DeLisle PR fortran/25829 28655 * io/open.c (edit_modes): Set flags.async. (new_unit) Set flags.async and flags.status. (st_open): Initialize flags.async. * io/list_read.c (read_charactor): Use delim_status instead of flags.delim. * io/read.c (read_x): Use pad_status instead of flags.pad. * io/inquire.c (inquire_via_unit): Add new checks. (inquire_via_filename): Likewise. * io/io.h (st_parameter_inquire): Add new flags. (st_parameter_dt): Likewise. * io/unit.c (get_internal_unit): Set flags.async. (init_units): Set flags.async. * io/transfer.c: Add delim and pad option arrays. (read_sf): Use pad_status instead of flags.pad. (read_block): Likewise. (data_transfer_init): Set flags.async and add checks. * io/write.c (write_character): Use delim_status. (list_formatted_write_scalar): Likewise. (nml_write_obj): Likewise. (namelist_write): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133988 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgfortran/io/io.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'libgfortran/io/io.h') diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h index ddbd632a64b..30d4051f126 100644 --- a/libgfortran/io/io.h +++ b/libgfortran/io/io.h @@ -235,7 +235,7 @@ typedef enum unit_mode; typedef enum -{ ASYNC_YES, ASYNC_NO, AYSYNC_UNSPECIFIED } +{ ASYNC_YES, ASYNC_NO, ASYNC_UNSPECIFIED } unit_async; #define CHARACTER1(name) \ @@ -342,13 +342,13 @@ typedef struct CHARACTER1 (convert); GFC_INTEGER_4 flags2; CHARACTER1 (asynchronous); - CHARACTER1 (decimal); + CHARACTER2 (decimal); CHARACTER1 (encoding); - CHARACTER1 (pending); + CHARACTER2 (pending); CHARACTER1 (round); - CHARACTER1 (sign); + CHARACTER2 (sign); GFC_INTEGER_4 *size; - GFC_IO_INT id; + GFC_INTEGER_4 *id; } st_parameter_inquire; @@ -409,6 +409,7 @@ typedef struct st_parameter_dt int item_count; unit_mode mode; unit_blank blank_status; + unit_pad pad_status; enum { SIGN_S, SIGN_SS, SIGN_SP } sign_status; int scale_factor; int max_pos; /* Maximum righthand column written to. */ @@ -423,6 +424,7 @@ typedef struct st_parameter_dt int sf_seen_eor; unit_advance advance_status; unit_decimal decimal_status; + unit_delim delim_status; unsigned reversion_flag : 1; /* Format reversion has occurred. */ unsigned first_item : 1; -- cgit v1.2.1