Static expressions of the type universal_integer or universal_real have no limit on the implemented range or precision. Evaluation of such expressions is carried out by a general universal arithmetic package.
If run-time floating point support is available, non-static expressions of type universal_real are evaluated at run time using 64-bit double precision floating point.
Dynamic storage allocation is prohibited, but some static uses of access types are possible.
The absence of unconstrained types precludes use of the predefined concatenate operator & with an array variable, but permits their use with string constants. All other operators are supported as defined in the Ada 95 Reference Manual.