Version 1.1 of acs/ac-00266.txt

Unformatted version of acs/ac-00266.txt version 1.1
Other versions for file acs/ac-00266.txt

!standard A.8.2(3/2)          15-01-29 AC95-00266/00
!standard A.8.2(7)
!class confirmation 15-01-29
!status received no action 15-01-29
!status received 15-01-23
!subject Storage Pool Aspect not defined
!summary
!appendix

From: Brad Moore
Sent: Friday, January 23, 2015  8:30 AM

I noticed that RM K.1 (58/3) says that Storage_Pool is a Language- Defined
Aspect, however in the section on storage pools, RM (13.11), there is no
mention of Storage_Pool being an aspect. It is only described as being an
attribute. Is this an oversight?


***************************************************************

From: Randy Brukardt
Sent: Friday, January 23, 2015  3:52 PM

No. All of the representation and operational attributes are not separately
described as aspects. (See 13.3, Size, Alignment, etc. are only described as
attributes.) We have a blanket rule to allow them to be treated as aspects,
13.1.1(31/3):

  All specifiable operational and representation attributes may be specified
  with an aspect_specification instead of an attribute_definition_clause (see
  13.3).

If we had written Ada 2012's wording from scratch, I'm sure all of these would
have been described as aspects first, and the attributes would retrieve the
value of the aspect. (And probably we'd have a separate aspect specification
rather than an attribute_definition_clause, something like
"For <ident> use Size => ..., Alignment => ...;", needed to handle the few
cases where it has to be given separately [if entities declared in the private
part are needed in the expression].)

But of course we didn't start from scratch, and this was the most expedient
way to get there. (We were going to do the same with representation pragmas,
but ultimately only one was left [having moved the rest to Annex J], and it
needed rewording anyway because parts of the definition were missing, so we
ended up describing them all in terms of aspects.)

***************************************************************

From: Steve Baird
Sent: Friday, January 23, 2015  3:57 PM

We also have the rule

   Each specifiable attribute constitutes an operational aspect or
   aspect of representation; the name of the aspect is that of the
   attribute.

The use of the word "constitutes" is a bit odd but I think the intent is clear.

***************************************************************

From: Randy Brukardt
Sent: Friday, January 23, 2015  4:27 PM

Right. The AARM note after 13.1.1(31/3) mentions that the name of the aspect
is the same as that of the attribute by a rule given elsewhere.

***************************************************************

Questions? Ask the ACAA Technical Agent