H.5 Pragma Detect_Blocking
The following
pragma
requires an implementation to detect potentially blocking operations
during the execution of a protected operation or a parallel construct.
Syntax
The form of a
pragma
Detect_Blocking is as follows:
Post-Compilation Rules
A
pragma
Detect_Blocking is a configuration pragma.
Dynamic Semantics
An implementation is required to detect a potentially
blocking operation that occurs during the execution of a protected operation
or a parallel construct defined within a compilation unit to which the
pragma applies, and to raise
Program_Error (see
9.5).
Implementation Permissions
An implementation is allowed to reject a
compilation_unit
to which a pragma Detect_Blocking applies if a potentially blocking operation
is present directly within an
entry_body,
the body of a protected subprogram, or a parallel construct occurring
within the compilation unit.
NOTE An operation that causes a task
to be blocked within a foreign language domain is not defined to be potentially
blocking, and is unlikely to be detected.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe