Go to the first, previous, next, last section, table of contents.
-
The Ada language allows for certain machine dependences in a controlled
manner. Each Ada implementation must document all implementation-defined
characteristics:
-
Whether or not each recommendation given in Implementation Advice is
followed. See section Structure.
-
Capacity limitations of the implementation. See section Conformity of an Implementation with the Standard.
-
Variations from the standard that are impractical to avoid given the
implementation's execution environment. See section Conformity of an Implementation with the Standard.
-
Which code_statements cause external interactions. See section Conformity of an Implementation with the Standard.
-
The coded representation for the text of an Ada program. See section Character Set,
(4).
-
The control functions allowed in comments. See section Character Set.
-
The representation for an end of line. See section Lexical Elements, Separators, and Delimiters.
-
Maximum supported line length and lexical element length. See section Lexical Elements, Separators, and Delimiters,
(15).
-
Implementation-defined pragmas. See section Pragmas.
-
Effect of pragma Optimize. See section Pragmas.
-
The sequence of characters of the value returned by S'Image when some of
the graphic characters of S'Wide_Image are not defined in Character.
See section Scalar Types.
-
The predefined integer types declared in Standard. See section Integer Types.
-
Any nonstandard integer types and the operators defined for them.
See section Integer Types.
-
Any nonstandard real types and the operators defined for them.
See section Real Types.
-
What combinations of requested decimal precision and range are supported
for floating point types. See section Floating Point Types.
-
The predefined floating point types declared in Standard. See section Floating Point Types,
(16).
-
The small of an ordinary fixed point type. See section Fixed Point Types.
-
What combinations of small, range, and digits are supported for fixed
point types. See section Fixed Point Types.
-
The result of Tags.Expanded_Name for types declared within an unnamed
block_statement. See section Tagged Types and Type Extensions.
-
Implementation-defined attributes. See section Attributes.
-
Any implementation-defined time types. See section Delay Statements, Duration, and Time.
-
The time base associated with relative delays. See section Delay Statements, Duration, and Time.
-
The time base of the type Calendar.Time. See section Delay Statements, Duration, and Time.
-
The timezone used for package Calendar operations. See section Delay Statements, Duration, and Time.
-
Any limit on delay_until_statements of select_statements. See section Delay Statements, Duration, and Time,
(29).
-
Whether or not two nonoverlapping parts of a composite object are
independently addressable, in the case where packing, record layout, or
Component_Size is specified for the object. See section Shared Variables.
-
The representation for a compilation. See section Separate Compilation.
-
Any restrictions on compilations that contain multiple
compilation_units. See section Separate Compilation.
-
The mechanisms for creating an environment and for adding and replacing
compilation units. See section The Compilation Process.
-
The manner of explicitly assigning library units to a partition.
See section Program Execution.
-
The implementation-defined means, if any, of specifying which
compilation units are needed by a given compilation unit. See section Program Execution,
(2).
-
The manner of designating the main subprogram of a partition.
See section Program Execution.
-
The order of elaboration of library_items. See section Program Execution.
-
Parameter passing and function return for the main subprogram.
See section Program Execution.
-
The mechanisms for building and running partitions. See section Program Execution.
-
The details of program execution, including program termination.
See section Program Execution.
-
The semantics of any nonactive partitions supported by the
implementation. See section Program Execution.
-
The information returned by Exception_Message. See section The Package Exceptions.
-
The result of Exceptions.Exception_Name for types declared within an
unnamed block_statement. See section The Package Exceptions.
-
The information returned by Exception_Information. See section The Package Exceptions.
-
Implementation-defined check names. See section Suppressing Checks.
-
The interpretation of each aspect of representation. See section Representation Items.
-
Any restrictions placed upon representation items. See section Representation Items.
-
The meaning of Size for indefinite subtypes. See section Representation Attributes.
-
The default external representation for a type tag. See section Representation Attributes.
-
What determines whether a compilation unit is the same in two different
partitions. See section Representation Attributes.
-
Implementation-defined components. See section Record Representation Clauses.
-
If Word_Size = Storage_Unit, the default bit ordering. See section Bit Ordering,
(5).
-
The contents of the visible part of package System and its
language-defined children. See section The Package System.
-
The contents of the visible part of package System.Machine_Code, and the
meaning of code_statements. See section Machine Code Insertions.
-
The effect of unchecked conversion. See section Unchecked Type Conversions.
-
The manner of choosing a storage pool for an access type when
Storage_Pool is not specified for the type. See section Storage Management.
-
Whether or not the implementation provides user-accessible names for the
standard pool type(s). See section Storage Management.
-
The meaning of Storage_Size. See section Storage Management.
-
Implementation-defined aspects of storage pools. See section Storage Management.
-
The set of restrictions allowed in a pragma Restrictions. See section Pragma Restrictions,
(7).
-
The consequences of violating limitations on Restrictions pragmas.
See section Pragma Restrictions.
-
The representation used by the Read and Write attributes of elementary
types in terms of stream elements. See section Stream-Oriented Attributes.
-
The names and characteristics of the numeric subtypes declared in the
visible part of package Standard. See section The Package Standard.
-
The accuracy actually achieved by the elementary functions.
See section Elementary Functions.
-
The sign of a zero result from some of the operators or functions in
Numerics.Generic_Elementary_Functions, when Float_Type'Signed_Zeros is
True. See section Elementary Functions.
-
The value of Numerics.Float_Random.Max_Image_Width. See section Random Number Generation.
-
The value of Numerics.Discrete_Random.Max_Image_Width. See section Random Number Generation,
(27).
-
The algorithms for random number generation. See See section Lexical Elements.
-
The string representation of a random number generator's state.
See section Random Number Generation.
-
The minimum time interval between calls to the time-dependent Reset
procedure that are guaranteed to initiate different random number
sequences. See section Random Number Generation.
-
The values of the Model_Mantissa, Model_Emin, Model_Epsilon, Model,
Safe_First, and Safe_Last attributes, if the Numerics Annex is not
supported. See section Attributes of Floating Point Types.
-
Any implementation-defined characteristics of the input-output packages.
See section External Files and File Objects.
-
The value of Buffer_Size in Storage_IO. See section The Generic Package Storage_IO.
-
external files for standard input, standard output, and standard error.
See section Text Input-Output.
-
The accuracy of the value produced by Put. See section Input-Output for Real Types.
-
The meaning of Argument_Count, Argument, and Command_Name. See section The Package Command_Line,
(1).
-
Implementation-defined convention names. See section Interfacing Pragmas.
-
The meaning of link names. See section Interfacing Pragmas.
-
The manner of choosing link names when neither the link name nor the
address of an imported or exported entity is specified. See section Interfacing Pragmas,
(36).
-
The effect of pragma Linker_Options. See section Interfacing Pragmas.
-
The contents of the visible part of package Interfaces and its
language-defined descendants. See section The Package Interfaces.
-
Implementation-defined children of package Interfaces. The contents of
the visible part of package Interfaces. See See section Exceptions.
-
The types Floating, Long_Floating, Binary, Long_Binary, Decimal_Element,
and COBOL_Character; and the initializations of the variables
Ada_To_COBOL and COBOL_To_Ada, in Interfaces.COBOL See section Interfacing with COBOL.
-
Support for access to machine instructions. See section Access to Machine Operations.
-
Implementation-defined aspects of access to machine operations.
See section Access to Machine Operations.
-
Implementation-defined aspects of interrupts. See section Interrupt Support.
-
Implementation-defined aspects of preelaboration. See section Preelaboration Requirements.
-
The semantics of pragma Discard_Names. See section Pragma Discard_Names.
-
The result of the Task_Identification.Image attribute. See section The Package Task_Identification,
(7).
-
The value of Current_Task when in a protected entry or interrupt
handler. See section The Package Task_Identification.
-
The effect of calling Current_Task from an entry body or interrupt
handler. See section The Package Task_Identification.
-
Implementation-defined aspects of Task_Attributes. See section The Package Task_Attributes.
-
Values of all Metrics. See section Real-Time Systems (normative).
-
The declarations of Any_Priority and Priority. See section Task Priorities.
-
Implementation-defined execution resources. See section Task Priorities.
-
Whether, on a multiprocessor, a task that is waiting for access to a
protected object keeps its processor busy. See section The Task Dispatching Model.
-
The affect of implementation defined execution resources on task
dispatching. See section The Task Dispatching Model.
-
Implementation-defined policy_identifiers allowed in a pragma
Task_Dispatching_Policy. See section The Standard Task Dispatching Policy.
-
Implementation-defined aspects of priority inversion. See section The Standard Task Dispatching Policy,
(16).
-
Implementation defined task dispatching. See section The Standard Task Dispatching Policy.
-
Implementation-defined policy_identifiers allowed in a pragma
Locking_Policy. See section Priority Ceiling Locking.
-
Default ceiling priorities. See section Priority Ceiling Locking.
-
The ceiling of any protected object used internally by the
implementation. See section Priority Ceiling Locking.
-
Implementation-defined queuing policies. See section Entry Queuing Policies.
-
On a multiprocessor, any conditions that cause the completion of an
aborted construct to be delayed later than what is specified for a
single processor. See section Preemptive Abort.
-
Any operations that implicitly require heap storage allocation.
See section Tasking Restrictions.
-
Implementation-defined aspects of pragma Restrictions. See section Tasking Restrictions.
-
Implementation-defined aspects of package Real_Time. See section Monotonic Time.
-
Implementation-defined aspects of delay_statements. See section Delay Accuracy.
-
The upper bound on the duration of interrupt blocking caused by the
implementation. See section Other Optimizations and Determinism Rules.
-
The means for creating and executing distributed programs. See section Distributed Systems (normative),
(5).
-
Any events that can result in a partition becoming inaccessible.
See section Partitions.
-
The scheduling policies, treatment of priorities, and management of
shared resources between partitions in certain cases. See section Partitions.
-
Events that cause the version of a compilation unit to change.
See section Consistency of a Distributed System.
-
Whether the execution of the remote subprogram is immediately aborted as
a result of cancellation. See section Remote Subprogram Calls.
-
Implementation-defined aspects of the PCS. See section Partition Communication Subsystem.
-
Implementation-defined interfaces in the PCS. See section Partition Communication Subsystem.
-
The values of named numbers in the package Decimal. See section The Package Decimal.
-
The value of Max_Picture_Length in the package Text_IO.Editing
See section The Package Text_IO.Editing.
-
The value of Max_Picture_Length in the package Wide_Text_IO.Editing
See section The Package Wide_Text_IO.Editing.
-
The accuracy actually achieved by the complex elementary functions and
by other complex arithmetic operations. See section Complex Arithmetic.
-
The sign of a zero result (or a component thereof) from any operator or
function in Numerics.Generic_Complex_Types, when Real'Signed_Zeros is
True. See section Complex Types.
-
The sign of a zero result (or a component thereof) from any operator or
function in Numerics.Generic_Complex_Elementary_Functions, when
Complex_Types.Real'Signed_Zeros is True. See section Complex Elementary Functions.
-
Whether the strict mode or the relaxed mode is the default. See section Numeric Performance Requirements,
(2).
-
The result interval in certain cases of fixed-to-float conversion.
See section Model of Floating Point Arithmetic.
-
The result of a floating point arithmetic operation in overflow
situations, when the Machine_Overflows attribute of the result type is
False. See section Model of Floating Point Arithmetic.
-
The result interval for division (or exponentiation by a negative
exponent), when the floating point hardware implements division as
multiplication by a reciprocal. See section Model of Floating Point Arithmetic.
-
The definition of close result set, which determines the accuracy of
certain fixed point multiplications and divisions. See section Model of Fixed Point Arithmetic.
-
Conditions on a universal_real operand of a fixed point multiplication
or division for which the result shall be in the perfect result set.
See section Model of Fixed Point Arithmetic.
-
The result of a fixed point arithmetic operation in overflow situations,
when the Machine_Overflows attribute of the result type is False.
See section Model of Fixed Point Arithmetic.
-
The result of an elementary function reference in overflow situations,
when the Machine_Overflows attribute of the result type is False.
See section Accuracy Requirements for the Elementary Functions.
-
The value of the angle threshold, within which certain elementary
functions, complex arithmetic operations, and complex elementary
functions yield results conforming to a maximum relative error bound.
See section Accuracy Requirements for the Elementary Functions.
-
The accuracy of certain elementary functions for parameters beyond the
angle threshold. See section Accuracy Requirements for the Elementary Functions.
-
The result of a complex arithmetic operation or complex elementary
function reference in overflow situations, when the Machine_Overflows
attribute of the corresponding real type is False. See section Accuracy Requirements for Complex Arithmetic.
-
The accuracy of certain complex arithmetic operations and certain
complex elementary functions for parameters (or components thereof)
beyond the angle threshold. See section Accuracy Requirements for Complex Arithmetic.
-
Information regarding bounded errors and erroneous execution.
See section Documentation of Implementation Decisions.
-
Implementation-defined aspects of pragma Inspection_Point. See section Pragma Inspection_Point,
(8).
-
Implementation-defined aspects of pragma Restrictions. See section Safety and Security Restrictions.
-
Any restrictions on pragma Restrictions. See section Safety and Security Restrictions.
Go to the first, previous, next, last section, table of contents.