<html>#2403: compile failure with gfortran 10 when using CCTK_PointerTo
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Roland Haas</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>open</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td></td></tr>
<tr><td style='text-align:right'>     Type:</td><td>bug</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>blocker</td></tr>
<tr><td style='text-align:right'>Component:</td><td></td></tr>
</table>

<p>Comment (by Roland Haas):</p>
<p>Things I cannot / do not want to do in cases like gfortran-10 where the compiler checks types / ranks of arguments:</p>
<ul>
<li>use Cray pointers ie <code>loc</code> (not required by Cactus, only the ET)</li>
<li>use <code>c_loc</code> (is Fortran 2003, but then <code>TYPE(*)</code> is Fortran 2018 so any compiler supporting the latter will support the former) requires <code>use iso_c_binding</code> which I suspect will reveal all kinds of problems with using Fortran modules</li>
<li>C preprocessor tricks like <code>#define CCTK_PointerTo(a) CCTKi_PointerTo((a)(1))</code> because it will fail when <code>a</code> is a scalar.</li>
</ul>
<p>‌</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2403/compile-failure-with-gfortran-10-when'>https://bitbucket.org/einsteintoolkit/tickets/issues/2403/compile-failure-with-gfortran-10-when</a></p>
</html>