diff --git a/include/boost/pending/concept_checks.hpp b/include/boost/pending/concept_checks.hpp index 0d36c82..7b6a921 100644 --- a/include/boost/pending/concept_checks.hpp +++ b/include/boost/pending/concept_checks.hpp @@ -491,10 +491,14 @@ template void ignore_unused_variable_warning(const T&) { } template struct Const_BinaryPredicate_concept { void constraints() { - REQUIRE3(Func, First, Second, BinaryPredicate); - require_boolean_expr(f(a, b)); // operator() must be a const member function + const_constraints(f); } - const Func f; + void const_constraints(const Func& fun) { + REQUIRE3(Func, First, Second, BinaryPredicate); + // operator() must be a const member function + require_boolean_expr(fun(a, b)); + } + Func f; First a; Second b; };