summaryrefslogtreecommitdiff
path: root/gcc/fortran/st.c
diff options
context:
space:
mode:
authortobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-29 17:15:48 +0000
committertobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-29 17:15:48 +0000
commit8581350b5a622b702a271adfa930e49e86ff66b3 (patch)
tree932f0cbc2ec95ee8d7f4af821c8414255f18bcaa /gcc/fortran/st.c
parent40513f402264c4267e81fe80911296d0977eaa16 (diff)
downloadgcc-8581350b5a622b702a271adfa930e49e86ff66b3.tar.gz
fortran/
PR fortran/38507 * gfortran.h (gfc_st_label): Fix comment. (gfc_exec_op): Add statement code EXEC_END_BLOCK for end of block. * parse.c (accept_statement): Use EXEC_END_BLOCK for END IF and END SELECT with labels. (check_do_closure): Fix formatting. (parse_do_block): Fix typo in error message. * resolve.c (code_stack): Remove tail member. Update comment to new use of reachable_labels. (reachable_labels): Rename to ... (find_reachable_labels): ... this. Overhaul. Update preceding comment. (resolve_branch): Fix comment preceding function. Rewrite. (resolve_code): Update call to find_reachable_labels. Add code to deal with EXEC_END_BLOCK. * st.c (gfc_free_statement): Add code to deal with EXEC_END_BLOCK. * trans.c (gfc_trans_code): Likewise. testsuite/ * do_4.f: New. * goto_2.f90: Correct expected warnings. * goto_4.f90: Likewise. * goto_5.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145245 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/st.c')
-rw-r--r--gcc/fortran/st.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/st.c b/gcc/fortran/st.c
index 18f1b6d91c4..4f82050bcc0 100644
--- a/gcc/fortran/st.c
+++ b/gcc/fortran/st.c
@@ -1,5 +1,5 @@
/* Build executable statement trees.
- Copyright (C) 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008
+ Copyright (C) 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008, 2009
Free Software Foundation, Inc.
Contributed by Andy Vaught
@@ -88,6 +88,7 @@ gfc_free_statement (gfc_code *p)
switch (p->op)
{
case EXEC_NOP:
+ case EXEC_END_BLOCK:
case EXEC_ASSIGN:
case EXEC_INIT_ASSIGN:
case EXEC_GOTO: