CVS difference for ai05s/ai05-0021-1.txt
--- ai05s/ai05-0021-1.txt 2006/11/11 07:07:46 1.1
+++ ai05s/ai05-0021-1.txt 2006/12/16 03:13:18 1.2
@@ -1,4 +1,4 @@
-!standard A.18.3(102/2) 06-11-10 AI05-0021-1/01
+!standard A.18.3(102/2) 06-12-13 AI05-0021-1/02
@@ -6,6 +6,7 @@
!class binding interpretation 06-11-10
+!status ARG Approved 10-0-1 06-11-18
!status work item 06-11-10
!status received 06-08-31
@@ -19,7 +20,7 @@
(2) Query_Element raises Program_Error if the elements of the container that
contains the element designated by the cursor are tampered with.
-(3) Merge raised Program_Error if Source and Target are the same and non-empty.
+(3) Merge raises Program_Error if Source and Target are the same and non-empty.
@@ -75,7 +76,11 @@
(2) All of the Query_Element routines have this problem.
+(3) with this change, Merge raises Program_Error in precisely those cases where the
+invariant on the result cannot be preserved. (It's not possible for a single
+object to be empty and non-empty at the same time.) The case in question (merging
+with yourself) is weird enough it is not worthwhile to make programmers worry about
+different invariants for (only) that case.
Questions? Ask the ACAA Technical Agent