Language-Defined Restrictions
Author: JTC1/SC22/WG9/ARG, by Randall Brukardt, ARG Editor

Ada Reference Manual — Legal Information

# 13.12.1 Language-Defined Restrictions

#### Static Semantics

1/2
The following restriction_ identifiers are language-defined (additional restrictions are defined in the Specialized Needs Annexes):
2/2
No_Implementation_Attributes
There are no implementation-defined attributes. This restriction applies only to the current compilation or environment, not the entire partition.
3/2
No_Implementation_Pragmas
There are no implementation-defined pragmas or pragma arguments. This restriction applies only to the current compilation or environment, not the entire partition.
4/2
No_Obsolescent_Features
There is no use of language features defined in Annex J. It is implementation-defined if uses of the renamings of J.1 are detected by this restriction. This restriction applies only to the current compilation or environment, not the entire partition.
5/2
The following restriction_parameter_ identifier is language defined:
6/2
No_Dependence
Specifies a library unit on which there are no semantic dependences.

#### Legality Rules

7/2
The restriction_parameter_argument of a No_Dependence restriction shall be a name; the name shall have the form of a full expanded name of a library unit, but need not denote a unit present in the environment.

#### Post-Compilation Rules

8/2
No compilation unit included in the partition shall depend semantically on the library unit identified by the name.

Sponsored by Ada-Europe