CVS difference for ai12s/ai12-0110-1.txt

Differences between 1.1 and version 1.2
Log of other versions for file ai12s/ai12-0110-1.txt

--- ai12s/ai12-0110-1.txt	2014/05/16 01:53:36	1.1
+++ ai12s/ai12-0110-1.txt	2014/07/24 03:32:57	1.2
@@ -1,10 +1,12 @@
-!standard A.18.2(97.1/3)                               14-05-15  AI05-0110-1/01
+!standard A.18.2(97.1/3)                               14-07-23  AI05-0110-1/02
 !standard A.18.3(69.1/3)
 !standard A.18.4(15.1/3)
 !standard A.18.7(14.1/3)
 !standard A.18.10(90/3)
 !standard A.18.18(35/3)
 !class binding interpretation 14-05-15
+!status Corrigendum 2015 14-07-23
+!status ARG Approved 7-0-0  14-06-28
 !status work item 14-05-15
 !status received 14-02-07
 !priority Low
@@ -39,7 +41,7 @@
 Program_Error is propagated by a call of any language-defined subprogram that
 is defined to tamper with the elements of V Redundant[(or tamper with the
 cursors of V)], leaving V unmodified. {These checks are made before any other
-defined behavior of the language-defined subprogram.}
+defined behavior of the body of the language-defined subprogram.}
 
 AARM Ramification: The tampering check should be made before any other checks
 or operations defined by the container operation.
@@ -66,6 +68,118 @@
 An alternative to this wording would be to adopt the Pre- and
 Post-conditions proposed in AI12-0112-1. That seems like too much change for
 a corrigendum, but could be the long-term solution to this issue.
+
+!corrigendum A.18.2(97.1/3)
+
+@drepl
+When tampering with cursors is @i<prohibited> for a particular vector
+object @i<V>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<V>, leaving @i<V> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular vector object @i<V>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<V> (or tamper with the cursors of @i<V>), leaving
+@i<V> unmodified.
+@dby
+When tampering with cursors is @i<prohibited> for a particular vector
+object @i<V>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<V>, leaving @i<V> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular vector object @i<V>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<V> (or tamper with the cursors of @i<V>), leaving
+@i<V> unmodified. These checks are made before any other defined behavior of the
+body of the language-defined subprogram.
+
+!corrigendum A.18.3(69.1/3)
+
+@drepl
+When tampering with cursors is @i<prohibited> for a particular list
+object @i<L>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<L>, leaving @i<L> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular list object @i<L>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<L> (or tamper with the cursors of @i<L>), leaving
+@i<L> unmodified.
+@dby
+When tampering with cursors is @i<prohibited> for a particular list
+object @i<L>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<L>, leaving @i<L> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular list object @i<L>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<L> (or tamper with the cursors of @i<L>), leaving
+@i<L> unmodified. These checks are made before any other defined behavior of the body
+of the language-defined subprogram.
+
+!corrigendum A.18.4(15.1/3)
+
+@drepl
+When tampering with cursors is @i<prohibited> for a particular map
+object @i<M>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<M>, leaving @i<M> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular map object @i<M>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<M> (or tamper with the cursors of @i<M>), leaving
+@i<M> unmodified.
+@dby
+When tampering with cursors is @i<prohibited> for a particular map
+object @i<M>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<M>, leaving @i<M> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular map object @i<M>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<M> (or tamper with the cursors of @i<M>), leaving
+@i<M> unmodified. These checks are made before any other defined behavior of the body
+of the language-defined subprogram.
+
+!corrigendum A.18.7(14.1/3)
+
+@drepl
+When tampering with cursors is @i<prohibited> for a particular set
+object @i<S>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<S>, leaving @i<S> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular set object @i<S>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<S> (or tamper with the cursors of @i<S>), leaving
+@i<S> unmodified.
+@dby
+When tampering with cursors is @i<prohibited> for a particular set
+object @i<S>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<S>, leaving @i<S> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular set object @i<S>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<S> (or tamper with the cursors of @i<S>), leaving
+@i<S> unmodified. These checks are made before any other defined behavior of the body
+of the language-defined subprogram.
+
+!corrigendum A.18.10(90/3)
+
+@drepl
+When tampering with cursors is @i<prohibited> for a particular tree
+object @i<T>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<T>, leaving @i<T> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular tree object @i<T>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<T> (or tamper with the cursors of @i<T>), leaving
+@i<T> unmodified.
+@dby
+When tampering with cursors is @i<prohibited> for a particular tree
+object @i<T>, Program_Error is propagated by a call of any language-defined subprogram
+that is defined to tamper with the cursors of @i<T>, leaving @i<T> unmodified. Similarly,
+when tampering with elements is @i<prohibited> for a particular tree object @i<T>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the elements of @i<T> (or tamper with the cursors of @i<T>), leaving
+@i<T> unmodified. These checks are made before any other defined behavior of the body
+of the language-defined subprogram.
+
+!corrigendum A.18.18(35/3)
+
+@drepl
+When tampering with the element is @i<prohibited> for a particular holder object @i<H>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the element of @i<H>, leaving @i<H> unmodified.
+@dby
+When tampering with the element is @i<prohibited> for a particular holder object @i<H>,
+Program_Error is propagated by a call of any language-defined subprogram that is defined
+to tamper with the element of @i<H>, leaving @i<H> unmodified. These checks are made
+before any other defined behavior of the body of the language-defined subprogram.
 
 !ASIS
 

Questions? Ask the ACAA Technical Agent