Boost C++ Libraries: Ticket #4881: TI compiler: compiling with integer.hpp fails https://svn.boost.org/trac10/ticket/4881 <p> Hello, </p> <p> 1.45.0 is the seventh version of boost, which I am successfully using with a Texas Instruments compiler (actually, only some header-only parts of boost). </p> <p> However, for every new version of boost i must make this change in boost: </p> <pre class="wiki">Index: integer.hpp =================================================================== --- integer.hpp (revision 41) +++ integer.hpp (working copy) @@ -89,7 +89,8 @@ template &lt;&gt; struct exact_signed_base_helper&lt;sizeof(int)* CHAR_BIT&gt; { typedef int exact; }; template &lt;&gt; struct exact_unsigned_base_helper&lt;sizeof(unsigned int)* CHAR_BIT&gt; { typedef unsigned int exact; }; #endif -#if ULONG_MAX != UINT_MAX +#if ULONG_MAX != UINT_MAX &amp;&amp; ( !defined __TI_COMPILER_VERSION__ || \ + ( __TI_COMPILER_VERSION__ &gt;= 7000000 &amp;&amp; !defined __TI_40BIT_LONG__ ) ) template &lt;&gt; struct exact_signed_base_helper&lt;sizeof(long)* CHAR_BIT&gt; { typedef long exact; }; template &lt;&gt; struct exact_unsigned_base_helper&lt;sizeof(unsigned long)* CHAR_BIT&gt; { typedef unsigned long exact; }; #endif </pre><p> The change is needed in order to avoid compilation errors about redefined exact_[un]signed_base_helper. </p> <p> The condition </p> <pre class="wiki">( !defined __TI_COMPILER_VERSION__ || \ ( __TI_COMPILER_VERSION__ &gt;= 7000000 &amp;&amp; !defined __TI_40BIT_LONG__ ) ) </pre><p> excludes cases, where sizeof(long)==8, but long the compiler treats it as a 40-bit integer. </p> <p> So I thought maybe this could be resolved once and for all ;-) </p> <p> Cheers Kris </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/4881 Trac 1.4.3 Vicente Botet <vicente.botet@…> Tue, 07 Dec 2010 19:57:22 GMT type changed https://svn.boost.org/trac10/ticket/4881#comment:1 https://svn.boost.org/trac10/ticket/4881#comment:1 <ul> <li><strong>type</strong> <span class="trac-field-old">Bugs</span> → <span class="trac-field-new">Patches</span> </li> </ul> Ticket viboes Sun, 25 Jan 2015 15:46:23 GMT owner, status changed https://svn.boost.org/trac10/ticket/4881#comment:2 https://svn.boost.org/trac10/ticket/4881#comment:2 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Daryle Walker</span> to <span class="trac-author">viboes</span> </li> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> Ticket viboes Sun, 25 Jan 2015 16:12:03 GMT milestone changed https://svn.boost.org/trac10/ticket/4881#comment:3 https://svn.boost.org/trac10/ticket/4881#comment:3 <ul> <li><strong>milestone</strong> <span class="trac-field-old">To Be Determined</span> → <span class="trac-field-new">Boost 1.58.0</span> </li> </ul> <p> <a class="ext-link" href="https://github.com/boostorg/integer/commit/a12b96c011ade69cd38cfa33add39b51e86723d0"><span class="icon">​</span>https://github.com/boostorg/integer/commit/a12b96c011ade69cd38cfa33add39b51e86723d0</a> </p> Ticket viboes Sat, 04 Apr 2015 21:06:19 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/4881#comment:4 https://svn.boost.org/trac10/ticket/4881#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">assigned</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> Ticket