* pt.c (tsubst_copy_and_build) <case CONSTRUCTOR>: Return early for null member pointer value. * g++.dg/cpp0x/nullptr40.C: New test. * g++.dg/cpp0x/nullptr41.C: New test. From-SVN: r268781
20 lines
410 B
C
20 lines
410 B
C
// PR c++/89212
|
|
// { dg-do compile { target c++11 } }
|
|
|
|
template <int, typename T> using enable_if_t = int;
|
|
|
|
template<typename U, typename W, typename Y, class X, W(X::*foo)() = nullptr>
|
|
struct p
|
|
{
|
|
template<U(Y::*fun)() = foo, typename T = enable_if_t<nullptr == fun, int>>
|
|
p(T) { }
|
|
p() = default;
|
|
};
|
|
|
|
struct A
|
|
{
|
|
p<void, void, A, A> i = 1;
|
|
void bar();
|
|
p<void, void, A, A, &A::bar> j;
|
|
};
|