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

Ada Reference Manual — Legal Information

# Annex L

## (informative)

# Language-Defined Pragmas

1
This Annex summarizes the definitions given elsewhere of the language-defined pragmas.
2
pragma All_Calls_Remote[(library_unit_ name)]; — See E.2.3.
2.1/2
pragma Assert([Check =>] boolean_ expression[, [Message =>] string_ expression]); — See 11.4.2.
2.2/2
pragma Assertion_Policy(policy_ identifier); — See 11.4.2.
3
pragma Asynchronous(local_name); — See E.4.1.
4
pragma Atomic(local_name); — See C.6.
5
pragma Atomic_Components(array_ local_name); — See C.6.
6
pragma Attach_Handler(handler_ name, expression); — See C.3.1.
7
pragma Controlled(first_subtype_ local_name); — See 13.11.3.
8
pragma Convention([Convention =>] convention_ identifier,[Entity =>] local_name); — See B.1.
8.1/2
pragma Detect_Blocking; — See H.5.
9
pragma Discard_Names[([On => ] local_name)]; — See C.5.
10
pragma Elaborate(library_unit_ name{, library_unit_ name}); — See 10.2.1.
11
pragma Elaborate_All(library_unit_ name{, library_unit_ name}); — See 10.2.1.
12
pragma Elaborate_Body[(library_unit_ name)]; — See 10.2.1.
13
pragma Export(
[Convention =>] convention_ identifier, [Entity =>] local_name
[, [External_Name =>] string_ expression] [, [Link_Name =>] string_ expression]); — See B.1.
14
pragma Import(
[Convention =>] convention_ identifier, [Entity =>] local_name
[, [External_Name =>] string_ expression] [, [Link_Name =>] string_ expression]); — See B.1.
15
pragma Inline(name {, name}); — See 6.3.2.
16
pragma Inspection_Point[(object_ name {, object_ name})]; — See H.3.2.
17
pragma Interrupt_Handler(handler_ name); — See C.3.1.
18
pragma Interrupt_Priority[(expression)]; — See D.1.
19
pragma Linker_Options(string_ expression); — See B.1.
20
pragma List(identifier); — See 2.8.
21
pragma Locking_Policy(policy_ identifier); — See D.3.
21.1/2
pragma No_Return(procedure_ local_name{, procedure_ local_name}); — See 6.5.1.
22
pragma Normalize_Scalars; — See H.1.
23
pragma Optimize(identifier); — See 2.8.
24
pragma Pack(first_subtype_ local_name); — See 13.2.
25
pragma Page; — See 2.8.
25.1/2
pragma Partition_Elaboration_Policy (policy_ identifier); — See H.6.
25.2/2
pragma Preelaborable_Initialization(direct_name); — See 10.2.1.
26
pragma Preelaborate[(library_unit_ name)]; — See 10.2.1.
27
pragma Priority(expression); — See D.1.
27.1/2
pragma Priority_Specific_Dispatching (
policy_ identifier, first_priority_ expression, last_priority_ expression); — See D.2.2.
27.2/2
pragma Profile (profile_ identifier {, profile_ pragma_argument_association}); — See D.13.
28
pragma Pure[(library_unit_ name)]; — See 10.2.1.
29
pragma Queuing_Policy(policy_ identifier); — See D.4.
29.1/2
pragma Relative_Deadline (relative_deadline_ expression); — See D.2.6.
30
pragma Remote_Call_Interface[(library_unit_ name)]; — See E.2.3.
31
pragma Remote_Types[(library_unit_ name)]; — See E.2.2.
32
pragma Restrictions(restriction{, restriction}); — See 13.12.
33
pragma Reviewable; — See H.3.1.
34
pragma Shared_Passive[(library_unit_ name)]; — See E.2.1.
35
pragma Storage_Size(expression); — See 13.3.
36
pragma Suppress(identifier); — See 11.5.
37
pragma Task_Dispatching_Policy(policy_ identifier); — See D.2.2.
37.1/2
pragma Unchecked_Union (first_subtype_ local_name); — See B.3.3.
37.2/2
pragma Unsuppress(identifier); — See 11.5.
38
pragma Volatile(local_name); — See C.6.
39
pragma Volatile_Components(array_ local_name); — See C.6.

Sponsored by Ada-Europe