re PR c++/28114 (ICE with struct definition in argument of template function)

PR c++/28114
	* name-lookup.c (pushtag): Return if we have error_mark_node.

From-SVN: r114953
This commit is contained in:
Steve Ellcey 2006-06-23 21:58:25 +00:00 committed by Steve Ellcey
parent e135a63713
commit c5f8391c77
2 changed files with 10 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2006-06-23 Steve Ellcey <sje@cup.hp.com>
PR c++/28114
* name-lookup.c (pushtag): Return if we have error_mark_node.
2006-06-23 Steve Ellcey <sje@cup.hp.com>
PR c++/27019

View File

@ -4872,7 +4872,11 @@ pushtag (tree name, tree type, tag_scope scope)
pushdecl_class_level (decl);
}
else if (b->kind != sk_template_parms)
decl = pushdecl_with_scope (decl, b, /*is_friend=*/false);
{
decl = pushdecl_with_scope (decl, b, /*is_friend=*/false);
if (decl == error_mark_node)
POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, decl);
}
TYPE_CONTEXT (type) = DECL_CONTEXT (decl);