Boost C++ Libraries: Ticket #8941: Detection of availability of 128-bit integers should be left on Boost.Config https://svn.boost.org/trac10/ticket/8941 <p> The following code in lexical_cast.hpp appears wrong: </p> <pre class="wiki">#if (defined(BOOST_LCAST_HAS_INT128) &amp;&amp; !defined(__GNUC__)) || GCC_VERSION &gt; 40700 #define BOOST_LCAST_HAS_INT128 #endif </pre><p> I'm uncertain whether BOOST_LCAST_HAS_INT128 serves some purpose such as per-library configuration. It seems to me it would be best to simply defer this logic to config.hpp, drop this piece of code, and later on dispatch on BOOST_HAS_INT128. I'm attaching a patch to this effect. </p> <p> Note that this logic currently breaks on i386, where GCC doesn't support 128-bit data types even though it otherwise satisfies the above condition. </p> <p> If you wish to have this configured specifically for lexical cast, I can work in some logic that overrides BOOST_HAS_INT128 in favor of whatever BOOST_LCAST_HAS_INT128 setting came from the "outside" (if any). </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8941 Trac 1.4.3 Petr Machata <pmachata@…> Tue, 30 Jul 2013 17:46:20 GMT attachment set https://svn.boost.org/trac10/ticket/8941 https://svn.boost.org/trac10/ticket/8941 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">boost-1.54.0-lexical_cast-int128.patch</span> </li> </ul> <p> A fix. </p> Ticket Petr Machata <pmachata@…> Tue, 30 Jul 2013 18:09:29 GMT <link>https://svn.boost.org/trac10/ticket/8941#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8941#comment:1</guid> <description> <p> Oops, and I see there's a duplicate of this bug already: <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8790" title="#8790: Bugs: BOOST_LCAST_HAS_INT128 defined in 32-bit machine using gcc (closed: fixed)">#8790</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Tue, 12 Nov 2013 17:21:46 GMT</pubDate> <title>status, milestone changed; resolution set https://svn.boost.org/trac10/ticket/8941#comment:2 https://svn.boost.org/trac10/ticket/8941#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">duplicate</span> </li> <li><strong>milestone</strong> <span class="trac-field-old">To Be Determined</span> → <span class="trac-field-new">Boost 1.56.0</span> </li> </ul> Ticket Antony Polukhin Tue, 12 Nov 2013 17:23:37 GMT milestone deleted https://svn.boost.org/trac10/ticket/8941#comment:3 https://svn.boost.org/trac10/ticket/8941#comment:3 <ul> <li><strong>milestone</strong> <span class="trac-field-deleted">Boost 1.56.0</span> </li> </ul> Ticket