<html>#2781: Fix bug in debug mode with presync_mode = "off"
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Samuel Cupp</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>new</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td>ET_2024_05</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>major</td></tr>
<tr><td style='text-align:right'>Component:</td><td>Cactus</td></tr>
</table>

<p>Currently, <code>CCTK_HasAccess</code> only checks access if <code>presync_mode</code> is set to <code>presync_only</code>. However, with debug on (<code>CCTK_DEBUG</code> is defined), it instead always checks access.</p>
<p>‌</p>
<p>The first part of this code section asserts that the function has the attribute RDWR:</p>
<div class="codehilite"><pre><span></span><span>  assert(current_function->RDWR);</span>
</pre></div>


<p>This is incompatible with the form of <code>CCTKi_CreateRDWRData</code>, which immediately returns if this parameter is set to <code>off</code>, meaning that this attribute is never created. As such, <code>presync_mode="off"</code> cannot run in debug mode, which is especially unacceptable for the default parameter setting. If presync is completely off, then it should never enter this section of the code.</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2781/fix-bug-in-debug-mode-with-presync_mode'>https://bitbucket.org/einsteintoolkit/tickets/issues/2781/fix-bug-in-debug-mode-with-presync_mode</a></p>
</html>