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

Differences between 1.1 and version 1.2
Log of other versions for file 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
 !standard A.18.2(139/2)
 !standard A.18.3(83/2)
 !standard A.18.4(38/2)
@@ -6,6 +6,7 @@
 !standard A.18.2(237/2)
 !standard A.18.3(151/2)
 !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
 !priority Medium
@@ -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.
 
 !question
 
@@ -75,7 +76,11 @@
 
 (2) All of the Query_Element routines have this problem.
 
-(3)
+(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.
 
 !corrigendum A.18.2(139/2)
 

Questions? Ask the ACAA Technical Agent