[Bug fortran/34975] [4.3 Regression] Bogus error with USEing modules

paulthomas2 at wanadoo dot fr gcc-bugzilla@gcc.gnu.org
Sun Jan 27 10:27:00 GMT 2008



------- Comment #5 from paulthomas2 at wanadoo dot fr  2008-01-27 07:09 -------
Subject: Re:  [4.3 Regression] Bogus error with USEing
 modules

burnus at gcc dot gnu dot org wrote:
> ------- Comment #4 from burnus at gcc dot gnu dot org  2008-01-27 00:14 -------
>   
>> If the ONLY's i test.f90 are removed, it builds fine
>>     
> Actually, also removing a single dummy argument (e.g. "df") and it builds fine.
> I think somewhere the tree might be walked wrongly. The question is only where.
>
> Looking at gfc_get_sym_tree, one sees that i and ipol are created twice in ns =
> gfc_ns_current (= 0x17f7d80). "n" itself appears directly after the symbol
> "complex" has been created, which means that it has not been added in module.c? 
> Except for "gfc_check_interfaces" gfc_ns_current does not seem to be touched
> anywhere and that routine resets it.
>   
This is what I am alluding to in the PR - the "hidden." prefix is 
screwing up the placement of new symbols - i and ipol, which are already 
present because they are dummies, get missed and new copies added at the 
type declaration.  I have a partial patch working, which causes another 
regression for reasons that I understand.

I'll try to get something out of the door in the next 24 hours.

Paul
> The error message at the end comes via gfc_parse_file's call to "gfc_resolve
> (gfc_current_ns)".
>
>
>   


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34975



More information about the Gcc-bugs mailing list