diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-03 20:37:03 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-09-03 20:37:03 +0000 |
commit | 667fed2f9f77284bffe19107853077b0f87f1c77 (patch) | |
tree | 42f712b9d5a72b47fe8d9db229a8fc5deab54258 /gcc | |
parent | 4ba3263810a808881ccb9af08b2debc044915c3c (diff) | |
download | ppe42-gcc-667fed2f9f77284bffe19107853077b0f87f1c77.tar.gz ppe42-gcc-667fed2f9f77284bffe19107853077b0f87f1c77.zip |
* decl.c (finish_function): Clean out pointers we no longer need.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87055 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/decl.c | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 4dafed925b7..4e25f69c98d 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2004-09-03 Jan Hubicka <jh@suse.cz> + + * decl.c (finish_function): Clean out pointers we no longer need. + 2004-09-03 Jan Beulich <jbeulich@novell.com> * g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 55db551001b..1aed934a3e5 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -10451,11 +10451,23 @@ finish_function (int flags) /* Genericize before inlining. */ if (!processing_template_decl) { + struct language_function *f = DECL_SAVED_FUNCTION_DATA (fndecl); cp_genericize (fndecl); + /* Clear out the bits we don't need. */ + f->x_current_class_ptr = NULL; + f->x_current_class_ref = NULL; + f->x_eh_spec_block = NULL; + f->x_in_charge_parm = NULL; + f->x_vtt_parm = NULL; + f->x_return_value = NULL; + f->bindings = NULL; /* Handle attribute((warn_unused_result)). Relies on gimple input. */ c_warn_unused_result (&DECL_SAVED_TREE (fndecl)); } + /* Clear out the bits we don't need. */ + local_names = NULL; + named_label_uses = NULL; /* We're leaving the context of this function, so zap cfun. It's still in DECL_STRUCT_FUNCTION, and we'll restore it in tree_rest_of_compilation. */ |