J.15.5 Interfacing Pragmas
Syntax
An
interfacing pragma is a representation pragma that is one of the
pragmas Import,
Export, or Convention. Their forms are as follows:
For
pragmas
Import and Export, the argument for Link_Name shall not be given without
the
pragma_argument_identifier
unless the argument for External_Name is given.
Name Resolution Rules
The expected
type for an
external_name_string_expression
and a
link_name_string_expression
in an interfacing pragma is String.
Legality Rules
The
convention_identifier
of an interfacing pragma shall be the name of a convention (see
B.1).
The
local_name
of each of these pragmas shall denote a declaration that may have the
similarly named aspect specified.
Static Semantics
An interfacing pragma
specifies various aspects of the entity denoted by the
local_name
as follows:
A
pragma
Import specifies that the Import aspect (see
B.1)
is True.
A
pragma
Export specifies that the Export aspect (see
B.1)
is True.
For both
pragma
Import and Export, if an external name is given in the pragma, the External_Name
aspect (see
B.1) is specified to be
external_name_string_expression.
If a link name is given in the pragma, the Link_Name aspect (see
B.1)
is specified to be the
link_name_string_expression.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe