aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/gfortran.texi
diff options
context:
space:
mode:
authorDaniel Kraft <d@domob.eu>2009-02-18 19:54:41 +0100
committerDaniel Kraft <domob@gcc.gnu.org>2009-02-18 19:54:41 +0100
commit71810d0e7c262815651f8f2a3f574e973f6df3ba (patch)
treef6c3483a209be085791f9a098264e728ae3bf042 /gcc/fortran/gfortran.texi
parente98c0739b33ea06b50553f8c70047e36ad00b422 (diff)
downloadgcc-71810d0e7c262815651f8f2a3f574e973f6df3ba.zip
gcc-71810d0e7c262815651f8f2a3f574e973f6df3ba.tar.gz
gcc-71810d0e7c262815651f8f2a3f574e973f6df3ba.tar.bz2
gfortran.texi: New chapter about compiler characteristics.
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
Diffstat (limited to 'gcc/fortran/gfortran.texi')
-rw-r--r--gcc/fortran/gfortran.texi60
1 files changed, 60 insertions, 0 deletions
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index e5b46ce..af1d296 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -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 ---------------------------------------------------------------------