Boost C++ Libraries: Ticket #8644: Regression in alternative enum based implementation https://svn.boost.org/trac10/ticket/8644 <p> It seems to be wrong definition of alternative enum based implementation, which is introduced at <a class="changeset" href="https://svn.boost.org/trac10/changeset/82886" title="Use variadic macros in static assert to make use easier. Add warning ...">[82886]</a>. </p> <p> After <a class="changeset" href="https://svn.boost.org/trac10/changeset/82886" title="Use variadic macros in static assert to make use easier. Add warning ...">[82886]</a>: </p> <pre class="wiki">#else // alternative enum based implementation: # ifndef BOOST_NO_CXX11_VARIADIC_MACROS # define BOOST_STATIC_ASSERT( ... ) \ enum { BOOST_JOIN(boost_static_assert_enum_, __LINE__) \ = sizeof(::boost::STATIC_ASSERTION_FAILURE&lt; (bool)( __VA_ARGS__ ) &gt;) } # else enum { BOOST_JOIN(boost_static_assert_enum_, __LINE__) \ = sizeof(::boost::STATIC_ASSERTION_FAILURE&lt; (bool)( B ) &gt;) } # endif #endif #endif // defined(BOOST_NO_CXX11_STATIC_ASSERT) </pre><p> But should be this: </p> <div class="wiki-code"><div class="code"><pre> #else // alternative enum based implementation: # ifndef BOOST_NO_CXX11_VARIADIC_MACROS # define BOOST_STATIC_ASSERT( ... ) \ enum { BOOST_JOIN(boost_static_assert_enum_, __LINE__) \ = sizeof(::boost::STATIC_ASSERTION_FAILURE&lt; (bool)( __VA_ARGS__ ) &gt;) } # else <span class="gi">+# define BOOST_STATIC_ASSERT( B ) \</span> enum { BOOST_JOIN(boost_static_assert_enum_, __LINE__) \ = sizeof(::boost::STATIC_ASSERTION_FAILURE&lt; (bool)( B ) &gt;) } # endif #endif #endif // defined(BOOST_NO_CXX11_STATIC_ASSERT) </pre></div></div><p> This bug affects 1.54 release branch. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8644 Trac 1.4.3 John Maddock Sat, 08 Jun 2013 10:58:42 GMT <link>https://svn.boost.org/trac10/ticket/8644#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8644#comment:1</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84686" title="Apply patch from #8644. Refs #8644.">[84686]</a>) Apply patch from <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8644" title="#8644: Bugs: Regression in alternative enum based implementation (closed: fixed)">#8644</a>. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8644" title="#8644: Bugs: Regression in alternative enum based implementation (closed: fixed)">#8644</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Sun, 09 Jun 2013 12:02:08 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/8644#comment:2 https://svn.boost.org/trac10/ticket/8644#comment:2 <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/84713" title="Apply patch from 8644. Fixes #8644.">[84713]</a>) Apply patch from 8644. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8644" title="#8644: Bugs: Regression in alternative enum based implementation (closed: fixed)">#8644</a>. </p> Ticket John Maddock Fri, 21 Jun 2013 12:27:50 GMT <link>https://svn.boost.org/trac10/ticket/8644#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8644#comment:3</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84858" title="Merge static_assert fix from Trunk. Fixes #8644.">[84858]</a>) Merge static_assert fix from Trunk. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8644" title="#8644: Bugs: Regression in alternative enum based implementation (closed: fixed)">#8644</a>. </p> </description> <category>Ticket</category> </item> </channel> </rss>