!standard 13.11.5(3/5)                                    22-10-25  AI22-0050-1/01

!class Binding Interpretation  22-10-25

!status work item 22-10-25

!status received 22-07-19

!priority Low

!difficulty Easy

!qualifier Omission

!subject Ada.Unchecked_Deallocate_Subpool should be preelaborated


Ada.Unchecked_Deallocate_Subpool should have the Preelaborate aspect.


It would be useful if the Preelaborate aspect were set to True for Ada.Unchecked_Deallocate_Subpool. The package System.Storage_Pools.Subpools has Preelaborate True, so there seems no reason that this procedure shouldn't as well.


(See Summary.)


Modify 13.11.5(3/5):

with System.Storage_Pools.Subpools;

procedure Ada.Unchecked_Deallocate_Subpool

   (Subpool : in out System.Storage_Pools.Subpools.Subpool_Handle)

   with {Preelaborate, }Global => in out all;


Ada.Unchecked_Deallocation has the aspect Preelaborate, as does the needed package System.Storage_Pools.Subpools. Thus it seems to be an omission (rather than something intended) that Ada.Unchecked_Deallocate_Subpool does not have this aspect.

!ACATS test

An ACATS C-Test could be constructed to check that the Ada.Unchecked_Deallocate_Subpool procedure is preelaborated.


This AI comes from Github Issue #20 (