* typeck2.c (abstract_virtuals_error): Don't check when
TYPE is still template parameter dependent.
* g++.dg/template/friend16.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63362
138bc75d-0d04-0410-961f-
82ee72b054a4
+2003-02-24 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/9602
+ * typeck2.c (abstract_virtuals_error): Don't check when
+ TYPE is still template parameter dependent.
+
2003-02-23 Mark Mitchell <mark@codesourcery.com>
PR c++/5333
CLASSTYPE_PURE_VIRTUALS holds the inline friends. */
return 0;
+ if (dependent_type_p (type))
+ /* For a dependent type, we do not yet know which functions are pure
+ virtuals. */
+ return 0;
+
u = CLASSTYPE_PURE_VIRTUALS (type);
if (decl)
{
+2003-02-24 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/9602
+ * g++.dg/template/friend16.C: New test.
+
2003-02-23 Mark Mitchell <mark@codesourcery.com>
PR c++/5333
--- /dev/null
+// { dg-do compile }
+
+// Origin: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
+
+// PR c++/9602: Inline friend/pure virtual tree data sharing in
+// class template.
+
+template <typename T> struct X {
+ void foo (X);
+ friend void bar () {}
+};
+
+template <typename T>
+void X<T>::foo (X x) {}
+
+template struct X<int>;