re PR middle-end/27793 (num_ssa_names inconsistent or immediate use iterator wrong)
authorJakub Jelinek <jakub@redhat.com>
Tue, 13 Jun 2006 09:21:30 +0000 (11:21 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 13 Jun 2006 09:21:30 +0000 (11:21 +0200)
commit10827cd8b31a8ced2cf6fbd6e4b902628c9a4ceb
treedb3fc5592b68d1ca71570ab74208c662419bc2e0
parentcd8d4e24e0b04c77dd709aeea7075d0a6a0f2833
re PR middle-end/27793 (num_ssa_names inconsistent or immediate use iterator wrong)

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
functions.
(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.

PR c++/26757
PR c++/27894
* g++.dg/tree-ssa/pr26757.C: New test.
* g++.dg/tree-ssa/pr27894.C: New test.

From-SVN: r114607
gcc/cp/ChangeLog
gcc/cp/cp-gimplify.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/name-lookup.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/tree-ssa/pr26757.C [new file with mode: 0644]
gcc/testsuite/g++.dg/tree-ssa/pr27894.C [new file with mode: 0644]