]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: [multiple changes]
authorDaniel Franke <franke.daniel@gmail.com>
Sun, 29 Jul 2007 10:49:11 +0000 (06:49 -0400)
committerDaniel Franke <dfranke@gcc.gnu.org>
Sun, 29 Jul 2007 10:49:11 +0000 (06:49 -0400)
2007-07-29  Daniel Franke  <franke.daniel@gmail.com>

Backport from trunk:
2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
* invoke.texi: Removed -w from option summary.

2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
PR fortran/32879
* intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document
algorithm used for random number generator.

2007-07-13  Daniel Franke  <franke.daniel@gmail.com>
* invoke.texi: Unified upper- and lower-case in menus.
(-w, -W): Removed, documented by gcc.
* intrinsic.texi: Unified Class-section entries, added
subroutine/function warning where appropiate.

2007-05-01  Daniel Franke  <franke.daniel@gmail.com>
* intrinsic.texi (MVBITS): Changed class to elemental subroutine.
(RANDOM_NUMBER): Changed class to subroutine.
(HUGE, TINY): Changed class to inquiry function.

From-SVN: r127042

gcc/fortran/ChangeLog
gcc/fortran/intrinsic.texi
gcc/fortran/invoke.texi

index 319bc26a3e30cc14a533c097044f1cd7c1754318..33e9016d3d998437d415a9feb2605faeb98a74f4 100644 (file)
@@ -1,3 +1,25 @@
+2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       Backport from trunk:
+       2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+       * invoke.texi: Removed -w from option summary.
+
+       2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+       PR fortran/32879
+       * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document
+       algorithm used for random number generator.
+
+       2007-07-13  Daniel Franke  <franke.daniel@gmail.com>
+       * invoke.texi: Unified upper- and lower-case in menus.
+       (-w, -W): Removed, documented by gcc.
+       * intrinsic.texi: Unified Class-section entries, added
+       subroutine/function warning where appropiate.
+
+       2007-05-01  Daniel Franke  <franke.daniel@gmail.com>
+       * intrinsic.texi (MVBITS): Changed class to elemental subroutine.
+       (RANDOM_NUMBER): Changed class to subroutine.
+       (HUGE, TINY): Changed class to inquiry function.
+
 2007-07-19  Release Manager
 
        * GCC 4.2.1 released.
index 0f59fb77c15b05f52e292a9283b146407886f31b..9c30a423700774792a77b1f8c433b782ac3569ef 100644 (file)
@@ -308,7 +308,7 @@ which is suitable for debugging purposes.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine
 
 @item @emph{Syntax}:
 @code{CALL ABORT}
@@ -870,7 +870,7 @@ in the array along dimension @var{DIM}.
 F95 and later
 
 @item @emph{Class}:
-transformational function
+Transformational function
 
 @item @emph{Syntax}:
 @code{RESULT = ALL(MASK [, DIM])}
@@ -980,7 +980,7 @@ the use of the @ref{IAND} intrinsic defined by the Fortran standard.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = AND(I, J)}
@@ -1084,7 +1084,7 @@ end program test_anint
 F95 and later
 
 @item @emph{Class}:
-transformational function
+Transformational function
 
 @item @emph{Syntax}:
 @code{RESULT = ANY(MASK [, DIM])}
@@ -1946,7 +1946,7 @@ only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -1998,7 +1998,7 @@ only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -2035,7 +2035,7 @@ program chmod_test
   print *, 'Status: ', status
 end program chmod_test
 @end smallexample
-@code{CHMOD} as non-elemental function:
+@code{CHMOD} as function:
 @smallexample
 program chmod_test
   implicit none
@@ -2377,7 +2377,7 @@ range of @math{1 /leq DIM /leq n)} where @math{n} is the rank of @var{MASK}.
 F95 and later
 
 @item @emph{Class}:
-transformational function
+Transformational function
 
 @item @emph{Syntax}:
 @code{RESULT = COUNT(MASK [, DIM])}
