CVS difference for ai05s/ai05-0173-1.txt

Differences between 1.2 and version 1.3
Log of other versions for file ai05s/ai05-0173-1.txt

--- ai05s/ai05-0173-1.txt	2010/08/06 04:20:33	1.2
+++ ai05s/ai05-0173-1.txt	2010/10/16 06:33:33	1.3
@@ -1,4 +1,4 @@
-!standard  3.9(7.4/2)                                 10-08-05    AI05-0173-1/02
+!standard  3.9(7.4/2)                                 10-10-16    AI05-0173-1/03
 !standard  3.9(12.4/2)
 !class Amendment 09-10-22
 !status Amendment 2012 10-06-03
@@ -11,7 +11,7 @@
 
 !summary
 
-Add function Is_Abstract to Ada.Tags.
+The function Is_Abstract is added to Ada.Tags.
 
 !problem
 
@@ -24,7 +24,7 @@
 
 !proposal
 
-(See Summary.)
+Add a function Is_Abstract to Ada.Tags.
 
 !wording
 
@@ -50,8 +50,8 @@
 should be trivial.
 
 Note that the only properties that could be queried on a tag are those that
-are invariant. Specifically, privacy cannot be queried, as it depends on the
-view.
+are invariant for the type. Specifically, privacy cannot be queried, as it depends
+on the view of the type.
 
 !example
 
@@ -65,11 +65,13 @@
           Selector : in     Selector_Type;
           Type_Tag : in     Ada.Tags.Tag) is
       begin
+         -- Check that the tag can be used to create an object of Root_Type'Class:
          if not Ada.Tags.Is_Descendant_At_Same_Level (Type_Tag, Root_Type'Tag) then
             raise Type_Error;
          elsif not Ada.Tags.Is_Abstract (Type_Tag) then
             raise Type_Error;
          end if;
+         -- Check that the selector hasn't been previously registered:
          if Factory.Map.Contains (Selector) then
             raise Selector_Error;
          end if;

Questions? Ask the ACAA Technical Agent