Boost C++ Libraries: Ticket #8349: using I as the name of a template parameter leads to compile errors https://svn.boost.org/trac10/ticket/8349 <p> complex.h on my system #defines I to be the imaginary unit and leads to compile errors when some boost headers are included after it. </p> <p> I've attached a patch renaming I to <span class="underline">I in the headers which caused a problem for me. </span></p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8349 Trac 1.4.3 Kevin Waugh <kevin.waugh@…> Thu, 28 Mar 2013 00:34:34 GMT attachment set https://svn.boost.org/trac10/ticket/8349 https://svn.boost.org/trac10/ticket/8349 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">I_to___I.patch</span> </li> </ul> Ticket Steven Watanabe Thu, 28 Mar 2013 00:43:08 GMT <link>https://svn.boost.org/trac10/ticket/8349#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8349#comment:1</guid> <description> <p> __I is a reserved identifier. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Steven Watanabe</dc:creator> <pubDate>Thu, 28 Mar 2013 00:47:11 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8349#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8349#comment:2</guid> <description> <pre class="wiki">#undef I </pre><p> No one has any business defining I as a macro. </p> </description> <category>Ticket</category> </item> <item> <author>Kevin Waugh <kevin.waugh@…></author> <pubDate>Thu, 28 Mar 2013 01:04:37 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8349#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8349#comment:3</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/8349#comment:2" title="Comment 2">steven_watanabe</a>: </p> <blockquote class="citation"> <pre class="wiki">#undef I </pre><p> No one has any business defining I as a macro. </p> </blockquote> <p> I agree that it's a pain that I is defined as a macro, but glibc does it and the solution to the compile errors (i.e., reordering the headers) was non-obvious. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Steven Watanabe</dc:creator> <pubDate>Thu, 28 Mar 2013 03:29:15 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/8349#comment:4 https://svn.boost.org/trac10/ticket/8349#comment:4 <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> complex.h is hopelessly broken. </p> <pre class="wiki">#include &lt;complex.h&gt; #include &lt;complex&gt; </pre> Ticket