'gcc-3_2-branch'.
From-SVN: r58263
--- /dev/null
+// { dg-do compile }
+// { dg-options "-Wabi" }
+
+struct A {
+ template <typename T> int f ();
+};
+
+typedef int (A::*P)();
+
+template <P> struct S {};
+
+void g (S<&A::f<int> >) {} // { dg-warning "mangle" }
--- /dev/null
+// { dg-options "-Wabi" }
+
+enum E { e = 3 };
+
+template <int I> struct S {};
+
+template <int I> void f (S<e + int (3.7)>) {}
+template void f<7>(S<e + int (3.7)>); // { dg-warning "mangle" }
+
+template <int I> void g (S<e + int (3.7)>) {}
+template void g<7>(S<e + int (3.7)>); // { dg-warning "mangle" }
--- /dev/null
+class A
+{
+public:
+ typedef int T;
+ int a;
+};
+
+class B : virtual private A
+{
+};
+
+class C : virtual private A, public B
+{
+public:
+ using A::a;
+ using A::T;
+};
+
+C::T x;