https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98825
--- Comment #7 from max.pd at gmx dot de --- This DEC-F77 specification seems to be very adequate for the -fdec compiler flag. For general use of the '$' in format expressions (even without the compiler flag), it would not make much sense. Here it's the current "ADVANCE='NO'" interpretation for single records that fits well. For multiple records it would be coherent to have no carriage returns between the records either. I've tested it with flang (LLVM) and with the older OpenWatcom Fortran, and they both behave like expected. They don't write carriage returns between the records, when the '$' is given in the format expression. Of course the behavior changes for internal files. I guess it is standard that internal files will write each record to a single field of an array. And the program will abbort with an error, when the array is too small to take all the records. This seems to be fully implemented in gfortran and works well in all tests I made.