[MacPorts] #69024: qt5*-qtbase: error: no template named ('unary_function'|'binary_function') in namespace 'std'

MacPorts noreply at macports.org
Wed Jan 3 00:51:11 UTC 2024


#69024: qt5*-qtbase: error: no template named ('unary_function'|'binary_function')
in namespace 'std'
-------------------------------------------------+-------------------------
  Reporter:  chrstphrchvz                        |      Owner:
                                                 |  MarcusCalhoun-Lopez
      Type:  defect                              |     Status:  assigned
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:
Resolution:                                      |   Keywords:
      Port:  qt53-qtbase qt55-qtbase             |
  qt56-qtbase qt57-qtbase qt58-qtbase            |
  qt59-qtbase                                    |
-------------------------------------------------+-------------------------
Description changed by chrstphrchvz:

Old description:

> `std::unary_function` and `std::binary_function` from libc++ are
> deprecated in the macOS 13 SDK, and disabled by default in LLVM.org Clang
> 15 and the macOS 14 SDK when building with C++17 or later (unless
> `_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION` is defined).
> Example:
>
> {{{
> compress.cpp:40:26: error: no template named 'binary_function' in
> namespace 'std'; did you mean '__binary_function'?
> struct _Fit: public std::binary_function<int, int, bool>
>                     ~~~~~^~~~~~~~~~~~~~~
>                          __binary_function
> }}}

New description:

 `std::unary_function` and `std::binary_function` from libc++ are
 deprecated in the macOS 13 SDK, and disabled by default in LLVM.org Clang
 15 and the macOS 14 SDK when building with C++17 or later (unless
 `_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION` is defined).
 Examples:

 {{{
 compress.cpp:40:26: error: no template named 'binary_function' in
 namespace 'std'; did you mean '__binary_function'?
 struct _Fit: public std::binary_function<int, int, bool>
                     ~~~~~^~~~~~~~~~~~~~~
                          __binary_function
 }}}

 {{{
 qtesttable.cpp:141:35: error: no template named 'unary_function' in
 namespace 'std'; did you mean '__unary_function'?
 class NamePredicate : public
 std::unary_function<QTestTablePrivate::Element, bool>
                              ~~~~~^~~~~~~~~~~~~~
                                   __unary_function
 }}}

--

-- 
Ticket URL: <https://trac.macports.org/ticket/69024#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list