gfortran.texi: New chapter about compiler characteristics.
authorDaniel Kraft <d@domob.eu>
Wed, 18 Feb 2009 18:54:41 +0000 (19:54 +0100)
committerDaniel Kraft <domob@gcc.gnu.org>
Wed, 18 Feb 2009 18:54:41 +0000 (19:54 +0100)
2009-02-18  Daniel Kraft  <d@domob.eu>

* gfortran.texi: New chapter about compiler characteristics.
(Compiler Characteristics): Document KIND type parameters here.

From-SVN: r144268

gcc/fortran/ChangeLog
gcc/fortran/gfortran.texi

index a1be5838a73d3015daa12436a8186bea69b148da..694c67f4608180f14edb88f35a5b4db1f8c7b1e0 100644 (file)
@@ -1,3 +1,8 @@
+2009-02-18  Daniel Kraft  <d@domob.eu>
+
+       * gfortran.texi: New chapter about compiler characteristics.
+       (Compiler Characteristics): Document KIND type parameters here.
+
 2009-02-18  Tobias Burnus  <burnus@net-b.de>
 
        * intrinsic.texi (MALLOC): Make example more portable.
index e5b46ce6c16b0b424c6db09025e793b542b8193f..af1d296108523ba1a0cb601236a85db2d5a7c81f 100644 (file)
@@ -181,6 +181,7 @@ Part I: Invoking GNU Fortran
 
 Part II: Language Reference
 * Fortran 2003 and 2008 status::  Fortran 2003 and 2008 features supported by GNU Fortran.
+* Compiler Characteristics::      KIND type parameters supported.
 * Extensions::           Language extensions implemented by GNU Fortran.
 * Intrinsic Procedures:: Intrinsic procedures supported by GNU Fortran.
 * Intrinsic Modules::    Intrinsic modules supported by GNU Fortran.
@@ -905,6 +906,65 @@ support is based on the latest draft, available from
 differ from the drafts, no guarantee of backward compatibility can be
 made and you should only use it for experimental purposes.
 
+
+@c ---------------------------------------------------------------------
+@c Compiler Characteristics
+@c ---------------------------------------------------------------------
+
+@node Compiler Characteristics
+@chapter Compiler Characteristics
+
+@c TODO: Formulate this introduction a little more generally once
+@c there is more here than KIND type parameters.
+
+This chapter describes certain characteristics of the GNU Fortran compiler,
+namely the KIND type parameter values supported.
+
+@menu
+* KIND Type Parameters::
+@end menu
+
+
+@node KIND Type Parameters
+@section KIND Type Parameters
+@cindex kind
+
+The @code{KIND} type parameters supported by GNU Fortran for the primitive
+data types are:
+
+@table @code
+
+@item INTEGER
+1, 2, 4, 8*, 16*, default: 4 (1)
+
+@item LOGICAL
+1, 2, 4, 8*, 16*, default: 4 (1)
+
+@item REAL
+4, 8, 10**, 16**, default: 4 (2)
+
+@item COMPLEX
+4, 8, 10**, 16**, default: 4 (2)
+
+@item CHARACTER
+1, 4, default: 1
+
+@end table
+
+@noindent
+* = not available on all systems @*
+** = not available on all systems; additionally 10 and 16 are never
+available at the same time @*
+(1) Unless -fdefault-integer-8 is used @*
+(2) Unless -fdefault-real-8 is used
+
+@noindent
+The @code{KIND} value matches the storage size in bytes, except for
+@code{COMPLEX} where the storage size is twice as much (or both real and
+imaginary part are a real value of the given size).  It is recommended to use
+the @code{SELECT_*_KIND} intrinsics instead of the concrete values.
+
+
 @c ---------------------------------------------------------------------
 @c Extensions
 @c ---------------------------------------------------------------------