This library contains the main SLATEC Fortran source.
There are five (5) machine specific subprograms (D1MACH,
I1MACH, R1MACH, FDUMP and XERHLT) in the source file.
These are described further in the next two paragraphs.
Machine constants, such as word length and maximum
positive exponent, are supplied to routines in SLATEC
source via the functions D1MACH, I1MACH and R1MACH. Make
sure that each machine type at your site returns the
correct values for these functions. In most cases, this
only requires replacing a "C" with a blank in the first
column of several lines of each function. The copies of
D1MACH, I1MACH and R1MACH included in the source have all
the machine specific constants commented out with a "C" in
column one.
The standard error handler has two machine dependent
subroutines in it: FDUMP and XERHLT. The routine XERHLT
is called via XERMSG when a fatal error is encountered and
must terminate the job. The copy of XERHLT included in
this file contains a "STOP" and thus does stop execution.
However, in most circumstances, this normal exit is
unacceptable when an error has been detected and this
subroutine should be replaced at each site. The routine
FDUMP is called via XERMSG when traceback information is
desired. This routine should provide the traceback
information to appropriate output files. The copy of
FDUMP included in the source does not produce traceback
information. If this function is desired, it must be
implemented at each site.
It is assumed that all ANSI-77 standard intrinsic
functions are vendor-supplied and, therefore, are not
included in the main SLATEC source. In the event that
some of these subprograms are not resident on the system
(e.g. DINT on CDC), many are included in the subsid. (See
below.) In some cases, the higher special
functions (e.g. error functions, Bessel functions)
anticipate that certain errors will be handled in the
intrinsic functions. This may not be done appropriately
in vendor-supplied intrinsic functions and may cause
difficulties.

removed from slatec/src to make the main source more accessible
see also /netlib/fn, which is another version; we don't really
know which one is more recent or bug-free. If you figure it out
please send email to ehg@research.bell-labs.com.

If some of the quick checks fail on certain machines, it
does not necessarily indicate a problem in the source, but
possibly in the quick checks themselves, or the machine
architecture or the operating system or the compiler or
vendor or user supplied software.
The main programs (quick check drivers) are test01.f,...,test54.f.
On the VAX under VMS, the quick checks should be run with
KPRINT = 0 or 1 (zero or one).