<html>#2344: presync fails to parse WaveToyOpenCL's schedule.ccl
<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>new</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>critical</td></tr>
<tr><td style='text-align:right'>Component:</td><td>EinsteinToolkit thorn</td></tr>
</table>

<p>Comment (by Roland Haas):</p>
<p>SYNC is definitely not case sensitive. In the same schedule.ccl file there is:</p>
<div class="codehilite"><pre><span></span> SYNC:   Scalar
</pre></div>


<p>which compiles and works fine.</p>
<p>Note that the reason why schedule groups are case sensitive is very different from the one why scheduled routines written in C are. The latter are case sensitive since the linker symbol that is the C function preserves the case that is used in the C source code (which is not the case for Fortran scheduled function which are not case sensitive). Thus you get a link time error if you provide the wrong case for a C scheduled routine.ON the other hand, schedule group names never show up as a C identifier anywhere and are case sensitive because the flesh’s C code (in <code>CCTKi_DoScheduleFunction</code>) uses <code>Util_GetHandle</code> to get the group handle, which function uses <code>strcmp</code> on the handle name, which is the scheduled group name as it appears in schedule.ccl.</p>
<p>If there was a problem making <code>READ</code> / <code>WRITE</code> case insenstitive then that problem should be fixed.One problem that comes to mind would be generating variable names in <code>DECLARE_CCTK_ARGUMENTS_Checked</code> if one used the <code>READ</code> / <code>WRITE</code> strings in a case sensitive comparison against the full list that is currently used.</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2344/presync-fails-to-parse-wavetoyopencls'>https://bitbucket.org/einsteintoolkit/tickets/issues/2344/presync-fails-to-parse-wavetoyopencls</a></p>
</html>