- (1)
- A pragma Restrictions expresses the user's intent to abide by certain
restrictions. This may facilitate the construction of simpler run-time
environments.
- (2)
- The form of a pragma Restrictions is as follows:
(3)
pragma Restrictions(restriction{, restriction});
(4)
restriction ::= restriction_identifier
| restriction_parameter_identifier => expression
Name Resolution Rules
- (5)
- Unless otherwise specified for a particular restriction, the expression
is expected to be of any integer type.
Legality Rules
- (6)
- Unless otherwise specified for a particular restriction, the expression
shall be static, and its value shall be nonnegative.
Static Semantics
- (7)
- The set of restrictions is implementation defined.
Post-Compilation Rules
- (8)
- A pragma Restrictions is a configuration pragma; unless otherwise
specified for a particular restriction, a partition shall obey the
restriction if a pragma Restrictions applies to any compilation unit included
in the partition.
Implementation Permissions
- (9)
- An implementation may place limitations on the values of the expression
that are supported, and limitations on the supported combinations of
restrictions. The consequences of violating such limitations are
implementation defined.
-
- (10)
(28) Restrictions intended to facilitate the construction of efficient tasking
run-time systems are defined in D.7. Safety- and
security-related restrictions are defined in H.4.
- (11)
(29) An implementation has to enforce the restrictions in cases where
enforcement is required, even if it chooses not to take advantage of the
restrictions in terms of efficiency.
-- Email comments, additions, corrections, gripes, kudos, etc. to:
Magnus Kempe -- Magnus.Kempe@di.epfl.ch
Copyright statement
Page last generated: 95-03-12