... should add a record marker. F 2003, 9.2.3.1:
If a nonadvancing output statement leaves a file positioned 1 within a current record and no further output statement is executed for the file before it is closed or a BACKSPACE, ENDFILE, or REWIND statement is executed for it, the effect is as if the output statement were the corresponding advancing output statement. $ cat advance.f90 program main open(95, form="formatted") write (95, '(A)', advance="no") 'a' backspace 95 end program main $ gfortran advance.f90 $ ./a.out $ cat fort.95 a$ -- Summary: file positioning after nonadvancing i/o Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tkoenig at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34370