Summary: Ignore Interior GC attribute
           Product: D
           Version: 2.029
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: DMD

A very easy, but often very effective, way to deal with false pointer issues in
the GC, would be to include an attribute in GC.BlkAttr that allows for interior
pointers to a block of memory to be ignored and only pointers to the root to be
able to keep the object alive.  

An example use case is when a class or struct object stores a large array that
never escapes the scope of the object.  The array will therefore always have a
pointer to its root if it is referenced.  Counting only pointers to the root as
references to the object would drastically lessen the probability that large
arrays are kept around due to false pointers.


Reply via email to