Ada Programming/Libraries/System


Ada. Time-tested, safe and secure.
Ada. Time-tested, safe and secure.

Description edit

The System package is a standard library package provided with each Ada implementation. It includes implementation and system configuration-dependent definitions. The System package contains a standard set of language-defined (but implementation-dependent) types and named numbers.

Types edit

  • Name
  • Address
  • Priority (also Interrupt_Priority and Any_Priority since Ada 95)
  • Bit_Order (since Ada 95)

Constants edit

The following named numbers may be set by pragmas. These pragmas may only be used at the start of compilation:

  • System_Name
  • Storage_Unit
  • Memory_Size

The following named numbers are set by the implementation:

  • Null_Address (since Ada 95)
  • Default_Priority (since Ada 95)
  • Default_Bit_Order (since Ada 95)
  • MIN_INT — the smallest value of all predefined integer types (negative).
  • MAX_INT — the largest value of all predefined integer types (positive).
  • MAX_BINARY_MODULUS — the largest power of allowed as the modulus for modular types.
  • MAX_NONBINARY_MODULUS — the largest value allowed as the modulus for modular types.
  • MAX_BASE_DIGITS — the largest number of significant decimal digits in a floating point declaration.
  • MAX_DIGITS — the largest number of significant decimal digits in a floating point declaration without a range specification. This value is at most as large as the previous one.
  • MAX_MANTISSA — the largest possible number of binary digits in the mantissa of fixed point values.
  • FINE_DELTA — The smallest delta allowed in a fixed point value (given a range constraint of -1.0 to 1.0).
  • TICK — the clock period (in seconds).

Child packages edit

Standard System packages edit

The six untagged System packages are from the ISO/IEC 8652:1995(E) standard.

(Ada 20012)
This package is available since Ada 2012.

GNAT System packages edit

The following 200 odd packages form the GNAT runtime environment. They are mentioned here as a reference for advanced users. Normal GNAT users should ignore them because they are internal units of the runtime system.

See also edit

Wikibook edit

Ada 83 Reference Manual edit

Ada 95 Reference Manual edit

Ada 2005 Reference Manual edit