summaryrefslogtreecommitdiff
path: root/gnu/egcs/libf2c/readme.netlib
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>1999-05-26 13:38:57 +0000
committerMarc Espie <espie@cvs.openbsd.org>1999-05-26 13:38:57 +0000
commit0126e157b87f137fc08dc7f46f6c291b9d06ac5d (patch)
treef8555e3e504eb82b4cd3cba5cec20ae4ce8124ff /gnu/egcs/libf2c/readme.netlib
parentff8e9a4356e55ed142306c3a375fa280800abc86 (diff)
egcs projects compiler system
Exact copy of the snapshot, except for the removal of texinfo/ gcc/ch/ libchill/
Diffstat (limited to 'gnu/egcs/libf2c/readme.netlib')
-rw-r--r--gnu/egcs/libf2c/readme.netlib780
1 files changed, 780 insertions, 0 deletions
diff --git a/gnu/egcs/libf2c/readme.netlib b/gnu/egcs/libf2c/readme.netlib
new file mode 100644
index 00000000000..406a753cf30
--- /dev/null
+++ b/gnu/egcs/libf2c/readme.netlib
@@ -0,0 +1,780 @@
+
+====== old index for f2c, now "readme from f2c" ============
+
+FILES:
+
+f2c.h Include file necessary for compiling output of the converter.
+ See the second NOTE below.
+
+f2c.1 Man page for f2c.
+
+f2c.1t Source for f2c.1 (to be processed by troff -man or nroff -man).
+
+libf77 Library of non I/O support routines the generated C may need.
+ Fortran main programs result in a C function named MAIN__ that
+ is meant to be invoked by the main() in libf77.
+
+libi77 Library of Fortran I/O routines the generated C may need.
+ Note that some vendors (e.g., BSD, Sun and MIPS) provide a
+ libF77 and libI77 that are incompatible with f2c -- they
+ provide some differently named routines or routines with the
+ names that f2c expects, but with different calling sequences.
+ On such systems, the recommended procedure is to merge
+ libf77 and libi77 into a single library, say libf2c, and to
+ install it where you can access it by specifying -lf2c . The
+ definition of link_msg in sysdep.c assumes this arrangement.
+
+ Both libf77 and libi77 are bundles, meant to be unpacked by the
+ Bourne (or Korn) shell. MS-DOS users can use the MKS Toolkit
+ to unpack libf77 and libi77.
+
+libf2c.zip
+ Only available by ftp: combination of libf77 and libi77, with
+ Unix and PC makefiles.
+
+f2c.ps Postscript for a technical report on f2c. After you strip the
+ mail header, the first line should be "%!PS".
+
+fixes The complete change log, reporting bug fixes and other changes.
+ (Some recent change-log entries are given below).
+
+fc A shell script that uses f2c and imitates much of the behavior
+ of commonly found f77 commands. You will almost certainly
+ need to adjust some of the shell-variable assignments to make
+ this script work on your system.
+
+
+SUBDIRECTORY:
+
+f2c/src Source for the converter itself, including a file of checksums
+ and source for a program to compute the checksums (to verify
+ correct transmission of the source), is available: ask netlib
+ (e.g., netlib@netlib.bell-labs.com) to
+ send all from f2c/src
+ If the checksums show damage to just a few source files, or if
+ the change log file (see "fixes" below) reports corrections to
+ some source files, you can request those files individually
+ "from f2c/src". For example, to get defs.h and xsum0.out, you
+ would ask netlib to
+ send defs.h xsum0.out from f2c/src
+ "all from f2c/src" is about 640 kilobytes long; for convenience
+ (and checksums), it includes copies of f2c.h, f2c.1, and f2c.1t.
+
+ Tip: if asked to send over 99,000 bytes in one request, netlib
+ breaks the shipment into 1000 line pieces and sends each piece
+ separately (since otherwise some mailers might gag). To avoid
+ the hassle of reassembling the pieces, try to keep each request
+ under 99,000 bytes long. The final number in each line of
+ xsum0.out gives the length of each file in f2c/src. For
+ example,
+ send exec.c expr.c from f2c/src
+ send format.c format_data.c from f2c/src
+ will give you slightly less hassle than
+ send exec.c expr.c format.c format_data.c from f2c/src
+ Alternatively, if all the mailers in your return path allow
+ long messages, you can supply an appropriate mailsize line in
+ your netlib request, e.g.
+ mailsize 200k
+ send exec.c expr.c format.c format_data.c from f2c/src
+
+ The makefile used to generate gram.c; now we distribute a
+ working gram.c, and you must say
+ make gram1.c
+ mv gram1.c gram.c
+ if you want to generate your own gram.c -- there are just too
+ many broken variants of yacc floating around nowadays for
+ generation of gram.c to be the default.
+
+NOTE: You may exercise f2c by sending netlib@netlib.bell-labs.com
+ a message whose first line is "execute f2c" and whose remaining
+ lines are the Fortran 77 source that you wish to have converted.
+ Return mail brings you the resulting C, with f2c's error
+ messages between #ifdef uNdEfInEd and #endif at the end.
+ (To understand line numbers in the error messages, regard
+ the "execute f2c" line as line 0. It is stripped away by
+ the netlib software before f2c sees your Fortran input.)
+ Options described in the man page may be transmitted to
+ netlib by having the first line of input be a comment
+ whose first 6 characters are "c$f2c " and whose remaining
+ characters are the desired options, e.g., "c$f2c -R -u".
+
+ You may say "execute f2c" in the Subject line instead of (but
+ *not* in addition to) in the first line of the message body.
+
+ The incoming Fortran is saved, at least for a while. Don't
+ send any secrets!
+
+
+BUGS: Please send bug reports (including the shortest example
+ you can find that illustrates the bug) to research!dmg
+ or dmg@bell-labs.com . You might first check whether
+ the bug goes away when you turn optimization off.
+
+
+NOTE: f2c.h defines several types, e.g., real, integer, doublereal.
+ The definitions in f2c.h are suitable for most machines, but if
+ your machine has sizeof(double) > 2*sizeof(long), you may need
+ to adjust f2c.h appropriately. f2c assumes
+ sizeof(doublecomplex) = 2*sizeof(doublereal)
+ sizeof(doublereal) = sizeof(complex)
+ sizeof(doublereal) = 2*sizeof(real)
+ sizeof(real) = sizeof(integer)
+ sizeof(real) = sizeof(logical)
+ sizeof(real) = 2*sizeof(shortint)
+ EQUIVALENCEs may not be translated correctly if these
+ assumptions are violated.
+
+ On machines, such as those using a DEC Alpha processor, on
+ which sizeof(short) == 2, sizeof(int) == sizeof(float) == 4,
+ and sizeof(long) == sizeof(double) == 8, it suffices to
+ modify f2c.h by removing the first occurrence of "long "
+ on each line containing "long ", e.g., by issuing the
+ commands
+ mv f2c.h f2c.h0
+ sed 's/long //' f2c.h0 >f2c.h
+ On such machines, one can enable INTEGER*8 by uncommenting
+ the typedef of longint in f2c.h, so it reads
+ typedef long longint;
+ by compiling libI77 with -DAllow_TYQUAD, and by adjusting
+ libF77/makefile as described in libF77/README.
+
+ Some machines may have sizeof(int) == 4, sizeof(float) == 8,
+ and sizeof(long long) == 8. On such machines, adjust f2c.h
+ by changing "long int " to "long long ", e.g., by saying
+ mv f2c.h f2c.h0
+ sed 's/long int /long long /' f2c.h0 >f2c.h
+ One can enable INTEGER*8 on such machines as described
+ above, but with
+ typedef long long longint;
+
+ There exists a C compiler that objects to the lines
+ typedef VOID C_f; /* complex function */
+ typedef VOID H_f; /* character function */
+ typedef VOID Z_f; /* double complex function */
+ in f2c.h . If yours is such a compiler, do two things:
+ 1. Complain to your vendor about this compiler bug.
+ 2. Find the line
+ #define VOID void
+ in f2c.h and change it to
+ #define VOID int
+ (For readability, the f2c.h lines shown above have had two
+ tabs inserted before their first character.)
+
+FTP: All the material described above is now available by anonymous
+ ftp from netlib.bell-labs.com (login: anonymous; Password: your
+ E-mail address; cd netlib/f2c). Note that you can say, e.g.,
+
+ cd /netlib/f2c/src
+ binary
+ prompt
+ mget *.gz
+
+ to get all the .gz files in src. You must uncompress the .gz
+ files once you have a copy of them, e.g., by
+
+ gzip -dN *.gz
+
+ You can also get the entire f2c tree as a tar file:
+
+ ftp://netlib.bell-labs.com/netlib/f2c.tar
+
+ (which is a synthetic file -- created on the fly and not visible
+ to ftp's "ls" or "dir" commands).
+
+ Subdirectory msdos contains two PC versions of f2c,
+ f2c.exe.gz and f2cx.exe.gz; the latter uses extended memory.
+ The README in that directory provides more details.
+
+ Changes appear first in the f2c files available by E-mail
+ from netlib@netlib.bell-labs.com. If the deamons work right,
+ changed files are available the next day by ftp from
+ netlib.bell-labs.com. In due course, they reach other netlib servers.
+
+CHANGE NOTIFICATION:
+ Send the E-mail message
+ subscribe f2c
+ to netlib@netlib.bell-labs.com to request notification of new and
+ changed f2c files. (Beware that automatically sent change
+ notifications may reach you before changes have reached
+ ftp://netlib.bell-labs.com/netlib/f2c or to other netlib servers.)
+ Send the E-mail message
+ unsubscribe f2c
+ to recant your notification request.
+
+-----------------
+Recent change log (partial)
+-----------------
+
+Mon May 13 23:35:26 EDT 1996
+ Recognize Fortran 90's /= as a synonym for .NE.. (<> remains a
+synonym for .NE..)
+ Emit an empty int function of no arguments to supply an external
+name to named block data subprograms (so they can be called somewhere
+to force them to be loaded from a library).
+ Fix bug (memory fault) in handling the following illegal Fortran:
+ parameter(i=1)
+ equivalence(i,j)
+ end
+ Treat cdabs, cdcos, cdexp, cdlog, cdsin, and cdsqrt as synonyms for
+the double complex intrinsics zabs, zcos, zexp, zlog, zsin, and zsqrt,
+respectively, unless -cd is specified.
+ Recognize the Fortran 90 bit-manipulation intrinsics btest, iand,
+ibclr, ibits, ibset, ieor, ior, ishft, and ishftc, unless -i90 is
+specified. Note that iand, ieor, and ior are thus now synonyms for
+"and", "xor", and "or", respectively.
+ Add three macros (bit_test, bit_clear, bit_set) to f2c.h for use
+with btest, ibclr, and ibset, respectively. Add new functions
+[lq]bit_bits, [lq]bit_shift, and [lq]_bit_cshift to libF77 for
+use with ibits, ishft, and ishftc, respectively.
+ Add integer function ftell(unit) (returning -1 on error) and
+subroutine fseek(unit, offset, whence, *) to libI77 (with branch to
+label * on error).
+
+Tue May 14 23:21:12 EDT 1996
+ Fix glitch (possible memory fault, or worse) in handling multiple
+entry points with names over 28 characters long.
+
+Mon Jun 10 01:20:16 EDT 1996
+ Update netlib E-mail and ftp addresses in f2c/readme and
+f2c/src/readme (which are different files) -- to reflect the upcoming
+breakup of AT&T.
+ libf77: trivial tweaks to F77_aloc.c and system_.c; Version.c not
+changed.
+ libi77: Adjust rsli.c and lread.c so internal list input with too
+few items in the input string will honor end= .
+
+Mon Jun 10 22:59:57 EDT 1996
+ Add Bits_per_Byte to sysdep.h and adjust definition of Table_size
+to depend on Bits_per_Byte (forcing Table_size to be a power of 2); in
+lex.c, change "comstart[c & 0xfff]" to "comstart[c & (Table_size-1)]"
+to avoid an out-of-range subscript on end-of-file.
+
+Wed Jun 12 00:24:28 EDT 1996
+ Fix bug in output.c (dereferencing a freed pointer) revealed in
+ print * !np in out_call in output.c clobbered by free
+ end !during out_expr.
+
+Wed Jun 19 08:12:47 EDT 1996
+ f2c.h: add types uinteger, ulongint (for libF77); add qbit_clear
+and qbit_set macros (in a commented-out section) for integer*8.
+ For integer*8, use qbit_clear and qbit_set for ibclr and ibset.
+ libf77: add casts to unsigned in [lq]bitshft.c.
+
+Thu Jun 20 13:30:43 EDT 1996
+ Complain at character*(*) in common (rather than faulting).
+ Fix bug in recognizing hex constants that start with "16#" (e.g.,
+16#1234abcd, which is a synonym for z'1234abcd').
+ Fix bugs in constant folding of expressions involving btest, ibclr,
+and ibset.
+ Fix bug in constant folding of rshift(16#80000000, -31) (on a 32-bit
+machine; more generally, the bug was in constant folding of
+rshift(ibset(0,NBITS-1), 1-NBITS) when f2c runs on a machine with
+long ints having NBITS bits.
+
+Mon Jun 24 07:58:53 EDT 1996
+ Adjust struct Literal and newlabel() function to accommodate huge
+source files (with more than 32767 newlabel() invocations).
+ Omit .c file when the .f file has a missing final end statement.
+
+Wed Jun 26 14:00:02 EDT 1996
+ libi77: Add discussion of MXUNIT (highest allowed Fortran unit number)
+to libI77/README.
+
+Fri Jun 28 14:16:11 EDT 1996
+ Fix glitch with -onetrip: the temporary variable used for nonconstant
+initial loop variable values was recycled too soon. Example:
+ do i = j+1, k
+ call foo(i+1) ! temp for j+1 was reused here
+ enddo
+ end
+
+Tue Jul 2 16:11:27 EDT 1996
+ formatdata.c: add a 0 to the end of the basetype array (for TYBLANK)
+(an omission that was harmless on most machines).
+ expr.c: fix a dereference of NULL that was only possible with buggy
+input, such as
+ subroutine $sub(s) ! the '$' is erroneous
+ character s*(*)
+ s(1:) = ' '
+ end
+
+Sat Jul 6 00:44:56 EDT 1996
+ Fix glitch in the intrinsic "real" function when applied to a
+complex (or double complex) variable and passed as an argument to
+some intrinsic functions. Example:
+ complex a
+ b = sqrt(real(a))
+ end
+ Fix glitch (only visible if you do not use f2c's malloc and the
+malloc you do use is defective in the sense that malloc(0) returns 0)
+in handling include files that end with another include (perhaps
+followed by comments).
+ Fix glitch with character*(*) arguments named "h" and "i" when
+the body of the subroutine invokes the intrinsic LEN function.
+ Arrange that after a previous "f2c -P foo.f" has produced foo.P,
+running "f2c foo.P foo.f" will produce valid C when foo.f contains
+ call sub('1234')
+ end
+ subroutine sub(msg)
+ end
+Specifically, the length argument in "call sub" is now suppressed.
+With or without foo.P, it is also now suppressed when the order of
+subprograms in file foo.f is reversed:
+ subroutine sub(msg)
+ end
+ call sub('1234')
+ end
+ Adjust copyright notices to reflect AT&T breakup.
+
+Wed Jul 10 09:25:49 EDT 1996
+ Fix bug (possible memory fault) in handling erroneously placed
+and inconsistent declarations. Example that faulted:
+ character*1 w(8)
+ call foo(w)
+ end
+ subroutine foo(m)
+ data h /0.5/
+ integer m(2) ! should be before data
+ end
+ Fix bug (possible fault) in handling illegal "if" constructions.
+Example (that faulted):
+ subroutine foo(i,j)
+ if (i) then ! bug: i is integer, not logical
+ else if (j) then ! bug: j is integer, not logical
+ endif
+ end
+ Fix glitch with character*(*) argument named "ret_len" to a
+character*(*) function.
+
+Wed Jul 10 23:04:16 EDT 1996
+ Fix more glitches in the intrinsic "real" function when applied to a
+complex (or double complex) variable and passed as an argument to
+some intrinsic functions. Example:
+ complex a, b
+ r = sqrt(real(conjg(a))) + sqrt(real(a*b))
+ end
+
+Thu Jul 11 17:27:16 EDT 1996
+ Fix a memory fault associated with complicated, illegal input.
+Example:
+ subroutine goo
+ character a
+ call foo(a) ! inconsistent with subsequent def and call
+ end
+ subroutine foo(a)
+ end
+ call foo(a)
+ end
+
+Wed Jul 17 19:18:28 EDT 1996
+ Fix yet another case of intrinsic "real" applied to a complex
+argument. Example:
+ complex a(3)
+ x = sqrt(real(a(2))) ! gave error message about bad tag
+ end
+
+Mon Aug 26 11:28:57 EDT 1996
+ Tweak sysdep.c for non-Unix systems in which process ID's can be
+over 5 digits long.
+
+Tue Aug 27 08:31:32 EDT 1996
+ Adjust the ishft intrinsic to use unsigned right shifts. (Previously,
+a negative constant second operand resulted in a possibly signed shift.)
+
+Thu Sep 12 14:04:07 EDT 1996
+ equiv.c: fix glitch with -DKR_headers.
+ libi77: fmtlib.c: fix bug in printing the most negative integer.
+
+Fri Sep 13 08:54:40 EDT 1996
+ Diagnose some illegal appearances of substring notation.
+
+Tue Sep 17 17:48:09 EDT 1996
+ Fix fault in handling some complex parameters. Example:
+ subroutine foo(a)
+ double complex a, b
+ parameter(b = (0,1))
+ a = b ! f2c faulted here
+ end
+
+Thu Sep 26 07:47:10 EDT 1996
+ libi77: fmt.h: for formatted writes of negative integer*1 values,
+make ic signed on ANSI systems. If formatted writes of integer*1
+values trouble you when using a K&R C compiler, switch to an ANSI
+compiler or use a compiler flag that makes characters signed.
+
+Tue Oct 1 14:41:36 EDT 1996
+ Give a better error message when dummy arguments appear in data
+statements.
+
+Thu Oct 17 13:37:22 EDT 1996
+ Fix bug in typechecking arguments to character and complex (or
+double complex) functions; the bug could cause length arguments
+for character arguments to be omitted on invocations appearing
+textually after the first invocation. For example, in
+ subroutine foo
+ character c
+ complex zot
+ call goo(zot(c), zot(c))
+ end
+the length was omitted from the second invocation of zot, and
+there was an erroneous error message about inconsistent calling
+sequences.
+
+Wed Dec 4 13:59:14 EST 1996
+ Fix bug revealed by
+ subroutine test(cdum,rdum)
+ complex cdum
+ rdum=cos(real(cdum)) ! "Unexpected tag 3 in opconv_fudge"
+ end
+ Fix glitch in parsing "DO 10 D0 = 1, 10".
+ Fix glitch in parsing
+ real*8 x
+ real*8 x ! erroneous "incompatible type" message
+ call foo(x)
+ end
+ lib[FI]77/makefile: add comment about omitting -x under Solaris.
+
+Mon Dec 9 23:15:02 EST 1996
+ Fix glitch in parameter adjustments for arrays whose lower
+bound depends on a scalar argument. Example:
+ subroutine bug(p,z,m,n)
+ integer z(*),m,n
+ double precision p(z(m):z(m) + n) ! p_offset botched
+ call foo(p(0), p(n))
+ end
+ libi77: complain about non-positive rec= in direct read and write
+statements.
+ libf77: trivial adjustments; Version.c not changed.
+
+Wed Feb 12 00:18:03 EST 1997
+ output.c: fix (seldom problematic) glitch in out_call: put parens
+around the ... in a test of the form "if (q->tag == TADDR && ...)".
+ vax.c: fix bug revealed in the "psi_offset =" assignment in the
+following example:
+ subroutine foo(psi,m)
+ integer z(100),m
+ common /a/ z
+ double precision psi(z(m):z(m) + 10)
+ call foo(m+1, psi(0),psi(10))
+ end
+
+Mon Feb 24 23:44:54 EST 1997
+ For consistency with f2c's current treatment of adjacent character
+strings in FORMAT statements, recognize a Hollerith string following
+a string (and merge adjacent strings in FORMAT statements).
+
+Wed Feb 26 13:41:11 EST 1997
+ New libf2c.zip, a combination of the libf77 and libi77 bundles (and
+available only by ftp).
+ libf77: adjust functions with a complex output argument to permit
+aliasing it with input arguments. (For now, at least, this is just
+for possible benefit of g77.)
+ libi77: tweak to ftell_.c for systems with strange definitions of
+SEEK_SET, etc.
+
+Tue Apr 8 20:57:08 EDT 1997
+ libf77: [cz]_div.c: tweaks invisible on most systems (that may
+improve things slightly with optimized compilation on systems that use
+gratuitous extra precision).
+ libi77: fmt.c: adjust to complain at missing numbers in formats
+(but still treat missing ".nnn" as ".0").
+
+Fri Apr 11 14:05:57 EDT 1997
+ libi77: err.c: attempt to make stderr line buffered rather than
+fully buffered. (Buffering is needed for format items T and TR.)
+
+Thu Apr 17 22:42:43 EDT 1997
+ libf77: add F77_aloc.o to makefile (and makefile.u in libf2c.zip).
+
+Fri Apr 25 19:32:09 EDT 1997
+ libf77: add [de]time_.c (which may give trouble on some systems).
+
+Tue May 27 09:18:52 EDT 1997
+ libi77: ftell_.c: fix typo that caused the third argument to be
+treated as 2 on some systems.
+
+Mon Jun 9 00:04:37 EDT 1997
+ libi77 (and libf2c.zip): adjust include order in err.c lread.c wref.c
+rdfmt.c to include fmt.h (etc.) after system includes. Version.c not
+changed.
+
+Mon Jun 9 14:29:13 EDT 1997
+ src/gram.c updated; somehow it did not reflect the change of
+19961001 to gram.dcl.
+
+Mon Jul 21 16:04:54 EDT 1997
+ proc.c: fix glitch in logic for "nonpositive dimension" message.
+ libi77: inquire.c: always include string.h (for possible use with
+-DNON_UNIX_STDIO); Version.c not changed.
+
+Thu Jul 24 17:11:23 EDT 1997
+ Tweak "Notice" to reflect the AT&T breakup -- we missed it when
+updating the copyright notices in the source files last summer.
+ Adjust src/makefile so malloc.o is not used by default, but can
+be specified with "make MALLOC=malloc.o".
+ Add comments to src/README about the "CRAY" T3E.
+
+Tue Aug 5 14:53:25 EDT 1997
+ Add definition of calloc to malloc.c; this makes f2c's malloc
+work on some systems where trouble hitherto arose because references
+to calloc brought in the system's malloc. (On sensible systems,
+calloc is defined separately from malloc. To avoid confusion on
+other systems, f2c/malloc.c now defines calloc.)
+ libi77: lread.c: adjust to accord with a change to the Fortran 8X
+draft (in 1990 or 1991) that rescinded permission to elide quote marks
+in namelist input of character data; to get the old behavior, compile
+with F8X_NML_ELIDE_QUOTES #defined. wrtfmt.o: wrt_G: tweak to print
+the right number of 0's for zero under G format.
+
+Sat Aug 16 05:45:32 EDT 1997
+ libi77: iio.c: fix bug in internal writes to an array of character
+strings that sometimes caused one more array element than required by
+the format to be blank-filled. Example: format(1x).
+
+Wed Sep 17 00:39:29 EDT 1997
+ libi77: fmt.[ch] rdfmt.c wrtfmt.c: tweak struct syl for machines
+with 64-bit pointers and 32-bit ints that did not 64-bit align
+struct syl (e.g., Linux on the DEC Alpha). This change should be
+invisible on other machines.
+
+Sun Sep 21 22:05:19 EDT 1997
+ libf77: [de]time_.c (Unix systems only): change return type to double.
+
+Thu Dec 4 22:10:09 EST 1997
+ Fix bug with handling large blocks of comments (over 4k); parts of the
+second and subsequent blocks were likely to be lost (not copied into
+comments in the resulting C). Allow comment lines to be longer before
+breaking them.
+
+Mon Jan 19 17:19:27 EST 1998
+ makefile: change the rule for making gram.c to one for making gram1.c;
+henceforth, asking netlib to "send all from f2c/src" will bring you a
+working gram.c. Nowadays there are simply too many broken versions of
+yacc floating around.
+ libi77: backspace.c: for b->ufmt==0, change sizeof(int) to
+sizeof(uiolen). On machines where this would make a difference, it is
+best for portability to compile libI77 with -DUIOLEN_int, which will
+render the change invisible.
+
+Tue Feb 24 08:35:33 EST 1998
+ makefile: remove gram.c from the "make clean" rule.
+
+Wed Feb 25 08:29:39 EST 1998
+ makefile: change CFLAGS assignment to -O; add "veryclean" rule.
+
+Wed Mar 4 13:13:21 EST 1998
+ libi77: open.c: fix glitch in comparing file names under
+-DNON_UNIX_STDIO.
+
+Mon Mar 9 23:56:56 EST 1998
+ putpcc.c: omit an unnecessary temporary variable in computing
+(expr)**3.
+ libf77, libi77: minor tweaks to make some C++ compilers happy;
+Version.c not changed.
+
+Wed Mar 18 18:08:47 EST 1998
+ libf77: minor tweaks to [ed]time_.c; Version.c not changed.
+ libi77: endfile.c, open.c: acquire temporary files from tmpfile(),
+unless compiled with -DNON_ANSI_STDIO, which uses mktemp().
+New buffering scheme independent of NON_UNIX_STDIO for handling T
+format items. Now -DNON_UNIX_STDIO is no longer be necessary for
+Linux, and libf2c no longer causes stderr to be buffered -- the former
+setbuf or setvbuf call for stderr was to make T format items work.
+open.c: use the Posix access() function to check existence or
+nonexistence of files, except under -DNON_POSIX_STDIO, where trial
+fopen calls are used. In open.c, fix botch in changes of 19980304.
+ libf2c.zip: the PC makefiles are now set for NT/W95, with comments
+about changes for DOS.
+
+Fri Apr 3 17:22:12 EST 1998
+ Adjust fix of 19960913 to again permit substring notation on
+character variables in data statements.
+
+Sun Apr 5 19:26:50 EDT 1998
+ libi77: wsfe.c: make $ format item work: this was lost in the changes
+of 17 March 1998.
+
+Sat May 16 19:08:51 EDT 1998
+ Adjust output of ftnlen constants: rather than appending L,
+prepend (ftnlen). This should make the resulting C more portable,
+e.g., to systems (such as DEC Alpha Unix systems) on which long
+may be longer than ftnlen.
+ Adjust -r so it also casts REAL expressions passed to intrinsic
+functions to REAL.
+
+Wed May 27 16:02:35 EDT 1998
+ libf2c.zip: tweak description of compiling libf2c for INTEGER*8
+to accord with makefile.u rather than libF77/makefile.
+
+Thu May 28 22:45:59 EDT 1998
+ libi77: backspace.c dfe.c due.c iio.c lread.c rsfe.c sue.c wsfe.c:
+set f__curunit sooner so various error messages will correctly
+identify the I/O unit involved.
+ libf2c.zip: above, plus tweaks to PC makefiles: for some purposes,
+it's still best to compile with -DMSDOS (even for use with NT).
+
+Thu Jun 18 01:22:52 EDT 1998
+ libi77: lread.c: modified so floating-point numbers (containing
+either a decimal point or an exponent field) are treated as errors
+when they appear as list input for integer data. Compile lread.c with
+-DALLOW_FLOAT_IN_INTEGER_LIST_INPUT to restore the old behavior.
+
+Mon Aug 31 10:38:54 EDT 1998
+ formatdata.c: if possible, and assuming doubles must be aligned on
+double boundaries, use existing holes in DATA for common blocks to
+force alignment of the block. For example,
+ block data
+ common /abc/ a, b
+ double precision a
+ integer b(2)
+ data b(2)/1/
+ end
+used to generate
+ struct {
+ integer fill_1[3];
+ integer e_2;
+ doublereal e_3;
+ } abc_ = { {0}, 1, 0. };
+and now generates
+ struct {
+ doublereal fill_1[1];
+ integer fill_2[1];
+ integer e_3;
+ } abc_ = { {0}, {0}, 1 };
+In the old generated C, e_3 was added to force alignment; in the new C,
+fill_1 does this job.
+
+Mon Sep 7 19:48:51 EDT 1998
+ libi77: move e_wdfe from sfe.c to dfe.c, where it was originally.
+Why did it ever move to sfe.c?
+
+Tue Sep 8 10:22:50 EDT 1998
+ Treat dreal as a synonym for dble unless -cd is specified on the
+command line.
+
+Sun Sep 13 22:23:41 EDT 1998
+ format.c: fix bug in writing prototypes under f2c -A ... *.P:
+under some circumstances involving external functions with no known
+type, a null pointer was passed to printf.
+
+Tue Oct 20 23:25:54 EDT 1998
+ Comments added to libf2c/README and libF77/README, pointing out
+the need to modify signal1.h on some systems.
+
+Thu Nov 12 15:34:09 EST 1998
+ libf77, libf2c.zip: minor tweaks to [de]time_.c and the makefiles,
+so makefile.sy, makefile.vc, and makefile.wat deal with [de]time_.c.
+
+Wed Feb 10 22:59:52 EST 1999
+ defs.h lex.c: permit long names (up to at least roughly
+MAX_SHARPLINE_LEN = 1000 characters long) in #line lines (which only
+matters under -g).
+ fc: add -U option; recognize .so files.
+
+Sat Feb 13 10:18:27 EST 1999
+ libf2c: endfile.c, lread.c, signal1.h0: minor tweaks to make some
+(C++) compilers happier; f77_aloc.c: make exit_() visible to C++
+compilers. Version strings not changed.
+
+Thu Mar 11 23:14:02 EST 1999
+ Modify f2c (exec.c, expr.c) to diagnose incorrect mixing of types
+when (f2c extended) intrinsic functions are involved, as in
+(not(17) .and. 4). Catching this in the first executable statement
+is a bit tricky, as some checking must be postponed until all statement
+function declarations have been parsed. Thus there is a chance of
+today's changes introducing bugs under (let us hope) unusual conditions.
+
+Sun Mar 28 13:17:44 EST 1999
+ lex.c: tweak to get the file name right in error messages caused
+by statements just after a # nnn "filename" line emitted by the C
+preprocessor. (The trouble is that the line following the # nnn line
+must be read to see if it is a continuation of the stuff that preceded
+the # nnn line.) When # nnn "filename" lines appear among the lines
+for a Fortran statement, the filename reported in an error message for
+the statement should now be the file that was current when the first
+line of the statement was read.
+
+Sun May 2 22:38:25 EDT 1999
+ libf77, libi77, libf2c.zip: make getenv_() more portable (call
+getenv() rather than knowing about char **environ); adjust some
+complex intrinsics to work with overlapping arguments (caused by
+inappropriate use of equivalence); open.c: get "external" versus
+"internal" right in the error message if a file cannot be opened;
+err.c: cast a pointer difference to (int) for %d; rdfmt.c: omit
+fixed-length buffer that could be overwritten by formats Inn or Lnn
+with nn > 83.
+
+Mon May 3 13:14:07 EDT 1999
+ "Invisible" changes to omit a few compiler warnings in f2c and
+libf2c; two new casts in libf2c/open.c that matter with 64-bit longs,
+and one more tweak (libf2c/c_log.c) for pathological equivalences.
+ Minor update to "fc" script: new -L flag and comment correction.
+
+Tue May 4 10:06:26 EDT 1999
+ libf77, libf2c.zip: forgot to copy yesterday's latest updates to
+netlib.
+
+Current timestamps of files in "all from f2c/src", sorted by time,
+appear below (mm/dd/year hh:mm:ss). To bring your source up to date,
+obtain source files with a timestamp later than the time shown in your
+version.c. Note that the time shown in the current version.c is the
+timestamp of the source module that immediately follows version.c below:
+
+ 5/03/1999 12:46:15 version.c
+ 5/03/1999 12:39:35 formatdata.c
+ 5/03/1999 12:31:14 format.c
+ 5/03/1999 12:27:17 p1output.c
+ 5/03/1999 12:27:17 data.c
+ 5/03/1999 10:01:12 xsum0.out
+ 5/03/1999 9:59:36 io.c
+ 5/03/1999 9:59:36 misc.c
+ 5/03/1999 9:59:36 init.c
+ 3/26/1999 23:18:11 lex.c
+ 3/11/1999 16:44:17 expr.c
+ 3/11/1999 16:42:42 exec.c
+ 2/10/1999 17:43:01 defs.h
+ 9/08/1998 10:16:51 f2c.1
+ 9/08/1998 10:16:48 f2c.1t
+ 9/08/1998 10:14:53 intr.c
+ 5/16/1998 16:55:49 output.c
+ 4/03/1998 17:15:05 gram.c
+ 4/03/1998 17:14:59 gram.dcl
+ 3/09/1998 0:30:23 putpcc.c
+ 2/25/1998 8:18:04 makefile
+12/04/1997 17:44:11 niceprintf.c
+ 8/05/1997 10:31:26 malloc.c
+ 7/24/1997 17:10:55 README
+ 7/24/1997 16:06:19 Notice
+ 7/21/1997 12:58:44 proc.c
+ 2/11/1997 23:39:14 vax.c
+12/04/1996 13:07:53 gram.exec
+ 9/12/1996 12:12:46 equiv.c
+ 8/26/1996 9:41:13 sysdep.c
+ 7/09/1996 10:40:45 names.c
+ 7/04/1996 9:55:45 sysdep.h
+ 7/04/1996 9:55:43 put.c
+ 7/04/1996 9:55:41 pread.c
+ 7/04/1996 9:55:40 parse_args.c
+ 7/04/1996 9:55:36 mem.c
+ 7/04/1996 9:55:36 memset.c
+ 7/04/1996 9:55:35 main.c
+ 7/04/1996 9:55:29 error.c
+ 7/04/1996 9:55:27 cds.c
+ 7/03/1996 15:47:49 xsum.c
+ 6/19/1996 7:04:27 f2c.h
+ 6/19/1996 2:52:05 defines.h
+ 5/13/1996 0:40:32 gram.head
+ 2/25/1994 2:07:19 parse.h
+ 2/22/1994 19:07:20 iob.h
+ 2/22/1994 18:56:53 p1defs.h
+ 2/22/1994 18:53:46 output.h
+ 2/22/1994 18:51:14 names.h
+ 2/22/1994 18:30:41 format.h
+ 1/18/1994 18:12:52 tokens
+ 3/06/1993 14:13:58 gram.expr
+ 1/28/1993 9:03:16 ftypes.h
+ 4/06/1990 0:00:57 gram.io
+ 2/03/1990 0:58:26 niceprintf.h
+ 1/07/1990 1:20:01 usignal.h
+11/27/1989 8:27:37 machdefs.h
+ 7/01/1989 11:59:44 pccdefs.h