http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59764

--- Comment #3 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
I have a patch successfully regression tested.

Basically, I have change in io.h as follows.  The component expanded_read is
just a flag and does not need to an integer, so I have used an available bit
above it for this and and then used the integer slot for line_buffer_pos.

This integer is then used in those places where needed for the look-ahead
buffer.  I will submit a patch for approval as soon as I get coordinated with
Steves patch for pr59700. 

Index: io.h
===================================================================
--- io.h    (revision 206351)
+++ io.h    (working copy)
@@ -430,7 +430,10 @@
       unsigned g0_no_blanks : 1;
       /* Used to signal use of free_format_data.  */
       unsigned format_not_saved : 1;
-      /* 14 unused bits.  */
+      /* A flag used to identify when a non-standard expanded namelist read
+         has occurred.  */
+      unsigned expanded_read : 1;
+      /* 13 unused bits.  */

       /* Used for ungetc() style functionality. Possible values
          are an unsigned char, EOF, or EOF - 1 used to mark the
@@ -447,9 +450,8 @@
       char *line_buffer;
       struct format_data *fmt;
       namelist_info *ionml;
-      /* A flag used to identify when a non-standard expanded namelist read
-         has occurred.  */
-      int expanded_read;
+      /* Current position within the look-ahead line buffer.  */
+      int line_buffer_pos;
       /* Storage area for values except for strings.  Must be
          large enough to hold a complex value (two reals) of the
          largest kind.  */

Reply via email to