8.5 Renaming Declarations
Syntax
Dynamic Semantics
The elaboration of a
renaming_declaration
evaluates the
name
that follows the reserved word
renames and thereby determines
the view and entity denoted by this name
(the
renamed view and
renamed entity). A
name
that denotes the
renaming_declaration
denotes (a new view of) the renamed entity.
9 Renaming may be used to resolve name
conflicts and to act as a shorthand. Renaming with a different
identifier
or
operator_symbol
does not hide the old
name;
the new
name
and the old
name
need not be visible at the same places.
10 A task or protected object that is declared
by an explicit
object_declaration
can be renamed as an object. However, a single task or protected object
cannot be renamed since the corresponding type is anonymous (meaning
it has no nameable subtypes). For similar reasons, an object of an anonymous
array or access type cannot be renamed.
11 A subtype
defined without any additional constraint can be used to achieve the
effect of renaming another subtype (including a task or protected subtype)
as in
subtype Mode is Ada.Text_IO.File_Mode;