Commit b60ecc04 by Mark Mitchell Committed by Mark Mitchell

pt.c (push_template_decl_real): Don't remangle the name of a class template.

	* pt.c (push_template_decl_real): Don't remangle the name of a
	class template.

From-SVN: r39752
parent 1d2e075a
2001-02-15 Mark Mitchell <mark@codesourcery.com>
* pt.c (push_template_decl_real): Don't remangle the name of a
class template.
2001-02-15 Jim Meyering <meyering@lucent.com>
* Make-lang.in (c++.install-common): Depend on installdirs.
......
......@@ -2718,7 +2718,9 @@ push_template_decl_real (decl, is_friend)
{
SET_TYPE_TEMPLATE_INFO (TREE_TYPE (tmpl), info);
if ((!ctx || TREE_CODE (ctx) != FUNCTION_DECL)
&& TREE_CODE (TREE_TYPE (decl)) != ENUMERAL_TYPE)
&& TREE_CODE (TREE_TYPE (decl)) != ENUMERAL_TYPE
/* Don't change the name if we've already set it up. */
&& !IDENTIFIER_TEMPLATE (DECL_NAME (decl)))
DECL_NAME (decl) = classtype_mangled_name (TREE_TYPE (decl));
}
else if (DECL_LANG_SPECIFIC (decl))
......
// Build don't link:
// Origin: Mark Mitchell <mark@codesourcery.com>
template <class T>
class C {
template <class U>
friend class ::C;
};
namespace N
{
template <class T>
class D {
template <class U>
friend class N::D;
};
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment