Boost C++ Libraries: Ticket #6767: Use of namespace qualifier with floating point exception functions breaks if they are macros https://svn.boost.org/trac10/ticket/6767 <p> According to <a class="ext-link" href="http://pubs.opengroup.org/onlinepubs/009604599/basedefs/fenv.h.html"><span class="icon">​</span>http://pubs.opengroup.org/onlinepubs/009604599/basedefs/fenv.h.html</a>, operations such as <code>feclearexcept</code> can be defined as macros, and at least some versions of Glibc do that by default. The use of explicit <code>::</code> qualifiers before calls to those in Boost.Test fails to compile. Is there a workaround for that (other than <code>__NO_MATH_INLINES</code>)? </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/6767 Trac 1.4.3 Gennadiy Rozental Mon, 05 Nov 2012 03:23:26 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/6767#comment:1 https://svn.boost.org/trac10/ticket/6767#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">wontfix</span> </li> </ul> <p> I prefer to keep :: in front of global functions. I am not aware about other workarounds. What is wrong with <span class="underline">NO_MATH_INLINES? </span></p> Ticket Jonathan Wakely <jwakely.boost@…> Mon, 14 Sep 2015 13:33:39 GMT <link>https://svn.boost.org/trac10/ticket/6767#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6767#comment:2</guid> <description> <p> This breaks building Boost on ppc64, where feclearexcept is defined as a macro: </p> <p> <a class="ext-link" href="https://bugzilla.redhat.com/show_bug.cgi?id=1262444"><span class="icon">​</span>https://bugzilla.redhat.com/show_bug.cgi?id=1262444</a> </p> <p> The problem is that libs/test/src/execution_monitor.cpp is compiled by Boost.Build (so setting <code>__NO_MATH_INLINES</code> should not be necessary, it should just build) and is compiled as C++03, so GCC's &lt;fenv.h&gt; does not #undef the macros because &lt;fenv.h&gt; is not defined by the C++03 standard library so its effects are an implementation-defined extension to the standard. </p> <p> Please reconsider the wontfix resolution. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Gennadiy Rozental</dc:creator> <pubDate>Sun, 08 Nov 2015 06:59:28 GMT</pubDate> <title>status changed; resolution deleted https://svn.boost.org/trac10/ticket/6767#comment:3 https://svn.boost.org/trac10/ticket/6767#comment:3 <ul> <li><strong>status</strong> <span class="trac-field-old">closed</span> → <span class="trac-field-new">reopened</span> </li> <li><strong>resolution</strong> <span class="trac-field-deleted">wontfix</span> </li> </ul> Ticket Raffi Enficiaud Wed, 13 Jan 2016 09:11:40 GMT milestone changed https://svn.boost.org/trac10/ticket/6767#comment:4 https://svn.boost.org/trac10/ticket/6767#comment:4 <ul> <li><strong>milestone</strong> <span class="trac-field-old">To Be Determined</span> → <span class="trac-field-new">Boost 1.61.0</span> </li> </ul> Ticket Akira Takahashi <faithandbrave@…> Mon, 04 Apr 2016 07:35:38 GMT <link>https://svn.boost.org/trac10/ticket/6767#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6767#comment:5</guid> <description> <p> FYI, fix commit is this : <a class="ext-link" href="https://github.com/boostorg/test/commit/f50e7bc9fed323c5705c0ed992c03e80eeec1dd6"><span class="icon">​</span>https://github.com/boostorg/test/commit/f50e7bc9fed323c5705c0ed992c03e80eeec1dd6</a> </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Mon, 23 May 2016 22:53:01 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/6767#comment:6 https://svn.boost.org/trac10/ticket/6767#comment:6 <ul> <li><strong>status</strong> <span class="trac-field-old">reopened</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> Ticket