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

Differences between 1.18 and version 1.19
Log of other versions for file ai05s/ai05-0158-1.txt

--- ai05s/ai05-0158-1.txt	2011/12/31 06:59:38	1.18
+++ ai05s/ai05-0158-1.txt	2013/10/24 02:20:31	1.19
@@ -208,10 +208,6 @@
 
 (See proposal.)
 
-!ACATS test
-
-Add an ACATS test for this new feature.
-
 !corrigendum 3.8.1(5)
 
 @drepl
@@ -376,6 +372,51 @@
 Overflow_Checks. For a static expression that is evaluated:
 @dby
 An expression is @i<statically unevaluated> if it is part of:
+
+!ACATS test
+
+Add an ACATS test for this new feature.
+
+!ASIS
+
+Add into Asis.Expressions after existing function Membership_Test_Subtype_Mark:
+
+16.??? function Membership_Test_Choices
+
+  function Membership_Test_Choices
+     (Expression : Asis.Expression)
+      return Asis.Element_List;
+
+  Expression specifies a membership test to query.
+
+  Returns a list of choices from the membership test
+
+  Appropriate Expression_Kinds:
+      An_In_Membership_Test
+      A_Not_In_Membership_Test
+
+  Raises ASIS_Inappropriate_Element with a Status of Value_Error for any
+  element that does not have one of these expected kinds.
+
+   Returns Element_Kinds:
+      An_Expression
+      A_Definition
+
+   Returns Expression_Kinds:
+      All except An_In_Membership_Test and A_Not_In_Membership_Test
+
+   Returns Definition_Kinds:
+      A_Constraint
+
+   Returns Constraint_Kinds:
+      A_Range_Attribute_Reference
+      A_Simple_Expression_Range
+
+[Editor's note: What happens with the existing Membership_Test_Range and
+Membership_Test_Subtype? They could be made obsolete (the new routine covers
+all of the possible cases). Also, there is no wording in those routines
+to specify what exception is raised if the wrong kind of membership expression
+is passed in.]
 
 !appendix
 

Questions? Ask the ACAA Technical Agent