Re: [Boost-bugs] [Boost C++ Libraries] #4028: fusion::begin and fusion::end lead to problems with ADL-based begin and end functions for ranges

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