This is the mail archive of the
mailing list for the GCC project.
Re: [C++ PATCH] Avoid sharing DECL_UID between different decls (was Re: checked in patch for PR 27793)
Jakub Jelinek wrote:
> Ok for trunk?
> 2006-06-09 Jakub Jelinek <firstname.lastname@example.org>
> PR middle-end/27793
> * cp-tree.h (cxx_int_tree_map): New struct.
> (struct language_function): Add extern_decl_map field.
> * name-lookup.c (pushdecl_maybe_friend): Add x -> t mapping
> to cp_function_chain->extern_decl_map hash table instead of
> copying over DECL_UID.
> * cp-gimplify.c (cxx_int_tree_map_eq, cxx_int_tree_map_hash): New
> (cp_genericize_r): Remap DECL_EXTERN local decls using
> cp_function_chain->extern_decl_map hash table.
> * decl.c (finish_function): Clear extern_decl_map.
(This doesn't fix a regression, per se, but as this is a continuation of
the previous discussion (before the branch rules went into effect on
mainline), and as this will no doubt make the middle end more robust, I
think it's best to put this in.)
Thank you for applying this band-aid to the C++ front end!
(650) 331-3385 x713