Go to the first, previous, next, last section, table of contents.
- 
An object_renaming_declaration is used to rename an object.
Syntax
 - 
object_renaming_declaration ::=
   defining_identifier : subtype_mark renames object_name;
Name Resolution Rules
 - 
The type of the object_name shall resolve to the type determined by the
subtype_mark.
Legality Rules
 - 
The renamed entity shall be an object.
 - 
The renamed entity shall not be a subcomponent that depends on
discriminants of a variable whose nominal subtype is unconstrained,
unless this subtype is indefinite, or the variable is aliased. A slice
of an array shall not be renamed if this restriction disallows renaming
of the array.
Static Semantics
 - 
An object_renaming_declaration declares a new view of the renamed object
whose properties are identical to those of the renamed view. Thus, the
properties of the renamed object are not affected by the
renaming_declaration. In particular, its value and whether or not it is
a constant are unaffected; similarly, the constraints that apply to an
object are not affected by renaming (any constraint implied by the
subtype_mark of the object_renaming_declaration is ignored).
Examples
 - 
Example of renaming an object:
 - 
declare
   L : Person renames Leftmost_Person;  -- See section 3.10.1 Incomplete Type Declarations
begin
   L.Age := L.Age + 1;
end;
 
Go to the first, previous, next, last section, table of contents.