AI22-0050-1
!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.
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 (https://github.com/Ada-Rapporteur-Group/User-Community-Input/issues/20).
******************************************************