@@ -2539,7 +2539,7 @@ only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -2897,7 +2897,7 @@ vectors are @code{LOGICAL}, the result is @code{ANY(X.AND.Y)}.
 F95 and later
 
 @item @emph{Class}:
-transformational function
+Transformational function
 
 @item @emph{Syntax}:
 @code{RESULT = DOT_PRODUCT(X, Y)}
@@ -3035,8 +3035,8 @@ sufficiently small limits that overflows (wrap around) are possible, such as
 become, negative, or numerically less than previous values, during a single
 run of the compiled program.
 
-If @code{DTIME} is invoked as a function, it can not be invoked as a
-subroutine, and vice versa.
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
 
 @var{TARRAY} and @var{RESULT} are @code{INTENT(OUT)} and provide the following:
 
@@ -3050,7 +3050,7 @@ subroutine, and vice versa.
 GNU extension
 
 @item @emph{Class}:
-Subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -3300,8 +3300,8 @@ sufficiently small limits that overflows (wrap around) are possible, such as
 become, negative, or numerically less than previous values, during a single
 run of the compiled program.
 
-If @code{ETIME} is invoked as a function, it can not be invoked as a
-subroutine, and vice versa.
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
 
 @var{TARRAY} and @var{RESULT} are @code{INTENT(OUT)} and provide the following:
 
@@ -3315,7 +3315,7 @@ subroutine, and vice versa.
 GNU extension
 
 @item @emph{Class}:
-Subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -3511,8 +3511,8 @@ end program test_exponent
 @code{CTIME}) in @var{DATE}. It is equivalent to @code{CALL CTIME(DATE,
 TIME())}.
 
-If @code{FDATE} is invoked as a function, it can not be invoked as a
-subroutine, and vice versa.
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
 
 @var{DATE} is an @code{INTENT(OUT)} @code{CHARACTER} variable.
 
@@ -3520,7 +3520,7 @@ subroutine, and vice versa.
 GNU extension
 
 @item @emph{Class}:
-Subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -3607,7 +3607,10 @@ Read a single character in stream mode from stdin by bypassing normal
 formatted output. Stream I/O should not be mixed with normal record-oriented 
 (formatted or unformatted) I/O on the same unit; the results are unpredictable.
 
-This intrinsic routine is provided for backwards compatibility with 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
+Note that the @code{FGET} intrinsic is provided for backwards compatibility with 
 @command{g77}.  GNU Fortran provides the Fortran 2003 Stream facility.
 Programmers should consider the use of new stream IO feature in new code 
 for future portability. See also @ref{Fortran 2003 status}.
@@ -3616,7 +3619,7 @@ for future portability. See also @ref{Fortran 2003 status}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL FGET(C [, STATUS])}
@@ -3665,8 +3668,11 @@ Read a single character in stream mode by bypassing normal formatted output.
 Stream I/O should not be mixed with normal record-oriented (formatted or 
 unformatted) I/O on the same unit; the results are unpredictable.
 
-This intrinsic routine is provided for backwards compatibility with 
-@command{g77}.  GNU Fortran provides the Fortran 2003 Stream facility.
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
+Note that the @code{FGET} intrinsic is provided for backwards compatibility
+with @command{g77}.  GNU Fortran provides the Fortran 2003 Stream facility.
 Programmers should consider the use of new stream IO feature in new code 
 for future portability. See also @ref{Fortran 2003 status}.
 
@@ -3674,7 +3680,7 @@ for future portability. See also @ref{Fortran 2003 status}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL FGETC(UNIT, C [, STATUS])}
@@ -3770,7 +3776,7 @@ argument, all units are flushed, otherwise just the unit specified.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine
 
 @item @emph{Syntax}:
 @code{CALL FLUSH(UNIT)}
@@ -3802,7 +3808,7 @@ open Fortran I/O unit @code{UNIT}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = FNUM(UNIT)}
@@ -3842,7 +3848,10 @@ Write a single character in stream mode to stdout by bypassing normal
 formatted output. Stream I/O should not be mixed with normal record-oriented 
 (formatted or unformatted) I/O on the same unit; the results are unpredictable.
 
