This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/50071] gfortran does not distinguish labels in different type scoping units
- From: "mikael at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 18 Aug 2011 22:42:45 +0000
- Subject: [Bug fortran/50071] gfortran does not distinguish labels in different type scoping units
- Auto-submitted: auto-generated
- References: <bug-50071-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50071
--- Comment #5 from Mikael Morin <mikael at gcc dot gnu.org> 2011-08-18 22:42:45 UTC ---
Author: mikael
Date: Thu Aug 18 22:42:38 2011
New Revision: 177885
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=177885
Log:
2011-08-19 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* gfortran.h (gfc_exec_op): New constant EXEC_END_NESTED_BLOCK.
* parse.c (check_statement_label): Accept ST_END_BLOCK and
ST_END_ASSOCIATE as valid branch target.
(accept_statement): Change EXEC_END_BLOCK to EXEC_END_NESTED_BLOCK.
Add EXEC_END_BLOCK code in the ST_END_BLOCK and ST_END_ASSOCIATE cases.
* resolve.c (find_reachable_labels): Change EXEC_END_BLOCK to
EXEC_END_NESTED_BLOCK.
(resolve_branch): Ditto.
(resolve_code): Add EXEC_END_NESTED_BLOCK case.
* st.c (gfc_free_statement): Ditto.
* trans.c (trans_code): Ditto.
2011-08-19 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* gfortran.dg/end_block_label_1.f90: New test.
* gfortran.dg/end_associate_label_1.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/end_associate_label_1.f90
trunk/gcc/testsuite/gfortran.dg/end_block_label_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/parse.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/st.c
trunk/gcc/fortran/trans.c
trunk/gcc/testsuite/ChangeLog