[squeak-dev] The Inbox: Compiler-mt.456.mcz

jaromir m at jaromir.net
Tue Feb 2 13:49:31 UTC 2021


> > Try to remove the primitive from #yield and then it works ok
>
> Yes, removing the primitive form #yield will introduce one (or more)
> suspension points because of the (rather complex) fallback implementation.
> Yet, I cannot do that in a test. :-)

Now I'm confused - it looks to me either yield primitive 167 or
#valueUnpreemptively behave incorrectly because your example

x := 0.
[ [ x := 1 ] forkAt: 41 ] valueUnpreemptively.
y := x == 1.

should definitely return true. In case yield primitive works as intended,
#valueUnpreemptively should change (replace Processor yield line to digest
the change of priority) or vice versa - or am I missing something?

J.



--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html


More information about the Squeak-dev mailing list