|
|
1.1 ! root 1: Update info on the f77 I/O lib. ! 2: ! 3: 01 Feb, 1980 ! 4: All instances of: ! 5: if(!init) f_init(); ! 6: have been removed. f_init() is called from main.c on startup in the new ! 7: libF77.a . ! 8: ! 9: 01 Feb, 1980 ! 10: Backspace now allows non-seek files to reset the EOF flag. ! 11: ! 12: 20 Mar, 1980 ! 13: The way SIGINT is handled in libF77/main.c has been changed. ! 14: If the signal is not SIG_DFL, it is left alone as otherwise the ! 15: program will be killed if run in the background and the user types DEL. ! 16: The signal trap that used to be in the I/O lib has been removed. ! 17: ! 18: 20 Mar, 1980 ! 19: The ANSI fortran standard requires that I/O routines return to the caller ! 20: on any error condition if iostat= is specified even if no err= or end= ! 21: trap is specified. The implication of this is that the program must ! 22: be prepared to deal with ALL I/O errors if iostat= is specified. ! 23: If only one trap is specified, end= for example, the program must test the ! 24: iostat variable for positive/non-zero after the I/O call since return ! 25: will occur on any error. This seems awkward and I've chosen to make this ! 26: feature optional. I am interested in other views on this. ! 27: ! 28: In the current version of the compiler (using the modified io.c), ! 29: iostat= is used only to return status information from ! 30: I/O calls but does not itself cause return on any I/O error. Only ! 31: the traps, err= and end=, will cause a return/branch, and only for ! 32: the specified trap(s). ! 33: ! 34: This feature has been made a compile time option in the current version ! 35: of (modified) io.c It implements the standard correctly if compiled ! 36: with -DKOSHER or -DIOSRETURN. Otherwise it executes as currently ! 37: implemented. ! 38: ! 39: 18 Apr, 1980 ! 40: As originally implemented the '$' specification caused a NULL to be ! 41: output (inplace of the \n) Actually NULL's should never appear in the ! 42: formatted output streams. Therefore in "sfe.c" in x_putc() and pr_put() ! 43: add if (c) before the instances of putc(c,cf) ! 44: ! 45: 12 May, 1980 ! 46: Spaces (ASCII 040) do not have significance in FORMAT statements except ! 47: within strings. In order to accomodate old programs that may have ! 48: arbitrary occurances of spaces, all spaces are now ignored. Thus the ! 49: format ( 1 0 X , 1 2 F 1 0 . 4 / ) is accepted. ! 50: ! 51: 12 May, 1980 ! 52: A bug in handling partially filled "unformatted direct" records has been ! 53: fixed by ensuring that all records are complete when written. The bug was ! 54: that the last record of such a file would cause EOF if a read was attempted ! 55: for a full record. Existing files of this form should be "fixed" by ! 56: reading and rewriting the last record using the new version of libI77.a ! 57: ! 58: 12 May, 1980 ! 59: BACKSPACE will now open a default file (fort.N) if the specified logical ! 60: unit is not open. REWIND and other I/O already did this. CLOSE and ! 61: ENDFILE do not open a default file. ! 62: ! 63: 07 Oct, 1980 ! 64: List directed input now terminates properly on a slash and flushes to ! 65: either slash or newline, whichever comes first. List directed input now ! 66: properly converts wierd forms such as 3.-4 and 5+3. It now returns an ! 67: error if the repeat count is negative. ! 68: ! 69: Several type definitions were changed/added to accomodate 11/70's. ! 70:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.