summaryrefslogtreecommitdiff
path: root/lang/gcc
diff options
context:
space:
mode:
authortron <tron>2000-09-15 23:58:47 +0000
committertron <tron>2000-09-15 23:58:47 +0000
commitc84006ce24065d0d0ddcfcf873bf2103b9cf43c5 (patch)
treeeec98b048f42008dd646a65c97203e5a41627235 /lang/gcc
parent045f11dfa91ddafc7a206a4cb8770096ee8f7d7c (diff)
downloadpkgsrc-c84006ce24065d0d0ddcfcf873bf2103b9cf43c5.tar.gz
- Add patches from NetBSD-current to fix build on i386 ELF systems.
- Install into "${LOCALBASE}/gcc-2.95.2" to avoid that e.g. "bsd.pkg.mk" picks up the new compiler by accident. - Add a file "${LOCALBASE}/etc/gcc-2.95.2.mk" which makes it possible to use the new "gcc" like this: make MAKECONF=/usr/pkg/etc/gcc-2.95.2.mk
Diffstat (limited to 'lang/gcc')
-rw-r--r--lang/gcc/Makefile41
-rw-r--r--lang/gcc/files/gcc.mk9
-rw-r--r--lang/gcc/files/patch-sum21
-rw-r--r--lang/gcc/patches/patch-aa10935
-rw-r--r--lang/gcc/patches/patch-ab166
-rw-r--r--lang/gcc/patches/patch-ac28
-rw-r--r--lang/gcc/patches/patch-ad78
-rw-r--r--lang/gcc/patches/patch-ae47
-rw-r--r--lang/gcc/patches/patch-af174
-rw-r--r--lang/gcc/patches/patch-ag16
-rw-r--r--lang/gcc/patches/patch-ah34
-rw-r--r--lang/gcc/patches/patch-ai9
-rw-r--r--lang/gcc/patches/patch-aj9
-rw-r--r--lang/gcc/patches/patch-ak49
-rw-r--r--lang/gcc/patches/patch-al104
-rw-r--r--lang/gcc/patches/patch-am37
-rw-r--r--lang/gcc/patches/patch-an11
-rw-r--r--lang/gcc/patches/patch-ao18
-rw-r--r--lang/gcc/patches/patch-ap12
-rw-r--r--lang/gcc/patches/patch-aq64
-rw-r--r--lang/gcc/patches/patch-ar1737
-rw-r--r--lang/gcc/patches/patch-as20
-rw-r--r--lang/gcc/pkg/PLIST612
23 files changed, 13917 insertions, 314 deletions
diff --git a/lang/gcc/Makefile b/lang/gcc/Makefile
index a4577832f66..acc723ffff7 100644
--- a/lang/gcc/Makefile
+++ b/lang/gcc/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.3 2000/05/23 22:09:58 tron Exp $
+# $NetBSD: Makefile,v 1.4 2000/09/15 23:58:47 tron Exp $
DISTNAME= gcc-2.95.2
CATEGORIES= lang
@@ -9,24 +9,41 @@ HOMEPAGE= http://www.gnu.org/software/gcc/gcc.html
BUILD_DEPENDS+= ${LOCALBASE}/bin/bison:../../devel/bison
-# TODO:
-# - rename binaries to avoid conflicts with base distribution
-# - improve directory structure
-# - support more platforms
+# NetBSD-arm32 and NetBSD-i386 are the only tested platform so far.
+# If you got it working on other platforms please add them.
+ONLY_FOR_PLATFORM= NetBSD-*-arm32 NetBSD-*-i386
-# NetBSD-arm32 is the only tested platform so far. If you got it
-# working on other platforms please add them.
-ONLY_FOR_PLATFORM= NetBSD-*-arm32
+.include "../../mk/bsd.prefs.mk"
-USE_GMAKE= yes
-GNU_CONFIGURE= yes
+.if (${OPSYS} == "NetBSD") && (${OBJECT_FMT} == "ELF")
+MACHINE_GCC_PLATFORM= ${MACHINE_GNU_PLATFORM}elf
+.else
+MACHINE_GCC_PLATFORM= ${MACHINE_GNU_PLATFORM}
+.endif
+
+USE_GMAKE= YES
+HAS_CONFIGURE= YES
+CONFIGURE_ARGS= --host=${MACHINE_GCC_PLATFORM} \
+ --prefix=${LOCALBASE}/${PKGNAME} \
+ --with-gnu-as --with-gnu-ld
CONFIGURE_SCRIPT= ${SRCDIR}/configure
-CONFIGURE_ARGS+= --with-gnu-as --with-gnu-ld
-SRCDIR= ${WRKDIR}/${DISTNAME}
+GCC_VERSION= ${PKGNAME:C/.*-//}
+PLIST_SUBST+= GCC_VERSION=${GCC_VERSION} \
+ MACHINE_GCC_PLATFORM=${MACHINE_GCC_PLATFORM}
+SRCDIR= ${WRKDIR}/${PKGNAME}
WRKSRC= ${WRKDIR}/objdir
post-extract:
${MKDIR} ${WRKSRC}
+post-build:
+ ${SED} -e 's#@@PKGNAME@@#${PKGNAME}#g' -e 's#@@PREFIX@@#${PREFIX}#g' \
+ <${FILESDIR}/gcc.mk >${WRKDIR}/gcc.mk
+
+post-install:
+ ${RM} -f ${PREFIX}/${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/curses.h ${PREFIX}/${PKGNAME}/bin/cc
+ ${LN} -s gcc ${PREFIX}/${PKGNAME}/bin/cc
+ ${INSTALL_DATA} ${WRKDIR}/gcc.mk ${PREFIX}/etc/${PKGNAME}.mk
+
.include "../../mk/bsd.pkg.mk"
diff --git a/lang/gcc/files/gcc.mk b/lang/gcc/files/gcc.mk
new file mode 100644
index 00000000000..04a0320fb5d
--- /dev/null
+++ b/lang/gcc/files/gcc.mk
@@ -0,0 +1,9 @@
+# make configuration file for @@PKGNAME@@
+
+CC= @@PREFIX@@/@@PKGNAME@@/bin/cc
+CPP= @@PREFIX@@/@@PKGNAME@@/bin/cpp
+CXX= @@PREFIX@@/@@PKGNAME@@/bin/c++
+
+.if exists(/etc/mk.conf)
+.include "/etc/mk.conf"
+.endif
diff --git a/lang/gcc/files/patch-sum b/lang/gcc/files/patch-sum
new file mode 100644
index 00000000000..ea79b1a25ed
--- /dev/null
+++ b/lang/gcc/files/patch-sum
@@ -0,0 +1,21 @@
+$NetBSD: patch-sum,v 1.1 2000/09/15 23:58:47 tron Exp $
+
+MD5 (patch-aa) = 0166b5dcc45385063d43726df116eeec
+MD5 (patch-ab) = 7b4d30dcd719244e33f50e4f61edce27
+MD5 (patch-ac) = 83fdc3eac946751d30e7c06daeaf61d4
+MD5 (patch-ad) = d241675f130a02db868451e4071fb21f
+MD5 (patch-ae) = 15fa550dc0282f8908576bdbcfc336e4
+MD5 (patch-af) = 43272092bd2ec741918126d3f925b47b
+MD5 (patch-ag) = 307e3f8645c99b963663c1e0c012e6f1
+MD5 (patch-ah) = ef04d7e23cd9b744cbe15c1f44d0a486
+MD5 (patch-ai) = 702a0910bb030b132fdd549385a98a85
+MD5 (patch-aj) = 4aded3f835f9274c295e350dba44946b
+MD5 (patch-ak) = cc9c95b28fb79e6e61290e319574a781
+MD5 (patch-al) = 6793f819b0bd8466133b8c2682460a47
+MD5 (patch-am) = a91440f20d85083c56023185b9526403
+MD5 (patch-an) = ecdd3b83cfbe09cfa2db0a59c0bb36e3
+MD5 (patch-ao) = 8a67865c648c6e6228e01ba0bc3a2b9c
+MD5 (patch-ap) = 61ea82f434de0a97dcd9ea24479f66c2
+MD5 (patch-aq) = 7c2c6039ad24707791d5d8d97a6a6c3b
+MD5 (patch-ar) = bb173f687ae48a67c9c144e65617c825
+MD5 (patch-as) = 307de5fd7f353a97273902aaaeb53397
diff --git a/lang/gcc/patches/patch-aa b/lang/gcc/patches/patch-aa
new file mode 100644
index 00000000000..9a39c396235
--- /dev/null
+++ b/lang/gcc/patches/patch-aa
@@ -0,0 +1,10935 @@
+$NetBSD: patch-aa,v 1.1 2000/09/15 23:58:47 tron Exp $
+
+--- ../gcc-2.95.2/gcc/f/intdoc.texi.orig Wed May 12 22:56:21 1999
++++ ../gcc-2.95.2/gcc/f/intdoc.texi Sat Sep 16 00:17:42 2000
+@@ -1,10930 +0,0 @@
+-@c This file is automatically derived from intdoc.c, intdoc.in,
+-@c ansify.c, intrin.def, and intrin.h. Edit those files instead.
+-@menu
+-@ifset familyF2U
+-* Abort Intrinsic:: Abort the program.
+-@end ifset
+-@ifset familyF77
+-* Abs Intrinsic:: Absolute value.
+-@end ifset
+-@ifset familyF2U
+-* Access Intrinsic:: Check file accessibility.
+-@end ifset
+-@ifset familyASC
+-* AChar Intrinsic:: ASCII character from code.
+-@end ifset
+-@ifset familyF77
+-* ACos Intrinsic:: Arc cosine.
+-@end ifset
+-@ifset familyVXT
+-* ACosD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* AdjustL Intrinsic:: (Reserved for future use.)
+-* AdjustR Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* AImag Intrinsic:: Convert/extract imaginary part of complex.
+-@end ifset
+-@ifset familyVXT
+-* AIMax0 Intrinsic:: (Reserved for future use.)
+-* AIMin0 Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* AInt Intrinsic:: Truncate to whole number.
+-@end ifset
+-@ifset familyVXT
+-* AJMax0 Intrinsic:: (Reserved for future use.)
+-* AJMin0 Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Alarm Intrinsic:: Execute a routine after a given delay.
+-@end ifset
+-@ifset familyF90
+-* All Intrinsic:: (Reserved for future use.)
+-* Allocated Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* ALog Intrinsic:: Natural logarithm (archaic).
+-* ALog10 Intrinsic:: Common logarithm (archaic).
+-* AMax0 Intrinsic:: Maximum value (archaic).
+-* AMax1 Intrinsic:: Maximum value (archaic).
+-* AMin0 Intrinsic:: Minimum value (archaic).
+-* AMin1 Intrinsic:: Minimum value (archaic).
+-* AMod Intrinsic:: Remainder (archaic).
+-@end ifset
+-@ifset familyF2C
+-* And Intrinsic:: Boolean AND.
+-@end ifset
+-@ifset familyF77
+-* ANInt Intrinsic:: Round to nearest whole number.
+-@end ifset
+-@ifset familyF90
+-* Any Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* ASin Intrinsic:: Arc sine.
+-@end ifset
+-@ifset familyVXT
+-* ASinD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Associated Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* ATan Intrinsic:: Arc tangent.
+-* ATan2 Intrinsic:: Arc tangent.
+-@end ifset
+-@ifset familyVXT
+-* ATan2D Intrinsic:: (Reserved for future use.)
+-* ATanD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* BesJ0 Intrinsic:: Bessel function.
+-* BesJ1 Intrinsic:: Bessel function.
+-* BesJN Intrinsic:: Bessel function.
+-* BesY0 Intrinsic:: Bessel function.
+-* BesY1 Intrinsic:: Bessel function.
+-* BesYN Intrinsic:: Bessel function.
+-@end ifset
+-@ifset familyVXT
+-* BITest Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Bit_Size Intrinsic:: Number of bits in argument's type.
+-@end ifset
+-@ifset familyVXT
+-* BJTest Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyMIL
+-* BTest Intrinsic:: Test bit.
+-@end ifset
+-@ifset familyF77
+-* CAbs Intrinsic:: Absolute value (archaic).
+-* CCos Intrinsic:: Cosine (archaic).
+-@end ifset
+-@ifset familyFVZ
+-* CDAbs Intrinsic:: Absolute value (archaic).
+-* CDCos Intrinsic:: Cosine (archaic).
+-* CDExp Intrinsic:: Exponential (archaic).
+-* CDLog Intrinsic:: Natural logarithm (archaic).
+-* CDSin Intrinsic:: Sine (archaic).
+-* CDSqRt Intrinsic:: Square root (archaic).
+-@end ifset
+-@ifset familyF90
+-* Ceiling Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* CExp Intrinsic:: Exponential (archaic).
+-* Char Intrinsic:: Character from code.
+-@end ifset
+-@ifset familyF2U
+-* ChDir Intrinsic (subroutine):: Change directory.
+-@end ifset
+-@ifset familyBADU77
+-* ChDir Intrinsic (function):: Change directory.
+-@end ifset
+-@ifset familyF2U
+-* ChMod Intrinsic (subroutine):: Change file modes.
+-@end ifset
+-@ifset familyBADU77
+-* ChMod Intrinsic (function):: Change file modes.
+-@end ifset
+-@ifset familyF77
+-* CLog Intrinsic:: Natural logarithm (archaic).
+-* Cmplx Intrinsic:: Construct @code{COMPLEX(KIND=1)} value.
+-@end ifset
+-@ifset familyGNU
+-* Complex Intrinsic:: Build complex value from real and
+- imaginary parts.
+-@end ifset
+-@ifset familyF77
+-* Conjg Intrinsic:: Complex conjugate.
+-* Cos Intrinsic:: Cosine.
+-@end ifset
+-@ifset familyVXT
+-* CosD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* CosH Intrinsic:: Hyperbolic cosine.
+-@end ifset
+-@ifset familyF90
+-* Count Intrinsic:: (Reserved for future use.)
+-* CPU_Time Intrinsic:: Get current CPU time.
+-* CShift Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* CSin Intrinsic:: Sine (archaic).
+-* CSqRt Intrinsic:: Square root (archaic).
+-@end ifset
+-@ifset familyF2U
+-* CTime Intrinsic (subroutine):: Convert time to Day Mon dd hh:mm:ss yyyy.
+-* CTime Intrinsic (function):: Convert time to Day Mon dd hh:mm:ss yyyy.
+-@end ifset
+-@ifset familyF77
+-* DAbs Intrinsic:: Absolute value (archaic).
+-* DACos Intrinsic:: Arc cosine (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DACosD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DASin Intrinsic:: Arc sine (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DASinD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DATan Intrinsic:: Arc tangent (archaic).
+-* DATan2 Intrinsic:: Arc tangent (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DATan2D Intrinsic:: (Reserved for future use.)
+-* DATanD Intrinsic:: (Reserved for future use.)
+-* Date Intrinsic:: Get current date as dd-Mon-yy.
+-@end ifset
+-@ifset familyF90
+-* Date_and_Time Intrinsic:: Get the current date and time.
+-@end ifset
+-@ifset familyF2U
+-* DbesJ0 Intrinsic:: Bessel function (archaic).
+-* DbesJ1 Intrinsic:: Bessel function (archaic).
+-* DbesJN Intrinsic:: Bessel function (archaic).
+-* DbesY0 Intrinsic:: Bessel function (archaic).
+-* DbesY1 Intrinsic:: Bessel function (archaic).
+-* DbesYN Intrinsic:: Bessel function (archaic).
+-@end ifset
+-@ifset familyF77
+-* Dble Intrinsic:: Convert to double precision.
+-@end ifset
+-@ifset familyVXT
+-* DbleQ Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyFVZ
+-* DCmplx Intrinsic:: Construct @code{COMPLEX(KIND=2)} value.
+-* DConjg Intrinsic:: Complex conjugate (archaic).
+-@end ifset
+-@ifset familyF77
+-* DCos Intrinsic:: Cosine (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DCosD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DCosH Intrinsic:: Hyperbolic cosine (archaic).
+-* DDiM Intrinsic:: Difference magnitude (archaic).
+-@end ifset
+-@ifset familyF2U
+-* DErF Intrinsic:: Error function (archaic).
+-* DErFC Intrinsic:: Complementary error function (archaic).
+-@end ifset
+-@ifset familyF77
+-* DExp Intrinsic:: Exponential (archaic).
+-@end ifset
+-@ifset familyFVZ
+-* DFloat Intrinsic:: Conversion (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DFlotI Intrinsic:: (Reserved for future use.)
+-* DFlotJ Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Digits Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DiM Intrinsic:: Difference magnitude (non-negative subtract).
+-@end ifset
+-@ifset familyFVZ
+-* DImag Intrinsic:: Convert/extract imaginary part of complex (archaic).
+-@end ifset
+-@ifset familyF77
+-* DInt Intrinsic:: Truncate to whole number (archaic).
+-* DLog Intrinsic:: Natural logarithm (archaic).
+-* DLog10 Intrinsic:: Common logarithm (archaic).
+-* DMax1 Intrinsic:: Maximum value (archaic).
+-* DMin1 Intrinsic:: Minimum value (archaic).
+-* DMod Intrinsic:: Remainder (archaic).
+-* DNInt Intrinsic:: Round to nearest whole number (archaic).
+-@end ifset
+-@ifset familyF90
+-* Dot_Product Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DProd Intrinsic:: Double-precision product.
+-@end ifset
+-@ifset familyVXT
+-* DReal Intrinsic:: Convert value to type @code{REAL(KIND=2)}.
+-@end ifset
+-@ifset familyF77
+-* DSign Intrinsic:: Apply sign to magnitude (archaic).
+-* DSin Intrinsic:: Sine (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DSinD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DSinH Intrinsic:: Hyperbolic sine (archaic).
+-* DSqRt Intrinsic:: Square root (archaic).
+-* DTan Intrinsic:: Tangent (archaic).
+-@end ifset
+-@ifset familyVXT
+-* DTanD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* DTanH Intrinsic:: Hyperbolic tangent (archaic).
+-@end ifset
+-@ifset familyF2U
+-* DTime Intrinsic (subroutine):: Get elapsed time since last time.
+-@end ifset
+-@ifset familyBADU77
+-* DTime Intrinsic (function):: Get elapsed time since last time.
+-@end ifset
+-@ifset familyF90
+-* EOShift Intrinsic:: (Reserved for future use.)
+-* Epsilon Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* ErF Intrinsic:: Error function.
+-* ErFC Intrinsic:: Complementary error function.
+-* ETime Intrinsic (subroutine):: Get elapsed time for process.
+-* ETime Intrinsic (function):: Get elapsed time for process.
+-* Exit Intrinsic:: Terminate the program.
+-@end ifset
+-@ifset familyF77
+-* Exp Intrinsic:: Exponential.
+-@end ifset
+-@ifset familyF90
+-* Exponent Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* FDate Intrinsic (subroutine):: Get current time as Day Mon dd hh:mm:ss yyyy.
+-* FDate Intrinsic (function):: Get current time as Day Mon dd hh:mm:ss yyyy.
+-* FGet Intrinsic (subroutine):: Read a character from unit 5 stream-wise.
+-@end ifset
+-@ifset familyBADU77
+-* FGet Intrinsic (function):: Read a character from unit 5 stream-wise.
+-@end ifset
+-@ifset familyF2U
+-* FGetC Intrinsic (subroutine):: Read a character stream-wise.
+-@end ifset
+-@ifset familyBADU77
+-* FGetC Intrinsic (function):: Read a character stream-wise.
+-@end ifset
+-@ifset familyF77
+-* Float Intrinsic:: Conversion (archaic).
+-@end ifset
+-@ifset familyVXT
+-* FloatI Intrinsic:: (Reserved for future use.)
+-* FloatJ Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Floor Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Flush Intrinsic:: Flush buffered output.
+-* FNum Intrinsic:: Get file descriptor from Fortran unit number.
+-* FPut Intrinsic (subroutine):: Write a character to unit 6 stream-wise.
+-@end ifset
+-@ifset familyBADU77
+-* FPut Intrinsic (function):: Write a character to unit 6 stream-wise.
+-@end ifset
+-@ifset familyF2U
+-* FPutC Intrinsic (subroutine):: Write a character stream-wise.
+-@end ifset
+-@ifset familyBADU77
+-* FPutC Intrinsic (function):: Write a character stream-wise.
+-@end ifset
+-@ifset familyF90
+-* Fraction Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* FSeek Intrinsic:: Position file (low-level).
+-* FStat Intrinsic (subroutine):: Get file information.
+-* FStat Intrinsic (function):: Get file information.
+-* FTell Intrinsic (subroutine):: Get file position (low-level).
+-* FTell Intrinsic (function):: Get file position (low-level).
+-* GError Intrinsic:: Get error message for last error.
+-* GetArg Intrinsic:: Obtain command-line argument.
+-* GetCWD Intrinsic (subroutine):: Get current working directory.
+-* GetCWD Intrinsic (function):: Get current working directory.
+-* GetEnv Intrinsic:: Get environment variable.
+-* GetGId Intrinsic:: Get process group id.
+-* GetLog Intrinsic:: Get login name.
+-* GetPId Intrinsic:: Get process id.
+-* GetUId Intrinsic:: Get process user id.
+-* GMTime Intrinsic:: Convert time to GMT time info.
+-* HostNm Intrinsic (subroutine):: Get host name.
+-* HostNm Intrinsic (function):: Get host name.
+-@end ifset
+-@ifset familyF90
+-* Huge Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* IAbs Intrinsic:: Absolute value (archaic).
+-@end ifset
+-@ifset familyASC
+-* IAChar Intrinsic:: ASCII code for character.
+-@end ifset
+-@ifset familyMIL
+-* IAnd Intrinsic:: Boolean AND.
+-@end ifset
+-@ifset familyF2U
+-* IArgC Intrinsic:: Obtain count of command-line arguments.
+-@end ifset
+-@ifset familyMIL
+-* IBClr Intrinsic:: Clear a bit.
+-* IBits Intrinsic:: Extract a bit subfield of a variable.
+-* IBSet Intrinsic:: Set a bit.
+-@end ifset
+-@ifset familyF77
+-* IChar Intrinsic:: Code for character.
+-@end ifset
+-@ifset familyF2U
+-* IDate Intrinsic (UNIX):: Get local time info.
+-@end ifset
+-@ifset familyVXT
+-* IDate Intrinsic (VXT):: Get local time info (VAX/VMS).
+-@end ifset
+-@ifset familyF77
+-* IDiM Intrinsic:: Difference magnitude (archaic).
+-* IDInt Intrinsic:: Convert to @code{INTEGER} value truncated
+- to whole number (archaic).
+-* IDNInt Intrinsic:: Convert to @code{INTEGER} value rounded
+- to nearest whole number (archaic).
+-@end ifset
+-@ifset familyMIL
+-* IEOr Intrinsic:: Boolean XOR.
+-@end ifset
+-@ifset familyF2U
+-* IErrNo Intrinsic:: Get error number for last error.
+-@end ifset
+-@ifset familyF77
+-* IFix Intrinsic:: Conversion (archaic).
+-@end ifset
+-@ifset familyVXT
+-* IIAbs Intrinsic:: (Reserved for future use.)
+-* IIAnd Intrinsic:: (Reserved for future use.)
+-* IIBClr Intrinsic:: (Reserved for future use.)
+-* IIBits Intrinsic:: (Reserved for future use.)
+-* IIBSet Intrinsic:: (Reserved for future use.)
+-* IIDiM Intrinsic:: (Reserved for future use.)
+-* IIDInt Intrinsic:: (Reserved for future use.)
+-* IIDNnt Intrinsic:: (Reserved for future use.)
+-* IIEOr Intrinsic:: (Reserved for future use.)
+-* IIFix Intrinsic:: (Reserved for future use.)
+-* IInt Intrinsic:: (Reserved for future use.)
+-* IIOr Intrinsic:: (Reserved for future use.)
+-* IIQint Intrinsic:: (Reserved for future use.)
+-* IIQNnt Intrinsic:: (Reserved for future use.)
+-* IIShftC Intrinsic:: (Reserved for future use.)
+-* IISign Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2C
+-* Imag Intrinsic:: Extract imaginary part of complex.
+-@end ifset
+-@ifset familyGNU
+-* ImagPart Intrinsic:: Extract imaginary part of complex.
+-@end ifset
+-@ifset familyVXT
+-* IMax0 Intrinsic:: (Reserved for future use.)
+-* IMax1 Intrinsic:: (Reserved for future use.)
+-* IMin0 Intrinsic:: (Reserved for future use.)
+-* IMin1 Intrinsic:: (Reserved for future use.)
+-* IMod Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Index Intrinsic:: Locate a CHARACTER substring.
+-@end ifset
+-@ifset familyVXT
+-* INInt Intrinsic:: (Reserved for future use.)
+-* INot Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Int Intrinsic:: Convert to @code{INTEGER} value truncated
+- to whole number.
+-@end ifset
+-@ifset familyGNU
+-* Int2 Intrinsic:: Convert to @code{INTEGER(KIND=6)} value
+- truncated to whole number.
+-* Int8 Intrinsic:: Convert to @code{INTEGER(KIND=2)} value
+- truncated to whole number.
+-@end ifset
+-@ifset familyMIL
+-* IOr Intrinsic:: Boolean OR.
+-@end ifset
+-@ifset familyF2U
+-* IRand Intrinsic:: Random number.
+-* IsaTty Intrinsic:: Is unit connected to a terminal?
+-@end ifset
+-@ifset familyMIL
+-* IShft Intrinsic:: Logical bit shift.
+-* IShftC Intrinsic:: Circular bit shift.
+-@end ifset
+-@ifset familyF77
+-* ISign Intrinsic:: Apply sign to magnitude (archaic).
+-@end ifset
+-@ifset familyF2U
+-* ITime Intrinsic:: Get local time of day.
+-@end ifset
+-@ifset familyVXT
+-* IZExt Intrinsic:: (Reserved for future use.)
+-* JIAbs Intrinsic:: (Reserved for future use.)
+-* JIAnd Intrinsic:: (Reserved for future use.)
+-* JIBClr Intrinsic:: (Reserved for future use.)
+-* JIBits Intrinsic:: (Reserved for future use.)
+-* JIBSet Intrinsic:: (Reserved for future use.)
+-* JIDiM Intrinsic:: (Reserved for future use.)
+-* JIDInt Intrinsic:: (Reserved for future use.)
+-* JIDNnt Intrinsic:: (Reserved for future use.)
+-* JIEOr Intrinsic:: (Reserved for future use.)
+-* JIFix Intrinsic:: (Reserved for future use.)
+-* JInt Intrinsic:: (Reserved for future use.)
+-* JIOr Intrinsic:: (Reserved for future use.)
+-* JIQint Intrinsic:: (Reserved for future use.)
+-* JIQNnt Intrinsic:: (Reserved for future use.)
+-* JIShft Intrinsic:: (Reserved for future use.)
+-* JIShftC Intrinsic:: (Reserved for future use.)
+-* JISign Intrinsic:: (Reserved for future use.)
+-* JMax0 Intrinsic:: (Reserved for future use.)
+-* JMax1 Intrinsic:: (Reserved for future use.)
+-* JMin0 Intrinsic:: (Reserved for future use.)
+-* JMin1 Intrinsic:: (Reserved for future use.)
+-* JMod Intrinsic:: (Reserved for future use.)
+-* JNInt Intrinsic:: (Reserved for future use.)
+-* JNot Intrinsic:: (Reserved for future use.)
+-* JZExt Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Kill Intrinsic (subroutine):: Signal a process.
+-@end ifset
+-@ifset familyBADU77
+-* Kill Intrinsic (function):: Signal a process.
+-@end ifset
+-@ifset familyF90
+-* Kind Intrinsic:: (Reserved for future use.)
+-* LBound Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Len Intrinsic:: Length of character entity.
+-@end ifset
+-@ifset familyF90
+-* Len_Trim Intrinsic:: Get last non-blank character in string.
+-@end ifset
+-@ifset familyF77
+-* LGe Intrinsic:: Lexically greater than or equal.
+-* LGt Intrinsic:: Lexically greater than.
+-@end ifset
+-@ifset familyF2U
+-* Link Intrinsic (subroutine):: Make hard link in file system.
+-@end ifset
+-@ifset familyBADU77
+-* Link Intrinsic (function):: Make hard link in file system.
+-@end ifset
+-@ifset familyF77
+-* LLe Intrinsic:: Lexically less than or equal.
+-* LLt Intrinsic:: Lexically less than.
+-@end ifset
+-@ifset familyF2U
+-* LnBlnk Intrinsic:: Get last non-blank character in string.
+-* Loc Intrinsic:: Address of entity in core.
+-@end ifset
+-@ifset familyF77
+-* Log Intrinsic:: Natural logarithm.
+-* Log10 Intrinsic:: Common logarithm.
+-@end ifset
+-@ifset familyF90
+-* Logical Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Long Intrinsic:: Conversion to @code{INTEGER(KIND=1)} (archaic).
+-@end ifset
+-@ifset familyF2C
+-* LShift Intrinsic:: Left-shift bits.
+-@end ifset
+-@ifset familyF2U
+-* LStat Intrinsic (subroutine):: Get file information.
+-* LStat Intrinsic (function):: Get file information.
+-* LTime Intrinsic:: Convert time to local time info.
+-@end ifset
+-@ifset familyF90
+-* MatMul Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Max Intrinsic:: Maximum value.
+-* Max0 Intrinsic:: Maximum value (archaic).
+-* Max1 Intrinsic:: Maximum value (archaic).
+-@end ifset
+-@ifset familyF90
+-* MaxExponent Intrinsic:: (Reserved for future use.)
+-* MaxLoc Intrinsic:: (Reserved for future use.)
+-* MaxVal Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* MClock Intrinsic:: Get number of clock ticks for process.
+-* MClock8 Intrinsic:: Get number of clock ticks for process.
+-@end ifset
+-@ifset familyF90
+-* Merge Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Min Intrinsic:: Minimum value.
+-* Min0 Intrinsic:: Minimum value (archaic).
+-* Min1 Intrinsic:: Minimum value (archaic).
+-@end ifset
+-@ifset familyF90
+-* MinExponent Intrinsic:: (Reserved for future use.)
+-* MinLoc Intrinsic:: (Reserved for future use.)
+-* MinVal Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Mod Intrinsic:: Remainder.
+-@end ifset
+-@ifset familyF90
+-* Modulo Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyMIL
+-* MvBits Intrinsic:: Moving a bit field.
+-@end ifset
+-@ifset familyF90
+-* Nearest Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* NInt Intrinsic:: Convert to @code{INTEGER} value rounded
+- to nearest whole number.
+-@end ifset
+-@ifset familyMIL
+-* Not Intrinsic:: Boolean NOT.
+-@end ifset
+-@ifset familyF2C
+-* Or Intrinsic:: Boolean OR.
+-@end ifset
+-@ifset familyF90
+-* Pack Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* PError Intrinsic:: Print error message for last error.
+-@end ifset
+-@ifset familyF90
+-* Precision Intrinsic:: (Reserved for future use.)
+-* Present Intrinsic:: (Reserved for future use.)
+-* Product Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyVXT
+-* QAbs Intrinsic:: (Reserved for future use.)
+-* QACos Intrinsic:: (Reserved for future use.)
+-* QACosD Intrinsic:: (Reserved for future use.)
+-* QASin Intrinsic:: (Reserved for future use.)
+-* QASinD Intrinsic:: (Reserved for future use.)
+-* QATan Intrinsic:: (Reserved for future use.)
+-* QATan2 Intrinsic:: (Reserved for future use.)
+-* QATan2D Intrinsic:: (Reserved for future use.)
+-* QATanD Intrinsic:: (Reserved for future use.)
+-* QCos Intrinsic:: (Reserved for future use.)
+-* QCosD Intrinsic:: (Reserved for future use.)
+-* QCosH Intrinsic:: (Reserved for future use.)
+-* QDiM Intrinsic:: (Reserved for future use.)
+-* QExp Intrinsic:: (Reserved for future use.)
+-* QExt Intrinsic:: (Reserved for future use.)
+-* QExtD Intrinsic:: (Reserved for future use.)
+-* QFloat Intrinsic:: (Reserved for future use.)
+-* QInt Intrinsic:: (Reserved for future use.)
+-* QLog Intrinsic:: (Reserved for future use.)
+-* QLog10 Intrinsic:: (Reserved for future use.)
+-* QMax1 Intrinsic:: (Reserved for future use.)
+-* QMin1 Intrinsic:: (Reserved for future use.)
+-* QMod Intrinsic:: (Reserved for future use.)
+-* QNInt Intrinsic:: (Reserved for future use.)
+-* QSin Intrinsic:: (Reserved for future use.)
+-* QSinD Intrinsic:: (Reserved for future use.)
+-* QSinH Intrinsic:: (Reserved for future use.)
+-* QSqRt Intrinsic:: (Reserved for future use.)
+-* QTan Intrinsic:: (Reserved for future use.)
+-* QTanD Intrinsic:: (Reserved for future use.)
+-* QTanH Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Radix Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Rand Intrinsic:: Random number.
+-@end ifset
+-@ifset familyF90
+-* Random_Number Intrinsic:: (Reserved for future use.)
+-* Random_Seed Intrinsic:: (Reserved for future use.)
+-* Range Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* Real Intrinsic:: Convert value to type @code{REAL(KIND=1)}.
+-@end ifset
+-@ifset familyGNU
+-* RealPart Intrinsic:: Extract real part of complex.
+-@end ifset
+-@ifset familyF2U
+-* Rename Intrinsic (subroutine):: Rename file.
+-@end ifset
+-@ifset familyBADU77
+-* Rename Intrinsic (function):: Rename file.
+-@end ifset
+-@ifset familyF90
+-* Repeat Intrinsic:: (Reserved for future use.)
+-* Reshape Intrinsic:: (Reserved for future use.)
+-* RRSpacing Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2C
+-* RShift Intrinsic:: Right-shift bits.
+-@end ifset
+-@ifset familyF90
+-* Scale Intrinsic:: (Reserved for future use.)
+-* Scan Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyVXT
+-* Secnds Intrinsic:: Get local time offset since midnight.
+-@end ifset
+-@ifset familyF2U
+-* Second Intrinsic (function):: Get CPU time for process in seconds.
+-* Second Intrinsic (subroutine):: Get CPU time for process
+- in seconds.
+-@end ifset
+-@ifset familyF90
+-* Selected_Int_Kind Intrinsic:: (Reserved for future use.)
+-* Selected_Real_Kind Intrinsic:: (Reserved for future use.)
+-* Set_Exponent Intrinsic:: (Reserved for future use.)
+-* Shape Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* Short Intrinsic:: Convert to @code{INTEGER(KIND=6)} value
+- truncated to whole number.
+-@end ifset
+-@ifset familyF77
+-* Sign Intrinsic:: Apply sign to magnitude.
+-@end ifset
+-@ifset familyF2U
+-* Signal Intrinsic (subroutine):: Muck with signal handling.
+-@end ifset
+-@ifset familyBADU77
+-* Signal Intrinsic (function):: Muck with signal handling.
+-@end ifset
+-@ifset familyF77
+-* Sin Intrinsic:: Sine.
+-@end ifset
+-@ifset familyVXT
+-* SinD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* SinH Intrinsic:: Hyperbolic sine.
+-@end ifset
+-@ifset familyF2U
+-* Sleep Intrinsic:: Sleep for a specified time.
+-@end ifset
+-@ifset familyF77
+-* Sngl Intrinsic:: Convert (archaic).
+-@end ifset
+-@ifset familyVXT
+-* SnglQ Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF90
+-* Spacing Intrinsic:: (Reserved for future use.)
+-* Spread Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* SqRt Intrinsic:: Square root.
+-@end ifset
+-@ifset familyF2U
+-* SRand Intrinsic:: Random seed.
+-* Stat Intrinsic (subroutine):: Get file information.
+-* Stat Intrinsic (function):: Get file information.
+-@end ifset
+-@ifset familyF90
+-* Sum Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* SymLnk Intrinsic (subroutine):: Make symbolic link in file system.
+-@end ifset
+-@ifset familyBADU77
+-* SymLnk Intrinsic (function):: Make symbolic link in file system.
+-@end ifset
+-@ifset familyF2U
+-* System Intrinsic (subroutine):: Invoke shell (system) command.
+-@end ifset
+-@ifset familyBADU77
+-* System Intrinsic (function):: Invoke shell (system) command.
+-@end ifset
+-@ifset familyF90
+-* System_Clock Intrinsic:: Get current system clock value.
+-@end ifset
+-@ifset familyF77
+-* Tan Intrinsic:: Tangent.
+-@end ifset
+-@ifset familyVXT
+-* TanD Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF77
+-* TanH Intrinsic:: Hyperbolic tangent.
+-@end ifset
+-@ifset familyF2U
+-* Time Intrinsic (UNIX):: Get current time as time value.
+-@end ifset
+-@ifset familyVXT
+-* Time Intrinsic (VXT):: Get the time as a character value.
+-@end ifset
+-@ifset familyF2U
+-* Time8 Intrinsic:: Get current time as time value.
+-@end ifset
+-@ifset familyF90
+-* Tiny Intrinsic:: (Reserved for future use.)
+-* Transfer Intrinsic:: (Reserved for future use.)
+-* Transpose Intrinsic:: (Reserved for future use.)
+-* Trim Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* TtyNam Intrinsic (subroutine):: Get name of terminal device for unit.
+-* TtyNam Intrinsic (function):: Get name of terminal device for unit.
+-@end ifset
+-@ifset familyF90
+-* UBound Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2U
+-* UMask Intrinsic (subroutine):: Set file creation permissions mask.
+-@end ifset
+-@ifset familyBADU77
+-* UMask Intrinsic (function):: Set file creation permissions mask.
+-@end ifset
+-@ifset familyF2U
+-* Unlink Intrinsic (subroutine):: Unlink file.
+-@end ifset
+-@ifset familyBADU77
+-* Unlink Intrinsic (function):: Unlink file.
+-@end ifset
+-@ifset familyF90
+-* Unpack Intrinsic:: (Reserved for future use.)
+-* Verify Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2C
+-* XOr Intrinsic:: Boolean XOR.
+-* ZAbs Intrinsic:: Absolute value (archaic).
+-* ZCos Intrinsic:: Cosine (archaic).
+-* ZExp Intrinsic:: Exponential (archaic).
+-@end ifset
+-@ifset familyVXT
+-* ZExt Intrinsic:: (Reserved for future use.)
+-@end ifset
+-@ifset familyF2C
+-* ZLog Intrinsic:: Natural logarithm (archaic).
+-* ZSin Intrinsic:: Sine (archaic).
+-* ZSqRt Intrinsic:: Square root (archaic).
+-@end ifset
+-@end menu
+-
+-@ifset familyF2U
+-@node Abort Intrinsic
+-@subsubsection Abort Intrinsic
+-@cindex Abort intrinsic
+-@cindex intrinsics, Abort
+-
+-@noindent
+-@example
+-CALL Abort()
+-@end example
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Prints a message and potentially causes a core dump via @code{abort(3)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node Abs Intrinsic
+-@subsubsection Abs Intrinsic
+-@cindex Abs intrinsic
+-@cindex intrinsics, Abs
+-
+-@noindent
+-@example
+-Abs(@var{A})
+-@end example
+-
+-@noindent
+-Abs: @code{INTEGER} or @code{REAL} function.
+-The exact type depends on that of argument @var{A}---if @var{A} is
+-@code{COMPLEX}, this function's type is @code{REAL}
+-with the same @samp{KIND=} value as the type of @var{A}.
+-Otherwise, this function's type is the same as that of @var{A}.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the absolute value of @var{A}.
+-
+-If @var{A} is type @code{COMPLEX}, the absolute
+-value is computed as:
+-
+-@example
+-SQRT(REALPART(@var{A})**2, IMAGPART(@var{A})**2)
+-@end example
+-
+-@noindent
+-Otherwise, it is computed by negating the @var{A} if
+-it is negative, or returning @var{A}.
+-
+-@xref{Sign Intrinsic}, for how to explicitly
+-compute the positive or negative form of the absolute
+-value of an expression.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Access Intrinsic
+-@subsubsection Access Intrinsic
+-@cindex Access intrinsic
+-@cindex intrinsics, Access
+-
+-@noindent
+-@example
+-Access(@var{Name}, @var{Mode})
+-@end example
+-
+-@noindent
+-Access: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Mode}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Checks file @var{Name} for accessibility in the mode specified by @var{Mode} and
+-returns 0 if the file is accessible in that mode, otherwise an error
+-code if the file is inaccessible or @var{Mode} is invalid.
+-See @code{access(2)}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{Name}---otherwise,
+-trailing blanks in @var{Name} are ignored.
+-@var{Mode} may be a concatenation of any of the following characters:
+-
+-@table @samp
+-@item r
+-Read permission
+-
+-@item w
+-Write permission
+-
+-@item x
+-Execute permission
+-
+-@item @kbd{SPC}
+-Existence
+-@end table
+-
+-@end ifset
+-@ifset familyASC
+-@node AChar Intrinsic
+-@subsubsection AChar Intrinsic
+-@cindex AChar intrinsic
+-@cindex intrinsics, AChar
+-
+-@noindent
+-@example
+-AChar(@var{I})
+-@end example
+-
+-@noindent
+-AChar: @code{CHARACTER*1} function.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns the ASCII character corresponding to the
+-code specified by @var{I}.
+-
+-@xref{IAChar Intrinsic}, for the inverse of this function.
+-
+-@xref{Char Intrinsic}, for the function corresponding
+-to the system's native character set.
+-
+-@end ifset
+-@ifset familyF77
+-@node ACos Intrinsic
+-@subsubsection ACos Intrinsic
+-@cindex ACos intrinsic
+-@cindex intrinsics, ACos
+-
+-@noindent
+-@example
+-ACos(@var{X})
+-@end example
+-
+-@noindent
+-ACos: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the arc-cosine (inverse cosine) of @var{X}
+-in radians.
+-
+-@xref{Cos Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node ACosD Intrinsic
+-@subsubsection ACosD Intrinsic
+-@cindex ACosD intrinsic
+-@cindex intrinsics, ACosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL ACosD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node AdjustL Intrinsic
+-@subsubsection AdjustL Intrinsic
+-@cindex AdjustL intrinsic
+-@cindex intrinsics, AdjustL
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AdjustL} to use this name for an
+-external procedure.
+-
+-@node AdjustR Intrinsic
+-@subsubsection AdjustR Intrinsic
+-@cindex AdjustR intrinsic
+-@cindex intrinsics, AdjustR
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AdjustR} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node AImag Intrinsic
+-@subsubsection AImag Intrinsic
+-@cindex AImag intrinsic
+-@cindex intrinsics, AImag
+-
+-@noindent
+-@example
+-AImag(@var{Z})
+-@end example
+-
+-@noindent
+-AImag: @code{REAL} function.
+-This intrinsic is valid when argument @var{Z} is
+-@code{COMPLEX(KIND=1)}.
+-When @var{Z} is any other @code{COMPLEX} type,
+-this intrinsic is valid only when used as the argument to
+-@code{REAL()}, as explained below.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the (possibly converted) imaginary part of @var{Z}.
+-
+-Use of @code{AIMAG()} with an argument of a type
+-other than @code{COMPLEX(KIND=1)} is restricted to the following case:
+-
+-@example
+-REAL(AIMAG(Z))
+-@end example
+-
+-@noindent
+-This expression converts the imaginary part of Z to
+-@code{REAL(KIND=1)}.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information.
+-
+-@end ifset
+-@ifset familyVXT
+-@node AIMax0 Intrinsic
+-@subsubsection AIMax0 Intrinsic
+-@cindex AIMax0 intrinsic
+-@cindex intrinsics, AIMax0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AIMax0} to use this name for an
+-external procedure.
+-
+-@node AIMin0 Intrinsic
+-@subsubsection AIMin0 Intrinsic
+-@cindex AIMin0 intrinsic
+-@cindex intrinsics, AIMin0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AIMin0} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node AInt Intrinsic
+-@subsubsection AInt Intrinsic
+-@cindex AInt intrinsic
+-@cindex intrinsics, AInt
+-
+-@noindent
+-@example
+-AInt(@var{A})
+-@end example
+-
+-@noindent
+-AInt: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{A}.
+-
+-@noindent
+-@var{A}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude truncated and its sign preserved.
+-(Also called ``truncation towards zero''.)
+-
+-@xref{ANInt Intrinsic}, for how to round to nearest
+-whole number.
+-
+-@xref{Int Intrinsic}, for how to truncate and then convert
+-number to @code{INTEGER}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node AJMax0 Intrinsic
+-@subsubsection AJMax0 Intrinsic
+-@cindex AJMax0 intrinsic
+-@cindex intrinsics, AJMax0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AJMax0} to use this name for an
+-external procedure.
+-
+-@node AJMin0 Intrinsic
+-@subsubsection AJMin0 Intrinsic
+-@cindex AJMin0 intrinsic
+-@cindex intrinsics, AJMin0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL AJMin0} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Alarm Intrinsic
+-@subsubsection Alarm Intrinsic
+-@cindex Alarm intrinsic
+-@cindex intrinsics, Alarm
+-
+-@noindent
+-@example
+-CALL Alarm(@var{Seconds}, @var{Handler}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Seconds}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Handler}: Signal handler (@code{INTEGER FUNCTION} or @code{SUBROUTINE})
+-or dummy/global @code{INTEGER(KIND=1)} scalar.
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Causes external subroutine @var{Handler} to be executed after a delay of
+-@var{Seconds} seconds by using @code{alarm(1)} to set up a signal and
+-@code{signal(2)} to catch it.
+-If @var{Status} is supplied, it will be
+-returned with the number of seconds remaining until any previously
+-scheduled alarm was due to be delivered, or zero if there was no
+-previously scheduled alarm.
+-@xref{Signal Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node All Intrinsic
+-@subsubsection All Intrinsic
+-@cindex All intrinsic
+-@cindex intrinsics, All
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL All} to use this name for an
+-external procedure.
+-
+-@node Allocated Intrinsic
+-@subsubsection Allocated Intrinsic
+-@cindex Allocated intrinsic
+-@cindex intrinsics, Allocated
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Allocated} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node ALog Intrinsic
+-@subsubsection ALog Intrinsic
+-@cindex ALog intrinsic
+-@cindex intrinsics, ALog
+-
+-@noindent
+-@example
+-ALog(@var{X})
+-@end example
+-
+-@noindent
+-ALog: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG()} that is specific
+-to one type for @var{X}.
+-@xref{Log Intrinsic}.
+-
+-@node ALog10 Intrinsic
+-@subsubsection ALog10 Intrinsic
+-@cindex ALog10 intrinsic
+-@cindex intrinsics, ALog10
+-
+-@noindent
+-@example
+-ALog10(@var{X})
+-@end example
+-
+-@noindent
+-ALog10: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG10()} that is specific
+-to one type for @var{X}.
+-@xref{Log10 Intrinsic}.
+-
+-@node AMax0 Intrinsic
+-@subsubsection AMax0 Intrinsic
+-@cindex AMax0 intrinsic
+-@cindex intrinsics, AMax0
+-
+-@noindent
+-@example
+-AMax0(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-AMax0: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MAX()} that is specific
+-to one type for @var{A} and a different return type.
+-@xref{Max Intrinsic}.
+-
+-@node AMax1 Intrinsic
+-@subsubsection AMax1 Intrinsic
+-@cindex AMax1 intrinsic
+-@cindex intrinsics, AMax1
+-
+-@noindent
+-@example
+-AMax1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-AMax1: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MAX()} that is specific
+-to one type for @var{A}.
+-@xref{Max Intrinsic}.
+-
+-@node AMin0 Intrinsic
+-@subsubsection AMin0 Intrinsic
+-@cindex AMin0 intrinsic
+-@cindex intrinsics, AMin0
+-
+-@noindent
+-@example
+-AMin0(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-AMin0: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MIN()} that is specific
+-to one type for @var{A} and a different return type.
+-@xref{Min Intrinsic}.
+-
+-@node AMin1 Intrinsic
+-@subsubsection AMin1 Intrinsic
+-@cindex AMin1 intrinsic
+-@cindex intrinsics, AMin1
+-
+-@noindent
+-@example
+-AMin1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-AMin1: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MIN()} that is specific
+-to one type for @var{A}.
+-@xref{Min Intrinsic}.
+-
+-@node AMod Intrinsic
+-@subsubsection AMod Intrinsic
+-@cindex AMod intrinsic
+-@cindex intrinsics, AMod
+-
+-@noindent
+-@example
+-AMod(@var{A}, @var{P})
+-@end example
+-
+-@noindent
+-AMod: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{P}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MOD()} that is specific
+-to one type for @var{A}.
+-@xref{Mod Intrinsic}.
+-
+-@end ifset
+-@ifset familyF2C
+-@node And Intrinsic
+-@subsubsection And Intrinsic
+-@cindex And intrinsic
+-@cindex intrinsics, And
+-
+-@noindent
+-@example
+-And(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-And: @code{INTEGER} or @code{LOGICAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean AND of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@end ifset
+-@ifset familyF77
+-@node ANInt Intrinsic
+-@subsubsection ANInt Intrinsic
+-@cindex ANInt intrinsic
+-@cindex intrinsics, ANInt
+-
+-@noindent
+-@example
+-ANInt(@var{A})
+-@end example
+-
+-@noindent
+-ANInt: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{A}.
+-
+-@noindent
+-@var{A}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude eliminated by rounding to the nearest whole
+-number and with its sign preserved.
+-
+-A fractional portion exactly equal to
+-@samp{.5} is rounded to the whole number that
+-is larger in magnitude.
+-(Also called ``Fortran round''.)
+-
+-@xref{AInt Intrinsic}, for how to truncate to
+-whole number.
+-
+-@xref{NInt Intrinsic}, for how to round and then convert
+-number to @code{INTEGER}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Any Intrinsic
+-@subsubsection Any Intrinsic
+-@cindex Any intrinsic
+-@cindex intrinsics, Any
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Any} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node ASin Intrinsic
+-@subsubsection ASin Intrinsic
+-@cindex ASin intrinsic
+-@cindex intrinsics, ASin
+-
+-@noindent
+-@example
+-ASin(@var{X})
+-@end example
+-
+-@noindent
+-ASin: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the arc-sine (inverse sine) of @var{X}
+-in radians.
+-
+-@xref{Sin Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node ASinD Intrinsic
+-@subsubsection ASinD Intrinsic
+-@cindex ASinD intrinsic
+-@cindex intrinsics, ASinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL ASinD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Associated Intrinsic
+-@subsubsection Associated Intrinsic
+-@cindex Associated intrinsic
+-@cindex intrinsics, Associated
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Associated} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node ATan Intrinsic
+-@subsubsection ATan Intrinsic
+-@cindex ATan intrinsic
+-@cindex intrinsics, ATan
+-
+-@noindent
+-@example
+-ATan(@var{X})
+-@end example
+-
+-@noindent
+-ATan: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the arc-tangent (inverse tangent) of @var{X}
+-in radians.
+-
+-@xref{Tan Intrinsic}, for the inverse of this function.
+-
+-@node ATan2 Intrinsic
+-@subsubsection ATan2 Intrinsic
+-@cindex ATan2 intrinsic
+-@cindex intrinsics, ATan2
+-
+-@noindent
+-@example
+-ATan2(@var{Y}, @var{X})
+-@end example
+-
+-@noindent
+-ATan2: @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{Y}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the arc-tangent (inverse tangent) of the complex
+-number (@var{Y}, @var{X}) in radians.
+-
+-@xref{Tan Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node ATan2D Intrinsic
+-@subsubsection ATan2D Intrinsic
+-@cindex ATan2D intrinsic
+-@cindex intrinsics, ATan2D
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL ATan2D} to use this name for an
+-external procedure.
+-
+-@node ATanD Intrinsic
+-@subsubsection ATanD Intrinsic
+-@cindex ATanD intrinsic
+-@cindex intrinsics, ATanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL ATanD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node BesJ0 Intrinsic
+-@subsubsection BesJ0 Intrinsic
+-@cindex BesJ0 intrinsic
+-@cindex intrinsics, BesJ0
+-
+-@noindent
+-@example
+-BesJ0(@var{X})
+-@end example
+-
+-@noindent
+-BesJ0: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the first kind of order 0 of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@node BesJ1 Intrinsic
+-@subsubsection BesJ1 Intrinsic
+-@cindex BesJ1 intrinsic
+-@cindex intrinsics, BesJ1
+-
+-@noindent
+-@example
+-BesJ1(@var{X})
+-@end example
+-
+-@noindent
+-BesJ1: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the first kind of order 1 of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@node BesJN Intrinsic
+-@subsubsection BesJN Intrinsic
+-@cindex BesJN intrinsic
+-@cindex intrinsics, BesJN
+-
+-@noindent
+-@example
+-BesJN(@var{N}, @var{X})
+-@end example
+-
+-@noindent
+-BesJN: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{N}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the first kind of order @var{N} of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@node BesY0 Intrinsic
+-@subsubsection BesY0 Intrinsic
+-@cindex BesY0 intrinsic
+-@cindex intrinsics, BesY0
+-
+-@noindent
+-@example
+-BesY0(@var{X})
+-@end example
+-
+-@noindent
+-BesY0: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the second kind of order 0 of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@node BesY1 Intrinsic
+-@subsubsection BesY1 Intrinsic
+-@cindex BesY1 intrinsic
+-@cindex intrinsics, BesY1
+-
+-@noindent
+-@example
+-BesY1(@var{X})
+-@end example
+-
+-@noindent
+-BesY1: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the second kind of order 1 of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@node BesYN Intrinsic
+-@subsubsection BesYN Intrinsic
+-@cindex BesYN intrinsic
+-@cindex intrinsics, BesYN
+-
+-@noindent
+-@example
+-BesYN(@var{N}, @var{X})
+-@end example
+-
+-@noindent
+-BesYN: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{N}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Calculates the Bessel function of the second kind of order @var{N} of @var{X}.
+-See @code{bessel(3m)}, on whose implementation the function depends.
+-@end ifset
+-@ifset familyVXT
+-@node BITest Intrinsic
+-@subsubsection BITest Intrinsic
+-@cindex BITest intrinsic
+-@cindex intrinsics, BITest
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL BITest} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Bit_Size Intrinsic
+-@subsubsection Bit_Size Intrinsic
+-@cindex Bit_Size intrinsic
+-@cindex intrinsics, Bit_Size
+-
+-@noindent
+-@example
+-Bit_Size(@var{I})
+-@end example
+-
+-@noindent
+-Bit_Size: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar.
+-
+-@noindent
+-Intrinsic groups: @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns the number of bits (integer precision plus sign bit)
+-represented by the type for @var{I}.
+-
+-@xref{BTest Intrinsic}, for how to test the value of a
+-bit in a variable or array.
+-
+-@xref{IBSet Intrinsic}, for how to set a bit in a variable to 1.
+-
+-@xref{IBClr Intrinsic}, for how to set a bit in a variable to 0.
+-
+-
+-@end ifset
+-@ifset familyVXT
+-@node BJTest Intrinsic
+-@subsubsection BJTest Intrinsic
+-@cindex BJTest intrinsic
+-@cindex intrinsics, BJTest
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL BJTest} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyMIL
+-@node BTest Intrinsic
+-@subsubsection BTest Intrinsic
+-@cindex BTest intrinsic
+-@cindex intrinsics, BTest
+-
+-@noindent
+-@example
+-BTest(@var{I}, @var{Pos})
+-@end example
+-
+-@noindent
+-BTest: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Pos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns @code{.TRUE.} if bit @var{Pos} in @var{I} is
+-1, @code{.FALSE.} otherwise.
+-
+-(Bit 0 is the low-order (rightmost) bit, adding the value
+-@ifinfo
+-2**0,
+-@end ifinfo
+-@iftex
+-@tex
+-$2^0$,
+-@end tex
+-@end iftex
+-or 1,
+-to the number if set to 1;
+-bit 1 is the next-higher-order bit, adding
+-@ifinfo
+-2**1,
+-@end ifinfo
+-@iftex
+-@tex
+-$2^1$,
+-@end tex
+-@end iftex
+-or 2;
+-bit 2 adds
+-@ifinfo
+-2**2,
+-@end ifinfo
+-@iftex
+-@tex
+-$2^2$,
+-@end tex
+-@end iftex
+-or 4; and so on.)
+-
+-@xref{Bit_Size Intrinsic}, for how to obtain the number of bits
+-in a type.
+-The leftmost bit of @var{I} is @samp{BIT_SIZE(@var{I}-1)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node CAbs Intrinsic
+-@subsubsection CAbs Intrinsic
+-@cindex CAbs intrinsic
+-@cindex intrinsics, CAbs
+-
+-@noindent
+-@example
+-CAbs(@var{A})
+-@end example
+-
+-@noindent
+-CAbs: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ABS()} that is specific
+-to one type for @var{A}.
+-@xref{Abs Intrinsic}.
+-
+-@node CCos Intrinsic
+-@subsubsection CCos Intrinsic
+-@cindex CCos intrinsic
+-@cindex intrinsics, CCos
+-
+-@noindent
+-@example
+-CCos(@var{X})
+-@end example
+-
+-@noindent
+-CCos: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{COS()} that is specific
+-to one type for @var{X}.
+-@xref{Cos Intrinsic}.
+-
+-@end ifset
+-@ifset familyFVZ
+-@node CDAbs Intrinsic
+-@subsubsection CDAbs Intrinsic
+-@cindex CDAbs intrinsic
+-@cindex intrinsics, CDAbs
+-
+-@noindent
+-@example
+-CDAbs(@var{A})
+-@end example
+-
+-@noindent
+-CDAbs: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ABS()} that is specific
+-to one type for @var{A}.
+-@xref{Abs Intrinsic}.
+-
+-@node CDCos Intrinsic
+-@subsubsection CDCos Intrinsic
+-@cindex CDCos intrinsic
+-@cindex intrinsics, CDCos
+-
+-@noindent
+-@example
+-CDCos(@var{X})
+-@end example
+-
+-@noindent
+-CDCos: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{COS()} that is specific
+-to one type for @var{X}.
+-@xref{Cos Intrinsic}.
+-
+-@node CDExp Intrinsic
+-@subsubsection CDExp Intrinsic
+-@cindex CDExp intrinsic
+-@cindex intrinsics, CDExp
+-
+-@noindent
+-@example
+-CDExp(@var{X})
+-@end example
+-
+-@noindent
+-CDExp: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{EXP()} that is specific
+-to one type for @var{X}.
+-@xref{Exp Intrinsic}.
+-
+-@node CDLog Intrinsic
+-@subsubsection CDLog Intrinsic
+-@cindex CDLog intrinsic
+-@cindex intrinsics, CDLog
+-
+-@noindent
+-@example
+-CDLog(@var{X})
+-@end example
+-
+-@noindent
+-CDLog: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG()} that is specific
+-to one type for @var{X}.
+-@xref{Log Intrinsic}.
+-
+-@node CDSin Intrinsic
+-@subsubsection CDSin Intrinsic
+-@cindex CDSin intrinsic
+-@cindex intrinsics, CDSin
+-
+-@noindent
+-@example
+-CDSin(@var{X})
+-@end example
+-
+-@noindent
+-CDSin: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIN()} that is specific
+-to one type for @var{X}.
+-@xref{Sin Intrinsic}.
+-
+-@node CDSqRt Intrinsic
+-@subsubsection CDSqRt Intrinsic
+-@cindex CDSqRt intrinsic
+-@cindex intrinsics, CDSqRt
+-
+-@noindent
+-@example
+-CDSqRt(@var{X})
+-@end example
+-
+-@noindent
+-CDSqRt: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SQRT()} that is specific
+-to one type for @var{X}.
+-@xref{SqRt Intrinsic}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Ceiling Intrinsic
+-@subsubsection Ceiling Intrinsic
+-@cindex Ceiling intrinsic
+-@cindex intrinsics, Ceiling
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Ceiling} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node CExp Intrinsic
+-@subsubsection CExp Intrinsic
+-@cindex CExp intrinsic
+-@cindex intrinsics, CExp
+-
+-@noindent
+-@example
+-CExp(@var{X})
+-@end example
+-
+-@noindent
+-CExp: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{EXP()} that is specific
+-to one type for @var{X}.
+-@xref{Exp Intrinsic}.
+-
+-@node Char Intrinsic
+-@subsubsection Char Intrinsic
+-@cindex Char intrinsic
+-@cindex intrinsics, Char
+-
+-@noindent
+-@example
+-Char(@var{I})
+-@end example
+-
+-@noindent
+-Char: @code{CHARACTER*1} function.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the character corresponding to the
+-code specified by @var{I}, using the system's
+-native character set.
+-
+-Because the system's native character set is used,
+-the correspondence between character and their codes
+-is not necessarily the same between GNU Fortran
+-implementations.
+-
+-Note that no intrinsic exists to convert a numerical
+-value to a printable character string.
+-For example, there is no intrinsic that, given
+-an @code{INTEGER} or @code{REAL} argument with the
+-value @samp{154}, returns the @code{CHARACTER}
+-result @samp{'154'}.
+-
+-Instead, you can use internal-file I/O to do this kind
+-of conversion.
+-For example:
+-
+-@smallexample
+-INTEGER VALUE
+-CHARACTER*10 STRING
+-VALUE = 154
+-WRITE (STRING, '(I10)'), VALUE
+-PRINT *, STRING
+-END
+-@end smallexample
+-
+-The above program, when run, prints:
+-
+-@smallexample
+- 154
+-@end smallexample
+-
+-@xref{IChar Intrinsic}, for the inverse of the @code{CHAR} function.
+-
+-@xref{AChar Intrinsic}, for the function corresponding
+-to the ASCII character set.
+-
+-@end ifset
+-@ifset familyF2U
+-@node ChDir Intrinsic (subroutine)
+-@subsubsection ChDir Intrinsic (subroutine)
+-@cindex ChDir intrinsic
+-@cindex intrinsics, ChDir
+-
+-@noindent
+-@example
+-CALL ChDir(@var{Dir}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Dir}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets the current working directory to be @var{Dir}.
+-If the @var{Status} argument is supplied, it contains 0
+-on success or a non-zero error code otherwise upon return.
+-See @code{chdir(3)}.
+-
+-@emph{Caution:} Using this routine during I/O to a unit connected with a
+-non-absolute file name can cause subsequent I/O on such a unit to fail
+-because the I/O library might reopen files by name.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{ChDir Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node ChDir Intrinsic (function)
+-@subsubsection ChDir Intrinsic (function)
+-@cindex ChDir intrinsic
+-@cindex intrinsics, ChDir
+-
+-@noindent
+-@example
+-ChDir(@var{Dir})
+-@end example
+-
+-@noindent
+-ChDir: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Dir}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Sets the current working directory to be @var{Dir}.
+-Returns 0 on success or a non-zero error code.
+-See @code{chdir(3)}.
+-
+-@emph{Caution:} Using this routine during I/O to a unit connected with a
+-non-absolute file name can cause subsequent I/O on such a unit to fail
+-because the I/O library might reopen files by name.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{ChDir Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node ChMod Intrinsic (subroutine)
+-@subsubsection ChMod Intrinsic (subroutine)
+-@cindex ChMod intrinsic
+-@cindex intrinsics, ChMod
+-
+-@noindent
+-@example
+-CALL ChMod(@var{Name}, @var{Mode}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Mode}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Changes the access mode of file @var{Name} according to the
+-specification @var{Mode}, which is given in the format of
+-@code{chmod(1)}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{Name}---otherwise,
+-trailing blanks in @var{Name} are ignored.
+-Currently, @var{Name} must not contain the single quote
+-character.
+-
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-
+-Note that this currently works
+-by actually invoking @code{/bin/chmod} (or the @code{chmod} found when
+-the library was configured) and so might fail in some circumstances and
+-will, anyway, be slow.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{ChMod Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node ChMod Intrinsic (function)
+-@subsubsection ChMod Intrinsic (function)
+-@cindex ChMod intrinsic
+-@cindex intrinsics, ChMod
+-
+-@noindent
+-@example
+-ChMod(@var{Name}, @var{Mode})
+-@end example
+-
+-@noindent
+-ChMod: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Mode}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Changes the access mode of file @var{Name} according to the
+-specification @var{Mode}, which is given in the format of
+-@code{chmod(1)}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{Name}---otherwise,
+-trailing blanks in @var{Name} are ignored.
+-Currently, @var{Name} must not contain the single quote
+-character.
+-
+-Returns 0 on success or a non-zero error code otherwise.
+-
+-Note that this currently works
+-by actually invoking @code{/bin/chmod} (or the @code{chmod} found when
+-the library was configured) and so might fail in some circumstances and
+-will, anyway, be slow.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{ChMod Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node CLog Intrinsic
+-@subsubsection CLog Intrinsic
+-@cindex CLog intrinsic
+-@cindex intrinsics, CLog
+-
+-@noindent
+-@example
+-CLog(@var{X})
+-@end example
+-
+-@noindent
+-CLog: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG()} that is specific
+-to one type for @var{X}.
+-@xref{Log Intrinsic}.
+-
+-@node Cmplx Intrinsic
+-@subsubsection Cmplx Intrinsic
+-@cindex Cmplx intrinsic
+-@cindex intrinsics, Cmplx
+-
+-@noindent
+-@example
+-Cmplx(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-Cmplx: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{INTEGER} or @code{REAL}; OPTIONAL (must be omitted if @var{X} is @code{COMPLEX}); scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-If @var{X} is not type @code{COMPLEX},
+-constructs a value of type @code{COMPLEX(KIND=1)} from the
+-real and imaginary values specified by @var{X} and
+-@var{Y}, respectively.
+-If @var{Y} is omitted, @samp{0.} is assumed.
+-
+-If @var{X} is type @code{COMPLEX},
+-converts it to type @code{COMPLEX(KIND=1)}.
+-
+-@xref{Complex Intrinsic}, for information on easily constructing
+-a @code{COMPLEX} value of arbitrary precision from @code{REAL}
+-arguments.
+-
+-@end ifset
+-@ifset familyGNU
+-@node Complex Intrinsic
+-@subsubsection Complex Intrinsic
+-@cindex Complex intrinsic
+-@cindex intrinsics, Complex
+-
+-@noindent
+-@example
+-Complex(@var{Real}, @var{Imag})
+-@end example
+-
+-@noindent
+-Complex: @code{COMPLEX} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{Real}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Imag}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{gnu}.
+-
+-@noindent
+-Description:
+-
+-Returns a @code{COMPLEX} value that has @samp{Real} and @samp{Imag} as its
+-real and imaginary parts, respectively.
+-
+-If @var{Real} and @var{Imag} are the same type, and that type is not
+-@code{INTEGER}, no data conversion is performed, and the type of
+-the resulting value has the same kind value as the types
+-of @var{Real} and @var{Imag}.
+-
+-If @var{Real} and @var{Imag} are not the same type, the usual type-promotion
+-rules are applied to both, converting either or both to the
+-appropriate @code{REAL} type.
+-The type of the resulting value has the same kind value as the
+-type to which both @var{Real} and @var{Imag} were converted, in this case.
+-
+-If @var{Real} and @var{Imag} are both @code{INTEGER}, they are both converted
+-to @code{REAL(KIND=1)}, and the result of the @code{COMPLEX()}
+-invocation is type @code{COMPLEX(KIND=1)}.
+-
+-@emph{Note:} The way to do this in standard Fortran 90
+-is too hairy to describe here, but it is important to
+-note that @samp{CMPLX(D1,D2)} returns a @code{COMPLEX(KIND=1)}
+-result even if @samp{D1} and @samp{D2} are type @code{REAL(KIND=2)}.
+-Hence the availability of @code{COMPLEX()} in GNU Fortran.
+-
+-@end ifset
+-@ifset familyF77
+-@node Conjg Intrinsic
+-@subsubsection Conjg Intrinsic
+-@cindex Conjg intrinsic
+-@cindex intrinsics, Conjg
+-
+-@noindent
+-@example
+-Conjg(@var{Z})
+-@end example
+-
+-@noindent
+-Conjg: @code{COMPLEX} function, the @samp{KIND=} value of the type being that of argument @var{Z}.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the complex conjugate:
+-
+-@example
+-COMPLEX(REALPART(@var{Z}), -IMAGPART(@var{Z}))
+-@end example
+-
+-@node Cos Intrinsic
+-@subsubsection Cos Intrinsic
+-@cindex Cos intrinsic
+-@cindex intrinsics, Cos
+-
+-@noindent
+-@example
+-Cos(@var{X})
+-@end example
+-
+-@noindent
+-Cos: @code{REAL} or @code{COMPLEX} function, the exact type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL} or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the cosine of @var{X}, an angle measured
+-in radians.
+-
+-@xref{ACos Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node CosD Intrinsic
+-@subsubsection CosD Intrinsic
+-@cindex CosD intrinsic
+-@cindex intrinsics, CosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL CosD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node CosH Intrinsic
+-@subsubsection CosH Intrinsic
+-@cindex CosH intrinsic
+-@cindex intrinsics, CosH
+-
+-@noindent
+-@example
+-CosH(@var{X})
+-@end example
+-
+-@noindent
+-CosH: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the hyperbolic cosine of @var{X}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Count Intrinsic
+-@subsubsection Count Intrinsic
+-@cindex Count intrinsic
+-@cindex intrinsics, Count
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Count} to use this name for an
+-external procedure.
+-
+-@node CPU_Time Intrinsic
+-@subsubsection CPU_Time Intrinsic
+-@cindex CPU_Time intrinsic
+-@cindex intrinsics, CPU_Time
+-
+-@noindent
+-@example
+-CALL CPU_Time(@var{Seconds})
+-@end example
+-
+-@noindent
+-@var{Seconds}: @code{REAL}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns in @var{Seconds} the current value of the system time.
+-This implementation of the Fortran 95 intrinsic is just an alias for
+-@code{second} @xref{Second Intrinsic (subroutine)}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-@node CShift Intrinsic
+-@subsubsection CShift Intrinsic
+-@cindex CShift intrinsic
+-@cindex intrinsics, CShift
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL CShift} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node CSin Intrinsic
+-@subsubsection CSin Intrinsic
+-@cindex CSin intrinsic
+-@cindex intrinsics, CSin
+-
+-@noindent
+-@example
+-CSin(@var{X})
+-@end example
+-
+-@noindent
+-CSin: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIN()} that is specific
+-to one type for @var{X}.
+-@xref{Sin Intrinsic}.
+-
+-@node CSqRt Intrinsic
+-@subsubsection CSqRt Intrinsic
+-@cindex CSqRt intrinsic
+-@cindex intrinsics, CSqRt
+-
+-@noindent
+-@example
+-CSqRt(@var{X})
+-@end example
+-
+-@noindent
+-CSqRt: @code{COMPLEX(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SQRT()} that is specific
+-to one type for @var{X}.
+-@xref{SqRt Intrinsic}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node CTime Intrinsic (subroutine)
+-@subsubsection CTime Intrinsic (subroutine)
+-@cindex CTime intrinsic
+-@cindex intrinsics, CTime
+-
+-@noindent
+-@example
+-CALL CTime(@var{STime}, @var{Result})
+-@end example
+-
+-@noindent
+-@var{STime}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Result}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Converts @var{STime}, a system time value, such as returned by
+-@code{TIME8()}, to a string of the form @samp{Sat Aug 19 18:13:14 1995},
+-and returns that string in @var{Result}.
+-
+-@xref{Time8 Intrinsic}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{CTime Intrinsic (function)}.
+-
+-@node CTime Intrinsic (function)
+-@subsubsection CTime Intrinsic (function)
+-@cindex CTime intrinsic
+-@cindex intrinsics, CTime
+-
+-@noindent
+-@example
+-CTime(@var{STime})
+-@end example
+-
+-@noindent
+-CTime: @code{CHARACTER*(*)} function.
+-
+-@noindent
+-@var{STime}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Converts @var{STime}, a system time value, such as returned by
+-@code{TIME8()}, to a string of the form @samp{Sat Aug 19 18:13:14 1995},
+-and returns that string as the function value.
+-
+-@xref{Time8 Intrinsic}.
+-
+-For information on other intrinsics with the same name:
+-@xref{CTime Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node DAbs Intrinsic
+-@subsubsection DAbs Intrinsic
+-@cindex DAbs intrinsic
+-@cindex intrinsics, DAbs
+-
+-@noindent
+-@example
+-DAbs(@var{A})
+-@end example
+-
+-@noindent
+-DAbs: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ABS()} that is specific
+-to one type for @var{A}.
+-@xref{Abs Intrinsic}.
+-
+-@node DACos Intrinsic
+-@subsubsection DACos Intrinsic
+-@cindex DACos intrinsic
+-@cindex intrinsics, DACos
+-
+-@noindent
+-@example
+-DACos(@var{X})
+-@end example
+-
+-@noindent
+-DACos: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ACOS()} that is specific
+-to one type for @var{X}.
+-@xref{ACos Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DACosD Intrinsic
+-@subsubsection DACosD Intrinsic
+-@cindex DACosD intrinsic
+-@cindex intrinsics, DACosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DACosD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DASin Intrinsic
+-@subsubsection DASin Intrinsic
+-@cindex DASin intrinsic
+-@cindex intrinsics, DASin
+-
+-@noindent
+-@example
+-DASin(@var{X})
+-@end example
+-
+-@noindent
+-DASin: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ASIN()} that is specific
+-to one type for @var{X}.
+-@xref{ASin Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DASinD Intrinsic
+-@subsubsection DASinD Intrinsic
+-@cindex DASinD intrinsic
+-@cindex intrinsics, DASinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DASinD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DATan Intrinsic
+-@subsubsection DATan Intrinsic
+-@cindex DATan intrinsic
+-@cindex intrinsics, DATan
+-
+-@noindent
+-@example
+-DATan(@var{X})
+-@end example
+-
+-@noindent
+-DATan: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ATAN()} that is specific
+-to one type for @var{X}.
+-@xref{ATan Intrinsic}.
+-
+-@node DATan2 Intrinsic
+-@subsubsection DATan2 Intrinsic
+-@cindex DATan2 intrinsic
+-@cindex intrinsics, DATan2
+-
+-@noindent
+-@example
+-DATan2(@var{Y}, @var{X})
+-@end example
+-
+-@noindent
+-DATan2: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{Y}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ATAN2()} that is specific
+-to one type for @var{Y} and @var{X}.
+-@xref{ATan2 Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DATan2D Intrinsic
+-@subsubsection DATan2D Intrinsic
+-@cindex DATan2D intrinsic
+-@cindex intrinsics, DATan2D
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DATan2D} to use this name for an
+-external procedure.
+-
+-@node DATanD Intrinsic
+-@subsubsection DATanD Intrinsic
+-@cindex DATanD intrinsic
+-@cindex intrinsics, DATanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DATanD} to use this name for an
+-external procedure.
+-
+-@node Date Intrinsic
+-@subsubsection Date Intrinsic
+-@cindex Date intrinsic
+-@cindex intrinsics, Date
+-
+-@noindent
+-@example
+-CALL Date(@var{Date})
+-@end example
+-
+-@noindent
+-@var{Date}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{Date} in the form @samp{@var{dd}-@var{mmm}-@var{yy}},
+-representing the numeric day of the month @var{dd}, a three-character
+-abbreviation of the month name @var{mmm} and the last two digits of
+-the year @var{yy}, e.g.@: @samp{25-Nov-96}.
+-
+-@cindex Y2K compliance
+-@cindex Year 2000 compliance
+-This intrinsic is not recommended, due to the year 2000 approaching.
+-Therefore, programs making use of this intrinsic
+-might not be Year 2000 (Y2K) compliant.
+-@xref{CTime Intrinsic (subroutine)}, for information on obtaining more digits
+-for the current (or any) date.
+-
+-@end ifset
+-@ifset familyF90
+-@node Date_and_Time Intrinsic
+-@subsubsection Date_and_Time Intrinsic
+-@cindex Date_and_Time intrinsic
+-@cindex intrinsics, Date_and_Time
+-
+-@noindent
+-@example
+-CALL Date_and_Time(@var{Date}, @var{Time}, @var{Zone}, @var{Values})
+-@end example
+-
+-@noindent
+-@var{Date}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Time}: @code{CHARACTER}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Zone}: @code{CHARACTER}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Values}: @code{INTEGER(KIND=1)}; OPTIONAL; DIMENSION(8); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns:
+-@table @var
+-@item Date
+-The date in the form @var{ccyymmdd}: century, year, month and day;
+-@item Time
+-The time in the form @samp{@var{hhmmss.ss}}: hours, minutes, seconds
+-and milliseconds;
+-@item Zone
+-The difference between local time and UTC (GMT) in the form @var{Shhmm}:
+-sign, hours and minutes, e.g.@: @samp{-0500} (winter in New York);
+-@item Values
+-The year, month of the year, day of the month, time difference in
+-minutes from UTC, hour of the day, minutes of the hour, seconds
+-of the minute, and milliseconds
+-of the second in successive values of the array.
+-@end table
+-
+-@cindex Y10K compliance
+-@cindex Year 10000 compliance
+-@cindex wraparound, Y10K
+-@cindex limits, Y10K
+-Programs making use of this intrinsic
+-might not be Year 10000 (Y10K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 10000.
+-
+-On systems where a millisecond timer isn't available, the millisecond
+-value is returned as zero.
+-
+-@end ifset
+-@ifset familyF2U
+-@node DbesJ0 Intrinsic
+-@subsubsection DbesJ0 Intrinsic
+-@cindex DbesJ0 intrinsic
+-@cindex intrinsics, DbesJ0
+-
+-@noindent
+-@example
+-DbesJ0(@var{X})
+-@end example
+-
+-@noindent
+-DbesJ0: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESJ0()} that is specific
+-to one type for @var{X}.
+-@xref{BesJ0 Intrinsic}.
+-
+-@node DbesJ1 Intrinsic
+-@subsubsection DbesJ1 Intrinsic
+-@cindex DbesJ1 intrinsic
+-@cindex intrinsics, DbesJ1
+-
+-@noindent
+-@example
+-DbesJ1(@var{X})
+-@end example
+-
+-@noindent
+-DbesJ1: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESJ1()} that is specific
+-to one type for @var{X}.
+-@xref{BesJ1 Intrinsic}.
+-
+-@node DbesJN Intrinsic
+-@subsubsection DbesJN Intrinsic
+-@cindex DbesJN intrinsic
+-@cindex intrinsics, DbesJN
+-
+-@noindent
+-@example
+-DbesJN(@var{N}, @var{X})
+-@end example
+-
+-@noindent
+-DbesJN: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{N}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESJN()} that is specific
+-to one type for @var{X}.
+-@xref{BesJN Intrinsic}.
+-
+-@node DbesY0 Intrinsic
+-@subsubsection DbesY0 Intrinsic
+-@cindex DbesY0 intrinsic
+-@cindex intrinsics, DbesY0
+-
+-@noindent
+-@example
+-DbesY0(@var{X})
+-@end example
+-
+-@noindent
+-DbesY0: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESY0()} that is specific
+-to one type for @var{X}.
+-@xref{BesY0 Intrinsic}.
+-
+-@node DbesY1 Intrinsic
+-@subsubsection DbesY1 Intrinsic
+-@cindex DbesY1 intrinsic
+-@cindex intrinsics, DbesY1
+-
+-@noindent
+-@example
+-DbesY1(@var{X})
+-@end example
+-
+-@noindent
+-DbesY1: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESY1()} that is specific
+-to one type for @var{X}.
+-@xref{BesY1 Intrinsic}.
+-
+-@node DbesYN Intrinsic
+-@subsubsection DbesYN Intrinsic
+-@cindex DbesYN intrinsic
+-@cindex intrinsics, DbesYN
+-
+-@noindent
+-@example
+-DbesYN(@var{N}, @var{X})
+-@end example
+-
+-@noindent
+-DbesYN: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{N}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{BESYN()} that is specific
+-to one type for @var{X}.
+-@xref{BesYN Intrinsic}.
+-
+-@end ifset
+-@ifset familyF77
+-@node Dble Intrinsic
+-@subsubsection Dble Intrinsic
+-@cindex Dble intrinsic
+-@cindex intrinsics, Dble
+-
+-@noindent
+-@example
+-Dble(@var{A})
+-@end example
+-
+-@noindent
+-Dble: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} converted to double precision
+-(@code{REAL(KIND=2)}).
+-If @var{A} is @code{COMPLEX}, the real part of
+-@var{A} is used for the conversion
+-and the imaginary part disregarded.
+-
+-@xref{Sngl Intrinsic}, for the function that converts
+-to single precision.
+-
+-@xref{Int Intrinsic}, for the function that converts
+-to @code{INTEGER}.
+-
+-@xref{Complex Intrinsic}, for the function that converts
+-to @code{COMPLEX}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DbleQ Intrinsic
+-@subsubsection DbleQ Intrinsic
+-@cindex DbleQ intrinsic
+-@cindex intrinsics, DbleQ
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DbleQ} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyFVZ
+-@node DCmplx Intrinsic
+-@subsubsection DCmplx Intrinsic
+-@cindex DCmplx intrinsic
+-@cindex intrinsics, DCmplx
+-
+-@noindent
+-@example
+-DCmplx(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-DCmplx: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{INTEGER} or @code{REAL}; OPTIONAL (must be omitted if @var{X} is @code{COMPLEX}); scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-If @var{X} is not type @code{COMPLEX},
+-constructs a value of type @code{COMPLEX(KIND=2)} from the
+-real and imaginary values specified by @var{X} and
+-@var{Y}, respectively.
+-If @var{Y} is omitted, @samp{0D0} is assumed.
+-
+-If @var{X} is type @code{COMPLEX},
+-converts it to type @code{COMPLEX(KIND=2)}.
+-
+-Although this intrinsic is not standard Fortran,
+-it is a popular extension offered by many compilers
+-that support @code{DOUBLE COMPLEX}, since it offers
+-the easiest way to convert to @code{DOUBLE COMPLEX}
+-without using Fortran 90 features (such as the @samp{KIND=}
+-argument to the @code{CMPLX()} intrinsic).
+-
+-(@samp{CMPLX(0D0, 0D0)} returns a single-precision
+-@code{COMPLEX} result, as required by standard FORTRAN 77.
+-That's why so many compilers provide @code{DCMPLX()}, since
+-@samp{DCMPLX(0D0, 0D0)} returns a @code{DOUBLE COMPLEX}
+-result.
+-Still, @code{DCMPLX()} converts even @code{REAL*16} arguments
+-to their @code{REAL*8} equivalents in most dialects of
+-Fortran, so neither it nor @code{CMPLX()} allow easy
+-construction of arbitrary-precision values without
+-potentially forcing a conversion involving extending or
+-reducing precision.
+-GNU Fortran provides such an intrinsic, called @code{COMPLEX()}.)
+-
+-@xref{Complex Intrinsic}, for information on easily constructing
+-a @code{COMPLEX} value of arbitrary precision from @code{REAL}
+-arguments.
+-
+-@node DConjg Intrinsic
+-@subsubsection DConjg Intrinsic
+-@cindex DConjg intrinsic
+-@cindex intrinsics, DConjg
+-
+-@noindent
+-@example
+-DConjg(@var{Z})
+-@end example
+-
+-@noindent
+-DConjg: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{CONJG()} that is specific
+-to one type for @var{Z}.
+-@xref{Conjg Intrinsic}.
+-
+-@end ifset
+-@ifset familyF77
+-@node DCos Intrinsic
+-@subsubsection DCos Intrinsic
+-@cindex DCos intrinsic
+-@cindex intrinsics, DCos
+-
+-@noindent
+-@example
+-DCos(@var{X})
+-@end example
+-
+-@noindent
+-DCos: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{COS()} that is specific
+-to one type for @var{X}.
+-@xref{Cos Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DCosD Intrinsic
+-@subsubsection DCosD Intrinsic
+-@cindex DCosD intrinsic
+-@cindex intrinsics, DCosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DCosD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DCosH Intrinsic
+-@subsubsection DCosH Intrinsic
+-@cindex DCosH intrinsic
+-@cindex intrinsics, DCosH
+-
+-@noindent
+-@example
+-DCosH(@var{X})
+-@end example
+-
+-@noindent
+-DCosH: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{COSH()} that is specific
+-to one type for @var{X}.
+-@xref{CosH Intrinsic}.
+-
+-@node DDiM Intrinsic
+-@subsubsection DDiM Intrinsic
+-@cindex DDiM intrinsic
+-@cindex intrinsics, DDiM
+-
+-@noindent
+-@example
+-DDiM(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-DDiM: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{DIM()} that is specific
+-to one type for @var{X} and @var{Y}.
+-@xref{DiM Intrinsic}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node DErF Intrinsic
+-@subsubsection DErF Intrinsic
+-@cindex DErF intrinsic
+-@cindex intrinsics, DErF
+-
+-@noindent
+-@example
+-DErF(@var{X})
+-@end example
+-
+-@noindent
+-DErF: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ERF()} that is specific
+-to one type for @var{X}.
+-@xref{ErF Intrinsic}.
+-
+-@node DErFC Intrinsic
+-@subsubsection DErFC Intrinsic
+-@cindex DErFC intrinsic
+-@cindex intrinsics, DErFC
+-
+-@noindent
+-@example
+-DErFC(@var{X})
+-@end example
+-
+-@noindent
+-DErFC: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ERFC()} that is specific
+-to one type for @var{X}.
+-@xref{ErFC Intrinsic}.
+-
+-@end ifset
+-@ifset familyF77
+-@node DExp Intrinsic
+-@subsubsection DExp Intrinsic
+-@cindex DExp intrinsic
+-@cindex intrinsics, DExp
+-
+-@noindent
+-@example
+-DExp(@var{X})
+-@end example
+-
+-@noindent
+-DExp: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{EXP()} that is specific
+-to one type for @var{X}.
+-@xref{Exp Intrinsic}.
+-
+-@end ifset
+-@ifset familyFVZ
+-@node DFloat Intrinsic
+-@subsubsection DFloat Intrinsic
+-@cindex DFloat intrinsic
+-@cindex intrinsics, DFloat
+-
+-@noindent
+-@example
+-DFloat(@var{A})
+-@end example
+-
+-@noindent
+-DFloat: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{REAL()} that is specific
+-to one type for @var{A}.
+-@xref{Real Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DFlotI Intrinsic
+-@subsubsection DFlotI Intrinsic
+-@cindex DFlotI intrinsic
+-@cindex intrinsics, DFlotI
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DFlotI} to use this name for an
+-external procedure.
+-
+-@node DFlotJ Intrinsic
+-@subsubsection DFlotJ Intrinsic
+-@cindex DFlotJ intrinsic
+-@cindex intrinsics, DFlotJ
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DFlotJ} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Digits Intrinsic
+-@subsubsection Digits Intrinsic
+-@cindex Digits intrinsic
+-@cindex intrinsics, Digits
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Digits} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DiM Intrinsic
+-@subsubsection DiM Intrinsic
+-@cindex DiM intrinsic
+-@cindex intrinsics, DiM
+-
+-@noindent
+-@example
+-DiM(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-DiM: @code{INTEGER} or @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{X}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{@var{X}-@var{Y}} if @var{X} is greater than
+-@var{Y}; otherwise returns zero.
+-
+-@end ifset
+-@ifset familyFVZ
+-@node DImag Intrinsic
+-@subsubsection DImag Intrinsic
+-@cindex DImag intrinsic
+-@cindex intrinsics, DImag
+-
+-@noindent
+-@example
+-DImag(@var{Z})
+-@end example
+-
+-@noindent
+-DImag: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{AIMAG()} that is specific
+-to one type for @var{Z}.
+-@xref{AImag Intrinsic}.
+-
+-@end ifset
+-@ifset familyF77
+-@node DInt Intrinsic
+-@subsubsection DInt Intrinsic
+-@cindex DInt intrinsic
+-@cindex intrinsics, DInt
+-
+-@noindent
+-@example
+-DInt(@var{A})
+-@end example
+-
+-@noindent
+-DInt: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{AINT()} that is specific
+-to one type for @var{A}.
+-@xref{AInt Intrinsic}.
+-
+-@node DLog Intrinsic
+-@subsubsection DLog Intrinsic
+-@cindex DLog intrinsic
+-@cindex intrinsics, DLog
+-
+-@noindent
+-@example
+-DLog(@var{X})
+-@end example
+-
+-@noindent
+-DLog: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG()} that is specific
+-to one type for @var{X}.
+-@xref{Log Intrinsic}.
+-
+-@node DLog10 Intrinsic
+-@subsubsection DLog10 Intrinsic
+-@cindex DLog10 intrinsic
+-@cindex intrinsics, DLog10
+-
+-@noindent
+-@example
+-DLog10(@var{X})
+-@end example
+-
+-@noindent
+-DLog10: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG10()} that is specific
+-to one type for @var{X}.
+-@xref{Log10 Intrinsic}.
+-
+-@node DMax1 Intrinsic
+-@subsubsection DMax1 Intrinsic
+-@cindex DMax1 intrinsic
+-@cindex intrinsics, DMax1
+-
+-@noindent
+-@example
+-DMax1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-DMax1: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MAX()} that is specific
+-to one type for @var{A}.
+-@xref{Max Intrinsic}.
+-
+-@node DMin1 Intrinsic
+-@subsubsection DMin1 Intrinsic
+-@cindex DMin1 intrinsic
+-@cindex intrinsics, DMin1
+-
+-@noindent
+-@example
+-DMin1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-DMin1: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MIN()} that is specific
+-to one type for @var{A}.
+-@xref{Min Intrinsic}.
+-
+-@node DMod Intrinsic
+-@subsubsection DMod Intrinsic
+-@cindex DMod intrinsic
+-@cindex intrinsics, DMod
+-
+-@noindent
+-@example
+-DMod(@var{A}, @var{P})
+-@end example
+-
+-@noindent
+-DMod: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{P}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MOD()} that is specific
+-to one type for @var{A}.
+-@xref{Mod Intrinsic}.
+-
+-@node DNInt Intrinsic
+-@subsubsection DNInt Intrinsic
+-@cindex DNInt intrinsic
+-@cindex intrinsics, DNInt
+-
+-@noindent
+-@example
+-DNInt(@var{A})
+-@end example
+-
+-@noindent
+-DNInt: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ANINT()} that is specific
+-to one type for @var{A}.
+-@xref{ANInt Intrinsic}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Dot_Product Intrinsic
+-@subsubsection Dot_Product Intrinsic
+-@cindex Dot_Product intrinsic
+-@cindex intrinsics, Dot_Product
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Dot_Product} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DProd Intrinsic
+-@subsubsection DProd Intrinsic
+-@cindex DProd intrinsic
+-@cindex intrinsics, DProd
+-
+-@noindent
+-@example
+-DProd(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-DProd: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{DBLE(@var{X})*DBLE(@var{Y})}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DReal Intrinsic
+-@subsubsection DReal Intrinsic
+-@cindex DReal intrinsic
+-@cindex intrinsics, DReal
+-
+-@noindent
+-@example
+-DReal(@var{A})
+-@end example
+-
+-@noindent
+-DReal: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Converts @var{A} to @code{REAL(KIND=2)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part
+-is converted (if necessary) to @code{REAL(KIND=2)},
+-and its imaginary part is disregarded.
+-
+-Although this intrinsic is not standard Fortran,
+-it is a popular extension offered by many compilers
+-that support @code{DOUBLE COMPLEX}, since it offers
+-the easiest way to extract the real part of a @code{DOUBLE COMPLEX}
+-value without using the Fortran 90 @code{REAL()} intrinsic
+-in a way that produces a return value inconsistent with
+-the way many FORTRAN 77 compilers handle @code{REAL()} of
+-a @code{DOUBLE COMPLEX} value.
+-
+-@xref{RealPart Intrinsic}, for information on a GNU Fortran
+-intrinsic that avoids these areas of confusion.
+-
+-@xref{Dble Intrinsic}, for information on the standard FORTRAN 77
+-replacement for @code{DREAL()}.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information on
+-this issue.
+-
+-@end ifset
+-@ifset familyF77
+-@node DSign Intrinsic
+-@subsubsection DSign Intrinsic
+-@cindex DSign intrinsic
+-@cindex intrinsics, DSign
+-
+-@noindent
+-@example
+-DSign(@var{A}, @var{B})
+-@end example
+-
+-@noindent
+-DSign: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{B}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIGN()} that is specific
+-to one type for @var{A} and @var{B}.
+-@xref{Sign Intrinsic}.
+-
+-@node DSin Intrinsic
+-@subsubsection DSin Intrinsic
+-@cindex DSin intrinsic
+-@cindex intrinsics, DSin
+-
+-@noindent
+-@example
+-DSin(@var{X})
+-@end example
+-
+-@noindent
+-DSin: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIN()} that is specific
+-to one type for @var{X}.
+-@xref{Sin Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DSinD Intrinsic
+-@subsubsection DSinD Intrinsic
+-@cindex DSinD intrinsic
+-@cindex intrinsics, DSinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DSinD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DSinH Intrinsic
+-@subsubsection DSinH Intrinsic
+-@cindex DSinH intrinsic
+-@cindex intrinsics, DSinH
+-
+-@noindent
+-@example
+-DSinH(@var{X})
+-@end example
+-
+-@noindent
+-DSinH: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SINH()} that is specific
+-to one type for @var{X}.
+-@xref{SinH Intrinsic}.
+-
+-@node DSqRt Intrinsic
+-@subsubsection DSqRt Intrinsic
+-@cindex DSqRt intrinsic
+-@cindex intrinsics, DSqRt
+-
+-@noindent
+-@example
+-DSqRt(@var{X})
+-@end example
+-
+-@noindent
+-DSqRt: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SQRT()} that is specific
+-to one type for @var{X}.
+-@xref{SqRt Intrinsic}.
+-
+-@node DTan Intrinsic
+-@subsubsection DTan Intrinsic
+-@cindex DTan intrinsic
+-@cindex intrinsics, DTan
+-
+-@noindent
+-@example
+-DTan(@var{X})
+-@end example
+-
+-@noindent
+-DTan: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{TAN()} that is specific
+-to one type for @var{X}.
+-@xref{Tan Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node DTanD Intrinsic
+-@subsubsection DTanD Intrinsic
+-@cindex DTanD intrinsic
+-@cindex intrinsics, DTanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL DTanD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node DTanH Intrinsic
+-@subsubsection DTanH Intrinsic
+-@cindex DTanH intrinsic
+-@cindex intrinsics, DTanH
+-
+-@noindent
+-@example
+-DTanH(@var{X})
+-@end example
+-
+-@noindent
+-DTanH: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{TANH()} that is specific
+-to one type for @var{X}.
+-@xref{TanH Intrinsic}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node DTime Intrinsic (subroutine)
+-@subsubsection DTime Intrinsic (subroutine)
+-@cindex DTime intrinsic
+-@cindex intrinsics, DTime
+-
+-@noindent
+-@example
+-CALL DTime(@var{TArray}, @var{Result})
+-@end example
+-
+-@noindent
+-@var{TArray}: @code{REAL(KIND=1)}; DIMENSION(2); INTENT(OUT).
+-
+-@noindent
+-@var{Result}: @code{REAL(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Initially, return the number of seconds of runtime
+-since the start of the process's execution
+-in @var{Result},
+-and the user and system components of this in @samp{@var{TArray}(1)}
+-and @samp{@var{TArray}(2)} respectively.
+-The value of @var{Result} is equal to @samp{@var{TArray}(1) + @var{TArray}(2)}.
+-
+-Subsequent invocations of @samp{DTIME()} set values based on accumulations
+-since the previous invocation.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{DTime Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node DTime Intrinsic (function)
+-@subsubsection DTime Intrinsic (function)
+-@cindex DTime intrinsic
+-@cindex intrinsics, DTime
+-
+-@noindent
+-@example
+-DTime(@var{TArray})
+-@end example
+-
+-@noindent
+-DTime: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{TArray}: @code{REAL(KIND=1)}; DIMENSION(2); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Initially, return the number of seconds of runtime
+-since the start of the process's execution
+-as the function value,
+-and the user and system components of this in @samp{@var{TArray}(1)}
+-and @samp{@var{TArray}(2)} respectively.
+-The functions' value is equal to @samp{@var{TArray}(1) + @var{TArray}(2)}.
+-
+-Subsequent invocations of @samp{DTIME()} return values accumulated since the
+-previous invocation.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{DTime Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node EOShift Intrinsic
+-@subsubsection EOShift Intrinsic
+-@cindex EOShift intrinsic
+-@cindex intrinsics, EOShift
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL EOShift} to use this name for an
+-external procedure.
+-
+-@node Epsilon Intrinsic
+-@subsubsection Epsilon Intrinsic
+-@cindex Epsilon intrinsic
+-@cindex intrinsics, Epsilon
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Epsilon} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node ErF Intrinsic
+-@subsubsection ErF Intrinsic
+-@cindex ErF intrinsic
+-@cindex intrinsics, ErF
+-
+-@noindent
+-@example
+-ErF(@var{X})
+-@end example
+-
+-@noindent
+-ErF: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the error function of @var{X}.
+-See @code{erf(3m)}, which provides the implementation.
+-
+-@node ErFC Intrinsic
+-@subsubsection ErFC Intrinsic
+-@cindex ErFC intrinsic
+-@cindex intrinsics, ErFC
+-
+-@noindent
+-@example
+-ErFC(@var{X})
+-@end example
+-
+-@noindent
+-ErFC: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the complementary error function of @var{X}:
+-@samp{ERFC(R) = 1 - ERF(R)} (except that the result might be more
+-accurate than explicitly evaluating that formulae would give).
+-See @code{erfc(3m)}, which provides the implementation.
+-
+-@node ETime Intrinsic (subroutine)
+-@subsubsection ETime Intrinsic (subroutine)
+-@cindex ETime intrinsic
+-@cindex intrinsics, ETime
+-
+-@noindent
+-@example
+-CALL ETime(@var{TArray}, @var{Result})
+-@end example
+-
+-@noindent
+-@var{TArray}: @code{REAL(KIND=1)}; DIMENSION(2); INTENT(OUT).
+-
+-@noindent
+-@var{Result}: @code{REAL(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Return the number of seconds of runtime
+-since the start of the process's execution
+-in @var{Result},
+-and the user and system components of this in @samp{@var{TArray}(1)}
+-and @samp{@var{TArray}(2)} respectively.
+-The value of @var{Result} is equal to @samp{@var{TArray}(1) + @var{TArray}(2)}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{ETime Intrinsic (function)}.
+-
+-@node ETime Intrinsic (function)
+-@subsubsection ETime Intrinsic (function)
+-@cindex ETime intrinsic
+-@cindex intrinsics, ETime
+-
+-@noindent
+-@example
+-ETime(@var{TArray})
+-@end example
+-
+-@noindent
+-ETime: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{TArray}: @code{REAL(KIND=1)}; DIMENSION(2); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Return the number of seconds of runtime
+-since the start of the process's execution
+-as the function value,
+-and the user and system components of this in @samp{@var{TArray}(1)}
+-and @samp{@var{TArray}(2)} respectively.
+-The functions' value is equal to @samp{@var{TArray}(1) + @var{TArray}(2)}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-For information on other intrinsics with the same name:
+-@xref{ETime Intrinsic (subroutine)}.
+-
+-@node Exit Intrinsic
+-@subsubsection Exit Intrinsic
+-@cindex Exit intrinsic
+-@cindex intrinsics, Exit
+-
+-@noindent
+-@example
+-CALL Exit(@var{Status})
+-@end example
+-
+-@noindent
+-@var{Status}: @code{INTEGER}; OPTIONAL; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Exit the program with status @var{Status} after closing open Fortran
+-I/O units and otherwise behaving as @code{exit(2)}.
+-If @var{Status} is omitted the canonical `success' value
+-will be returned to the system.
+-
+-@end ifset
+-@ifset familyF77
+-@node Exp Intrinsic
+-@subsubsection Exp Intrinsic
+-@cindex Exp intrinsic
+-@cindex intrinsics, Exp
+-
+-@noindent
+-@example
+-Exp(@var{X})
+-@end example
+-
+-@noindent
+-Exp: @code{REAL} or @code{COMPLEX} function, the exact type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL} or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{@var{e}**@var{X}}, where
+-@var{e} is approximately 2.7182818.
+-
+-@xref{Log Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyF90
+-@node Exponent Intrinsic
+-@subsubsection Exponent Intrinsic
+-@cindex Exponent intrinsic
+-@cindex intrinsics, Exponent
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Exponent} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node FDate Intrinsic (subroutine)
+-@subsubsection FDate Intrinsic (subroutine)
+-@cindex FDate intrinsic
+-@cindex intrinsics, FDate
+-
+-@noindent
+-@example
+-CALL FDate(@var{Date})
+-@end example
+-
+-@noindent
+-@var{Date}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current date (using the same format as @code{CTIME()})
+-in @var{Date}.
+-
+-Equivalent to:
+-
+-@example
+-CALL CTIME(@var{Date}, TIME8())
+-@end example
+-
+-@cindex Y10K compliance
+-@cindex Year 10000 compliance
+-@cindex wraparound, Y10K
+-@cindex limits, Y10K
+-Programs making use of this intrinsic
+-might not be Year 10000 (Y10K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 10000.
+-
+-@xref{CTime Intrinsic (subroutine)}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{FDate Intrinsic (function)}.
+-
+-@node FDate Intrinsic (function)
+-@subsubsection FDate Intrinsic (function)
+-@cindex FDate intrinsic
+-@cindex intrinsics, FDate
+-
+-@noindent
+-@example
+-FDate()
+-@end example
+-
+-@noindent
+-FDate: @code{CHARACTER*(*)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current date (using the same format as @code{CTIME()}).
+-
+-Equivalent to:
+-
+-@example
+-CTIME(TIME8())
+-@end example
+-
+-@cindex Y10K compliance
+-@cindex Year 10000 compliance
+-@cindex wraparound, Y10K
+-@cindex limits, Y10K
+-Programs making use of this intrinsic
+-might not be Year 10000 (Y10K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 10000.
+-
+-@xref{CTime Intrinsic (function)}.
+-
+-For information on other intrinsics with the same name:
+-@xref{FDate Intrinsic (subroutine)}.
+-
+-@node FGet Intrinsic (subroutine)
+-@subsubsection FGet Intrinsic (subroutine)
+-@cindex FGet intrinsic
+-@cindex intrinsics, FGet
+-
+-@noindent
+-@example
+-CALL FGet(@var{C}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Reads a single character into @var{C} in stream mode from unit 5
+-(by-passing normal formatted output) using @code{getc(3)}.
+-Returns in
+-@var{Status} 0 on success, @minus{}1 on end-of-file, and the error code
+-from @code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FGet Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node FGet Intrinsic (function)
+-@subsubsection FGet Intrinsic (function)
+-@cindex FGet intrinsic
+-@cindex intrinsics, FGet
+-
+-@noindent
+-@example
+-FGet(@var{C})
+-@end example
+-
+-@noindent
+-FGet: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Reads a single character into @var{C} in stream mode from unit 5
+-(by-passing normal formatted input) using @code{getc(3)}.
+-Returns 0 on
+-success, @minus{}1 on end-of-file, and the error code from
+-@code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FGet Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node FGetC Intrinsic (subroutine)
+-@subsubsection FGetC Intrinsic (subroutine)
+-@cindex FGetC intrinsic
+-@cindex intrinsics, FGetC
+-
+-@noindent
+-@example
+-CALL FGetC(@var{Unit}, @var{C}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Reads a single character into @var{C} in stream mode from unit @var{Unit}
+-(by-passing normal formatted output) using @code{getc(3)}.
+-Returns in
+-@var{Status} 0 on success, @minus{}1 on end-of-file, and the error code from
+-@code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FGetC Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node FGetC Intrinsic (function)
+-@subsubsection FGetC Intrinsic (function)
+-@cindex FGetC intrinsic
+-@cindex intrinsics, FGetC
+-
+-@noindent
+-@example
+-FGetC(@var{Unit}, @var{C})
+-@end example
+-
+-@noindent
+-FGetC: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Reads a single character into @var{C} in stream mode from unit @var{Unit}
+-(by-passing normal formatted output) using @code{getc(3)}.
+-Returns 0 on
+-success, @minus{}1 on end-of-file, and the error code from
+-@code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FGetC Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node Float Intrinsic
+-@subsubsection Float Intrinsic
+-@cindex Float intrinsic
+-@cindex intrinsics, Float
+-
+-@noindent
+-@example
+-Float(@var{A})
+-@end example
+-
+-@noindent
+-Float: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{REAL()} that is specific
+-to one type for @var{A}.
+-@xref{Real Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node FloatI Intrinsic
+-@subsubsection FloatI Intrinsic
+-@cindex FloatI intrinsic
+-@cindex intrinsics, FloatI
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL FloatI} to use this name for an
+-external procedure.
+-
+-@node FloatJ Intrinsic
+-@subsubsection FloatJ Intrinsic
+-@cindex FloatJ intrinsic
+-@cindex intrinsics, FloatJ
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL FloatJ} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Floor Intrinsic
+-@subsubsection Floor Intrinsic
+-@cindex Floor intrinsic
+-@cindex intrinsics, Floor
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Floor} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Flush Intrinsic
+-@subsubsection Flush Intrinsic
+-@cindex Flush intrinsic
+-@cindex intrinsics, Flush
+-
+-@noindent
+-@example
+-CALL Flush(@var{Unit})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; OPTIONAL; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Flushes Fortran unit(s) currently open for output.
+-Without the optional argument, all such units are flushed,
+-otherwise just the unit specified by @var{Unit}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic
+-as a library procedure that might or might not support the
+-(optional) @var{Unit} argument.
+-
+-@node FNum Intrinsic
+-@subsubsection FNum Intrinsic
+-@cindex FNum intrinsic
+-@cindex intrinsics, FNum
+-
+-@noindent
+-@example
+-FNum(@var{Unit})
+-@end example
+-
+-@noindent
+-FNum: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the Unix file descriptor number corresponding to the open
+-Fortran I/O unit @var{Unit}.
+-This could be passed to an interface to C I/O routines.
+-
+-@node FPut Intrinsic (subroutine)
+-@subsubsection FPut Intrinsic (subroutine)
+-@cindex FPut intrinsic
+-@cindex intrinsics, FPut
+-
+-@noindent
+-@example
+-CALL FPut(@var{C}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Writes the single character @var{C} in stream mode to unit 6
+-(by-passing normal formatted output) using @code{putc(3)}.
+-Returns in
+-@var{Status} 0 on success, the error code from @code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FPut Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node FPut Intrinsic (function)
+-@subsubsection FPut Intrinsic (function)
+-@cindex FPut intrinsic
+-@cindex intrinsics, FPut
+-
+-@noindent
+-@example
+-FPut(@var{C})
+-@end example
+-
+-@noindent
+-FPut: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Writes the single character @var{C} in stream mode to unit 6
+-(by-passing normal formatted output) using @code{getc(3)}.
+-Returns 0 on
+-success, the error code from @code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FPut Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node FPutC Intrinsic (subroutine)
+-@subsubsection FPutC Intrinsic (subroutine)
+-@cindex FPutC intrinsic
+-@cindex intrinsics, FPutC
+-
+-@noindent
+-@example
+-CALL FPutC(@var{Unit}, @var{C}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Writes the single character @var{Unit} in stream mode to unit 6
+-(by-passing normal formatted output) using @code{putc(3)}.
+-Returns in
+-@var{C} 0 on success, the error code from @code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FPutC Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node FPutC Intrinsic (function)
+-@subsubsection FPutC Intrinsic (function)
+-@cindex FPutC intrinsic
+-@cindex intrinsics, FPutC
+-
+-@noindent
+-@example
+-FPutC(@var{Unit}, @var{C})
+-@end example
+-
+-@noindent
+-FPutC: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Writes the single character @var{C} in stream mode to unit @var{Unit}
+-(by-passing normal formatted output) using @code{putc(3)}.
+-Returns 0 on
+-success, the error code from @code{ferror(3)} otherwise.
+-
+-Stream I/O should not be mixed with normal record-oriented (formatted or
+-unformatted) I/O on the same unit; the results are unpredictable.
+-
+-For information on other intrinsics with the same name:
+-@xref{FPutC Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Fraction Intrinsic
+-@subsubsection Fraction Intrinsic
+-@cindex Fraction intrinsic
+-@cindex intrinsics, Fraction
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Fraction} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node FSeek Intrinsic
+-@subsubsection FSeek Intrinsic
+-@cindex FSeek intrinsic
+-@cindex intrinsics, FSeek
+-
+-@noindent
+-@example
+-CALL FSeek(@var{Unit}, @var{Offset}, @var{Whence}, @var{ErrLab})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Offset}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Whence}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{ErrLab}: @samp{*@var{label}}, where @var{label} is the label
+-of an executable statement; OPTIONAL.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Attempts to move Fortran unit @var{Unit} to the specified
+-@var{Offset}: absolute offset if @var{Whence}=0; relative to the
+-current offset if @var{Whence}=1; relative to the end of the file if
+-@var{Whence}=2.
+-It branches to label @var{ErrLab} if @var{Unit} is
+-not open or if the call otherwise fails.
+-
+-@node FStat Intrinsic (subroutine)
+-@subsubsection FStat Intrinsic (subroutine)
+-@cindex FStat intrinsic
+-@cindex intrinsics, FStat
+-
+-@noindent
+-@example
+-CALL FStat(@var{Unit}, @var{SArray}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the file open on Fortran I/O unit @var{Unit} and
+-places them in the array @var{SArray}.
+-The values in this array are
+-extracted from the @code{stat} structure as returned by
+-@code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{FStat Intrinsic (function)}.
+-
+-@node FStat Intrinsic (function)
+-@subsubsection FStat Intrinsic (function)
+-@cindex FStat intrinsic
+-@cindex intrinsics, FStat
+-
+-@noindent
+-@example
+-FStat(@var{Unit}, @var{SArray})
+-@end example
+-
+-@noindent
+-FStat: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the file open on Fortran I/O unit @var{Unit} and
+-places them in the array @var{SArray}.
+-The values in this array are
+-extracted from the @code{stat} structure as returned by
+-@code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-Returns 0 on success or a non-zero error code.
+-
+-For information on other intrinsics with the same name:
+-@xref{FStat Intrinsic (subroutine)}.
+-
+-@node FTell Intrinsic (subroutine)
+-@subsubsection FTell Intrinsic (subroutine)
+-@cindex FTell intrinsic
+-@cindex intrinsics, FTell
+-
+-@noindent
+-@example
+-CALL FTell(@var{Unit}, @var{Offset})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Offset}: @code{INTEGER(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets @var{Offset} to the current offset of Fortran unit @var{Unit}
+-(or to @minus{}1 if @var{Unit} is not open).
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{FTell Intrinsic (function)}.
+-
+-@node FTell Intrinsic (function)
+-@subsubsection FTell Intrinsic (function)
+-@cindex FTell intrinsic
+-@cindex intrinsics, FTell
+-
+-@noindent
+-@example
+-FTell(@var{Unit})
+-@end example
+-
+-@noindent
+-FTell: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current offset of Fortran unit @var{Unit}
+-(or @minus{}1 if @var{Unit} is not open).
+-
+-For information on other intrinsics with the same name:
+-@xref{FTell Intrinsic (subroutine)}.
+-
+-@node GError Intrinsic
+-@subsubsection GError Intrinsic
+-@cindex GError intrinsic
+-@cindex intrinsics, GError
+-
+-@noindent
+-@example
+-CALL GError(@var{Message})
+-@end example
+-
+-@noindent
+-@var{Message}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the system error message corresponding to the last system
+-error (C @code{errno}).
+-
+-@node GetArg Intrinsic
+-@subsubsection GetArg Intrinsic
+-@cindex GetArg intrinsic
+-@cindex intrinsics, GetArg
+-
+-@noindent
+-@example
+-CALL GetArg(@var{Pos}, @var{Value})
+-@end example
+-
+-@noindent
+-@var{Pos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Value}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets @var{Value} to the @var{Pos}-th command-line argument (or to all
+-blanks if there are fewer than @var{Value} command-line arguments);
+-@code{CALL GETARG(0, @var{value})} sets @var{value} to the name of the
+-program (on systems that support this feature).
+-
+-@xref{IArgC Intrinsic}, for information on how to get the number
+-of arguments.
+-
+-@node GetCWD Intrinsic (subroutine)
+-@subsubsection GetCWD Intrinsic (subroutine)
+-@cindex GetCWD intrinsic
+-@cindex intrinsics, GetCWD
+-
+-@noindent
+-@example
+-CALL GetCWD(@var{Name}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Places the current working directory in @var{Name}.
+-If the @var{Status} argument is supplied, it contains 0
+-success or a non-zero error code upon return
+-(@code{ENOSYS} if the system does not provide @code{getcwd(3)}
+-or @code{getwd(3)}).
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{GetCWD Intrinsic (function)}.
+-
+-@node GetCWD Intrinsic (function)
+-@subsubsection GetCWD Intrinsic (function)
+-@cindex GetCWD intrinsic
+-@cindex intrinsics, GetCWD
+-
+-@noindent
+-@example
+-GetCWD(@var{Name})
+-@end example
+-
+-@noindent
+-GetCWD: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Places the current working directory in @var{Name}.
+-Returns 0 on
+-success, otherwise a non-zero error code
+-(@code{ENOSYS} if the system does not provide @code{getcwd(3)}
+-or @code{getwd(3)}).
+-
+-For information on other intrinsics with the same name:
+-@xref{GetCWD Intrinsic (subroutine)}.
+-
+-@node GetEnv Intrinsic
+-@subsubsection GetEnv Intrinsic
+-@cindex GetEnv intrinsic
+-@cindex intrinsics, GetEnv
+-
+-@noindent
+-@example
+-CALL GetEnv(@var{Name}, @var{Value})
+-@end example
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Value}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets @var{Value} to the value of environment variable given by the
+-value of @var{Name} (@code{$name} in shell terms) or to blanks if
+-@code{$name} has not been set.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{Name}---otherwise,
+-trailing blanks in @var{Name} are ignored.
+-
+-@node GetGId Intrinsic
+-@subsubsection GetGId Intrinsic
+-@cindex GetGId intrinsic
+-@cindex intrinsics, GetGId
+-
+-@noindent
+-@example
+-GetGId()
+-@end example
+-
+-@noindent
+-GetGId: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the group id for the current process.
+-
+-@node GetLog Intrinsic
+-@subsubsection GetLog Intrinsic
+-@cindex GetLog intrinsic
+-@cindex intrinsics, GetLog
+-
+-@noindent
+-@example
+-CALL GetLog(@var{Login})
+-@end example
+-
+-@noindent
+-@var{Login}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the login name for the process in @var{Login}.
+-
+-@emph{Caution:} On some systems, the @code{getlogin(3)}
+-function, which this intrinsic calls at run time,
+-is either not implemented or returns a null pointer.
+-In the latter case, this intrinsic returns blanks
+-in @var{Login}.
+-
+-@node GetPId Intrinsic
+-@subsubsection GetPId Intrinsic
+-@cindex GetPId intrinsic
+-@cindex intrinsics, GetPId
+-
+-@noindent
+-@example
+-GetPId()
+-@end example
+-
+-@noindent
+-GetPId: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the process id for the current process.
+-
+-@node GetUId Intrinsic
+-@subsubsection GetUId Intrinsic
+-@cindex GetUId intrinsic
+-@cindex intrinsics, GetUId
+-
+-@noindent
+-@example
+-GetUId()
+-@end example
+-
+-@noindent
+-GetUId: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the user id for the current process.
+-
+-@node GMTime Intrinsic
+-@subsubsection GMTime Intrinsic
+-@cindex GMTime intrinsic
+-@cindex intrinsics, GMTime
+-
+-@noindent
+-@example
+-CALL GMTime(@var{STime}, @var{TArray})
+-@end example
+-
+-@noindent
+-@var{STime}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{TArray}: @code{INTEGER(KIND=1)}; DIMENSION(9); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Given a system time value @var{STime}, fills @var{TArray} with values
+-extracted from it appropriate to the GMT time zone using
+-@code{gmtime(3)}.
+-
+-The array elements are as follows:
+-
+-@enumerate
+-@item
+-Seconds after the minute, range 0--59 or 0--61 to allow for leap
+-seconds
+-
+-@item
+-Minutes after the hour, range 0--59
+-
+-@item
+-Hours past midnight, range 0--23
+-
+-@item
+-Day of month, range 0--31
+-
+-@item
+-Number of months since January, range 0--12
+-
+-@item
+-Years since 1900
+-
+-@item
+-Number of days since Sunday, range 0--6
+-
+-@item
+-Days since January 1
+-
+-@item
+-Daylight savings indicator: positive if daylight savings is in effect,
+-zero if not, and negative if the information isn't available.
+-@end enumerate
+-
+-@node HostNm Intrinsic (subroutine)
+-@subsubsection HostNm Intrinsic (subroutine)
+-@cindex HostNm intrinsic
+-@cindex intrinsics, HostNm
+-
+-@noindent
+-@example
+-CALL HostNm(@var{Name}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Fills @var{Name} with the system's host name returned by
+-@code{gethostname(2)}.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return
+-(@code{ENOSYS} if the system does not provide @code{gethostname(2)}).
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-On some systems (specifically SCO) it might be necessary to link the
+-``socket'' library if you call this routine.
+-Typically this means adding @samp{-lg2c -lsocket -lm}
+-to the @code{g77} command line when linking the program.
+-
+-For information on other intrinsics with the same name:
+-@xref{HostNm Intrinsic (function)}.
+-
+-@node HostNm Intrinsic (function)
+-@subsubsection HostNm Intrinsic (function)
+-@cindex HostNm intrinsic
+-@cindex intrinsics, HostNm
+-
+-@noindent
+-@example
+-HostNm(@var{Name})
+-@end example
+-
+-@noindent
+-HostNm: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Fills @var{Name} with the system's host name returned by
+-@code{gethostname(2)}, returning 0 on success or a non-zero error code
+-(@code{ENOSYS} if the system does not provide @code{gethostname(2)}).
+-
+-On some systems (specifically SCO) it might be necessary to link the
+-``socket'' library if you call this routine.
+-Typically this means adding @samp{-lg2c -lsocket -lm}
+-to the @code{g77} command line when linking the program.
+-
+-For information on other intrinsics with the same name:
+-@xref{HostNm Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Huge Intrinsic
+-@subsubsection Huge Intrinsic
+-@cindex Huge intrinsic
+-@cindex intrinsics, Huge
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Huge} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node IAbs Intrinsic
+-@subsubsection IAbs Intrinsic
+-@cindex IAbs intrinsic
+-@cindex intrinsics, IAbs
+-
+-@noindent
+-@example
+-IAbs(@var{A})
+-@end example
+-
+-@noindent
+-IAbs: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ABS()} that is specific
+-to one type for @var{A}.
+-@xref{Abs Intrinsic}.
+-
+-@end ifset
+-@ifset familyASC
+-@node IAChar Intrinsic
+-@subsubsection IAChar Intrinsic
+-@cindex IAChar intrinsic
+-@cindex intrinsics, IAChar
+-
+-@noindent
+-@example
+-IAChar(@var{C})
+-@end example
+-
+-@noindent
+-IAChar: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}, @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns the code for the ASCII character in the
+-first character position of @var{C}.
+-
+-@xref{AChar Intrinsic}, for the inverse of this function.
+-
+-@xref{IChar Intrinsic}, for the function corresponding
+-to the system's native character set.
+-
+-@end ifset
+-@ifset familyMIL
+-@node IAnd Intrinsic
+-@subsubsection IAnd Intrinsic
+-@cindex IAnd intrinsic
+-@cindex intrinsics, IAnd
+-
+-@noindent
+-@example
+-IAnd(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-IAnd: @code{INTEGER} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean AND of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node IArgC Intrinsic
+-@subsubsection IArgC Intrinsic
+-@cindex IArgC intrinsic
+-@cindex intrinsics, IArgC
+-
+-@noindent
+-@example
+-IArgC()
+-@end example
+-
+-@noindent
+-IArgC: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the number of command-line arguments.
+-
+-This count does not include the specification of the program
+-name itself.
+-
+-@end ifset
+-@ifset familyMIL
+-@node IBClr Intrinsic
+-@subsubsection IBClr Intrinsic
+-@cindex IBClr intrinsic
+-@cindex intrinsics, IBClr
+-
+-@noindent
+-@example
+-IBClr(@var{I}, @var{Pos})
+-@end example
+-
+-@noindent
+-IBClr: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Pos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns the value of @var{I} with bit @var{Pos} cleared (set to
+-zero).
+-@xref{BTest Intrinsic}, for information on bit positions.
+-
+-@node IBits Intrinsic
+-@subsubsection IBits Intrinsic
+-@cindex IBits intrinsic
+-@cindex intrinsics, IBits
+-
+-@noindent
+-@example
+-IBits(@var{I}, @var{Pos}, @var{Len})
+-@end example
+-
+-@noindent
+-IBits: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Pos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Len}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Extracts a subfield of length @var{Len} from @var{I}, starting from
+-bit position @var{Pos} and extending left for @var{Len} bits.
+-The result is right-justified and the remaining bits are zeroed.
+-The value
+-of @samp{@var{Pos}+@var{Len}} must be less than or equal to the value
+-@samp{BIT_SIZE(@var{I})}.
+-@xref{Bit_Size Intrinsic}.
+-
+-@node IBSet Intrinsic
+-@subsubsection IBSet Intrinsic
+-@cindex IBSet intrinsic
+-@cindex intrinsics, IBSet
+-
+-@noindent
+-@example
+-IBSet(@var{I}, @var{Pos})
+-@end example
+-
+-@noindent
+-IBSet: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Pos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns the value of @var{I} with bit @var{Pos} set (to one).
+-@xref{BTest Intrinsic}, for information on bit positions.
+-
+-@end ifset
+-@ifset familyF77
+-@node IChar Intrinsic
+-@subsubsection IChar Intrinsic
+-@cindex IChar intrinsic
+-@cindex intrinsics, IChar
+-
+-@noindent
+-@example
+-IChar(@var{C})
+-@end example
+-
+-@noindent
+-IChar: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{C}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the code for the character in the
+-first character position of @var{C}.
+-
+-Because the system's native character set is used,
+-the correspondence between character and their codes
+-is not necessarily the same between GNU Fortran
+-implementations.
+-
+-Note that no intrinsic exists to convert a printable
+-character string to a numerical value.
+-For example, there is no intrinsic that, given
+-the @code{CHARACTER} value @samp{'154'}, returns an
+-@code{INTEGER} or @code{REAL} value with the value @samp{154}.
+-
+-Instead, you can use internal-file I/O to do this kind
+-of conversion.
+-For example:
+-
+-@smallexample
+-INTEGER VALUE
+-CHARACTER*10 STRING
+-STRING = '154'
+-READ (STRING, '(I10)'), VALUE
+-PRINT *, VALUE
+-END
+-@end smallexample
+-
+-The above program, when run, prints:
+-
+-@smallexample
+- 154
+-@end smallexample
+-
+-@xref{Char Intrinsic}, for the inverse of the @code{ICHAR} function.
+-
+-@xref{IAChar Intrinsic}, for the function corresponding
+-to the ASCII character set.
+-
+-@end ifset
+-@ifset familyF2U
+-@node IDate Intrinsic (UNIX)
+-@subsubsection IDate Intrinsic (UNIX)
+-@cindex IDate intrinsic
+-@cindex intrinsics, IDate
+-
+-@noindent
+-@example
+-CALL IDate(@var{TArray})
+-@end example
+-
+-@noindent
+-@var{TArray}: @code{INTEGER(KIND=1)}; DIMENSION(3); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Fills @var{TArray} with the numerical values at the current local time
+-of day, month (in the range 1--12), and year in elements 1, 2, and 3,
+-respectively.
+-The year has four significant digits.
+-
+-@cindex Y10K compliance
+-@cindex Year 10000 compliance
+-@cindex wraparound, Y10K
+-@cindex limits, Y10K
+-Programs making use of this intrinsic
+-might not be Year 10000 (Y10K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 10000.
+-
+-For information on other intrinsics with the same name:
+-@xref{IDate Intrinsic (VXT)}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node IDate Intrinsic (VXT)
+-@subsubsection IDate Intrinsic (VXT)
+-@cindex IDate intrinsic
+-@cindex intrinsics, IDate
+-
+-@noindent
+-@example
+-CALL IDate(@var{M}, @var{D}, @var{Y})
+-@end example
+-
+-@noindent
+-@var{M}: @code{INTEGER(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{D}: @code{INTEGER(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Y}: @code{INTEGER(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns the numerical values of the current local time.
+-The month (in the range 1--12) is returned in @var{M},
+-the day (in the range 1--7) in @var{D},
+-and the year in @var{Y} (in the range 0--99).
+-
+-@cindex Y2K compliance
+-@cindex Year 2000 compliance
+-@cindex wraparound, Y2K
+-@cindex limits, Y2K
+-This intrinsic is not recommended, due to the year 2000 approaching.
+-Therefore, programs making use of this intrinsic
+-might not be Year 2000 (Y2K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 2000.
+-
+-@xref{IDate Intrinsic (UNIX)}, for information on obtaining more digits
+-for the current date.
+-
+-For information on other intrinsics with the same name:
+-@xref{IDate Intrinsic (UNIX)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node IDiM Intrinsic
+-@subsubsection IDiM Intrinsic
+-@cindex IDiM intrinsic
+-@cindex intrinsics, IDiM
+-
+-@noindent
+-@example
+-IDiM(@var{X}, @var{Y})
+-@end example
+-
+-@noindent
+-IDiM: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{X}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Y}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{DIM()} that is specific
+-to one type for @var{X} and @var{Y}.
+-@xref{DiM Intrinsic}.
+-
+-@node IDInt Intrinsic
+-@subsubsection IDInt Intrinsic
+-@cindex IDInt intrinsic
+-@cindex intrinsics, IDInt
+-
+-@noindent
+-@example
+-IDInt(@var{A})
+-@end example
+-
+-@noindent
+-IDInt: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{INT()} that is specific
+-to one type for @var{A}.
+-@xref{Int Intrinsic}.
+-
+-@node IDNInt Intrinsic
+-@subsubsection IDNInt Intrinsic
+-@cindex IDNInt intrinsic
+-@cindex intrinsics, IDNInt
+-
+-@noindent
+-@example
+-IDNInt(@var{A})
+-@end example
+-
+-@noindent
+-IDNInt: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{NINT()} that is specific
+-to one type for @var{A}.
+-@xref{NInt Intrinsic}.
+-
+-@end ifset
+-@ifset familyMIL
+-@node IEOr Intrinsic
+-@subsubsection IEOr Intrinsic
+-@cindex IEOr intrinsic
+-@cindex intrinsics, IEOr
+-
+-@noindent
+-@example
+-IEOr(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-IEOr: @code{INTEGER} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean exclusive-OR of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node IErrNo Intrinsic
+-@subsubsection IErrNo Intrinsic
+-@cindex IErrNo intrinsic
+-@cindex intrinsics, IErrNo
+-
+-@noindent
+-@example
+-IErrNo()
+-@end example
+-
+-@noindent
+-IErrNo: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the last system error number (corresponding to the C
+-@code{errno}).
+-
+-@end ifset
+-@ifset familyF77
+-@node IFix Intrinsic
+-@subsubsection IFix Intrinsic
+-@cindex IFix intrinsic
+-@cindex intrinsics, IFix
+-
+-@noindent
+-@example
+-IFix(@var{A})
+-@end example
+-
+-@noindent
+-IFix: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{INT()} that is specific
+-to one type for @var{A}.
+-@xref{Int Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node IIAbs Intrinsic
+-@subsubsection IIAbs Intrinsic
+-@cindex IIAbs intrinsic
+-@cindex intrinsics, IIAbs
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIAbs} to use this name for an
+-external procedure.
+-
+-@node IIAnd Intrinsic
+-@subsubsection IIAnd Intrinsic
+-@cindex IIAnd intrinsic
+-@cindex intrinsics, IIAnd
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIAnd} to use this name for an
+-external procedure.
+-
+-@node IIBClr Intrinsic
+-@subsubsection IIBClr Intrinsic
+-@cindex IIBClr intrinsic
+-@cindex intrinsics, IIBClr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIBClr} to use this name for an
+-external procedure.
+-
+-@node IIBits Intrinsic
+-@subsubsection IIBits Intrinsic
+-@cindex IIBits intrinsic
+-@cindex intrinsics, IIBits
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIBits} to use this name for an
+-external procedure.
+-
+-@node IIBSet Intrinsic
+-@subsubsection IIBSet Intrinsic
+-@cindex IIBSet intrinsic
+-@cindex intrinsics, IIBSet
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIBSet} to use this name for an
+-external procedure.
+-
+-@node IIDiM Intrinsic
+-@subsubsection IIDiM Intrinsic
+-@cindex IIDiM intrinsic
+-@cindex intrinsics, IIDiM
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIDiM} to use this name for an
+-external procedure.
+-
+-@node IIDInt Intrinsic
+-@subsubsection IIDInt Intrinsic
+-@cindex IIDInt intrinsic
+-@cindex intrinsics, IIDInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIDInt} to use this name for an
+-external procedure.
+-
+-@node IIDNnt Intrinsic
+-@subsubsection IIDNnt Intrinsic
+-@cindex IIDNnt intrinsic
+-@cindex intrinsics, IIDNnt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIDNnt} to use this name for an
+-external procedure.
+-
+-@node IIEOr Intrinsic
+-@subsubsection IIEOr Intrinsic
+-@cindex IIEOr intrinsic
+-@cindex intrinsics, IIEOr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIEOr} to use this name for an
+-external procedure.
+-
+-@node IIFix Intrinsic
+-@subsubsection IIFix Intrinsic
+-@cindex IIFix intrinsic
+-@cindex intrinsics, IIFix
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIFix} to use this name for an
+-external procedure.
+-
+-@node IInt Intrinsic
+-@subsubsection IInt Intrinsic
+-@cindex IInt intrinsic
+-@cindex intrinsics, IInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IInt} to use this name for an
+-external procedure.
+-
+-@node IIOr Intrinsic
+-@subsubsection IIOr Intrinsic
+-@cindex IIOr intrinsic
+-@cindex intrinsics, IIOr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIOr} to use this name for an
+-external procedure.
+-
+-@node IIQint Intrinsic
+-@subsubsection IIQint Intrinsic
+-@cindex IIQint intrinsic
+-@cindex intrinsics, IIQint
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIQint} to use this name for an
+-external procedure.
+-
+-@node IIQNnt Intrinsic
+-@subsubsection IIQNnt Intrinsic
+-@cindex IIQNnt intrinsic
+-@cindex intrinsics, IIQNnt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIQNnt} to use this name for an
+-external procedure.
+-
+-@node IIShftC Intrinsic
+-@subsubsection IIShftC Intrinsic
+-@cindex IIShftC intrinsic
+-@cindex intrinsics, IIShftC
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IIShftC} to use this name for an
+-external procedure.
+-
+-@node IISign Intrinsic
+-@subsubsection IISign Intrinsic
+-@cindex IISign intrinsic
+-@cindex intrinsics, IISign
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IISign} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2C
+-@node Imag Intrinsic
+-@subsubsection Imag Intrinsic
+-@cindex Imag intrinsic
+-@cindex intrinsics, Imag
+-
+-@noindent
+-@example
+-Imag(@var{Z})
+-@end example
+-
+-@noindent
+-Imag: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{Z}.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-The imaginary part of @var{Z} is returned, without conversion.
+-
+-@emph{Note:} The way to do this in standard Fortran 90
+-is @samp{AIMAG(@var{Z})}.
+-However, when, for example, @var{Z} is @code{DOUBLE COMPLEX},
+-@samp{AIMAG(@var{Z})} means something different for some compilers
+-that are not true Fortran 90 compilers but offer some
+-extensions standardized by Fortran 90 (such as the
+-@code{DOUBLE COMPLEX} type, also known as @code{COMPLEX(KIND=2)}).
+-
+-The advantage of @code{IMAG()} is that, while not necessarily
+-more or less portable than @code{AIMAG()}, it is more likely to
+-cause a compiler that doesn't support it to produce a diagnostic
+-than generate incorrect code.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information.
+-
+-@end ifset
+-@ifset familyGNU
+-@node ImagPart Intrinsic
+-@subsubsection ImagPart Intrinsic
+-@cindex ImagPart intrinsic
+-@cindex intrinsics, ImagPart
+-
+-@noindent
+-@example
+-ImagPart(@var{Z})
+-@end example
+-
+-@noindent
+-ImagPart: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{Z}.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{gnu}.
+-
+-@noindent
+-Description:
+-
+-The imaginary part of @var{Z} is returned, without conversion.
+-
+-@emph{Note:} The way to do this in standard Fortran 90
+-is @samp{AIMAG(@var{Z})}.
+-However, when, for example, @var{Z} is @code{DOUBLE COMPLEX},
+-@samp{AIMAG(@var{Z})} means something different for some compilers
+-that are not true Fortran 90 compilers but offer some
+-extensions standardized by Fortran 90 (such as the
+-@code{DOUBLE COMPLEX} type, also known as @code{COMPLEX(KIND=2)}).
+-
+-The advantage of @code{IMAGPART()} is that, while not necessarily
+-more or less portable than @code{AIMAG()}, it is more likely to
+-cause a compiler that doesn't support it to produce a diagnostic
+-than generate incorrect code.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information.
+-
+-@end ifset
+-@ifset familyVXT
+-@node IMax0 Intrinsic
+-@subsubsection IMax0 Intrinsic
+-@cindex IMax0 intrinsic
+-@cindex intrinsics, IMax0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IMax0} to use this name for an
+-external procedure.
+-
+-@node IMax1 Intrinsic
+-@subsubsection IMax1 Intrinsic
+-@cindex IMax1 intrinsic
+-@cindex intrinsics, IMax1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IMax1} to use this name for an
+-external procedure.
+-
+-@node IMin0 Intrinsic
+-@subsubsection IMin0 Intrinsic
+-@cindex IMin0 intrinsic
+-@cindex intrinsics, IMin0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IMin0} to use this name for an
+-external procedure.
+-
+-@node IMin1 Intrinsic
+-@subsubsection IMin1 Intrinsic
+-@cindex IMin1 intrinsic
+-@cindex intrinsics, IMin1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IMin1} to use this name for an
+-external procedure.
+-
+-@node IMod Intrinsic
+-@subsubsection IMod Intrinsic
+-@cindex IMod intrinsic
+-@cindex intrinsics, IMod
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IMod} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Index Intrinsic
+-@subsubsection Index Intrinsic
+-@cindex Index intrinsic
+-@cindex intrinsics, Index
+-
+-@noindent
+-@example
+-Index(@var{String}, @var{Substring})
+-@end example
+-
+-@noindent
+-Index: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{String}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Substring}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the position of the start of the first occurrence of string
+-@var{Substring} as a substring in @var{String}, counting from one.
+-If @var{Substring} doesn't occur in @var{String}, zero is returned.
+-
+-@end ifset
+-@ifset familyVXT
+-@node INInt Intrinsic
+-@subsubsection INInt Intrinsic
+-@cindex INInt intrinsic
+-@cindex intrinsics, INInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL INInt} to use this name for an
+-external procedure.
+-
+-@node INot Intrinsic
+-@subsubsection INot Intrinsic
+-@cindex INot intrinsic
+-@cindex intrinsics, INot
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL INot} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Int Intrinsic
+-@subsubsection Int Intrinsic
+-@cindex Int intrinsic
+-@cindex intrinsics, Int
+-
+-@noindent
+-@example
+-Int(@var{A})
+-@end example
+-
+-@noindent
+-Int: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude truncated and its sign preserved, converted
+-to type @code{INTEGER(KIND=1)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part is
+-truncated and converted, and its imaginary part is disregarded.
+-
+-@xref{NInt Intrinsic}, for how to convert, rounded to nearest
+-whole number.
+-
+-@xref{AInt Intrinsic}, for how to truncate to whole number
+-without converting.
+-
+-@end ifset
+-@ifset familyGNU
+-@node Int2 Intrinsic
+-@subsubsection Int2 Intrinsic
+-@cindex Int2 intrinsic
+-@cindex intrinsics, Int2
+-
+-@noindent
+-@example
+-Int2(@var{A})
+-@end example
+-
+-@noindent
+-Int2: @code{INTEGER(KIND=6)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{gnu}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude truncated and its sign preserved, converted
+-to type @code{INTEGER(KIND=6)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part
+-is truncated and converted, and its imaginary part is disgregarded.
+-
+-@xref{Int Intrinsic}.
+-
+-The precise meaning of this intrinsic might change
+-in a future version of the GNU Fortran language,
+-as more is learned about how it is used.
+-
+-@node Int8 Intrinsic
+-@subsubsection Int8 Intrinsic
+-@cindex Int8 intrinsic
+-@cindex intrinsics, Int8
+-
+-@noindent
+-@example
+-Int8(@var{A})
+-@end example
+-
+-@noindent
+-Int8: @code{INTEGER(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{gnu}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude truncated and its sign preserved, converted
+-to type @code{INTEGER(KIND=2)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part
+-is truncated and converted, and its imaginary part is disgregarded.
+-
+-@xref{Int Intrinsic}.
+-
+-The precise meaning of this intrinsic might change
+-in a future version of the GNU Fortran language,
+-as more is learned about how it is used.
+-
+-@end ifset
+-@ifset familyMIL
+-@node IOr Intrinsic
+-@subsubsection IOr Intrinsic
+-@cindex IOr intrinsic
+-@cindex intrinsics, IOr
+-
+-@noindent
+-@example
+-IOr(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-IOr: @code{INTEGER} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean OR of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node IRand Intrinsic
+-@subsubsection IRand Intrinsic
+-@cindex IRand intrinsic
+-@cindex intrinsics, IRand
+-
+-@noindent
+-@example
+-IRand(@var{Flag})
+-@end example
+-
+-@noindent
+-IRand: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Flag}: @code{INTEGER}; OPTIONAL; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns a uniform quasi-random number up to a system-dependent limit.
+-If @var{Flag} is 0, the next number in sequence is returned; if
+-@var{Flag} is 1, the generator is restarted by calling the UNIX function
+-@samp{srand(0)}; if @var{Flag} has any other value,
+-it is used as a new seed with @code{srand()}.
+-
+-@xref{SRand Intrinsic}.
+-
+-@emph{Note:} As typically implemented (by the routine of the same
+-name in the C library), this random number generator is a very poor
+-one, though the BSD and GNU libraries provide a much better
+-implementation than the `traditional' one.
+-On a different system you almost certainly want to use something better.
+-
+-@node IsaTty Intrinsic
+-@subsubsection IsaTty Intrinsic
+-@cindex IsaTty intrinsic
+-@cindex intrinsics, IsaTty
+-
+-@noindent
+-@example
+-IsaTty(@var{Unit})
+-@end example
+-
+-@noindent
+-IsaTty: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns @code{.TRUE.} if and only if the Fortran I/O unit
+-specified by @var{Unit} is connected
+-to a terminal device.
+-See @code{isatty(3)}.
+-
+-@end ifset
+-@ifset familyMIL
+-@node IShft Intrinsic
+-@subsubsection IShft Intrinsic
+-@cindex IShft intrinsic
+-@cindex intrinsics, IShft
+-
+-@noindent
+-@example
+-IShft(@var{I}, @var{Shift})
+-@end example
+-
+-@noindent
+-IShft: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Shift}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-All bits representing @var{I} are shifted @var{Shift} places.
+-@samp{@var{Shift}.GT.0} indicates a left shift, @samp{@var{Shift}.EQ.0}
+-indicates no shift and @samp{@var{Shift}.LT.0} indicates a right shift.
+-If the absolute value of the shift count is greater than
+-@samp{BIT_SIZE(@var{I})}, the result is undefined.
+-Bits shifted out from the left end or the right end are lost.
+-Zeros are shifted in from the opposite end.
+-
+-@xref{IShftC Intrinsic}, for the circular-shift equivalent.
+-
+-@node IShftC Intrinsic
+-@subsubsection IShftC Intrinsic
+-@cindex IShftC intrinsic
+-@cindex intrinsics, IShftC
+-
+-@noindent
+-@example
+-IShftC(@var{I}, @var{Shift}, @var{Size})
+-@end example
+-
+-@noindent
+-IShftC: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Shift}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Size}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-The rightmost @var{Size} bits of the argument @var{I}
+-are shifted circularly @var{Shift}
+-places, i.e.@: the bits shifted out of one end are shifted into
+-the opposite end.
+-No bits are lost.
+-The unshifted bits of the result are the same as
+-the unshifted bits of @var{I}.
+-The absolute value of the argument @var{Shift}
+-must be less than or equal to @var{Size}.
+-The value of @var{Size} must be greater than or equal to one and less than
+-or equal to @samp{BIT_SIZE(@var{I})}.
+-
+-@xref{IShft Intrinsic}, for the logical shift equivalent.
+-
+-@end ifset
+-@ifset familyF77
+-@node ISign Intrinsic
+-@subsubsection ISign Intrinsic
+-@cindex ISign intrinsic
+-@cindex intrinsics, ISign
+-
+-@noindent
+-@example
+-ISign(@var{A}, @var{B})
+-@end example
+-
+-@noindent
+-ISign: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{B}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIGN()} that is specific
+-to one type for @var{A} and @var{B}.
+-@xref{Sign Intrinsic}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node ITime Intrinsic
+-@subsubsection ITime Intrinsic
+-@cindex ITime intrinsic
+-@cindex intrinsics, ITime
+-
+-@noindent
+-@example
+-CALL ITime(@var{TArray})
+-@end example
+-
+-@noindent
+-@var{TArray}: @code{INTEGER(KIND=1)}; DIMENSION(3); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current local time hour, minutes, and seconds in elements
+-1, 2, and 3 of @var{TArray}, respectively.
+-
+-@end ifset
+-@ifset familyVXT
+-@node IZExt Intrinsic
+-@subsubsection IZExt Intrinsic
+-@cindex IZExt intrinsic
+-@cindex intrinsics, IZExt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL IZExt} to use this name for an
+-external procedure.
+-
+-@node JIAbs Intrinsic
+-@subsubsection JIAbs Intrinsic
+-@cindex JIAbs intrinsic
+-@cindex intrinsics, JIAbs
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIAbs} to use this name for an
+-external procedure.
+-
+-@node JIAnd Intrinsic
+-@subsubsection JIAnd Intrinsic
+-@cindex JIAnd intrinsic
+-@cindex intrinsics, JIAnd
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIAnd} to use this name for an
+-external procedure.
+-
+-@node JIBClr Intrinsic
+-@subsubsection JIBClr Intrinsic
+-@cindex JIBClr intrinsic
+-@cindex intrinsics, JIBClr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIBClr} to use this name for an
+-external procedure.
+-
+-@node JIBits Intrinsic
+-@subsubsection JIBits Intrinsic
+-@cindex JIBits intrinsic
+-@cindex intrinsics, JIBits
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIBits} to use this name for an
+-external procedure.
+-
+-@node JIBSet Intrinsic
+-@subsubsection JIBSet Intrinsic
+-@cindex JIBSet intrinsic
+-@cindex intrinsics, JIBSet
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIBSet} to use this name for an
+-external procedure.
+-
+-@node JIDiM Intrinsic
+-@subsubsection JIDiM Intrinsic
+-@cindex JIDiM intrinsic
+-@cindex intrinsics, JIDiM
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIDiM} to use this name for an
+-external procedure.
+-
+-@node JIDInt Intrinsic
+-@subsubsection JIDInt Intrinsic
+-@cindex JIDInt intrinsic
+-@cindex intrinsics, JIDInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIDInt} to use this name for an
+-external procedure.
+-
+-@node JIDNnt Intrinsic
+-@subsubsection JIDNnt Intrinsic
+-@cindex JIDNnt intrinsic
+-@cindex intrinsics, JIDNnt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIDNnt} to use this name for an
+-external procedure.
+-
+-@node JIEOr Intrinsic
+-@subsubsection JIEOr Intrinsic
+-@cindex JIEOr intrinsic
+-@cindex intrinsics, JIEOr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIEOr} to use this name for an
+-external procedure.
+-
+-@node JIFix Intrinsic
+-@subsubsection JIFix Intrinsic
+-@cindex JIFix intrinsic
+-@cindex intrinsics, JIFix
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIFix} to use this name for an
+-external procedure.
+-
+-@node JInt Intrinsic
+-@subsubsection JInt Intrinsic
+-@cindex JInt intrinsic
+-@cindex intrinsics, JInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JInt} to use this name for an
+-external procedure.
+-
+-@node JIOr Intrinsic
+-@subsubsection JIOr Intrinsic
+-@cindex JIOr intrinsic
+-@cindex intrinsics, JIOr
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIOr} to use this name for an
+-external procedure.
+-
+-@node JIQint Intrinsic
+-@subsubsection JIQint Intrinsic
+-@cindex JIQint intrinsic
+-@cindex intrinsics, JIQint
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIQint} to use this name for an
+-external procedure.
+-
+-@node JIQNnt Intrinsic
+-@subsubsection JIQNnt Intrinsic
+-@cindex JIQNnt intrinsic
+-@cindex intrinsics, JIQNnt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIQNnt} to use this name for an
+-external procedure.
+-
+-@node JIShft Intrinsic
+-@subsubsection JIShft Intrinsic
+-@cindex JIShft intrinsic
+-@cindex intrinsics, JIShft
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIShft} to use this name for an
+-external procedure.
+-
+-@node JIShftC Intrinsic
+-@subsubsection JIShftC Intrinsic
+-@cindex JIShftC intrinsic
+-@cindex intrinsics, JIShftC
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JIShftC} to use this name for an
+-external procedure.
+-
+-@node JISign Intrinsic
+-@subsubsection JISign Intrinsic
+-@cindex JISign intrinsic
+-@cindex intrinsics, JISign
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JISign} to use this name for an
+-external procedure.
+-
+-@node JMax0 Intrinsic
+-@subsubsection JMax0 Intrinsic
+-@cindex JMax0 intrinsic
+-@cindex intrinsics, JMax0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JMax0} to use this name for an
+-external procedure.
+-
+-@node JMax1 Intrinsic
+-@subsubsection JMax1 Intrinsic
+-@cindex JMax1 intrinsic
+-@cindex intrinsics, JMax1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JMax1} to use this name for an
+-external procedure.
+-
+-@node JMin0 Intrinsic
+-@subsubsection JMin0 Intrinsic
+-@cindex JMin0 intrinsic
+-@cindex intrinsics, JMin0
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JMin0} to use this name for an
+-external procedure.
+-
+-@node JMin1 Intrinsic
+-@subsubsection JMin1 Intrinsic
+-@cindex JMin1 intrinsic
+-@cindex intrinsics, JMin1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JMin1} to use this name for an
+-external procedure.
+-
+-@node JMod Intrinsic
+-@subsubsection JMod Intrinsic
+-@cindex JMod intrinsic
+-@cindex intrinsics, JMod
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JMod} to use this name for an
+-external procedure.
+-
+-@node JNInt Intrinsic
+-@subsubsection JNInt Intrinsic
+-@cindex JNInt intrinsic
+-@cindex intrinsics, JNInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JNInt} to use this name for an
+-external procedure.
+-
+-@node JNot Intrinsic
+-@subsubsection JNot Intrinsic
+-@cindex JNot intrinsic
+-@cindex intrinsics, JNot
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JNot} to use this name for an
+-external procedure.
+-
+-@node JZExt Intrinsic
+-@subsubsection JZExt Intrinsic
+-@cindex JZExt intrinsic
+-@cindex intrinsics, JZExt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL JZExt} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Kill Intrinsic (subroutine)
+-@subsubsection Kill Intrinsic (subroutine)
+-@cindex Kill intrinsic
+-@cindex intrinsics, Kill
+-
+-@noindent
+-@example
+-CALL Kill(@var{Pid}, @var{Signal}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Pid}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Signal}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sends the signal specified by @var{Signal} to the process @var{Pid}.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-See @code{kill(2)}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{Kill Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node Kill Intrinsic (function)
+-@subsubsection Kill Intrinsic (function)
+-@cindex Kill intrinsic
+-@cindex intrinsics, Kill
+-
+-@noindent
+-@example
+-Kill(@var{Pid}, @var{Signal})
+-@end example
+-
+-@noindent
+-Kill: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Pid}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Signal}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Sends the signal specified by @var{Signal} to the process @var{Pid}.
+-Returns 0 on success or a non-zero error code.
+-See @code{kill(2)}.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{Kill Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Kind Intrinsic
+-@subsubsection Kind Intrinsic
+-@cindex Kind intrinsic
+-@cindex intrinsics, Kind
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Kind} to use this name for an
+-external procedure.
+-
+-@node LBound Intrinsic
+-@subsubsection LBound Intrinsic
+-@cindex LBound intrinsic
+-@cindex intrinsics, LBound
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL LBound} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Len Intrinsic
+-@subsubsection Len Intrinsic
+-@cindex Len intrinsic
+-@cindex intrinsics, Len
+-
+-@noindent
+-@example
+-Len(@var{String})
+-@end example
+-
+-@noindent
+-Len: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{String}: @code{CHARACTER}; scalar.
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the length of @var{String}.
+-
+-If @var{String} is an array, the length of an element
+-of @var{String} is returned.
+-
+-Note that @var{String} need not be defined when this
+-intrinsic is invoked, since only the length, not
+-the content, of @var{String} is needed.
+-
+-@xref{Bit_Size Intrinsic}, for the function that determines
+-the size of its argument in bits.
+-
+-@end ifset
+-@ifset familyF90
+-@node Len_Trim Intrinsic
+-@subsubsection Len_Trim Intrinsic
+-@cindex Len_Trim intrinsic
+-@cindex intrinsics, Len_Trim
+-
+-@noindent
+-@example
+-Len_Trim(@var{String})
+-@end example
+-
+-@noindent
+-Len_Trim: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{String}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns the index of the last non-blank character in @var{String}.
+-@code{LNBLNK} and @code{LEN_TRIM} are equivalent.
+-
+-@end ifset
+-@ifset familyF77
+-@node LGe Intrinsic
+-@subsubsection LGe Intrinsic
+-@cindex LGe intrinsic
+-@cindex intrinsics, LGe
+-
+-@noindent
+-@example
+-LGe(@var{String_A}, @var{String_B})
+-@end example
+-
+-@noindent
+-LGe: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{String_A}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{String_B}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{.TRUE.} if @samp{@var{String_A}.GE.@var{String_B}},
+-@samp{.FALSE.} otherwise.
+-@var{String_A} and @var{String_B} are interpreted as containing
+-ASCII character codes.
+-If either value contains a character not in the ASCII
+-character set, the result is processor dependent.
+-
+-If the @var{String_A} and @var{String_B} are not the same length,
+-the shorter is compared as if spaces were appended to
+-it to form a value that has the same length as the longer.
+-
+-The lexical comparison intrinsics @code{LGe}, @code{LGt},
+-@code{LLe}, and @code{LLt} differ from the corresponding
+-intrinsic operators @code{.GE.}, @code{.GT.},
+-@code{.LE.}, @code{.LT.}.
+-Because the ASCII collating sequence is assumed,
+-the following expressions always return @samp{.TRUE.}:
+-
+-@smallexample
+-LGE ('0', ' ')
+-LGE ('A', '0')
+-LGE ('a', 'A')
+-@end smallexample
+-
+-The following related expressions do @emph{not} always
+-return @samp{.TRUE.}, as they are not necessarily evaluated
+-assuming the arguments use ASCII encoding:
+-
+-@smallexample
+-'0' .GE. ' '
+-'A' .GE. '0'
+-'a' .GE. 'A'
+-@end smallexample
+-
+-The same difference exists
+-between @code{LGt} and @code{.GT.};
+-between @code{LLe} and @code{.LE.}; and
+-between @code{LLt} and @code{.LT.}.
+-
+-@node LGt Intrinsic
+-@subsubsection LGt Intrinsic
+-@cindex LGt intrinsic
+-@cindex intrinsics, LGt
+-
+-@noindent
+-@example
+-LGt(@var{String_A}, @var{String_B})
+-@end example
+-
+-@noindent
+-LGt: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{String_A}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{String_B}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{.TRUE.} if @samp{@var{String_A}.GT.@var{String_B}},
+-@samp{.FALSE.} otherwise.
+-@var{String_A} and @var{String_B} are interpreted as containing
+-ASCII character codes.
+-If either value contains a character not in the ASCII
+-character set, the result is processor dependent.
+-
+-If the @var{String_A} and @var{String_B} are not the same length,
+-the shorter is compared as if spaces were appended to
+-it to form a value that has the same length as the longer.
+-
+-@xref{LGe Intrinsic}, for information on the distinction
+-between the @code{LGT} intrinsic and the @code{.GT.}
+-operator.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Link Intrinsic (subroutine)
+-@subsubsection Link Intrinsic (subroutine)
+-@cindex Link intrinsic
+-@cindex intrinsics, Link
+-
+-@noindent
+-@example
+-CALL Link(@var{Path1}, @var{Path2}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Makes a (hard) link from file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-See @code{link(2)}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{Link Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node Link Intrinsic (function)
+-@subsubsection Link Intrinsic (function)
+-@cindex Link intrinsic
+-@cindex intrinsics, Link
+-
+-@noindent
+-@example
+-Link(@var{Path1}, @var{Path2})
+-@end example
+-
+-@noindent
+-Link: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Makes a (hard) link from file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-Returns 0 on success or a non-zero error code.
+-See @code{link(2)}.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{Link Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node LLe Intrinsic
+-@subsubsection LLe Intrinsic
+-@cindex LLe intrinsic
+-@cindex intrinsics, LLe
+-
+-@noindent
+-@example
+-LLe(@var{String_A}, @var{String_B})
+-@end example
+-
+-@noindent
+-LLe: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{String_A}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{String_B}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{.TRUE.} if @samp{@var{String_A}.LE.@var{String_B}},
+-@samp{.FALSE.} otherwise.
+-@var{String_A} and @var{String_B} are interpreted as containing
+-ASCII character codes.
+-If either value contains a character not in the ASCII
+-character set, the result is processor dependent.
+-
+-If the @var{String_A} and @var{String_B} are not the same length,
+-the shorter is compared as if spaces were appended to
+-it to form a value that has the same length as the longer.
+-
+-@xref{LGe Intrinsic}, for information on the distinction
+-between the @code{LLE} intrinsic and the @code{.LE.}
+-operator.
+-
+-@node LLt Intrinsic
+-@subsubsection LLt Intrinsic
+-@cindex LLt intrinsic
+-@cindex intrinsics, LLt
+-
+-@noindent
+-@example
+-LLt(@var{String_A}, @var{String_B})
+-@end example
+-
+-@noindent
+-LLt: @code{LOGICAL(KIND=1)} function.
+-
+-@noindent
+-@var{String_A}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{String_B}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{.TRUE.} if @samp{@var{String_A}.LT.@var{String_B}},
+-@samp{.FALSE.} otherwise.
+-@var{String_A} and @var{String_B} are interpreted as containing
+-ASCII character codes.
+-If either value contains a character not in the ASCII
+-character set, the result is processor dependent.
+-
+-If the @var{String_A} and @var{String_B} are not the same length,
+-the shorter is compared as if spaces were appended to
+-it to form a value that has the same length as the longer.
+-
+-@xref{LGe Intrinsic}, for information on the distinction
+-between the @code{LLT} intrinsic and the @code{.LT.}
+-operator.
+-
+-@end ifset
+-@ifset familyF2U
+-@node LnBlnk Intrinsic
+-@subsubsection LnBlnk Intrinsic
+-@cindex LnBlnk intrinsic
+-@cindex intrinsics, LnBlnk
+-
+-@noindent
+-@example
+-LnBlnk(@var{String})
+-@end example
+-
+-@noindent
+-LnBlnk: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{String}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the index of the last non-blank character in @var{String}.
+-@code{LNBLNK} and @code{LEN_TRIM} are equivalent.
+-
+-@node Loc Intrinsic
+-@subsubsection Loc Intrinsic
+-@cindex Loc intrinsic
+-@cindex intrinsics, Loc
+-
+-@noindent
+-@example
+-Loc(@var{Entity})
+-@end example
+-
+-@noindent
+-Loc: @code{INTEGER(KIND=7)} function.
+-
+-@noindent
+-@var{Entity}: Any type; cannot be a constant or expression.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-The @code{LOC()} intrinsic works the
+-same way as the @code{%LOC()} construct.
+-@xref{%LOC(),,The @code{%LOC()} Construct}, for
+-more information.
+-
+-@end ifset
+-@ifset familyF77
+-@node Log Intrinsic
+-@subsubsection Log Intrinsic
+-@cindex Log intrinsic
+-@cindex intrinsics, Log
+-
+-@noindent
+-@example
+-Log(@var{X})
+-@end example
+-
+-@noindent
+-Log: @code{REAL} or @code{COMPLEX} function, the exact type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL} or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the natural logarithm of @var{X}, which must
+-be greater than zero or, if type @code{COMPLEX}, must not
+-be zero.
+-
+-@xref{Exp Intrinsic}, for the inverse of this function.
+-
+-@xref{Log10 Intrinsic}, for the `common' (base-10) logarithm function.
+-
+-@node Log10 Intrinsic
+-@subsubsection Log10 Intrinsic
+-@cindex Log10 intrinsic
+-@cindex intrinsics, Log10
+-
+-@noindent
+-@example
+-Log10(@var{X})
+-@end example
+-
+-@noindent
+-Log10: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the common logarithm (base 10) of @var{X}, which must
+-be greater than zero.
+-
+-The inverse of this function is @samp{10. ** LOG10(@var{X})}.
+-
+-@xref{Log Intrinsic}, for the natural logarithm function.
+-
+-@end ifset
+-@ifset familyF90
+-@node Logical Intrinsic
+-@subsubsection Logical Intrinsic
+-@cindex Logical intrinsic
+-@cindex intrinsics, Logical
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Logical} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Long Intrinsic
+-@subsubsection Long Intrinsic
+-@cindex Long intrinsic
+-@cindex intrinsics, Long
+-
+-@noindent
+-@example
+-Long(@var{A})
+-@end example
+-
+-@noindent
+-Long: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=6)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{INT()} that is specific
+-to one type for @var{A}.
+-@xref{Int Intrinsic}.
+-
+-The precise meaning of this intrinsic might change
+-in a future version of the GNU Fortran language,
+-as more is learned about how it is used.
+-
+-@end ifset
+-@ifset familyF2C
+-@node LShift Intrinsic
+-@subsubsection LShift Intrinsic
+-@cindex LShift intrinsic
+-@cindex intrinsics, LShift
+-
+-@noindent
+-@example
+-LShift(@var{I}, @var{Shift})
+-@end example
+-
+-@noindent
+-LShift: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Shift}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{I} shifted to the left
+-@var{Shift} bits.
+-
+-Although similar to the expression
+-@samp{@var{I}*(2**@var{Shift})}, there
+-are important differences.
+-For example, the sign of the result is
+-not necessarily the same as the sign of
+-@var{I}.
+-
+-Currently this intrinsic is defined assuming
+-the underlying representation of @var{I}
+-is as a two's-complement integer.
+-It is unclear at this point whether that
+-definition will apply when a different
+-representation is involved.
+-
+-@xref{LShift Intrinsic}, for the inverse of this function.
+-
+-@xref{IShft Intrinsic}, for information
+-on a more widely available left-shifting
+-intrinsic that is also more precisely defined.
+-
+-@end ifset
+-@ifset familyF2U
+-@node LStat Intrinsic (subroutine)
+-@subsubsection LStat Intrinsic (subroutine)
+-@cindex LStat intrinsic
+-@cindex intrinsics, LStat
+-
+-@noindent
+-@example
+-CALL LStat(@var{File}, @var{SArray}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the given file @var{File} and places them in the array
+-@var{SArray}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-If @var{File} is a symbolic link it returns data on the
+-link itself, so the routine is available only on systems that support
+-symbolic links.
+-The values in this array are extracted from the
+-@code{stat} structure as returned by @code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return
+-(@code{ENOSYS} if the system does not provide @code{lstat(2)}).
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{LStat Intrinsic (function)}.
+-
+-@node LStat Intrinsic (function)
+-@subsubsection LStat Intrinsic (function)
+-@cindex LStat intrinsic
+-@cindex intrinsics, LStat
+-
+-@noindent
+-@example
+-LStat(@var{File}, @var{SArray})
+-@end example
+-
+-@noindent
+-LStat: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the given file @var{File} and places them in the array
+-@var{SArray}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-If @var{File} is a symbolic link it returns data on the
+-link itself, so the routine is available only on systems that support
+-symbolic links.
+-The values in this array are extracted from the
+-@code{stat} structure as returned by @code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-Returns 0 on success or a non-zero error code
+-(@code{ENOSYS} if the system does not provide @code{lstat(2)}).
+-
+-For information on other intrinsics with the same name:
+-@xref{LStat Intrinsic (subroutine)}.
+-
+-@node LTime Intrinsic
+-@subsubsection LTime Intrinsic
+-@cindex LTime intrinsic
+-@cindex intrinsics, LTime
+-
+-@noindent
+-@example
+-CALL LTime(@var{STime}, @var{TArray})
+-@end example
+-
+-@noindent
+-@var{STime}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{TArray}: @code{INTEGER(KIND=1)}; DIMENSION(9); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Given a system time value @var{STime}, fills @var{TArray} with values
+-extracted from it appropriate to the GMT time zone using
+-@code{localtime(3)}.
+-
+-The array elements are as follows:
+-
+-@enumerate
+-@item
+-Seconds after the minute, range 0--59 or 0--61 to allow for leap
+-seconds
+-
+-@item
+-Minutes after the hour, range 0--59
+-
+-@item
+-Hours past midnight, range 0--23
+-
+-@item
+-Day of month, range 0--31
+-
+-@item
+-Number of months since January, range 0--12
+-
+-@item
+-Years since 1900
+-
+-@item
+-Number of days since Sunday, range 0--6
+-
+-@item
+-Days since January 1
+-
+-@item
+-Daylight savings indicator: positive if daylight savings is in effect,
+-zero if not, and negative if the information isn't available.
+-@end enumerate
+-
+-@end ifset
+-@ifset familyF90
+-@node MatMul Intrinsic
+-@subsubsection MatMul Intrinsic
+-@cindex MatMul intrinsic
+-@cindex intrinsics, MatMul
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MatMul} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Max Intrinsic
+-@subsubsection Max Intrinsic
+-@cindex Max intrinsic
+-@cindex intrinsics, Max
+-
+-@noindent
+-@example
+-Max(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Max: @code{INTEGER} or @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{A}: @code{INTEGER} or @code{REAL}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the argument with the largest value.
+-
+-@xref{Min Intrinsic}, for the opposite function.
+-
+-@node Max0 Intrinsic
+-@subsubsection Max0 Intrinsic
+-@cindex Max0 intrinsic
+-@cindex intrinsics, Max0
+-
+-@noindent
+-@example
+-Max0(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Max0: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MAX()} that is specific
+-to one type for @var{A}.
+-@xref{Max Intrinsic}.
+-
+-@node Max1 Intrinsic
+-@subsubsection Max1 Intrinsic
+-@cindex Max1 intrinsic
+-@cindex intrinsics, Max1
+-
+-@noindent
+-@example
+-Max1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Max1: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MAX()} that is specific
+-to one type for @var{A} and a different return type.
+-@xref{Max Intrinsic}.
+-
+-@end ifset
+-@ifset familyF90
+-@node MaxExponent Intrinsic
+-@subsubsection MaxExponent Intrinsic
+-@cindex MaxExponent intrinsic
+-@cindex intrinsics, MaxExponent
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MaxExponent} to use this name for an
+-external procedure.
+-
+-@node MaxLoc Intrinsic
+-@subsubsection MaxLoc Intrinsic
+-@cindex MaxLoc intrinsic
+-@cindex intrinsics, MaxLoc
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MaxLoc} to use this name for an
+-external procedure.
+-
+-@node MaxVal Intrinsic
+-@subsubsection MaxVal Intrinsic
+-@cindex MaxVal intrinsic
+-@cindex intrinsics, MaxVal
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MaxVal} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node MClock Intrinsic
+-@subsubsection MClock Intrinsic
+-@cindex MClock intrinsic
+-@cindex intrinsics, MClock
+-
+-@noindent
+-@example
+-MClock()
+-@end example
+-
+-@noindent
+-MClock: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the number of clock ticks since the start of the process.
+-Supported on systems with @code{clock(3)} (q.v.).
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-This intrinsic is not fully portable, such as to systems
+-with 32-bit @code{INTEGER} types but supporting times
+-wider than 32 bits.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-@xref{MClock8 Intrinsic}, for information on a
+-similar intrinsic that might be portable to more
+-GNU Fortran implementations, though to fewer
+-Fortran compilers.
+-
+-If the system does not support @code{clock(3)},
+--1 is returned.
+-
+-@node MClock8 Intrinsic
+-@subsubsection MClock8 Intrinsic
+-@cindex MClock8 intrinsic
+-@cindex intrinsics, MClock8
+-
+-@noindent
+-@example
+-MClock8()
+-@end example
+-
+-@noindent
+-MClock8: @code{INTEGER(KIND=2)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the number of clock ticks since the start of the process.
+-Supported on systems with @code{clock(3)} (q.v.).
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-@emph{Warning:} this intrinsic does not increase the range
+-of the timing values over that returned by @code{clock(3)}.
+-On a system with a 32-bit @code{clock(3)},
+-@code{MCLOCK8} will return a 32-bit value,
+-even though converted to an @samp{INTEGER(KIND=2)} value.
+-That means overflows of the 32-bit value can still occur.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-No Fortran implementations other than GNU Fortran are
+-known to support this intrinsic at the time of this
+-writing.
+-@xref{MClock Intrinsic}, for information on a
+-similar intrinsic that might be portable to more Fortran
+-compilers, though to fewer GNU Fortran implementations.
+-
+-If the system does not support @code{clock(3)},
+--1 is returned.
+-
+-@end ifset
+-@ifset familyF90
+-@node Merge Intrinsic
+-@subsubsection Merge Intrinsic
+-@cindex Merge intrinsic
+-@cindex intrinsics, Merge
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Merge} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Min Intrinsic
+-@subsubsection Min Intrinsic
+-@cindex Min intrinsic
+-@cindex intrinsics, Min
+-
+-@noindent
+-@example
+-Min(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Min: @code{INTEGER} or @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{A}: @code{INTEGER} or @code{REAL}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the argument with the smallest value.
+-
+-@xref{Max Intrinsic}, for the opposite function.
+-
+-@node Min0 Intrinsic
+-@subsubsection Min0 Intrinsic
+-@cindex Min0 intrinsic
+-@cindex intrinsics, Min0
+-
+-@noindent
+-@example
+-Min0(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Min0: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MIN()} that is specific
+-to one type for @var{A}.
+-@xref{Min Intrinsic}.
+-
+-@node Min1 Intrinsic
+-@subsubsection Min1 Intrinsic
+-@cindex Min1 intrinsic
+-@cindex intrinsics, Min1
+-
+-@noindent
+-@example
+-Min1(@var{A}-1, @var{A}-2, @dots{}, @var{A}-n)
+-@end example
+-
+-@noindent
+-Min1: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=1)}; at least two such arguments must be provided; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{MIN()} that is specific
+-to one type for @var{A} and a different return type.
+-@xref{Min Intrinsic}.
+-
+-@end ifset
+-@ifset familyF90
+-@node MinExponent Intrinsic
+-@subsubsection MinExponent Intrinsic
+-@cindex MinExponent intrinsic
+-@cindex intrinsics, MinExponent
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MinExponent} to use this name for an
+-external procedure.
+-
+-@node MinLoc Intrinsic
+-@subsubsection MinLoc Intrinsic
+-@cindex MinLoc intrinsic
+-@cindex intrinsics, MinLoc
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MinLoc} to use this name for an
+-external procedure.
+-
+-@node MinVal Intrinsic
+-@subsubsection MinVal Intrinsic
+-@cindex MinVal intrinsic
+-@cindex intrinsics, MinVal
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL MinVal} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Mod Intrinsic
+-@subsubsection Mod Intrinsic
+-@cindex Mod intrinsic
+-@cindex intrinsics, Mod
+-
+-@noindent
+-@example
+-Mod(@var{A}, @var{P})
+-@end example
+-
+-@noindent
+-Mod: @code{INTEGER} or @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{A}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{P}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns remainder calculated as:
+-
+-@smallexample
+-@var{A} - (INT(@var{A} / @var{P}) * @var{P})
+-@end smallexample
+-
+-@var{P} must not be zero.
+-
+-@end ifset
+-@ifset familyF90
+-@node Modulo Intrinsic
+-@subsubsection Modulo Intrinsic
+-@cindex Modulo intrinsic
+-@cindex intrinsics, Modulo
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Modulo} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyMIL
+-@node MvBits Intrinsic
+-@subsubsection MvBits Intrinsic
+-@cindex MvBits intrinsic
+-@cindex intrinsics, MvBits
+-
+-@noindent
+-@example
+-CALL MvBits(@var{From}, @var{FromPos}, @var{Len}, @var{TO}, @var{ToPos})
+-@end example
+-
+-@noindent
+-@var{From}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{FromPos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Len}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{TO}: @code{INTEGER} with same @samp{KIND=} value as for @var{From}; scalar; INTENT(INOUT).
+-
+-@noindent
+-@var{ToPos}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Moves @var{Len} bits from positions @var{FromPos} through
+-@samp{@var{FromPos}+@var{Len}-1} of @var{From} to positions @var{ToPos} through
+-@samp{@var{FromPos}+@var{Len}-1} of @var{TO}. The portion of argument
+-@var{TO} not affected by the movement of bits is unchanged. Arguments
+-@var{From} and @var{TO} are permitted to be the same numeric storage
+-unit. The values of @samp{@var{FromPos}+@var{Len}} and
+-@samp{@var{ToPos}+@var{Len}} must be less than or equal to
+-@samp{BIT_SIZE(@var{From})}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Nearest Intrinsic
+-@subsubsection Nearest Intrinsic
+-@cindex Nearest intrinsic
+-@cindex intrinsics, Nearest
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Nearest} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node NInt Intrinsic
+-@subsubsection NInt Intrinsic
+-@cindex NInt intrinsic
+-@cindex intrinsics, NInt
+-
+-@noindent
+-@example
+-NInt(@var{A})
+-@end example
+-
+-@noindent
+-NInt: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude eliminated by rounding to the nearest whole
+-number and with its sign preserved, converted
+-to type @code{INTEGER(KIND=1)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part is
+-rounded and converted.
+-
+-A fractional portion exactly equal to
+-@samp{.5} is rounded to the whole number that
+-is larger in magnitude.
+-(Also called ``Fortran round''.)
+-
+-@xref{Int Intrinsic}, for how to convert, truncate to
+-whole number.
+-
+-@xref{ANInt Intrinsic}, for how to round to nearest whole number
+-without converting.
+-
+-@end ifset
+-@ifset familyMIL
+-@node Not Intrinsic
+-@subsubsection Not Intrinsic
+-@cindex Not intrinsic
+-@cindex intrinsics, Not
+-
+-@noindent
+-@example
+-Not(@var{I})
+-@end example
+-
+-@noindent
+-Not: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{mil}, @code{f90}, @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean NOT of each bit
+-in @var{I}.
+-
+-@end ifset
+-@ifset familyF2C
+-@node Or Intrinsic
+-@subsubsection Or Intrinsic
+-@cindex Or intrinsic
+-@cindex intrinsics, Or
+-
+-@noindent
+-@example
+-Or(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-Or: @code{INTEGER} or @code{LOGICAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean OR of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Pack Intrinsic
+-@subsubsection Pack Intrinsic
+-@cindex Pack intrinsic
+-@cindex intrinsics, Pack
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Pack} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node PError Intrinsic
+-@subsubsection PError Intrinsic
+-@cindex PError intrinsic
+-@cindex intrinsics, PError
+-
+-@noindent
+-@example
+-CALL PError(@var{String})
+-@end example
+-
+-@noindent
+-@var{String}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Prints (on the C @code{stderr} stream) a newline-terminated error
+-message corresponding to the last system error.
+-This is prefixed by @var{String}, a colon and a space.
+-See @code{perror(3)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Precision Intrinsic
+-@subsubsection Precision Intrinsic
+-@cindex Precision intrinsic
+-@cindex intrinsics, Precision
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Precision} to use this name for an
+-external procedure.
+-
+-@node Present Intrinsic
+-@subsubsection Present Intrinsic
+-@cindex Present intrinsic
+-@cindex intrinsics, Present
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Present} to use this name for an
+-external procedure.
+-
+-@node Product Intrinsic
+-@subsubsection Product Intrinsic
+-@cindex Product intrinsic
+-@cindex intrinsics, Product
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Product} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyVXT
+-@node QAbs Intrinsic
+-@subsubsection QAbs Intrinsic
+-@cindex QAbs intrinsic
+-@cindex intrinsics, QAbs
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QAbs} to use this name for an
+-external procedure.
+-
+-@node QACos Intrinsic
+-@subsubsection QACos Intrinsic
+-@cindex QACos intrinsic
+-@cindex intrinsics, QACos
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QACos} to use this name for an
+-external procedure.
+-
+-@node QACosD Intrinsic
+-@subsubsection QACosD Intrinsic
+-@cindex QACosD intrinsic
+-@cindex intrinsics, QACosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QACosD} to use this name for an
+-external procedure.
+-
+-@node QASin Intrinsic
+-@subsubsection QASin Intrinsic
+-@cindex QASin intrinsic
+-@cindex intrinsics, QASin
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QASin} to use this name for an
+-external procedure.
+-
+-@node QASinD Intrinsic
+-@subsubsection QASinD Intrinsic
+-@cindex QASinD intrinsic
+-@cindex intrinsics, QASinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QASinD} to use this name for an
+-external procedure.
+-
+-@node QATan Intrinsic
+-@subsubsection QATan Intrinsic
+-@cindex QATan intrinsic
+-@cindex intrinsics, QATan
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QATan} to use this name for an
+-external procedure.
+-
+-@node QATan2 Intrinsic
+-@subsubsection QATan2 Intrinsic
+-@cindex QATan2 intrinsic
+-@cindex intrinsics, QATan2
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QATan2} to use this name for an
+-external procedure.
+-
+-@node QATan2D Intrinsic
+-@subsubsection QATan2D Intrinsic
+-@cindex QATan2D intrinsic
+-@cindex intrinsics, QATan2D
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QATan2D} to use this name for an
+-external procedure.
+-
+-@node QATanD Intrinsic
+-@subsubsection QATanD Intrinsic
+-@cindex QATanD intrinsic
+-@cindex intrinsics, QATanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QATanD} to use this name for an
+-external procedure.
+-
+-@node QCos Intrinsic
+-@subsubsection QCos Intrinsic
+-@cindex QCos intrinsic
+-@cindex intrinsics, QCos
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QCos} to use this name for an
+-external procedure.
+-
+-@node QCosD Intrinsic
+-@subsubsection QCosD Intrinsic
+-@cindex QCosD intrinsic
+-@cindex intrinsics, QCosD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QCosD} to use this name for an
+-external procedure.
+-
+-@node QCosH Intrinsic
+-@subsubsection QCosH Intrinsic
+-@cindex QCosH intrinsic
+-@cindex intrinsics, QCosH
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QCosH} to use this name for an
+-external procedure.
+-
+-@node QDiM Intrinsic
+-@subsubsection QDiM Intrinsic
+-@cindex QDiM intrinsic
+-@cindex intrinsics, QDiM
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QDiM} to use this name for an
+-external procedure.
+-
+-@node QExp Intrinsic
+-@subsubsection QExp Intrinsic
+-@cindex QExp intrinsic
+-@cindex intrinsics, QExp
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QExp} to use this name for an
+-external procedure.
+-
+-@node QExt Intrinsic
+-@subsubsection QExt Intrinsic
+-@cindex QExt intrinsic
+-@cindex intrinsics, QExt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QExt} to use this name for an
+-external procedure.
+-
+-@node QExtD Intrinsic
+-@subsubsection QExtD Intrinsic
+-@cindex QExtD intrinsic
+-@cindex intrinsics, QExtD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QExtD} to use this name for an
+-external procedure.
+-
+-@node QFloat Intrinsic
+-@subsubsection QFloat Intrinsic
+-@cindex QFloat intrinsic
+-@cindex intrinsics, QFloat
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QFloat} to use this name for an
+-external procedure.
+-
+-@node QInt Intrinsic
+-@subsubsection QInt Intrinsic
+-@cindex QInt intrinsic
+-@cindex intrinsics, QInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QInt} to use this name for an
+-external procedure.
+-
+-@node QLog Intrinsic
+-@subsubsection QLog Intrinsic
+-@cindex QLog intrinsic
+-@cindex intrinsics, QLog
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QLog} to use this name for an
+-external procedure.
+-
+-@node QLog10 Intrinsic
+-@subsubsection QLog10 Intrinsic
+-@cindex QLog10 intrinsic
+-@cindex intrinsics, QLog10
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QLog10} to use this name for an
+-external procedure.
+-
+-@node QMax1 Intrinsic
+-@subsubsection QMax1 Intrinsic
+-@cindex QMax1 intrinsic
+-@cindex intrinsics, QMax1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QMax1} to use this name for an
+-external procedure.
+-
+-@node QMin1 Intrinsic
+-@subsubsection QMin1 Intrinsic
+-@cindex QMin1 intrinsic
+-@cindex intrinsics, QMin1
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QMin1} to use this name for an
+-external procedure.
+-
+-@node QMod Intrinsic
+-@subsubsection QMod Intrinsic
+-@cindex QMod intrinsic
+-@cindex intrinsics, QMod
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QMod} to use this name for an
+-external procedure.
+-
+-@node QNInt Intrinsic
+-@subsubsection QNInt Intrinsic
+-@cindex QNInt intrinsic
+-@cindex intrinsics, QNInt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QNInt} to use this name for an
+-external procedure.
+-
+-@node QSin Intrinsic
+-@subsubsection QSin Intrinsic
+-@cindex QSin intrinsic
+-@cindex intrinsics, QSin
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QSin} to use this name for an
+-external procedure.
+-
+-@node QSinD Intrinsic
+-@subsubsection QSinD Intrinsic
+-@cindex QSinD intrinsic
+-@cindex intrinsics, QSinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QSinD} to use this name for an
+-external procedure.
+-
+-@node QSinH Intrinsic
+-@subsubsection QSinH Intrinsic
+-@cindex QSinH intrinsic
+-@cindex intrinsics, QSinH
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QSinH} to use this name for an
+-external procedure.
+-
+-@node QSqRt Intrinsic
+-@subsubsection QSqRt Intrinsic
+-@cindex QSqRt intrinsic
+-@cindex intrinsics, QSqRt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QSqRt} to use this name for an
+-external procedure.
+-
+-@node QTan Intrinsic
+-@subsubsection QTan Intrinsic
+-@cindex QTan intrinsic
+-@cindex intrinsics, QTan
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QTan} to use this name for an
+-external procedure.
+-
+-@node QTanD Intrinsic
+-@subsubsection QTanD Intrinsic
+-@cindex QTanD intrinsic
+-@cindex intrinsics, QTanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QTanD} to use this name for an
+-external procedure.
+-
+-@node QTanH Intrinsic
+-@subsubsection QTanH Intrinsic
+-@cindex QTanH intrinsic
+-@cindex intrinsics, QTanH
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL QTanH} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Radix Intrinsic
+-@subsubsection Radix Intrinsic
+-@cindex Radix intrinsic
+-@cindex intrinsics, Radix
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Radix} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Rand Intrinsic
+-@subsubsection Rand Intrinsic
+-@cindex Rand intrinsic
+-@cindex intrinsics, Rand
+-
+-@noindent
+-@example
+-Rand(@var{Flag})
+-@end example
+-
+-@noindent
+-Rand: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{Flag}: @code{INTEGER}; OPTIONAL; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns a uniform quasi-random number between 0 and 1.
+-If @var{Flag} is 0, the next number in sequence is returned; if
+-@var{Flag} is 1, the generator is restarted by calling @samp{srand(0)};
+-if @var{Flag} has any other value, it is used as a new seed with
+-@code{srand}.
+-
+-@xref{SRand Intrinsic}.
+-
+-@emph{Note:} As typically implemented (by the routine of the same
+-name in the C library), this random number generator is a very poor
+-one, though the BSD and GNU libraries provide a much better
+-implementation than the `traditional' one.
+-On a different system you
+-almost certainly want to use something better.
+-
+-@end ifset
+-@ifset familyF90
+-@node Random_Number Intrinsic
+-@subsubsection Random_Number Intrinsic
+-@cindex Random_Number intrinsic
+-@cindex intrinsics, Random_Number
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Random_Number} to use this name for an
+-external procedure.
+-
+-@node Random_Seed Intrinsic
+-@subsubsection Random_Seed Intrinsic
+-@cindex Random_Seed intrinsic
+-@cindex intrinsics, Random_Seed
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Random_Seed} to use this name for an
+-external procedure.
+-
+-@node Range Intrinsic
+-@subsubsection Range Intrinsic
+-@cindex Range intrinsic
+-@cindex intrinsics, Range
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Range} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node Real Intrinsic
+-@subsubsection Real Intrinsic
+-@cindex Real intrinsic
+-@cindex intrinsics, Real
+-
+-@noindent
+-@example
+-Real(@var{A})
+-@end example
+-
+-@noindent
+-Real: @code{REAL} function.
+-The exact type is @samp{REAL(KIND=1)} when argument @var{A} is
+-any type other than @code{COMPLEX}, or when it is @code{COMPLEX(KIND=1)}.
+-When @var{A} is any @code{COMPLEX} type other than @code{COMPLEX(KIND=1)},
+-this intrinsic is valid only when used as the argument to
+-@code{REAL()}, as explained below.
+-
+-@noindent
+-@var{A}: @code{INTEGER}, @code{REAL}, or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Converts @var{A} to @code{REAL(KIND=1)}.
+-
+-Use of @code{REAL()} with a @code{COMPLEX} argument
+-(other than @code{COMPLEX(KIND=1)}) is restricted to the following case:
+-
+-@example
+-REAL(REAL(A))
+-@end example
+-
+-@noindent
+-This expression converts the real part of A to
+-@code{REAL(KIND=1)}.
+-
+-@xref{RealPart Intrinsic}, for information on a GNU Fortran
+-intrinsic that extracts the real part of an arbitrary
+-@code{COMPLEX} value.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information.
+-
+-@end ifset
+-@ifset familyGNU
+-@node RealPart Intrinsic
+-@subsubsection RealPart Intrinsic
+-@cindex RealPart intrinsic
+-@cindex intrinsics, RealPart
+-
+-@noindent
+-@example
+-RealPart(@var{Z})
+-@end example
+-
+-@noindent
+-RealPart: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{Z}.
+-
+-@noindent
+-@var{Z}: @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{gnu}.
+-
+-@noindent
+-Description:
+-
+-The real part of @var{Z} is returned, without conversion.
+-
+-@emph{Note:} The way to do this in standard Fortran 90
+-is @samp{REAL(@var{Z})}.
+-However, when, for example, @var{Z} is @code{COMPLEX(KIND=2)},
+-@samp{REAL(@var{Z})} means something different for some compilers
+-that are not true Fortran 90 compilers but offer some
+-extensions standardized by Fortran 90 (such as the
+-@code{DOUBLE COMPLEX} type, also known as @code{COMPLEX(KIND=2)}).
+-
+-The advantage of @code{REALPART()} is that, while not necessarily
+-more or less portable than @code{REAL()}, it is more likely to
+-cause a compiler that doesn't support it to produce a diagnostic
+-than generate incorrect code.
+-
+-@xref{REAL() and AIMAG() of Complex}, for more information.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Rename Intrinsic (subroutine)
+-@subsubsection Rename Intrinsic (subroutine)
+-@cindex Rename intrinsic
+-@cindex intrinsics, Rename
+-
+-@noindent
+-@example
+-CALL Rename(@var{Path1}, @var{Path2}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Renames the file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-See @code{rename(2)}.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{Rename Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node Rename Intrinsic (function)
+-@subsubsection Rename Intrinsic (function)
+-@cindex Rename intrinsic
+-@cindex intrinsics, Rename
+-
+-@noindent
+-@example
+-Rename(@var{Path1}, @var{Path2})
+-@end example
+-
+-@noindent
+-Rename: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Renames the file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-See @code{rename(2)}.
+-Returns 0 on success or a non-zero error code.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{Rename Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Repeat Intrinsic
+-@subsubsection Repeat Intrinsic
+-@cindex Repeat intrinsic
+-@cindex intrinsics, Repeat
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Repeat} to use this name for an
+-external procedure.
+-
+-@node Reshape Intrinsic
+-@subsubsection Reshape Intrinsic
+-@cindex Reshape intrinsic
+-@cindex intrinsics, Reshape
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Reshape} to use this name for an
+-external procedure.
+-
+-@node RRSpacing Intrinsic
+-@subsubsection RRSpacing Intrinsic
+-@cindex RRSpacing intrinsic
+-@cindex intrinsics, RRSpacing
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL RRSpacing} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2C
+-@node RShift Intrinsic
+-@subsubsection RShift Intrinsic
+-@cindex RShift intrinsic
+-@cindex intrinsics, RShift
+-
+-@noindent
+-@example
+-RShift(@var{I}, @var{Shift})
+-@end example
+-
+-@noindent
+-RShift: @code{INTEGER} function, the @samp{KIND=} value of the type being that of argument @var{I}.
+-
+-@noindent
+-@var{I}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Shift}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{I} shifted to the right
+-@var{Shift} bits.
+-
+-Although similar to the expression
+-@samp{@var{I}/(2**@var{Shift})}, there
+-are important differences.
+-For example, the sign of the result is
+-undefined.
+-
+-Currently this intrinsic is defined assuming
+-the underlying representation of @var{I}
+-is as a two's-complement integer.
+-It is unclear at this point whether that
+-definition will apply when a different
+-representation is involved.
+-
+-@xref{RShift Intrinsic}, for the inverse of this function.
+-
+-@xref{IShft Intrinsic}, for information
+-on a more widely available right-shifting
+-intrinsic that is also more precisely defined.
+-
+-@end ifset
+-@ifset familyF90
+-@node Scale Intrinsic
+-@subsubsection Scale Intrinsic
+-@cindex Scale intrinsic
+-@cindex intrinsics, Scale
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Scale} to use this name for an
+-external procedure.
+-
+-@node Scan Intrinsic
+-@subsubsection Scan Intrinsic
+-@cindex Scan intrinsic
+-@cindex intrinsics, Scan
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Scan} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyVXT
+-@node Secnds Intrinsic
+-@subsubsection Secnds Intrinsic
+-@cindex Secnds intrinsic
+-@cindex intrinsics, Secnds
+-
+-@noindent
+-@example
+-Secnds(@var{T})
+-@end example
+-
+-@noindent
+-Secnds: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{T}: @code{REAL(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns the local time in seconds since midnight minus the value
+-@var{T}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-This values returned by this intrinsic
+-become numerically less than previous values
+-(they wrap around) during a single run of the
+-compiler program, under normal circumstances
+-(such as running through the midnight hour).
+-
+-@end ifset
+-@ifset familyF2U
+-@node Second Intrinsic (function)
+-@subsubsection Second Intrinsic (function)
+-@cindex Second intrinsic
+-@cindex intrinsics, Second
+-
+-@noindent
+-@example
+-Second()
+-@end example
+-
+-@noindent
+-Second: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the process's runtime in seconds---the same value as the
+-UNIX function @code{etime} returns.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-For information on other intrinsics with the same name:
+-@xref{Second Intrinsic (subroutine)}.
+-
+-@node Second Intrinsic (subroutine)
+-@subsubsection Second Intrinsic (subroutine)
+-@cindex Second intrinsic
+-@cindex intrinsics, Second
+-
+-@noindent
+-@example
+-CALL Second(@var{Seconds})
+-@end example
+-
+-@noindent
+-@var{Seconds}: @code{REAL}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the process's runtime in seconds in @var{Seconds}---the same value
+-as the UNIX function @code{etime} returns.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-This routine is known from Cray Fortran. @xref{CPU_Time Intrinsic},
+-for a standard equivalent.
+-
+-For information on other intrinsics with the same name:
+-@xref{Second Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Selected_Int_Kind Intrinsic
+-@subsubsection Selected_Int_Kind Intrinsic
+-@cindex Selected_Int_Kind intrinsic
+-@cindex intrinsics, Selected_Int_Kind
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Selected_Int_Kind} to use this name for an
+-external procedure.
+-
+-@node Selected_Real_Kind Intrinsic
+-@subsubsection Selected_Real_Kind Intrinsic
+-@cindex Selected_Real_Kind intrinsic
+-@cindex intrinsics, Selected_Real_Kind
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Selected_Real_Kind} to use this name for an
+-external procedure.
+-
+-@node Set_Exponent Intrinsic
+-@subsubsection Set_Exponent Intrinsic
+-@cindex Set_Exponent intrinsic
+-@cindex intrinsics, Set_Exponent
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Set_Exponent} to use this name for an
+-external procedure.
+-
+-@node Shape Intrinsic
+-@subsubsection Shape Intrinsic
+-@cindex Shape intrinsic
+-@cindex intrinsics, Shape
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Shape} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Short Intrinsic
+-@subsubsection Short Intrinsic
+-@cindex Short intrinsic
+-@cindex intrinsics, Short
+-
+-@noindent
+-@example
+-Short(@var{A})
+-@end example
+-
+-@noindent
+-Short: @code{INTEGER(KIND=6)} function.
+-
+-@noindent
+-@var{A}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns @var{A} with the fractional portion of its
+-magnitude truncated and its sign preserved, converted
+-to type @code{INTEGER(KIND=6)}.
+-
+-If @var{A} is type @code{COMPLEX}, its real part
+-is truncated and converted, and its imaginary part is disgregarded.
+-
+-@xref{Int Intrinsic}.
+-
+-The precise meaning of this intrinsic might change
+-in a future version of the GNU Fortran language,
+-as more is learned about how it is used.
+-
+-@end ifset
+-@ifset familyF77
+-@node Sign Intrinsic
+-@subsubsection Sign Intrinsic
+-@cindex Sign intrinsic
+-@cindex intrinsics, Sign
+-
+-@noindent
+-@example
+-Sign(@var{A}, @var{B})
+-@end example
+-
+-@noindent
+-Sign: @code{INTEGER} or @code{REAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{A}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{B}: @code{INTEGER} or @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns @samp{ABS(@var{A})*@var{s}}, where
+-@var{s} is +1 if @samp{@var{B}.GE.0},
+--1 otherwise.
+-
+-@xref{Abs Intrinsic}, for the function that returns
+-the magnitude of a value.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Signal Intrinsic (subroutine)
+-@subsubsection Signal Intrinsic (subroutine)
+-@cindex Signal intrinsic
+-@cindex intrinsics, Signal
+-
+-@noindent
+-@example
+-CALL Signal(@var{Number}, @var{Handler}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Number}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Handler}: Signal handler (@code{INTEGER FUNCTION} or @code{SUBROUTINE})
+-or dummy/global @code{INTEGER(KIND=1)} scalar.
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=7)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-If @var{Handler} is a an @code{EXTERNAL} routine, arranges for it to be
+-invoked with a single integer argument (of system-dependent length)
+-when signal @var{Number} occurs.
+-If @var{Handler} is an integer, it can be
+-used to turn off handling of signal @var{Number} or revert to its default
+-action.
+-See @code{signal(2)}.
+-
+-Note that @var{Handler} will be called using C conventions,
+-so the value of its argument in Fortran terms
+-Fortran terms is obtained by applying @code{%LOC()} (or @var{LOC()}) to it.
+-
+-The value returned by @code{signal(2)} is written to @var{Status}, if
+-that argument is supplied.
+-Otherwise the return value is ignored.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-@emph{Warning:} Use of the @code{libf2c} run-time library function
+-@samp{signal_} directly
+-(such as via @samp{EXTERNAL SIGNAL})
+-requires use of the @code{%VAL()} construct
+-to pass an @code{INTEGER} value
+-(such as @samp{SIG_IGN} or @samp{SIG_DFL})
+-for the @var{Handler} argument.
+-
+-However, while @samp{CALL SIGNAL(@var{signum}, %VAL(SIG_IGN))}
+-works when @samp{SIGNAL} is treated as an external procedure
+-(and resolves, at link time, to @code{libf2c}'s @samp{signal_} routine),
+-this construct is not valid when @samp{SIGNAL} is recognized
+-as the intrinsic of that name.
+-
+-Therefore, for maximum portability and reliability,
+-code such references to the @samp{SIGNAL} facility as follows:
+-
+-@smallexample
+-INTRINSIC SIGNAL
+-@dots{}
+-CALL SIGNAL(@var{signum}, SIG_IGN)
+-@end smallexample
+-
+-@code{g77} will compile such a call correctly,
+-while other compilers will generally either do so as well
+-or reject the @samp{INTRINSIC SIGNAL} statement via a diagnostic,
+-allowing you to take appropriate action.
+-
+-For information on other intrinsics with the same name:
+-@xref{Signal Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node Signal Intrinsic (function)
+-@subsubsection Signal Intrinsic (function)
+-@cindex Signal intrinsic
+-@cindex intrinsics, Signal
+-
+-@noindent
+-@example
+-Signal(@var{Number}, @var{Handler})
+-@end example
+-
+-@noindent
+-Signal: @code{INTEGER(KIND=7)} function.
+-
+-@noindent
+-@var{Number}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Handler}: Signal handler (@code{INTEGER FUNCTION} or @code{SUBROUTINE})
+-or dummy/global @code{INTEGER(KIND=1)} scalar.
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-If @var{Handler} is a an @code{EXTERNAL} routine, arranges for it to be
+-invoked with a single integer argument (of system-dependent length)
+-when signal @var{Number} occurs.
+-If @var{Handler} is an integer, it can be
+-used to turn off handling of signal @var{Number} or revert to its default
+-action.
+-See @code{signal(2)}.
+-
+-Note that @var{Handler} will be called using C conventions,
+-so the value of its argument in Fortran terms
+-is obtained by applying @code{%LOC()} (or @var{LOC()}) to it.
+-
+-The value returned by @code{signal(2)} is returned.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-@emph{Warning:} If the returned value is stored in
+-an @code{INTEGER(KIND=1)} (default @code{INTEGER}) argument,
+-truncation of the original return value occurs on some systems
+-(such as Alphas, which have 64-bit pointers but 32-bit default integers),
+-with no warning issued by @code{g77} under normal circumstances.
+-
+-Therefore, the following code fragment might silently fail on
+-some systems:
+-
+-@smallexample
+-INTEGER RTN
+-EXTERNAL MYHNDL
+-RTN = SIGNAL(@var{signum}, MYHNDL)
+-@dots{}
+-! Restore original handler:
+-RTN = SIGNAL(@var{signum}, RTN)
+-@end smallexample
+-
+-The reason for the failure is that @samp{RTN} might not hold
+-all the information on the original handler for the signal,
+-thus restoring an invalid handler.
+-This bug could manifest itself as a spurious run-time failure
+-at an arbitrary point later during the program's execution,
+-for example.
+-
+-@emph{Warning:} Use of the @code{libf2c} run-time library function
+-@samp{signal_} directly
+-(such as via @samp{EXTERNAL SIGNAL})
+-requires use of the @code{%VAL()} construct
+-to pass an @code{INTEGER} value
+-(such as @samp{SIG_IGN} or @samp{SIG_DFL})
+-for the @var{Handler} argument.
+-
+-However, while @samp{RTN = SIGNAL(@var{signum}, %VAL(SIG_IGN))}
+-works when @samp{SIGNAL} is treated as an external procedure
+-(and resolves, at link time, to @code{libf2c}'s @samp{signal_} routine),
+-this construct is not valid when @samp{SIGNAL} is recognized
+-as the intrinsic of that name.
+-
+-Therefore, for maximum portability and reliability,
+-code such references to the @samp{SIGNAL} facility as follows:
+-
+-@smallexample
+-INTRINSIC SIGNAL
+-@dots{}
+-RTN = SIGNAL(@var{signum}, SIG_IGN)
+-@end smallexample
+-
+-@code{g77} will compile such a call correctly,
+-while other compilers will generally either do so as well
+-or reject the @samp{INTRINSIC SIGNAL} statement via a diagnostic,
+-allowing you to take appropriate action.
+-
+-For information on other intrinsics with the same name:
+-@xref{Signal Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node Sin Intrinsic
+-@subsubsection Sin Intrinsic
+-@cindex Sin intrinsic
+-@cindex intrinsics, Sin
+-
+-@noindent
+-@example
+-Sin(@var{X})
+-@end example
+-
+-@noindent
+-Sin: @code{REAL} or @code{COMPLEX} function, the exact type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL} or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the sine of @var{X}, an angle measured
+-in radians.
+-
+-@xref{ASin Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node SinD Intrinsic
+-@subsubsection SinD Intrinsic
+-@cindex SinD intrinsic
+-@cindex intrinsics, SinD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL SinD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node SinH Intrinsic
+-@subsubsection SinH Intrinsic
+-@cindex SinH intrinsic
+-@cindex intrinsics, SinH
+-
+-@noindent
+-@example
+-SinH(@var{X})
+-@end example
+-
+-@noindent
+-SinH: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the hyperbolic sine of @var{X}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Sleep Intrinsic
+-@subsubsection Sleep Intrinsic
+-@cindex Sleep intrinsic
+-@cindex intrinsics, Sleep
+-
+-@noindent
+-@example
+-CALL Sleep(@var{Seconds})
+-@end example
+-
+-@noindent
+-@var{Seconds}: @code{INTEGER(KIND=1)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Causes the process to pause for @var{Seconds} seconds.
+-See @code{sleep(2)}.
+-
+-@end ifset
+-@ifset familyF77
+-@node Sngl Intrinsic
+-@subsubsection Sngl Intrinsic
+-@cindex Sngl intrinsic
+-@cindex intrinsics, Sngl
+-
+-@noindent
+-@example
+-Sngl(@var{A})
+-@end example
+-
+-@noindent
+-Sngl: @code{REAL(KIND=1)} function.
+-
+-@noindent
+-@var{A}: @code{REAL(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{REAL()} that is specific
+-to one type for @var{A}.
+-@xref{Real Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node SnglQ Intrinsic
+-@subsubsection SnglQ Intrinsic
+-@cindex SnglQ intrinsic
+-@cindex intrinsics, SnglQ
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL SnglQ} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF90
+-@node Spacing Intrinsic
+-@subsubsection Spacing Intrinsic
+-@cindex Spacing intrinsic
+-@cindex intrinsics, Spacing
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Spacing} to use this name for an
+-external procedure.
+-
+-@node Spread Intrinsic
+-@subsubsection Spread Intrinsic
+-@cindex Spread intrinsic
+-@cindex intrinsics, Spread
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Spread} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node SqRt Intrinsic
+-@subsubsection SqRt Intrinsic
+-@cindex SqRt intrinsic
+-@cindex intrinsics, SqRt
+-
+-@noindent
+-@example
+-SqRt(@var{X})
+-@end example
+-
+-@noindent
+-SqRt: @code{REAL} or @code{COMPLEX} function, the exact type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL} or @code{COMPLEX}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the square root of @var{X}, which must
+-not be negative.
+-
+-To calculate and represent the square root of a negative
+-number, complex arithmetic must be used.
+-For example, @samp{SQRT(COMPLEX(@var{X}))}.
+-
+-The inverse of this function is @samp{SQRT(@var{X}) * SQRT(@var{X})}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node SRand Intrinsic
+-@subsubsection SRand Intrinsic
+-@cindex SRand intrinsic
+-@cindex intrinsics, SRand
+-
+-@noindent
+-@example
+-CALL SRand(@var{Seed})
+-@end example
+-
+-@noindent
+-@var{Seed}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Reinitialises the generator with the seed in @var{Seed}.
+-@xref{IRand Intrinsic}.
+-@xref{Rand Intrinsic}.
+-
+-@node Stat Intrinsic (subroutine)
+-@subsubsection Stat Intrinsic (subroutine)
+-@cindex Stat intrinsic
+-@cindex intrinsics, Stat
+-
+-@noindent
+-@example
+-CALL Stat(@var{File}, @var{SArray}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the given file @var{File} and places them in the array
+-@var{SArray}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-The values in this array are extracted from the
+-@code{stat} structure as returned by @code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{Stat Intrinsic (function)}.
+-
+-@node Stat Intrinsic (function)
+-@subsubsection Stat Intrinsic (function)
+-@cindex Stat intrinsic
+-@cindex intrinsics, Stat
+-
+-@noindent
+-@example
+-Stat(@var{File}, @var{SArray})
+-@end example
+-
+-@noindent
+-Stat: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{SArray}: @code{INTEGER(KIND=1)}; DIMENSION(13); INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Obtains data about the given file @var{File} and places them in the array
+-@var{SArray}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-The values in this array are extracted from the
+-@code{stat} structure as returned by @code{fstat(2)} q.v., as follows:
+-
+-@enumerate
+-@item
+-Device ID
+-
+-@item
+-Inode number
+-
+-@item
+-File mode
+-
+-@item
+-Number of links
+-
+-@item
+-Owner's uid
+-
+-@item
+-Owner's gid
+-
+-@item
+-ID of device containing directory entry for file
+-(0 if not available)
+-
+-@item
+-File size (bytes)
+-
+-@item
+-Last access time
+-
+-@item
+-Last modification time
+-
+-@item
+-Last file status change time
+-
+-@item
+-Preferred I/O block size (-1 if not available)
+-
+-@item
+-Number of blocks allocated (-1 if not available)
+-@end enumerate
+-
+-Not all these elements are relevant on all systems.
+-If an element is not relevant, it is returned as 0.
+-
+-Returns 0 on success or a non-zero error code.
+-
+-For information on other intrinsics with the same name:
+-@xref{Stat Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Sum Intrinsic
+-@subsubsection Sum Intrinsic
+-@cindex Sum intrinsic
+-@cindex intrinsics, Sum
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Sum} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node SymLnk Intrinsic (subroutine)
+-@subsubsection SymLnk Intrinsic (subroutine)
+-@cindex SymLnk intrinsic
+-@cindex intrinsics, SymLnk
+-
+-@noindent
+-@example
+-CALL SymLnk(@var{Path1}, @var{Path2}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Makes a symbolic link from file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return
+-(@code{ENOSYS} if the system does not provide @code{symlink(2)}).
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{SymLnk Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node SymLnk Intrinsic (function)
+-@subsubsection SymLnk Intrinsic (function)
+-@cindex SymLnk intrinsic
+-@cindex intrinsics, SymLnk
+-
+-@noindent
+-@example
+-SymLnk(@var{Path1}, @var{Path2})
+-@end example
+-
+-@noindent
+-SymLnk: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Path1}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Path2}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Makes a symbolic link from file @var{Path1} to @var{Path2}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the names in @var{Path1} and @var{Path2}---otherwise,
+-trailing blanks in @var{Path1} and @var{Path2} are ignored.
+-Returns 0 on success or a non-zero error code
+-(@code{ENOSYS} if the system does not provide @code{symlink(2)}).
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{SymLnk Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node System Intrinsic (subroutine)
+-@subsubsection System Intrinsic (subroutine)
+-@cindex System intrinsic
+-@cindex intrinsics, System
+-
+-@noindent
+-@example
+-CALL System(@var{Command}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{Command}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Passes the command @var{Command} to a shell (see @code{system(3)}).
+-If argument @var{Status} is present, it contains the value returned by
+-@code{system(3)}, presumably 0 if the shell command succeeded.
+-Note that which shell is used to invoke the command is system-dependent
+-and environment-dependent.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{System Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node System Intrinsic (function)
+-@subsubsection System Intrinsic (function)
+-@cindex System intrinsic
+-@cindex intrinsics, System
+-
+-@noindent
+-@example
+-System(@var{Command})
+-@end example
+-
+-@noindent
+-System: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Command}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Passes the command @var{Command} to a shell (see @code{system(3)}).
+-Returns the value returned by
+-@code{system(3)}, presumably 0 if the shell command succeeded.
+-Note that which shell is used to invoke the command is system-dependent
+-and environment-dependent.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-However, the function form can be valid in cases where the
+-actual side effects performed by the call are unimportant to
+-the application.
+-
+-For example, on a UNIX system, @samp{SAME = SYSTEM('cmp a b')}
+-does not perform any side effects likely to be important to the
+-program, so the programmer would not care if the actual system
+-call (and invocation of @code{cmp}) was optimized away in a situation
+-where the return value could be determined otherwise, or was not
+-actually needed (@samp{SAME} not actually referenced after the
+-sample assignment statement).
+-
+-For information on other intrinsics with the same name:
+-@xref{System Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node System_Clock Intrinsic
+-@subsubsection System_Clock Intrinsic
+-@cindex System_Clock intrinsic
+-@cindex intrinsics, System_Clock
+-
+-@noindent
+-@example
+-CALL System_Clock(@var{Count}, @var{Rate}, @var{Max})
+-@end example
+-
+-@noindent
+-@var{Count}: @code{INTEGER(KIND=1)}; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Rate}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-@var{Max}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{f90}.
+-
+-@noindent
+-Description:
+-
+-Returns in @var{Count} the current value of the system clock; this is
+-the value returned by the UNIX function @code{times(2)}
+-in this implementation, but
+-isn't in general.
+-@var{Rate} is the number of clock ticks per second and
+-@var{Max} is the maximum value this can take, which isn't very useful
+-in this implementation since it's just the maximum C @code{unsigned
+-int} value.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-On some systems, the underlying timings are represented
+-using types with sufficiently small limits that overflows
+-(wraparounds) are possible, such as 32-bit types.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-@end ifset
+-@ifset familyF77
+-@node Tan Intrinsic
+-@subsubsection Tan Intrinsic
+-@cindex Tan intrinsic
+-@cindex intrinsics, Tan
+-
+-@noindent
+-@example
+-Tan(@var{X})
+-@end example
+-
+-@noindent
+-Tan: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the tangent of @var{X}, an angle measured
+-in radians.
+-
+-@xref{ATan Intrinsic}, for the inverse of this function.
+-
+-@end ifset
+-@ifset familyVXT
+-@node TanD Intrinsic
+-@subsubsection TanD Intrinsic
+-@cindex TanD intrinsic
+-@cindex intrinsics, TanD
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL TanD} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF77
+-@node TanH Intrinsic
+-@subsubsection TanH Intrinsic
+-@cindex TanH intrinsic
+-@cindex intrinsics, TanH
+-
+-@noindent
+-@example
+-TanH(@var{X})
+-@end example
+-
+-@noindent
+-TanH: @code{REAL} function, the @samp{KIND=} value of the type being that of argument @var{X}.
+-
+-@noindent
+-@var{X}: @code{REAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: (standard FORTRAN 77).
+-
+-@noindent
+-Description:
+-
+-Returns the hyperbolic tangent of @var{X}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Time Intrinsic (UNIX)
+-@subsubsection Time Intrinsic (UNIX)
+-@cindex Time intrinsic
+-@cindex intrinsics, Time
+-
+-@noindent
+-@example
+-Time()
+-@end example
+-
+-@noindent
+-Time: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current time encoded as an integer
+-(in the manner of the UNIX function @code{time(3)}).
+-This value is suitable for passing to @code{CTIME},
+-@code{GMTIME}, and @code{LTIME}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-This intrinsic is not fully portable, such as to systems
+-with 32-bit @code{INTEGER} types but supporting times
+-wider than 32 bits.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-@xref{Time8 Intrinsic}, for information on a
+-similar intrinsic that might be portable to more
+-GNU Fortran implementations, though to fewer
+-Fortran compilers.
+-
+-For information on other intrinsics with the same name:
+-@xref{Time Intrinsic (VXT)}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node Time Intrinsic (VXT)
+-@subsubsection Time Intrinsic (VXT)
+-@cindex Time intrinsic
+-@cindex intrinsics, Time
+-
+-@noindent
+-@example
+-CALL Time(@var{Time})
+-@end example
+-
+-@noindent
+-@var{Time}: @code{CHARACTER*8}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{vxt}.
+-
+-@noindent
+-Description:
+-
+-Returns in @var{Time} a character representation of the current time as
+-obtained from @code{ctime(3)}.
+-
+-@cindex Y10K compliance
+-@cindex Year 10000 compliance
+-@cindex wraparound, Y10K
+-@cindex limits, Y10K
+-Programs making use of this intrinsic
+-might not be Year 10000 (Y10K) compliant.
+-For example, the date might appear,
+-to such programs, to wrap around
+-(change from a larger value to a smaller one)
+-as of the Year 10000.
+-
+-@xref{FDate Intrinsic (subroutine)}, for an equivalent routine.
+-
+-For information on other intrinsics with the same name:
+-@xref{Time Intrinsic (UNIX)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Time8 Intrinsic
+-@subsubsection Time8 Intrinsic
+-@cindex Time8 intrinsic
+-@cindex intrinsics, Time8
+-
+-@noindent
+-@example
+-Time8()
+-@end example
+-
+-@noindent
+-Time8: @code{INTEGER(KIND=2)} function.
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the current time encoded as a long integer
+-(in the manner of the UNIX function @code{time(3)}).
+-This value is suitable for passing to @code{CTIME},
+-@code{GMTIME}, and @code{LTIME}.
+-
+-@cindex wraparound, timings
+-@cindex limits, timings
+-@emph{Warning:} this intrinsic does not increase the range
+-of the timing values over that returned by @code{time(3)}.
+-On a system with a 32-bit @code{time(3)},
+-@code{TIME8} will return a 32-bit value,
+-even though converted to an @samp{INTEGER(KIND=2)} value.
+-That means overflows of the 32-bit value can still occur.
+-Therefore, the values returned by this intrinsic
+-might be, or become, negative,
+-or numerically less than previous values,
+-during a single run of the compiled program.
+-
+-No Fortran implementations other than GNU Fortran are
+-known to support this intrinsic at the time of this
+-writing.
+-@xref{Time Intrinsic (UNIX)}, for information on a
+-similar intrinsic that might be portable to more Fortran
+-compilers, though to fewer GNU Fortran implementations.
+-
+-@end ifset
+-@ifset familyF90
+-@node Tiny Intrinsic
+-@subsubsection Tiny Intrinsic
+-@cindex Tiny intrinsic
+-@cindex intrinsics, Tiny
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Tiny} to use this name for an
+-external procedure.
+-
+-@node Transfer Intrinsic
+-@subsubsection Transfer Intrinsic
+-@cindex Transfer intrinsic
+-@cindex intrinsics, Transfer
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Transfer} to use this name for an
+-external procedure.
+-
+-@node Transpose Intrinsic
+-@subsubsection Transpose Intrinsic
+-@cindex Transpose intrinsic
+-@cindex intrinsics, Transpose
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Transpose} to use this name for an
+-external procedure.
+-
+-@node Trim Intrinsic
+-@subsubsection Trim Intrinsic
+-@cindex Trim intrinsic
+-@cindex intrinsics, Trim
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Trim} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node TtyNam Intrinsic (subroutine)
+-@subsubsection TtyNam Intrinsic (subroutine)
+-@cindex TtyNam intrinsic
+-@cindex intrinsics, TtyNam
+-
+-@noindent
+-@example
+-CALL TtyNam(@var{Unit}, @var{Name})
+-@end example
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Name}: @code{CHARACTER}; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets @var{Name} to the name of the terminal device open on logical unit
+-@var{Unit} or to a blank string if @var{Unit} is not connected to a
+-terminal.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{TtyNam Intrinsic (function)}.
+-
+-@node TtyNam Intrinsic (function)
+-@subsubsection TtyNam Intrinsic (function)
+-@cindex TtyNam intrinsic
+-@cindex intrinsics, TtyNam
+-
+-@noindent
+-@example
+-TtyNam(@var{Unit})
+-@end example
+-
+-@noindent
+-TtyNam: @code{CHARACTER*(*)} function.
+-
+-@noindent
+-@var{Unit}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Returns the name of the terminal device open on logical unit
+-@var{Unit} or a blank string if @var{Unit} is not connected to a
+-terminal.
+-
+-For information on other intrinsics with the same name:
+-@xref{TtyNam Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node UBound Intrinsic
+-@subsubsection UBound Intrinsic
+-@cindex UBound intrinsic
+-@cindex intrinsics, UBound
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL UBound} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2U
+-@node UMask Intrinsic (subroutine)
+-@subsubsection UMask Intrinsic (subroutine)
+-@cindex UMask intrinsic
+-@cindex intrinsics, UMask
+-
+-@noindent
+-@example
+-CALL UMask(@var{Mask}, @var{Old})
+-@end example
+-
+-@noindent
+-@var{Mask}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Old}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Sets the file creation mask to @var{Mask} and returns the old value in
+-argument @var{Old} if it is supplied.
+-See @code{umask(2)}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine.
+-
+-For information on other intrinsics with the same name:
+-@xref{UMask Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node UMask Intrinsic (function)
+-@subsubsection UMask Intrinsic (function)
+-@cindex UMask intrinsic
+-@cindex intrinsics, UMask
+-
+-@noindent
+-@example
+-UMask(@var{Mask})
+-@end example
+-
+-@noindent
+-UMask: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{Mask}: @code{INTEGER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Sets the file creation mask to @var{Mask} and returns the old value.
+-See @code{umask(2)}.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{UMask Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF2U
+-@node Unlink Intrinsic (subroutine)
+-@subsubsection Unlink Intrinsic (subroutine)
+-@cindex Unlink intrinsic
+-@cindex intrinsics, Unlink
+-
+-@noindent
+-@example
+-CALL Unlink(@var{File}, @var{Status})
+-@end example
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{Status}: @code{INTEGER(KIND=1)}; OPTIONAL; scalar; INTENT(OUT).
+-
+-@noindent
+-Intrinsic groups: @code{unix}.
+-
+-@noindent
+-Description:
+-
+-Unlink the file @var{File}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-If the @var{Status} argument is supplied, it contains
+-0 on success or a non-zero error code upon return.
+-See @code{unlink(2)}.
+-
+-Some non-GNU implementations of Fortran provide this intrinsic as
+-only a function, not as a subroutine, or do not support the
+-(optional) @var{Status} argument.
+-
+-For information on other intrinsics with the same name:
+-@xref{Unlink Intrinsic (function)}.
+-
+-@end ifset
+-@ifset familyBADU77
+-@node Unlink Intrinsic (function)
+-@subsubsection Unlink Intrinsic (function)
+-@cindex Unlink intrinsic
+-@cindex intrinsics, Unlink
+-
+-@noindent
+-@example
+-Unlink(@var{File})
+-@end example
+-
+-@noindent
+-Unlink: @code{INTEGER(KIND=1)} function.
+-
+-@noindent
+-@var{File}: @code{CHARACTER}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{badu77}.
+-
+-@noindent
+-Description:
+-
+-Unlink the file @var{File}.
+-A null character (@samp{CHAR(0)}) marks the end of
+-the name in @var{File}---otherwise,
+-trailing blanks in @var{File} are ignored.
+-Returns 0 on success or a non-zero error code.
+-See @code{unlink(2)}.
+-
+-Due to the side effects performed by this intrinsic, the function
+-form is not recommended.
+-
+-For information on other intrinsics with the same name:
+-@xref{Unlink Intrinsic (subroutine)}.
+-
+-@end ifset
+-@ifset familyF90
+-@node Unpack Intrinsic
+-@subsubsection Unpack Intrinsic
+-@cindex Unpack intrinsic
+-@cindex intrinsics, Unpack
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Unpack} to use this name for an
+-external procedure.
+-
+-@node Verify Intrinsic
+-@subsubsection Verify Intrinsic
+-@cindex Verify intrinsic
+-@cindex intrinsics, Verify
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL Verify} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2C
+-@node XOr Intrinsic
+-@subsubsection XOr Intrinsic
+-@cindex XOr intrinsic
+-@cindex intrinsics, XOr
+-
+-@noindent
+-@example
+-XOr(@var{I}, @var{J})
+-@end example
+-
+-@noindent
+-XOr: @code{INTEGER} or @code{LOGICAL} function, the exact type being the result of cross-promoting the
+-types of all the arguments.
+-
+-@noindent
+-@var{I}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-@var{J}: @code{INTEGER} or @code{LOGICAL}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Returns value resulting from boolean exclusive-OR of
+-pair of bits in each of @var{I} and @var{J}.
+-
+-@node ZAbs Intrinsic
+-@subsubsection ZAbs Intrinsic
+-@cindex ZAbs intrinsic
+-@cindex intrinsics, ZAbs
+-
+-@noindent
+-@example
+-ZAbs(@var{A})
+-@end example
+-
+-@noindent
+-ZAbs: @code{REAL(KIND=2)} function.
+-
+-@noindent
+-@var{A}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{ABS()} that is specific
+-to one type for @var{A}.
+-@xref{Abs Intrinsic}.
+-
+-@node ZCos Intrinsic
+-@subsubsection ZCos Intrinsic
+-@cindex ZCos intrinsic
+-@cindex intrinsics, ZCos
+-
+-@noindent
+-@example
+-ZCos(@var{X})
+-@end example
+-
+-@noindent
+-ZCos: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{COS()} that is specific
+-to one type for @var{X}.
+-@xref{Cos Intrinsic}.
+-
+-@node ZExp Intrinsic
+-@subsubsection ZExp Intrinsic
+-@cindex ZExp intrinsic
+-@cindex intrinsics, ZExp
+-
+-@noindent
+-@example
+-ZExp(@var{X})
+-@end example
+-
+-@noindent
+-ZExp: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{EXP()} that is specific
+-to one type for @var{X}.
+-@xref{Exp Intrinsic}.
+-
+-@end ifset
+-@ifset familyVXT
+-@node ZExt Intrinsic
+-@subsubsection ZExt Intrinsic
+-@cindex ZExt intrinsic
+-@cindex intrinsics, ZExt
+-
+-This intrinsic is not yet implemented.
+-The name is, however, reserved as an intrinsic.
+-Use @samp{EXTERNAL ZExt} to use this name for an
+-external procedure.
+-
+-@end ifset
+-@ifset familyF2C
+-@node ZLog Intrinsic
+-@subsubsection ZLog Intrinsic
+-@cindex ZLog intrinsic
+-@cindex intrinsics, ZLog
+-
+-@noindent
+-@example
+-ZLog(@var{X})
+-@end example
+-
+-@noindent
+-ZLog: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{LOG()} that is specific
+-to one type for @var{X}.
+-@xref{Log Intrinsic}.
+-
+-@node ZSin Intrinsic
+-@subsubsection ZSin Intrinsic
+-@cindex ZSin intrinsic
+-@cindex intrinsics, ZSin
+-
+-@noindent
+-@example
+-ZSin(@var{X})
+-@end example
+-
+-@noindent
+-ZSin: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SIN()} that is specific
+-to one type for @var{X}.
+-@xref{Sin Intrinsic}.
+-
+-@node ZSqRt Intrinsic
+-@subsubsection ZSqRt Intrinsic
+-@cindex ZSqRt intrinsic
+-@cindex intrinsics, ZSqRt
+-
+-@noindent
+-@example
+-ZSqRt(@var{X})
+-@end example
+-
+-@noindent
+-ZSqRt: @code{COMPLEX(KIND=2)} function.
+-
+-@noindent
+-@var{X}: @code{COMPLEX(KIND=2)}; scalar; INTENT(IN).
+-
+-@noindent
+-Intrinsic groups: @code{f2c}.
+-
+-@noindent
+-Description:
+-
+-Archaic form of @code{SQRT()} that is specific
+-to one type for @var{X}.
+-@xref{SqRt Intrinsic}.
+-
+-@end ifset
diff --git a/lang/gcc/patches/patch-ab b/lang/gcc/patches/patch-ab
new file mode 100644
index 00000000000..ff2af309a8e
--- /dev/null
+++ b/lang/gcc/patches/patch-ab
@@ -0,0 +1,166 @@
+$NetBSD: patch-ab,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/i386/netbsd-elf.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/i386/netbsd-elf.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,161 @@
++/* Definitions of target machine for GNU compiler,
++ for i386 NetBSD systems.
++ Copyright (C) 1998 Free Software Foundation, Inc.
++
++This file is part of GNU CC.
++
++GNU CC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++GNU CC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU CC; see the file COPYING. If not, write to
++the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
++
++/* This is used on i386 platforms that use the ELF format.
++ This was taken from the NetBSD/alpha configuration, and modified
++ for NetBSD/i386 by Christos Zoulas <christos@netbsd.org> */
++
++/* Get generic i386 definitions. */
++
++/* This goes away when the math-emulator is fixed */
++#define TARGET_CPU_DEFAULT 0400 /* TARGET_NO_FANCY_MATH_387 */
++
++#include <i386/gstabs.h>
++
++/* Get perform_* macros to build libgcc.a. */
++#include <i386/perform.h>
++
++/* Get generic NetBSD ELF definitions. We will override these if necessary. */
++
++#define NETBSD_ELF
++#include <netbsd.h>
++
++#undef ASM_FINAL_SPEC
++
++/* Names to predefine in the preprocessor for this target machine. */
++
++#undef CPP_PREDEFINES
++#define CPP_PREDEFINES "\
++-Dunix -Di386 -D__NetBSD__ -D__ELF__ \
++-Asystem(unix) -Asystem(NetBSD) -Acpu(i386) -Amachine(i386)"
++
++/* Make gcc agree with <machine/ansi.h> */
++
++#undef SIZE_TYPE
++#define SIZE_TYPE "unsigned int"
++
++#undef PTRDIFF_TYPE
++#define PTRDIFF_TYPE "int"
++
++#undef WCHAR_TYPE
++#define WCHAR_TYPE "int"
++
++#undef WCHAR_UNSIGNED
++#define WCHAR_UNSIGNED 0
++
++#undef WCHAR_TYPE_SIZE
++#define WCHAR_TYPE_SIZE 32
++
++/* Output assembler code to FILE to increment profiler label # LABELNO
++ for profiling a function entry. Under NetBSD/i386, the assembler does
++ nothing special with -pg. */
++
++#undef ASM_APP_ON
++#define ASM_APP_ON "#APP\n"
++
++#undef ASM_APP_OFF
++#define ASM_APP_OFF "#NO_APP\n"
++
++#define bsd4_4
++#undef HAS_INIT_SECTION
++
++/* Provide a LINK_SPEC appropriate for a NetBSD/alpha ELF target. Only
++ the linker emulation is i386-specific. The rest are
++ common to all ELF targets, except for the name of the start function. */
++
++#undef LINK_SPEC
++#define LINK_SPEC \
++ "-m elf_i386 \
++ %{assert*} %{R*} \
++ %{shared:-shared} \
++ %{!shared: \
++ -dc -dp \
++ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
++ %{!static: \
++ %{rdynamic:-export-dynamic} \
++ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
++ %{static:-static}}"
++
++#undef DEFAULT_VTABLE_THUNKS
++#define DEFAULT_VTABLE_THUNKS 1
++
++#undef ASM_OUTPUT_ALIGN
++#define ASM_OUTPUT_ALIGN(FILE,LOG) \
++ if ((LOG)!=0) fprintf ((FILE), "\t.align %d\n", 1 << (LOG))
++
++/* This is how we tell the assembler that two symbols have the same value. */
++
++#define ASM_OUTPUT_DEF(FILE,NAME1,NAME2) \
++ do { assemble_name(FILE, NAME1); \
++ fputs(" = ", FILE); \
++ assemble_name(FILE, NAME2); \
++ fputc('\n', FILE); } while (0)
++
++/*
++ * We always use gas here, so we don't worry about ECOFF assembler problems.
++ */
++#undef TARGET_GAS
++#define TARGET_GAS (1)
++
++/* The following macros are stolen from i386v4.h */
++/* These have to be defined to get PIC code correct */
++
++/* This is how to output an element of a case-vector that is relative.
++ This is only used for PIC code. See comments by the `casesi' insn in
++ i386.md for an explanation of the expression this outputs. */
++
++#undef ASM_OUTPUT_ADDR_DIFF_ELT
++#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \
++ fprintf (FILE, "\t.long _GLOBAL_OFFSET_TABLE_+[.-%s%d]\n", LPREFIX, VALUE)
++
++/* Indicate that jump tables go in the text section. This is
++ necessary when compiling PIC code. */
++
++#define JUMP_TABLES_IN_TEXT_SECTION 1
++
++/* Default to pcc-struct-return, because this is the ELF abi and
++ we don't care about compatibility with older gcc versions. */
++#define DEFAULT_PCC_STRUCT_RETURN 1
++
++/* Profiling routines, partially copied from i386/osfrose.h. */
++
++/* Redefine this to use %eax instead of %edx. */
++#undef FUNCTION_PROFILER
++#define FUNCTION_PROFILER(FILE, LABELNO) \
++{ \
++ if (flag_pic) \
++ { \
++ fprintf (FILE, "\tcall __mcount@PLT\n"); \
++ } \
++ else \
++ { \
++ fprintf (FILE, "\tcall __mcount\n"); \
++ } \
++}
++
++/* Put relocations in the constant pool in the writable data section. */
++#undef SELECT_RTX_SECTION
++#define SELECT_RTX_SECTION(MODE,RTX) \
++{ \
++ if (flag_pic && symbolic_operand (RTX)) \
++ data_section (); \
++ else \
++ readonly_data_section (); \
++}
diff --git a/lang/gcc/patches/patch-ac b/lang/gcc/patches/patch-ac
new file mode 100644
index 00000000000..141016ca174
--- /dev/null
+++ b/lang/gcc/patches/patch-ac
@@ -0,0 +1,28 @@
+$NetBSD: patch-ac,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/i386/xm-netbsd.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/i386/xm-netbsd.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,23 @@
++/* Configuration file for i386 hosts running NetBSD.
++ Copyright (C) 1999 Free Software Foundation, Inc.
++
++This file is part of GNU CC.
++
++GNU CC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++GNU CC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU CC; see the file COPYING. If not, write to
++the Free Software Foundation, 59 Temple Place - Suite 330,
++Boston, MA 02111-1307, USA. */
++
++#include <xm-netbsd.h>
++#include <i386/xm-i386.h>
++
diff --git a/lang/gcc/patches/patch-ad b/lang/gcc/patches/patch-ad
new file mode 100644
index 00000000000..423a71ba2b3
--- /dev/null
+++ b/lang/gcc/patches/patch-ad
@@ -0,0 +1,78 @@
+$NetBSD: patch-ad,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/netbsd-elf-common.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/sparc/netbsd-elf-common.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,73 @@
++/* NetBSD/sparc ELF common 32/64 bit configuration */
++
++#define OBJECT_FORMAT_ELF
++#define NETBSD_ELF
++#include <netbsd.h>
++
++/* Fix up CPP_SPEC. This merges the code from <netbsd.h> and <sparc/sparc.h> */
++#undef CPP_SPEC
++#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} \
++%(cpp_cpu) %(cpp_arch) %(cpp_endian) %(cpp_subtarget)"
++
++#undef CPP_PREDEFINES
++#define CPP_PREDEFINES "-D__sparc__ -D__NetBSD__ -D__ELF__ \
++-Asystem(unix) -Asystem(NetBSD)"
++
++#undef SIZE_TYPE
++#define SIZE_TYPE "long unsigned int"
++
++#undef PTRDIFF_TYPE
++#define PTRDIFF_TYPE "long int"
++
++#undef WCHAR_TYPE
++#define WCHAR_TYPE "int"
++
++#undef WCHAR_TYPE_SIZE
++#define WCHAR_TYPE_SIZE 32
++
++#undef WCHAR_UNSIGNED
++#define WCHAR_UNSIGNED 0
++
++#undef PREFERRED_DEBUGGING_TYPE
++#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
++
++/* This is the char to use for continuation (in case we need to turn
++ continuation back on). */
++#undef DBX_CONTIN_CHAR
++#define DBX_CONTIN_CHAR '?'
++
++#undef DBX_REGISTER_NUMBER
++#define DBX_REGISTER_NUMBER(REGNO) \
++ (TARGET_FLAT && REGNO == FRAME_POINTER_REGNUM ? 31 : REGNO)
++
++/* This is how to output a definition of an internal numbered label where
++ PREFIX is the class of label and NUM is the number within the class. */
++
++#undef ASM_OUTPUT_INTERNAL_LABEL
++#define ASM_OUTPUT_INTERNAL_LABEL(FILE,PREFIX,NUM) \
++ fprintf (FILE, ".L%s%d:\n", PREFIX, NUM)
++
++/* This is how to store into the string LABEL
++ the symbol_ref name of an internal numbered label where
++ PREFIX is the class of label and NUM is the number within the class.
++ This is suitable for output with `assemble_name'. */
++
++#undef ASM_GENERATE_INTERNAL_LABEL
++#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \
++ sprintf ((LABEL), "*.L%s%ld", (PREFIX), (long)(NUM))
++
++#undef ASM_SPEC
++#define ASM_SPEC "%{fpic:-K PIC} %{fPIC:-K PIC} \
++%{mlittle-endian:-EL} \
++%(asm_cpu) %(asm_arch)\
++"
++
++#undef STDC_0_IN_SYSTEM_HEADERS
++
++/** We don't have the C++ support for this (yet). */
++#undef DWARF2_UNWIND_INFO
++#define DWARF2_UNWIND_INFO 0
++
++/* XXX Redefine this; <sparc/sparc.h> mucks with it. */
++#undef TARGET_VERSION
++#define TARGET_VERSION fprintf (stderr, " (%s)", TARGET_NAME);
diff --git a/lang/gcc/patches/patch-ae b/lang/gcc/patches/patch-ae
new file mode 100644
index 00000000000..10ded4d3f17
--- /dev/null
+++ b/lang/gcc/patches/patch-ae
@@ -0,0 +1,47 @@
+$NetBSD: patch-ae,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/netbsd-elf.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/sparc/netbsd-elf.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,42 @@
++/* NetBSD/sparc ELF configuration */
++
++/*
++ * Pull in generic SPARC ELF configuration, and then clean up
++ * afterwards
++ */
++#include <sparc/elf.h>
++
++/* Name the target CPU. */
++#ifndef TARGET_CPU_DEFAULT
++#define TARGET_CPU_DEFAULT TARGET_CPU_sparc
++#endif
++
++#undef MULDI3_LIBCALL
++#undef DIVDI3_LIBCALL
++#undef UDIVDI3_LIBCALL
++#undef MODDI3_LIBCALL
++#undef UMODDI3_LIBCALL
++#undef INIT_SUBTARGET_OPTABS
++#define INIT_SUBTARGET_OPTABS
++
++#undef CPP_SUBTARGET_SPEC
++#define CPP_SUBTARGET_SPEC "-D__sparc"
++
++#include <sparc/netbsd-elf-common.h>
++
++#undef LINK_SPEC
++#define LINK_SPEC \
++ "-m elf32_sparc \
++ %{assert*} %{R*} \
++ %{shared:-shared} \
++ %{!shared: \
++ -dy -dc -dp \
++ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
++ %{!static: \
++ %{rdynamic:-export-dynamic} \
++ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
++ %{static:-static}}"
++
++/* Name the port. */
++#undef TARGET_NAME
++#define TARGET_NAME "sparc-netbsdelf"
diff --git a/lang/gcc/patches/patch-af b/lang/gcc/patches/patch-af
new file mode 100644
index 00000000000..e5af2414915
--- /dev/null
+++ b/lang/gcc/patches/patch-af
@@ -0,0 +1,174 @@
+$NetBSD: patch-af,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/netbsd64.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/sparc/netbsd64.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,169 @@
++/* NetBSD/sparc64 ELF configuration */
++
++/*
++ * Pull in generic SPARC64 ELF configuration, and then clean up
++ * afterwards
++ */
++
++/* Let us output 32 bit code as well */
++#define SPARC_BI_ARCH
++
++/* Name the target CPU. This must be before <sparc/sparc.h>. */
++#ifndef TARGET_CPU_DEFAULT
++#define TARGET_CPU_DEFAULT TARGET_CPU_ultrasparc
++#endif
++
++#include <sparc/sp64-elf.h>
++
++#include <sparc/netbsd-elf-common.h>
++
++#undef CPP_SUBTARGET_SPEC
++#define CPP_SUBTARGET_SPEC "-D__sparc64__"
++
++#undef LINK_SPEC64
++#define LINK_SPEC64 \
++ "-m elf64_sparc \
++ %{assert*} %{R*} \
++ %{shared:-shared} \
++ %{!shared: \
++ -dy -dc -dp \
++ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
++ %{!static: \
++ %{rdynamic:-export-dynamic} \
++ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
++ %{static:-static}}"
++
++#undef LINK_SPEC
++#define LINK_SPEC LINK_SPEC64
++
++#ifdef SPARC_BI_ARCH
++
++#undef STARTFILE_SPEC64
++#define STARTFILE_SPEC64 \
++ "%{!shared: \
++ %{pg:gcrt0%O%s} \
++ %{!pg: \
++ %{p:gcrt0%O%s} \
++ %{!p:crt0%O%s}}} \
++ %{!shared:crtbegin%O%s} %{shared:crtbeginS%O%s}"
++
++#undef STARTFILE_SPEC32
++#define STARTFILE_SPEC32 \
++ "%{!shared: \
++ %{pg:/emul/netbsd32/usr/lib/gcrt0%O%s} \
++ %{!pg: \
++ %{p:/emul/netbsd32/usr/lib/gcrt0%O%s} \
++ %{!p:/emul/netbsd32/usr/lib/crt0%O%s}}} \
++ %{!shared:/emul/netbsd32/usr/lib/crtbegin%O%s} %{shared:/emul/netbsd32/usr/lib/crtbeginS%O%s}"
++
++#undef STARTFILE_SPEC
++#if DEFAULT_ARCH32_P
++#define STARTFILE_SPEC "\
++%{m32:" STARTFILE_SPEC32 "} \
++%{m64:" STARTFILE_SPEC64 "} \
++%{!m32:%{!m64:" STARTFILE_SPEC32 "}}"
++#else
++#define STARTFILE_SPEC "\
++%{m32:" STARTFILE_SPEC32 "} \
++%{m64:" STARTFILE_SPEC64 "} \
++%{!m32:%{!m64:" STARTFILE_SPEC64 "}}"
++#endif
++
++#undef ENDFILE_SPEC64
++#define ENDFILE_SPEC64 \
++ "%{!shared:crtend%O%s} %{shared:crtendS%O%s}"
++
++#undef ENDFILE_SPEC32
++#define ENDFILE_SPEC32 \
++ "%{!shared:/emul/netbsd32/usr/lib/crtend%O%s} %{shared:/emul/netbsd32/usr/lib/crtendS%O%s}"
++
++#undef ENDFILE_SPEC
++#if DEFAULT_ARCH32_P
++#define ENDFILE_SPEC "\
++%{m32:" ENDFILE_SPEC32 "} \
++%{m64:" ENDFILE_SPEC64 "} \
++%{!m32:%{!m64:" ENDFILE_SPEC32 "}}"
++#else
++#define ENDFILE_SPEC "\
++%{m32:" ENDFILE_SPEC32 "} \
++%{m64:" ENDFILE_SPEC64 "} \
++%{!m32:%{!m64:" ENDFILE_SPEC64 "}}"
++#endif
++
++#undef SUBTARGET_EXTRA_SPECS
++#define SUBTARGET_EXTRA_SPECS \
++ { "link_arch32", LINK_ARCH32_SPEC }, \
++ { "link_arch64", LINK_ARCH64_SPEC }, \
++ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
++ { "link_arch", LINK_ARCH_SPEC },
++
++#undef LINK_ARCH32_SPEC
++#define LINK_ARCH32_SPEC \
++ "-m elf32_sparc \
++ -Y P,/emul/netbsd32/usr/lib \
++ %{assert*} %{R*} \
++ %{shared:-shared} \
++ %{!shared: \
++ -dy -dc -dp \
++ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
++ %{!static: \
++ %{rdynamic:-export-dynamic} \
++ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
++ %{static:-static}}"
++
++#undef LINK_ARCH64_SPEC
++#define LINK_ARCH64_SPEC LINK_SPEC64
++
++#define LINK_ARCH_SPEC "\
++%{m32:%(link_arch32)} \
++%{m64:%(link_arch64)} \
++%{!m32:%{!m64:%(link_arch_default)}} \
++"
++
++#define LINK_ARCH_DEFAULT_SPEC \
++(DEFAULT_ARCH32_P ? LINK_ARCH32_SPEC : LINK_ARCH64_SPEC)
++
++#undef LINK_SPEC
++#define LINK_SPEC "\
++%(link_arch) \
++%{mlittle-endian:-EL} \
++"
++
++#undef CC1_SPEC
++#if DEFAULT_ARCH32_P
++#define CC1_SPEC "\
++%{sun4:} %{target:} \
++%{mcypress:-mcpu=cypress} \
++%{msparclite:-mcpu=sparclite} %{mf930:-mcpu=f930} %{mf934:-mcpu=f934} \
++%{mv8:-mcpu=v8} %{msupersparc:-mcpu=supersparc} \
++%{m64:-mptr64 -mcpu=ultrasparc -mstack-bias} \
++"
++#else
++#define CC1_SPEC "\
++%{sun4:} %{target:} \
++%{mcypress:-mcpu=cypress} \
++%{msparclite:-mcpu=sparclite} %{mf930:-mcpu=f930} %{mf934:-mcpu=f934} \
++%{mv8:-mcpu=v8} %{msupersparc:-mcpu=supersparc} \
++%{m32:-mptr32 -mcpu=cypress -mno-stack-bias} \
++"
++#endif
++
++#if DEFAULT_ARCH32_P
++#define MULTILIB_DEFAULTS { "m32" }
++#else
++#define MULTILIB_DEFAULTS { "m64" }
++#endif
++
++#undef CPP_SUBTARGET_SPEC
++#define CPP_SUBTARGET_SPEC \
++(DEFAULT_ARCH32_P ? "\
++%{m64:-D__sparc64__}%{!m64:-D__sparc} \
++" : "\
++%{!m32:-D__sparc64__}%{m32:-D__sparc} \
++")
++
++#endif /* SPARC_BI_ARCH */
++
++/* Name the port. */
++#undef TARGET_NAME
++#define TARGET_NAME "sparc64-netbsd"
diff --git a/lang/gcc/patches/patch-ag b/lang/gcc/patches/patch-ag
new file mode 100644
index 00000000000..ce8909f1bc0
--- /dev/null
+++ b/lang/gcc/patches/patch-ag
@@ -0,0 +1,16 @@
+$NetBSD: patch-ag,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/sparc.md.orig Thu Oct 21 07:35:40 1999
++++ ../gcc-2.95.2/gcc/config/sparc/sparc.md Sat Sep 16 00:17:42 2000
+@@ -3472,10 +3472,7 @@
+ (define_split
+ [(set (match_operand:TF 0 "register_operand" "")
+ (match_operand:TF 1 "register_operand" ""))]
+- "reload_completed
+- && (! TARGET_ARCH64
+- || (TARGET_FPU
+- && ! TARGET_HARD_QUAD))"
++ "reload_completed"
+ [(clobber (const_int 0))]
+ "
+ {
diff --git a/lang/gcc/patches/patch-ah b/lang/gcc/patches/patch-ah
new file mode 100644
index 00000000000..7f3519b0304
--- /dev/null
+++ b/lang/gcc/patches/patch-ah
@@ -0,0 +1,34 @@
+$NetBSD: patch-ah,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/sysv4.h.orig Mon Jun 21 19:48:53 1999
++++ ../gcc-2.95.2/gcc/config/sparc/sysv4.h Sat Sep 16 00:17:42 2000
+@@ -210,6 +210,29 @@
+ #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
+ asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
+
++/* A C statement (sans semicolon) to output an element in the table of
++ global constructors. */
++#undef ASM_OUTPUT_CONSTRUCTOR
++#define ASM_OUTPUT_CONSTRUCTOR(FILE,NAME) \
++ do { \
++ ctors_section (); \
++ fprintf (FILE, "\t%s\t ", TARGET_ARCH64 ? ASM_LONGLONG : INT_ASM_OP); \
++ assemble_name (FILE, NAME); \
++ fprintf (FILE, "\n"); \
++ } while (0)
++
++/* A C statement (sans semicolon) to output an element in the table of
++ global destructors. */
++#undef ASM_OUTPUT_DESTRUCTOR
++#define ASM_OUTPUT_DESTRUCTOR(FILE,NAME) \
++ do { \
++ dtors_section (); \
++ fprintf (FILE, "\t%s\t ", TARGET_ARCH64 ? ASM_LONGLONG : INT_ASM_OP); \
++ assemble_name (FILE, NAME); \
++ fprintf (FILE, "\n"); \
++ } while (0)
++
++
+ /* Override the name of the mcount profiling function. */
+
+ #undef MCOUNT_FUNCTION
diff --git a/lang/gcc/patches/patch-ai b/lang/gcc/patches/patch-ai
new file mode 100644
index 00000000000..db6cae11bd9
--- /dev/null
+++ b/lang/gcc/patches/patch-ai
@@ -0,0 +1,9 @@
+$NetBSD: patch-ai,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/xm-netbsd.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/sparc/xm-netbsd.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,4 @@
++/* Configuration for GCC for Sun SPARC running NetBSD as host. */
++
++#include <sparc/xm-sparc.h>
++#include <xm-netbsd.h>
diff --git a/lang/gcc/patches/patch-aj b/lang/gcc/patches/patch-aj
new file mode 100644
index 00000000000..7c4f566703e
--- /dev/null
+++ b/lang/gcc/patches/patch-aj
@@ -0,0 +1,9 @@
+$NetBSD: patch-aj,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/sparc/xm-netbsd64.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/sparc/xm-netbsd64.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,4 @@
++/* Configuration for GCC for Sun SPARC V9 running NetBSD as host. */
++
++#include <xm-netbsd.h>
++#include <sparc/xm-sp64.h>
diff --git a/lang/gcc/patches/patch-ak b/lang/gcc/patches/patch-ak
new file mode 100644
index 00000000000..30c0514f068
--- /dev/null
+++ b/lang/gcc/patches/patch-ak
@@ -0,0 +1,49 @@
+$NetBSD: patch-ak,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/elfos.h.orig Fri Mar 26 11:45:26 1999
++++ ../gcc-2.95.2/gcc/config/elfos.h Sat Sep 16 00:17:42 2000
+@@ -48,6 +48,7 @@
+
+ /* Output #ident as a .ident. */
+
++#undef ASM_OUTPUT_IDENT
+ #define ASM_OUTPUT_IDENT(FILE, NAME) \
+ fprintf (FILE, "\t%s\t\"%s\"\n", IDENT_ASM_OP, NAME);
+
+@@ -92,6 +93,10 @@
+ #undef SET_ASM_OP
+ #define SET_ASM_OP ".set"
+
++/* We want local labels to start with period if made with asm_fprintf. */
++#undef LOCAL_LABEL_PREFIX
++#define LOCAL_LABEL_PREFIX "."
++
+ /* This is how to begin an assembly language file. Most svr4 assemblers want
+ at least a .file directive to come first, and some want to see a .version
+ directive come right after that. Here we just establish a default
+@@ -130,7 +135,7 @@
+ #undef ASM_OUTPUT_INTERNAL_LABEL
+ #define ASM_OUTPUT_INTERNAL_LABEL(FILE, PREFIX, NUM) \
+ do { \
+- fprintf (FILE, ".%s%d:\n", PREFIX, NUM); \
++ fprintf (FILE, "%s%s%d:\n", LOCAL_LABEL_PREFIX, PREFIX, NUM); \
+ } while (0)
+
+ /* This is how to store into the string LABEL
+@@ -144,7 +149,7 @@
+ #undef ASM_GENERATE_INTERNAL_LABEL
+ #define ASM_GENERATE_INTERNAL_LABEL(LABEL, PREFIX, NUM) \
+ do { \
+- sprintf (LABEL, "*.%s%d", PREFIX, NUM); \
++ sprintf (LABEL, "*%s%s%d", LOCAL_LABEL_PREFIX, PREFIX, NUM); \
+ } while (0)
+
+ /* Output the label which precedes a jumptable. Note that for all svr4
+@@ -461,6 +466,7 @@
+
+ /* This is how we tell the assembler that a symbol is weak. */
+
++#undef ASM_WEAKEN_LABEL
+ #define ASM_WEAKEN_LABEL(FILE,NAME) \
+ do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \
+ fputc ('\n', FILE); } while (0)
diff --git a/lang/gcc/patches/patch-al b/lang/gcc/patches/patch-al
new file mode 100644
index 00000000000..b462186bb97
--- /dev/null
+++ b/lang/gcc/patches/patch-al
@@ -0,0 +1,104 @@
+$NetBSD: patch-al,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/netbsd.h.orig Wed Dec 16 21:59:58 1998
++++ ../gcc-2.95.2/gcc/config/netbsd.h Sat Sep 16 00:17:42 2000
+@@ -48,17 +48,31 @@
+ #define ASM_SPEC " %| %{fpic:-k} %{fPIC:-k -K}"
+
+ /* Provide a LIB_SPEC appropriate for NetBSD. Just select the appropriate
+- libc, depending on whether we're doing profiling. */
++ libc, depending on whether we're doing profiling; if `-posix' is specified,
++ link against the appropriate libposix first. */
+
+ #undef LIB_SPEC
+-#define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
++#define LIB_SPEC \
++ "%{posix:%{!p:%{!pg:-lposix}}%{p:-lposix_p}%{pg:-lposix_p}} \
++ %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
++
++/* #ifdef NETBSD_AOUT */
++
++/* Provide a STARTFILE_SPEC appropriate for NetBSD a.out. Here we
++ provide support for the special GCC option -static. */
++
++#undef STARTFILE_SPEC
++#define STARTFILE_SPEC \
++ "%{!shared:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:%{!static:crt0%O%s}%{static:scrt0%O%s}}}} %{shared:c++rt0%O%s}"
+
+ /* Provide a LINK_SPEC appropriate for NetBSD. Here we provide support
+ for the special GCC options -static, -assert, and -nostdlib. */
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \
+- "%{!nostdlib:%{!r*:%{!e*:-e start}}} -dc -dp %{R*} %{static:-Bstatic} %{assert*}"
++ "%{nostdlib:-nostdlib} %{!shared:%{!nostdlib:%{!r*:%{!e*:-e start}}} -dc -dp %{static:-Bstatic}} %{shared:-Bshareable} %{R*} %{assert*}"
++
++/* #endif NETBSD_AOUT */
+
+ /* This defines which switch letters take arguments. */
+ #undef SWITCH_TAKES_ARG
+@@ -127,6 +141,9 @@
+ entries in an ELF object file under SVR4. These macros also output
+ the starting labels for the relevant functions/objects. */
+
++/* XXX. This is WRONG for alpha. Needs to be verified on other ELF ports. */
++#ifndef NETBSD_ELF
++
+ /* Write the extra assembler code needed to declare a function properly.
+ Some svr4 assemblers need to also have something extra said about the
+ function's return value. We allow for that here. */
+@@ -207,3 +224,54 @@
+ putc ('\n', FILE); \
+ } \
+ } while (0)
++
++#endif /* ! NETBSD_ELF */
++
++/* NetBSD ELF support begins here. */
++
++#ifdef NETBSD_ELF
++
++/* Start with generic ELF definitions. */
++#include "elfos.h"
++
++#undef DWARF_DEBUGGING_INFO /* XXX */
++#undef DWARF2_DEBUGGING_INFO /* XXX */
++
++/* Provide a STARTFILE_SPEC appropriate for NetBSD ELF targets. Here we
++ provide support for the special GCC option -static. On ELF targets,
++ we also add the crtbegin.o file which provides part of the support
++ for getting C++ file-scope static objects constructed before entering
++ `main'. */
++
++#undef STARTFILE_SPEC
++#define STARTFILE_SPEC \
++ "%{!shared: \
++ %{pg:gcrt0%O%s} \
++ %{!pg: \
++ %{p:gcrt0%O%s} \
++ %{!p:crt0%O%s}}} \
++ %{!shared:crtbegin%O%s} %{shared:crtbeginS%O%s}"
++
++/* Provide an ENDFILE_SPEC appropriate for NetBSD ELF targets. Here we
++ add crtend.o, which provides part of the support for getting C++
++ file-scope static objects deconstructed after exiting `main'. */
++
++#undef ENDFILE_SPEC
++#define ENDFILE_SPEC \
++ "%{!shared:crtend%O%s} %{shared:crtendS%O%s}"
++
++/* Provide a LINK_SPEC appropriate for a NetBSD ELF target. */
++
++#undef LINK_SPEC
++#define LINK_SPEC \
++ "%{assert*} \
++ %{shared:-shared} \
++ %{!shared: \
++ -dc -dp \
++ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \
++ %{!static: \
++ %{rdynamic:-export-dynamic} \
++ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \
++ %{static:-static}}"
++
++#endif /* NETBSD_ELF */
diff --git a/lang/gcc/patches/patch-am b/lang/gcc/patches/patch-am
new file mode 100644
index 00000000000..ff0a4ebd3f9
--- /dev/null
+++ b/lang/gcc/patches/patch-am
@@ -0,0 +1,37 @@
+$NetBSD: patch-am,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/xm-netbsd.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/xm-netbsd.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,32 @@
++/* Configuration for GNU C-compiler for hosts running NetBSD.
++ Copyright (C) 1995 Free Software Foundation, Inc.
++
++This file is part of GNU CC.
++
++GNU CC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++GNU CC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU CC; see the file COPYING. If not, write to
++the Free Software Foundation, 59 Temple Place - Suite 330,
++Boston, MA 02111-1307, USA. */
++
++/* This file defines machine-independent things specific to a host
++ running NetBSD. This file should not be specified as $xm_file itself;
++ instead $xm_file should be CPU/xm-netbsd.h, which should include both
++ CPU/xm-CPU.h and this file xm-netbsd.h. */
++
++#undef POSIX
++#define POSIX
++
++/* Ensure we get gnu C's defaults. */
++#ifdef __GNUC__
++#define alloca __builtin_alloca
++#endif
diff --git a/lang/gcc/patches/patch-an b/lang/gcc/patches/patch-an
new file mode 100644
index 00000000000..ff266bd8c17
--- /dev/null
+++ b/lang/gcc/patches/patch-an
@@ -0,0 +1,11 @@
+$NetBSD: patch-an,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/config/xm-target64.h.orig Sat Sep 16 00:17:42 2000
++++ ../gcc-2.95.2/gcc/config/xm-target64.h Sat Sep 16 00:17:42 2000
+@@ -0,0 +1,6 @@
++/* Hack to extend HOST_WIDE_INT on 64-bit target cross compilers. */
++
++#ifdef __GNUC__
++#define HOST_WIDE_INT long long
++#define HOST_BITS_PER_WIDE_INT 64
++#endif
diff --git a/lang/gcc/patches/patch-ao b/lang/gcc/patches/patch-ao
new file mode 100644
index 00000000000..3b29cbd8ad2
--- /dev/null
+++ b/lang/gcc/patches/patch-ao
@@ -0,0 +1,18 @@
+$NetBSD: patch-ao,v 1.1 2000/09/15 23:58:48 tron Exp $
+
+--- ../gcc-2.95.2/gcc/objc/objc-act.c.orig Wed Apr 14 22:28:54 1999
++++ ../gcc-2.95.2/gcc/objc/objc-act.c Sat Sep 16 00:17:43 2000
+@@ -8399,8 +8399,11 @@
+ pushdecl (decl);
+ rest_of_decl_compilation (decl, 0, 0, 0);
+
+- /* Make following constant read-only (why not)? */
+- readonly_data_section ();
++ /* Make following constant read-only, if not compiling PIC. */
++ if (flag_pic)
++ data_section();
++ else
++ readonly_data_section ();
+
+ exp = build1 (ADDR_EXPR, string_type_node, decl);
+
diff --git a/lang/gcc/patches/patch-ap b/lang/gcc/patches/patch-ap
new file mode 100644
index 00000000000..5c96c29bb10
--- /dev/null
+++ b/lang/gcc/patches/patch-ap
@@ -0,0 +1,12 @@
+$NetBSD: patch-ap,v 1.1 2000/09/15 23:58:49 tron Exp $
+
+--- ../gcc-2.95.2/gcc/collect2.c.orig Tue Oct 12 23:16:52 1999
++++ ../gcc-2.95.2/gcc/collect2.c Sat Sep 16 00:17:41 2000
+@@ -53,7 +53,6 @@
+ #define obstack_chunk_alloc xmalloc
+ #define obstack_chunk_free free
+
+-extern char *make_temp_file PROTO ((char *));
+
+ /* On certain systems, we have code that works by scanning the object file
+ directly. But this code uses system-specific header files and library
diff --git a/lang/gcc/patches/patch-aq b/lang/gcc/patches/patch-aq
new file mode 100644
index 00000000000..da686c11d36
--- /dev/null
+++ b/lang/gcc/patches/patch-aq
@@ -0,0 +1,64 @@
+$NetBSD: patch-aq,v 1.1 2000/09/15 23:58:49 tron Exp $
+
+--- ../gcc-2.95.2/gcc/configure.in.orig Wed Oct 13 09:58:02 1999
++++ ../gcc-2.95.2/gcc/configure.in Sat Sep 16 01:07:10 2000
+@@ -1156,9 +1156,20 @@
+ tmake_file=t-freebsd
+ ;;
+ changequote(,)dnl
++ i[34567]86-*-netbsdelf* | \
++ i[34567]86-*-netbsd1.4[I-Z]* | \
++ i[34567]86-*-netbsd1.[5-9]* | \
++ i[34567]86-*-netbsd2*)
++changequote([,])dnl
++ tm_file=i386/netbsd-elf.h
++ xm_file=i386/xm-netbsd.h
++ tmake_file=t-netbsd
++ ;;
++changequote(,)dnl
+ i[34567]86-*-netbsd*)
+ changequote([,])dnl
+ tm_file=i386/netbsd.h
++ xm_file=i386/xm-netbsd.h
+ tmake_file=t-netbsd
+ use_collect2=yes
+ ;;
+@@ -3021,6 +3032,12 @@
+ tmake_file=sparc/t-sparcbare
+ tm_file="sparc/aout.h libgloss.h"
+ ;;
++ sparc-*-netbsd*elf*)
++ tm_file=sparc/netbsdelf.h
++ xm_file=sparc/xm-netbsd.h
++ tmake_file=t-netbsd
++ use_collect2=yes
++ ;;
+ sparc-*-netbsd*)
+ tm_file=sparc/netbsd.h
+ tmake_file=t-netbsd
+@@ -3216,6 +3233,12 @@
+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+ gnu_ld=yes
+ ;;
++ sparc64-*-netbsd*)
++ tm_file=sparc/netbsd64.h
++ xm_file=sparc/xm-netbsd64.h
++ tmake_file=t-netbsd
++ use_collect2=yes
++ ;;
+ # This hasn't been upgraded to GCC 2.
+ # tahoe-harris-*) # Harris tahoe, using COFF.
+ # tm_file=tahoe/harris.h
+@@ -3556,6 +3579,12 @@
+ enable_haifa=yes;;
+ esac
+ fi
++
++case $target in
++ alpha*|sparc64*)
++ build_xm_file="${build_xm_file} xm-target64.h"
++ host_xm_file="${host_xm_file} xm-target64.h";;
++esac
+
+ # Handle cpp installation.
+ if test x$enable_cpp != xno
diff --git a/lang/gcc/patches/patch-ar b/lang/gcc/patches/patch-ar
new file mode 100644
index 00000000000..c3730d97396
--- /dev/null
+++ b/lang/gcc/patches/patch-ar
@@ -0,0 +1,1737 @@
+$NetBSD: patch-ar,v 1.1 2000/09/15 23:58:49 tron Exp $
+
+--- ../gcc-2.95.2/gcc/configure.orig Wed Oct 13 09:58:02 1999
++++ ../gcc-2.95.2/gcc/configure Sat Sep 16 01:07:10 2000
+@@ -86,6 +86,7 @@
+ program_transform_name=s,x,x,
+ silent=
+ site=
++sitefile=
+ srcdir=
+ target=NONE
+ verbose=
+@@ -200,6 +201,7 @@
+ --help print this message
+ --no-create do not create output files
+ --quiet, --silent do not print \`checking...' messages
++ --site-file=FILE use FILE as the site file
+ --version print the version of autoconf that created configure
+ Directory and file names:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+@@ -370,6 +372,11 @@
+ -site=* | --site=* | --sit=*)
+ site="$ac_optarg" ;;
+
++ -site-file | --site-file | --site-fil | --site-fi | --site-f)
++ ac_prev=sitefile ;;
++ -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*)
++ sitefile="$ac_optarg" ;;
++
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+@@ -535,12 +542,16 @@
+ srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
+
+ # Prefer explicitly selected file to automatically selected ones.
+-if test -z "$CONFIG_SITE"; then
+- if test "x$prefix" != xNONE; then
+- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+- else
+- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
++if test -z "$sitefile"; then
++ if test -z "$CONFIG_SITE"; then
++ if test "x$prefix" != xNONE; then
++ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
++ else
++ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
++ fi
+ fi
++else
++ CONFIG_SITE="$sitefile"
+ fi
+ for ac_site_file in $CONFIG_SITE; do
+ if test -r "$ac_site_file"; then
+@@ -595,7 +606,7 @@
+ # - two terminals occur directly after each other
+ # - the path contains an element with a dot in it
+ echo $ac_n "checking LIBRARY_PATH variable""... $ac_c" 1>&6
+-echo "configure:599: checking LIBRARY_PATH variable" >&5
++echo "configure:610: checking LIBRARY_PATH variable" >&5
+ case ${LIBRARY_PATH} in
+ [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
+ library_path_setting="contains current directory"
+@@ -620,7 +631,7 @@
+ # - two terminals occur directly after each other
+ # - the path contains an element with a dot in it
+ echo $ac_n "checking GCC_EXEC_PREFIX variable""... $ac_c" 1>&6
+-echo "configure:624: checking GCC_EXEC_PREFIX variable" >&5
++echo "configure:635: checking GCC_EXEC_PREFIX variable" >&5
+ case ${GCC_EXEC_PREFIX} in
+ [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
+ gcc_exec_prefix_setting="contains current directory"
+@@ -961,7 +972,7 @@
+ fi
+
+ echo $ac_n "checking host system type""... $ac_c" 1>&6
+-echo "configure:965: checking host system type" >&5
++echo "configure:976: checking host system type" >&5
+
+ host_alias=$host
+ case "$host_alias" in
+@@ -982,7 +993,7 @@
+ echo "$ac_t""$host" 1>&6
+
+ echo $ac_n "checking target system type""... $ac_c" 1>&6
+-echo "configure:986: checking target system type" >&5
++echo "configure:997: checking target system type" >&5
+
+ target_alias=$target
+ case "$target_alias" in
+@@ -1000,7 +1011,7 @@
+ echo "$ac_t""$target" 1>&6
+
+ echo $ac_n "checking build system type""... $ac_c" 1>&6
+-echo "configure:1004: checking build system type" >&5
++echo "configure:1015: checking build system type" >&5
+
+ build_alias=$build
+ case "$build_alias" in
+@@ -1027,7 +1038,7 @@
+ # Extract the first word of "gcc", so it can be a program name with args.
+ set dummy gcc; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1031: checking for $ac_word" >&5
++echo "configure:1042: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1057,7 +1068,7 @@
+ # Extract the first word of "cc", so it can be a program name with args.
+ set dummy cc; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1061: checking for $ac_word" >&5
++echo "configure:1072: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1108,7 +1119,7 @@
+ # Extract the first word of "cl", so it can be a program name with args.
+ set dummy cl; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1112: checking for $ac_word" >&5
++echo "configure:1123: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1140,7 +1151,7 @@
+ fi
+
+ echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
+-echo "configure:1144: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
++echo "configure:1155: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+
+ ac_ext=c
+ # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+@@ -1151,12 +1162,12 @@
+
+ cat > conftest.$ac_ext << EOF
+
+-#line 1155 "configure"
++#line 1166 "configure"
+ #include "confdefs.h"
+
+ main(){return(0);}
+ EOF
+-if { (eval echo configure:1160: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:1171: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ ac_cv_prog_cc_works=yes
+ # If we can't run a trivial program, we are probably using a cross compiler.
+ if (./conftest; exit) 2>/dev/null; then
+@@ -1182,12 +1193,12 @@
+ { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
+ fi
+ echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
+-echo "configure:1186: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
++echo "configure:1197: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+ echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
+ cross_compiling=$ac_cv_prog_cc_cross
+
+ echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
+-echo "configure:1191: checking whether we are using GNU C" >&5
++echo "configure:1202: checking whether we are using GNU C" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1196,7 +1207,7 @@
+ yes;
+ #endif
+ EOF
+-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1200: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
++if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1211: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ ac_cv_prog_gcc=yes
+ else
+ ac_cv_prog_gcc=no
+@@ -1215,7 +1226,7 @@
+ ac_save_CFLAGS="$CFLAGS"
+ CFLAGS=
+ echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
+-echo "configure:1219: checking whether ${CC-cc} accepts -g" >&5
++echo "configure:1230: checking whether ${CC-cc} accepts -g" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1258,7 +1269,7 @@
+
+
+ echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
+-echo "configure:1262: checking whether ${MAKE-make} sets \${MAKE}" >&5
++echo "configure:1273: checking whether ${MAKE-make} sets \${MAKE}" >&5
+ set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -1286,7 +1297,7 @@
+
+
+ echo $ac_n "checking whether a default assembler was specified""... $ac_c" 1>&6
+-echo "configure:1290: checking whether a default assembler was specified" >&5
++echo "configure:1301: checking whether a default assembler was specified" >&5
+ if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
+ if test x"$gas_flag" = x"no"; then
+ echo "$ac_t""yes ($DEFAULT_ASSEMBLER)" 1>&6
+@@ -1298,7 +1309,7 @@
+ fi
+
+ echo $ac_n "checking whether a default linker was specified""... $ac_c" 1>&6
+-echo "configure:1302: checking whether a default linker was specified" >&5
++echo "configure:1313: checking whether a default linker was specified" >&5
+ if test x"${DEFAULT_LINKER+set}" = x"set"; then
+ if test x"$gnu_ld_flag" = x"no"; then
+ echo "$ac_t""yes ($DEFAULT_LINKER)" 1>&6
+@@ -1310,12 +1321,12 @@
+ fi
+
+ # Find some useful tools
+-for ac_prog in gawk mawk nawk awk
++for ac_prog in mawk gawk nawk awk
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+ set dummy $ac_prog; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1319: checking for $ac_word" >&5
++echo "configure:1330: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1347,7 +1358,7 @@
+ # Extract the first word of "flex", so it can be a program name with args.
+ set dummy flex; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1351: checking for $ac_word" >&5
++echo "configure:1362: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1381,7 +1392,7 @@
+ *) ac_lib=l ;;
+ esac
+ echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6
+-echo "configure:1385: checking for yywrap in -l$ac_lib" >&5
++echo "configure:1396: checking for yywrap in -l$ac_lib" >&5
+ ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -1389,7 +1400,7 @@
+ ac_save_LIBS="$LIBS"
+ LIBS="-l$ac_lib $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 1393 "configure"
++#line 1404 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -1400,7 +1411,7 @@
+ yywrap()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1404: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:1415: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -1423,7 +1434,7 @@
+ fi
+
+ echo $ac_n "checking whether ln works""... $ac_c" 1>&6
+-echo "configure:1427: checking whether ln works" >&5
++echo "configure:1438: checking whether ln works" >&5
+ if eval "test \"`echo '$''{'gcc_cv_prog_LN'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1455,7 +1466,7 @@
+ fi
+
+ echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
+-echo "configure:1459: checking whether ln -s works" >&5
++echo "configure:1470: checking whether ln -s works" >&5
+ if eval "test \"`echo '$''{'gcc_cv_prog_LN_S'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1487,19 +1498,19 @@
+ fi
+
+ echo $ac_n "checking for volatile""... $ac_c" 1>&6
+-echo "configure:1491: checking for volatile" >&5
++echo "configure:1502: checking for volatile" >&5
+ if eval "test \"`echo '$''{'gcc_cv_c_volatile'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1496 "configure"
++#line 1507 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ volatile int foo;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1503: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:1514: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gcc_cv_c_volatile=yes
+ else
+@@ -1522,7 +1533,7 @@
+ # Extract the first word of "ranlib", so it can be a program name with args.
+ set dummy ranlib; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1526: checking for $ac_word" >&5
++echo "configure:1537: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1554,7 +1565,7 @@
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+ set dummy $ac_prog; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1558: checking for $ac_word" >&5
++echo "configure:1569: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1595,7 +1606,7 @@
+ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+ # ./install, which can be erroneously created by make from ./install.sh.
+ echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
+-echo "configure:1599: checking for a BSD compatible install" >&5
++echo "configure:1610: checking for a BSD compatible install" >&5
+ if test -z "$INSTALL"; then
+ if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -1646,7 +1657,7 @@
+
+
+ echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+-echo "configure:1650: checking how to run the C preprocessor" >&5
++echo "configure:1661: checking how to run the C preprocessor" >&5
+ # On Suns, sometimes $CPP names a directory.
+ if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+@@ -1661,13 +1672,13 @@
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp.
+ cat > conftest.$ac_ext <<EOF
+-#line 1665 "configure"
++#line 1676 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1671: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -1678,13 +1689,13 @@
+ rm -rf conftest*
+ CPP="${CC-cc} -E -traditional-cpp"
+ cat > conftest.$ac_ext <<EOF
+-#line 1682 "configure"
++#line 1693 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1688: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1699: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -1695,13 +1706,13 @@
+ rm -rf conftest*
+ CPP="${CC-cc} -nologo -E"
+ cat > conftest.$ac_ext <<EOF
+-#line 1699 "configure"
++#line 1710 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1705: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1716: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -1726,12 +1737,12 @@
+ echo "$ac_t""$CPP" 1>&6
+
+ echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
+-echo "configure:1730: checking for ANSI C header files" >&5
++echo "configure:1741: checking for ANSI C header files" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1735 "configure"
++#line 1746 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ #include <stdarg.h>
+@@ -1739,7 +1750,7 @@
+ #include <float.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1754: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -1756,7 +1767,7 @@
+ if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat > conftest.$ac_ext <<EOF
+-#line 1760 "configure"
++#line 1771 "configure"
+ #include "confdefs.h"
+ #include <string.h>
+ EOF
+@@ -1774,7 +1785,7 @@
+ if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat > conftest.$ac_ext <<EOF
+-#line 1778 "configure"
++#line 1789 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ EOF
+@@ -1795,7 +1806,7 @@
+ :
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1799 "configure"
++#line 1810 "configure"
+ #include "confdefs.h"
+ #include <ctype.h>
+ #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+@@ -1806,7 +1817,7 @@
+ exit (0); }
+
+ EOF
+-if { (eval echo configure:1810: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:1821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ :
+ else
+@@ -1830,12 +1841,12 @@
+ fi
+
+ echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
+-echo "configure:1834: checking whether time.h and sys/time.h may both be included" >&5
++echo "configure:1845: checking whether time.h and sys/time.h may both be included" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1839 "configure"
++#line 1850 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #include <sys/time.h>
+@@ -1844,7 +1855,7 @@
+ struct tm *tp;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:1859: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_header_time=yes
+ else
+@@ -1865,12 +1876,12 @@
+ fi
+
+ echo $ac_n "checking whether string.h and strings.h may both be included""... $ac_c" 1>&6
+-echo "configure:1869: checking whether string.h and strings.h may both be included" >&5
++echo "configure:1880: checking whether string.h and strings.h may both be included" >&5
+ if eval "test \"`echo '$''{'gcc_cv_header_string'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1874 "configure"
++#line 1885 "configure"
+ #include "confdefs.h"
+ #include <string.h>
+ #include <strings.h>
+@@ -1878,7 +1889,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:1893: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gcc_cv_header_string=yes
+ else
+@@ -1899,12 +1910,12 @@
+ fi
+
+ echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
+-echo "configure:1903: checking for sys/wait.h that is POSIX.1 compatible" >&5
++echo "configure:1914: checking for sys/wait.h that is POSIX.1 compatible" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1908 "configure"
++#line 1919 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #include <sys/wait.h>
+@@ -1920,7 +1931,7 @@
+ s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1924: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:1935: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_header_sys_wait_h=yes
+ else
+@@ -1944,17 +1955,17 @@
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:1948: checking for $ac_hdr" >&5
++echo "configure:1959: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1953 "configure"
++#line 1964 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1958: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:1969: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -1984,17 +1995,17 @@
+ # Check for thread headers.
+ ac_safe=`echo "thread.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for thread.h""... $ac_c" 1>&6
+-echo "configure:1988: checking for thread.h" >&5
++echo "configure:1999: checking for thread.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1993 "configure"
++#line 2004 "configure"
+ #include "confdefs.h"
+ #include <thread.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1998: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2009: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -2018,17 +2029,17 @@
+
+ ac_safe=`echo "pthread.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for pthread.h""... $ac_c" 1>&6
+-echo "configure:2022: checking for pthread.h" >&5
++echo "configure:2033: checking for pthread.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2027 "configure"
++#line 2038 "configure"
+ #include "confdefs.h"
+ #include <pthread.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2032: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2043: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -2055,7 +2066,7 @@
+ # Extract the first word of "gnatbind", so it can be a program name with args.
+ set dummy gnatbind; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:2059: checking for $ac_word" >&5
++echo "configure:2070: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_gnat'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2086,12 +2097,12 @@
+ # See if the system preprocessor understands the ANSI C preprocessor
+ # stringification operator.
+ echo $ac_n "checking whether cpp understands the stringify operator""... $ac_c" 1>&6
+-echo "configure:2090: checking whether cpp understands the stringify operator" >&5
++echo "configure:2101: checking whether cpp understands the stringify operator" >&5
+ if eval "test \"`echo '$''{'gcc_cv_c_have_stringify'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2095 "configure"
++#line 2106 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -2099,7 +2110,7 @@
+ char *test = S(foo);
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2103: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2114: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gcc_cv_c_have_stringify=yes
+ else
+@@ -2122,12 +2133,12 @@
+ # Use <inttypes.h> only if it exists,
+ # doesn't clash with <sys/types.h>, and declares intmax_t.
+ echo $ac_n "checking for inttypes.h""... $ac_c" 1>&6
+-echo "configure:2126: checking for inttypes.h" >&5
++echo "configure:2137: checking for inttypes.h" >&5
+ if eval "test \"`echo '$''{'gcc_cv_header_inttypes_h'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2131 "configure"
++#line 2142 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #include <inttypes.h>
+@@ -2135,7 +2146,7 @@
+ intmax_t i = -1;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2139: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2150: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gcc_cv_header_inttypes_h=yes
+ else
+@@ -2161,12 +2172,12 @@
+ fputs_unlocked
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:2165: checking for $ac_func" >&5
++echo "configure:2176: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2170 "configure"
++#line 2181 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -2189,7 +2200,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2193: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -2218,12 +2229,12 @@
+ #AC_CHECK_TYPE(wchar_t, unsigned int)
+
+ echo $ac_n "checking for vprintf""... $ac_c" 1>&6
+-echo "configure:2222: checking for vprintf" >&5
++echo "configure:2233: checking for vprintf" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2227 "configure"
++#line 2238 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char vprintf(); below. */
+@@ -2246,7 +2257,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2261: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_vprintf=yes"
+ else
+@@ -2270,12 +2281,12 @@
+
+ if test "$ac_cv_func_vprintf" != yes; then
+ echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
+-echo "configure:2274: checking for _doprnt" >&5
++echo "configure:2285: checking for _doprnt" >&5
+ if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2279 "configure"
++#line 2290 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char _doprnt(); below. */
+@@ -2298,7 +2309,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2302: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2313: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func__doprnt=yes"
+ else
+@@ -2334,7 +2345,7 @@
+
+
+ echo $ac_n "checking whether the printf functions support %p""... $ac_c" 1>&6
+-echo "configure:2338: checking whether the printf functions support %p" >&5
++echo "configure:2349: checking whether the printf functions support %p" >&5
+ if eval "test \"`echo '$''{'gcc_cv_func_printf_ptr'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2342,7 +2353,7 @@
+ gcc_cv_func_printf_ptr=no
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2346 "configure"
++#line 2357 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+
+@@ -2355,7 +2366,7 @@
+ exit (p != q);
+ }
+ EOF
+-if { (eval echo configure:2359: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:2370: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ gcc_cv_func_printf_ptr=yes
+ else
+@@ -2388,12 +2399,12 @@
+ ;;
+ esac
+ echo $ac_n "checking for pid_t""... $ac_c" 1>&6
+-echo "configure:2392: checking for pid_t" >&5
++echo "configure:2403: checking for pid_t" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2397 "configure"
++#line 2408 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #if STDC_HEADERS
+@@ -2422,17 +2433,17 @@
+
+ ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
+-echo "configure:2426: checking for vfork.h" >&5
++echo "configure:2437: checking for vfork.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2431 "configure"
++#line 2442 "configure"
+ #include "confdefs.h"
+ #include <vfork.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2436: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2447: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -2457,18 +2468,18 @@
+ fi
+
+ echo $ac_n "checking for working vfork""... $ac_c" 1>&6
+-echo "configure:2461: checking for working vfork" >&5
++echo "configure:2472: checking for working vfork" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ if test "$cross_compiling" = yes; then
+ echo $ac_n "checking for vfork""... $ac_c" 1>&6
+-echo "configure:2467: checking for vfork" >&5
++echo "configure:2478: checking for vfork" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2472 "configure"
++#line 2483 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char vfork(); below. */
+@@ -2491,7 +2502,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_vfork=yes"
+ else
+@@ -2513,7 +2524,7 @@
+ ac_cv_func_vfork_works=$ac_cv_func_vfork
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2517 "configure"
++#line 2528 "configure"
+ #include "confdefs.h"
+ /* Thanks to Paul Eggert for this test. */
+ #include <stdio.h>
+@@ -2608,7 +2619,7 @@
+ }
+ }
+ EOF
+-if { (eval echo configure:2612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:2623: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_func_vfork_works=yes
+ else
+@@ -2636,12 +2647,12 @@
+ strsignal putc_unlocked fputs_unlocked strstr
+ do
+ echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
+-echo "configure:2640: checking whether $ac_func must be declared" >&5
++echo "configure:2651: checking whether $ac_func must be declared" >&5
+ if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2645 "configure"
++#line 2656 "configure"
+ #include "confdefs.h"
+
+ #include <stdio.h>
+@@ -2674,7 +2685,7 @@
+ char *(*pfn) = (char *(*)) $ac_func
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2678: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2689: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ eval "gcc_cv_decl_needed_$ac_func=no"
+ else
+@@ -2703,12 +2714,12 @@
+ for ac_func in getrlimit setrlimit
+ do
+ echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
+-echo "configure:2707: checking whether $ac_func must be declared" >&5
++echo "configure:2718: checking whether $ac_func must be declared" >&5
+ if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2712 "configure"
++#line 2723 "configure"
+ #include "confdefs.h"
+
+ #include <stdio.h>
+@@ -2745,7 +2756,7 @@
+ char *(*pfn) = (char *(*)) $ac_func
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2749: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ eval "gcc_cv_decl_needed_$ac_func=no"
+ else
+@@ -2772,12 +2783,12 @@
+
+
+ echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6
+-echo "configure:2776: checking for sys_siglist declaration in signal.h or unistd.h" >&5
++echo "configure:2787: checking for sys_siglist declaration in signal.h or unistd.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_decl_sys_siglist'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2781 "configure"
++#line 2792 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #include <signal.h>
+@@ -2789,7 +2800,7 @@
+ char *msg = *(sys_siglist + 1);
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2793: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_decl_sys_siglist=yes
+ else
+@@ -2812,12 +2823,12 @@
+
+ # mkdir takes a single argument on some systems.
+ echo $ac_n "checking if mkdir takes one argument""... $ac_c" 1>&6
+-echo "configure:2816: checking if mkdir takes one argument" >&5
++echo "configure:2827: checking if mkdir takes one argument" >&5
+ if eval "test \"`echo '$''{'gcc_cv_mkdir_takes_one_arg'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2821 "configure"
++#line 2832 "configure"
+ #include "confdefs.h"
+
+ #include <sys/types.h>
+@@ -2834,7 +2845,7 @@
+ mkdir ("foo", 0);
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2838: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2849: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gcc_cv_mkdir_takes_one_arg=no
+ else
+@@ -3552,8 +3563,17 @@
+ tm_file=i386/freebsd.h
+ tmake_file=t-freebsd
+ ;;
++ i[34567]86-*-netbsdelf* | \
++ i[34567]86-*-netbsd1.4[I-Z]* | \
++ i[34567]86-*-netbsd1.[5-9]* | \
++ i[34567]86-*-netbsd2*)
++ tm_file=i386/netbsd-elf.h
++ xm_file=i386/xm-netbsd.h
++ tmake_file=t-netbsd
++ ;;
+ i[34567]86-*-netbsd*)
+ tm_file=i386/netbsd.h
++ xm_file=i386/xm-netbsd.h
+ tmake_file=t-netbsd
+ use_collect2=yes
+ ;;
+@@ -5326,6 +5346,12 @@
+ tmake_file=sparc/t-sparcbare
+ tm_file="sparc/aout.h libgloss.h"
+ ;;
++ sparc-*-netbsd*elf*)
++ tm_file=sparc/netbsdelf.h
++ xm_file=sparc/xm-netbsd.h
++ tmake_file=t-netbsd
++ use_collect2=yes
++ ;;
+ sparc-*-netbsd*)
+ tm_file=sparc/netbsd.h
+ tmake_file=t-netbsd
+@@ -5415,7 +5441,7 @@
+ xmake_file=sparc/x-sysv4
+ extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
+ case $machine in
+- *-*-solaris2.[0-4])
++ *-*-solaris2.0-4)
+ float_format=i128
+ ;;
+ *)
+@@ -5519,6 +5545,12 @@
+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+ gnu_ld=yes
+ ;;
++ sparc64-*-netbsd*)
++ tm_file=sparc/netbsd64.h
++ xm_file=sparc/xm-netbsd64.h
++ tmake_file=t-netbsd
++ use_collect2=yes
++ ;;
+ # This hasn't been upgraded to GCC 2.
+ # tahoe-harris-*) # Harris tahoe, using COFF.
+ # tm_file=tahoe/harris.h
+@@ -5860,6 +5892,12 @@
+ esac
+ fi
+
++case $target in
++ alpha*|sparc64*)
++ build_xm_file="${build_xm_file} xm-target64.h"
++ host_xm_file="${host_xm_file} xm-target64.h";;
++esac
++
+ # Handle cpp installation.
+ if test x$enable_cpp != xno
+ then
+@@ -6049,7 +6087,7 @@
+
+
+ echo $ac_n "checking for strerror in -lcposix""... $ac_c" 1>&6
+-echo "configure:6044: checking for strerror in -lcposix" >&5
++echo "configure:6091: checking for strerror in -lcposix" >&5
+ ac_lib_var=`echo cposix'_'strerror | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -6057,7 +6095,7 @@
+ ac_save_LIBS="$LIBS"
+ LIBS="-lcposix $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 6052 "configure"
++#line 6099 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -6068,7 +6106,7 @@
+ strerror()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6063: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6110: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -6091,12 +6129,12 @@
+
+
+ echo $ac_n "checking for working const""... $ac_c" 1>&6
+-echo "configure:6086: checking for working const" >&5
++echo "configure:6133: checking for working const" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6091 "configure"
++#line 6138 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -6145,7 +6183,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:6187: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_c_const=yes
+ else
+@@ -6166,21 +6204,21 @@
+ fi
+
+ echo $ac_n "checking for inline""... $ac_c" 1>&6
+-echo "configure:6161: checking for inline" >&5
++echo "configure:6208: checking for inline" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ ac_cv_c_inline=no
+ for ac_kw in inline __inline__ __inline; do
+ cat > conftest.$ac_ext <<EOF
+-#line 6168 "configure"
++#line 6215 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ } $ac_kw foo() {
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6175: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:6222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_c_inline=$ac_kw; break
+ else
+@@ -6206,12 +6244,12 @@
+ esac
+
+ echo $ac_n "checking for off_t""... $ac_c" 1>&6
+-echo "configure:6201: checking for off_t" >&5
++echo "configure:6248: checking for off_t" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6206 "configure"
++#line 6253 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #if STDC_HEADERS
+@@ -6239,12 +6277,12 @@
+ fi
+
+ echo $ac_n "checking for size_t""... $ac_c" 1>&6
+-echo "configure:6234: checking for size_t" >&5
++echo "configure:6281: checking for size_t" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6239 "configure"
++#line 6286 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #if STDC_HEADERS
+@@ -6274,19 +6312,19 @@
+ # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
+ # for constant arguments. Useless!
+ echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
+-echo "configure:6269: checking for working alloca.h" >&5
++echo "configure:6316: checking for working alloca.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6274 "configure"
++#line 6321 "configure"
+ #include "confdefs.h"
+ #include <alloca.h>
+ int main() {
+ char *p = alloca(2 * sizeof(int));
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6281: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_cv_header_alloca_h=yes
+ else
+@@ -6307,12 +6345,12 @@
+ fi
+
+ echo $ac_n "checking for alloca""... $ac_c" 1>&6
+-echo "configure:6302: checking for alloca" >&5
++echo "configure:6349: checking for alloca" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6307 "configure"
++#line 6354 "configure"
+ #include "confdefs.h"
+
+ #ifdef __GNUC__
+@@ -6340,7 +6378,7 @@
+ char *p = (char *) alloca(1);
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_cv_func_alloca_works=yes
+ else
+@@ -6372,12 +6410,12 @@
+
+
+ echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
+-echo "configure:6367: checking whether alloca needs Cray hooks" >&5
++echo "configure:6414: checking whether alloca needs Cray hooks" >&5
+ if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6372 "configure"
++#line 6419 "configure"
+ #include "confdefs.h"
+ #if defined(CRAY) && ! defined(CRAY2)
+ webecray
+@@ -6402,12 +6440,12 @@
+ if test $ac_cv_os_cray = yes; then
+ for ac_func in _getb67 GETB67 getb67; do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6397: checking for $ac_func" >&5
++echo "configure:6444: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6402 "configure"
++#line 6449 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6430,7 +6468,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6457,7 +6495,7 @@
+ fi
+
+ echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
+-echo "configure:6452: checking stack direction for C alloca" >&5
++echo "configure:6499: checking stack direction for C alloca" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -6465,7 +6503,7 @@
+ ac_cv_c_stack_direction=0
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6460 "configure"
++#line 6507 "configure"
+ #include "confdefs.h"
+ find_stack_direction ()
+ {
+@@ -6484,7 +6522,7 @@
+ exit (find_stack_direction() < 0);
+ }
+ EOF
+-if { (eval echo configure:6479: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:6526: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_c_stack_direction=1
+ else
+@@ -6509,17 +6547,17 @@
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:6504: checking for $ac_hdr" >&5
++echo "configure:6551: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6509 "configure"
++#line 6556 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:6514: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:6561: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -6548,12 +6586,12 @@
+ for ac_func in getpagesize
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6543: checking for $ac_func" >&5
++echo "configure:6590: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6548 "configure"
++#line 6595 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6576,7 +6614,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6618: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6601,7 +6639,7 @@
+ done
+
+ echo $ac_n "checking for working mmap""... $ac_c" 1>&6
+-echo "configure:6596: checking for working mmap" >&5
++echo "configure:6643: checking for working mmap" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -6609,7 +6647,7 @@
+ ac_cv_func_mmap_fixed_mapped=no
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6604 "configure"
++#line 6651 "configure"
+ #include "confdefs.h"
+
+ /* Thanks to Mike Haertel and Jim Avera for this test.
+@@ -6749,7 +6787,7 @@
+ }
+
+ EOF
+-if { (eval echo configure:6744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:6791: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_func_mmap_fixed_mapped=yes
+ else
+@@ -6777,17 +6815,17 @@
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:6772: checking for $ac_hdr" >&5
++echo "configure:6819: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6777 "configure"
++#line 6824 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:6782: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:6829: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -6817,12 +6855,12 @@
+ strdup __argz_count __argz_stringify __argz_next
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6812: checking for $ac_func" >&5
++echo "configure:6859: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6817 "configure"
++#line 6864 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6845,7 +6883,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6887: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6874,12 +6912,12 @@
+ for ac_func in stpcpy
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6869: checking for $ac_func" >&5
++echo "configure:6916: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6874 "configure"
++#line 6921 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6902,7 +6940,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6897: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6936,19 +6974,19 @@
+
+ if test $ac_cv_header_locale_h = yes; then
+ echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
+-echo "configure:6931: checking for LC_MESSAGES" >&5
++echo "configure:6978: checking for LC_MESSAGES" >&5
+ if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6936 "configure"
++#line 6983 "configure"
+ #include "confdefs.h"
+ #include <locale.h>
+ int main() {
+ return LC_MESSAGES
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6990: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ am_cv_val_LC_MESSAGES=yes
+ else
+@@ -6969,7 +7007,7 @@
+ fi
+ fi
+ echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
+-echo "configure:6964: checking whether NLS is requested" >&5
++echo "configure:7011: checking whether NLS is requested" >&5
+ # Check whether --enable-nls or --disable-nls was given.
+ if test "${enable_nls+set}" = set; then
+ enableval="$enable_nls"
+@@ -6989,7 +7027,7 @@
+ EOF
+
+ echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
+-echo "configure:6984: checking whether included gettext is requested" >&5
++echo "configure:7031: checking whether included gettext is requested" >&5
+ # Check whether --with-included-gettext or --without-included-gettext was given.
+ if test "${with_included_gettext+set}" = set; then
+ withval="$with_included_gettext"
+@@ -7008,17 +7046,17 @@
+
+ ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
+-echo "configure:7003: checking for libintl.h" >&5
++echo "configure:7050: checking for libintl.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 7008 "configure"
++#line 7055 "configure"
+ #include "confdefs.h"
+ #include <libintl.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:7013: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:7060: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -7035,19 +7073,19 @@
+ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6
+-echo "configure:7030: checking for gettext in libc" >&5
++echo "configure:7077: checking for gettext in libc" >&5
+ if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 7035 "configure"
++#line 7082 "configure"
+ #include "confdefs.h"
+ #include <libintl.h>
+ int main() {
+ return (int) gettext ("")
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7042: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7089: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ gt_cv_func_gettext_libc=yes
+ else
+@@ -7063,7 +7101,7 @@
+
+ if test "$gt_cv_func_gettext_libc" != "yes"; then
+ echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
+-echo "configure:7058: checking for bindtextdomain in -lintl" >&5
++echo "configure:7105: checking for bindtextdomain in -lintl" >&5
+ ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -7071,7 +7109,7 @@
+ ac_save_LIBS="$LIBS"
+ LIBS="-lintl $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 7066 "configure"
++#line 7113 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -7082,7 +7120,7 @@
+ bindtextdomain()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7077: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7124: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -7098,12 +7136,12 @@
+ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6
+-echo "configure:7093: checking for gettext in libintl" >&5
++echo "configure:7140: checking for gettext in libintl" >&5
+ if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6
+-echo "configure:7098: checking for gettext in -lintl" >&5
++echo "configure:7145: checking for gettext in -lintl" >&5
+ ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -7111,7 +7149,7 @@
+ ac_save_LIBS="$LIBS"
+ LIBS="-lintl $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 7106 "configure"
++#line 7153 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -7122,7 +7160,7 @@
+ gettext()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7117: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -7161,7 +7199,7 @@
+ # Extract the first word of "msgfmt", so it can be a program name with args.
+ set dummy msgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7156: checking for $ac_word" >&5
++echo "configure:7203: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7195,12 +7233,12 @@
+ for ac_func in dcgettext
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:7190: checking for $ac_func" >&5
++echo "configure:7237: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 7195 "configure"
++#line 7242 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -7223,7 +7261,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7265: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -7250,7 +7288,7 @@
+ # Extract the first word of "gmsgfmt", so it can be a program name with args.
+ set dummy gmsgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7245: checking for $ac_word" >&5
++echo "configure:7292: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7286,7 +7324,7 @@
+ # Extract the first word of "xgettext", so it can be a program name with args.
+ set dummy xgettext; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7281: checking for $ac_word" >&5
++echo "configure:7328: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7318,7 +7356,7 @@
+ fi
+
+ cat > conftest.$ac_ext <<EOF
+-#line 7313 "configure"
++#line 7360 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -7326,7 +7364,7 @@
+ return _nl_msg_cat_cntr
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7321: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7368: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ CATOBJEXT=.gmo
+ DATADIRNAME=share
+@@ -7349,7 +7387,7 @@
+
+ if test "$CATOBJEXT" = "NONE"; then
+ echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
+-echo "configure:7344: checking whether catgets can be used" >&5
++echo "configure:7391: checking whether catgets can be used" >&5
+ # Check whether --with-catgets or --without-catgets was given.
+ if test "${with_catgets+set}" = set; then
+ withval="$with_catgets"
+@@ -7362,7 +7400,7 @@
+
+ if test "$nls_cv_use_catgets" = "yes"; then
+ echo $ac_n "checking for main in -li""... $ac_c" 1>&6
+-echo "configure:7357: checking for main in -li" >&5
++echo "configure:7404: checking for main in -li" >&5
+ ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -7370,14 +7408,14 @@
+ ac_save_LIBS="$LIBS"
+ LIBS="-li $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 7365 "configure"
++#line 7412 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ main()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7372: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7419: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -7405,12 +7443,12 @@
+ fi
+
+ echo $ac_n "checking for catgets""... $ac_c" 1>&6
+-echo "configure:7400: checking for catgets" >&5
++echo "configure:7447: checking for catgets" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 7405 "configure"
++#line 7452 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char catgets(); below. */
+@@ -7433,7 +7471,7 @@
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:7428: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:7475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_catgets=yes"
+ else
+@@ -7455,7 +7493,7 @@
+ # Extract the first word of "gencat", so it can be a program name with args.
+ set dummy gencat; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7450: checking for $ac_word" >&5
++echo "configure:7497: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7491,7 +7529,7 @@
+ # Extract the first word of "gmsgfmt", so it can be a program name with args.
+ set dummy gmsgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7486: checking for $ac_word" >&5
++echo "configure:7533: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7528,7 +7566,7 @@
+ # Extract the first word of "msgfmt", so it can be a program name with args.
+ set dummy msgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7523: checking for $ac_word" >&5
++echo "configure:7570: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7563,7 +7601,7 @@
+ # Extract the first word of "xgettext", so it can be a program name with args.
+ set dummy xgettext; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7558: checking for $ac_word" >&5
++echo "configure:7605: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7621,7 +7659,7 @@
+ # Extract the first word of "msgfmt", so it can be a program name with args.
+ set dummy msgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7616: checking for $ac_word" >&5
++echo "configure:7663: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7655,7 +7693,7 @@
+ # Extract the first word of "gmsgfmt", so it can be a program name with args.
+ set dummy gmsgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7650: checking for $ac_word" >&5
++echo "configure:7697: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7691,7 +7729,7 @@
+ # Extract the first word of "xgettext", so it can be a program name with args.
+ set dummy xgettext; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:7686: checking for $ac_word" >&5
++echo "configure:7733: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -7784,7 +7822,7 @@
+ LINGUAS=
+ else
+ echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
+-echo "configure:7779: checking for catalogs to be installed" >&5
++echo "configure:7826: checking for catalogs to be installed" >&5
+ NEW_LINGUAS=
+ for lang in ${LINGUAS=$ALL_LINGUAS}; do
+ case "$ALL_LINGUAS" in
+@@ -7812,17 +7850,17 @@
+ if test "$CATOBJEXT" = ".cat"; then
+ ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
+-echo "configure:7807: checking for linux/version.h" >&5
++echo "configure:7854: checking for linux/version.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 7812 "configure"
++#line 7859 "configure"
+ #include "confdefs.h"
+ #include <linux/version.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:7817: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:7864: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -8056,7 +8094,7 @@
+
+ # Figure out what assembler alignment features are present.
+ echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6
+-echo "configure:8051: checking assembler alignment features" >&5
++echo "configure:8098: checking assembler alignment features" >&5
+ gcc_cv_as=
+ gcc_cv_as_alignment_features=
+ gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
+@@ -8177,7 +8215,7 @@
+ echo "$ac_t""$gcc_cv_as_alignment_features" 1>&6
+
+ echo $ac_n "checking assembler subsection support""... $ac_c" 1>&6
+-echo "configure:8172: checking assembler subsection support" >&5
++echo "configure:8219: checking assembler subsection support" >&5
+ gcc_cv_as_subsections=
+ if test x$gcc_cv_as != x; then
+ # Check if we have .subsection
+@@ -8217,7 +8255,7 @@
+ echo "$ac_t""$gcc_cv_as_subsections" 1>&6
+
+ echo $ac_n "checking assembler instructions""... $ac_c" 1>&6
+-echo "configure:8212: checking assembler instructions" >&5
++echo "configure:8259: checking assembler instructions" >&5
+ gcc_cv_as_instructions=
+ if test x$gcc_cv_as != x; then
+ set "filds fists" "filds mem; fists mem"
diff --git a/lang/gcc/patches/patch-as b/lang/gcc/patches/patch-as
new file mode 100644
index 00000000000..8bf1e95c6d6
--- /dev/null
+++ b/lang/gcc/patches/patch-as
@@ -0,0 +1,20 @@
+$NetBSD: patch-as,v 1.1 2000/09/15 23:58:49 tron Exp $
+
+--- ../gcc-2.95.2/gcc/emit-rtl.c.orig Wed Aug 11 09:28:52 1999
++++ ../gcc-2.95.2/gcc/emit-rtl.c Sat Sep 16 00:17:42 2000
+@@ -1378,6 +1378,15 @@
+ val = ((val & 0xffffffff) ^ 0x80000000) - 0x80000000;
+ return GEN_INT (val);
+ }
++#if HOST_BITS_PER_WIDE_INT >= 64
++ else if (BITS_PER_WORD >= 64 && i <= 1)
++ {
++ val = k[i*2 + ! WORDS_BIG_ENDIAN];
++ val = (((val & 0xffffffff) ^ 0x80000000) - 0x80000000) << 32;
++ val |= (HOST_WIDE_INT) k[i*2 + WORDS_BIG_ENDIAN] & 0xffffffff;
++ return GEN_INT (val);
++ }
++#endif
+ else
+ abort ();
+ }
diff --git a/lang/gcc/pkg/PLIST b/lang/gcc/pkg/PLIST
index 10464edd797..768ea78662f 100644
--- a/lang/gcc/pkg/PLIST
+++ b/lang/gcc/pkg/PLIST
@@ -1,302 +1,310 @@
-@comment $NetBSD: PLIST,v 1.2 2000/05/23 22:09:59 tron Exp $
-${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/include/_G_config.h
-bin/g++
-bin/c++
-bin/g77
-bin/gcj
-bin/cpp
-bin/gcc
-bin/chill
-bin/c++filt
-bin/gcjh
-bin/jv-scan
-bin/jcf-dump
-bin/protoize
-bin/unprotoize
-bin/gcov
-bin/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}-gcc
-include/g++-3/std/bastring.h
-include/g++-3/std/complext.h
-include/g++-3/std/dcomplex.h
-include/g++-3/std/fcomplex.h
-include/g++-3/std/gslice.h
-include/g++-3/std/gslice_array.h
-include/g++-3/std/indirect_array.h
-include/g++-3/std/ldcomplex.h
-include/g++-3/std/mask_array.h
-include/g++-3/std/slice.h
-include/g++-3/std/slice_array.h
-include/g++-3/std/std_valarray.h
-include/g++-3/std/straits.h
-include/g++-3/std/valarray_array.h
-include/g++-3/std/valarray_meta.h
-include/g++-3/std/bastring.cc
-include/g++-3/std/complext.cc
-include/g++-3/std/valarray_array.tcc
-include/g++-3/PlotFile.h
-include/g++-3/SFile.h
-include/g++-3/builtinbuf.h
-include/g++-3/editbuf.h
-include/g++-3/floatio.h
-include/g++-3/fstream.h
-include/g++-3/indstream.h
-include/g++-3/iolibio.h
-include/g++-3/iomanip.h
-include/g++-3/iostdio.h
-include/g++-3/iostream.h
-include/g++-3/iostreamP.h
-include/g++-3/istream.h
-include/g++-3/libio.h
-include/g++-3/libioP.h
-include/g++-3/ostream.h
-include/g++-3/parsestream.h
-include/g++-3/pfstream.h
-include/g++-3/procbuf.h
-include/g++-3/stdiostream.h
-include/g++-3/stream.h
-include/g++-3/streambuf.h
-include/g++-3/strfile.h
-include/g++-3/strstream.h
-include/g++-3/cassert
-include/g++-3/cctype
-include/g++-3/cerrno
-include/g++-3/cfloat
-include/g++-3/ciso646
-include/g++-3/climits
-include/g++-3/clocale
-include/g++-3/cmath
-include/g++-3/complex
-include/g++-3/csetjmp
-include/g++-3/csignal
-include/g++-3/cstdarg
-include/g++-3/cstddef
-include/g++-3/cstdio
-include/g++-3/cstdlib
-include/g++-3/cstring
-include/g++-3/ctime
-include/g++-3/cwchar
-include/g++-3/cwctype
-include/g++-3/string
-include/g++-3/stdexcept
-include/g++-3/algorithm
-include/g++-3/deque
-include/g++-3/functional
-include/g++-3/hash_map
-include/g++-3/hash_set
-include/g++-3/iterator
-include/g++-3/list
-include/g++-3/map
-include/g++-3/memory
-include/g++-3/numeric
-include/g++-3/pthread_alloc
-include/g++-3/queue
-include/g++-3/rope
-include/g++-3/set
-include/g++-3/slist
-include/g++-3/stack
-include/g++-3/utility
-include/g++-3/vector
-include/g++-3/fstream
-include/g++-3/iomanip
-include/g++-3/iostream
-include/g++-3/strstream
-include/g++-3/iosfwd
-include/g++-3/bitset
-include/g++-3/valarray
-include/g++-3/complex.h
-include/g++-3/stl.h
-include/g++-3/algo.h
-include/g++-3/algobase.h
-include/g++-3/alloc.h
-include/g++-3/bvector.h
-include/g++-3/defalloc.h
-include/g++-3/deque.h
-include/g++-3/function.h
-include/g++-3/hash_map.h
-include/g++-3/hash_set.h
-include/g++-3/hashtable.h
-include/g++-3/heap.h
-include/g++-3/iterator.h
-include/g++-3/list.h
-include/g++-3/map.h
-include/g++-3/multimap.h
-include/g++-3/multiset.h
-include/g++-3/pair.h
-include/g++-3/pthread_alloc.h
-include/g++-3/rope.h
-include/g++-3/ropeimpl.h
-include/g++-3/set.h
-include/g++-3/slist.h
-include/g++-3/stack.h
-include/g++-3/stl_algo.h
-include/g++-3/stl_algobase.h
-include/g++-3/stl_alloc.h
-include/g++-3/stl_bvector.h
-include/g++-3/stl_config.h
-include/g++-3/stl_construct.h
-include/g++-3/stl_deque.h
-include/g++-3/stl_function.h
-include/g++-3/stl_hash_fun.h
-include/g++-3/stl_hash_map.h
-include/g++-3/stl_hash_set.h
-include/g++-3/stl_hashtable.h
-include/g++-3/stl_heap.h
-include/g++-3/stl_iterator.h
-include/g++-3/stl_list.h
-include/g++-3/stl_map.h
-include/g++-3/stl_multimap.h
-include/g++-3/stl_multiset.h
-include/g++-3/stl_numeric.h
-include/g++-3/stl_pair.h
-include/g++-3/stl_queue.h
-include/g++-3/stl_raw_storage_iter.h
-include/g++-3/stl_relops.h
-include/g++-3/stl_rope.h
-include/g++-3/stl_set.h
-include/g++-3/stl_slist.h
-include/g++-3/stl_stack.h
-include/g++-3/stl_tempbuf.h
-include/g++-3/stl_tree.h
-include/g++-3/stl_uninitialized.h
-include/g++-3/stl_vector.h
-include/g++-3/tempbuf.h
-include/g++-3/tree.h
-include/g++-3/type_traits.h
-include/g++-3/vector.h
-info/chill.info
-info/g77.info
-info/g77.info-1
-info/g77.info-10
-info/g77.info-11
-info/g77.info-12
-info/g77.info-13
-info/g77.info-14
-info/g77.info-15
-info/g77.info-16
-info/g77.info-17
-info/g77.info-18
-info/g77.info-19
-info/g77.info-2
-info/g77.info-20
-info/g77.info-21
-info/g77.info-3
-info/g77.info-4
-info/g77.info-5
-info/g77.info-6
-info/g77.info-7
-info/g77.info-8
-info/g77.info-9
-info/cpp.info
-info/cpp.info-1
-info/cpp.info-2
-info/cpp.info-3
-info/gcc.info
-info/gcc.info-1
-info/gcc.info-10
-info/gcc.info-11
-info/gcc.info-12
-info/gcc.info-13
-info/gcc.info-14
-info/gcc.info-15
-info/gcc.info-16
-info/gcc.info-17
-info/gcc.info-18
-info/gcc.info-19
-info/gcc.info-2
-info/gcc.info-20
-info/gcc.info-21
-info/gcc.info-22
-info/gcc.info-23
-info/gcc.info-24
-info/gcc.info-25
-info/gcc.info-26
-info/gcc.info-27
-info/gcc.info-28
-info/gcc.info-29
-info/gcc.info-3
-info/gcc.info-30
-info/gcc.info-4
-info/gcc.info-5
-info/gcc.info-6
-info/gcc.info-7
-info/gcc.info-8
-info/gcc.info-9
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/hash.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/objc-list.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/sarray.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/objc.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/objc-api.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/NXConstStr.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/Object.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/Protocol.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/encoding.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/typedstream.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc/thr.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/g2c.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/cc1
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/cc1chill
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/cc1plus
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/f771
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/jc1
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/jvgenmain
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/cc1obj
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/collect2
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/specs
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/SYSCALLS.c.X
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/cpp
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/libgcc.a
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/libg2c.a
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/libchill.a
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/chillrt0.o
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/libobjc.a
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/libstdc++.a
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/math.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/curses.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/syslimits.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/stdarg.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/stddef.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/varargs.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-alpha.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-h8300.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-i860.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-i960.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-mips.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-m88k.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-mn10200.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-mn10300.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-pa.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-pyr.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-sparc.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-clipper.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-spur.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-m32r.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-sh.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-v850.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-arc.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/iso646.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-ppc.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/va-c4x.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/typeinfo
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/exception
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/new
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/new.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/proto.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/stdbool.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/limits.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/float.h
-lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/README
-lib/libiberty.a
-lib/libstdc++.a.2.10.0
-man/man1/g++.1
-man/man1/g77.1
-man/man1/gcc.1
-man/man1/cccp.1
-@dirrm lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include/objc
-@dirrm lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2/include
-@dirrm lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/2.95.2
-@dirrm lib/gcc-lib/${MACHINE_GNU_ARCH}--${LOWER_OPSYS}
-@dirrm lib/gcc-lib
-@dirrm include/g++-3/std
-@dirrm include/g++-3
-@dirrm ${MACHINE_GNU_ARCH}--${LOWER_OPSYS}/include
-@dirrm ${MACHINE_GNU_ARCH}--${LOWER_OPSYS}
+@comment $NetBSD: PLIST,v 1.3 2000/09/15 23:58:49 tron Exp $
+etc/${PKGNAME}.mk
+${PKGNAME}/${MACHINE_GCC_PLATFORM}/include/_G_config.h
+${PKGNAME}/bin/c++
+${PKGNAME}/bin/c++filt
+${PKGNAME}/bin/cc
+${PKGNAME}/bin/chill
+${PKGNAME}/bin/cpp
+${PKGNAME}/bin/g++
+${PKGNAME}/bin/g77
+${PKGNAME}/bin/gcc
+${PKGNAME}/bin/gcj
+${PKGNAME}/bin/gcjh
+${PKGNAME}/bin/gcov
+${PKGNAME}/bin/jv-scan
+${PKGNAME}/bin/jcf-dump
+${PKGNAME}/bin/protoize
+${PKGNAME}/bin/unprotoize
+${PKGNAME}/bin/${MACHINE_GCC_PLATFORM}-gcc
+${PKGNAME}/include/g++-3/std/bastring.h
+${PKGNAME}/include/g++-3/std/complext.h
+${PKGNAME}/include/g++-3/std/dcomplex.h
+${PKGNAME}/include/g++-3/std/fcomplex.h
+${PKGNAME}/include/g++-3/std/gslice.h
+${PKGNAME}/include/g++-3/std/gslice_array.h
+${PKGNAME}/include/g++-3/std/indirect_array.h
+${PKGNAME}/include/g++-3/std/ldcomplex.h
+${PKGNAME}/include/g++-3/std/mask_array.h
+${PKGNAME}/include/g++-3/std/slice.h
+${PKGNAME}/include/g++-3/std/slice_array.h
+${PKGNAME}/include/g++-3/std/std_valarray.h
+${PKGNAME}/include/g++-3/std/straits.h
+${PKGNAME}/include/g++-3/std/valarray_array.h
+${PKGNAME}/include/g++-3/std/valarray_meta.h
+${PKGNAME}/include/g++-3/std/bastring.cc
+${PKGNAME}/include/g++-3/std/complext.cc
+${PKGNAME}/include/g++-3/std/valarray_array.tcc
+${PKGNAME}/include/g++-3/PlotFile.h
+${PKGNAME}/include/g++-3/SFile.h
+${PKGNAME}/include/g++-3/builtinbuf.h
+${PKGNAME}/include/g++-3/editbuf.h
+${PKGNAME}/include/g++-3/floatio.h
+${PKGNAME}/include/g++-3/fstream.h
+${PKGNAME}/include/g++-3/indstream.h
+${PKGNAME}/include/g++-3/iolibio.h
+${PKGNAME}/include/g++-3/iomanip.h
+${PKGNAME}/include/g++-3/iostdio.h
+${PKGNAME}/include/g++-3/iostream.h
+${PKGNAME}/include/g++-3/iostreamP.h
+${PKGNAME}/include/g++-3/istream.h
+${PKGNAME}/include/g++-3/libio.h
+${PKGNAME}/include/g++-3/libioP.h
+${PKGNAME}/include/g++-3/ostream.h
+${PKGNAME}/include/g++-3/parsestream.h
+${PKGNAME}/include/g++-3/pfstream.h
+${PKGNAME}/include/g++-3/procbuf.h
+${PKGNAME}/include/g++-3/stdiostream.h
+${PKGNAME}/include/g++-3/stream.h
+${PKGNAME}/include/g++-3/streambuf.h
+${PKGNAME}/include/g++-3/strfile.h
+${PKGNAME}/include/g++-3/strstream.h
+${PKGNAME}/include/g++-3/cassert
+${PKGNAME}/include/g++-3/cctype
+${PKGNAME}/include/g++-3/cerrno
+${PKGNAME}/include/g++-3/cfloat
+${PKGNAME}/include/g++-3/ciso646
+${PKGNAME}/include/g++-3/climits
+${PKGNAME}/include/g++-3/clocale
+${PKGNAME}/include/g++-3/cmath
+${PKGNAME}/include/g++-3/complex
+${PKGNAME}/include/g++-3/csetjmp
+${PKGNAME}/include/g++-3/csignal
+${PKGNAME}/include/g++-3/cstdarg
+${PKGNAME}/include/g++-3/cstddef
+${PKGNAME}/include/g++-3/cstdio
+${PKGNAME}/include/g++-3/cstdlib
+${PKGNAME}/include/g++-3/cstring
+${PKGNAME}/include/g++-3/ctime
+${PKGNAME}/include/g++-3/cwchar
+${PKGNAME}/include/g++-3/cwctype
+${PKGNAME}/include/g++-3/string
+${PKGNAME}/include/g++-3/stdexcept
+${PKGNAME}/include/g++-3/algorithm
+${PKGNAME}/include/g++-3/deque
+${PKGNAME}/include/g++-3/functional
+${PKGNAME}/include/g++-3/hash_map
+${PKGNAME}/include/g++-3/hash_set
+${PKGNAME}/include/g++-3/iterator
+${PKGNAME}/include/g++-3/list
+${PKGNAME}/include/g++-3/map
+${PKGNAME}/include/g++-3/memory
+${PKGNAME}/include/g++-3/numeric
+${PKGNAME}/include/g++-3/pthread_alloc
+${PKGNAME}/include/g++-3/queue
+${PKGNAME}/include/g++-3/rope
+${PKGNAME}/include/g++-3/set
+${PKGNAME}/include/g++-3/slist
+${PKGNAME}/include/g++-3/stack
+${PKGNAME}/include/g++-3/utility
+${PKGNAME}/include/g++-3/vector
+${PKGNAME}/include/g++-3/fstream
+${PKGNAME}/include/g++-3/iomanip
+${PKGNAME}/include/g++-3/iostream
+${PKGNAME}/include/g++-3/strstream
+${PKGNAME}/include/g++-3/iosfwd
+${PKGNAME}/include/g++-3/bitset
+${PKGNAME}/include/g++-3/valarray
+${PKGNAME}/include/g++-3/complex.h
+${PKGNAME}/include/g++-3/stl.h
+${PKGNAME}/include/g++-3/algo.h
+${PKGNAME}/include/g++-3/algobase.h
+${PKGNAME}/include/g++-3/alloc.h
+${PKGNAME}/include/g++-3/bvector.h
+${PKGNAME}/include/g++-3/defalloc.h
+${PKGNAME}/include/g++-3/deque.h
+${PKGNAME}/include/g++-3/function.h
+${PKGNAME}/include/g++-3/hash_map.h
+${PKGNAME}/include/g++-3/hash_set.h
+${PKGNAME}/include/g++-3/hashtable.h
+${PKGNAME}/include/g++-3/heap.h
+${PKGNAME}/include/g++-3/iterator.h
+${PKGNAME}/include/g++-3/list.h
+${PKGNAME}/include/g++-3/map.h
+${PKGNAME}/include/g++-3/multimap.h
+${PKGNAME}/include/g++-3/multiset.h
+${PKGNAME}/include/g++-3/pair.h
+${PKGNAME}/include/g++-3/pthread_alloc.h
+${PKGNAME}/include/g++-3/rope.h
+${PKGNAME}/include/g++-3/ropeimpl.h
+${PKGNAME}/include/g++-3/set.h
+${PKGNAME}/include/g++-3/slist.h
+${PKGNAME}/include/g++-3/stack.h
+${PKGNAME}/include/g++-3/stl_algo.h
+${PKGNAME}/include/g++-3/stl_algobase.h
+${PKGNAME}/include/g++-3/stl_alloc.h
+${PKGNAME}/include/g++-3/stl_bvector.h
+${PKGNAME}/include/g++-3/stl_config.h
+${PKGNAME}/include/g++-3/stl_construct.h
+${PKGNAME}/include/g++-3/stl_deque.h
+${PKGNAME}/include/g++-3/stl_function.h
+${PKGNAME}/include/g++-3/stl_hash_fun.h
+${PKGNAME}/include/g++-3/stl_hash_map.h
+${PKGNAME}/include/g++-3/stl_hash_set.h
+${PKGNAME}/include/g++-3/stl_hashtable.h
+${PKGNAME}/include/g++-3/stl_heap.h
+${PKGNAME}/include/g++-3/stl_iterator.h
+${PKGNAME}/include/g++-3/stl_list.h
+${PKGNAME}/include/g++-3/stl_map.h
+${PKGNAME}/include/g++-3/stl_multimap.h
+${PKGNAME}/include/g++-3/stl_multiset.h
+${PKGNAME}/include/g++-3/stl_numeric.h
+${PKGNAME}/include/g++-3/stl_pair.h
+${PKGNAME}/include/g++-3/stl_queue.h
+${PKGNAME}/include/g++-3/stl_raw_storage_iter.h
+${PKGNAME}/include/g++-3/stl_relops.h
+${PKGNAME}/include/g++-3/stl_rope.h
+${PKGNAME}/include/g++-3/stl_set.h
+${PKGNAME}/include/g++-3/stl_slist.h
+${PKGNAME}/include/g++-3/stl_stack.h
+${PKGNAME}/include/g++-3/stl_tempbuf.h
+${PKGNAME}/include/g++-3/stl_tree.h
+${PKGNAME}/include/g++-3/stl_uninitialized.h
+${PKGNAME}/include/g++-3/stl_vector.h
+${PKGNAME}/include/g++-3/tempbuf.h
+${PKGNAME}/include/g++-3/tree.h
+${PKGNAME}/include/g++-3/type_traits.h
+${PKGNAME}/include/g++-3/vector.h
+${PKGNAME}/info/chill.info
+${PKGNAME}/info/g77.info
+${PKGNAME}/info/g77.info-1
+${PKGNAME}/info/g77.info-10
+${PKGNAME}/info/g77.info-11
+${PKGNAME}/info/g77.info-12
+${PKGNAME}/info/g77.info-13
+${PKGNAME}/info/g77.info-14
+${PKGNAME}/info/g77.info-15
+${PKGNAME}/info/g77.info-16
+${PKGNAME}/info/g77.info-17
+${PKGNAME}/info/g77.info-18
+${PKGNAME}/info/g77.info-19
+${PKGNAME}/info/g77.info-2
+${PKGNAME}/info/g77.info-20
+${PKGNAME}/info/g77.info-21
+${PKGNAME}/info/g77.info-3
+${PKGNAME}/info/g77.info-4
+${PKGNAME}/info/g77.info-5
+${PKGNAME}/info/g77.info-6
+${PKGNAME}/info/g77.info-7
+${PKGNAME}/info/g77.info-8
+${PKGNAME}/info/g77.info-9
+${PKGNAME}/info/cpp.info
+${PKGNAME}/info/cpp.info-1
+${PKGNAME}/info/cpp.info-2
+${PKGNAME}/info/cpp.info-3
+${PKGNAME}/info/gcc.info
+${PKGNAME}/info/gcc.info-1
+${PKGNAME}/info/gcc.info-10
+${PKGNAME}/info/gcc.info-11
+${PKGNAME}/info/gcc.info-12
+${PKGNAME}/info/gcc.info-13
+${PKGNAME}/info/gcc.info-14
+${PKGNAME}/info/gcc.info-15
+${PKGNAME}/info/gcc.info-16
+${PKGNAME}/info/gcc.info-17
+${PKGNAME}/info/gcc.info-18
+${PKGNAME}/info/gcc.info-19
+${PKGNAME}/info/gcc.info-2
+${PKGNAME}/info/gcc.info-20
+${PKGNAME}/info/gcc.info-21
+${PKGNAME}/info/gcc.info-22
+${PKGNAME}/info/gcc.info-23
+${PKGNAME}/info/gcc.info-24
+${PKGNAME}/info/gcc.info-25
+${PKGNAME}/info/gcc.info-26
+${PKGNAME}/info/gcc.info-27
+${PKGNAME}/info/gcc.info-28
+${PKGNAME}/info/gcc.info-29
+${PKGNAME}/info/gcc.info-3
+${PKGNAME}/info/gcc.info-30
+${PKGNAME}/info/gcc.info-4
+${PKGNAME}/info/gcc.info-5
+${PKGNAME}/info/gcc.info-6
+${PKGNAME}/info/gcc.info-7
+${PKGNAME}/info/gcc.info-8
+${PKGNAME}/info/gcc.info-9
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/hash.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/objc-list.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/sarray.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/objc.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/objc-api.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/NXConstStr.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/Object.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/Protocol.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/encoding.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/typedstream.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc/thr.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/g2c.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/cc1
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/cc1chill
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/cc1plus
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/f771
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/jc1
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/jvgenmain
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/cc1obj
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/collect2
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/specs
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/SYSCALLS.c.X
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/cpp
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/libgcc.a
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/libg2c.a
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/libchill.a
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/chillrt0.o
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/libobjc.a
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/libstdc++.a
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/math.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/syslimits.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/stdarg.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/stddef.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/varargs.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-alpha.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-h8300.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-i860.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-i960.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-mips.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-m88k.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-mn10200.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-mn10300.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-pa.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-pyr.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-sparc.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-clipper.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-spur.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-m32r.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-sh.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-v850.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-arc.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/iso646.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-ppc.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/va-c4x.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/typeinfo
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/exception
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/new
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/new.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/proto.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/stdbool.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/limits.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/float.h
+${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/README
+${PKGNAME}/lib/libiberty.a
+${PKGNAME}/lib/libstdc++.a.2.10.0
+${PKGNAME}/man/man1/g++.1
+${PKGNAME}/man/man1/g77.1
+${PKGNAME}/man/man1/gcc.1
+${PKGNAME}/man/man1/cccp.1
+@dirrm ${PKGNAME}/man/man1
+@dirrm ${PKGNAME}/man
+@dirrm ${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include/objc
+@dirrm ${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}/include
+@dirrm ${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}/${GCC_VERSION}
+@dirrm ${PKGNAME}/lib/gcc-lib/${MACHINE_GCC_PLATFORM}
+@dirrm ${PKGNAME}/lib/gcc-lib
+@dirrm ${PKGNAME}/lib
+@dirrm ${PKGNAME}/info
+@dirrm ${PKGNAME}/include/g++-3/std
+@dirrm ${PKGNAME}/include/g++-3
+@dirrm ${PKGNAME}/include
+@dirrm ${PKGNAME}/bin
+@dirrm ${PKGNAME}/${MACHINE_GCC_PLATFORM}/include
+@dirrm ${PKGNAME}/${MACHINE_GCC_PLATFORM}
+@dirrm ${PKGNAME}