Annex D (normative) Compatibility features [depr]

D.8 Function objects [depr.function.objects]

D.8.1 Base [depr.base]

The class templates unary_function and binary_function are deprecated. A program shall not declare specializations of these templates.

namespace std {
  template <class Arg, class Result>
  struct unary_function {
    typedef Arg    argument_type;
    typedef Result result_type;
  };
}

namespace std {
  template <class Arg1, class Arg2, class Result>
  struct binary_function {
    typedef Arg1   first_argument_type;
    typedef Arg2   second_argument_type;
    typedef Result result_type;
  };
}