Re: [Oorexx-devel] How IntegerZero is GC protected?

2024-04-08 Thread Rick McGuire
On Mon, Apr 8, 2024 at 11:33 AM Jean Louis Faucher wrote: > Thanks! > > Returns an instance from the integer cache maintained by the > RexxIntegerClass object. These are all marked by the live() method on the > object, so RexxMemory doesn't need to do anything special. > > > I never realised

Re: [Oorexx-devel] How IntegerZero is GC protected?

2024-04-08 Thread Jean Louis Faucher
Thanks! > Returns an instance from the integer cache maintained by the RexxIntegerClass > object. These are all marked by the live() method on the object, so > RexxMemory doesn't need to do anything special. I never realised that the RexxInteger has a (what? metaclass?) different from

Re: [Oorexx-devel] How IntegerZero is GC protected?

2024-04-08 Thread Rick McGuire
On Mon, Apr 8, 2024 at 8:14 AM Jean Louis Faucher 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

Re: [Oorexx-devel] How IntegerZero is GC protected?

2024-04-08 Thread Rick McGuire
On Mon, Apr 8, 2024 at 8:14 AM Jean Louis Faucher wrote: > RexxMemory.cpp > IntegerZero = new_integer(0); > IntegerOne= new_integer(1); > ... > > Looking at RexxMemory::live, I don’t see what is marking IntegerZero. > This is a good question, and the answer is not particularly

[Oorexx-devel] How IntegerZero is GC protected?

2024-04-08 Thread Jean Louis Faucher
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",