-This intrinsic routine is provided for backwards compatibility with 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
+Note that the @code{FGET} intrinsic is provided for backwards compatibility with 
 @command{g77}.  GNU Fortran provides the Fortran 2003 Stream facility.
 Programmers should consider the use of new stream IO feature in new code 
 for future portability. See also @ref{Fortran 2003 status}.
@@ -3851,7 +3860,7 @@ for future portability. See also @ref{Fortran 2003 status}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL FPUT(C [, STATUS])}
@@ -3893,7 +3902,10 @@ Write a single character in stream mode by bypassing normal formatted
 output. Stream I/O should not be mixed with normal record-oriented 
 (formatted or unformatted) I/O on the same unit; the results are unpredictable.
 
-This intrinsic routine is provided for backwards compatibility with 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
+Note that the @code{FGET} intrinsic is provided for backwards compatibility with 
 @command{g77}.  GNU Fortran provides the Fortran 2003 Stream facility.
 Programmers should consider the use of new stream IO feature in new code 
 for future portability. See also @ref{Fortran 2003 status}.
@@ -3902,7 +3914,7 @@ for future portability. See also @ref{Fortran 2003 status}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL FPUTC(UNIT, C [, STATUS])}
@@ -4059,11 +4071,14 @@ already opened file is obtained.
 
 The elements in @code{BUFF} are the same as described by @ref{STAT}.
 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL FSTAT(UNIT, BUFF [, STATUS])}
@@ -4344,11 +4359,14 @@ END PROGRAM
 @item @emph{Description}:
 Get current working directory.
 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine.
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL GETCWD(CWD [, STATUS])}
@@ -4478,7 +4496,7 @@ Returns the numerical group ID of the current process.
 GNU extension
 
 @item @emph{Class}:
-function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = GETGID()}
@@ -4555,7 +4573,7 @@ Returns the numerical process identifier of the current process.
 GNU extension
 
 @item @emph{Class}:
-function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = GETPID()}
@@ -4594,7 +4612,7 @@ Returns the numerical user ID of the current process.
 GNU extension
 
 @item @emph{Class}:
-function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = GETUID()}
@@ -4722,7 +4740,7 @@ the model of the type of @code{X}.
 F95 and later
 
 @item @emph{Class}:
-Elemental function
+Inquiry function
 
 @item @emph{Syntax}:
 @code{RESULT = HUGE(X)}
@@ -4864,7 +4882,7 @@ standard.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental Function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = IARGC()}
@@ -5166,7 +5184,7 @@ function.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = IERRNO()}
@@ -5418,11 +5436,16 @@ in the current sequence is returned; if @var{FLAG} is 1, the generator
 is restarted by @code{CALL SRAND(0)}; if @var{FLAG} has any other value,
 it is used as a new seed with @code{SRAND}.
 
+This intrinsic routine is provided for backwards compatibility with
+GNU Fortran 77. It implements a simple modulo generator as provided 
+by @command{g77}. For new code, one should consider the use of 
+@ref{RANDOM_NUMBER} as it implements a superior algorithm.
+
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = IRAND(FLAG)}
@@ -5463,7 +5486,7 @@ Determine whether a unit is connected to a terminal device.
 GNU extension.
 
 @item @emph{Class}:
-Non-elemental function.
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = ISATTY(UNIT)}
@@ -5632,8 +5655,11 @@ end program test_itime
 Sends the signal specified by @var{SIGNAL} to the process @var{PID}.
 See @code{kill(2)}.
 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
 @item @emph{Class}:
-Subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL KILL(PID, SIGNAL [, STATUS])}
@@ -5919,7 +5945,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -6340,11 +6366,14 @@ then the link itself is statted, not the file that it refers to.
 
 The elements in @code{BUFF} are the same as described by @ref{STAT}.
 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
+
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL LSTAT(FILE, BUFF [, STATUS])}
@@ -6437,7 +6466,7 @@ using Fortran 95 pointers, the memory allocation intrinsic is
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{PTR = MALLOC(SIZE)}
@@ -6760,7 +6789,7 @@ compiled program.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = MCLOCK()}
@@ -6800,7 +6829,7 @@ less than previous values during a single run of the compiled program.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = MCLOCK8()}
@@ -7237,10 +7266,10 @@ affected by the movement of bits is unchanged. The values of
 F95 and later
 
 @item @emph{Class}:
-Elemental function
+Elemental subroutine
 
 @item @emph{Syntax}:
-@code{RESULT = MVBITS(FROM, FROMPOS, LEN, TO, TOPOS)}
+@code{CALL MVBITS(FROM, FROMPOS, LEN, TO, TOPOS)}
 
 @item @emph{Arguments}:
 @multitable @columnfractions .15 .70
@@ -7502,7 +7531,7 @@ the use of the @ref{IOR} intrinsic defined by the Fortran standard.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = OR(X, Y)}
@@ -7832,7 +7861,7 @@ documentation.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{See also}:
 @ref{RAND}, @ref{RANDOM_NUMBER}
@@ -7853,11 +7882,16 @@ in the current sequence is returned; if @var{FLAG} is 1, the generator
 is restarted by @code{CALL SRAND(0)}; if @var{FLAG} has any other value,
 it is used as a new seed with @code{SRAND}.
 
+This intrinsic routine is provided for backwards compatibility with
+GNU Fortran 77. It implements a simple modulo generator as provided 
+by @command{g77}. For new code, one should consider the use of 
+@ref{RANDOM_NUMBER} as it implements a superior algorithm.
+
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = RAND(FLAG)}
@@ -7898,11 +7932,29 @@ end program test_rand
 Returns a single pseudorandom number or an array of pseudorandom numbers
 from the uniform distribution over the range @math{ 0 \leq x < 1}.
 
+The runtime-library implementes George Marsaglia's KISS (Keep It Simple 
+Stupid) random number generator (RNG). This RNG combines:
+@enumerate
+@item The congruential generator @math{x(n) = 69069 \cdot x(n-1) + 1327217885}
+with a period of @math{2^{32}},
+@item A 3-shift shift-register generator with a period of @math{2^{32} - 1},
+@item  Two 16-bit multiply-with-carry generators with a period of
+@math{597273182964842497 > 2^{59}}.
+@end enumerate
+The overall period exceeds @math{2^{123}}.
+
+Please note, this RNG is thread safe if used within OpenMP directives,
+i. e. its state will be consistent while called from multiple threads.
+However, the KISS generator does not create random numbers in parallel 
+from multiple sources, but in sequence from a single source. If an
+OpenMP-enabled application heavily relies on random numbers, one should 
+consider employing a dedicated parallel random number generator instead.
+
 @item @emph{Standard}:
 F95 and later
 
 @item @emph{Class}:
-Elemental subroutine
+Subroutine
 
 @item @emph{Syntax}:
 @code{RANDOM_NUMBER(HARVEST)}
@@ -7921,15 +7973,6 @@ program test_random_number
 end program
 @end smallexample
 
-@item @emph{Note}:
-The implemented random number generator is thread safe if used within
-OpenMP directives, i. e. its state will be consistent while called from
-multiple threads. Please note that the currently implemented KISS generator 
-does not create random numbers in parallel from multiple sources, but in
-sequence from a single source. If your OpenMP-enabled application heavily
-relies on random numbers, you should consider employing a dedicated parallel
-random number generator instead.
-
 @item @emph{See also}:
 @ref{RANDOM_SEED}
 @end table
@@ -8120,7 +8163,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -8424,7 +8467,7 @@ use is discouraged.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = SECNDS (X)}
@@ -8475,7 +8518,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -8773,7 +8816,7 @@ is supplied, it is set to the value returned by @code{signal(2)}.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -9193,7 +9236,7 @@ generator is specified by the required argument @var{SEED}.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine
 
 @item @emph{Syntax}:
 @code{CALL SRAND(SEED)}
@@ -9256,12 +9299,14 @@ The elements that are obtained and stored in the array @code{BUFF}:
 Not all these elements are relevant on all systems. 
 If an element is not relevant, it is returned as 0.
 
