AI22-0070-1

!standard 4.3.3(32/6)                                        23-03-23  AI22-0070-1/01

!class presentation 23-03-23

!status work item 23-03-23

!status received 23-03-23

!priority Low

!difficulty Easy

!subject Cannot use might, might use can

!summary

ISO Standard wording cannot use "might", it might use "can".

!issue

JTC1 Directives, Part 2 says that the word "might" is not allowed in wording,

"can" (possibility) or "may" (permission) should be used instead. One of the

wording changes adopted right after the completion of Ada 2022 uses "might" and

needs to be corrected.

!recommendation

(See Summary.)

!wording

Modify 4.3.3(32/6):

When evaluating iterated_component_associations for an array_aggregate that contains only iterated_component_associations with iterator_specifications, the first step of evaluating an iterated_component_association can be omitted if the implementation can determine the number of values by some other means. [Redundant: Such "other means" {can}[might] include making use of an applicable index constraint or the Length function of a suitable container type.]

!discussion

AI22-0006-1 is WG 9 approved, and thus should not be changed. Thus we need a new AI to correct the wording change.

AI22-0031-1 had a similar mistake, but that one was caught in Editorial Review just before sending to WG 9. So we were able to correct the AI before it was frozen.

!corrigendum 4.3.3(32/6)

@drepl

When evaluating @fa{iterated_component_association}s for an

@fa{array_aggregate} that contains only @fa{iterated_component_association}s

with @fa{iterator_specification}s, the first step of evaluating an

@fa{iterated_component_association} can be omitted if the implementation can

determine the maximum number of values by some other means.

Such "other means" might include making use of an applicable index constraint

or the Length function of a suitable container type.

@dby

When evaluating @fa{iterated_component_association}s for an

@fa{array_aggregate} that contains only @fa{iterated_component_association}s

with @fa{iterator_specification}s, the first step of evaluating an

@fa{iterated_component_association} can be omitted if the implementation can

determine the maximum number of values by some other means.

Such "other means" can include making use of an applicable index constraint

or the Length function of a suitable container type.

!ACATS test

No ACATS tests needed for wording changes that don't change the meaning.

!appendix