J.15.15 Distribution Pragmas
This subclause defines pragmas that specify properties 
of units for distributed systems.
Syntax
The following 
pragmas 
are defined with the given forms: 
 
  pragma Shared_Passive[(
library_unit_name)];
 
  pragma Remote_Types[(
library_unit_name)];
 
  pragma Remote_Call_Interface[(
library_unit_name)];
 
  pragma All_Calls_Remote[(
library_unit_name)];
 
Each of 
these pragmas is a library unit pragma.
  
Static Semantics
A 
categorization pragma is a pragma that specifies 
a corresponding categorization aspect.
 
The pragmas Shared_Passive, Remote_Types, and Remote_Call_Interface 
are categorization pragmas. In addition, the pragma Pure (see 
J.15.14) 
is considered a categorization pragma.
  
A 
pragma 
Shared_Passive specifies that a library unit is a shared passive library 
unit, namely that the Shared_Passive aspect (see 
E.2.1) 
of the library unit is True.
 
A 
pragma 
Remote_Types specifies that a library unit is a remote types library 
unit, namely that the Remote_Types aspect (see 
E.2.2) 
of the library unit is True.
 
A 
pragma 
Remote_Call_Interface specifies that a library unit is a remote call 
interface, namely that the Remote_Call_Interface aspect (see E.2.3) of 
the library unit is True.
 
A 
pragma 
All_Calls_Remote specifies that the All_Calls_Remote aspect (see E.2.3) 
of the library unit is True.
 
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe