When validateObject in MemorySegment.hpp is enabled and our tests are run, I'm seeing (only very few) invalid object size detections, and all of them seem to be related to running rexxc - compiled code.
If the trivial Rexx program `return 99` is compiled with rexxc and the output is run, this is the result (22 is String, 36 is Buffer). ~~~ GC detected invalid object size: type=36, bytes=172, min=48, grain=16 GC detected invalid object size: type=22, bytes=116, min=48, grain=16 GC detected invalid object size: type=-1153706960, bytes=1644, min=48, grain=16 GC detected invalid object size: type=-1153705076, bytes=1300, min=48, grain=16 GC detected invalid object size: type=299048656, bytes=1644, min=48, grain=16 GC detected invalid object size: type=299048656, bytes=1300, min=48, grain=16 ~~~ Our usual suspect again - newly created objects collected too early by GC? Are all Rexx objects 48 + k * 16 in size? Shall we keep this check enabled in the DEBUG version of our code to make it easier catching any of these issues?
_______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel