<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mar. 23 juin 2020 à 19:52, Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div dir="ltr"><div dir="ltr">Hi Nicolas,<br><div><br></div><div>   I think my concern about globals can be handled with an assert, because the problem looks like it never happens in practice.</div><div><br></div><div>I see this as a result of the changes:</div><div><br></div><div><div>-       mcpc = ((cogMethod->cpicHasMNUCaseOrCMIsFullBlock)</div><div>-               ? (((usqInt)cogMethod)) + cbNoSwitchEntryOffset</div><div>-               : (((usqInt)cogMethod)) + cmNoCheckEntryOffset);</div><div>+       if ((cogMethod->cpicHasMNUCaseOrCMIsFullBlock)) {</div><div>+               mcpc = (((usqInt)cogMethod)) + cbNoSwitchEntryOffset;</div><div>+       }</div><div>+       else {</div><div>+               mcpc = (((usqInt)cogMethod)) + cmNoCheckEntryOffset;</div><div>+       }</div></div><div><br></div><div>This is undesirable.  I'm going to try and undo this part of the change.</div></div></div><br></blockquote><div><br></div><div>Indeed, it's the case when all branches assign to the same variable.</div><div>Can't we recognize it properly?<br></div>Let me have a look...<br></div></div>