Ada Reference Manual (Ada 2022)Legal Information
Contents   Index   References   Search   Previous   Next 

5.6 Block Statements

1
A block_statement encloses a handled_sequence_of_statements optionally preceded by a declarative_part.

Syntax

2
block_statement ::= 
   [block_statement_identifier:]
       [declare
            declarative_part]
        begin
            handled_sequence_of_statements
        end [block_identifier];
3
If a block_statement has a block_statement_identifier, then the identifier shall be repeated after the end; otherwise, there shall not be an identifier after the end

Static Semantics

4
A block_statement that has no explicit declarative_part has an implicit empty declarative_part.

Dynamic Semantics

5
The execution of a block_statement consists of the elaboration of its declarative_part followed by the execution of its handled_sequence_of_statements.

Examples

6
Example of a block statement with a local variable: 
7
Swap:
   declare
      Temp : Integer;
   begin
      Temp := V; V := U; U := Temp;
   end Swap;

Contents   Index   References   Search   Previous   Next 
Ada-Europe Ada 2005 and 2012 Editions sponsored in part by Ada-Europe