Patchwork Update to Fortran "invoke" documentation about the features -finit-<type> *really* provides.

login
register
mail settings
Submitter Toon Moene
Date Dec. 5, 2011, 6:21 p.m.
Message ID <4EDD0BC7.4090500@moene.org>
Download mbox | patch
Permalink /patch/129393/
State New
Headers show

Comments

Toon Moene - Dec. 5, 2011, 6:21 p.m.
And, as indicated, the list might change in the future.

ChangeLog:

2011-12-05  Toon Moene  <toon@moene.org>

	PR/51310
	invoke.texi: Itemize the cases for which -finit-<type> doesn't
	work.

OK for trunk ? (and perhaps later for the 4.6 branch ?
Steve Kargl - Dec. 6, 2011, 7:32 p.m.
On Mon, Dec 05, 2011 at 07:21:59PM +0100, Toon Moene wrote:
> 
> 2011-12-05  Toon Moene  <toon@moene.org>
> 
> 	PR/51310
> 	invoke.texi: Itemize the cases for which -finit-<type> doesn't
> 	work.
> 
> OK for trunk ? (and perhaps later for the 4.6 branch ?
> 

Looks good to me.  You can apply it to the 4.6 branch 
if you have time.
Toon Moene - Dec. 7, 2011, 6:58 p.m.
On 12/06/2011 08:32 PM, Steve Kargl wrote:

> On Mon, Dec 05, 2011 at 07:21:59PM +0100, Toon Moene wrote:
>>
>> 2011-12-05  Toon Moene<toon@moene.org>
>>
>> 	PR/51310
>> 	invoke.texi: Itemize the cases for which -finit-<type>  doesn't
>> 	work.
>>
>> OK for trunk ? (and perhaps later for the 4.6 branch ?
>>
>
> Looks good to me.  You can apply it to the 4.6 branch
> if you have time.

And then .... shortly before applying it, I realized that the proper 
documentation of the limitations might be dependent on the 
-fno-automatic, -fstack-arrays and -fmax-stack-var-size=n compiler flags 
used.

So I'll come back tomorrow with version 2.0 of this patch, after 
checking out all of the above (the documentation of 4.6 and 4.7 will be 
different if using -fstack-arrays makes a difference, because that 
option only exists in 4.7).
Toon Moene - Dec. 8, 2011, 8:58 p.m.
On 12/07/2011 07:58 PM, Toon Moene wrote:

> On 12/06/2011 08:32 PM, Steve Kargl wrote:

>> Looks good to me. You can apply it to the 4.6 branch
>> if you have time.
>
> And then .... shortly before applying it, I realized that the proper
> documentation of the limitations might be dependent on the
> -fno-automatic, -fstack-arrays and -fmax-stack-var-size=n compiler flags
> used.
>
> So I'll come back tomorrow with version 2.0 of this patch, after
> checking out all of the above (the documentation of 4.6 and 4.7 will be
> different if using -fstack-arrays makes a difference, because that
> option only exists in 4.7).

The flags mentioned turned out not to make a difference.  I committed 
the patch as-is to the trunk as revision 182127.  On the 4.6 branch it 
is revision 182138.

I will now change the type of the bug report to "Enhancement" - after 
all, all of these ease-debugging flags are enhancements over standard 
compiler behavior (quality-of-implementation issue, as we call it on 
http://j3-fortran.org).

Thanks for the review.

Patch

Index: invoke.texi
===================================================================
--- invoke.texi	(revision 182001)
+++ invoke.texi	(working copy)
@@ -1471,10 +1471,18 @@ 
 the real and imaginary parts of local @code{COMPLEX} variables),
 @option{-finit-logical=@var{<true|false>}}, and
 @option{-finit-character=@var{n}} (where @var{n} is an ASCII character
-value) options.  These options do not initialize components of derived
-type variables, nor do they initialize variables that appear in an
-@code{EQUIVALENCE} statement.  (This limitation may be removed in
-future releases).
+value) options.  These options do not initialize
+@itemize @bullet
+@item
+automatic arrays
+@item
+allocatable arrays
+@item
+components of derived type variables
+@item
+variables that appear in an @code{EQUIVALENCE} statement.
+@end itemize
+(These limitations may be removed in future releases).
 
 Note that the @option{-finit-real=nan} option initializes @code{REAL}
 and @code{COMPLEX} variables with a quiet NaN. For a signalling NaN