Boost C++ Libraries: Ticket #10397: compilation error with mfc-iteratior-support: ambiguous symbol https://svn.boost.org/trac10/ticket/10397 <p> Hi, </p> <p> moving parts of range_const_iterator to the namespace range_detail in file boost/range/const_iterator.hpp leads to ambiguity in /range/detail/mfc.hpp line 747: </p> <p> (MSVC 11 on Windows Server 2008 R2/x64) </p> <p> 25&gt;..\src\libs\boost\boost\boost/range/mfc.hpp(747): error C2872: 'range_const_iterator' : ambiguous symbol 25&gt; could be '..\src\libs\boost\boost\boost/range/const_iterator.hpp(67) : boost::range_const_iterator' 25&gt; or '..\src\libs\boost\boost\boost/range/const_iterator.hpp(40) : boost::range_detail::range_const_iterator' 25&gt; ..\src\libs\boost\boost\boost/range/detail/microsoft.hpp(135) : see reference to class template instantiation 'boost::range_detail_microsoft::customization&lt;Tag&gt;::meta&lt;X&gt;' being compiled 25&gt; with 25&gt; [ 25&gt; Tag=CEbsValueArray::mfc_range_base_type, 25&gt; X=CTypedPtrArray&lt;CObArray,<a class="missing wiki">EbsValue</a> *&gt; 25&gt; ] 25&gt; ..\src\libs\boost\boost\boost/range/begin.hpp(111) : see reference to class template instantiation 'boost::range_detail_microsoft::const_iterator_of&lt;T&gt;' being compiled 25&gt; with 25&gt; [ 25&gt; T=CTypedPtrArray&lt;CObArray,<a class="missing wiki">EbsValue</a> *&gt; 25&gt; ] ... </p> <p> The problem can be resolved by changing the name of </p> <p> boost::range_detail::range_const_iterator </p> <p> to </p> <p> boost::range_detail::range_const_iterator_helper </p> <p> I expect other begin/end adapters to run into the same problem. </p> <p> Tobias </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/10397 Trac 1.4.3 Neil Groves Mon, 25 Aug 2014 21:09:09 GMT status changed https://svn.boost.org/trac10/ticket/10397#comment:1 https://svn.boost.org/trac10/ticket/10397#comment:1 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> <p> I shall fix this during this week on the Develop branch. </p> Ticket Neil Groves Sat, 30 Aug 2014 14:33:50 GMT <link>https://svn.boost.org/trac10/ticket/10397#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/10397#comment:2</guid> <description> <p> After starting the resolution to this defect I decided that the unit testing is woefully inadequate for the MFC and ATL support. After looking at my Visual C++ express installation and discovering that MFC isn't included for free I have decided to start developing mock classes to emulate the ATL/MFC classes we wish to support. There are a large number of classes and I am part way through developing these. </p> <p> These new mock classes will allow me to leave the tests permanently enabled even on compiler / platforms that do not have MFC and ATL. This should produce a long-term benefit to the quality of these components. I will however need a few more weeks to complete this. </p> </description> <category>Ticket</category> </item> </channel> </rss>