On Sep 24, 2010, at 10:17 AM, Marcus Denker wrote:


So the solution takes was to make some selectors special. ifTrue: is *always* compiled to a jump bytecode.
This in turn means that it can not be used for any other purpose. If you implement it in your own class, it will never
be called. (I alwasy wanted to look into the question if the vm could not just re-send ifTrue: instead of giving the
useless error message...)
Which of course would be tricky as there is no block for the parameter... it has been optimized away.

The solution to all these things is of course late-binding optimization to the point when all information is available.

Marcus


--
Marcus Denker  -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.