From 91b30ee5b9c83187fe1d7459cbd29abe302d60ed Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Tue, 15 Aug 2006 23:06:44 +0000 Subject: re PR fortran/25828 ([f2003] ACCESS='STREAM' io support) 2006-08-15 Jerry DeLisle PR libgfortran/25828 * libgfortran.h: Rename GFC_LARGE_IO_INT to GFC_IO_INT. * io/file_pos.c (st_backspace): Ignore if access=STREAM. (st_rewind): Handle case of access=STREAM. * io/open.c (access_opt): Add STREAM_ACCESS. (edit_modes): Set current_record to zero only if not STREAM. (new_unit): Initialize maxrec, recl, and last_record for STREAM. * io/read.c (read_x): Advance file position for STREAM. * io/io.h (enum unit_access): Align IOPARM flags with frontend. Add ACCESS_STREAM. Add prototype for is_stream_io () function. Use GFC_IO_INT. * io/inquire.c (inquire_via_unit): Add text for access = "STREAM". * io/unit.c (is_stream_io): New function to return true if access = STREAM. * io/transfer.c (file_mode): Add modes for unformatted stream and formatted stream. (current_mode): Return appropriate file mode based on access flags. (read_block): Handle formatted stream reads. (read_block_direct): Handle unformatted stream reads. (write_block): Handle formatted stream writes. (write_buf): Handle unformatted stream writes. (unformatted_read): Fix up, use temporary for size. (pre_position): Position file for STREAM access. (data_transfer_init): Initialize for stream access, skip irrelevent error checks. (next_record_r),(next_record_w), and (next_record): Do nothing for stream I/O. (finalize_transfer): Flush when all done if stream I/O. From-SVN: r116172 --- libgfortran/libgfortran.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libgfortran/libgfortran.h') diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h index 4d27b659233..0c0e6cd29be 100644 --- a/libgfortran/libgfortran.h +++ b/libgfortran/libgfortran.h @@ -200,10 +200,10 @@ typedef off_t gfc_offset; /* Define the type used for the current record number for large file I/O. The size must be consistent with the size defined on the compiler side. */ #ifdef HAVE_GFC_INTEGER_8 -typedef GFC_INTEGER_8 GFC_LARGE_IO_INT; +typedef GFC_INTEGER_8 GFC_IO_INT; #else #ifdef HAVE_GFC_INTEGER_4 -typedef GFC_INTEGER_4 GFC_LARGE_IO_INT; +typedef GFC_INTEGER_4 GFC_IO_INT; #else #error "GFC_INTEGER_4 should be available for the library to compile". #endif -- cgit v1.2.1