On Mon, Apr 8, 2024 at 8:14 AM Jean Louis Faucher <jfaucher...@gmail.com> wrote:
> RexxMemory.cpp > IntegerZero = new_integer(0); > IntegerOne = new_integer(1); > ... > > Looking at RexxMemory::live, I don’t see what is marking IntegerZero. > > Other global static variables like TheTrueObject or nullPointer are put > in a collection. > addToEnvironment("TRUE", TheTrueObject); > addToSystem("NULLPOINTER", TheNullPointer); > and protected: > memory_mark(environment); > memory_mark(system); > > > Side question, out of curiosity: > // Create some special Rexx objects. > TheTrueObject = new RexxInteger(1); > TheFalseObject = new RexxInteger(0); > With these assignments, we have TheTrueObject <> IntegerOne, right? > Why not assigning IntegerZero, IntegerOne? > There is one complication with trying to do that. The TRUE and FALSE objects are part of the saved image, while the values in the integer allocation class are not saved in the image and are recreated as part of the image load time. Rick > _______________________________________________ > Oorexx-devel mailing list > Oorexx-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/oorexx-devel >
_______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel