Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4028: fusion::begin and fusion::end lead to problems with ADL-based begin and end functions for ranges
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-12-20 15:34:09
#4028: fusion::begin and fusion::end lead to problems with ADL-based begin and end
functions for ranges
-------------------------------+--------------------------------------------
Reporter: mgaunard | Owner: djowel
Type: Bugs | Status: reopened
Milestone: To Be Determined | Component: fusion
Version: Boost 1.42.0 | Severity: Problem
Resolution: | Keywords: ADL range begin end
-------------------------------+--------------------------------------------
Changes (by anonymous):
* milestone: Boost 1.43.0 => To Be Determined
Comment:
What can we do?
I am not in favour of renaming fusion::begin/fusion::end - that would
break a lot of code.
We could remove the code to adapt arrays, or refactor it to a new facility
that would adapt arrays by name (just like the named
BOOST_FUSION_ADAPT_STRUCT_NAMED) - but this would break a lot of code as
well. This does not solve the underlying problem of ambiguity either.
I suggest adding a note in the documentation that points out this issue
and proposes to explicitly namespace-qualify calls to
fusion::begin/fusion::end in generic user code.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4028#comment:7> 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:05 UTC