re PR c++/6255 (ICE with templatess)

PR c++/6255
        * decl.c (lookup_name_real): Build a new TYPENAME_TYPE rather than
        modifying the old one.

From-SVN: r55352
This commit is contained in:
Jason Merrill 2002-07-09 19:45:37 -04:00 committed by Jason Merrill
parent 8ba658eea5
commit abf92e2699
2 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2002-07-10 Jason Merrill <jason@redhat.com>
PR c++/6255
* decl.c (lookup_name_real): Build a new TYPENAME_TYPE rather than
modifying the old one.
2002-07-09 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (constructor_name_p): Declare it.

View File

@ -6072,7 +6072,13 @@ lookup_name_real (name, prefer_type, nonclass, namespaces_only)
if (got_scope && got_scope != type
&& val && TREE_CODE (val) == TYPE_DECL
&& TREE_CODE (TREE_TYPE (val)) == TYPENAME_TYPE)
TYPE_CONTEXT (TREE_TYPE (val)) = got_scope;
{
val = TREE_TYPE (val);
val = build_typename_type (got_scope, name,
TYPENAME_TYPE_FULLNAME (val),
TREE_TYPE (val));
val = TYPE_STUB_DECL (val);
}
}
}
else