CVS difference for ai22s/ai22-0043-1.html
--- ai22s/ai22-0043-1.html 2022/11/18 05:01:40 1.4
+++ ai22s/ai22-0043-1.html 2023/03/25 07:23:34 1.5
@@ -1,24 +1,23 @@
-<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0043-1/03</title>
+<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0043-1/04</title>
<style type="text/css">
table td,table th{padding:0}
-.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}
+BODY.body{background-color:#ffffff; max-width:468pt; padding:72pt 72pt 72pt 72pt}
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}
UL.wbl{margin-bottom:0; margin-top:0; margin-left:42pt; margin-right:0; padding-top:0pt; color:#000000; font-size:11pt; padding-bottom:3pt; font-family:"Times New Roman","Times",serif; line-height:1.15; orphans:2; widows:2; text-align:left; font-weight:40
0; text-decoration:none; vertical-align:baseline; font-style:normal; list-style: disc outside}
-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}
+UL.wbi{margin-bottom:0; margin-top:0; margin-left:66pt; margin-right:0; padding-top:0pt; color:#000000; font-size:11pt; padding-bottom:3pt; font-family:"Times New Roman","Times",serif; line-height:1.15; orphans:2; widows:2; text-align:left; font-weight:40
0; text-decoration:none; vertical-align:baseline; font-style:normal; list-style: disc outside}
+UL.wbi2{margin-bottom:0; margin-top:0; margin-left:92pt; margin-right:0; padding-top:0pt; color:#000000; font-size:11pt; padding-bottom:3pt; font-family:"Times New Roman","Times",serif; line-height:1.15; orphans:2; widows:2; text-align:left; font-weight:4
00; text-decoration:none; vertical-align:baseline; font-style:normal; list-style: disc outside}
+P.codb{margin-bottom:0; margin-top:0; margin-left:12pt; margin-right:0; padding-left:4pt; padding-top:4pt; color:#000000; font-size:10pt; padding-bottom:4pt; font-family:"Courier New",monospace; line-height:1.15; text-align:left; background-color:#f0f0f0;
font-weight:400; text-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}
+P.l3h{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-alig
n:left; font-weight:400; text-decoration:none; vertical-align:baseline; font-style:normal}
</style>
-</head><body class="c26 doc-content"><p class="a3">AI22-0043-1</p>
+</head><body class="body"><p class="l3h">AI22-0043-1</p>
<p class="head">!standard 3.9.2(17/2)
- 22-11-17
- AI22-0043-1/03</p>
+ 23-03-25
+ AI22-0043-1/04</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>
@@ -32,10 +31,9 @@
<p class="head">!qualifier Omission</p>
<p class="head">!subject Tags from context for tag-indeterminate calls</p>
<h2 class="head">!summary</h2>
-<p class="text">The wording in 3.9.2(18) and in 3.9.2(18.1) talks about parenthesized expressions
-and qualified expressions, but fails to mention other similar cases (e.g., conditional expressions,
-declare</p>
-<p class="text">expressions). This was an oversight.</p>
+<p class="text">The wording in 3.9.2(18/2) and in 3.9.2(18.1/2) talks about parenthesized
+expressions and qualified expressions, but fails to mention other similar cases (e.g., conditional
+expressions, declare expressions). This was an oversight.</p>
<h2 class="head">!issue</h2>
<p class="txts">For purposes of determining whether a tag-indeterminate call takes its tag from its
enclosing context, should an enclosing conditional expression or an enclosing declare expression be
@@ -45,20 +43,19 @@
<p class="txts">In this example,</p>
<p class="text"> </p>
-<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>
- <b>function</b> F <b>return</b> T;<br>
- <b>procedure</b> Op (X1, X2 : T);<br>
+<p class="codb"><b>package</b> Pkg;<br>
+ <b>type</b> T <b>is</b> <b>tagged</b> <b>null</b> <b>record</b>;<br>
+ <br>
+ <b>function</b> F <b>return</b> T;<br>
+ <b>procedure</b> Op (X1, X2 : T);<br>
<b>end</b> Pkg;<br>
...<br>
<b>begin</b><br>
- Pkg.Op (X1 => Pkg.T'Class (...), X2 => (<b>if</b> Blah <b>then</b> Pkg.F
+ Pkg.Op (X1 => Pkg.T'Class (...), X2 => (<b>if</b> Blah <b>then</b> Pkg.F
<b>else</b> ...));<br>
- Pkg.Op (X1 => Pkg.T'Class (...), X2 => Pkg.T'Class (Pkg.F));<br>
+ Pkg.Op (X1 => Pkg.T'Class (...), X2 => Pkg.T'Class (Pkg.F));<br>
<b>end</b>;</p>
-</td></tr></table><p class="text"> </p>
+<p class="text"> </p>
<p class="text">should the controlling tag in the first call to Pkg.F be determined by the other
parameter in the enclosing call to Pkg.Op? (Yes.) What about the controlling tag in the second call
to Pkg.F? (No.)</p>
@@ -72,17 +69,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><li>If the call has a controlling result or controlling access result that is
+</ul>
+<ul class="wbi"><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><li>a tag-indeterminate controlling operand of an enclosing call on a dispatching
+</ul>
+<ul class="wbi2"><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 <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
+<ul class="wbi"><li>Otherwise, the controlling tag value is statically determined to be the tag of
type <i>T.</i></li>
-</ul></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>
@@ -116,7 +115,7 @@
<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>
+<h2 class="head">!corrigendum 3.9.2(18.1/2)</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>
Questions? Ask the ACAA Technical Agent