id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 4028,fusion::begin and fusion::end lead to problems with ADL-based begin and end functions for ranges,Mathias Gaunard,Joel de Guzman,"In C++0x, begin and end for ranges (that extract the beginning iterator and the past-the-end one, respectively) are to be found through ADL. This causes problems when fusion is an associated namespace (as for example in the case {{{ iterator_range< some_iterator< fusion::vector<> > > }}}), since the begin and end of the fusion namespace will be considered by ADL, and that results in an error because a range is not a fusion sequence. I see two (three) solutions:[[BR]] - Mask fusion::begin and fusion::end with SFINAE so that they are only available if the argument is a fusion sequence. That means however that we can't have a fusion sequence that is at the same time a range, even though this could have some uses.[[BR]] - Rename fusion::begin and fusion::end to something else.[[BR]] (- Ask the standard people to reconsider)",Bugs,reopened,To Be Determined,fusion,Boost 1.42.0,Problem,,ADL range begin end,mateusz@…