|
|
1.1 root 1: Update info on the f77 I/O lib. 15 Feb., 1980
2:
3: 1) All instances of:
4: if(!init) f_init();
5: have been removed. f_init() is called from main.c on startup in the new
6: libF77.a .
7:
8: 2) Backspace now allows non-seek files to reset the EOF flag.
9:
10: 3) The way SIGINT is handled in libF77/main.c has been changed.
11: If the signal is not SIG_DFL, it is left alone as otherwise the
12: program will be killed if run in the background and the user types DEL.
13:
14: 4) The ANSI fortran standard requires that I/O routines return to the caller
15: on any error condition if iostat= is specified even if no err= or end=
16: trap is specified. The implication of this is that the program must
17: be prepared to deal with ALL I/O errors if iostat= is specified.
18: If only one trap is specified, end= for example, the program must test the
19: iostat variable for positive/non-zero after the I/O call since return
20: will occur on any error. This seems awkward and I've chosen to make this
21: feature optional. I am interested in other views on this.
22:
23: In the current version of the compiler (using the modified io.c),
24: iostat= is used only to return status information from
25: I/O calls but does not itself cause return on any I/O error. Only
26: the traps, err= and end=, will cause a return/branch, and only for
27: the specified trap(s).
28:
29: This feature has been made a compile time option in the current version
30: of (modified) io.c It implements the standard correctly if compiled
31: with -DKOSHER or -DIOSRETURN. Otherwise it executes as currently
32: implemented.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.