[multiple changes]
2009-06-24 Robert Dewar <dewar@adacore.com> * exp_ch6.adb: Minor reformatting * layout.adb: Minor reformatting * make.adb: Minor reformatting 2009-06-24 Thomas Quinot <quinot@adacore.com> * sem_ch10.adb: Minor code reorganization. From-SVN: r148898
This commit is contained in:
parent
0386aad11f
commit
dd3e1ff529
@ -1,3 +1,15 @@
|
||||
2009-06-24 Robert Dewar <dewar@adacore.com>
|
||||
|
||||
* exp_ch6.adb: Minor reformatting
|
||||
|
||||
* layout.adb: Minor reformatting
|
||||
|
||||
* make.adb: Minor reformatting
|
||||
|
||||
2009-06-24 Thomas Quinot <quinot@adacore.com>
|
||||
|
||||
* sem_ch10.adb: Minor code reorganization.
|
||||
|
||||
2009-06-24 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* ttypes.ads: Minor editing.
|
||||
|
@ -1182,7 +1182,6 @@ package body Exp_Ch6 is
|
||||
Expression => Expr));
|
||||
end;
|
||||
end if;
|
||||
|
||||
end Add_Call_By_Copy_Code;
|
||||
|
||||
----------------------------------
|
||||
|
@ -3055,8 +3055,9 @@ package body Layout is
|
||||
-- the type, or the maximum allowed alignment.
|
||||
|
||||
declare
|
||||
S : constant Int := UI_To_Int (Esize (E)) / SSU;
|
||||
Max_Alignment, A : Nat;
|
||||
S : constant Int := UI_To_Int (Esize (E)) / SSU;
|
||||
A : Nat;
|
||||
Max_Alignment : Nat;
|
||||
|
||||
begin
|
||||
-- If the default alignment of "double" floating-point types is
|
||||
|
@ -5885,16 +5885,18 @@ package body Make is
|
||||
-- executable: there may be an externally built library
|
||||
-- file that has been modified.
|
||||
|
||||
if (not Executable_Obsolete)
|
||||
and then Main_Project /= No_Project
|
||||
if not Executable_Obsolete
|
||||
and then Main_Project /= No_Project
|
||||
then
|
||||
declare
|
||||
Proj1 : Project_List;
|
||||
|
||||
begin
|
||||
Proj1 := Project_Tree.Projects;
|
||||
while Proj1 /= null loop
|
||||
if Proj1.Project.Library and then
|
||||
Proj1.Project.Library_TS > Executable_Stamp
|
||||
if Proj1.Project.Library
|
||||
and then
|
||||
Proj1.Project.Library_TS > Executable_Stamp
|
||||
then
|
||||
Executable_Obsolete := True;
|
||||
Youngest_Obj_Stamp := Proj1.Project.Library_TS;
|
||||
|
@ -112,8 +112,9 @@ package body Sem_Ch10 is
|
||||
(C_Unit : Node_Id;
|
||||
Pack : Entity_Id;
|
||||
Is_Limited : Boolean := False) return Boolean;
|
||||
-- Determine whether compilation unit C_Unit contains a with clause for
|
||||
-- package Pack. Use flag Is_Limited to designate desired clause kind.
|
||||
-- Determine whether compilation unit C_Unit contains a [limited] with
|
||||
-- clause for package Pack. Use the flag Is_Limited to designate desired
|
||||
-- clause kind.
|
||||
|
||||
procedure Implicit_With_On_Parent (Child_Unit : Node_Id; N : Node_Id);
|
||||
-- If the main unit is a child unit, implicit withs are also added for
|
||||
@ -2819,30 +2820,34 @@ package body Sem_Ch10 is
|
||||
Is_Limited : Boolean := False) return Boolean
|
||||
is
|
||||
Item : Node_Id;
|
||||
Nam : Entity_Id;
|
||||
|
||||
function Named_Unit (Clause : Node_Id) return Entity_Id;
|
||||
-- Return the entity for the unit named in a [limited] with clause
|
||||
|
||||
----------------
|
||||
-- Named_Unit --
|
||||
----------------
|
||||
|
||||
function Named_Unit (Clause : Node_Id) return Entity_Id is
|
||||
begin
|
||||
if Nkind (Name (Clause)) = N_Selected_Component then
|
||||
return Entity (Selector_Name (Name (Clause)));
|
||||
else
|
||||
return Entity (Name (Clause));
|
||||
end if;
|
||||
end Named_Unit;
|
||||
|
||||
-- Start of processing for Has_With_Clause
|
||||
|
||||
begin
|
||||
if Present (Context_Items (C_Unit)) then
|
||||
Item := First (Context_Items (C_Unit));
|
||||
while Present (Item) loop
|
||||
if Nkind (Item) = N_With_Clause then
|
||||
|
||||
-- Retrieve the entity of the imported compilation unit
|
||||
|
||||
if Nkind (Name (Item)) = N_Selected_Component then
|
||||
Nam := Entity (Selector_Name (Name (Item)));
|
||||
else
|
||||
Nam := Entity (Name (Item));
|
||||
end if;
|
||||
|
||||
if Nam = Pack
|
||||
and then
|
||||
((Is_Limited and then Limited_Present (Item))
|
||||
or else
|
||||
(not Is_Limited and then not Limited_Present (Item)))
|
||||
then
|
||||
return True;
|
||||
end if;
|
||||
if Nkind (Item) = N_With_Clause
|
||||
and then Limited_Present (Item) = Is_Limited
|
||||
and then Named_Unit (Item) = Pack
|
||||
then
|
||||
return True;
|
||||
end if;
|
||||
|
||||
Next (Item);
|
||||
|
Loading…
Reference in New Issue
Block a user