Go to the first, previous, next, last section, table of contents.
-
A pragma Restrictions expresses the user's intent to abide by certain
restrictions. This may facilitate the construction of simpler run-time
environments.
Syntax
-
The form of a pragma Restrictions is as follows:
-
pragma Restrictions(restriction{, restriction});
-
restriction ::= restriction_identifier
| restriction_parameter_identifier => expression
Name Resolution Rules
-
Unless otherwise specified for a particular restriction, the expression
is expected to be of any integer type.
Legality Rules
-
Unless otherwise specified for a particular restriction, the expression
shall be static, and its value shall be nonnegative.
Static Semantics
-
The set of restrictions is implementation defined.
Post-Compilation Rules
-
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
-
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.
NOTES
-
(28) Restrictions intended to facilitate the construction of efficient
tasking run-time systems are defined in See section D.7 Tasking Restrictions. Safety- and
security-related restrictions are defined in See section H.4 Safety and Security Restrictions.
-
(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.
Go to the first, previous, next, last section, table of contents.