CVS difference for ai22s/ai22-0043-1.html
--- ai22s/ai22-0043-1.html 2022/09/10 09:05:14 1.3
+++ ai22s/ai22-0043-1.html 2022/11/18 05:01:40 1.4
@@ -1,10 +1,10 @@
-<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0043-1/02</title>
+<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0043-1/03</title>
<style type="text/css">
table td,table th{padding:0}
-.c23{border-right-style:solid;padding:5pt 5pt 5pt 5pt;border-bottom-color:#000000;border-top-width:0pt;border-right-width:0pt;border-left-color:#000000;vertical-align:top;border-right-color:#000000;border-left-width:0pt;border-top-style:solid;background-c
olor:#f0f0f0;border-left-style:solid;border-bottom-width:0pt;width:468pt;border-top-color:#000000;border-bottom-style:solid}
-.c12{border-spacing:0;border-collapse:collapse;margin-right:auto}
-.c24{background-color:#ffffff;max-width:468pt;padding:72pt 72pt 72pt 72pt}
-.c5{height:0pt}
+.c18{border-right-style:solid;padding:5pt 5pt 5pt 5pt;border-bottom-color:#000000;border-top-width:0pt;border-right-width:0pt;border-left-color:#000000;vertical-align:top;border-right-color:#000000;border-left-width:0pt;border-top-style:solid;background-c
olor:#f0f0f0;border-left-style:solid;border-bottom-width:0pt;width:468pt;border-top-color:#000000;border-bottom-style:solid}
+.c14{border-spacing:0;border-collapse:collapse;margin-right:auto}
+.c26{background-color:#ffffff;max-width:468pt;padding:72pt 72pt 72pt 72pt}
+.c20{height:0pt}
P.head{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0; padding-top:0pt; color:#000000; font-size:14pt; padding-bottom:0pt; font-family:"Arial","Liberation Sans",sans-serif; line-height:1.15; orphans:2; widows:2; text-align:left; font-weight:
400; text-decoration:none; vertical-align:baseline; font-style:normal}
H2.head{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0; padding-top:12pt; color:#000000; font-size:14pt; padding-bottom:6pt; font-family:"Arial","Liberation Sans",sans-serif; line-height:1.15; page-break-after:avoid; orphans:2; widows:2; tex
t-align:left; font-weight:400; text-decoration:none; vertical-align:baseline; font-style:normal}
P.inst{margin-bottom:0; margin-top:0; margin-left:18pt; margin-right:0; padding-top:9pt; color:#000000; font-size:12pt; padding-bottom:6pt; font-family:"Arial","Liberation Sans",sans-serif;line-height:1.15; orphans:2; widows:2; text-align:left; font-weigh
t:400; text-decoration:none; vertical-align:baseline; font-style:normal}
@@ -12,12 +12,13 @@
P.codt{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0; padding-top:0pt; color:#000000; font-size:10pt; padding-bottom:0pt; font-family:"Courier New",monospace; line-height:1.15; text-align:left; background-color:#f0f0f0; font-weight:400; tex
t-decoration:none; vertical-align:baseline; font-style:normal}
P.text{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0; padding-top:0pt; color:#000000; font-size:11pt; padding-bottom:0pt; font-family:"Arial","Liberation Sans",sans-serif; line-height:1.15; text-align:left; font-weight:400; text-decoration:
none; vertical-align:baseline; font-style:normal}
P.txts{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0; padding-top:0pt; color:#000000; font-size:11pt; padding-bottom:11pt; font-family:"Arial","Liberation Sans",sans-serif; line-height:1.15; text-align:left; font-weight:400; text-decoration
:none; vertical-align:baseline; font-style:normal}
+SPAN.ntrm{font-family:"Arial","Liberation Sans",sans-serif}
P.a3{margin-bottom:0; margin-top:0; margin-left:0; margin-right:0;color:#000000;font-size:26pt;font-family:"Arial","Liberation Sans",sans-serif; padding-top:0pt; padding-bottom:3pt; line-height:1.15; page-break-after:avoid; orphans:2; widows:2; text-align
:left; font-weight:400; text-decoration:none; vertical-align:baseline; font-style:normal}
</style>
-</head><body class="c24 doc-content"><p class="a3">AI22-0043-1</p>
+</head><body class="c26 doc-content"><p class="a3">AI22-0043-1</p>
<p class="head">!standard 3.9.2(17/2)
- 22-09-09
- AI22-0043-1/02</p>
+ 22-11-17
+ AI22-0043-1/03</p>
<p class="head">!standard 3.9.2(18/2)</p>
<p class="head">!standard 3.9.2(18.1/2)</p>
<p class="head">!standard 3.9.2(19)</p>
@@ -44,7 +45,7 @@
<p class="txts">In this example,</p>
<p class="text"> </p>
-<a id="t.a153e93df8a6ffa5193dbcb9331225fe56868fd6"></a><a id="t.0"></a><table class="c12"><tr class="c5"><td class="c23">
+<a id="t.a153e93df8a6ffa5193dbcb9331225fe56868fd6"></a><a id="t.0"></a><table class="c14"><tr class="c20"><td class="c18">
<p class="codt"><b>package</b> Pkg;<br>
<b>type</b> T <b>is</b> <b>tagged</b> null <b>record</b>;<br>
<br>
@@ -71,17 +72,19 @@
<p class="inst">Replace 3.9.2(17/2 - 19) with:</p>
<ul class="wbl"><li>If all of the controlling operands (if any) are tag-indeterminate, then:</li>
-<ul class="wbl"><li>If the call has a controlling result or controlling access result that is
+<ul><li>If the call has a controlling result or controlling access result that is
itself, or designates, the evaluated operative constituent (see 4.4) of:</li>
-<ul class="wbl"><li>a tag-indeterminate controlling operand of an enclosing call on a dispatching
-operation of a descendant of type T, then the controlling tag value is determined by the
+<ul><li>a tag-indeterminate controlling operand of an enclosing call on a dispatching
+operation of a descendant of type <i>T</i>, then the controlling tag value is determined by the
controlling tag value of this enclosing call;</li>
-<li>a tag-indeterminate expression of an assignment_statement whose target is of a class-wide type,
-then the controlling tag value is determined by the target;</li>
+<li>a tag-indeterminate expression of an <span class="ntrm">assignment_statement</span> whose
+target is of a class-wide type, then the controlling tag value is determined by the target;</li>
</ul>
<li>Otherwise, the controlling tag value is statically determined to be the tag of
-type T.</li>
+type <i>T.</i></li>
</ul></ul>
+<p class="text">[Editor’s note: The first and last paragraphs here are unchanged, only the
+middle three are different.]</p>
<h2 class="head">!discussion</h2>
<p class="txts">No change is intended for the case of a tag-indeterminate call that occurs as the
operand of a view conversion. If the term “operative constituent” is to be used in any
@@ -97,6 +100,26 @@
<h2 class="head">!example</h2>
<p class="text">(See Issue.)</p>
+<h2 class="head">!corrigendum 3.9.2(18/2)</h2>
+<p class="text">@drepl</p>
+<p class="text">@xinbull{If the call has a controlling result or controlling access result and is
+itself, or designates, a (possibly parenthesized or qualified) controlling operand of an enclosing
+call on a dispatching operation of a descendant of type T, then its controlling tag value is
+determined by the controlling tag value of this enclosing call;}</p>
+<p class="text">@dby</p>
+<p class="txts">@xinbull{If the call has a controlling result or controlling access result that is
+itself, or designates, the evaluated operative constituent (see 4.4) of:}</p>
+
+<p class="txts">@xin2bull{a tag-indeterminate controlling operand of an enclosing call on a
+dispatching operation of a descendant of type @i{T}, then the controlling tag value is determined
+by the controlling tag value of this enclosing call;}</p>
+
+<p class="text">@xin2bull{a tag-indeterminate expression of an @fa{assignment_statement} whose
+target is of a class-wide type, then the controlling tag value is determined by the target;}</p>
+<h2 class="head">!corrigendum 3.9.2(18.1/3)</h2>
+<p class="text">@ddel</p>
+<p class="text">@xinbull{a tag-indeterminate expression of an @fa{assignment_statement} whose
+target is of a class-wide type, then the controlling tag value is determined by the target;}</p>
<h2 class="head">!ACATS test</h2>
<p class="text">An executable test could be written to confirm that the desired new program
behavior is implemented for tag-indeterminate calls within conditional expressions and within
Questions? Ask the ACAA Technical Agent