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.
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