Next: Attribute Range_Length, Previous: Attribute Passed_By_Reference, Up: Implementation Defined Attributes [Contents][Index]
X'Pool_Address for any object X returns the address
of X within its storage pool. This is the same as
X'Address, except that for an unconstrained array whose
bounds are allocated just before the first component,
X'Pool_Address returns the address of those bounds,
whereas X'Address returns the address of the first
component.
Here, we are interpreting ’storage pool’ broadly to mean
wherever the object is allocated, which could be a
user-defined storage pool,
the global heap, on the stack, or in a static memory area.
For an object created by new, Ptr.all'Pool_Address is
what is passed to Allocate and returned from Deallocate.