Ada Reference ManualLegal Information
Contents   Index   References   Search   Previous   Next 

Annex A

(normative)

Predefined Language Environment

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/3
 
 
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
      Bounded_Doubly_Linked_Lists
            — A.18.20
      Bounded_Hashed_Maps — A.18.21
      Bounded_Hashed_Sets — A.18.23
      Bounded_Multiway_Trees — A.18.25
      Bounded_Ordered_Maps — A.18.22
      Bounded_Ordered_Sets — A.18.24
      Bounded_Priority_Queues — A.18.31
      Bounded_Synchronized_Queues
             — A.18.29
      Bounded_Vectors — A.18.19
      Doubly_Linked_Lists — A.18.3
      Generic_Array_Sort — A.18.26
      Generic_Constrained_Array_Sort
            — A.18.26
      Generic_Sort — A.18.26
      Hashed_Maps — A.18.5
      Hashed_Sets — A.18.8
      Indefinite_Doubly_Linked_Lists
            — A.18.12
      Indefinite_Hashed_Maps — A.18.13
      Indefinite_Hashed_Sets — A.18.15
      Indefinite_Holders — A.18.18
      Indefinite_Multiway_Trees — A.18.17
      Indefinite_Ordered_Maps — A.18.14
      Indefinite_Ordered_Sets — A.18.16
      Indefinite_Vectors — A.18.11
Standard (...continued)
  Ada (...continued)
    Containers (...continued)
      Multiway_Trees — A.18.10
      Ordered_Maps — A.18.6
      Ordered_Sets — A.18.9
      Synchronized_Queue_Interfaces
            — A.18.27
      Unbounded_Priority_Queues
            — A.18.30
      Unbounded_Synchronized_Queues
            — A.18.28
      Vectors — A.18.2
    Decimal — F.2
    Direct_IO — A.8.4
    Directories — A.16
      Hierarchical_File_Names — A.16.1
      Information — A.16
    Dispatching — D.2.1
      EDF — D.2.6
      Non_Preemptive — D.2.4
      Round_Robin — D.2.5
    Dynamic_Priorities — D.5.1
    Environment_Variables — A.17
    Exceptions — 11.4.1
    Execution_Time — D.14
      Group_Budgets — D.14.2
      Interrupts — D.14.3
      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
    Iterator_Interfaces — 5.5.1
    Locales — A.19
Standard (...continued)
  Ada (...continued)
    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
    Strings — A.4.1
      Bounded — A.4.4
        Equal_Case_Insensitive — A.4.10
        Hash — A.4.9
        Hash_Case_Insensitive — A.4.9
        Less_Case_Insensitive — A.4.10
      Fixed — A.4.3
        Equal_Case_Insensitive — A.4.10
        Hash — A.4.9
        Hash_Case_Insensitive — A.4.9
        Less_Case_Insensitive — A.4.10
      Equal_Case_Insensitive — A.4.10
      Hash — A.4.9
      Hash_Case_Insensitive — A.4.9
      Less_Case_Insensitive — A.4.10
      Maps — A.4.2
        Constants — A.4.6
      Unbounded — A.4.5
        Equal_Case_Insensitive — A.4.10
        Hash — A.4.9
        Hash_Case_Insensitive — A.4.9
        Less_Case_Insensitive — A.4.10
      UTF_Encoding — A.4.11
        Conversions — A.4.11
        Strings — A.4.11
        Wide_Strings — A.4.11
        Wide_Wide_Strings — A.4.11
Standard (...continued)
  Ada (...continued)
    Strings (...continued)
      Wide_Bounded — A.4.7
        Wide_Equal_Case_Insensitive
              — A.4.7
        Wide_Hash — A.4.7
        Wide_Hash_Case_Insensitive — A.4.7
      Wide_Equal_Case_Insensitive — A.4.7
      Wide_Fixed — A.4.7
        Wide_Equal_Case_Insensitive
              — A.4.7
        Wide_Hash — A.4.7
        Wide_Hash_Case_Insensitive — A.4.7
      Wide_Hash — A.4.7
      Wide_Hash_Case_Insensitive — A.4.7
      Wide_Maps — A.4.7
        Wide_Constants — A.4.7
      Wide_Unbounded — A.4.7
        Wide_Equal_Case_Insensitive
              — A.4.7
        Wide_Hash — A.4.7
        Wide_Hash_Case_Insensitive — A.4.7
      Wide_Wide_Bounded — A.4.8
        Wide_Wide_Equal_Case_Insensitive
              — A.4.8
        Wide_Wide_Hash — A.4.8
        Wide_Wide_Hash_Case_Insensitive
              — A.4.8
      Wide_Wide_Equal_Case_Insensitive
            — A.4.8
      Wide_Wide_Fixed — A.4.8
        Wide_Wide_Equal_Case_Insensitive
              — A.4.8
        Wide_Wide_Hash — A.4.8
        Wide_Wide_Hash_Case_Insensitive
              — A.4.8
      Wide_Wide_Hash — A.4.8
      Wide_Wide_Hash_Case_Insensitive
              — A.4.8
      Wide_Wide_Maps — A.4.8
        Wide_Wide_Constants — A.4.8
      Wide_Wide_Unbounded — A.4.8
        Wide_Wide_Equal_Case_Insensitive
              — A.4.8
        Wide_Wide_Hash — A.4.8
        Wide_Wide_Hash_Case_Insensitive
              — A.4.8
    Synchronous_Barriers — D.10.1
    Synchronous_Task_Control — D.10
      EDF — D.10
Standard (...continued)
  Ada (...continued)
    Tags — 3.9
      Generic_Dispatching_Constructor — 3.9
    Task_Attributes — C.7.2
    Task_Identification — C.7.1
    Task_Termination — C.7.3

    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_Deallocate_Subpool — 13.11.5
    Unchecked_Deallocation — 13.11.2
    Wide_Characters — A.3.1
      Handling — A.3.5
    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
      Handling — A.3.6
    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
    Multiprocessors — D.16
      Dispatching_Domains — D.16.1
    RPC — E.5
    Storage_Elements — 13.7.1
    Storage_Pools — 13.11
      Subpools — 13.11.4

Implementation Requirements

3/2
The implementation shall ensure that each language-defined subprogram is reentrant in 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. 
3.1/3
  If a descendant of a language-defined tagged type is declared, the implementation shall ensure that each inherited language-defined subprogram behaves as described in this International Standard. In particular, overriding a language-defined subprogram shall not alter the effect of any inherited language-defined subprogram. 

Implementation Permissions

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). 

Contents   Index   References   Search   Previous   Next 
Ada-Europe Ada 2005 and 2012 Editions sponsored in part by Ada-Europe