Subject: [Boost-bugs] [Boost C++ Libraries] #4051: [range][string_algo] Conflict between algorithm names
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-03-29 18:11:55
#4051: [range][string_algo] Conflict between algorithm names
-------------------------------------+--------------------------------------
Reporter: jewillco | Owner: nesotto
Type: Bugs | Status: new
Milestone: Boost 1.43.0 | Component: range
Version: Boost Development Trunk | Severity: Problem
Keywords: |
-------------------------------------+--------------------------------------
When I try to include both Boost.Range algorithms (in the current trunk
version) and Boost.Algorithm, using a file such as the following:
{{{
#include <boost/algorithm/string.hpp>
#include <boost/range/algorithm.hpp>
}}}
I receive several errors about duplicate definitions. I am using gcc
4.1.2 on Linux.
{{{
./boost/range/algorithm/find.hpp:28: error: âtemplate<class
SinglePassRange, class Value> typename boost::range_iterator::type
boost::find(SinglePassRange&, const Value&)â conflicts with previous using
declaration âtemplate<class RangeT, class FinderT>
boost::iterator_range<typename boost::range_iterator<C>::type>
boost::algorithm::find(RangeT&, const FinderT&)â
./boost/range/algorithm/lexicographical_compare.hpp:28: error:
âtemplate<class SinglePassRange1, class SinglePassRange2> bool
boost::lexicographical_compare(const SinglePassRange1&, const
SinglePassRange2&)â conflicts with previous using declaration
âtemplate<class Range1T, class Range2T> bool
boost::algorithm::lexicographical_compare(const Range1T&, const Range2T&)â
./boost/range/algorithm/lexicographical_compare.hpp:42: error:
âtemplate<class SinglePassRange1, class SinglePassRange2, class
BinaryPredicate> bool boost::lexicographical_compare(const
SinglePassRange1&, const SinglePassRange2&, BinaryPredicate)â conflicts
with previous using declaration âtemplate<class Range1T, class Range2T,
class PredicateT> bool boost::algorithm::lexicographical_compare(const
Range1T&, const Range2T&, PredicateT)â
}}}
The using declarations mentioned in the error message are in files such as
boost/algorithm/string/find.hpp.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4051> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:02 UTC