3.8. Annex A: Predefined Language Environment

Q: A.1(52): Implementation Advice
Q: A.3.2(49): Ada.Characters.Handling
Q: A.4.4(106): Bounded-Length String Handling
Q: A.5.2(46-47): Random Number Generation
Q: (continued)
Q: A.10.7(23): Get_Immediate

Q: A.1(52): Implementation Advice

If an implementation provides additional named predefined integer types, then the names should end with Integer as in Long_Integer. If an implementation provides additional named predefined floating point types, then the names should end with Float as in Long_Float.

A: Followed.

Q: A.3.2(49): Ada.Characters.Handling

If an implementation provides a localized definition of Character or Wide_Character, then the effects of the subprograms in Characters.Handling should reflect the localizations. See also 3.5.2.

A: Followed. XGC Ada provides no such localized definitions.

Q: A.4.4(106): Bounded-Length String Handling

Bounded string objects should not be implemented by implicit pointers and dynamic allocation.

A: Followed. No implicit pointers or dynamic allocation are used.

Q: A.5.2(46-47): Random Number Generation

Any storage associated with an object of type Generator should be reclaimed on exit from the scope of the object.

A: Followed.

Q: (continued)

If the generator period is sufficiently long in relation to the number of distinct initiator values, then each possible value of Initiator passed to Reset should initiate a sequence of random numbers that does not, in a practical sense, overlap the sequence initiated by any other value. If this is not possible, then the mapping between initiator values and generator states should be a rapidly varying function of the initiator value.

A: Followed. The generator period is sufficiently long for the first condition here to hold true.

Q: A.10.7(23): Get_Immediate

The Get_Immediate procedures should be implemented with unbuffered input. For a device such as a keyboard, input should be available if a key has already been typed, whereas for a disk file, input should always be available except at end of file. For a file associated with a keyboard-like device, any line-editing features of the underlying operating system should be disabled during the execution of Get_Immediate.

A: Followed.