Correction to AI-00179/06 AI-00467/04 1
88-05-23 CR WJ
| !standard 03.05.10 (08) 88-05-23 AI-00467/04
!class correction 86-10-10
| !status approved by WG9/AJPO 88-02-05
| !status approved by Director, AJPO 88-02-05
| !status approved by WG9/Ada Board 87-12-07
| !status approved by Ada Board 87-07-30
!status panel/committee-approved 87-01-19 (reviewed)
!status panel/committee-approved (5-0-1) 86-11-14 (pending editorial review)
!status work-item 86-10-10
!status received 86-10-02
!references 83-00803
!topic Correction to AI-00179/06
!summary 86-10-13
In the discussion section of AI-00179/06, the upper bound of SG's range
constraint and the model interval in the subsequent discussion are incorrect
because the model numbers for subtype SG are the same as the model numbers
for type G.
!question 86-10-10
The discussion section of AI-00179/06 contains the following example:
type G is delta 0.01 range 1.00 .. 10.00;
for G'SMALL use 0.01;
subtype SG is F delta 0.1 range 1.0 .. 9.95;
The discussion then goes on to say that for subtype SG, 9.9 and 10.0 are
consecutive model numbers. This statement is incorrect since a length clause
specifying SMALL is given for type G, and hence, SG and G have the same model
numbers.
The example should be corrected so SG has the upper bound 9.995, and the
following discussion should be modified accordingly.
!recommendation 86-10-13
Correct the discussion of AI-00179 by replacing:
| type G is delta 0.01 range 1.00 .. 10.00;
for G'SMALL use 0.01;
subtype SG is F delta 0.1 range 1.0 .. 9.95;
For the subtype SG, 9.9 and 10.0 are consecutive model numbers
(3.5.9(14)). It is implementation dependent whether the upper
bound of SG is represented as the model number 9.9 or the model
number 10.0. Depending on the implementation's choice, the value
returned by SG'FORE will be either 2 or 3. In addition, note
that the bounds of SG need not be given by static expressions.
If the upper bound is non-static and has a value lying in the
model interval 9.9 to 10.0, SG'FORE's value will be
implementation dependent (and must be computed at run-time). The
fact that 'FORE may return implementation dependent values should
| be taken into consideration by programmers.
Correction to AI-00179/06 AI-00467/04 2
88-05-23 CR WJ
with:
| type G is delta 0.01 range 1.00 .. 10.00;
for G'SMALL use 0.01;
subtype SG is F delta 0.01 range 1.00 .. 9.995;
For the subtype SG, 9.99 and 10.00 are consecutive model numbers
(3.5.9(14)). It is implementation dependent whether the upper
bound of SG is represented as the model number 9.99 or the model
number 10.0. Depending on the implementation's choice, the value
returned by SG'FORE will be either 2 or 3. In addition, note
that the bounds of SG need not be given by static expressions.
If the upper bound is non-static and has a value lying in the
model interval 9.99 to 10.00, SG'FORE's value will be
implementation dependent (and must be computed at run-time). The
fact that 'FORE may return implementation dependent values should
| be taken into consideration by programmers.
!discussion 86-10-10
For the discussion section of commentary AI-00179/06 (as approved by the
AJPO, Ada Board, and ISO WG9) to be correct, the example should be changed so
the upper bound of SG is 9.995. The model interval in the discussion will
then range from 9.99 to 10.00.