[Ironruby-core] FW: Review of Peter Bacon Darwin's Fixnum patch

John Messerly jomes at microsoft.com
Tue Dec 18 15:50:16 EST 2007

Peter Bacon Darwin:

> Sorry you are right about the YieldStep method.  It should return the
> result of the block if it jumped.  By the way, is there any difference
> between a block jumping with a break statement and jumping with a
> return statement?

Yeah, I made that change to YieldStep & checked in. Let me know if anything didn't get merged correctly.

Return & break are different, but the control flow code (RuntimeFlowControl, BlockParam) tracks that stuff. The only thing library code needs to do is:

object result = _MyBlockSite.Invoke(context, block, args ...)
if (block.BlockJumped(result)) {
    return result;

Maybe in the future we can clean that up, but that's the story for now.

- John

More information about the Ironruby-core mailing list