The Predefined Library

This post lists the units in the Ada 95 predefined library, and indicates whether a unit is supported or not. The answer “Yes” means the unit is supported in the default profile, and maybe in the other profiles. The answer “Restricted…” means the unit is not supported in any profile because of a built-in restriction.

Unit Name Supported?
Ada Yes
Ada.Asynchronous_Task_Control Yes
Ada.Calendar Yes[a][b]
Ada.Characters Yes
Ada.Characters.Handling Yes
Ada.Characters.Latin_1 Yes
Ada.Characters.Wide_Latin_1 Yes
Ada.Command_Line Not applicable
Ada.Decimal Yes
Ada.Direct_IO Yes[b]
Ada.Dynamic_Priorities Yes
Ada.Exceptions Yes
Ada.Finalization Restricted No_Implicit_Heap_Allocations
Ada.Interrupts Yes
Ada.Interrupts.Names Yes
Ada.IO_Exceptions Yes
Ada.Numerics Yes
Ada.Numerics.Complex_Elementary_Functions Yes
Ada.Numerics.Complex_Types Yes
Ada.Numerics.Discrete_Random Yes
Ada.Numerics.Elementary_Functions Yes
Ada.Numerics.Float_Random Yes
Ada.Numerics.Generic_Complex_Elementary_Functions Yes
Ada.Numerics.Generic_Complex_Types Yes
Ada.Numerics.Generic_Elementary_Functions Yes
Ada.Real_Time Yes
Ada.Sequential_IO Yes[b]
Ada.Storage_IO Yes
Ada.Streams Restricted No_Dispatch
Ada.Streams.Stream_IO Restricted No_Dispatch
Ada.Strings Yes
Ada.Strings.Bounded Yes
Ada.Strings.Fixed Yes
Ada.Strings.Maps Yes
Ada.Strings.Maps.Constants Yes
Ada.Strings.Unbounded Not available
Ada.Strings.Wide_Bounded Restricted No_Implicit_Heap_Allocations
Ada.Strings.Wide_Fixed Restricted No_Implicit_Heap_Allocations
Ada.Strings.Wide_Maps Restricted No_Implicit_Heap_Allocations
Ada.Strings.Wide_Maps.Wide_Constants Restricted No_Implicit_Heap_Allocations
Ada.Strings.Wide_Unbounded Restricted No_Implicit_Heap_Allocations
Ada.Synchronous_Task_Control Yes
Ada.Tags Restricted No_Dispatch
Ada.Task_Attributes No
Ada.Task_Identification Yes
Ada.Text_IO Yes[b]
Ada.Text_IO.Complex_IO Not applicable
Ada.Text_IO.Editing Not applicable
Ada.Text_IO.Text_Streams Not applicable
Ada.Unchecked_Conversion Yes
Ada.Unchecked_Deallocation Restricted No_Unchecked_Deallocation
Ada.Wide_Text_IO Not applicable
Ada.Wide_Text_IO.Complex_IO Not applicable
Ada.Wide_Text_IO.Editing Not applicable
Ada.Wide_Text_IO.Text_Streams Not applicable
Calendar Yes[a][b]
Direct_IO Yes[b]
IO_Exceptions Yes
Interfaces Yes
Interfaces.C Yes
Interfaces.C.Pointers Yes
Interfaces.C.Strings Yes
Interfaces.COBOL Not applicable
Interfaces.FORTRAN Not applicable
Machine_Code Yes
Sequential_IO Yes[b]
System Yes
System.Address_to_Access_Conversions Yes
System.Machine_Code Yes
System.RPC Not available (depends on Ada.Streams)
System.Storage_Elements Yes
System.Storage_Pools Not available (depends on Ada.Finalization)
Text_IO Yes
Unchecked_Conversion Yes
Unchecked_Deallocation Restricted No_Unchecked_Deallocation
Notes:
a. Restricted to POSIX date range, which is Jan 1, 1970 to Jan 19, 2038
b. When supported by appropriate system calls

Leave a Reply

Your email address will not be published. Required fields are marked *