object_renaming_declaration
| exception_renaming_declaration
| package_renaming_declaration
| subprogram_renaming_declaration
| generic_renaming_declaration
Y: T'Class renames X; --Illegal!
W: T renames F(Z);
L : Person renames Leftmost_Person; --see 3.10.1
begin
L.Age := L.Age + 1;
end;
type T is tagged null record;
function Predefined_Equal(X, Y : T) return Boolean renames "=";
private
function "="(X, Y : T) return Boolean; --Override predefined "=".
end P;
package Q is
function User_Defined_Equal(X, Y : T) return Boolean renames P."=";
end Q;
function Int_Plus (Left, Right : Integer) return Integer renames "+";
function Rot return Color renames Red;
function Rosso return Color renames Rouge;
generic package defining_program_unit_name renames generic_package_name;
| generic procedure defining_program_unit_name renames generic_procedure_name;
| generic function defining_program_unit_name renames generic_function_name;