1
This Annex contains the specifications of library units that shall be provided by every implementation. There are three root library units: Ada, Interfaces, and System; other library units are children of these:
2/2
Standard −− A.1
Ada −− A.2
Assertions −− 11.4.2
Asynchronous_Task_Control −− D.11
Calendar −− 9.6
Arithmetic −− 9.6.1
Formatting −− 9.6.1
Time_Zones −− 9.6.1
Characters −− A.3.1
Conversions −− A.3.4
Handling −− A.3.2
Latin_1 −− A.3.3
Command_Line −− A.15
Complex_Text_IO −− G.1.3
Containers −− A.18.1
Doubly_Linked_Lists −− A.18.3
Generic_Array_Sort −− A.18.16
Generic_Constrained_Array_Sort
−− A.18.16
Hashed_Maps −− A.18.5
Hashed_Sets −− A.18.8
Indefinite_Doubly_Linked_Lists
−− A.18.11
Indefinite_Hashed_Maps −− A.18.12
Indefinite_Hashed_Sets −− A.18.14
Indefinite_Ordered_Maps −− A.18.13
Indefinite_Ordered_Sets −− A.18.15
Indefinite_Vectors −− A.18.10
Ordered_Maps −− A.18.6
Ordered_Sets −− A.18.9
Vectors −− A.18.2
Decimal −− F.2
Direct_IO −− A.8.4
Directories −− A.16
Information −− A.16
Dispatching −− D.2.1
EDF −− D.2.6
Round_Robin −− D.2.5
Dynamic_Priorities −− D.5
Standard (...continued)
Ada (...continued)
Environment_Variables −− A.17
Exceptions −− 11.4.1
Execution_Time −− D.14
Group_Budgets −− D.14.2
Timers −− D.14.1
Finalization −− 7.6
Float_Text_IO −− A.10.9
Float_Wide_Text_IO −− A.11
Float_Wide_Wide_Text_IO −− A.11
Integer_Text_IO −− A.10.8
Integer_Wide_Text_IO −− A.11
Integer_Wide_Wide_Text_IO −− A.11
Interrupts −− C.3.2
Names −− C.3.2
IO_Exceptions −− A.13
Numerics −− A.5
Complex_Arrays −− G.3.2
Complex_Elementary_Functions −− G.1.2
Complex_Types −− G.1.1
Discrete_Random −− A.5.2
Elementary_Functions −− A.5.1
Float_Random −− A.5.2
Generic_Complex_Arrays −− G.3.2
Generic_Complex_Elementary_Functions
−− G.1.2
Generic_Complex_Types −− G.1.1
Generic_Elementary_Functions −− A.5.1
Generic_Real_Arrays −− G.3.1
Real_Arrays −− G.3.1
Real_Time −− D.8
Timing_Events −− D.15
Sequential_IO −− A.8.1
Storage_IO −− A.9
Streams −− 13.13.1
Stream_IO −− A.12.1
Standard (...continued)
Ada (...continued)
Strings −− A.4.1
Bounded −− A.4.4
Hash −− A.4.9
Fixed −− A.4.3
Hash −− A.4.9
Hash −− A.4.9
Maps −− A.4.2
Constants −− A.4.6
Unbounded −− A.4.5
Hash −− A.4.9
Wide_Bounded −− A.4.7
Wide_Hash −− A.4.7
Wide_Fixed −− A.4.7
Wide_Hash −− A.4.7
Wide_Hash −− A.4.7
Wide_Maps −− A.4.7
Wide_Constants −− A.4.7
Wide_Unbounded −− A.4.7
Wide_Hash −− A.4.7
Wide_Wide_Bounded −− A.4.8
Wide_Wide_Hash −− A.4.8
Wide_Wide_Fixed −− A.4.8
Wide_Wide_Hash −− A.4.8
Wide_Wide_Hash −− A.4.8
Wide_Wide_Maps −− A.4.8
Wide_Wide_Constants −− A.4.8
Wide_Wide_Unbounded −− A.4.8
Wide_Wide_Hash −− A.4.8
Synchronous_Task_Control −− D.10
Tags −− 3.9
Generic_Dispatching_Constructor −− 3.9
Task_Attributes −− C.7.2
Task_Identification −− C.7.1
Task_Termination −− C.7.3
Standard (...continued)
Ada (...continued)
Text_IO −− A.10.1
Bounded_IO −− A.10.11
Complex_IO −− G.1.3
Editing −− F.3.3
Text_Streams −− A.12.2
Unbounded_IO −− A.10.12
Unchecked_Conversion −− 13.9
Unchecked_Deallocation −− 13.11.2
Wide_Characters −− A.3.1
Wide_Text_IO −− A.11
Complex_IO −− G.1.4
Editing −− F.3.4
Text_Streams −− A.12.3
Wide_Bounded_IO −− A.11
Wide_Unbounded_IO −− A.11
Wide_Wide_Characters −− A.3.1
Wide_Wide_Text_IO −− A.11
Complex_IO −− G.1.5
Editing −− F.3.5
Text_Streams −− A.12.4
Wide_Wide_Bounded_IO −− A.11
Wide_Wide_Unbounded_IO −− A.11
Interfaces −− B.2
C −− B.3
Pointers −− B.3.2
Strings −− B.3.1
COBOL −− B.4
Fortran −− B.5
System −− 13.7
Address_To_Access_Conversions −− 13.7.2
Machine_Code −− 13.8
RPC −− E.5
Storage_Elements −− 13.7.1
Storage_Pools −− 13.11
3/2
The implementation shall ensure that each language−defined subprogram is reentrantin the sense that concurrent calls on the same subprogram perform as specified, so long as all parameters that could be passed by reference denote nonoverlapping objects.
4
The implementation may restrict the replacement of language−defined compilation units. The implementation may restrict children of language−defined library units (other than Standard).