diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/cp/semantics.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 96262b4..38e90b2 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1999-10-28 Mark Mitchell <mark@codesourcery.com> + + * semantics.c (finish_handler): End the scope of the handler + before attaching it to the statement-tree. + 1999-10-28 Ian Lance Taylor <ian@zembu.com> * rtti.c (build_dynamic_cast_1): Give a better error message for diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index de6cd08..d0a30ba 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -887,10 +887,10 @@ finish_handler (blocks, handler) } } + do_poplevel (); + if (building_stmt_tree ()) RECHAIN_STMTS (handler, HANDLER_BODY (handler)); - - do_poplevel (); } /* Begin a compound-statement. If HAS_NO_SCOPE is non-zero, the |
