Created attachment 514578 [details] Work around BOOST_FOREACH regression Wesnoth fails to build as a result of boost rebase. The root of the problem is described here: https://svn.boost.org/trac/boost/ticket/5279 . In essence, GCC changed behavior and BOOST_FOREACH had to change the rvalue detection strategy to BOOST_FOREACH_RUN_TIME_CONST_RVALUE_DETECTION. But this is written in sources for that detection strategy: // Detect at run-time whether an expression yields an rvalue // or an lvalue. This is 100% standard C++, but not all compilers // accept it. Also, it causes FOREACH to break when used with non- // copyable collection types. Unfortunately, wesnoth indeed iterates over noncopyable collection objects, so we have to fall back to hand-rolled iteration. The attached patch implements exactly this workaround. Version-Release number of selected component (if applicable): 1.8.6-3
Sent upstream: https://gna.org/bugs/index.php?18399
Built in rawhide. Thanks!