This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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



------- 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]