J.15.5 Interfacing Pragmas
Syntax
1/3
{
AI05-0229-1}
An
interfacing pragma is a representation pragma that is one of the
pragmas Import,
Export, or Convention. Their forms are as follows:
2/3
3/3
4/3
5/3
{
AI05-0229-1}
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
6/3
Legality Rules
7/3
8/3
9/3
10/3
{
AI05-0229-1}
The
local_name
of each of these pragmas shall denote a declaration that may have the
similarly named aspect specified.
Static Semantics
11/3
{
AI05-0229-1}
An interfacing pragma specifies various aspects of the entity denoted
by the
local_name
as follows:
12/3
13/3
A
pragma
Import specifies that the Import aspect (see
B.1)
is True.
14/3
A
pragma
Export specifies that the Export aspect (see
B.1)
is True.
15/3
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.
Wording Changes from Ada 2005
15.a/3
{
AI05-0229-1}
This clause is new. Pragmas Import, Export, and Convention were moved
here from
B.1; aspects Import, Export, Convention,
Link_Name, and External_Name live there now.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe