On Wed, 3 Jun 2020 at 01:07, Jonathan Wakely <jwakely(a)fedoraproject.org> wrote:
On 02/06/20 16:24 +0100, Jonathan Wakely wrote:
>### Boost.Bind
>
>Several packages failed to build because the Boost.Bind placeholders
>_1, _2, _3 etc. are no longer in the global namespace. See the message
>in <boost/bind.hpp>:
>
>BOOST_PRAGMA_MESSAGE(
> "The practice of declaring the Bind placeholders (_1, _2, ...) "
> "in the global namespace is deprecated. Please use "
> "<boost/bind/bind.hpp> + using namespace boost::placeholders, "
> "or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current
behavior."
>)
>
>This Boost.Bind issue affects:
>
>bear-factory
>domoticz
>gazebo
>hpx
>liblas
>luxcorerender
>pdns
>pdns-recursor
>uhd
>widelands
I believe in most cases this can be fixed by changing <boost/bind.hpp>
to <boost/bind/bind.hpp> and adding "using boost::placeholders::_1;"
somewhere.
If the codebase is large enough, that can be complicated. In my case,
I just defined BOOST_BIND_GLOBAL_PLACEHOLDERS and added a couple of
missing includes to <boost/bind.hpp> (which weren't required in
previous versions because other boost headers were probably including
that). Here [1]. Of course, then I informed upstream.
[1]
https://src.fedoraproject.org/rpms/rstudio/blob/fb93b3619bcfef3dcfe815e43...
--
Iñaki Úcar