2.9 Reserved Words
Syntax
1/1
This
paragraph was deleted.
2/2
{
AI95-00284-02}
{
AI95-00395-01}
{reserved word} The
following are the
reserved words. Within
a program, some or all of the letters of a reserved word may be in upper
case, and one or more characters in category other_format
may be inserted within or at the end of the reserved word. (ignoring upper/lower case distinctions):
2.a
Discussion: Reserved words have special
meaning in the syntax. In addition, certain reserved words are used as
attribute names.
2.b
The syntactic category identifier
no longer allows reserved words. We have added the few reserved words
that are legal explicitly to the syntax for attribute_reference.
Allowing identifier to include reserved words has been a source of confusion
for some users, and differs from the way they are treated in the C and
Pascal language definitions.
abort | else | new | return |
|
abs | elsif | not | reverse |
|
abstract | end | null | |
|
accept | entry | | select |
|
access | exception | of | separate |
|
aliased | exit | or | subtype |
|
all | | others | synchronized |
|
and | for | out | |
|
array | function | overriding | tagged |
|
at | | | task |
|
| generic | package | terminate |
|
begin | goto | pragma | then |
|
body | | private | type |
|
| if | procedure | |
|
case | in | protected | until |
|
constant | interface | | use |
|
| is | raise | |
|
declare | | range | when |
|
delay | limited | record | while |
|
delta | loop | rem | with |
|
digits | | renames | |
|
do | mod | requeue | xor |
|
3
8 The reserved words appear in
lower
case boldface in this International Standard, except when used in
the
designator of an attribute (see
4.1.4).
Lower case boldface is also used for a reserved word in a
string_literal
used as an
operator_symbol. This is merely
a convention — programs may be written in whatever typeface is
desired and available.
Incompatibilities With Ada 83
3.a
{
incompatibilities with Ada 83}
The
following words are not reserved in Ada 83, but are reserved in Ada 95:
abstract,
aliased,
protected,
requeue,
tagged,
until.
Wording Changes from Ada 83
3.b
Incompatibilities With Ada 95
3.c/2
{
AI95-00284-02}
{incompatibilities with Ada 95} The
following words are not reserved in Ada 95, but are reserved in Ada 2005:
interface, overriding, synchronized. A special allowance
is made for pragma Interface (see J.12).
Uses of these words as identifiers will need to be changed, but we do
not expect them to be common.
Wording Changes from Ada 95
3.d/2
{
AI95-00395-01}
The definition of upper case equivalence has been
modified to allow identifiers using all of the characters of ISO 10646.
This change has no effect on the character sequences that are reserved
words, but does make some unusual sequences of characters illegal.