Hi, the RTS sometimes fails to report EOLn before EOF, when a new-line character is missing in the file. For example, this simple program -------------------- program BufferedInput (Output, F); var F: Text; Buffer: String (100); begin Reset (F); while not EOF (F) do begin while not EOLn (F) do begin Read (F, Buffer); WriteLn ('read: `', Buffer, '''') end; WriteLn ('(end of line)'); ReadLn (F) end; WriteLn ('(end of file)') end. ------------------------- produces ---------------------- Input file `F': test read: `first line' (end of line) read: `second line, with no terminator' ./a.out: attempt to read past end of file `test' (error #454 at 8049c73) ---------------------- on this input (where line 2 doesn't end with <LF>): --------------------- first line second line, with no terminator --------------------- Emil Jerabek