<br><br><div class="gmail_quote">On Sat, Jan 28, 2012 at 2:23 PM, Andreas Raab <span dir="ltr">&lt;<a href="mailto:andreas.raab@gmx.de">andreas.raab@gmx.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div></div><div class="h5"><br>
On 1/28/2012 23:09, Igor Stasenko wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Another reason why we need such prim: have you tried to debug a debugger?<br>
You can&#39;t , because there is a simulation guard:<br>
<br>
        &lt;primitive: 19&gt;  &quot;Simulation guard&quot;<br>
        &quot;If successful, push result and return resuming context,<br>
                else ^ PrimitiveFailToken&quot;<br>
        (primitiveIndex = 19) ifTrue:<br>
                [Smalltalk tools<br>
                        debugContext: self<br>
                        label:&#39;Code simulation error&#39;<br>
                        contents: nil].<br>
<br>
This is because you cannot instruct VM that the code you stepping over<br>
should not escape out of your control.<br>
</blockquote>
<br></div></div>
Sorry, but that&#39;s not what the simulation guard is for. Historically the VM would just crash when trying to simulate certain methods (like the above). So I put in simulation guards to prevent VM crashes. If the VM can simulate these methods, then you can just take them out.<br>
</blockquote><div><br></div><div>Quite right.  I ripped it out of the Qwaq/Teleplace codebase without ill-effect.  I need to do that for Squeak.  Thanks for the reminder.   Simply remove the &lt;primitive: 19&gt; nonsense from doPrimitive:. </div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Cheers,<br><font color="#888888">
  - Andreas<br>
<br>
</font></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div><br>