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