Boost C++ Libraries: Ticket #9624: boost::icl::swap causes ambiguity with std::swap with ADL https://svn.boost.org/trac10/ticket/9624 <p> With C++11, the swap() function overload in boost::icl is ambiguous with std::swap due to ADL. I'm using boost 1.53, but this doesn't appear to be addressed in git yet either. It think it's the exact same problem previously addressed in Boost.Variant (<a class="ext-link" href="https://svn.boost.org/trac/boost/ticket/2839"><span class="icon">​</span>https://svn.boost.org/trac/boost/ticket/2839</a>). </p> <p> I've applied the same fix (i.e., using separate template params for two arguments to swap, making it less specialized than std::swap) to my local copy of boost, and it appears to resolve it. </p> <p> I'm using clang 3.4 / libstdc++ from gcc 4.7.2 / boost 1.53, compile line ==&gt; clang -std=c++11 -o test_adl test_adl.cc </p> <p> test file and error message attached. </p> <p> Thanks, --Nathan </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/9624 Trac 1.4.3 Nathan Thomas <nthomas@…> Fri, 31 Jan 2014 18:29:05 GMT attachment set https://svn.boost.org/trac10/ticket/9624 https://svn.boost.org/trac10/ticket/9624 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">test_adl.cc</span> </li> </ul> Ticket Nathan Thomas <nthomas@…> Fri, 31 Jan 2014 18:29:16 GMT attachment set https://svn.boost.org/trac10/ticket/9624 https://svn.boost.org/trac10/ticket/9624 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">test_adl.out</span> </li> </ul> Ticket