diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-11 21:02:31 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-11 21:02:31 +0000 |
commit | 93c149df04baceb7006fd44481e180ffb6824b16 (patch) | |
tree | b47ca1ae95a6c5cdd74d9e1827122aa0590299ed /gcc/cp/optimize.c | |
parent | 99f9b95900ce69e8f0f7c9f239af584c36ae9f99 (diff) | |
download | gcc-93c149df04baceb7006fd44481e180ffb6824b16.tar.gz |
* cp-tree.h (saved_scope): Make old_bindings a vector.
(unuse_fields): Remove.
* name-lookup.h (cxx_saved_binding): Define it.
* class.c (pushclass): Don't use unuse_fields.
* name-lookup.c (cxx_saved_binding_make): Remove.
(store_binding): Add new bindings to a vector, using an
accumulator style, rather than adding them to a list.
(store_bindings): Adjust accordingly.
(store_class_bindings): Likewise.
(push_to_top_level): Likewise.
(pop_from_top_level): Likewise.
* optimize.c (maybe_clone_body): Must push_to_top_level and
pop_from_top_level calls outside of loop.
* parser.c (cp_parser_class_specifier): Move push_scope/pop_scope
calls here from cp_parser_late_parsing_default_args.
(cp_parser_save_default_args): Record the class type in which the
function is declared.
(cp_parser_late_parsing_default_args): Do not call
push_nested_class/pop_nested_class.
* search.c (dfs_unuse_fields): Remove.
(unuse_fields): Remove.
* g++.dg/parse/defarg8.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84530 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/optimize.c')
-rw-r--r-- | gcc/cp/optimize.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c index 448a0b376a9..8a3ebe6ebbe 100644 --- a/gcc/cp/optimize.c +++ b/gcc/cp/optimize.c @@ -88,6 +88,7 @@ maybe_clone_body (tree fn) /* We know that any clones immediately follow FN in the TYPE_METHODS list. */ + push_to_top_level (); for (clone = TREE_CHAIN (fn); clone && DECL_CLONED_FUNCTION_P (clone); clone = TREE_CHAIN (clone)) @@ -131,7 +132,6 @@ maybe_clone_body (tree fn) update_cloned_parm (parm, clone_parm); /* Start processing the function. */ - push_to_top_level (); start_preparsed_function (clone, NULL_TREE, SF_PRE_PARSED); /* Remap the parameters. */ @@ -198,8 +198,8 @@ maybe_clone_body (tree fn) finish_function (0); BLOCK_ABSTRACT_ORIGIN (DECL_INITIAL (clone)) = DECL_INITIAL (fn); expand_or_defer_fn (clone); - pop_from_top_level (); } + pop_from_top_level (); /* We don't need to process the original function any further. */ return 1; |