From 2185ae8cde221200b784be5543f762238ebb55ed Mon Sep 17 00:00:00 2001 From: jvdelisle Date: Mon, 24 Jul 2006 00:17:52 +0000 Subject: 2006-07-23 Jerry DeLisle PR libgfortran/25289 * libgfortran.h: Add conditional definition of GFC_LARGE_IO_INT type. * io/io.h (st_parameter_dt): Define rec as type GFC_LARGE_IO_INT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115698 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgfortran/ChangeLog | 6 ++++++ libgfortran/io/io.h | 2 +- libgfortran/libgfortran.h | 12 ++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) (limited to 'libgfortran') diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index c19ac41accb..58ef0aafea6 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2006-07-23 Jerry DeLisle + + PR libgfortran/25289 + * libgfortran.h: Add conditional definition of GFC_LARGE_IO_INT type. + * io/io.h (st_parameter_dt): Define rec as type GFC_LARGE_IO_INT. + 2006-07-21 Jerry DeLisle PR libgfortran/28339 diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h index 822930e776a..e16d4b6ec02 100644 --- a/libgfortran/io/io.h +++ b/libgfortran/io/io.h @@ -351,7 +351,7 @@ struct format_data; typedef struct st_parameter_dt { st_parameter_common common; - GFC_INTEGER_4 rec; + GFC_LARGE_IO_INT rec; GFC_INTEGER_4 *size, *iolength; gfc_array_char *internal_unit_desc; CHARACTER1 (format); diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h index 5dd2a51e1e0..27abfe8b7be 100644 --- a/libgfortran/libgfortran.h +++ b/libgfortran/libgfortran.h @@ -196,6 +196,18 @@ typedef off_t gfc_offset; #include "kinds.h" +/* 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; +#else +#ifdef HAVE_GFC_INTEGER_4 +typedef GFC_INTEGER_4 GFC_LARGE_IO_INT; +#else +#error "GFC_INTEGER_4 should be available for the library to compile". +#endif +#endif + /* The following two definitions must be consistent with the types used by the compiler. */ /* The type used of array indices, amongst other things. */ -- cgit v1.2.1