[Vm-dev] Small finding about NewObjectMemory>>clone:

Igor Stasenko siguctua at gmail.com
Tue Aug 16 16:47:50 UTC 2011


On 16 August 2011 03:58, Dimitry Golubovsky <golubovsky at gmail.com> wrote:
>
> Hi,
>
> I have just spotted that the method NewObjectMemory>>clone as found in
> VMMaker-oscog-IgorStasenko.116.mcz (with hyphen):
>
> clone: oop
>        "Return a shallow copy of the given object. May cause GC"
>        "Assume: Oop is a real object, not a small integer.
>         Override to assert it's not a married context"
>        self assert: ((coInterpreter isContext: oop) not
>                                or: [(coInterpreter isMarriedOrWidowedContext: oop) not]).
>        ^super clone: oop
>
> causes compilation error in the interpreter.
>
> It seems that it has been fixed in VMMaker.oscog-eem.116.mcz (with dot)
>
> clone: obj
>        "Return a shallow copy of the given object. May cause GC"
>        "Assume: Oop is a real object, not a small integer.
>         Override to assert it's not a married context"
>        self assert: ((coInterpreter isContext: obj) not
>                                or: [(coInterpreter isMarriedOrWidowedContext: obj) not]).
>        ^super clone: obj
>
> basically s/oop/obj/g - I had to make similar change in my local copy
> of VMMaker.
>
> So, Igor: please merge this into the CMMaker-oscog branch.
>
Will do.

> Thanks.
>
> PS Is this some kind of inliner bug? When super method is inlined,
> argument identifier remains the same instead of being substituted.
>
> --
> Dimitry Golubovsky
>
> Anywhere on the Web
>



-- 
Best regards,
Igor Stasenko AKA sig.


More information about the Vm-dev mailing list