+2014-05-21 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch13.adb: Minor reformatting.
+ * lib-xref-spark_specific.adb, sem_util.adb: Minor reformatting.
+ * sem_prag.adb: Minor error message improvement.
+
2014-05-21 Yannick Moy <moy@adacore.com>
* lib-xref-spark_specific.adb, lib-xref.ads, lib-xref.adb
-- --
------------------------------------------------------------------------------
-with SPARK_Xrefs; use SPARK_Xrefs;
with Einfo; use Einfo;
with Nmake; use Nmake;
+with SPARK_Xrefs; use SPARK_Xrefs;
with GNAT.HTable;
-- We need to sort the component clauses on the basis of the
-- Position values in the clause, so we can group clauses with
- -- the same Position. together to determine the relevant machine
+ -- the same Position together to determine the relevant machine
-- scalar size.
Sort_CC : declare
Comps (To) := Comps (From);
end CP_Move;
- -- Start of processing for Sort_CC
+ -- Start of processing for Sort_CC
begin
-- Collect the machine scalar relevant component clauses
-- abstraction declared by either the parent unit of the
-- private unit or by a public descendant of that parent unit.
- -- Find parent unit of nearest private ancestor.
+ -- Find nearest nearest private ancestor (which can be the
+ -- current unit itself).
Parent_Unit := Pack_Id;
while Present (Parent_Unit) loop
Parent_Unit := Scope (Parent_Unit);
if not Is_Child_Or_Sibling (Pack_Id, Scope (State_Id)) then
- Error_Msg_N
- ("indicator Part_Of must denote an abstract state of "
- & "parent unit or descendant (SPARK RM 7.2.6(3))", Indic);
+ Error_Msg_NE
+ ("indicator Part_Of must denote an abstract state of& "
+ & "or public descendant (SPARK RM 7.2.6(3))",
+ Indic, Parent_Unit);
elsif Scope (State_Id) = Parent_Unit
or else (Is_Ancestor_Package (Parent_Unit, Scope (State_Id))
null;
else
- Error_Msg_N
- ("indicator Part_Of must denote the abstract state of "
- & "parent of private ancestor", State);
+ Error_Msg_NE
+ ("indicator Part_Of must denote an abstract state of& "
+ & "or public descendant (SPARK RM 7.2.6(3))",
+ Indic, Parent_Unit);
end if;
-- Indicator Part_Of is not needed when the related package is not
begin
return (Ekind (E) = E_Access_Subprogram_Type
or else (Ekind (E) = E_Record_Type
- and then Present (Corresponding_Remote_Type (E))))
+ and then Present (Corresponding_Remote_Type (E))))
and then (Is_Remote_Call_Interface (E) or else Is_Remote_Types (E));
end Is_Remote_Access_To_Subprogram_Type;