[Bug libfortran/38668] advance="no": no buffering, truncate and seek

jb at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Jan 18 09:38:00 GMT 2009



------- Comment #3 from jb at gcc dot gnu dot org  2009-01-18 09:38 -------
My patch for PR25561 fixes this partially, with the patch the strace output is:

write(3, "a", 1)                        = 1
write(3, "a", 1)                        = 1
write(3, "a", 1)                        = 1
write(3, "a", 1)                        = 1
write(3, "a", 1)                        = 1
write(3, "a", 1)                        = 1

I distinctly remember that in finalize_transfer() or some related function, we
flush the buffers in case of advance='no', presumably in order to get the
common advance='no' case of waiting on user input correct. However, this check
should be tightened to additionally check that the unit is a tty, which should
fix this case. Assigning this to myself, will fix once the mega-patch for 25561
is in after 4.5 opens.


-- 

jb at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |25561
         AssignedTo|unassigned at gcc dot gnu   |jb at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-01-18 09:38:08
               date|                            |


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



More information about the Gcc-bugs mailing list