re PR c++/17929 (ICE with qualified name in template specialization)

PR c++/17929
	* decl2.c (finish_anon_union): Robustify.

From-SVN: r88886
This commit is contained in:
Mark Mitchell 2004-10-11 16:59:23 +00:00 committed by Mark Mitchell
parent 6936e493b5
commit 06c00c701b
2 changed files with 13 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2004-10-11 Mark Mitchell <mark@codesourcery.com>
PR c++/17929
* decl2.c (finish_anon_union): Robustify.
2004-10-11 Nathan Sidwell <nathan@codesourcery.com>
* cp-tree.h (get_dynamic_cast_base_type): Rename to ...

View File

@ -1182,9 +1182,15 @@ build_anon_union_vars (tree object)
void
finish_anon_union (tree anon_union_decl)
{
tree type = TREE_TYPE (anon_union_decl);
tree type;
tree main_decl;
bool public_p = TREE_PUBLIC (anon_union_decl);
bool public_p;
if (anon_union_decl == error_mark_node)
return;
type = TREE_TYPE (anon_union_decl);
public_p = TREE_PUBLIC (anon_union_decl);
/* The VAR_DECL's context is the same as the TYPE's context. */
DECL_CONTEXT (anon_union_decl) = DECL_CONTEXT (TYPE_NAME (type));