[log in to unmask] wrote:
>
> procedure Finalize (Item : Needs_Guaranteed_Heap_Cleanup) is
> -- automatically called when Item exits scope.
> -- client of Item cannot prevent it (or forget it).
> begin
> Free (Item.Pointer);
> Finalize (Controlled(Item));
> end Finalize;
According to ARM 7.6(9), "The (default) implementations of Initialize,
Adjust, and Finalize have no effect.", so this call to Finalize seems
superfluous.
--
Jeff Carter
"If you think you got a nasty taunting this time,
you ain't heard nothing yet!"
Monty Python and the Holy Grail