<html>#2566: check for -traditional in FPP's behaviour
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td></td></tr>
<tr><td style='text-align:right'>   Status:</td><td>wontfix</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td>development version</td></tr>
<tr><td style='text-align:right'>     Type:</td><td>enhancement</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>major</td></tr>
<tr><td style='text-align:right'>Component:</td><td></td></tr>
</table>

<p>Changes (by Roland Haas):</p>
<p><table>
<tr><td>status:</td><td>wontfix (was new)</td></tr>
</table></p>
<p>Comment (by Roland Haas):</p>
<p>Actually Cactus itself contains such a check in <code>src/include/cctk_Types.h</code>:</p>
<div class="codehilite"><pre><span></span><span class="cm">/* Determine whether we have a traditional or an ANSI cpp. */</span>
<span class="cp">#ifdef FCODE</span>
<span class="cm">/* The empty</span>
<span class="cm">   comment in the definition of CCTK_ANSI_FPP will either turn into</span>
<span class="cm">   nothing or into white space.  There must not be any add spaces</span>
<span class="cm">   around this empty comment.</span>

<span class="cm">   A traditional cpp will turn it into nothing, an ANSI cpp will turn</span>
<span class="cm">   it into white space.  Depending on this, CCTK_ANSI_FPP will either</span>
<span class="cm">   turn into a single separate token (which lead to the value 0), or</span>
<span class="cm">   into two separate tokens (which lead to the value 1).</span>

<span class="cm">   This is magic.  */</span>
<span class="cp">#define CCTKi_FPP_A</span>
<span class="cp">#define CCTKi_FPP_B 1</span>
<span class="cp">#define CCTKi_FPP_ACCTKi_FPP_B 0</span>
<span class="cp">#define CCTK_ANSI_FPP CCTKi_FPP_A</span><span class="cm">/**/</span><span class="cp">CCTKi_FPP_B</span>
<span class="cp">#endif</span>
</pre></div>


<p>so really it should support both. Namely if code fails if <code>FPP</code> is not traditional then that could should be changed so that it works both with and without traditional.</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2566/check-for-traditional-in-fpps-behaviour'>https://bitbucket.org/einsteintoolkit/tickets/issues/2566/check-for-traditional-in-fpps-behaviour</a></p>
</html>