[squeak-dev] Re: A possible Cog bug

Frank Shearar frank.shearar at angband.za.org
Mon Apr 25 09:18:29 UTC 2011


On 2011/04/25 04:35, Levente Uzonyi wrote:
> On Sun, 24 Apr 2011, Levente Uzonyi wrote:
>
> snip
>
>> it didn't work for some reason. The execution always ran into the
>> error 'computation has been terminated' in MethodContext >>
>> #cannotReturn: and the method context (which stitches the continuation
>> onto the stack) was broken (nil in temporaries where should be non nil
>> values). Finally I tried it in SqueakVM instead of Cog and it worked.
>> The tests are green, the example code
>
> I tracked down this issue a bit more. The cause of the problem is that
> with CogVM the pc of thisContext is being set to nil when the execution
> leaves the context. This means, that [thisContext copy] will not be able
> to copy the pc of the context:
>
> { thisContext pc. thisContext copy pc } "==> #(23 nil)"

That would explain why I didn't come across it: I wrote the library on 
the SqueakVM.

frank



More information about the Squeak-dev mailing list