Metatest report
always OK
test_apply_f OK
apply1<always<true>, false>
test_apply_f_f OK
apply2<always<true>, false, false>
test_apply_f_f_f OK
apply3<always<true>, false, false, false>
test_apply_0 OK
int<10>
test_apply_0_0 OK
int<10>
test_apply_0_0_0 OK
int<10>
apply OK
test1 OK
is_same<plus<int<2>, int<3>>, plus<int<2>, int<3>>>
test2 OK
is_same<???, ???>
test3 OK
is_same<???, ???>
test4 OK
equal_to<integral_c<int, 5>, int<5>>
test5 OK
is_same<plus<_1, _2>, plus<_1, _2>>
test6 OK
equal_to<integral_c<int, 5>, int<5>>
test7 OK
is_same<???, ???>
test8 OK
is_same<???, ???>
test9 OK
is_same<???, ???>
test10 OK
is_same<???, ???>
test11 OK
is_same<???, ???>
test12 OK
is_same<???, ???>
test13 OK
equal_to<integral_c<int, 5>, int<5>>
test14 OK
is_same<???, ???>
test15 OK
equal_to<integral_c<int, 10>, int<10>>
test16 OK
equal_to<integral_c<int, 10>, int<10>>
test17 OK
equal_to<integral_c<int, 5>, int<5>>
arithmetic OK
test_0_plus_10 OK
equal_to<int<10>, plus<int<0>, int<10>>>
test_10_plus_0 OK
equal_to<int<10>, plus<int<10>, int<0>>>
test_0_minus_10 OK
equal_to<int<-10>, minus<int<0>, int<10>>>
test_10_minus_0 OK
equal_to<int<10>, minus<int<10>, int<0>>>
test_1_times_10 OK
equal_to<int<10>, times<int<1>, int<10>>>
test_10_times_1 OK
equal_to<int<10>, times<int<10>, int<1>>>
test_1_mult_10 OK
equal_to<int<10>, ???>
test_10_mult_1 OK
equal_to<int<10>, ???>
test_10_div_1 OK
equal_to<int<10>, divides<int<10>, int<1>>>
test_10_mod_1 OK
equal_to<int<0>, modulus<int<10>, int<1>>>
test_10_mod_3 OK
equal_to<int<1>, modulus<int<10>, int<3>>>
test_10_minus_1_minus_10 OK
equal_to<int<-1>, minus<int<10>, int<1>, int<10>>>
test_10_plus_1_plus_10 OK
equal_to<int<21>, plus<int<10>, int<1>, int<10>>>
test_10_div_1_div_10 OK
equal_to<int<1>, divides<int<10>, int<1>, int<10>>>
test_negate_10 OK
equal_to<int<-10>, negate<int<10>>>
test_deref_1 OK
is_same<short, short>
test_deref_2 OK
equal_to<integral_c<int, 7>, int<7>>
bind OK
basic1 OK
is_same<int, int>
basic2 OK
is_same<int, int>
basic3 OK
is_same<int, int>
basic4 OK
is_same<int, int>
full1 OK
is_same<int, int>
full2 OK
is_same<int, int>
composition1 OK
is_same<int, int>
composition2 OK
is_same<int, int>
if1 OK
is_same<int<1>, int<1>>
if2 OK
is_same<int<0>, int<0>>
comparison OK
test_equal_to_1 OK
not_<equal_to<int<0>, int<10>>>
test_equal_to_2 OK
not_<equal_to<int<10>, int<0>>>
test_equal_to_3 OK
equal_to<int<10>, int<10>>
test_not_equal_to_1 OK
not_equal_to<int<0>, int<10>>
test_not_equal_to_2 OK
not_equal_to<int<10>, int<0>>
test_not_equal_to_3 OK
not_<not_equal_to<int<10>, int<10>>>
test_less_1 OK
less<int<0>, int<10>>
test_less_2 OK
not_<less<int<10>, int<0>>>
test_less_3 OK
not_<less<int<10>, int<10>>>
test_less_equal_1 OK
less_equal<int<0>, int<10>>
test_less_equal_2 OK
not_<less_equal<int<10>, int<0>>>
test_less_equal_3 OK
less_equal<int<10>, int<10>>
test_greater_1 OK
not_<greater<int<0>, int<10>>>
test_greater_2 OK
greater<int<10>, int<0>>
test_greater_3 OK
not_<greater<int<10>, int<10>>>
test_greater_equal_1 OK
not_<greater_equal<int<0>, int<10>>>
test_greater_equal_2 OK
greater_equal<int<10>, int<0>>
test_greater_equal_3 OK
greater_equal<int<10>, int<10>>
deque OK
test_size_1 OK
equal_to<size<mpl::deque<>>, int<0>>
test_size_2 OK
equal_to<size<mpl::deque<char>>, int<1>>
test_size_3 OK
equal_to<size<mpl::deque<char, long>>, int<2>>
test_size_4 OK
equal_to<size<mpl::deque<char, char, char, char, char, char, char, char, int>>, int<9>>
test_empty_1 OK
empty<mpl::deque<>>
test_empty_2 OK
not_<empty<mpl::deque<char>>>
test_empty_3 OK
not_<empty<mpl::deque<char, long>>>
test_empty_4 OK
not_<empty<mpl::deque<char, char, char, char, char, char, char, char, int>>>
test_front_1 OK
is_same<char, char>
test_front_2 OK
is_same<char, char>
test_front_3 OK
is_same<char, char>
test_back_1 OK
is_same<char, char>
test_back_2 OK
is_same<long, long>
test_back_3 OK
is_same<int, int>
test_iter_1 OK
is_same<char, char>
test_iter_2 OK
is_same<long, long>
test_iter_3 OK
is_same<???, ???>
test_push_1 OK
is_same<int, int>
test_push_2 OK
is_same<int, int>
test_push_3 OK
is_same<char, char>
test_push_4 OK
is_same<long, long>
eval_if OK
t1 OK
is_same<char, char>
t2 OK
is_same<char, char>
t3 OK
is_same<long, long>
t4 OK
is_same<long, long>
identity OK
t1 OK
is_same<char, char>
t2 OK
is_same<int, int>
t3 OK
is_same<identity<char>, identity<char>>
t4 OK
is_same<identity<int>, identity<int>>
if OK
test_if_true OK
equal_to<int<1>, int<1>>
test_if_c_true OK
equal_to<int<1>, int<1>>
test_if_false OK
equal_to<int<2>, int<2>>
test_if_c_false OK
equal_to<int<2>, int<2>>
is_sequence OK
test1 OK
not_<is_sequence<???>>
test2 OK
not_<is_sequence<int<0>>>
test3 OK
not_<is_sequence<int>>
test4 OK
not_<is_sequence<int&>>
test5 OK
not_<is_sequence<???>>
test6 OK
not_<is_sequence<???*>>
test7 OK
is_sequence<range_c<int, 0, 0>>
test8 OK
is_sequence<mpl::list<>>
test9 OK
is_sequence<mpl::list<int>>
test10 OK
is_sequence<mpl::vector<>>
test11 OK
is_sequence<mpl::vector<int>>
list OK
test_size_1 OK
equal_to<size<mpl::list<>>, int<0>>
test_size_2 OK
equal_to<size<mpl::list<char>>, int<1>>
test_size_3 OK
equal_to<size<mpl::list<char, long>>, int<2>>
test_size_4 OK
equal_to<size<mpl::list<char, char, char, char, char, char, char, char, char>>, int<9>>
test_empty_1 OK
empty<mpl::list<>>
test_empty_2 OK
not_<empty<mpl::list<char>>>
test_empty_3 OK
not_<empty<mpl::list<char, long>>>
test_empty_4 OK
not_<empty<mpl::list<char, char, char, char, char, char, char, char, char>>>
test_front_1 OK
is_same<char, char>
test_front_2 OK
is_same<char, char>
test_front_3 OK
is_same<char, char>
test_iter_1 OK
is_same<char, char>
test_iter_2 OK
is_same<long, long>
test_iter_3 OK
is_same<???, ???>
test_push_front_1 OK
is_same<char, char>
test_push_front_2 OK
is_same<long, long>
list_c OK
test_value_type_1 OK
is_same<bool, bool>
test_value_type_2 OK
is_same<bool, bool>
test_front_1 OK
equal_to<integral_c<bool, 1>, true>
test_front_2 OK
equal_to<integral_c<bool, 0>, false>
test_value_type_1 OK
is_same<int, int>
test_value_type_2 OK
is_same<int, int>
test_value_type_3 OK
is_same<int, int>
test_size_1 OK
equal_to<size<???>, int<1>>
test_size_2 OK
equal_to<size<???>, int<2>>
test_size_3 OK
equal_to<size<???>, int<3>>
test_front_1 OK
equal_to<integral_c<int, -1>, int<-1>>
test_front_2 OK
equal_to<integral_c<int, 0>, int<0>>
test_front_3 OK
equal_to<integral_c<int, 1>, int<1>>
test_value_type_1 OK
is_same<unsigned int, unsigned int>
test_value_type_2 OK
is_same<unsigned int, unsigned int>
test_size_1 OK
equal_to<size<???>, int<1>>
test_size_2 OK
equal_to<size<???>, int<2>>
test_front_1 OK
equal_to<integral_c<unsigned int, 0>, int<0>>
test_front_2 OK
equal_to<integral_c<unsigned int, 1>, int<1>>
test_value_type_1 OK
is_same<unsigned int, unsigned int>
test_iterator_1 OK
equal_to<integral_c<unsigned int, 2>, int<2>>
test_iterator_2 OK
equal_to<integral_c<unsigned int, 1>, int<1>>
test_iterator_3 OK
is_same<???, ???>
logical OK
test_not_1 OK
equal_to<not_<true>, false>
test_not_2 OK
equal_to<not_<false>, true>
test_not_3 OK
not_<false>
test_not_4 OK
not_<not_<true>>
test_and_1 OK
and_<true, true>
test_and_2 OK
not_<and_<false, true>>
test_and_3 OK
not_<and_<true, false>>
test_and_4 OK
not_<and_<false, false>>
test_and_5 OK
not_<and_<false, ???>>
test_and_6 OK
not_<and_<false, ???, ???>>
test_or_1 OK
or_<true, true>
test_or_2 OK
or_<false, true>
test_or_3 OK
or_<true, false>
test_or_4 OK
not_<or_<false, false>>
test_or_5 OK
or_<true, ???>
test_or_6 OK
or_<true, ???, ???>
map OK
test_erase_1 OK
equal_to<size<mpl::map<pair<int, unsigned int>>>, int<1>>
test_erase_2 OK
not_<empty<mpl::map<pair<int, unsigned int>>>>
test_clear_1 OK
is_same<mpl::map<>, mpl::map<>>
test_at_1 OK
is_same<unsigned int, unsigned int>
test_at_2 OK
is_same<void_, void_>
test_contains_1 OK
contains<mpl::map<pair<int, unsigned int>>, pair<int, unsigned int>>
test_contains_2 OK
not_<contains<mpl::map<pair<int, unsigned int>>, pair<int, int>>>
test_contains_3 OK
not_<contains<mpl::map<pair<int, unsigned int>>, pair<char, unsigned char>>>
test_has_key_1 OK
not_<has_key<mpl::map<pair<int, unsigned int>>, char>>
test_has_key_2 OK
has_key<mpl::map<pair<int, unsigned int>>, int>
test_order_1 OK
not_<is_same<long<2>, void_>>
test_order_2 OK
is_same<void_, void_>
test_deref_1 OK
is_same<pair<int, unsigned int>, pair<int, unsigned int>>
test_next_1 OK
is_same<???, ???>
test_size_1 OK
equal_to<size<???>, int<2>>
test_empty_1 OK
not_<empty<???>>
test_clear_2 OK
is_same<mpl::map<>, mpl::map<>>
test_at_3 OK
is_same<unsigned int, unsigned int>
test_at_4 OK
is_same<long, long>
test_contains_4 OK
contains<???, pair<int, unsigned int>>
test_contains_5 OK
not_<contains<???, pair<int, int>>>
test_contains_6 OK
not_<contains<???, pair<char, unsigned char>>>
test_contains_7 OK
contains<???, pair<char, long>>
test_has_key_3 OK
has_key<???, char>
test_has_key_4 OK
not_<has_key<???, long>>
test_order_3 OK
not_<is_same<long<2>, void_>>
test_order_4 OK
not_<is_same<long<3>, void_>>
test_order_5 OK
not_<is_same<long<3>, long<2>>>
test_deref_2 OK
is_same<pair<int, unsigned int>, pair<int, unsigned int>>
test_deref_3 OK
is_same<pair<char, long>, pair<char, long>>
test_next_2 OK
is_same<???, ???>
test_insert_1 OK
is_same<???, ???>
test_size_2 OK
equal_to<size<???>, int<3>>
test_has_key_5 OK
has_key<???, long>
test_has_key_6 OK
has_key<???, int>
test_has_key_7 OK
has_key<???, char>
test_contains_8 OK
contains<???, pair<long, unsigned int>>
test_contains_9 OK
contains<???, pair<int, unsigned int>>
test_size_3 OK
equal_to<size<???>, int<2>>
test_at_5 OK
is_same<unsigned int, unsigned int>
test_at_6 OK
is_same<long, long>
test_contains_10 OK
contains<???, pair<int, unsigned int>>
test_contains_11 OK
not_<contains<???, pair<int, int>>>
test_contains_12 OK
not_<contains<???, pair<char, unsigned char>>>
test_contains_13 OK
contains<???, pair<char, long>>
test_insert_2 OK
is_same<???, ???>
test_erase_key_1 OK
is_same<mpl::map<pair<int, unsigned int>>, mpl::map<pair<int, unsigned int>>>
test_size_4 OK
equal_to<size<mpl::map<pair<int, unsigned int>>>, int<1>>
test_at_7 OK
is_same<void_, void_>
test_at_8 OK
is_same<unsigned int, unsigned int>
test_size_5 OK
equal_to<size<???>, int<2>>
test_at_9 OK
is_same<void_, void_>
test_at_10 OK
is_same<unsigned int, unsigned int>
test_at_11 OK
is_same<unsigned int, unsigned int>
test_size_1 OK
equal_to<size<mpl::map<>>, int<0>>
test_empty_1 OK
empty<mpl::map<>>
test_clear_1 OK
is_same<mpl::map<>, mpl::map<>>
test_at_1 OK
is_same<void_, void_>
test_has_key_1 OK
not_<false>
test_has_key_2 OK
not_<false>
test_has_key_3 OK
not_<false>
test_has_key_4 OK
not_<false>
test_has_key_5 OK
not_<false>
test_has_key_6 OK
not_<false>
test_has_key_7 OK
not_<false>
test_has_key_8 OK
not_<false>
test_has_key_9 OK
not_<false>
test_has_key_10 OK
not_<false>
test_has_key_11 OK
not_<false>
test_has_key_12 OK
not_<false>
test_has_key_13 OK
not_<false>
test_has_key_14 OK
not_<false>
test_size_2 OK
equal_to<size<???>, int<1>>
test_at_2 OK
is_same<int, int>
test_size_3 OK
equal_to<size<mpl::map<>>, int<0>>
test_at_3 OK
is_same<void_, void_>
test_deref OK
is_same<pair<int, int*>, pair<int, int*>>
test_size OK
equal_to<size<mpl::map<pair<int, int*>, pair<long, long*>, pair<char, char*>>>, int<3>>
test_find_1 OK
not_<is_same<???, ???>>
test_find_2 OK
not_<is_same<???, ???>>
test_find_3 OK
not_<is_same<???, ???>>
test_find_4 OK
is_same<???, ???>
test_at OK
is_same<long, long>
quote OK
t1 OK
is_same<int, int>
t5 OK
is_same<???, ???>
set OK
test_num_var_1 OK
???
test_num_var_2 OK
???
test_num_var_3 OK
???
test_num_var_4 OK
???
test_basic_1 OK
???
test_basic_2 OK
???
test_basic_3 OK
???
test_basic_4 OK
???
test_basic_5 OK
???
test_empty_types_1 OK
???
test_empty_types_2 OK
???
test_types_1 OK
???
test_types_2 OK
???
test_find_1 OK
???
test_find_2 OK
???
set_c OK
test_size_1 OK
equal_to<size<???>, int<1>>
test_size_2 OK
equal_to<size<???>, int<1>>
test_size_3 OK
equal_to<size<???>, int<2>>
test_value_type_1 OK
is_same<bool, bool>
test_value_type_2 OK
is_same<bool, bool>
test_value_type_3 OK
is_same<bool, bool>
test_at_1 OK
equal_to<???, true>
test_at_2 OK
equal_to<???, false>
test_at_3 OK
equal_to<???, true>
test_at_4 OK
equal_to<???, false>
test_at_5 OK
is_same<void_, void_>
test_at_6 OK
is_same<void_, void_>
test_size_1 OK
equal_to<size<???>, int<1>>
test_size_2 OK
equal_to<size<???>, int<8>>
test_value_type_1 OK
is_same<char, char>
test_value_type_2 OK
is_same<char, char>
test_at_1 OK
equal_to<???, int<97>>
test_at_2 OK
equal_to<???, int<97>>
test_at_3 OK
equal_to<???, int<100>>
test_at_4 OK
equal_to<???, int<104>>
test_at_5 OK
is_same<void_, void_>
test_at_6 OK
is_same<void_, void_>
vector OK
test_equal_1 OK
equal<mpl::vector<>, mpl::vector<>, is_same<_-1, _-1>>
test_equal_2 OK
equal<mpl::vector<char>, mpl::vector<char>, is_same<_-1, _-1>>
test_equal_3 OK
equal<mpl::vector<char, long>, mpl::vector<char, long>, is_same<_-1, _-1>>
test_equal_4 OK
equal<mpl::vector<char, bool, char, char, char, char, bool, long, int>, mpl::vector<char, bool, char, char, char, char, bool, long, int>, is_same<_-1, _-1>>
test_size_1 OK
equal_to<long<0>, int<0>>
test_size_2 OK
equal_to<long<1>, int<1>>
test_size_3 OK
equal_to<long<2>, int<2>>
test_size_4 OK
equal_to<long<9>, int<9>>
test_empty_1 OK
empty<mpl::vector<>>
test_empty_2 OK
not_<empty<mpl::vector<char>>>
test_empty_3 OK
not_<empty<mpl::vector<char, long>>>
test_empty_4 OK
not_<empty<mpl::vector<char, bool, char, char, char, char, bool, long, int>>>
test_front_1 OK
is_same<char, char>
test_front_2 OK
is_same<char, char>
test_front_3 OK
is_same<char, char>
test_back_1 OK
is_same<char, char>
test_back_2 OK
is_same<long, long>
test_back_3 OK
is_same<int, int>
test_iter_1 OK
is_same<char, char>
test_iter_2 OK
is_same<long, long>
test_iter_3 OK
is_same<???, ???>
test_push_1 OK
is_same<int, int>
test_push_2 OK
is_same<int, int>
test_push_3 OK
is_same<char, char>
test_push_4 OK
is_same<long, long>
test_push_5 OK
equal<???, ???, is_same<_-1, _-1>>
test_push_6 OK
equal<???, ???, is_same<_-1, _-1>>
test_push_7 OK
equal<???, ???, is_same<_-1, _-1>>
test_pop_1 OK
is_same<int, int>
test_pop_2 OK
is_same<long, long>
test_pop_3 OK
is_same<long, long>
test_pop_4 OK
is_same<bool, bool>
test_pop_5 OK
equal<mpl::vector<char, bool, char, char, char, char, bool, long, int>, mpl::vector<char, bool, char, char, char, char, bool, long, int>, is_same<_-1, _-1>>
test_pop_6 OK
equal<???, ???, is_same<_-1, _-1>>
test_pop_7 OK
equal<???, ???, is_same<_-1, _-1>>
test_unnumbered_1 OK
equal<mpl::vector<>, mpl::vector<>, is_same<_-1, _-1>>
test_unnumbered_2 OK
equal<mpl::vector<char>, mpl::vector<char>, is_same<_-1, _-1>>
test_unnumbered_3 OK
equal<mpl::vector<char, long>, mpl::vector<char, long>, is_same<_-1, _-1>>
test_unnumbered_4 OK
equal<mpl::vector<char, char, char, char, char, char, char, char, int>, mpl::vector<char, char, char, char, char, char, char, char, int>, is_same<_-1, _-1>>
test_unnumbered_5 OK
equal_to<long<0>, int<0>>
test_unnumbered_6 OK
equal_to<long<1>, int<1>>
test_unnumbered_7 OK
equal_to<long<2>, int<2>>
test_unnumbered_8 OK
equal_to<long<9>, int<9>>
vector_c OK
t1 OK
is_same<bool, bool>
t2 OK
is_same<bool, bool>
t3 OK
equal_to<integral_c<bool, 1>, true>
t4 OK
equal_to<integral_c<bool, 0>, false>
test_value_type_1 OK
is_same<int, int>
test_value_type_2 OK
is_same<int, int>
test_value_type_3 OK
is_same<int, int>
test_size_1 OK
equal_to<size<mpl::vector_c<int, -1>>, int<1>>
test_size_2 OK
equal_to<size<mpl::vector_c<int, 0, 1>>, int<2>>
test_size_3 OK
equal_to<size<mpl::vector_c<int, 1, 2, 3>>, int<3>>
test_front_1 OK
equal_to<integral_c<int, -1>, int<-1>>
test_front_2 OK
equal_to<integral_c<int, 0>, int<0>>
test_front_3 OK
equal_to<integral_c<int, 1>, int<1>>
test_value_type_1 OK
is_same<unsigned int, unsigned int>
test_value_type_2 OK
is_same<unsigned int, unsigned int>
test_size_1 OK
equal_to<size<mpl::vector_c<unsigned int, 0>>, int<1>>
test_size_2 OK
equal_to<size<mpl::vector_c<unsigned int, 1, 2>>, int<2>>
test_front_1 OK
equal_to<integral_c<unsigned int, 0>, int<0>>
test_front_2 OK
equal_to<integral_c<unsigned int, 1>, int<1>>