Skip to content

Commit 4ea8be4

Browse files
committed
checked compliance with qualified (member) function partial specialization
1 parent 98365dc commit 4ea8be4

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

test/mp_lambda.cpp

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,30 @@
88

99

1010
#if 1
11+
template<class... T> struct foo;
12+
13+
template<class R, class... T> struct foo<R(T...)> {};
14+
template<class R, class... T> struct foo<R(T...)const> {};
15+
template<class R, class... T> struct foo<R(T...)const volatile> {};
16+
template<class R, class... T> struct foo<R(T...)&> {};
17+
template<class R, class... T> struct foo<R(T...)const&> {};
18+
template<class R, class... T> struct foo<R(T...)const volatile&> {};
19+
template<class R, class... T> struct foo<R(T...)&&> {};
20+
template<class R, class... T> struct foo<R(T...)const&&> {};
21+
template<class R, class... T> struct foo<R(T...)const volatile&&> {};
22+
template<class R, class C, class... T> struct foo<R (C::*)(T...)> {};
23+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const> {};
24+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const volatile> {};
25+
template<class R, class C, class... T> struct foo<R (C::*)(T...)&> {};
26+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const&> {};
27+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const volatile&> {};
28+
template<class R, class C, class... T> struct foo<R (C::*)(T...)&&> {};
29+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const&&> {};
30+
template<class R, class C, class... T> struct foo<R (C::*)(T...)const volatile&&> {};
31+
32+
1133
int main()
1234
{
13-
using type = int() const;
1435
}
1536
#else
1637
#include <boost/mp11/lambda.hpp>

0 commit comments

Comments
 (0)