Skip to content

Fix redefinition of make_iterator_range_n in newer versions of Boost

Luca Bassi requested to merge (removed):master into master

make_iterator_range_n was introduced in Boost 1.56.0: https://github.com/boostorg/range/commit/70256bd8b04036eb9c5db12bc603f84fa8a35541

Fix this error when compiling the module in AlmaLinux 9:

./ngx_http_voms_module/src/ngx_http_voms_module.cpp:656:34: error: redefinition of 'template<class IteratorT, class IntegerT> boost::iterator_range<IteratorT> boost::make_iterator_range_n(IteratorT, IntegerT)'
  656 | inline iterator_range<IteratorT> make_iterator_range_n(IteratorT first,
      |                                  ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/boost/range/iterator_range.hpp:13,
                 from /usr/include/boost/range/as_literal.hpp:18,
                 from /usr/include/boost/algorithm/string/join.hpp:17,
                 from ./ngx_http_voms_module/src/ngx_http_voms_module.cpp:17:
/usr/include/boost/range/iterator_range_core.hpp:763:9: note: 'template<class IteratorT, class IntegerT> boost::iterator_range<IteratorT> boost::make_iterator_range_n(IteratorT, IntegerT)' previously declared here
  763 |         make_iterator_range_n(IteratorT first, IntegerT n)
      |         ^~~~~~~~~~~~~~~~~~~~~

Merge request reports