diff --git a/include/sqlpp11/basic_expression_operators.h b/include/sqlpp11/basic_expression_operators.h index 4601dff7..48720d63 100644 --- a/include/sqlpp11/basic_expression_operators.h +++ b/include/sqlpp11/basic_expression_operators.h @@ -42,7 +42,7 @@ namespace sqlpp { SQLPP_PORTABLE_STATIC_ASSERT(assert_comparison_valid_rhs_operand_t, "invalid rhs operand in comparison"); - SQLPP_PORTABLE_STATIC_ASSERT(assert_comparison_lhs_rhs_differ_t, "identical lhs and rhs operand types in comparison"); + SQLPP_PORTABLE_STATIC_ASSERT(assert_comparison_lhs_rhs_differ_t, "identical lhs and rhs operands in comparison"); template using check_rhs_comparison_operand_t = static_combined_check_t< @@ -56,8 +56,10 @@ namespace sqlpp assert_comparison_valid_rhs_operand_t>, static_check_t::value, assert_comparison_lhs_rhs_differ_t>>; - template - using check_rhs_in_arguments_t = static_combined_check_t...>; + template + using check_rhs_in_operands_t = static_combined_check_t< + static_combined_check_t>::value, + assert_comparison_valid_rhs_operand_t>...>>; namespace detail { @@ -211,7 +213,7 @@ namespace sqlpp template typename _new_nary_expression::type in(T... t) const { - static_combined_check_t...>::_(); + check_rhs_in_operands_t::_(); return {*static_cast(this), typename wrap_operand::type{t}...}; } @@ -225,7 +227,7 @@ namespace sqlpp template typename _new_nary_expression::type not_in(T... t) const { - static_combined_check_t...>::_(); + check_rhs_in_operands_t::_(); return {*static_cast(this), typename wrap_operand::type{t}...}; }