Boost C++ Libraries: Ticket #3631: Regex ICU support doesn't compile with #define U_USING_ICU_NAMESPACE 0 https://svn.boost.org/trac10/ticket/3631 <p> To prevent namespace pollution, I definde U_USING_ICU_NAMESPACE to 0 in my projects before including any ICU headers. This prevents the ICU headers from adding a "using namespace icu" to the root namespace, so classes like <a class="missing wiki">UnicodeString</a> are only available in the icu:: namespace. </p> <p> While most uses of ICU classes in the Boost Regex ICU headers are prepended with U_NAMESPACE_QUALIFIER (e.g. Locale and Collator), this seems to have been forgotten for <a class="missing wiki">UnicodeString</a>, causing the compile to fail. </p> <p> Minimal example to reproduce and patch attached. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/3631 Trac 1.4.3 Matthias Schiffer <matthias@…> Tue, 17 Nov 2009 16:16:30 GMT attachment set https://svn.boost.org/trac10/ticket/3631 https://svn.boost.org/trac10/ticket/3631 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">icuregex.cpp</span> </li> </ul> <p> Minimal example </p> Ticket Matthias Schiffer <matthias@…> Tue, 17 Nov 2009 16:17:15 GMT attachment set https://svn.boost.org/trac10/ticket/3631 https://svn.boost.org/trac10/ticket/3631 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">boost_regex.patch</span> </li> </ul> <p> Patch </p> Ticket John Maddock Wed, 18 Nov 2009 09:59:45 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/3631#comment:1 https://svn.boost.org/trac10/ticket/3631#comment:1 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/57739" title="Suppress external templates with Mingw32 - it seems to cause issues ...">[57739]</a>) Suppress external templates with Mingw32 - it seems to cause issues with dll's. Fix match_results.swap. Add missing namespace qualifiers to ICU code: fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/3631" title="#3631: Bugs: Regex ICU support doesn't compile with #define U_USING_ICU_NAMESPACE 0 (closed: fixed)">#3631</a>. </p> Ticket