< Ada Programming < Pragmas

Ada. Time-tested, safe and secure.

Summary

The pragma Restrictions is used to forbid the utilization of some language features.

List of language defined restrictions identifiers

Some restrictions are specially marked:

Ada 2005
This is a new Ada 2005 restrictions identifier.
Ada 2012
This is a new Ada 2012 restrictions identifier.
  • Immediate_Reclamation
  • Max_Asynchronous_Select_Nesting
  • Max_Entry_Queue_Length (Ada 2005)
  • Max_Protected_Entries
  • Max_Select_Alternatives
  • Max_Storage_At_Blocking
  • Max_Task_Entries
  • Max_Tasks
  • No_Abort_Statements
  • No_Access_Parameter_Allocators (Ada 2012)
  • No_Access_Subprograms
  • No_Allocators
  • No_Anonymous_Allocators (Ada 2012)
  • No_Asynchronous_Control
  • No_Coextensions (Ada 2012)
  • No_Delay
  • No_Dependence (Ada 2005)
  • No_Dispatch
  • No_Dynamic_Attachment (Ada 2005)
  • No_Dynamic_Priorities
  • No_Exceptions
  • No_Fixed_Point
  • No_Floating_Point
  • No_Implementation_Aspect_Specifications (Ada 2012)
  • No_Implementation_Attributes (Ada 2005)
  • No_Implementation_Identifiers (Ada 2012)
  • No_Implementation_Pragmas (Ada 2005)
  • No_Implementation_Units (Ada 2012)
  • No_Implicit_Heap_Allocations
  • No_IO
  • No_Local_Allocators
  • No_Local_Protected_Objects (Ada 2005)
  • No_Local_Timing_Events (Ada 2005)
  • No_Nested_Finalization
  • No_Obsolescent_Features (Ada 2005)
  • No_Protected_Type_Allocators (Ada 2005)
  • No_Protected_Types
  • No_Recursion
  • No_Reentrancy
  • No_Relative_Delay (Ada 2005)
  • No_Requeue_Statements (Ada 2005)
  • No_Select_Statements (Ada 2005)
  • No_Specific_Termination_Handlers (Ada 2005)
  • No_Specification_of_Aspect (Ada 2012)
  • No_Standard_Allocators_After_Elaboration (Ada 2012)
  • No_Task_Allocators
  • No_Task_Hierarchy
  • No_Task_Termination (Ada 2005)
  • No_Terminate_Alternatives
  • No_Unchecked_Access
  • No_Unchecked_Conversion
  • No_Unchecked_Deallocation
  • No_Use_of_Attribute (Ada 2012)
  • No_Use_of_Pragma (Ada 2012)
  • Simple_Barriers (Ada 2005)

List of implementation defined restrictions identifiers

The following restrictions are not available in all Ada compilers, only in those that had implemented them:

GNAT
This is an implementation defined restriction identifier of the GNAT compiler.
  • No_Calendar (GNAT)
  • No_Default_Initialization (GNAT)
  • No_Direct_Boolean_Operators (GNAT)
  • No_Dispatching_Calls (GNAT)
  • No_Elaboration_Code (GNAT)
  • No_Enumeration_Maps (GNAT)
  • No_Entry_Calls_In_Elaboration_Code (GNAT)
  • No_Entry_Queue (GNAT)
  • No_Exception_Handlers (GNAT)
  • No_Exception_Propagation (GNAT)
  • No_Exception_Registration, previously named 'No_Exception_Streams' (GNAT)
  • No_Implementation_Restrictions (GNAT)
  • No_Implicit_Aliasing (GNAT)
  • No_Implicit_Conditionals (GNAT)
  • No_Implicit_Dynamic_Code (GNAT)
  • No_Implicit_Loops (GNAT)
  • No_Initialize_Scalars (GNAT)
  • No_Secondary_Stack (GNAT)
  • No_Select_Statements (GNAT)
  • No_Standard_Storage_Pools (GNAT)
  • No_Streams (GNAT)
  • No_Task_Attributes_Package (GNAT)
  • No_Tasking (GNAT)
  • No_Wide_Characters (GNAT)
  • SPARK (GNAT)
  • Static_Priorities (GNAT)
  • Static_Storage_Size (GNAT)

See also

Wikibook

Ada Reference Manual

Ada Quality and Style Guide

This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.