This is the mail archive of the gcc-patches@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] |
Hi all, the attached patch fixes an issue with BLOCK namespaces and symbol resolution: In certain cases (e.g. a procedure being passed as an actual argument to some other procedure call inside a BLOCK statement) resolving the procedure symbol fails, because the symbol is being created in the local BLOCK namespace (at parsing stage), since it is not known yet that the procedure will be defined in the parent PROGRAM/MODULE namespace. The patch fixes this at resolution stage, by removing the extra symbol from the local BLOCK namespace, in a similar way as it was already being done for generics (as proposed by Tobias). It is regtested on x86_64-unknown-linux-gnu. Ok for trunk? Cheers, Janus 2010-12-17? Janus Weil? <janus@gcc.gnu.org> ??? ??? Tobias Burnus <burnus@gcc.gnu.org> ??? PR fortran/46849 ??? * resolve.c (resolve_symbol): Remove symbols that wrongly ended up ??? in a local BLOCK namespace. 2010-12-17? Janus Weil? <janus@gcc.gnu.org> ??? PR fortran/46849 ??? * gfortran.dg/block_9.f08: New.
Attachment:
pr46849.diff
Description: Binary data
Attachment:
block_9.f08
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |