diff options
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/decl.c | 14 |
2 files changed, 12 insertions, 7 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 78658fd..57d129a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1998-12-15 Mark Mitchell <mark@markmitchell.com> + + * decl.c (finish_function): Undo inadvertant change in previous + patch. + 1998-12-14 Mark Mitchell <mark@markmitchell.com> * class.c (pushclass): Tweak handling of class-level bindings. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 8940acb..81fa59f 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -13765,13 +13765,6 @@ finish_function (lineno, flags, nested) expand_function_end (input_filename, lineno, 1); } - /* Must mark the RESULT_DECL as being in this function. */ - DECL_CONTEXT (DECL_RESULT (fndecl)) = fndecl; - - /* Set the BLOCK_SUPERCONTEXT of the outermost function scope to point - to the FUNCTION_DECL node itself. */ - BLOCK_SUPERCONTEXT (DECL_INITIAL (fndecl)) = fndecl; - /* If we're processing a template, squirrel away the definition until we do an instantiation. */ if (processing_template_decl) @@ -13811,6 +13804,13 @@ finish_function (lineno, flags, nested) pop_nested_class (1); } + /* Must mark the RESULT_DECL as being in this function. */ + DECL_CONTEXT (DECL_RESULT (fndecl)) = fndecl; + + /* Set the BLOCK_SUPERCONTEXT of the outermost function scope to point + to the FUNCTION_DECL node itself. */ + BLOCK_SUPERCONTEXT (DECL_INITIAL (fndecl)) = fndecl; + if (!in_template) { int saved_flag_keep_inline_functions = |