CVS difference for ai12s/ai12-0112-1.txt
--- ai12s/ai12-0112-1.txt 2019/08/17 01:14:43 1.23
+++ ai12s/ai12-0112-1.txt 2020/03/16 03:37:14 1.24
@@ -2605,6 +2605,45 @@
(Container : Holder) @b<return> Boolean
@b<with> Nonblocking, Global =@> @b<null>;>
+!corrigendum A.18.18(22/3)
+
+@drepl
+@xcode< @b<procedure> Move (Target : @b<in out> Holder; Source : @b<in out> Holder);>
+@dby
+@xcode< @b<procedure> Move (Target : @b<in out> Holder; Source : @b<in out> Holder)
+ @b<with> Pre =@> ((@b<not> Tampering_With_The_Element_Prohibited (Target))
+ @b<or else raise> Program_Error) @b<and then>
+ ((@b<not> Tampering_With_The_Element_Prohibited (Source))
+ @b<or else raise> Program_Error),
+ Post =@> (@b<if> Target /= Source @b<then>
+ Is_Empty (Source) @b<and then> (@b<not> Is_Empty (Target)));>
+
+
+!corrigendum A.18.18(66/3)
+
+@drepl
+@xcode<@b<procedure> Move (Target : @b<in out> Holder; Source : @b<in out> Holder);>
+@dby
+@xcode<@b<procedure> Move (Target : @b<in out> Holder; Source : @b<in out> Holder)
+ @b<with> Pre =@> ((@b<not> Tampering_With_The_Element_Prohibited (Target))
+ @b<or else raise> Program_Error) @b<and then>
+ ((@b<not> Tampering_With_The_Element_Prohibited (Source))
+ @b<or else raise> Program_Error),
+ Post =@> (@b<if> Target /= Source @b<then>
+ Is_Empty (Source) @b<and then> (@b<not> Is_Empty (Target)));>
+
+!corrigendum A.18.18(67/3)
+
+@drepl
+@xindent<If Target denotes the same object as Source, then the operation has
+no effect. Otherwise, the element contained by Source (if any) is removed from
+Source and inserted into Target, replacing any preexisting content. Source is
+empty after a successful call to Move.>
+@dby
+@xindent<If Target denotes the same object as Source, then the operation has
+no effect. Otherwise, the element contained by Source (if any) is removed from
+Source and inserted into Target, replacing any preexisting content.>
+
!corrigendum A.18.19(6/3)
Questions? Ask the ACAA Technical Agent