Bug 1089812

Summary: libtorrent-rasterbar: Fails to build with Boost 1.67.0
Product: [openSUSE] openSUSE Tumbleweed Reporter: Adam Majer <amajer>
Component: OtherAssignee: Alexei Sorokin <sor.alexei>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: fisiu, sor.alexei
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on:    
Bug Blocks: 1089801    

Description Adam Majer 2018-04-17 08:35:29 UTC
New Boost library has been released and unfortunately this package fails to build with it. The new boost library is already submitted to devel:libraries:c_c++/boost and will be submitted to openSUSE:Factory shortly.


> [  117s] ../../include/libtorrent/ip_filter.hpp: In member function 'void libtorrent::detail::filter_impl<Addr>::add_rule(Addr, Addr, int)':
> [  117s] ../../include/libtorrent/ip_filter.hpp:168:41: error: 'prior' is not a member of 'boost'
> [  117s]     boost::uint32_t last_access = boost::prior(j)->access;
> [  117s]                                          ^~~~~
> [  117s] ../../include/libtorrent/ip_filter.hpp:174:50: error: 'prior' is not a member of 'boost'

The cause of this is that boost::prior and boost::next have been moved. From Boost release notes,

Breaking change: <boost/utility.hpp> header no longer includes boost::next and boost::prior as they have been moved to the iterator module. Instead include <boost/next_prior.hpp>. Other uses of <boost/utility.hpp> are discouraged, it's better to use the header for the specific functionality instead.
Comment 1 Alexei Sorokin 2018-04-17 11:39:21 UTC
*** Bug 1089818 has been marked as a duplicate of this bug. ***
Comment 2 Alexei Sorokin 2018-04-17 11:40:06 UTC
I sent https://build.opensuse.org/request/show/597444, should take care of that.
Comment 3 Adam Majer 2018-05-23 09:54:24 UTC
Fixed in Factory. Closing.