Next: , Previous: Latin-1, Up: Foreign Language Representation


2.2.2 Other 8-Bit Codes

GNAT also supports several other 8-bit coding schemes:

ISO 8859-2 (Latin-2)
Latin-2 letters allowed in identifiers, with uppercase and lowercase equivalence.
ISO 8859-3 (Latin-3)
Latin-3 letters allowed in identifiers, with uppercase and lowercase equivalence.
ISO 8859-4 (Latin-4)
Latin-4 letters allowed in identifiers, with uppercase and lowercase equivalence.
ISO 8859-5 (Cyrillic)
ISO 8859-5 letters (Cyrillic) allowed in identifiers, with uppercase and lowercase equivalence.
ISO 8859-15 (Latin-9)
ISO 8859-15 (Latin-9) letters allowed in identifiers, with uppercase and lowercase equivalence
IBM PC (code page 437)
This code page is the normal default for PCs in the U.S. It corresponds to the original IBM PC character set. This set has some, but not all, of the extended Latin-1 letters, but these letters do not have the same encoding as Latin-1. In this mode, these letters are allowed in identifiers with uppercase and lowercase equivalence.
IBM PC (code page 850)
This code page is a modification of 437 extended to include all the Latin-1 letters, but still not with the usual Latin-1 encoding. In this mode, all these letters are allowed in identifiers with uppercase and lowercase equivalence.
Full Upper 8-bit
Any character in the range 80-FF allowed in identifiers, and all are considered distinct. In other words, there are no uppercase and lowercase equivalences in this range. This is useful in conjunction with certain encoding schemes used for some foreign character sets (e.g. the typical method of representing Chinese characters on the PC).
No Upper-Half
No upper-half characters in the range 80-FF are allowed in identifiers. This gives Ada 83 compatibility for identifier names.

For precise data on the encodings permitted, and the uppercase and lowercase equivalences that are recognized, see the file csets.adb in the GNAT compiler sources. You will need to obtain a full source release of GNAT to obtain this file.