Using the command
OPEN(UNIT = 9, FILE = FILLIN, RECL = 200, FORM = 'FORMATTED', &
ACCESS = 'DIRECT')
I get a file with CR/LF ending the 200 byte records in Release whereas the file has only CR (or maybe just LF) in Debug. Why?
Compare the project options - there is probably one you have set in one configuration and not the other. I would look specifically at /fpscomp.
I am noting the Release executable has the options
/fpscomp:ioformat /fpscomp:ldio_spacing /fpscomp:general
whereas the Debug executable does not. Are these the cause (or the savior)?
Yep. It's /fpscomp:general that is causing the difference.
That did the trick, putting /fpscomp:general as an "AdditionalOption" in the debug executable.
Most of these options are legacy, as in were implemented before I saw the code 8 years ago. Where might the documentation on such things be?
Same place as the other options - in the compiler documentation. Look in the index under /fpscomp.