Una declaración asocia un nombre con una entidad. Una declaración puede ser: explícita, cuando aparece en el código fuente del programa, o implícita, cuando se produce como consecuencia de otra construcción.
declaration ::=
basic_declaration | enumeration_literal_specification
| discriminant_specification | component_declaration
| loop_parameter_specification | parameter_specification
| subprogram_body | entry_declaration |entry_index_specification
| choice_parameter_specification | generic_formal_parameter_specification
| extended_return_statementEl nombre de la entidad declarada se define normalmente como un defining_identifier, aunque, a veces, puede adoptar la forma de un defining_character_literal o un defining_operator_symbol.
defining_identifier ::= identifier defining_character_literal ::= character_literal defining_operator_symbol ::= operator_symbol