diff --git a/include/boost/mp11/detail/mp_for_index.hpp b/include/boost/mp11/detail/mp_for_index.hpp index ca7eb83..ae4ea42 100644 --- a/include/boost/mp11/detail/mp_for_index.hpp +++ b/include/boost/mp11/detail/mp_for_index.hpp @@ -68,7 +68,7 @@ template<> struct mp_for_index_impl_<2> switch( i ) { case 0: return std::forward(f)( mp_size_t() ); - case 1: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -81,7 +81,7 @@ template<> struct mp_for_index_impl_<3> { case 0: return std::forward(f)( mp_size_t() ); case 1: return std::forward(f)( mp_size_t() ); - case 2: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -95,7 +95,7 @@ template<> struct mp_for_index_impl_<4> case 0: return std::forward(f)( mp_size_t() ); case 1: return std::forward(f)( mp_size_t() ); case 2: return std::forward(f)( mp_size_t() ); - case 3: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -110,7 +110,7 @@ template<> struct mp_for_index_impl_<5> case 1: return std::forward(f)( mp_size_t() ); case 2: return std::forward(f)( mp_size_t() ); case 3: return std::forward(f)( mp_size_t() ); - case 4: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -126,7 +126,7 @@ template<> struct mp_for_index_impl_<6> case 2: return std::forward(f)( mp_size_t() ); case 3: return std::forward(f)( mp_size_t() ); case 4: return std::forward(f)( mp_size_t() ); - case 5: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -143,7 +143,7 @@ template<> struct mp_for_index_impl_<7> case 3: return std::forward(f)( mp_size_t() ); case 4: return std::forward(f)( mp_size_t() ); case 5: return std::forward(f)( mp_size_t() ); - case 6: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -161,7 +161,7 @@ template<> struct mp_for_index_impl_<8> case 4: return std::forward(f)( mp_size_t() ); case 5: return std::forward(f)( mp_size_t() ); case 6: return std::forward(f)( mp_size_t() ); - case 7: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -180,7 +180,7 @@ template<> struct mp_for_index_impl_<9> case 5: return std::forward(f)( mp_size_t() ); case 6: return std::forward(f)( mp_size_t() ); case 7: return std::forward(f)( mp_size_t() ); - case 8: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -200,7 +200,7 @@ template<> struct mp_for_index_impl_<10> case 6: return std::forward(f)( mp_size_t() ); case 7: return std::forward(f)( mp_size_t() ); case 8: return std::forward(f)( mp_size_t() ); - case 9: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -221,7 +221,7 @@ template<> struct mp_for_index_impl_<11> case 7: return std::forward(f)( mp_size_t() ); case 8: return std::forward(f)( mp_size_t() ); case 9: return std::forward(f)( mp_size_t() ); - case 10: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -243,7 +243,7 @@ template<> struct mp_for_index_impl_<12> case 8: return std::forward(f)( mp_size_t() ); case 9: return std::forward(f)( mp_size_t() ); case 10: return std::forward(f)( mp_size_t() ); - case 11: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -266,7 +266,7 @@ template<> struct mp_for_index_impl_<13> case 9: return std::forward(f)( mp_size_t() ); case 10: return std::forward(f)( mp_size_t() ); case 11: return std::forward(f)( mp_size_t() ); - case 12: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -290,7 +290,7 @@ template<> struct mp_for_index_impl_<14> case 10: return std::forward(f)( mp_size_t() ); case 11: return std::forward(f)( mp_size_t() ); case 12: return std::forward(f)( mp_size_t() ); - case 13: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -315,7 +315,7 @@ template<> struct mp_for_index_impl_<15> case 11: return std::forward(f)( mp_size_t() ); case 12: return std::forward(f)( mp_size_t() ); case 13: return std::forward(f)( mp_size_t() ); - case 14: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; @@ -341,7 +341,7 @@ template<> struct mp_for_index_impl_<16> case 12: return std::forward(f)( mp_size_t() ); case 13: return std::forward(f)( mp_size_t() ); case 14: return std::forward(f)( mp_size_t() ); - case 15: return std::forward(f)( mp_size_t() ); + default: return std::forward(f)( mp_size_t() ); } } }; diff --git a/test/mp_for_index.cpp b/test/mp_for_index.cpp index d700cad..c8c7dfb 100644 --- a/test/mp_for_index.cpp +++ b/test/mp_for_index.cpp @@ -25,9 +25,10 @@ struct F explicit F( int i ): i_( i ) {} - template void operator()( mp_size_t ) const + template bool operator()( mp_size_t ) const { BOOST_TEST_EQ( I, i_ ); + return false; } };