* g++.dg/cpp0x/fntmpdefarg3.C: New.

From-SVN: r190683
This commit is contained in:
Jason Merrill 2012-08-25 23:50:56 -04:00 committed by Jason Merrill
parent 063c573e9e
commit 645acb6b9b
2 changed files with 10 additions and 6 deletions

View File

@ -1,3 +1,7 @@
2012-08-25 Jason Merrill <jason@redhat.com>
* g++.dg/cpp0x/fntmpdefarg3.C: New.
2012-08-25 Paolo Carlini <paolo.carlini@oracle.com> 2012-08-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51421 PR c++/51421

View File

@ -2,8 +2,8 @@
template <class T, class = typename T::I> void f(T) {} template <class T, class = typename T::I> void f(T) {}
template <class T, class = typename T::I> void g(T) {} template <class T, class = typename T::I> void g(T) {}
// template <class T, class = typename T::I> void h(T) {} template <class T, class = typename T::I> void h(T) {}
// template <class T, class = typename T::I> void i(T) {} template <class T, class = typename T::I> void i(T) {}
template <class T, class = typename T::I> void j(T) {} // { dg-error "this context" } template <class T, class = typename T::I> void j(T) {} // { dg-error "this context" }
class A class A
@ -11,8 +11,8 @@ class A
typedef int I; // { dg-error "private" } typedef int I; // { dg-error "private" }
template <class T, class> friend void f(T); template <class T, class> friend void f(T);
friend void g<A,I>(A); friend void g<A,I>(A);
// friend void h<A>(A); friend void h<A>(A);
// friend void i<>(A); friend void i<>(A);
}; };
int main() int main()
@ -20,7 +20,7 @@ int main()
A a; A a;
f(a); f(a);
g(a); g(a);
// h(a); h(a);
// i(a); i(a);
j(a); // { dg-error "no match" } j(a); // { dg-error "no match" }
} }