Commit 07820c51 by Arnaud Charlet

Code cleanup.

From-SVN: r241113
parent 5dc203d2
...@@ -2030,11 +2030,13 @@ package body Contracts is ...@@ -2030,11 +2030,13 @@ package body Contracts is
-- A protection field renaming appears as -- A protection field renaming appears as
-- Prot : ... := _object._object; -- Prot : ... := _object._object;
-- A renamed private component is just a component of
-- _object, with an arbitrary name.
elsif Ekind (Obj) = E_Variable elsif Ekind (Obj) = E_Variable
and then Nkind (Pref) = N_Identifier and then Nkind (Pref) = N_Identifier
and then Chars (Pref) = Name_uObject and then Chars (Pref) = Name_uObject
and then Nkind (Sel) = N_Identifier and then Nkind (Sel) = N_Identifier
and then Chars (Sel) = Name_uObject
then then
return True; return True;
end if; end if;
...@@ -2307,9 +2309,16 @@ package body Contracts is ...@@ -2307,9 +2309,16 @@ package body Contracts is
-- Certain internally generated object renamings such as those -- Certain internally generated object renamings such as those
-- for discriminants and protection fields must be elaborated -- for discriminants and protection fields must be elaborated
-- before the preconditions are evaluated, as their expressions -- before the preconditions are evaluated, as their expressions
-- may mention the discriminants. -- may mention the discriminants. The renamings include those
-- for private components so we need to find the last such.
elsif Is_Prologue_Renaming (Decl) then elsif Is_Prologue_Renaming (Decl) then
while Present (Next (Decl))
and then Is_Prologue_Renaming (Next (Decl))
loop
Next (Decl);
end loop;
Insert_Node := Decl; Insert_Node := Decl;
-- Otherwise the declaration does not come from source. This -- Otherwise the declaration does not come from source. This
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment