11
11
12
12
#if BOOST_MP11_WORKAROUND(BOOST_MP11_MSVC, <= 1800)
13
13
14
- #pragma message("Test skipped because mp_lambda is not supported ")
14
+ #pragma message("Test skipped because BOOST_MP11_MSVC <= 1800 ")
15
15
int main () {}
16
16
17
17
#else
@@ -54,27 +54,27 @@ int main()
54
54
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1>::fn<int >, int >));
55
55
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_2>::fn<void , int >, int >));
56
56
57
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<const _1 >::fn<int >, CONST int >));
58
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<volatile _1 >::fn<int >, VOLATILE int >));
59
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<const volatile _2 >::fn<void , int >, CONST VOLATILE int >));
57
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 const >::fn<int >, int CONST >));
58
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 volatile >::fn<int >, int VOLATILE >));
59
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_2 const volatile >::fn<void , int >, int CONST VOLATILE>));
60
60
61
61
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1*>::fn<int >, int *>));
62
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<const _1 *>::fn<int >, CONST int *>));
63
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<const _1 * const >::fn<int >, CONST int * CONST>));
64
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<const _1 *>::fn<void >, CONST void *>));
62
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 const *>::fn<int >, int CONST *>));
63
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 const * const >::fn<int >, int CONST * CONST>));
64
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 const *>::fn<void >, void CONST *>));
65
65
66
66
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1&>::fn<int >, int &>));
67
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<volatile _1 *&>::fn<int >, VOLATILE int *&>));
67
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 volatile *&>::fn<int >, int VOLATILE *&>));
68
68
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1&&>::fn<int >, int &&>));
69
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<volatile _1 *&&>::fn<int >, VOLATILE int *&&>));
69
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 volatile *&&>::fn<int >, int VOLATILE *&&>));
70
70
71
71
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1[]>::fn<int >, int []>));
72
72
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1[5 ]>::fn<int >, int [5 ]>));
73
73
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1*[][5 ]>::fn<int >, int *[][5 ]>));
74
74
75
75
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2, _3)>::fn<int , char , double >, int (char , double )>));
76
76
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<int (_2)>::fn<void , char >, int (char )>));
77
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (void )>::fn<void >, void ()>));
77
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 ()>::fn<void >, void ()>));
78
78
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2, _2*)>::fn<int , char >, int (char , char *)>));
79
79
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (*[])(_2)>::fn<int , char >, int (*[])(char )>));
80
80
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2, ...)>::fn<int , char >, int (char , ...)>));
@@ -93,18 +93,18 @@ int main()
93
93
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile &&>::fn<int , char >, int (char ) volatile &&>));
94
94
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile &&>::fn<int , char >, int (char ) const volatile &&>));
95
95
96
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) noexcept >::fn<int , char >, int (char ) noexcept >));
97
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const noexcept >::fn<int , char >, int (char ) const noexcept >));
98
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile noexcept >::fn<int , char >, int (char ) volatile noexcept >));
99
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile noexcept >::fn<int , char >, int (char ) const volatile noexcept >));
100
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2)& noexcept >::fn<int , char >, int (char )& noexcept >));
101
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const & noexcept >::fn<int , char >, int (char ) const & noexcept >));
102
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile & noexcept >::fn<int , char >, int (char ) volatile & noexcept >));
103
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile & noexcept >::fn<int , char >, int (char ) const volatile & noexcept >));
104
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2)&& noexcept >::fn<int , char >, int (char )&& noexcept >));
105
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const && noexcept >::fn<int , char >, int (char ) const && noexcept >));
106
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile && noexcept >::fn<int , char >, int (char ) volatile && noexcept >));
107
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile && noexcept >::fn<int , char >, int (char ) const volatile && noexcept >));
96
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) noexcept >::fn<int , char >, int (char ) noexcept >));
97
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const noexcept >::fn<int , char >, int (char ) const noexcept >));
98
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile noexcept >::fn<int , char >, int (char ) volatile noexcept >));
99
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile noexcept >::fn<int , char >, int (char ) const volatile noexcept >));
100
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2)& noexcept >::fn<int , char >, int (char )& noexcept >));
101
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const & noexcept >::fn<int , char >, int (char ) const & noexcept >));
102
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile & noexcept >::fn<int , char >, int (char ) volatile & noexcept >));
103
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile & noexcept >::fn<int , char >, int (char ) const volatile & noexcept >));
104
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2)&& noexcept >::fn<int , char >, int (char )&& noexcept >));
105
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const && noexcept >::fn<int , char >, int (char ) const && noexcept >));
106
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) volatile && noexcept >::fn<int , char >, int (char ) volatile && noexcept >));
107
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_2) const volatile && noexcept >::fn<int , char >, int (char ) const volatile && noexcept >));
108
108
109
109
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2)>::fn<int , char , X>, int (X::*)(char )>));
110
110
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const >::fn<int , char , X>, int (X::*)(char ) const >));
@@ -119,28 +119,28 @@ int main()
119
119
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile &&>::fn<int , char , X>, int (X::*)(char ) volatile &&>));
120
120
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile &&>::fn<int , char , X>, int (X::*)(char ) const volatile &&>));
121
121
122
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) noexcept >::fn<int , char , X>, int (X::*)(char ) noexcept >));
123
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const noexcept >::fn<int , char , X>, int (X::*)(char ) const noexcept >));
124
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile noexcept >::fn<int , char , X>, int (X::*)(char ) volatile noexcept >));
125
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile noexcept >));
126
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2)& noexcept >::fn<int , char , X>, int (X::*)(char )& noexcept >));
127
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const & noexcept >::fn<int , char , X>, int (X::*)(char ) const & noexcept >));
128
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile & noexcept >::fn<int , char , X>, int (X::*)(char ) volatile & noexcept >));
129
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile & noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile & noexcept >));
130
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2)&& noexcept >::fn<int , char , X>, int (X::*)(char )&& noexcept >));
131
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const && noexcept >::fn<int , char , X>, int (X::*)(char ) const && noexcept >));
132
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile && noexcept >::fn<int , char , X>, int (X::*)(char ) volatile && noexcept >));
133
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile && noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile && noexcept >));
134
-
135
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 ( _2::*) >::fn<int , X>, int ( X::*) >));
122
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) noexcept >::fn<int , char , X>, int (X::*)(char ) noexcept >));
123
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const noexcept >::fn<int , char , X>, int (X::*)(char ) const noexcept >));
124
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile noexcept >::fn<int , char , X>, int (X::*)(char ) volatile noexcept >));
125
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile noexcept >));
126
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2)& noexcept >::fn<int , char , X>, int (X::*)(char )& noexcept >));
127
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const & noexcept >::fn<int , char , X>, int (X::*)(char ) const & noexcept >));
128
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile & noexcept >::fn<int , char , X>, int (X::*)(char ) volatile & noexcept >));
129
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile & noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile & noexcept >));
130
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2)&& noexcept >::fn<int , char , X>, int (X::*)(char )&& noexcept >));
131
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const && noexcept >::fn<int , char , X>, int (X::*)(char ) const && noexcept >));
132
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) volatile && noexcept >::fn<int , char , X>, int (X::*)(char ) volatile && noexcept >));
133
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 (_3::*)(_2) const volatile && noexcept >::fn<int , char , X>, int (X::*)(char ) const volatile && noexcept >));
134
+
135
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<_1 _2::*>::fn<int , X>, int X::*>));
136
136
137
137
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::pair<_1, _2>>::fn<char , int >, std::pair<char , int >>));
138
138
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::pair<_2, _1>>::fn<char , int >, std::pair<int , char >>));
139
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::pair<const _1 *, _2&>>::fn<char , int >, std::pair<CONST char *, int &>>));
139
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::pair<_1 const *, _2&>>::fn<char , int >, std::pair<char CONST *, int &>>));
140
140
141
141
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<_1, _2>>::fn<char , int >, std::tuple<char , int >>));
142
142
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<_2, _1>*>::fn<X, int >, std::tuple<int , X>*>));
143
- BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<const _1 *, _2&>*>::fn<char , int >, std::tuple<CONST char *, int &>*>));
143
+ BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<_1 const *, _2&>*>::fn<char , int >, std::tuple<char CONST *, int &>*>));
144
144
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<_3, std::pair<_2, _1>>>::fn<char , int , double >, std::tuple<double , std::pair<int , char >>>));
145
145
146
146
BOOST_TEST_TRAIT_TRUE ((std::is_same<mp_lambda<std::tuple<_1, _2>>::fn<_2, _1>, std::tuple<_2, _1>>));
0 commit comments