Path: utzoo!attcan!uunet!decwrl!wuarchive!udel!nigel.ee.udel.edu!mccalpin From: mccalpin@perelandra.cms.udel.edu (John D. McCalpin) Newsgroups: comp.lang.fortran Subject: record length for direct access files Message-ID: Date: 24 Sep 90 13:08:52 GMT Sender: usenet@ee.udel.edu Organization: College of Marine Studies, U. Del. Lines: 38 Nntp-Posting-Host: perelandra.cms.udel.edu Silicon Graphics revised the behavior of their Fortran compiler for direct access files in release 3.2 of their O/S to define the record length (RECL=NNN) in words rather than bytes. In explanation, the release notes state: "The ANSI standard states that the specified record lengths for unformatted direct access files must imply the number of words." Since I have observed a variety of behaviors for this particular issue, I decided to look it up in the new standard. From the Fortran-90 draft S8, version 112, section 9.3.4.5, discussing the RECL= parameter to the OPEN statment: "If the file is being connected for unformatted input/output, the length is measured in processor-dependent units." AAAAARRRRRRGGGGGGHHHHHH! Is this in the current draft? I can't believe that after all the committee's mouthing about portability, they have let this one slip through. No, on second thought, I believe it entirely.... Not only do they give the vendors more license for incompatible processor-dependent variability, but they skip the obvious fix of giving us a SIZEOF() intrinsic function that would enable us to code around the problem.... A quick survey: Silicon Graphics, Sun, Stardent all use RECL=words IBM RS/6000 uses RECL=bytes Does anyone have a copy of the most recent draft to check on this? -- John D. McCalpin mccalpin@perelandra.cms.udel.edu Assistant Professor mccalpin@vax1.udel.edu College of Marine Studies, U. Del. J.MCCALPIN/OMNET