<htmlxmlns="http://www.w3.org/1999/xhtml"><head><title>Pulselib__PulseDiagnostic (infer.Pulselib__PulseDiagnostic)</title><linkrel="stylesheet"href="../../odoc.css"/><metacharset="utf-8"/><metaname="generator"content="odoc 1.5.1"/><metaname="viewport"content="width=device-width,initial-scale=1.0"/><scriptsrc="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><divclass="content"><header><nav><ahref="../index.html">Up</a>–<ahref="../index.html">infer</a>» Pulselib__PulseDiagnostic</nav><h1>Module <code>Pulselib__PulseDiagnostic</code></h1></header><divclass="spec module"id="module-CallEvent"><ahref="#module-CallEvent"class="anchor"></a><code><spanclass="keyword">module</span> CallEvent = <ahref="../Pulselib/index.html#module-PulseCallEvent">Pulselib.PulseCallEvent</a></code></div><divclass="spec module"id="module-Invalidation"><ahref="#module-Invalidation"class="anchor"></a><code><spanclass="keyword">module</span> Invalidation = <ahref="../Pulselib/index.html#module-PulseInvalidation">Pulselib.PulseInvalidation</a></code></div><divclass="spec module"id="module-Trace"><ahref="#module-Trace"class="anchor"></a><code><spanclass="keyword">module</span> Trace = <ahref="../Pulselib/index.html#module-PulseTrace">Pulselib.PulseTrace</a></code></div><divclass="spec module"id="module-ValueHistory"><ahref="#module-ValueHistory"class="anchor"></a><code><spanclass="keyword">module</span> ValueHistory = <ahref="../Pulselib/index.html#module-PulseValueHistory">Pulselib.PulseValueHistory</a></code></div><dl><dtclass="spec type"id="type-access_to_invalid_address"><ahref="#type-access_to_invalid_address"class="anchor"></a><code><spanclass="keyword">type</span> access_to_invalid_address</code><code> = </code><code>{</code><tableclass="record"><trid="type-access_to_invalid_address.calling_context"class="anchored"><tdclass="def field"><ahref="#type-access_to_invalid_address.calling_context"class="anchor"></a><code>calling_context : <span><span>(<ahref="../Pulselib/PulseCallEvent/index.html#type-t">CallEvent.t</a> * <ahref="../IBase/Location/index.html#type-t">IBase.Location.t</a>)</span> list</span>;</code></td><tdclass="doc"><p>the list of function calls leading to the issue being realised, which is an additional common prefix to the traces in the record</p></td></tr><trid="type-access_to_invalid_address.invalidation"class="anchored"><tdclass="def field"><ahref="#type-access_to_invalid_address.invalidation"class="anchor"></a><code>invalidation : <ahref="../Pulselib/PulseInvalidation/index.html#type-t">Invalidation.t</a>;</code></td></tr><trid="type-access_to_invalid_address.invalidation_trace"class="anchored"><tdclass="def field"><ahref="#type-access_to_invalid_address.invalidation_trace"class="anchor"></a><code>invalidation_trace : <ahref="../Pulselib/PulseTrace/index.html#type-t">Trace.t</a>;</code></td><tdclass="doc"><p>assuming we are in the calling context, the trace leads to <code>invalidation</code> without further assumptions</p></td></tr><trid="type-access_to_invalid_address.access_trace"class="anchored"><tdclass="def field"><ahref="#type-access_to_invalid_address.access_trace"class="anchor"></a><code>access_trace : <ahref="../Pulselib/PulseTrace/index.html#type-t">Trace.t</a>;</code></td><tdclass="doc"><p>assuming we are in the calling context, the trace leads to an access to the value invalidated in <code>invalidation_trace</code> without further assumptions</p></td></tr></table><code>}</code></dt></dl><div><divclass="spec include"><divclass="doc"><dl><dtclass="spec value"id="val-compare_access_to_invalid_address"><ahref="#val-compare_access_to_invalid_address"class="anchor"></a><code><spanclass="keyword">val</span> compare_access_to_invalid_address : <ahref="index.html#type-access_to_invalid_address">access_to_invalid_address</a><span>-></span><ahref="index.html#type-access_to_invalid_address">access_to_invalid_address</a><span>-></span> int</code></dt><dtclass="spec value"id="va