[Patch, Fortran] PR49397 - Fix ICE with proc-pointers

Tobias Burnus burnus@net-b.de
Tue Feb 18 22:10:00 GMT 2014


Hi Janus,

Janus Weil wrote:
> your patch basically looks good to me. One minor nit about the 
> trans-decl.c part: The comment above the code that you're changing 
> ("Only used for ...") seems wrong after the change.

Well, it also was kind of wrong before the change as well; I have 
changed it to:

    if (sym->attr.flavor == FL_PROCEDURE)
      {
-      /* Catch function declarations. Only used for actual parameters,
+      /* Catch functions. Only used for actual parameters,
          procedure pointers and procptr initialization targets.  */


> Maybe just remove that sentence? About the previous version of the 
> patch (in bugzilla) I was wondering if setting the EXTERNAL attribute 
> is really the correct thing to do, but it seems that is not done any 
> more in this version. To my taste the patch is ok for all of trunk, 
> 4.8 and 4.7. 

I also find it a bit problematic - an explicit "external" is (slightly) 
different to implicitly using it. In any case, the original version 
causes ICEs with some testcases, e.g. bessel_3.f90.

Committed as Rev. 207854 for the trunk; I will wait a while before 
backporting to 4.8 and 4.7.

Tobias



More information about the Gcc-patches mailing list