The form for
pragmas
Atomic, Volatile, Independent, Atomic_Components, and Volatile_Components,
and Independent_Components is as follows:
The
local_name
in an Atomic or Volatile pragma shall resolve to denote either an
object_declaration,
a noninherited
component_declaration,
or a
full_type_declaration.
The
component_local_name
in an Independent pragma shall resolve to denote a noninherited
component_declaration.
The
array_local_name
in an Atomic_Components or Volatile_Components pragma shall resolve to
denote the declaration of an array type or an array object of an anonymous
type. The
local_name
in an Independent_Components pragma shall resolve to denote the declaration
of an array or record type or an array object of an anonymous type.
These
pragmas
are representation pragmas (see
13.1). Each
of these
pragmas
specifies that the similarly named aspect (see
C.6)
of the type, object, or component denoted by its argument is True.