Go to the first, previous, next, last section, table of contents.
For several versions prior to 0.5.20, g77
configured its
version of the libf2c
run-time library so that one of
its configuration macros, `ALWAYS_FLUSH', was defined.
This was done as a result of a belief that many programs expected
output to be flushed to the operating system (under UNIX, via
the fflush()
library call) with the result that errors,
such as disk full, would be immediately flagged via the
relevant ERR=
and IOSTAT=
mechanism.
Because of the adverse effects this approach had on the performance
of many programs, g77
no longer configures libf2c
(now named libg2c
in its g77
incarnation)
to always flush output.
If your program depends on this behavior, either insert the
appropriate `CALL FLUSH' statements, or modify the sources
to the libg2c
, rebuild and reinstall g77
, and
relink your programs with the modified library.
(Ideally, libg2c
would offer the choice at run-time, so
that a compile-time option to g77
or f2c
could
result in generating the appropriate calls to flushing or
non-flushing library routines.)
See section Always Flush Output, for information on how to modify
the g77
source tree so that a version of libg2c
can be built and installed with the `ALWAYS_FLUSH' macro defined.
Go to the first, previous, next, last section, table of contents.