+This intrinsic is provided in both subroutine and function forms; however,
+only one form can be used in any given program unit.
 
 @item @emph{Standard}:
 GNU extension
 
 @item @emph{Class}:
-Non-elemental subroutine
+Subroutine, function
 
 @item @emph{Syntax}:
 @code{CALL STAT(FILE,BUFF[,STATUS])}
@@ -9386,7 +9431,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -9428,7 +9473,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -9624,7 +9669,7 @@ compilers.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = TIME()}
@@ -9663,7 +9708,7 @@ less than previous values during a single run of the compiled program.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = TIME8()}
@@ -9693,7 +9738,7 @@ in the model of the type of @code{X}.
 F95 and later
 
 @item @emph{Class}:
-Elemental function
+Inquiry function
 
 @item @emph{Syntax}:
 @code{RESULT = TINY(X)}
@@ -9866,7 +9911,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -9985,7 +10030,7 @@ however, only one form can be used in any given program unit.
 GNU extension
 
 @item @emph{Class}:
-Subroutine, non-elemental function
+Subroutine, function
 
 @item @emph{Syntax}:
 @multitable @columnfractions .80
@@ -10126,7 +10171,7 @@ the use of the @ref{IEOR} intrinsic defined by the Fortran standard.
 GNU extension
 
 @item @emph{Class}:
-Non-elemental function
+Function
 
 @item @emph{Syntax}:
 @code{RESULT = XOR(X, Y)}
index eb5a279e82d945e92122fecedb5e3d3e3756c744..cbb7bf7991bdd970412f4b93907633dbc2734b57 100644 (file)
@@ -100,11 +100,11 @@ one is not the default.
 * Runtime Options::     Influencing runtime behavior
 * Code Gen Options::    Specifying conventions for function calls, data layout
                         and register usage.
-* Environment Variables:: Env vars that affect @command{gfortran}.
+* Environment Variables:: Environment variables that affect @command{gfortran}.
 @end menu
 
 @node Option Summary
-@section Option Summary
+@section Option summary
 
 @c man begin OPTIONS
 
@@ -113,7 +113,7 @@ by type.  Explanations are in the following sections.
 
 @table @emph
 @item Fortran Language Options
-@xref{Fortran Dialect Options,,Options Controlling Fortran Dialect}.
+@xref{Fortran Dialect Options,,Options controlling Fortran dialect}.
 @gccoptlist{-fall-intrinsics  -ffree-form  -fno-fixed-form @gol
 -fdollar-ok  -fimplicit-none  -fmax-identifier-length @gol
 -std=@var{std} -fd-lines-as-code  -fd-lines-as-comments @gol
@@ -123,20 +123,20 @@ by type.  Explanations are in the following sections.
 -fcray-pointer  -fopenmp  -frange-check -fno-backslash }
 
 @item Error and Warning Options
-@xref{Error and Warning Options,,Options to Request or Suppress Errors
-and Warnings}.
+@xref{Error and Warning Options,,Options to request or suppress errors
+and warnings}.
 @gccoptlist{-fmax-errors=@var{n} @gol
 -fsyntax-only  -pedantic  -pedantic-errors @gol
--w  -Wall  -Waliasing  -Wampersand  -Wcharacter-truncation  -Wconversion @gol
+-Wall  -Waliasing  -Wampersand  -Wcharacter-truncation  -Wconversion @gol
 -Wimplicit-interface  -Wline-truncation  -Wnonstd-intrinsics  -Wsurprising @gol
--Wno-tabs  -Wunderflow  -W}
+-Wno-tabs  -Wunderflow}
 
 @item Debugging Options
-@xref{Debugging Options,,Options for Debugging Your Program or GCC}.
+@xref{Debugging Options,,Options for debugging your program or GNU Fortran}.
 @gccoptlist{-fdump-parse-tree  -ffpe-trap=@var{list}}
 
 @item Directory Options
-@xref{Directory Options,,Options for Directory Search}.
+@xref{Directory Options,,Options for directory search}.
 @gccoptlist{-I@var{dir}  -J@var{dir}  -M@var{dir}}
 
 @item Runtime Options
@@ -145,7 +145,7 @@ and Warnings}.
 -fmax-subrecord-length=@var{length}}
 
 @item Code Generation Options
-@xref{Code Gen Options,,Options for Code Generation Conventions}.
+@xref{Code Gen Options,,Options for code generation conventions}.
 @gccoptlist{-fno-automatic  -ff2c  -fno-underscoring
 -fsecond-underscore @gol
 -fbounds-check  -fmax-stack-var-size=@var{n} @gol
@@ -164,7 +164,7 @@ and Warnings}.
 @end menu
 
 @node Fortran Dialect Options
-@section Options Controlling Fortran Dialect
+@section Options controlling Fortran dialect
 @cindex dialect options
 @cindex language, dialect options
 @cindex options, dialect
@@ -312,7 +312,7 @@ standards.
 @end table
 
 @node Error and Warning Options
-@section Options to Request or Suppress Errors and Warnings
+@section Options to request or suppress errors and warnings
 @cindex options, warnings
 @cindex options, errors
 @cindex warnings, suppressing
@@ -380,11 +380,6 @@ This should be used in conjunction with @option{-std=f95} or
 Like @option{-pedantic}, except that errors are produced rather than
 warnings.
 
-@item -w
-@opindex @code{w}
-@cindex warnings, none
-Inhibit all warning messages.
-
 @item -Wall
 @opindex @code{Wall}
 @cindex all warnings
@@ -489,14 +484,6 @@ encountered, which yield an UNDERFLOW during compilation.
 @opindex @code{Werror}
 @cindex warnings, to errors
 Turns all warnings into errors.
-
-@item -W
-@opindex @code{W}
-@cindex warnings, extra
-@cindex extra warnings
-Turns on ``extra warnings'' and, if optimization is specified
-via @option{-O}, the @option{-Wuninitialized} option.
-(This might change in future versions of GNU Fortran.)
 @end table
 
 @xref{Error and Warning Options,,Options to Request or Suppress Errors and
@@ -507,7 +494,7 @@ and other GNU compilers.
 Some of these have no effect when compiling programs written in Fortran.
 
 @node Debugging Options
-@section Options for Debugging Your Program or GNU Fortran
+@section Options for debugging your program or GNU Fortran
 @cindex options, debugging
 @cindex debugging information options
 
@@ -539,7 +526,7 @@ gcc,Using the GNU Compiler Collection (GCC)}, for more information on
 debugging options.
 
 @node Directory Options
-@section Options for Directory Search
+@section Options for directory search
 @cindex directory, options
 @cindex options, directory search
 @cindex search path
@@ -614,10 +601,10 @@ variable override the default specified by @option{-fconvert}.}
 @opindex @code{frecord-marker=}@var{length}
 Specify the length of record markers for unformatted files.
 Valid values for @var{length} are 4 and 8.  Default is 4.
-@emph{This is different from previous versions of gfortran},
+@emph{This is different from previous versions of @command{gfortran}},
 which specified a default record marker length of 8 on most
 systems.  If you want to read or write files compatible
-with earlier versions of gfortran, use @option{-frecord-marker=8}.
+with earlier versions of @command{gfortran}, use @option{-frecord-marker=8}.
 
 @item -fmax-subrecord-length=@var{length}
 @opindex @code{fmax-subrecord-length=}@var{length}
@@ -627,7 +614,7 @@ really useful for use by the gfortran testsuite.
 @end table
 
 @node Code Gen Options
-@section Options for Code Generation Conventions
+@section Options for code generation conventions
 @cindex code generation, conventions
 @cindex options, code generation
 @cindex options, run-time
@@ -843,7 +830,7 @@ shared by @command{gfortran}, @command{gcc}, and other GNU compilers.
 @c man end
 
 @node Environment Variables
-@section Environment Variables Affecting @command{gfortran}
+@section Environment variables affecting @command{gfortran}
 @cindex environment variable
 
 @c man begin ENVIRONMENT