This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[gfortran, patch]: Document ENUM stuff, reorganize docs


This does two things: First, I added documentation for the new stuff Gaurav
Guptam's patch brought.  Second, I moved the license stuff to the back of the
manual.  Tested with a make dvi.

- Tobi

2005-10-30  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>

	* gfortran.texi: Move license stuff to back.  Add information
	on ENUM and ENUMERATOR.
	* invoke.texi: Document -fshort-enums.
Index: gfortran.texi
===================================================================
--- gfortran.texi	(revision 106030)
+++ gfortran.texi	(working copy)
@@ -98,7 +98,8 @@ Boston, MA 02110-1301, USA@*
 @contents
 @page
 
-@node Top, Copying,, (DIR)
+@node Top
+@c , Copying,, (DIR)
 @top Introduction
 @cindex Introduction
 
@@ -118,11 +119,6 @@ not accurately reflect the status of the
 @comment  better formatting.
 @comment
 @menu
-* Copying::              GNU General Public License says
-                         how you can copy and share GNU Fortran.
-* GNU Free Documentation License::
-		         How you can copy and share this manual.
-* Funding::              How to help assure continued work for free software.
 * Getting Started::      What you should know about @command{gfortran}.
 * GFORTRAN and GCC::     You can compile Fortran, C, or other programs.
 * GFORTRAN and G77::     Why we chose to start from scratch.
@@ -132,36 +128,17 @@ not accurately reflect the status of the
 * Standards::	         Standards supported by @command{gfortran}
 * Extensions::           Language extensions implemented by @command{gfortran}
 * Intrinsic Procedures:: Intrinsic procedures supported by @command{gfortran}
+* Copying::              GNU General Public License says
+                         how you can copy and share GNU Fortran.
+* GNU Free Documentation License::
+		         How you can copy and share this manual.
+* Funding::              How to help assure continued work for free software.
 * Index::                Index of this documentation.
 @end menu
 
 
 
 @c ---------------------------------------------------------------------
-@c GNU General Public License
-@c ---------------------------------------------------------------------
-
-@include gpl.texi
-
-
-
-@c ---------------------------------------------------------------------
-@c GNU Free Documentation License
-@c ---------------------------------------------------------------------
-
-@include fdl.texi
-
-
-
-@c ---------------------------------------------------------------------
-@c Funding Free Software
-@c ---------------------------------------------------------------------
-
-@include funding.texi
-
-
-
-@c ---------------------------------------------------------------------
 @c Getting Started
 @c ---------------------------------------------------------------------
 
@@ -973,8 +950,11 @@ pointees are passed as arguments, they a
 variables in the invoked function.  Subsequent changes to the pointer
 will not change the base address of the array that was passed.
 
+@c ---------------------------------------------------------------------
 @include intrinsic.texi
 @c ---------------------------------------------------------------------
+
+@c ---------------------------------------------------------------------
 @c Contributing
 @c ---------------------------------------------------------------------
 
@@ -1119,18 +1099,54 @@ Intrinsics @code{command_argument_count}
 @code{get_command_argument}, and @code{get_environment_variable}.
 
 @item 
+@cindex Array constructors
+@cindex @code{[...]}
 Array constructors using square brackets. That is, @code{[...]} rather
 than @code{(/.../)}.
 
-@item 
+@item
+@cindex @code{FLUSH} statement
 @code{FLUSH} statement.
 
 @item
+@cindex @code{IOMSG=} specifier
 @code{IOMSG=} specifier for I/O statements.
+
+@item
+@cindex @code{ENUM} statement
+@cindex @code{ENUMERATOR} statement
+@cindex @command{-fshort-enums}
+Support for the declaration of enumeration constants via the
+@code{ENUM} and @code{ENUMERATOR} statements.  Interoperability with
+@command{gcc} is guaranteed also for the case where the
+@command{-fshort-enums} command line option is given.
+
 @end itemize
 
 
 @c ---------------------------------------------------------------------
+@c GNU General Public License
+@c ---------------------------------------------------------------------
+
+@include gpl.texi
+
+
+
+@c ---------------------------------------------------------------------
+@c GNU Free Documentation License
+@c ---------------------------------------------------------------------
+
+@include fdl.texi
+
+
+
+@c ---------------------------------------------------------------------
+@c Funding Free Software
+@c ---------------------------------------------------------------------
+
+@include funding.texi
+
+@c ---------------------------------------------------------------------
 @c Index
 @c ---------------------------------------------------------------------
 
Index: invoke.texi
===================================================================
--- invoke.texi	(revision 106030)
+++ invoke.texi	(working copy)
@@ -146,7 +146,7 @@ by type.  Explanations are in the follow
 @gccoptlist{
 -fno-automatic -ff2c -fno-underscoring  -fsecond-underscore @gol
 -fbounds-check  -fmax-stack-var-size=@var{n} @gol
--fpackderived  -frepack-arrays}
+-fpackderived  -frepack-arrays  -fshort-enums}
 @end table
 
 @menu
@@ -752,6 +752,13 @@ a contiguous block at runtime.
 This should result in faster accesses to the array.  However it can introduce
 significant overhead to the function call, especially  when the passed data
 is discontiguous.
+
+@cindex -fshort-enums
+@item -fshort-enums
+This option is provided for interoperability with C code that was
+compiled with the @command{-fshort-enums} option.  It will make
+@command{gfortran} choose the smallest @code{INTEGER} kind a given
+enumerator set will fit in, and give all its enumerators this kind.
 @end table
 
 @xref{Code Gen Options,,Options for Code Generation Conventions,

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]