CVS difference for ai22s/ai22-0019-1.html
--- ai22s/ai22-0019-1.html 2022/06/25 06:12:11 1.3
+++ ai22s/ai22-0019-1.html 2022/10/25 00:07:50 1.4
@@ -1,10 +1,10 @@
-<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0019-1/03</title>
+<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><title>AI22-0019-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}
+.c16{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}
.c9{border-spacing:0;border-collapse:collapse;margin-right:auto}
.c14{background-color:#ffffff;max-width:468pt;padding:72pt 72pt 72pt 72pt}
-.c19{height:0pt}
+.c10{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}
@@ -19,12 +19,13 @@
SPAN.ntrm{font-family:"Arial","Liberation Sans",sans-serif}
P.a1{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="c14"><p class="a1">AI22-0019-1</p>
+</head><body class="c14 doc-content"><p class="a1">AI22-0019-1</p>
<p class="head">!standard 13.1.1(13.1/5)
- 23-06-24 AI22-0019-1/03</p>
+ 22-10-17 AI22-0019-1/04</p>
<p class="head">!class binding interpretation 21-11-12</p>
<p class="head">!status Corrigendum 1-2022 22-06-23</p>
+<p class="head">!status WG9 Approved 22-10-18</p>
<p class="head">!status ARG Approved 15-0-0 22-06-23</p>
<p class="head">!status work item 21-11-12</p>
<p class="head">!status received 21-11-09</p>
@@ -86,9 +87,9 @@
<p class="txts">We need a rule like 13.1.1(13.1/5) to prevent problems for aspects that are
evaluated at the freezing point, such as representation aspects. For example:</p>
-<a id="t.7762e96ebce47d1748a08870428e559da7167db6"></a><a id="t.0"></a><table class="c9"><tr class="c19"><td class="c18">
+<a id="t.99271cba674aca16229a7c4d2327b4858cc38b8a"></a><a id="t.0"></a><table class="c9"><tr class="c10"><td class="c16">
<p class="codt"><b>type</b> My_Int <b>is</b> <b>range</b> 1 .. 100<br>
- <b>when</b> Size => Short_Int'Size;<br>
+ <b>with</b> Size => Short_Int'Size;<br>
<b>subtype</b> Short_Int <b>is</b> My_Int <b>range</b> 1 .. 50;<br>
Obj : My_Int;</p>
</td></tr></table><p class="text"> </p>
@@ -100,9 +101,9 @@
<p class="txts">On the other hand, aspects that aren't evaluated until some later point, like
assertion aspects, do not need such a rule. Consider:</p>
-<a id="t.b77fea320bf537d0ec807ca568e6dd41b1976c9b"></a><a id="t.1"></a><table class="c9"><tr class="c19"><td class="c18">
+<a id="t.38c6680b9522486bdfebeced2ea2062e53bf3e99"></a><a id="t.1"></a><table class="c9"><tr class="c10"><td class="c16">
<p class="codt"><b>type</b> My_Priv <b>is</b> <b>private</b><br>
- <b>when</b> Default_Initial_Condition => Sub_Priv'Size > 32;<br>
+ <b>with</b> Default_Initial_Condition => Sub_Priv'Size > 32;<br>
<b>subtype</b> Sub_Priv <b>is</b> My_Priv;</p>
</td></tr></table><p class="text"> </p>
<p class="txts">Here, the Default_Initial_Condition is not evaluated until after a default
@@ -116,7 +117,7 @@
<p class="txts">For instance, it might be useful to refer to a subprogram from inside of a
precondition or postcondition of that subprogram. For instance, one could write:</p>
-<a id="t.55ee4410f588316d5a4d0244438db446829406db"></a><a id="t.2"></a><table class="c9"><tr class="c19"><td class="c18">
+<a id="t.55ee4410f588316d5a4d0244438db446829406db"></a><a id="t.2"></a><table class="c9"><tr class="c10"><td class="c16">
<p class="codt"><b>function</b> Factorial (N : <b>in</b> Integer) <b>return</b> Integer<br>
<b>with</b> Post => Factorial'Result = Factorial(N-1)*N;</p>
</td></tr></table><p class="text"> </p>
Questions? Ask the ACAA Technical Agent