]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
PR fortran/38273
authorfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Jun 2010 20:02:39 +0000 (20:02 +0000)
committerfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Jun 2010 20:02:39 +0000 (20:02 +0000)
* gfortran.texi: Document that Cray pointers cannot be function
results.

PR fortran/36234
* gfortran.texi: Document lack of support for syntax
"complex FUNCTION name*16()", and existence of alternative
legacy syntax "complex*16 FUNCTION name()".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160569 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 87e4c3cbc2527c42243fced80a6e05740fca2215..5988845a40efd2436d70681fbfe97daccdbe6eef 100644 (file)
@@ -1,3 +1,16 @@
+2010-06-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/38273
+       * gfortran.texi: Document that Cray pointers cannot be function
+       results.
+
+2010-06-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/36234
+       * gfortran.texi: Document lack of support for syntax
+       "complex FUNCTION name*16()", and existence of alternative
+       legacy syntax "complex*16 FUNCTION name()".
+
 2010-06-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
        PR fortran/43032
index 2b0577662f57ef5fca0cb11045ef7273ec7a45a8..abecf467a9b84b7afea0ed59e0711a759c0ca956 100644 (file)
@@ -1515,10 +1515,10 @@ to Cray pointers and pointees.  Pointees may not have the
 @code{ALLOCATABLE}, @code{INTENT}, @code{OPTIONAL}, @code{DUMMY},
 @code{TARGET}, @code{INTRINSIC}, or @code{POINTER} attributes. Pointers
 may not have the @code{DIMENSION}, @code{POINTER}, @code{TARGET},
-@code{ALLOCATABLE}, @code{EXTERNAL}, or @code{INTRINSIC} attributes.
-Pointees may not occur in more than one pointer statement.  A pointee
-cannot be a pointer.  Pointees cannot occur in equivalence, common, or
-data statements.
+@code{ALLOCATABLE}, @code{EXTERNAL}, or @code{INTRINSIC} attributes, nor
+may they be function results. Pointees may not occur in more than one
+pointer statement.  A pointee cannot be a pointer.  Pointees cannot occur
+in equivalence, common, or data statements.
 
 A Cray pointer may also point to a function or a subroutine.  For
 example, the following excerpt is valid:
@@ -1719,7 +1719,8 @@ code that uses them running with the GNU Fortran compiler.
 @c * TYPE and ACCEPT I/O Statements::
 @c * .XOR. operator::
 @c * CARRIAGECONTROL, DEFAULTFILE, DISPOSE and RECORDTYPE I/O specifiers::
-@c * Omitted arguments in procedure call:
+@c * Omitted arguments in procedure call::
+* Alternate complex function syntax::
 @end menu
 
 
@@ -1894,6 +1895,18 @@ c
 @end smallexample
 
 
+@node Alternate complex function syntax
+@subsection Alternate complex function syntax
+@cindex Complex function
+
+Some Fortran compilers, including @command{g77}, let the user declare
+complex functions with the syntax @code{COMPLEX FUNCTION name*16()}, as
+well as @code{COMPLEX*16 FUNCTION name()}. Both are non-standard, legacy
+extensions. @command{gfortran} accepts the latter form, which is more
+common, but not the former.
+
+
+
 @c ---------------------------------------------------------------------
 @c Mixed-Language Programming
 @c ---------------------------------------------------------------------