emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] 01/02: update to Ada mode version 5.0.1


From: Stephen Leake
Subject: [elpa] 01/02: update to Ada mode version 5.0.1
Date: Sun, 02 Feb 2014 21:48:47 +0000

stephen_leake pushed a commit to branch master
in repository elpa.

commit b112471a9ae18a3c089ed3d5803380e65c8f0e63
Author: Stephen Leake <address@hidden>
Date:   Sun Feb 2 14:44:45 2014 -0600

    update to Ada mode version 5.0.1
    
    new Ada mode keybinding: C-c ; comment-dwim
    
    new Ada mode menu entries: comment-dwim, ada-reset-parser
    
    misc bug fixes
    
    ada-indent-opentoken is now a minor mode
    
    new gpr mode keybinding: C-c C-o ff-find-other-file
    
    packages/ada-mode/README: New file.
---
 packages/ada-mode/README                |   65 ++
 packages/ada-mode/ada-build.el          |    6 +-
 packages/ada-mode/ada-grammar-wy.el     | 1437 +++++++++++++++----------------
 packages/ada-mode/ada-mode.el           |   45 +-
 packages/ada-mode/ada-mode.info         |  377 +++++---
 packages/ada-mode/ada-skel.el           |    1 -
 packages/ada-mode/ada-wisi-opentoken.el |   81 +-
 packages/ada-mode/ada-wisi.el           |    2 +-
 packages/ada-mode/gnat-inspect.el       |    6 +-
 packages/ada-mode/gpr-grammar-wy.el     |  249 +++---
 packages/ada-mode/gpr-mode.el           |   33 +-
 packages/ada-mode/gpr-mode.info         |  228 +++++-
 packages/ada-mode/gpr-skel.el           |    3 +-
 packages/ada-mode/gpr-wisi.el           |    1 -
 packages/wisi/wisi-parse.el             |    7 +-
 packages/wisi/wisi.el                   |   13 +-
 16 files changed, 1446 insertions(+), 1108 deletions(-)

diff --git a/packages/ada-mode/README b/packages/ada-mode/README
new file mode 100755
index 0000000..0e6c4bf
--- /dev/null
+++ b/packages/ada-mode/README
@@ -0,0 +1,65 @@
+Emacs Ada mode version 5.0.1
+
+See ada-mode.texi (or a compiled version) for help on using and
+customizing Ada mode, and notes for Ada mode developers.
+
+Ada mode is provided as a Gnu ELPA package; to install the package,
+add to ~./emacs:
+
+(package-initialize)
+
+then invoke M-x list-packages, install Ada mode.
+
+
+To install Ada mode, gpr mode, and associated utilities from this distribution:
+
+Unzip to a convenient place (we will use ~/ada-mode in the following).
+
+In a shell:
+$ cd ~/ada-mode/build/wisi
+$ byte-compile
+
+Edit your ~/.emacs, add:
+
+(add-to-list 'load-path (expand-file-name "~/ada-mode"))
+
+
+Ada mode will be automatically loaded when you open a file with a
+matching extension (default *.ads, *.adb).
+
+
+By default ada-mode uses gnat find for cross-reference functions.
+There is experimental support for an alternative, gnatinspect. You can
+select that by adding:
+
+(require 'gnat-inspect)
+
+in your ~/.emacs, before anything that loads ada-mode
+
+to build gnatinspect:
+    (gds-lynx-5)
+    cd ~/Projects
+    tar xf ~/Downloads/gnatcoll...
+    cd gnatcoll...
+    case:
+    when linux:
+        ./configure --prefix=/usr/gnat-7.1.2 --enable-gpl
+    when windows:
+        in cygwin bash, with gnat-7.1.2 in path:
+        ./configure --prefix=/Apps/GNAT-7.1.2 --enable-gpl
+    end case
+
+    make Gnatcoll_Build=Debug
+    sudo make Gnatcoll_Build=Debug install
+
+
+gnatinspect references:
+    gnatcoll-1.6w-src/docs/xref.rst
+    gnatcoll-1.6w-src/src/tools/gnatinspect.adb
+
+debugging gnatinspect:
+    verbosity in .gnatdebug:
+    -- Projects
+    -- ENTITIES.PARSING
+
+(end of file)
diff --git a/packages/ada-mode/ada-build.el b/packages/ada-mode/ada-build.el
index 8a50e89..0f32bb2 100755
--- a/packages/ada-mode/ada-build.el
+++ b/packages/ada-mode/ada-build.el
@@ -1,7 +1,7 @@
 ;;; ada-build.el --- extensions to ada-mode for compiling and running
 ;;; Ada projects without 'make' or similar tool
 ;;
-;;; Copyright (C) 1994, 1995, 1997 - 2013  Free Software Foundation, Inc.
+;;; Copyright (C) 1994, 1995, 1997 - 2014  Free Software Foundation, Inc.
 ;;
 ;; Author: Stephen Leake <address@hidden>
 ;; Maintainer: Stephen Leake <address@hidden>
@@ -20,10 +20,6 @@
 ;;
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
-;;
-;;; Usage:
-;;
-;; Add (require 'ada-build) to your .emacs
 
 ;;; Design:
 ;;
diff --git a/packages/ada-mode/ada-grammar-wy.el 
b/packages/ada-mode/ada-grammar-wy.el
index 839bde3..8f67f1f 100755
--- a/packages/ada-mode/ada-grammar-wy.el
+++ b/packages/ada-mode/ada-grammar-wy.el
@@ -4,7 +4,7 @@
 
 ;; This program is free software; you can redistribute it and/or
 ;; modify it under the terms of the GNU General Public License as
-;; published by the Free Software Foundation; either version 2, or (at
+;; published by the Free Software Foundation; either version 3, or (at
 ;; your option) any later version.
 ;;
 ;; This software is distributed in the hope that it will be useful,
@@ -13,12 +13,7 @@
 ;; General Public License for more details.
 ;;
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;; PLEASE DO NOT MANUALLY EDIT THIS FILE!  It is automatically
-;; generated from the grammar file ada-grammar.wy
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 (require 'wisi)
 (require 'semantic/lex)
@@ -720,14 +715,10 @@
        ((access_definition ))
        ((interface_type_definition )))
       (formal_derived_type_definition
-       ((ABSTRACT LIMITED NEW name AND interface_list WITH PRIVATE ))
-       ((ABSTRACT SYNCHRONIZED NEW name AND interface_list WITH PRIVATE ))
-       ((ABSTRACT LIMITED NEW name AND interface_list ))
-       ((ABSTRACT SYNCHRONIZED NEW name AND interface_list ))
-       ((ABSTRACT LIMITED NEW name WITH PRIVATE ))
-       ((ABSTRACT SYNCHRONIZED NEW name WITH PRIVATE ))
-       ((ABSTRACT NEW name ))
-       ((NEW name )))
+       ((abstract_limited_synchronized_opt NEW name AND interface_list WITH 
PRIVATE ))
+       ((abstract_limited_synchronized_opt NEW name WITH PRIVATE ))
+       ((abstract_limited_synchronized_opt NEW name AND interface_list ))
+       ((abstract_limited_synchronized_opt NEW name )))
       (formal_package_declaration
        ((WITH PACKAGE name IS NEW name formal_package_actual_part 
aspect_specification_opt SEMICOLON )
         (progn
@@ -1078,7 +1069,7 @@
        ((PACKAGE name RENAMES name aspect_specification_opt SEMICOLON )
         (wisi-statement-action 1 'statement-start 2 'name 3 'statement-other 6 
'statement-end)))
       (package_specification
-       ((PACKAGE name aspect_specification_opt IS declarative_part_opt PRIVATE 
declarative_part_opt END name )
+       ((PACKAGE name aspect_specification_opt IS declarative_part_opt PRIVATE 
declarative_part_opt END name_opt )
         (progn
         (wisi-statement-action 1 'statement-start 2 'name 4 'block-start 6 
'block-middle 8 'block-end)
         (wisi-containing-action 4 5)
@@ -1807,7 +1798,7 @@
       ((default . error) (WITH . (subprogram_default . 2)) (SEMICOLON . 
(subprogram_default . 2)))
       ((default . error) (WITH . (subprogram_default . 0)) (SEMICOLON . 
(subprogram_default . 0)) (DOT .  84) (TICK .  85) (LEFT_PAREN .  103))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (LEFT_PAREN .  471) (RANGE .  476) (MOD .  473) 
(DIGITS .  469) (DELTA .  468) (TASK .  479) (PROTECTED .  475) (SYNCHRONIZED . 
 477) (INTERFACE .  470) (ARRAY .  467) (NEW .  474) (PRIVATE . 
(abstract_tagged_limited_opt . 0)) (ABSTRACT .  466) (TAGGED .  478) (LIMITED . 
 472) (ACCESS . (null_exclusion_opt . 0)) (NOT .  198))
+      ((default . error) (LEFT_PAREN .  471) (RANGE .  475) (MOD .  473) 
(DIGITS .  469) (DELTA .  468) (TASK .  478) (PROTECTED .  474) (INTERFACE .  
470) (ARRAY .  467) (PRIVATE . (abstract_tagged_limited_opt . 0)) (TAGGED .  
477) (NEW . (abstract_limited_synchronized_opt . 0)) (ABSTRACT .  466) (LIMITED 
.  472) (SYNCHRONIZED .  476) (ACCESS . (null_exclusion_opt . 0)) (NOT .  198))
       ((default . error) (SEMICOLON .  465))
       ((default . error) (RIGHT_PAREN .  464))
       ((default . error) (RIGHT_PAREN . (discriminant_specification_list . 0)) 
(SEMICOLON . (discriminant_specification_list . 0)))
@@ -1943,20 +1934,20 @@
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104) (LEFT_PAREN .  103))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104) (LEFT_PAREN .  103))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (IS . (aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (IDENTIFIER .  598))
       ((default . error) (IDENTIFIER .  597))
-      ((default . error) (EQUAL_GREATER .  596))
+      ((default . error) (IDENTIFIER .  596))
+      ((default . error) (EQUAL_GREATER .  595))
       ((default . error) (COMMA . (pragma_argument_association . 0)) 
(RIGHT_PAREN . (pragma_argument_association . 0)))
       ((default . error) (OF . (primary . 6)) (COLON_EQUAL . (primary . 6)) 
(DO . (primary . 6)) (LOOP . (primary . 6)) (ELSIF . (primary . 6)) (ELSE . 
(primary . 6)) (DIGITS . (primary . 6)) (RIGHT_PAREN . (primary . 6)) (COMMA . 
(primary . 6)) (RANGE . (primary . 6)) (THEN . (primary . 6)) (WITH . (primary 
. 6)) (BAR . (primary . 6)) (EQUAL_GREATER . (primary . 6)) (IS . (primary . 
6)) (IN . (primary . 6)) (NOT . (primary . 6)) (EQUAL . (primary . 6)) (GREATER 
. (primary . 6)) (GREATER [...]
       ((default . error) (OF . (primary . 4)) (COLON_EQUAL . (primary . 4)) 
(DO . (primary . 4)) (LOOP . (primary . 4)) (ELSIF . (primary . 4)) (ELSE . 
(primary . 4)) (DIGITS . (primary . 4)) (RIGHT_PAREN . (primary . 4)) (COMMA . 
(primary . 4)) (RANGE . (primary . 4)) (THEN . (primary . 4)) (WITH . (primary 
. 4)) (BAR . (primary . 4)) (EQUAL_GREATER . (primary . 4)) (IS . (primary . 
4)) (IN . (primary . 4)) (NOT . (primary . 4)) (EQUAL . (primary . 4)) (GREATER 
. (primary . 4)) (GREATER [...]
       ((default . error) (OF . (primary . 5)) (COLON_EQUAL . (primary . 5)) 
(DO . (primary . 5)) (LOOP . (primary . 5)) (ELSIF . (primary . 5)) (ELSE . 
(primary . 5)) (DIGITS . (primary . 5)) (RIGHT_PAREN . (primary . 5)) (COMMA . 
(primary . 5)) (RANGE . (primary . 5)) (THEN . (primary . 5)) (WITH . (primary 
. 5)) (BAR . (primary . 5)) (EQUAL_GREATER . (primary . 5)) (IS . (primary . 
5)) (IN . (primary . 5)) (NOT . (primary . 5)) (EQUAL . (primary . 5)) (GREATER 
. (primary . 5)) (GREATER [...]
-      ((default . error) (THEN .  595))
+      ((default . error) (THEN .  594))
       ((default . error) (IDENTIFIER . (quantifier . 0)))
       ((default . error) (IDENTIFIER . (quantifier . 1)))
-      ((default . error) (IDENTIFIER .  593))
-      ((default . error) (IS .  592))
+      ((default . error) (IDENTIFIER .  592))
+      ((default . error) (IS .  591))
       ((default . error) (WHEN . (pragma . 0)) (THEN . (pragma . 0)) (OR . 
(pragma . 0)) (ELSIF . (pragma . 0)) (ELSE . (pragma . 0)) (WHILE . (pragma . 
0)) (SELECT . (pragma . 0)) (RETURN . (pragma . 0)) (REQUEUE . (pragma . 0)) 
(RAISE . (pragma . 0)) (NULL . (pragma . 0)) (LOOP . (pragma . 0)) (IF . 
(pragma . 0)) (GOTO . (pragma . 0)) (EXIT . (pragma . 0)) (DELAY . (pragma . 
0)) (DECLARE . (pragma . 0)) (CASE . (pragma . 0)) (ABORT . (pragma . 0)) 
(ACCEPT . (pragma . 0)) (CHARACTER_LIT [...]
       ((default . error) (RIGHT_PAREN . (pragma_argument_association_list . 
1)) (COMMA . (pragma_argument_association_list . 1)))
       ((default . error) (OF . (factor . 0)) (COLON_EQUAL . (factor . 0)) (DO 
. (factor . 0)) (LOOP . (factor . 0)) (ELSIF . (factor . 0)) (ELSE . (factor . 
0)) (DIGITS . (factor . 0)) (COMMA . (factor . 0)) (RIGHT_PAREN . (factor . 0)) 
(RANGE . (factor . 0)) (THEN . (factor . 0)) (WITH . (factor . 0)) (BAR . 
(factor . 0)) (EQUAL_GREATER . (factor . 0)) (IS . (factor . 0)) (SLASH_EQUAL . 
(factor . 0)) (LESS_EQUAL . (factor . 0)) (LESS . (factor . 0)) (GREATER_EQUAL 
. (factor . 0)) (GREAT [...]
@@ -1973,30 +1964,30 @@
       ((default . error) (DO . (relation . 1)) (LOOP . (relation . 1)) (COMMA 
. (relation . 1)) (RIGHT_PAREN . (relation . 1)) (ELSIF . (relation . 1)) (ELSE 
. (relation . 1)) (EQUAL_GREATER . (relation . 1)) (DIGITS . (relation . 1)) 
(RANGE . (relation . 1)) (THEN . (relation . 1)) (SEMICOLON . (relation . 1)) 
(WITH . (relation . 1)) (IS . (relation . 1)) (AND . (relation . 1)) (OR . 
(relation . 1)) (XOR . (relation . 1)))
       ((default . error) (OF . (term . 1)) (COLON_EQUAL . (term . 1)) (DO . 
(term . 1)) (LOOP . (term . 1)) (ELSIF . (term . 1)) (ELSE . (term . 1)) 
(DIGITS . (term . 1)) (RIGHT_PAREN . (term . 1)) (COMMA . (term . 1)) (RANGE . 
(term . 1)) (THEN . (term . 1)) (WITH . (term . 1)) (BAR . (term . 1)) 
(EQUAL_GREATER . (term . 1)) (IS . (term . 1)) (IN . (term . 1)) (NOT . (term . 
1)) (EQUAL . (term . 1)) (GREATER . (term . 1)) (GREATER_EQUAL . (term . 1)) 
(LESS . (term . 1)) (LESS_EQUAL . (t [...]
       ((default . error) (OF . (term_list . 1)) (COLON_EQUAL . (term_list . 
1)) (DO . (term_list . 1)) (LOOP . (term_list . 1)) (ELSIF . (term_list . 1)) 
(ELSE . (term_list . 1)) (DIGITS . (term_list . 1)) (COMMA . (term_list . 1)) 
(RIGHT_PAREN . (term_list . 1)) (RANGE . (term_list . 1)) (THEN . (term_list . 
1)) (WITH . (term_list . 1)) (BAR . (term_list . 1)) (EQUAL_GREATER . 
(term_list . 1)) (IS . (term_list . 1)) (SLASH_EQUAL . (term_list . 1)) 
(LESS_EQUAL . (term_list . 1)) (LESS .  [...]
-      ((default . error) (BEGIN .  586) (END .  587))
-      ((default . error) (IDENTIFIER .  585))
-      ((default . error) (WITH . (subprogram_specification . 0)) (IS . ( 584 
(subprogram_specification . 0))) (SEMICOLON . (subprogram_specification . 0)) 
(RENAMES . (subprogram_specification . 0)))
-      ((default . error) (SEMICOLON .  122) (RENAMES .  583) (IS . ( 582 
(aspect_specification_opt . 0))) (WITH .  104))
-      ((default . error) (EXCEPTION .  580) (CONSTANT . ( 579 (aliased_opt . 
0))) (ARRAY . (aliased_opt . 0)) (ACCESS . (aliased_opt . 0)) (NOT . 
(aliased_opt . 0)) (IDENTIFIER . (aliased_opt . 0)) (STRING_LITERAL . 
(aliased_opt . 0)) (CHARACTER_LITERAL . (aliased_opt . 0)) (ALIASED .  499))
+      ((default . error) (BEGIN .  585) (END .  586))
+      ((default . error) (IDENTIFIER .  584))
+      ((default . error) (WITH . (subprogram_specification . 0)) (IS . ( 583 
(subprogram_specification . 0))) (SEMICOLON . (subprogram_specification . 0)) 
(RENAMES . (subprogram_specification . 0)))
+      ((default . error) (SEMICOLON .  122) (RENAMES .  582) (IS . ( 581 
(aspect_specification_opt . 0))) (WITH .  104))
+      ((default . error) (EXCEPTION .  579) (CONSTANT . ( 578 (aliased_opt . 
0))) (ARRAY . (aliased_opt . 0)) (ACCESS . (aliased_opt . 0)) (NOT . 
(aliased_opt . 0)) (IDENTIFIER . (aliased_opt . 0)) (STRING_LITERAL . 
(aliased_opt . 0)) (CHARACTER_LITERAL . (aliased_opt . 0)) (ALIASED .  499))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (END . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
       ((default . error) (USE . (declarations . 1)) (TYPE . (declarations . 
1)) (TASK . (declarations . 1)) (SUBTYPE . (declarations . 1)) (PROTECTED . 
(declarations . 1)) (PROCEDURE . (declarations . 1)) (PRAGMA . (declarations . 
1)) (PACKAGE . (declarations . 1)) (OVERRIDING . (declarations . 1)) (NOT . 
(declarations . 1)) (GENERIC . (declarations . 1)) (FUNCTION . (declarations . 
1)) (FOR . (declarations . 1)) (ENTRY . (declarations . 1)) (IDENTIFIER . 
(declarations . 1)) (BEGIN . (de [...]
-      ((default . error) (SEMICOLON .  575) (IS . (discriminant_part_opt . 0)) 
(LEFT_PAREN .  188))
+      ((default . error) (SEMICOLON .  574) (IS . (discriminant_part_opt . 0)) 
(LEFT_PAREN .  188))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (IS . 
(aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (IDENTIFIER .  573))
       ((default . error) (IDENTIFIER .  572))
-      ((default . error) (IS .  571))
+      ((default . error) (IDENTIFIER .  571))
+      ((default . error) (IS .  570))
       ((default . error) (IS . (aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (IDENTIFIER .  569))
       ((default . error) (IDENTIFIER .  568))
+      ((default . error) (IDENTIFIER .  567))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (RENAMES .  566) (DOT .  84) (TICK .  85) (IS . ( 102 
(aspect_specification_opt . 0))) (WITH .  104) (LEFT_PAREN .  103))
+      ((default . error) (RENAMES .  565) (DOT .  84) (TICK .  85) (IS . ( 102 
(aspect_specification_opt . 0))) (WITH .  104) (LEFT_PAREN .  103))
       ((default . error) (USE . ((direct_name . 0) (name . 0))) (LEFT_PAREN . 
(name . 0)) (DOT . (name . 0)) (TICK . (name . 0)))
       ((default . error) (USE . ((direct_name . 1) (name . 7))) (LEFT_PAREN . 
(name . 7)) (DOT . (name . 7)) (TICK . (name . 7)))
-      ((default . error) (USE . ( 565 (name . 4))) (LEFT_PAREN . (name . 4)) 
(DOT . (name . 4)) (TICK . (name . 4)))
-      ((default . error) (USE .  564))
-      ((default . error) (DOT .  84) (TICK .  85) (USE .  563) (LEFT_PAREN .  
103))
-      ((default . error) (EXCEPTION .  560) (IDENTIFIER . (null_exclusion_opt 
. 0)) (STRING_LITERAL . (null_exclusion_opt . 0)) (CHARACTER_LITERAL . 
(null_exclusion_opt . 0)) (ACCESS . (null_exclusion_opt . 0)) (NOT .  198))
+      ((default . error) (USE . ( 564 (name . 4))) (LEFT_PAREN . (name . 4)) 
(DOT . (name . 4)) (TICK . (name . 4)))
+      ((default . error) (USE .  563))
+      ((default . error) (DOT .  84) (TICK .  85) (USE .  562) (LEFT_PAREN .  
103))
+      ((default . error) (EXCEPTION .  559) (IDENTIFIER . (null_exclusion_opt 
. 0)) (STRING_LITERAL . (null_exclusion_opt . 0)) (CHARACTER_LITERAL . 
(null_exclusion_opt . 0)) (ACCESS . (null_exclusion_opt . 0)) (NOT .  198))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 2)) (IS . 
(aspect_specification_opt . 2)))
       ((default . error) (COMMA . (association_opt . 2)) (RIGHT_PAREN . 
(association_opt . 2)))
       ((default . error) (COMMA . (association_opt . 1)) (RIGHT_PAREN . 
(association_opt . 1)))
@@ -2017,37 +2008,37 @@
       ((default . error) (COMMA . (association_opt . 3)) (RIGHT_PAREN . 
(association_opt . 3)))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 2)) (BAR . 
(discrete_choice_list . 2)))
       ((default . error) (DOT_DOT .  250) (BAR . (choice_relation . 1)) 
(EQUAL_GREATER . (choice_relation . 1)) (AND . (choice_relation . 1)) (OR . 
(choice_relation . 1)) (XOR . (choice_relation . 1)) (EQUAL .  251) 
(SLASH_EQUAL .  256) (LESS .  254) (LESS_EQUAL .  255) (GREATER .  252) 
(GREATER_EQUAL .  253))
-      ((default . error) (LOOP . (range . 1)) (DO . (range . 1)) (COMMA . 
(range . 1)) (OF . (range . 1)) (COLON_EQUAL . (range . 1)) (ELSIF . (range . 
1)) (ELSE . (range . 1)) (DIGITS . (range . 1)) (RANGE . (range . 1)) (THEN . 
(range . 1)) (SEMICOLON . (range . 1)) (WITH . (range . 1)) (IS . (range . 1)) 
(AND . (range . 1)) (OR . (range . 1)) (XOR . (range . 1)) (RIGHT_PAREN . 
(range . 1)) (EQUAL_GREATER . (range . 1)) (BAR . (range . 1)) (LEFT_PAREN .  
554))
+      ((default . error) (LOOP . (range . 1)) (DO . (range . 1)) (COMMA . 
(range . 1)) (OF . (range . 1)) (COLON_EQUAL . (range . 1)) (ELSIF . (range . 
1)) (ELSE . (range . 1)) (DIGITS . (range . 1)) (RANGE . (range . 1)) (THEN . 
(range . 1)) (SEMICOLON . (range . 1)) (WITH . (range . 1)) (IS . (range . 1)) 
(AND . (range . 1)) (OR . (range . 1)) (XOR . (range . 1)) (RIGHT_PAREN . 
(range . 1)) (EQUAL_GREATER . (range . 1)) (BAR . (range . 1)) (LEFT_PAREN .  
553))
       ((default . error) (WITH . (relation . 1)) (RIGHT_PAREN . (relation . 
1)) (COMMA . (relation . 1)) (BAR . (choice_relation . 0)) (EQUAL_GREATER . 
(choice_relation . 0)) (AND . ((relation . 1) (choice_relation . 0))) (OR . 
((relation . 1) (choice_relation . 0))) (XOR . ((relation . 1) (choice_relation 
. 0))))
       ((default . error) (PLUS .  136) (MINUS .  135) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ABS .  138) (NOT .  141) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (BAR .  552) (DO . (relation . 3)) (LOOP . (relation 
. 3)) (COMMA . (relation . 3)) (RIGHT_PAREN . (relation . 3)) (ELSIF . 
(relation . 3)) (ELSE . (relation . 3)) (EQUAL_GREATER . (relation . 3)) 
(DIGITS . (relation . 3)) (RANGE . (relation . 3)) (THEN . (relation . 3)) 
(SEMICOLON . (relation . 3)) (WITH . (relation . 3)) (IS . (relation . 3)) (AND 
. (relation . 3)) (OR . (relation . 3)) (XOR . (relation . 3)))
+      ((default . error) (BAR .  551) (DO . (relation . 3)) (LOOP . (relation 
. 3)) (COMMA . (relation . 3)) (RIGHT_PAREN . (relation . 3)) (ELSIF . 
(relation . 3)) (ELSE . (relation . 3)) (EQUAL_GREATER . (relation . 3)) 
(DIGITS . (relation . 3)) (RANGE . (relation . 3)) (THEN . (relation . 3)) 
(SEMICOLON . (relation . 3)) (WITH . (relation . 3)) (IS . (relation . 3)) (AND 
. (relation . 3)) (OR . (relation . 3)) (XOR . (relation . 3)))
       ((default . error) (DO . (membership_choice_list . 0)) (LOOP . 
(membership_choice_list . 0)) (COMMA . (membership_choice_list . 0)) 
(RIGHT_PAREN . (membership_choice_list . 0)) (ELSIF . (membership_choice_list . 
0)) (ELSE . (membership_choice_list . 0)) (EQUAL_GREATER . 
(membership_choice_list . 0)) (DIGITS . (membership_choice_list . 0)) (RANGE . 
(membership_choice_list . 0)) (THEN . (membership_choice_list . 0)) (SEMICOLON 
. (membership_choice_list . 0)) (WITH . (membership_choic [...]
       ((default . error) (DO . (membership_choice . 1)) (LOOP . 
(membership_choice . 1)) (COMMA . (membership_choice . 1)) (RIGHT_PAREN . 
(membership_choice . 1)) (ELSIF . (membership_choice . 1)) (ELSE . 
(membership_choice . 1)) (EQUAL_GREATER . (membership_choice . 1)) (DIGITS . 
(membership_choice . 1)) (RANGE . (membership_choice . 1)) (THEN . 
(membership_choice . 1)) (SEMICOLON . (membership_choice . 1)) (WITH . 
(membership_choice . 1)) (IS . (membership_choice . 1)) (AND . (membersh [...]
       ((default . error) (DOT_DOT .  250) (DO . (membership_choice . 0)) (LOOP 
. (membership_choice . 0)) (COMMA . (membership_choice . 0)) (RIGHT_PAREN . 
(membership_choice . 0)) (ELSIF . (membership_choice . 0)) (ELSE . 
(membership_choice . 0)) (EQUAL_GREATER . (membership_choice . 0)) (DIGITS . 
(membership_choice . 0)) (RANGE . (membership_choice . 0)) (THEN . 
(membership_choice . 0)) (SEMICOLON . (membership_choice . 0)) (WITH . 
(membership_choice . 0)) (IS . (membership_choice . 0)) [...]
       ((default . error) (DO . (range . 2)) (LOOP . (range . 2)) (OF . (range 
. 2)) (COLON_EQUAL . (range . 2)) (ELSIF . (range . 2)) (ELSE . (range . 2)) 
(DIGITS . (range . 2)) (RANGE . (range . 2)) (THEN . (range . 2)) (SEMICOLON . 
(range . 2)) (WITH . (range . 2)) (IS . (range . 2)) (AND . (range . 2)) (OR . 
(range . 2)) (XOR . (range . 2)) (COMMA . (range . 2)) (RIGHT_PAREN . (range . 
2)) (EQUAL_GREATER . (range . 2)) (BAR . (range . 2)))
-      ((default . error) (SEMICOLON .  551))
       ((default . error) (SEMICOLON .  550))
       ((default . error) (SEMICOLON .  549))
       ((default . error) (SEMICOLON .  548))
-      ((default . error) (ACCESS . (null_exclusion_opt . 0)) (NOT .  543) 
(IDENTIFIER .  542) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (SEMICOLON .  547))
+      ((default . error) (ACCESS . (null_exclusion_opt . 0)) (NOT .  542) 
(IDENTIFIER .  541) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (RIGHT_PAREN . (discriminant_specification_opt . 0)) 
(SEMICOLON . (discriminant_specification_opt . 0)) (IDENTIFIER .  69))
       ((default . error) (IS . (discriminant_part_opt . 2)) (WITH . 
(discriminant_part_opt . 2)) (SEMICOLON . (discriminant_part_opt . 2)))
       ((default . error) (IS . (discriminant_part_opt . 1)) (WITH . 
(discriminant_part_opt . 1)) (SEMICOLON . (discriminant_part_opt . 1)))
       ((default . error) (PACKAGE . (formal_type_declaration . 2)) (PROCEDURE 
. (formal_type_declaration . 2)) (FUNCTION . (formal_type_declaration . 2)) 
(IDENTIFIER . (formal_type_declaration . 2)) (PRAGMA . (formal_type_declaration 
. 2)) (TYPE . (formal_type_declaration . 2)) (WITH . (formal_type_declaration . 
2)))
-      ((default . error) (NEW .  538) (SYNCHRONIZED .  539) (LIMITED .  537) 
(TAGGED .  540))
+      ((default . error) (TAGGED .  539) (NEW . 
(abstract_limited_synchronized_opt . 3)) (SYNCHRONIZED .  538) (LIMITED .  537))
       ((default . error) (LEFT_PAREN .  536))
       ((default . error) (BOX .  535))
       ((default . error) (BOX .  534))
       ((default . error) (SEMICOLON . (interface_type_definition . 8)) (WITH . 
(interface_type_definition . 8)))
       ((default . error) (BOX .  533))
-      ((default . error) (INTERFACE .  532) (PRIVATE . 
(abstract_tagged_limited_opt . 5)))
+      ((default . error) (INTERFACE .  532) (PRIVATE . 
(abstract_tagged_limited_opt . 5)) (NEW . (abstract_limited_synchronized_opt . 
4)))
       ((default . error) (BOX .  531))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (INTERFACE .  529))
-      ((default . error) (BOX .  528))
-      ((default . error) (INTERFACE .  527))
-      ((default . error) (PRIVATE . (abstract_tagged_limited_opt . 4)) 
(LIMITED .  525) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (INTERFACE .  524))
+      ((default . error) (INTERFACE .  530))
+      ((default . error) (BOX .  529))
+      ((default . error) (INTERFACE .  528) (NEW . 
(abstract_limited_synchronized_opt . 5)))
+      ((default . error) (PRIVATE . (abstract_tagged_limited_opt . 4)) 
(LIMITED .  526) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  104))
+      ((default . error) (INTERFACE .  525))
+      ((default . error) (NEW .  524))
       ((default . error) (PRIVATE .  523))
       ((default . error) (WITH . (formal_type_definition . 9)) (SEMICOLON . 
(formal_type_definition . 9)))
       ((default . error) (WITH . (formal_type_definition . 8)) (SEMICOLON . 
(formal_type_definition . 8)))
@@ -2075,116 +2066,115 @@
       ((default . error) (DO . (aggregate . 0)) (LOOP . (aggregate . 0)) 
(RENAMES . (aggregate . 0)) (USE . (aggregate . 0)) (COLON_EQUAL . (aggregate . 
0)) (WHILE . (aggregate . 0)) (SELECT . (aggregate . 0)) (REQUEUE . (aggregate 
. 0)) (RAISE . (aggregate . 0)) (PRAGMA . (aggregate . 0)) (NULL . (aggregate . 
0)) (IF . (aggregate . 0)) (GOTO . (aggregate . 0)) (FOR . (aggregate . 0)) 
(EXIT . (aggregate . 0)) (DELAY . (aggregate . 0)) (DECLARE . (aggregate . 0)) 
(CASE . (aggregate . 0))  [...]
       ((default . error) (RIGHT_PAREN .  506))
       ((default . error) (OF . (aggregate . 3)) (LESS_LESS . (aggregate . 3)) 
(IDENTIFIER . (aggregate . 3)) (STRING_LITERAL . (aggregate . 3)) 
(CHARACTER_LITERAL . (aggregate . 3)) (ACCEPT . (aggregate . 3)) (ABORT . 
(aggregate . 3)) (BEGIN . (aggregate . 3)) (CASE . (aggregate . 3)) (DECLARE . 
(aggregate . 3)) (DELAY . (aggregate . 3)) (EXIT . (aggregate . 3)) (FOR . 
(aggregate . 3)) (GOTO . (aggregate . 3)) (IF . (aggregate . 3)) (NULL . 
(aggregate . 3)) (PRAGMA . (aggregate . 3)) (RA [...]
-      ((default . error) (PLUS . (primary . 0)) (MINUS . (primary . 0)) 
(AMPERSAND . (primary . 0)) (DOT_DOT . (primary . 0)) (IN . (primary . 0)) (NOT 
. (primary . 0)) (EQUAL . (primary . 0)) (GREATER . (primary . 0)) 
(GREATER_EQUAL . (primary . 0)) (LESS . (primary . 0)) (LESS_EQUAL . (primary . 
0)) (SLASH_EQUAL . (primary . 0)) (RIGHT_PAREN . (primary . 0)) (COMMA . 
(primary . 0)) (SLASH . (primary . 0)) (STAR . (primary . 0)) (MOD . (primary . 
0)) (REM . (primary . 0)) (STAR_STAR . ( [...]
-      ((default . error) (COMMA .  272) (RIGHT_PAREN .  778))
+      ((default . error) (PLUS . (primary . 0)) (MINUS . (primary . 0)) 
(AMPERSAND . (primary . 0)) (DOT_DOT . (primary . 0)) (IN . (primary . 0)) (NOT 
. (primary . 0)) (EQUAL . (primary . 0)) (GREATER . (primary . 0)) 
(GREATER_EQUAL . (primary . 0)) (LESS . (primary . 0)) (LESS_EQUAL . (primary . 
0)) (SLASH_EQUAL . (primary . 0)) (RIGHT_PAREN . (primary . 0)) (COMMA . 
(primary . 0)) (SLASH . (primary . 0)) (STAR . (primary . 0)) (MOD . (primary . 
0)) (REM . (primary . 0)) (STAR_STAR . ( [...]
+      ((default . error) (COMMA .  272) (RIGHT_PAREN .  775))
       ((default . error) (IDENTIFIER . (null_exclusion_opt . 0)) 
(STRING_LITERAL . (null_exclusion_opt . 0)) (CHARACTER_LITERAL . 
(null_exclusion_opt . 0)) (NOT .  198))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (RETURN .  87) (LEFT_PAREN .  773))
-      ((default . error) (IS . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (WITH . (parameter_profile_opt . 0)) (COLON_EQUAL 
. (parameter_profile_opt . 0)) (RENAMES . (parameter_profile_opt . 0)) (DO . 
(parameter_profile_opt . 0)) (RIGHT_PAREN . (parameter_profile_opt . 0)) 
(LEFT_PAREN .  773))
+      ((default . error) (RETURN .  87) (LEFT_PAREN .  770))
+      ((default . error) (IS . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (WITH . (parameter_profile_opt . 0)) (COLON_EQUAL 
. (parameter_profile_opt . 0)) (RENAMES . (parameter_profile_opt . 0)) (DO . 
(parameter_profile_opt . 0)) (RIGHT_PAREN . (parameter_profile_opt . 0)) 
(LEFT_PAREN .  770))
       ((default . error) (DOT .  84) (TICK .  85) (RIGHT_PAREN . 
(access_definition . 0)) (DO . (access_definition . 0)) (RENAMES . 
(access_definition . 0)) (COLON_EQUAL . (access_definition . 0)) (WITH . 
(access_definition . 0)) (SEMICOLON . (access_definition . 0)) (IS . 
(access_definition . 0)) (LEFT_PAREN .  103))
       ((default . error) (WITH . (formal_object_declaration . 3)) (TYPE . 
(formal_object_declaration . 3)) (PRAGMA . (formal_object_declaration . 3)) 
(IDENTIFIER . (formal_object_declaration . 3)) (FUNCTION . 
(formal_object_declaration . 3)) (PROCEDURE . (formal_object_declaration . 3)) 
(PACKAGE . (formal_object_declaration . 3)))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  770))
-      ((default . error) (DOT .  84) (TICK .  85) (WITH . 
(formal_package_actual_part . 1)) (SEMICOLON . (formal_package_actual_part . 
1)) (LEFT_PAREN .  768))
       ((default . error) (SEMICOLON .  767))
+      ((default . error) (DOT .  84) (TICK .  85) (WITH . 
(formal_package_actual_part . 1)) (SEMICOLON . (formal_package_actual_part . 
1)) (LEFT_PAREN .  765))
+      ((default . error) (SEMICOLON .  764))
       ((default . error) (WITH . (formal_subprogram_declaration . 3)) (TYPE . 
(formal_subprogram_declaration . 3)) (PRAGMA . (formal_subprogram_declaration . 
3)) (IDENTIFIER . (formal_subprogram_declaration . 3)) (FUNCTION . 
(formal_subprogram_declaration . 3)) (PROCEDURE . 
(formal_subprogram_declaration . 3)) (PACKAGE . (formal_subprogram_declaration 
. 3)))
       ((default . error) (WITH . (formal_subprogram_declaration . 0)) (TYPE . 
(formal_subprogram_declaration . 0)) (PRAGMA . (formal_subprogram_declaration . 
0)) (IDENTIFIER . (formal_subprogram_declaration . 0)) (FUNCTION . 
(formal_subprogram_declaration . 0)) (PROCEDURE . 
(formal_subprogram_declaration . 0)) (PACKAGE . (formal_subprogram_declaration 
. 0)))
-      ((default . error) (SEMICOLON .  766))
+      ((default . error) (SEMICOLON .  763))
       ((default . error) (SEMICOLON . (formal_type_definition . 0)) (WITH . 
(formal_type_definition . 0)))
-      ((default . error) (AND .  765) (WITH . (interface_type_definition . 5)) 
(SEMICOLON . (interface_type_definition . 5)))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
+      ((default . error) (AND .  761) (WITH . (interface_type_definition . 5)) 
(SEMICOLON . (interface_type_definition . 5)))
       ((default . error) (RECORD . (abstract_tagged_limited_opt . 3)) (NULL . 
(abstract_tagged_limited_opt . 3)) (PRIVATE . (abstract_tagged_limited_opt . 
3)))
-      ((default . error) (SEMICOLON .  764))
-      ((default . error) (AND .  763) (WITH . (interface_type_definition . 7)) 
(SEMICOLON . (interface_type_definition . 7)))
+      ((default . error) (SEMICOLON .  760))
+      ((default . error) (AND .  759) (WITH . (interface_type_definition . 7)) 
(SEMICOLON . (interface_type_definition . 7)))
       ((default . error) (SEMICOLON . (formal_type_definition . 3)) (WITH . 
(formal_type_definition . 3)))
-      ((default . error) (AND .  762) (WITH . (interface_type_definition . 6)) 
(SEMICOLON . (interface_type_definition . 6)))
-      ((default . error) (DOT .  84) (TICK .  85) (WITH . 
(formal_derived_type_definition . 7)) (SEMICOLON . 
(formal_derived_type_definition . 7)) (LEFT_PAREN .  103))
+      ((default . error) (AND .  758) (WITH . (interface_type_definition . 6)) 
(SEMICOLON . (interface_type_definition . 6)))
       ((default . error) (SEMICOLON . (formal_type_definition . 4)) (WITH . 
(formal_type_definition . 4)))
-      ((default . error) (AND .  761) (WITH . (interface_type_definition . 4)) 
(SEMICOLON . (interface_type_definition . 4)))
-      ((default . error) (RIGHT_PAREN .  760))
+      ((default . error) (AND .  757) (WITH . (interface_type_definition . 4)) 
(SEMICOLON . (interface_type_definition . 4)))
+      ((default . error) (RIGHT_PAREN .  756))
       ((default . error) (SEMICOLON . (formal_type_definition . 5)) (WITH . 
(formal_type_definition . 5)))
-      ((default . error) (SEMICOLON . (formal_type_definition . 6)) (WITH . 
(formal_type_definition . 6)) (DIGITS .  759))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  750) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (NEW .  749))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (NEW .  747))
-      ((default . error) (LIMITED .  746) (RECORD . 
(abstract_tagged_limited_opt . 2)) (NULL . (abstract_tagged_limited_opt . 2)) 
(PRIVATE . (abstract_tagged_limited_opt . 2)))
+      ((default . error) (SEMICOLON . (formal_type_definition . 6)) (WITH . 
(formal_type_definition . 6)) (DIGITS .  755))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  746) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (NEW . (abstract_limited_synchronized_opt . 1)))
+      ((default . error) (NEW . (abstract_limited_synchronized_opt . 2)))
+      ((default . error) (LIMITED .  745) (RECORD . 
(abstract_tagged_limited_opt . 2)) (NULL . (abstract_tagged_limited_opt . 2)) 
(PRIVATE . (abstract_tagged_limited_opt . 2)))
       ((default . error) (RIGHT_PAREN . (discriminant_specification_list . 1)) 
(SEMICOLON . (discriminant_specification_list . 1)))
       ((default . error) (SEMICOLON . (null_exclusion_opt_name . 0)) 
(RIGHT_PAREN . (null_exclusion_opt_name . 0)) (COLON_EQUAL . 
(null_exclusion_opt_name . 0)) (DOT . (name . 0)) (LEFT_PAREN . (name . 0)) 
(TICK . (name . 0)))
-      ((default . error) (NULL .  745))
-      ((default . error) (SEMICOLON . (discriminant_specification_opt . 4)) 
(RIGHT_PAREN . (discriminant_specification_opt . 4)) (COLON_EQUAL .  744))
+      ((default . error) (NULL .  744))
+      ((default . error) (SEMICOLON . (discriminant_specification_opt . 4)) 
(RIGHT_PAREN . (discriminant_specification_opt . 4)) (COLON_EQUAL .  743))
       ((default . error) (DOT .  84) (TICK .  85) (LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON . (discriminant_specification_opt . 2)) 
(RIGHT_PAREN . (discriminant_specification_opt . 2)) (COLON_EQUAL .  743))
+      ((default . error) (SEMICOLON . (discriminant_specification_opt . 2)) 
(RIGHT_PAREN . (discriminant_specification_opt . 2)) (COLON_EQUAL .  742))
       ((default . error) (SEMICOLON . (null_exclusion_opt_name . 1)) 
(RIGHT_PAREN . (null_exclusion_opt_name . 1)) (COLON_EQUAL . 
(null_exclusion_opt_name . 1)) (DOT . (name . 3)) (LEFT_PAREN . (name . 3)) 
(TICK . (name . 3)))
       ((default . error) ($EOI . (generic_renaming_declaration . 1)) (LIMITED 
. (generic_renaming_declaration . 1)) (SEPARATE . (generic_renaming_declaration 
. 1)) (WITH . (generic_renaming_declaration . 1)) (END . 
(generic_renaming_declaration . 1)) (PRIVATE . (generic_renaming_declaration . 
1)) (USE . (generic_renaming_declaration . 1)) (TYPE . 
(generic_renaming_declaration . 1)) (TASK . (generic_renaming_declaration . 1)) 
(SUBTYPE . (generic_renaming_declaration . 1)) (PROTECTED . (ge [...]
       ((default . error) ($EOI . (generic_renaming_declaration . 0)) (LIMITED 
. (generic_renaming_declaration . 0)) (SEPARATE . (generic_renaming_declaration 
. 0)) (WITH . (generic_renaming_declaration . 0)) (END . 
(generic_renaming_declaration . 0)) (PRIVATE . (generic_renaming_declaration . 
0)) (USE . (generic_renaming_declaration . 0)) (TYPE . 
(generic_renaming_declaration . 0)) (TASK . (generic_renaming_declaration . 0)) 
(SUBTYPE . (generic_renaming_declaration . 0)) (PROTECTED . (ge [...]
       ((default . error) ($EOI . (generic_renaming_declaration . 2)) (LIMITED 
. (generic_renaming_declaration . 2)) (SEPARATE . (generic_renaming_declaration 
. 2)) (WITH . (generic_renaming_declaration . 2)) (END . 
(generic_renaming_declaration . 2)) (PRIVATE . (generic_renaming_declaration . 
2)) (USE . (generic_renaming_declaration . 2)) (TYPE . 
(generic_renaming_declaration . 2)) (TASK . (generic_renaming_declaration . 2)) 
(SUBTYPE . (generic_renaming_declaration . 2)) (PROTECTED . (ge [...]
       ((default . error) (END . (generic_instantiation . 0)) (BEGIN . 
(generic_instantiation . 0)) (IDENTIFIER . (generic_instantiation . 0)) (ENTRY 
. (generic_instantiation . 0)) (FOR . (generic_instantiation . 0)) (PROTECTED . 
(generic_instantiation . 0)) (SUBTYPE . (generic_instantiation . 0)) (TASK . 
(generic_instantiation . 0)) (TYPE . (generic_instantiation . 0)) ($EOI . 
(generic_instantiation . 0)) (FUNCTION . (generic_instantiation . 0)) (GENERIC 
. (generic_instantiation . 0)) (L [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ABS .  138) (NOT .  141) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (BAR .  552) (LOOP . (relation . 2)) (DO . (relation 
. 2)) (XOR . (relation . 2)) (OR . (relation . 2)) (AND . (relation . 2)) (IS . 
(relation . 2)) (WITH . (relation . 2)) (SEMICOLON . (relation . 2)) (THEN . 
(relation . 2)) (RANGE . (relation . 2)) (DIGITS . (relation . 2)) 
(EQUAL_GREATER . (relation . 2)) (ELSE . (relation . 2)) (ELSIF . (relation . 
2)) (RIGHT_PAREN . (relation . 2)) (COMMA . (relation . 2)))
+      ((default . error) (BAR .  551) (LOOP . (relation . 2)) (DO . (relation 
. 2)) (XOR . (relation . 2)) (OR . (relation . 2)) (AND . (relation . 2)) (IS . 
(relation . 2)) (WITH . (relation . 2)) (SEMICOLON . (relation . 2)) (THEN . 
(relation . 2)) (RANGE . (relation . 2)) (DIGITS . (relation . 2)) 
(EQUAL_GREATER . (relation . 2)) (ELSE . (relation . 2)) (ELSIF . (relation . 
2)) (RIGHT_PAREN . (relation . 2)) (COMMA . (relation . 2)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (AND . (choice_relation_and_then_list . 0)) 
(EQUAL_GREATER . (choice_relation_and_then_list . 0)) (BAR . 
(choice_relation_and_then_list . 0)))
       ((default . error) (OR . (choice_relation_or_else_list . 0)) 
(EQUAL_GREATER . (choice_relation_or_else_list . 0)) (BAR . 
(choice_relation_or_else_list . 0)))
       ((default . error) (OR . (choice_relation_or_else_list . 1)) 
(EQUAL_GREATER . (choice_relation_or_else_list . 1)) (BAR . 
(choice_relation_or_else_list . 1)))
       ((default . error) (AND . (choice_relation_and_then_list . 1)) 
(EQUAL_GREATER . (choice_relation_and_then_list . 1)) (BAR . 
(choice_relation_and_then_list . 1)))
-      ((default . error) (RENAMES .  739))
       ((default . error) (RENAMES .  738))
+      ((default . error) (RENAMES .  737))
       ((default . error) (ACCESS .  225) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46))
-      ((default . error) (LEFT_PAREN .  209) (RECORD .  734))
-      ((default . error) (AT .  733))
+      ((default . error) (LEFT_PAREN .  209) (RECORD .  733))
+      ((default . error) (AT .  732))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (DOT .  84) (TICK .  85) (IS . ( 730 
(aspect_specification_opt . 0))) (WITH .  104) (LEFT_PAREN .  103))
+      ((default . error) (DOT .  84) (TICK .  85) (IS . ( 729 
(aspect_specification_opt . 0))) (WITH .  104) (LEFT_PAREN .  103))
       ((default . error) (WITH . (discriminant_part_opt . 0)) (IS . 
(discriminant_part_opt . 0)) (LEFT_PAREN .  188))
-      ((default . error) (IS . ( 728 (aspect_specification_opt . 0))) (WITH .  
104))
-      ((default . error) (IS .  727))
-      ((default . error) (NOT .  724) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
+      ((default . error) (IS . ( 727 (aspect_specification_opt . 0))) (WITH .  
104))
+      ((default . error) (IS .  726))
+      ((default . error) (NOT .  723) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
       ((default . error) (WITH . (discriminant_part_opt . 0)) (IS . 
(discriminant_part_opt . 0)) (SEMICOLON . (discriminant_part_opt . 0)) 
(LEFT_PAREN .  188))
-      ((default . error) (IS . ( 722 (aspect_specification_opt . 0))) (WITH .  
104))
-      ((default . error) (SEMICOLON .  720) (IS .  721))
+      ((default . error) (IS . ( 721 (aspect_specification_opt . 0))) (WITH .  
104))
+      ((default . error) (SEMICOLON .  719) (IS .  720))
       ((default . error) (END . (incomplete_type_declaration . 1)) (PRIVATE . 
(incomplete_type_declaration . 1)) (USE . (incomplete_type_declaration . 1)) 
(TYPE . (incomplete_type_declaration . 1)) (TASK . (incomplete_type_declaration 
. 1)) (SUBTYPE . (incomplete_type_declaration . 1)) (PROTECTED . 
(incomplete_type_declaration . 1)) (PROCEDURE . (incomplete_type_declaration . 
1)) (PRAGMA . (incomplete_type_declaration . 1)) (PACKAGE . 
(incomplete_type_declaration . 1)) (OVERRIDING . (inc [...]
-      ((default . error) (IS .  719))
-      ((default . error) (END .  718))
+      ((default . error) (IS .  718))
+      ((default . error) (END .  717))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(package_specification . 1)) (LEFT_PAREN .  103))
-      ((default . error) (COLON_EQUAL .  717))
-      ((default . error) (SEMICOLON .  716))
-      ((default . error) (IDENTIFIER . (constant_opt . 0)) (STRING_LITERAL . 
(constant_opt . 0)) (CHARACTER_LITERAL . (constant_opt . 0)) (NOT . 
(constant_opt . 0)) (ACCESS . (constant_opt . 0)) (ARRAY . (constant_opt . 0)) 
(CONSTANT .  714))
-      ((default . error) (SEPARATE .  713) (ABSTRACT .  712))
+      ((default . error) (COLON_EQUAL .  716))
+      ((default . error) (SEMICOLON .  715))
+      ((default . error) (IDENTIFIER . (constant_opt . 0)) (STRING_LITERAL . 
(constant_opt . 0)) (CHARACTER_LITERAL . (constant_opt . 0)) (NOT . 
(constant_opt . 0)) (ACCESS . (constant_opt . 0)) (ARRAY . (constant_opt . 0)) 
(CONSTANT .  713))
+      ((default . error) (SEPARATE .  712) (ABSTRACT .  711))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (NULL .  710))
-      ((default . error) (WITH . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  708))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (NULL .  709))
+      ((default . error) (WITH . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  707))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (SEMICOLON . (name_opt . 0)) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (LOOP . (relation_and_then_list . 0)) (DO . 
(relation_and_then_list . 0)) (AND . (relation_and_then_list . 0)) (IS . 
(relation_and_then_list . 0)) (WITH . (relation_and_then_list . 0)) (SEMICOLON 
. (relation_and_then_list . 0)) (THEN . (relation_and_then_list . 0)) (RANGE . 
(relation_and_then_list . 0)) (COMMA . (relation_and_then_list . 0)) 
(RIGHT_PAREN . (relation_and_then_list . 0)) (DIGITS . (relation_and_then_list 
. 0)) (EQUAL_GREATER . (relation_and_then_li [...]
       ((default . error) (LOOP . (relation_or_else_list . 0)) (DO . 
(relation_or_else_list . 0)) (OR . (relation_or_else_list . 0)) (IS . 
(relation_or_else_list . 0)) (WITH . (relation_or_else_list . 0)) (SEMICOLON . 
(relation_or_else_list . 0)) (THEN . (relation_or_else_list . 0)) (RANGE . 
(relation_or_else_list . 0)) (COMMA . (relation_or_else_list . 0)) (RIGHT_PAREN 
. (relation_or_else_list . 0)) (DIGITS . (relation_or_else_list . 0)) 
(EQUAL_GREATER . (relation_or_else_list . 0)) (ELS [...]
       ((default . error) (LOOP . (relation_or_else_list . 1)) (DO . 
(relation_or_else_list . 1)) (OR . (relation_or_else_list . 1)) (IS . 
(relation_or_else_list . 1)) (WITH . (relation_or_else_list . 1)) (SEMICOLON . 
(relation_or_else_list . 1)) (THEN . (relation_or_else_list . 1)) (RANGE . 
(relation_or_else_list . 1)) (COMMA . (relation_or_else_list . 1)) (RIGHT_PAREN 
. (relation_or_else_list . 1)) (DIGITS . (relation_or_else_list . 1)) 
(EQUAL_GREATER . (relation_or_else_list . 1)) (ELS [...]
       ((default . error) (LOOP . (relation_and_then_list . 1)) (DO . 
(relation_and_then_list . 1)) (AND . (relation_and_then_list . 1)) (IS . 
(relation_and_then_list . 1)) (WITH . (relation_and_then_list . 1)) (SEMICOLON 
. (relation_and_then_list . 1)) (THEN . (relation_and_then_list . 1)) (RANGE . 
(relation_and_then_list . 1)) (COMMA . (relation_and_then_list . 1)) 
(RIGHT_PAREN . (relation_and_then_list . 1)) (DIGITS . (relation_and_then_list 
. 1)) (EQUAL_GREATER . (relation_and_then_li [...]
-      ((default . error) (WHEN .  702))
-      ((default . error) (OF .  701) (COLON .  699) (IN .  700))
-      ((default . error) (EQUAL_GREATER .  698))
+      ((default . error) (WHEN .  701))
+      ((default . error) (OF .  700) (COLON .  698) (IN .  699))
+      ((default . error) (EQUAL_GREATER .  697))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (IS . (aspect_specification_opt . 0)) (WITH .  104))
       ((default . error) (IS . (aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (IDENTIFIER .  693))
-      ((default . error) (COLON .  692))
-      ((default . error) (IDENTIFIER .  691))
+      ((default . error) (IDENTIFIER .  692))
+      ((default . error) (COLON .  691))
+      ((default . error) (IDENTIFIER .  690))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (BEGIN . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (UNTIL .  685) (PLUS .  136) (MINUS .  135) (ABS .  
138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (WHEN . (identifier_opt . 0)) (SEMICOLON . 
(identifier_opt . 0)) (IDENTIFIER .  683))
-      ((default . error) (LOOP . (iterator_specification_opt . 0)) (IDENTIFIER 
.  593))
-      ((default . error) (IDENTIFIER .  680))
+      ((default . error) (UNTIL .  684) (PLUS .  136) (MINUS .  135) (ABS .  
138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
+      ((default . error) (WHEN . (identifier_opt . 0)) (SEMICOLON . 
(identifier_opt . 0)) (IDENTIFIER .  682))
+      ((default . error) (LOOP . (iterator_specification_opt . 0)) (IDENTIFIER 
.  592))
+      ((default . error) (IDENTIFIER .  679))
       ((default . error) (THEN . (expression_opt . 0)) (PLUS .  136) (MINUS .  
135) (ABS .  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
-      ((default . error) (SEMICOLON .  677))
-      ((default . error) (SEMICOLON .  675) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (SEMICOLON .  676))
+      ((default . error) (SEMICOLON .  674) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (SEMICOLON .  669) (DO . 
(extended_return_object_declaration_opt . 0)) (PLUS .  136) (MINUS .  135) (ABS 
.  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  670) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (ELSE . (select_alternative_list_opt . 0)) (END . 
(select_alternative_list_opt . 0)) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (DELAY .  606) (WHEN .  658) (TERMINATE .  657) (ACCEPT 
.  601))
+      ((default . error) (SEMICOLON .  668) (DO . 
(extended_return_object_declaration_opt . 0)) (PLUS .  136) (MINUS .  135) (ABS 
.  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  669) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
+      ((default . error) (ELSE . (select_alternative_list_opt . 0)) (END . 
(select_alternative_list_opt . 0)) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (DELAY .  605) (WHEN .  657) (TERMINATE .  656) (ACCEPT 
.  600))
       ((default . error) (LOOP . (expression_opt . 0)) (PLUS .  136) (MINUS .  
135) (ABS .  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (OR . (compound_statement . 5)) (THEN . 
(compound_statement . 5)) (WHEN . (compound_statement . 5)) (EXCEPTION . 
(compound_statement . 5)) (END . (compound_statement . 5)) (LESS_LESS . 
(compound_statement . 5)) (IDENTIFIER . (compound_statement . 5)) 
(STRING_LITERAL . (compound_statement . 5)) (CHARACTER_LITERAL . 
(compound_statement . 5)) (ACCEPT . (compound_statement . 5)) (ABORT . 
(compound_statement . 5)) (BEGIN . (compound_statement . 5)) (CASE . 
(compound_s [...]
       ((default . error) (OR . (simple_statement . 1)) (THEN . 
(simple_statement . 1)) (WHEN . (simple_statement . 1)) (EXCEPTION . 
(simple_statement . 1)) (END . (simple_statement . 1)) (LESS_LESS . 
(simple_statement . 1)) (IDENTIFIER . (simple_statement . 1)) (STRING_LITERAL . 
(simple_statement . 1)) (CHARACTER_LITERAL . (simple_statement . 1)) (ACCEPT . 
(simple_statement . 1)) (ABORT . (simple_statement . 1)) (BEGIN . 
(simple_statement . 1)) (CASE . (simple_statement . 1)) (DECLARE .  [...]
@@ -2195,182 +2185,180 @@
       ((default . error) (OR . (simple_statement . 7)) (THEN . 
(simple_statement . 7)) (WHEN . (simple_statement . 7)) (EXCEPTION . 
(simple_statement . 7)) (END . (simple_statement . 7)) (LESS_LESS . 
(simple_statement . 7)) (IDENTIFIER . (simple_statement . 7)) (STRING_LITERAL . 
(simple_statement . 7)) (CHARACTER_LITERAL . (simple_statement . 7)) (ACCEPT . 
(simple_statement . 7)) (ABORT . (simple_statement . 7)) (BEGIN . 
(simple_statement . 7)) (CASE . (simple_statement . 7)) (DECLARE .  [...]
       ((default . error) (OR . (simple_statement . 2)) (THEN . 
(simple_statement . 2)) (WHEN . (simple_statement . 2)) (EXCEPTION . 
(simple_statement . 2)) (END . (simple_statement . 2)) (LESS_LESS . 
(simple_statement . 2)) (IDENTIFIER . (simple_statement . 2)) (STRING_LITERAL . 
(simple_statement . 2)) (CHARACTER_LITERAL . (simple_statement . 2)) (ACCEPT . 
(simple_statement . 2)) (ABORT . (simple_statement . 2)) (BEGIN . 
(simple_statement . 2)) (CASE . (simple_statement . 2)) (DECLARE .  [...]
       ((default . error) (OR . (compound_statement . 4)) (THEN . 
(compound_statement . 4)) (WHEN . (compound_statement . 4)) (EXCEPTION . 
(compound_statement . 4)) (END . (compound_statement . 4)) (LESS_LESS . 
(compound_statement . 4)) (IDENTIFIER . (compound_statement . 4)) 
(STRING_LITERAL . (compound_statement . 4)) (CHARACTER_LITERAL . 
(compound_statement . 4)) (ACCEPT . (compound_statement . 4)) (ABORT . 
(compound_statement . 4)) (BEGIN . (compound_statement . 4)) (CASE . 
(compound_s [...]
-      ((default . error) (END .  655))
+      ((default . error) (END .  654))
       ((default . error) (OR . (compound_statement . 0)) (THEN . 
(compound_statement . 0)) (WHEN . (compound_statement . 0)) (EXCEPTION . 
(compound_statement . 0)) (END . (compound_statement . 0)) (LESS_LESS . 
(compound_statement . 0)) (IDENTIFIER . (compound_statement . 0)) 
(STRING_LITERAL . (compound_statement . 0)) (CHARACTER_LITERAL . 
(compound_statement . 0)) (ACCEPT . (compound_statement . 0)) (ABORT . 
(compound_statement . 0)) (BEGIN . (compound_statement . 0)) (CASE . 
(compound_s [...]
-      ((default . error) (LOOP .  654))
-      ((default . error) (NULL .  612) (GOTO .  609) (ABORT .  602) (ACCEPT .  
601) (DECLARE .  605) (BEGIN .  603) (LOOP .  611) (CASE .  604) (IF .  610) 
(PRAGMA .  7) (RAISE .  613) (DELAY .  606) (REQUEUE .  614) (RETURN .  615) 
(EXIT .  607) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  
46) (WHILE .  617) (FOR .  608) (SELECT .  616))
+      ((default . error) (LOOP .  653))
+      ((default . error) (NULL .  611) (GOTO .  608) (ABORT .  601) (ACCEPT .  
600) (DECLARE .  604) (BEGIN .  602) (LOOP .  610) (CASE .  603) (IF .  609) 
(PRAGMA .  7) (RAISE .  612) (DELAY .  605) (REQUEUE .  613) (RETURN .  614) 
(EXIT .  606) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  
46) (WHILE .  616) (FOR .  607) (SELECT .  615))
       ((default . error) (OR . (compound_statement . 2)) (THEN . 
(compound_statement . 2)) (WHEN . (compound_statement . 2)) (EXCEPTION . 
(compound_statement . 2)) (END . (compound_statement . 2)) (LESS_LESS . 
(compound_statement . 2)) (IDENTIFIER . (compound_statement . 2)) 
(STRING_LITERAL . (compound_statement . 2)) (CHARACTER_LITERAL . 
(compound_statement . 2)) (ACCEPT . (compound_statement . 2)) (ABORT . 
(compound_statement . 2)) (BEGIN . (compound_statement . 2)) (CASE . 
(compound_s [...]
-      ((default . error) (DOT .  84) (SEMICOLON .  651) (TICK .  85) 
(COLON_EQUAL .  650) (LEFT_PAREN .  103))
+      ((default . error) (DOT .  84) (SEMICOLON .  650) (TICK .  85) 
(COLON_EQUAL .  649) (LEFT_PAREN .  103))
       ((default . error) (OR . (simple_statement . 10)) (THEN . 
(simple_statement . 10)) (WHEN . (simple_statement . 10)) (EXCEPTION . 
(simple_statement . 10)) (END . (simple_statement . 10)) (LESS_LESS . 
(simple_statement . 10)) (IDENTIFIER . (simple_statement . 10)) (STRING_LITERAL 
. (simple_statement . 10)) (CHARACTER_LITERAL . (simple_statement . 10)) 
(ACCEPT . (simple_statement . 10)) (ABORT . (simple_statement . 10)) (BEGIN . 
(simple_statement . 10)) (CASE . (simple_statement . 10) [...]
       ((default . error) (OR . (simple_statement . 4)) (THEN . 
(simple_statement . 4)) (WHEN . (simple_statement . 4)) (EXCEPTION . 
(simple_statement . 4)) (END . (simple_statement . 4)) (LESS_LESS . 
(simple_statement . 4)) (IDENTIFIER . (simple_statement . 4)) (STRING_LITERAL . 
(simple_statement . 4)) (CHARACTER_LITERAL . (simple_statement . 4)) (ACCEPT . 
(simple_statement . 4)) (ABORT . (simple_statement . 4)) (BEGIN . 
(simple_statement . 4)) (CASE . (simple_statement . 4)) (DECLARE .  [...]
       ((default . error) (OR . (simple_statement . 9)) (THEN . 
(simple_statement . 9)) (WHEN . (simple_statement . 9)) (EXCEPTION . 
(simple_statement . 9)) (END . (simple_statement . 9)) (LESS_LESS . 
(simple_statement . 9)) (IDENTIFIER . (simple_statement . 9)) (STRING_LITERAL . 
(simple_statement . 9)) (CHARACTER_LITERAL . (simple_statement . 9)) (ACCEPT . 
(simple_statement . 9)) (ABORT . (simple_statement . 9)) (BEGIN . 
(simple_statement . 9)) (CASE . (simple_statement . 9)) (DECLARE .  [...]
       ((default . error) (OR . (simple_statement . 6)) (THEN . 
(simple_statement . 6)) (WHEN . (simple_statement . 6)) (EXCEPTION . 
(simple_statement . 6)) (END . (simple_statement . 6)) (LESS_LESS . 
(simple_statement . 6)) (IDENTIFIER . (simple_statement . 6)) (STRING_LITERAL . 
(simple_statement . 6)) (CHARACTER_LITERAL . (simple_statement . 6)) (ACCEPT . 
(simple_statement . 6)) (ABORT . (simple_statement . 6)) (BEGIN . 
(simple_statement . 6)) (CASE . (simple_statement . 6)) (DECLARE .  [...]
       ((default . error) (OR . (select_statement . 0)) (THEN . 
(select_statement . 0)) (WHEN . (select_statement . 0)) (EXCEPTION . 
(select_statement . 0)) (END . (select_statement . 0)) (LESS_LESS . 
(select_statement . 0)) (IDENTIFIER . (select_statement . 0)) (STRING_LITERAL . 
(select_statement . 0)) (CHARACTER_LITERAL . (select_statement . 0)) (ACCEPT . 
(select_statement . 0)) (ABORT . (select_statement . 0)) (BEGIN . 
(select_statement . 0)) (CASE . (select_statement . 0)) (DECLARE .  [...]
       ((default . error) (OR . (compound_statement . 6)) (THEN . 
(compound_statement . 6)) (WHEN . (compound_statement . 6)) (EXCEPTION . 
(compound_statement . 6)) (END . (compound_statement . 6)) (LESS_LESS . 
(compound_statement . 6)) (IDENTIFIER . (compound_statement . 6)) 
(STRING_LITERAL . (compound_statement . 6)) (CHARACTER_LITERAL . 
(compound_statement . 6)) (ACCEPT . (compound_statement . 6)) (ABORT . 
(compound_statement . 6)) (BEGIN . (compound_statement . 6)) (CASE . 
(compound_s [...]
-      ((default . error) (WHEN . (sequence_of_statements_opt . 1)) (THEN . 
(sequence_of_statements_opt . 1)) (OR . (sequence_of_statements_opt . 1)) 
(ELSIF . (sequence_of_statements_opt . 1)) (ELSE . (sequence_of_statements_opt 
. 1)) (END . (sequence_of_statements_opt . 1)) (EXCEPTION . 
(sequence_of_statements_opt . 1)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_op [...]
-      ((default . error) (END . (handled_sequence_of_statements . 1)) 
(EXCEPTION .  648))
+      ((default . error) (WHEN . (sequence_of_statements_opt . 1)) (THEN . 
(sequence_of_statements_opt . 1)) (OR . (sequence_of_statements_opt . 1)) 
(ELSIF . (sequence_of_statements_opt . 1)) (ELSE . (sequence_of_statements_opt 
. 1)) (END . (sequence_of_statements_opt . 1)) (EXCEPTION . 
(sequence_of_statements_opt . 1)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_op [...]
+      ((default . error) (END . (handled_sequence_of_statements . 1)) 
(EXCEPTION .  647))
       ((default . error) (OR . (simple_statement . 5)) (THEN . 
(simple_statement . 5)) (WHEN . (simple_statement . 5)) (EXCEPTION . 
(simple_statement . 5)) (END . (simple_statement . 5)) (LESS_LESS . 
(simple_statement . 5)) (IDENTIFIER . (simple_statement . 5)) (STRING_LITERAL . 
(simple_statement . 5)) (CHARACTER_LITERAL . (simple_statement . 5)) (ACCEPT . 
(simple_statement . 5)) (ABORT . (simple_statement . 5)) (BEGIN . 
(simple_statement . 5)) (CASE . (simple_statement . 5)) (DECLARE .  [...]
       ((default . error) (WHEN . (sequence_of_statements . 0)) (THEN . 
(sequence_of_statements . 0)) (OR . (sequence_of_statements . 0)) (ELSIF . 
(sequence_of_statements . 0)) (ELSE . (sequence_of_statements . 0)) (EXCEPTION 
. (sequence_of_statements . 0)) (END . (sequence_of_statements . 0)) (LESS_LESS 
. (sequence_of_statements . 0)) (IDENTIFIER . (sequence_of_statements . 0)) 
(STRING_LITERAL . (sequence_of_statements . 0)) (CHARACTER_LITERAL . 
(sequence_of_statements . 0)) (ACCEPT . (s [...]
       ((default . error) (OR . (select_statement . 1)) (THEN . 
(select_statement . 1)) (WHEN . (select_statement . 1)) (EXCEPTION . 
(select_statement . 1)) (END . (select_statement . 1)) (LESS_LESS . 
(select_statement . 1)) (IDENTIFIER . (select_statement . 1)) (STRING_LITERAL . 
(select_statement . 1)) (CHARACTER_LITERAL . (select_statement . 1)) (ACCEPT . 
(select_statement . 1)) (ABORT . (select_statement . 1)) (BEGIN . 
(select_statement . 1)) (CASE . (select_statement . 1)) (DECLARE .  [...]
-      ((default . error) (SEMICOLON .  647))
       ((default . error) (SEMICOLON .  646))
+      ((default . error) (SEMICOLON .  645))
       ((default . error) (TYPE . (generic_instantiation . 2)) (TASK . 
(generic_instantiation . 2)) (SUBTYPE . (generic_instantiation . 2)) (PROTECTED 
. (generic_instantiation . 2)) (FOR . (generic_instantiation . 2)) (ENTRY . 
(generic_instantiation . 2)) (IDENTIFIER . (generic_instantiation . 2)) (BEGIN 
. (generic_instantiation . 2)) (END . (generic_instantiation . 2)) (WITH . 
(generic_instantiation . 2)) (USE . (generic_instantiation . 2)) (SEPARATE . 
(generic_instantiation . 2)) (PROCE [...]
       ((default . error) (TYPE . (generic_instantiation . 1)) (TASK . 
(generic_instantiation . 1)) (SUBTYPE . (generic_instantiation . 1)) (PROTECTED 
. (generic_instantiation . 1)) (FOR . (generic_instantiation . 1)) (ENTRY . 
(generic_instantiation . 1)) (IDENTIFIER . (generic_instantiation . 1)) (BEGIN 
. (generic_instantiation . 1)) (END . (generic_instantiation . 1)) (WITH . 
(generic_instantiation . 1)) (USE . (generic_instantiation . 1)) (SEPARATE . 
(generic_instantiation . 1)) (PROCE [...]
-      ((default . error) (END . (exception_handler_list_opt . 0)) (WHEN .  
920))
+      ((default . error) (END . (exception_handler_list_opt . 0)) (WHEN .  
916))
       ((default . error) (OR . (sequence_of_statements . 1)) (THEN . 
(sequence_of_statements . 1)) (WHEN . (sequence_of_statements . 1)) (WHILE . 
(sequence_of_statements . 1)) (SELECT . (sequence_of_statements . 1)) (RETURN . 
(sequence_of_statements . 1)) (REQUEUE . (sequence_of_statements . 1)) (RAISE . 
(sequence_of_statements . 1)) (PRAGMA . (sequence_of_statements . 1)) (NULL . 
(sequence_of_statements . 1)) (LOOP . (sequence_of_statements . 1)) (IF . 
(sequence_of_statements . 1)) (GOT [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (WHEN . (procedure_call_statement . 0)) (OR . 
(procedure_call_statement . 0)) (THEN . (procedure_call_statement . 0)) (ELSIF 
. (procedure_call_statement . 0)) (ELSE . (procedure_call_statement . 0)) 
(WHILE . (procedure_call_statement . 0)) (SELECT . (procedure_call_statement . 
0)) (RETURN . (procedure_call_statement . 0)) (REQUEUE . 
(procedure_call_statement . 0)) (RAISE . (procedure_call_statement . 0)) 
(PRAGMA . (procedure_call_statement . 0)) (NULL . (procedur [...]
       ((default . error) (OR . (statement . 1)) (THEN . (statement . 1)) (WHEN 
. (statement . 1)) (EXCEPTION . (statement . 1)) (END . (statement . 1)) 
(LESS_LESS . (statement . 1)) (IDENTIFIER . (statement . 1)) (STRING_LITERAL . 
(statement . 1)) (CHARACTER_LITERAL . (statement . 1)) (ACCEPT . (statement . 
1)) (ABORT . (statement . 1)) (BEGIN . (statement . 1)) (CASE . (statement . 
1)) (DECLARE . (statement . 1)) (DELAY . (statement . 1)) (EXIT . (statement . 
1)) (FOR . (statement . 1)) [...]
       ((default . error) (OR . (statement . 0)) (THEN . (statement . 0)) (WHEN 
. (statement . 0)) (EXCEPTION . (statement . 0)) (END . (statement . 0)) 
(LESS_LESS . (statement . 0)) (IDENTIFIER . (statement . 0)) (STRING_LITERAL . 
(statement . 0)) (CHARACTER_LITERAL . (statement . 0)) (ACCEPT . (statement . 
0)) (ABORT . (statement . 0)) (BEGIN . (statement . 0)) (CASE . (statement . 
0)) (DECLARE . (statement . 0)) (DELAY . (statement . 0)) (EXIT . (statement . 
0)) (FOR . (statement . 0)) [...]
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
       ((default . error) (SEMICOLON . (name_opt . 0)) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (LOOP . (iteration_scheme . 0)))
-      ((default . error) (SEMICOLON .  916))
+      ((default . error) (SEMICOLON .  912))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
       ((default . error) (ELSE . (select_alternative . 3)) (OR . 
(select_alternative . 3)) (END . (select_alternative . 3)))
-      ((default . error) (OR . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(THEN . (sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTE [...]
-      ((default . error) (ELSE .  911) (OR .  912))
-      ((default . error) (DOT .  84) (SEMICOLON .  651) (TICK .  85) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(THEN . (sequence_of_statements_opt . 0)) (LEFT_PAREN .  103) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (la [...]
-      ((default . error) (OR . (sequence_of_statements_opt . 0)) (ELSE . 
(sequence_of_statements_opt . 0)) (THEN . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (la [...]
+      ((default . error) (OR . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(THEN . (sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTE [...]
+      ((default . error) (ELSE .  907) (OR .  908))
+      ((default . error) (DOT .  84) (SEMICOLON .  650) (TICK .  85) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(THEN . (sequence_of_statements_opt . 0)) (LEFT_PAREN .  103) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (la [...]
+      ((default . error) (OR . (sequence_of_statements_opt . 0)) (ELSE . 
(sequence_of_statements_opt . 0)) (THEN . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (la [...]
       ((default . error) (ELSE . (select_alternative_list . 0)) (END . 
(select_alternative_list . 0)) (OR . (select_alternative_list . 0)))
-      ((default . error) (ELSE . (select_alternative_list_opt . 1)) (END . 
(select_alternative_list_opt . 1)) (OR .  908))
-      ((default . error) (ELSE .  906) (END .  907))
-      ((default . error) (THEN .  905))
+      ((default . error) (ELSE . (select_alternative_list_opt . 1)) (END . 
(select_alternative_list_opt . 1)) (OR .  904))
+      ((default . error) (ELSE .  902) (END .  903))
+      ((default . error) (THEN .  901))
       ((default . error) (WHEN . (simple_return_statement . 0)) (THEN . 
(simple_return_statement . 0)) (OR . (simple_return_statement . 0)) (ELSIF . 
(simple_return_statement . 0)) (ELSE . (simple_return_statement . 0)) (WHILE . 
(simple_return_statement . 0)) (SELECT . (simple_return_statement . 0)) (RETURN 
. (simple_return_statement . 0)) (REQUEUE . (simple_return_statement . 0)) 
(RAISE . (simple_return_statement . 0)) (PRAGMA . (simple_return_statement . 
0)) (NULL . (simple_return_state [...]
-      ((default . error) (COLON .  904) (STAR_STAR . (name . 0)) (REM . (name 
. 0)) (MOD . (name . 0)) (STAR . (name . 0)) (SLASH . (name . 0)) (SEMICOLON . 
(name . 0)) (SLASH_EQUAL . (name . 0)) (LESS_EQUAL . (name . 0)) (LESS . (name 
. 0)) (GREATER_EQUAL . (name . 0)) (GREATER . (name . 0)) (EQUAL . (name . 0)) 
(NOT . (name . 0)) (IN . (name . 0)) (AMPERSAND . (name . 0)) (MINUS . (name . 
0)) (PLUS . (name . 0)) (LEFT_PAREN . (name . 0)) (AND . (name . 0)) (OR . 
(name . 0)) (XOR . (nam [...]
-      ((default . error) (SEMICOLON .  903))
-      ((default . error) (DO . (extended_return_object_declaration_opt . 1)) 
(SEMICOLON .  902))
-      ((default . error) (DO .  901))
-      ((default . error) (WITH .  900) (DOT .  84) (TICK .  85) (SEMICOLON .  
899) (LEFT_PAREN .  103))
+      ((default . error) (COLON .  900) (STAR_STAR . (name . 0)) (REM . (name 
. 0)) (MOD . (name . 0)) (STAR . (name . 0)) (SLASH . (name . 0)) (SEMICOLON . 
(name . 0)) (SLASH_EQUAL . (name . 0)) (LESS_EQUAL . (name . 0)) (LESS . (name 
. 0)) (GREATER_EQUAL . (name . 0)) (GREATER . (name . 0)) (EQUAL . (name . 0)) 
(NOT . (name . 0)) (IN . (name . 0)) (AMPERSAND . (name . 0)) (MINUS . (name . 
0)) (PLUS . (name . 0)) (LEFT_PAREN . (name . 0)) (AND . (name . 0)) (OR . 
(name . 0)) (XOR . (nam [...]
+      ((default . error) (SEMICOLON .  899))
+      ((default . error) (DO . (extended_return_object_declaration_opt . 1)) 
(SEMICOLON .  898))
+      ((default . error) (DO .  897))
+      ((default . error) (WITH .  896) (DOT .  84) (TICK .  85) (SEMICOLON .  
895) (LEFT_PAREN .  103))
       ((default . error) (WHEN . (raise_statement . 0)) (THEN . 
(raise_statement . 0)) (OR . (raise_statement . 0)) (ELSIF . (raise_statement . 
0)) (ELSE . (raise_statement . 0)) (WHILE . (raise_statement . 0)) (SELECT . 
(raise_statement . 0)) (RETURN . (raise_statement . 0)) (REQUEUE . 
(raise_statement . 0)) (RAISE . (raise_statement . 0)) (PRAGMA . 
(raise_statement . 0)) (NULL . (raise_statement . 0)) (LOOP . (raise_statement 
. 0)) (IF . (raise_statement . 0)) (GOTO . (raise_statement  [...]
-      ((default . error) (WITH .  898) (DOT .  84) (TICK .  85) (SEMICOLON .  
897) (LEFT_PAREN .  103))
+      ((default . error) (WITH .  894) (DOT .  84) (TICK .  85) (SEMICOLON .  
893) (LEFT_PAREN .  103))
       ((default . error) (WHEN . (simple_statement . 0)) (THEN . 
(simple_statement . 0)) (OR . (simple_statement . 0)) (ELSIF . 
(simple_statement . 0)) (ELSE . (simple_statement . 0)) (WHILE . 
(simple_statement . 0)) (SELECT . (simple_statement . 0)) (RETURN . 
(simple_statement . 0)) (REQUEUE . (simple_statement . 0)) (RAISE . 
(simple_statement . 0)) (PRAGMA . (simple_statement . 0)) (NULL . 
(simple_statement . 0)) (LOOP . (simple_statement . 0)) (IF . (simple_statement 
. 0)) (GOTO . (si [...]
-      ((default . error) (END .  896))
-      ((default . error) (THEN .  895))
-      ((default . error) (SEMICOLON .  894))
+      ((default . error) (END .  892))
+      ((default . error) (THEN .  891))
+      ((default . error) (SEMICOLON .  890))
       ((default . error) (LOOP . (iterator_specification_opt . 1)))
       ((default . error) (LOOP . (iteration_scheme . 1)))
       ((default . error) (WHEN . (identifier_opt . 1)) (SEMICOLON . 
(identifier_opt . 1)))
-      ((default . error) (WHEN .  893) (SEMICOLON .  892))
+      ((default . error) (WHEN .  889) (SEMICOLON .  888))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  890))
-      ((default . error) (BEGIN .  889))
-      ((default . error) (IS .  888))
-      ((default . error) (END .  887))
-      ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON .  886) 
(LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON . (actual_parameter_part_opt . 0)) (DO . 
(actual_parameter_part_opt . 0)) (LEFT_PAREN . ((actual_parameter_part_opt . 0) 
 883)))
+      ((default . error) (SEMICOLON .  886))
+      ((default . error) (BEGIN .  885))
+      ((default . error) (IS .  884))
+      ((default . error) (END .  883))
+      ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON .  882) 
(LEFT_PAREN .  103))
+      ((default . error) (SEMICOLON . (actual_parameter_part_opt . 0)) (DO . 
(actual_parameter_part_opt . 0)) (LEFT_PAREN . ((actual_parameter_part_opt . 0) 
 879)))
       ((default . error) (REQUEUE . (label_opt . 2)) (RAISE . (label_opt . 2)) 
(PRAGMA . (label_opt . 2)) (NULL . (label_opt . 2)) (GOTO . (label_opt . 2)) 
(EXIT . (label_opt . 2)) (DELAY . (label_opt . 2)) (ABORT . (label_opt . 2)) 
(CHARACTER_LITERAL . (label_opt . 2)) (STRING_LITERAL . (label_opt . 2)) 
(IDENTIFIER . (label_opt . 2)) (WHILE . (label_opt . 2)) (SELECT . (label_opt . 
2)) (RETURN . (label_opt . 2)) (LOOP . (label_opt . 2)) (IF . (label_opt . 2)) 
(FOR . (label_opt . 2)) (DE [...]
-      ((default . error) (GREATER_GREATER .  882))
-      ((default . error) (IS .  881))
-      ((default . error) (IS .  880))
+      ((default . error) (GREATER_GREATER .  878))
+      ((default . error) (IS .  877))
+      ((default . error) (IS .  876))
       ((default . error) (COMMA . (pragma_argument_association . 2)) 
(RIGHT_PAREN . (pragma_argument_association . 2)))
-      ((default . error) (ELSE .  876) (RIGHT_PAREN . (if_expression . 3)) 
(ELSIF .  877))
+      ((default . error) (ELSE .  872) (RIGHT_PAREN . (if_expression . 3)) 
(ELSIF .  873))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (NOT .  724) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
-      ((default . error) (REVERSE .  872) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) 
(ABS .  138) (NOT .  750) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (REVERSE .  870) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (NOT .  723) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
+      ((default . error) (REVERSE .  868) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) 
(ABS .  138) (NOT .  746) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (REVERSE .  866) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . 
(discrete_choice_list . 0)) (OTHERS .  165) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) 
(ABS .  138) (NOT .  164) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (case_expression_alternative_list . 
0)) (COMMA . (case_expression_alternative_list . 0)))
-      ((default . error) (COMMA .  868) (RIGHT_PAREN . (case_expression . 0)))
+      ((default . error) (COMMA .  864) (RIGHT_PAREN . (case_expression . 0)))
       ((default . error) (DOT .  84) (SEMICOLON . (name_opt . 1)) (TICK .  85) 
(LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  867))
-      ((default . error) (END .  866))
-      ((default . error) (IDENTIFIER .  202) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  750) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (SEMICOLON .  863))
+      ((default . error) (END .  862))
+      ((default . error) (IDENTIFIER .  202) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  746) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104) (LEFT_PAREN .  103))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (ARRAY . (constant_opt . 1)) (IDENTIFIER . 
(constant_opt . 1)) (STRING_LITERAL . (constant_opt . 1)) (CHARACTER_LITERAL . 
(constant_opt . 1)) (ACCESS . (constant_opt . 1)) (NOT . (constant_opt . 1)))
-      ((default . error) (ARRAY .  467) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt . 0)) (NOT .  855))
+      ((default . error) (ARRAY .  467) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt . 0)) (NOT .  851))
       ((default . error) (USE . (exception_declaration . 0)) (TYPE . 
(exception_declaration . 0)) (TASK . (exception_declaration . 0)) (SUBTYPE . 
(exception_declaration . 0)) (PROTECTED . (exception_declaration . 0)) 
(PROCEDURE . (exception_declaration . 0)) (PRAGMA . (exception_declaration . 
0)) (PACKAGE . (exception_declaration . 0)) (OVERRIDING . 
(exception_declaration . 0)) (NOT . (exception_declaration . 0)) (GENERIC . 
(exception_declaration . 0)) (FUNCTION . (exception_declaration  [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (PRIVATE . (abstract_tagged_limited_opt . 0)) (NULL . 
(abstract_tagged_limited_opt . 0)) (RECORD . (abstract_tagged_limited_opt . 0)) 
(TAGGED .  842) (RANGE .  839) (MOD .  837) (DIGITS .  834) (DELTA .  833) 
(TASK .  479) (PROTECTED .  475) (SYNCHRONIZED .  841) (INTERFACE .  470) 
(ARRAY .  467) (LEFT_PAREN .  835) (ACCESS . (null_exclusion_opt . 0)) (NOT .  
198) (NEW . ((abstract_limited_synchronized_opt . 0) (abstract_limited_opt . 
0))) (LIMITED .  836) (ABSTR [...]
+      ((default . error) (SEMICOLON . (name_opt . 0)) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (PRIVATE . (abstract_tagged_limited_opt . 0)) (NULL . 
(abstract_tagged_limited_opt . 0)) (RECORD . (abstract_tagged_limited_opt . 0)) 
(TAGGED .  838) (RANGE .  836) (MOD .  834) (DIGITS .  831) (DELTA .  830) 
(TASK .  478) (PROTECTED .  474) (SYNCHRONIZED .  476) (INTERFACE .  470) 
(ARRAY .  467) (LEFT_PAREN .  832) (ACCESS . (null_exclusion_opt . 0)) (NOT .  
198) (NEW . ((abstract_limited_synchronized_opt . 0) (abstract_limited_opt . 
0))) (LIMITED .  833) (ABSTR [...]
       ((default . error) (BEGIN . (single_task_declaration . 2)) (IDENTIFIER . 
(single_task_declaration . 2)) (ENTRY . (single_task_declaration . 2)) (FOR . 
(single_task_declaration . 2)) (FUNCTION . (single_task_declaration . 2)) 
(GENERIC . (single_task_declaration . 2)) (NOT . (single_task_declaration . 2)) 
(OVERRIDING . (single_task_declaration . 2)) (PACKAGE . 
(single_task_declaration . 2)) (PRAGMA . (single_task_declaration . 2)) 
(PROCEDURE . (single_task_declaration . 2)) (PROTECTE [...]
-      ((default . error) (NEW .  829) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (SEPARATE .  828))
+      ((default . error) (NEW .  826) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
+      ((default . error) (SEPARATE .  825))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (IS . 
(aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (NULL .  826))
-      ((default . error) (DO . (subtype_indication . 3)) (OF . 
(subtype_indication . 3)) (AND . (subtype_indication . 3)) (SEMICOLON . 
(subtype_indication . 3)) (WITH . (subtype_indication . 3)) (COLON_EQUAL . 
(subtype_indication . 3)) (DOT .  84) (TICK .  85) (RANGE .  825) (LEFT_PAREN . 
 792))
+      ((default . error) (NULL .  823))
+      ((default . error) (DO . (subtype_indication . 3)) (OF . 
(subtype_indication . 3)) (AND . (subtype_indication . 3)) (SEMICOLON . 
(subtype_indication . 3)) (WITH . (subtype_indication . 3)) (COLON_EQUAL . 
(subtype_indication . 3)) (DOT .  84) (TICK .  85) (RANGE .  822) (LEFT_PAREN . 
 791))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (NEW .  821) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (SEPARATE .  820))
+      ((default . error) (NEW .  818) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
+      ((default . error) (SEPARATE .  817))
       ((default . error) (IS . (aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (SEPARATE .  818))
+      ((default . error) (SEPARATE .  815))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104) (LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  816))
+      ((default . error) (SEMICOLON .  813))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (IDENTIFIER . (mod_clause_opt . 0)) (AT .  813))
-      ((default . error) (SEMICOLON .  812))
-      ((default . error) (SEMICOLON .  811))
-      ((default . error) (DOT .  84) (TICK .  85) (RENAMES .  810) (LEFT_PAREN 
.  103))
+      ((default . error) (IDENTIFIER . (mod_clause_opt . 0)) (AT .  810))
+      ((default . error) (SEMICOLON .  809))
+      ((default . error) (SEMICOLON .  808))
+      ((default . error) (DOT .  84) (TICK .  85) (RENAMES .  807) (LEFT_PAREN 
.  103))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (XOR . (choice_relation . 0)) (OR . (choice_relation 
. 0)) (BAR . (choice_relation . 0)) (EQUAL_GREATER . (choice_relation . 0)) 
(AND . (choice_relation . 0)))
-      ((default . error) (RIGHT_PAREN .  807))
+      ((default . error) (RIGHT_PAREN .  804))
       ((default . error) (DO . (membership_choice_list . 1)) (LOOP . 
(membership_choice_list . 1)) (COMMA . (membership_choice_list . 1)) 
(RIGHT_PAREN . (membership_choice_list . 1)) (ELSIF . (membership_choice_list . 
1)) (ELSE . (membership_choice_list . 1)) (EQUAL_GREATER . 
(membership_choice_list . 1)) (DIGITS . (membership_choice_list . 1)) (RANGE . 
(membership_choice_list . 1)) (THEN . (membership_choice_list . 1)) (SEMICOLON 
. (membership_choice_list . 1)) (WITH . (membership_choic [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (ACCESS . (null_exclusion_opt . 1)) (IDENTIFIER .  
803) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (ACCESS . (null_exclusion_opt . 1)) (IDENTIFIER .  
800) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (NULL . (abstract_tagged_limited_opt . 1)) (RECORD . 
(abstract_tagged_limited_opt . 1)) (PRIVATE . (abstract_tagged_limited_opt . 
1)))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(formal_derived_type_definition . 6)) (WITH . (formal_derived_type_definition . 
6)) (LEFT_PAREN .  103))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (NULL .  800) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
+      ((default . error) (NULL .  799) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (discrete_subtype_definition_list . 
0)) (COMMA . (discrete_subtype_definition_list . 0)))
-      ((default . error) (COMMA .  798) (RIGHT_PAREN .  799))
+      ((default . error) (COMMA .  797) (RIGHT_PAREN .  798))
       ((default . error) (RIGHT_PAREN . (index_subtype_definition_list . 0)) 
(COMMA . (index_subtype_definition_list . 0)))
-      ((default . error) (COMMA .  796) (RIGHT_PAREN .  797))
-      ((default . error) (RIGHT_PAREN . (subtype_indication . 3)) (COMMA . 
(subtype_indication . 3)) (PLUS . (primary . 2)) (MINUS . (primary . 2)) 
(AMPERSAND . (primary . 2)) (DOT_DOT . (primary . 2)) (SLASH . (primary . 2)) 
(STAR . (primary . 2)) (MOD . (primary . 2)) (REM . (primary . 2)) (STAR_STAR . 
(primary . 2)) (DOT .  84) (TICK .  261) (RANGE .  793) (LEFT_PAREN .  792))
+      ((default . error) (COMMA .  795) (RIGHT_PAREN .  796))
+      ((default . error) (RIGHT_PAREN . (subtype_indication . 3)) (COMMA . 
(subtype_indication . 3)) (PLUS . (primary . 2)) (MINUS . (primary . 2)) 
(AMPERSAND . (primary . 2)) (DOT_DOT . (primary . 2)) (SLASH . (primary . 2)) 
(STAR . (primary . 2)) (MOD . (primary . 2)) (REM . (primary . 2)) (STAR_STAR . 
(primary . 2)) (DOT .  84) (TICK .  261) (RANGE .  792) (LEFT_PAREN .  791))
       ((default . error) (LOOP . (discrete_subtype_definition . 1)) 
(EQUAL_GREATER . (discrete_subtype_definition . 1)) (COMMA . 
(discrete_subtype_definition . 1)) (RIGHT_PAREN . (discrete_subtype_definition 
. 1)))
       ((default . error) (DOT_DOT .  250))
       ((default . error) (LOOP . (discrete_subtype_definition . 0)) 
(EQUAL_GREATER . (discrete_subtype_definition . 0)) (COMMA . 
(discrete_subtype_definition . 0)) (RIGHT_PAREN . (discrete_subtype_definition 
. 0)))
-      ((default . error) (BOX .  791))
+      ((default . error) (BOX .  790))
       ((default . error) (WITH . (formal_type_definition . 2)) (SEMICOLON . 
(formal_type_definition . 2)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (PACKAGE . (formal_type_declaration . 1)) (PROCEDURE 
. (formal_type_declaration . 1)) (FUNCTION . (formal_type_declaration . 1)) 
(IDENTIFIER . (formal_type_declaration . 1)) (PRAGMA . (formal_type_declaration 
. 1)) (TYPE . (formal_type_declaration . 1)) (WITH . (formal_type_declaration . 
1)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
+      ((default . error) (SEMICOLON . (formal_derived_type_definition . 3)) 
(WITH . ((formal_derived_type_definition . 3)  784)) (DOT .  84) (TICK .  85) 
(AND .  783) (LEFT_PAREN .  103))
       ((default . error) (PACKAGE . (formal_type_declaration . 0)) (PROCEDURE 
. (formal_type_declaration . 0)) (FUNCTION . (formal_type_declaration . 0)) 
(IDENTIFIER . (formal_type_declaration . 0)) (PRAGMA . (formal_type_declaration 
. 0)) (TYPE . (formal_type_declaration . 0)) (WITH . (formal_type_declaration . 
0)))
       ((default . error) (PACKAGE . (formal_subprogram_declaration . 2)) 
(PROCEDURE . (formal_subprogram_declaration . 2)) (FUNCTION . 
(formal_subprogram_declaration . 2)) (IDENTIFIER . 
(formal_subprogram_declaration . 2)) (PRAGMA . (formal_subprogram_declaration . 
2)) (TYPE . (formal_subprogram_declaration . 2)) (WITH . 
(formal_subprogram_declaration . 2)))
-      ((default . error) (BOX .  785) (IDENTIFIER .  45) (STRING_LITERAL .  
46) (CHARACTER_LITERAL .  163) (RIGHT_PAREN . ((association_opt . 0) 
(expression_opt . 0))) (COMMA . ((association_opt . 0) (expression_opt . 0))) 
(EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . (discrete_choice_list . 0)) 
(PLUS .  136) (MINUS .  135) (OTHERS .  165) (ABS .  138) (NOT .  164) (NULL .  
142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (BOX .  782) (IDENTIFIER .  45) (STRING_LITERAL .  
46) (CHARACTER_LITERAL .  163) (RIGHT_PAREN . ((association_opt . 0) 
(expression_opt . 0))) (COMMA . ((association_opt . 0) (expression_opt . 0))) 
(EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . (discrete_choice_list . 0)) 
(PLUS .  136) (MINUS .  135) (OTHERS .  165) (ABS .  138) (NOT .  164) (NULL .  
142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (PACKAGE . (formal_object_declaration . 1)) 
(PROCEDURE . (formal_object_declaration . 1)) (FUNCTION . 
(formal_object_declaration . 1)) (IDENTIFIER . (formal_object_declaration . 1)) 
(PRAGMA . (formal_object_declaration . 1)) (TYPE . (formal_object_declaration . 
1)) (WITH . (formal_object_declaration . 1)))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (SEMICOLON .  782))
+      ((default . error) (SEMICOLON .  779))
       ((default . error) (IDENTIFIER .  69))
       ((default . error) (RENAMES . (access_definition . 1)) (DO . 
(access_definition . 1)) (RIGHT_PAREN . (access_definition . 1)) (IS . 
(access_definition . 1)) (SEMICOLON . (access_definition . 1)) (WITH . 
(access_definition . 1)) (COLON_EQUAL . (access_definition . 1)))
       ((default . error) (RENAMES . (access_definition . 2)) (DO . 
(access_definition . 2)) (RIGHT_PAREN . (access_definition . 2)) (IS . 
(access_definition . 2)) (SEMICOLON . (access_definition . 2)) (WITH . 
(access_definition . 2)) (COLON_EQUAL . (access_definition . 2)))
       ((default . error) (SEMICOLON . (parameter_specification . 2)) 
(RIGHT_PAREN . (parameter_specification . 2)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (DO . (aggregate . 1)) (LOOP . (aggregate . 1)) 
(RENAMES . (aggregate . 1)) (USE . (aggregate . 1)) (COLON_EQUAL . (aggregate . 
1)) (WHILE . (aggregate . 1)) (SELECT . (aggregate . 1)) (REQUEUE . (aggregate 
. 1)) (RAISE . (aggregate . 1)) (PRAGMA . (aggregate . 1)) (NULL . (aggregate . 
1)) (IF . (aggregate . 1)) (GOTO . (aggregate . 1)) (FOR . (aggregate . 1)) 
(EXIT . (aggregate . 1)) (DELAY . (aggregate . 1)) (DECLARE . (aggregate . 1)) 
(CASE . (aggregate . 1))  [...]
-      ((default . error) (RIGHT_PAREN .  780))
+      ((default . error) (RIGHT_PAREN .  777))
       ((default . error) (OF . (aggregate . 2)) (LESS_LESS . (aggregate . 2)) 
(IDENTIFIER . (aggregate . 2)) (STRING_LITERAL . (aggregate . 2)) 
(CHARACTER_LITERAL . (aggregate . 2)) (ACCEPT . (aggregate . 2)) (ABORT . 
(aggregate . 2)) (BEGIN . (aggregate . 2)) (CASE . (aggregate . 2)) (DECLARE . 
(aggregate . 2)) (DELAY . (aggregate . 2)) (EXIT . (aggregate . 2)) (FOR . 
(aggregate . 2)) (GOTO . (aggregate . 2)) (IF . (aggregate . 2)) (NULL . 
(aggregate . 2)) (PRAGMA . (aggregate . 2)) (RA [...]
-      ((default . error) (COLON_EQUAL .  1058) (DOT .  84) (TICK .  85) 
(RIGHT_PAREN . (parameter_specification . 1)) (SEMICOLON . 
(parameter_specification . 1)) (LEFT_PAREN .  103))
+      ((default . error) (COLON_EQUAL .  1051) (DOT .  84) (TICK .  85) 
(RIGHT_PAREN . (parameter_specification . 1)) (SEMICOLON . 
(parameter_specification . 1)) (LEFT_PAREN .  103))
       ((default . error) (WITH . (formal_object_declaration . 2)) (TYPE . 
(formal_object_declaration . 2)) (PRAGMA . (formal_object_declaration . 2)) 
(IDENTIFIER . (formal_object_declaration . 2)) (FUNCTION . 
(formal_object_declaration . 2)) (PROCEDURE . (formal_object_declaration . 2)) 
(PACKAGE . (formal_object_declaration . 2)))
-      ((default . error) (SEMICOLON .  1057))
-      ((default . error) (SEMICOLON .  1056))
-      ((default . error) (RIGHT_PAREN .  1055))
-      ((default . error) (AND .  1054) (WITH . (interface_type_definition . 
1)) (SEMICOLON . (interface_type_definition . 1)))
+      ((default . error) (SEMICOLON .  1050))
+      ((default . error) (SEMICOLON .  1049))
+      ((default . error) (RIGHT_PAREN .  1048))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
+      ((default . error) (PRIVATE .  1046))
+      ((default . error) (AND .  1045) (WITH . (interface_type_definition . 
1)) (SEMICOLON . (interface_type_definition . 1)))
       ((default . error) (DOT .  84) (SEMICOLON . (interface_list . 0)) (WITH 
. (interface_list . 0)) (AND . (interface_list . 0)) (TICK .  85) (LEFT_PAREN . 
 103))
-      ((default . error) (AND .  1054) (WITH . (interface_type_definition . 
3)) (SEMICOLON . (interface_type_definition . 3)))
-      ((default . error) (AND .  1054) (WITH . (interface_type_definition . 
2)) (SEMICOLON . (interface_type_definition . 2)))
-      ((default . error) (AND .  1054) (WITH . (interface_type_definition . 
0)) (SEMICOLON . (interface_type_definition . 0)))
+      ((default . error) (AND .  1045) (WITH . (interface_type_definition . 
3)) (SEMICOLON . (interface_type_definition . 3)))
+      ((default . error) (AND .  1045) (WITH . (interface_type_definition . 
2)) (SEMICOLON . (interface_type_definition . 2)))
+      ((default . error) (AND .  1045) (WITH . (interface_type_definition . 
0)) (SEMICOLON . (interface_type_definition . 0)))
       ((default . error) (SEMICOLON . (formal_type_definition . 7)) (WITH . 
(formal_type_definition . 7)))
-      ((default . error) (IDENTIFIER .  45) (STRING_LITERAL .  46) 
(CHARACTER_LITERAL .  163) (RIGHT_PAREN . ((association_opt . 0) 
(expression_opt . 0))) (COMMA . ((association_opt . 0) (expression_opt . 0))) 
(EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . (discrete_choice_list . 0)) 
(PLUS .  136) (MINUS .  135) (OTHERS .  165) (ABS .  138) (NOT .  1051) (NULL . 
 142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (BOX .  1050) (IDENTIFIER .  45) (CHARACTER_LITERAL . 
 47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (IDENTIFIER .  45) (STRING_LITERAL .  46) 
(CHARACTER_LITERAL .  163) (RIGHT_PAREN . ((association_opt . 0) 
(expression_opt . 0))) (COMMA . ((association_opt . 0) (expression_opt . 0))) 
(EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . (discrete_choice_list . 0)) 
(PLUS .  136) (MINUS .  135) (OTHERS .  165) (ABS .  138) (NOT .  1042) (NULL . 
 142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (BOX .  1041) (IDENTIFIER .  45) (CHARACTER_LITERAL . 
 47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (LOOP . (subtype_indication . 2)) (DO . 
(subtype_indication . 2)) (EQUAL_GREATER . (subtype_indication . 2)) (COMMA . 
(subtype_indication . 2)) (RIGHT_PAREN . (subtype_indication . 2)) (COLON_EQUAL 
. (subtype_indication . 2)) (WITH . (subtype_indication . 2)) (SEMICOLON . 
(subtype_indication . 2)) (AND . (subtype_indication . 2)) (OF . 
(subtype_indication . 2)))
       ((default . error) (LOOP . (constraint . 1)) (DO . (constraint . 1)) 
(EQUAL_GREATER . (constraint . 1)) (COMMA . (constraint . 1)) (RIGHT_PAREN . 
(constraint . 1)) (COLON_EQUAL . (constraint . 1)) (WITH . (constraint . 1)) 
(SEMICOLON . (constraint . 1)) (AND . (constraint . 1)) (OF . (constraint . 1)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (OF .  1047))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  750) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (OF .  1045))
+      ((default . error) (OF .  1038))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  746) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (OF .  1036))
       ((default . error) (PLUS . (primary . 0)) (MINUS . (primary . 0)) 
(AMPERSAND . (primary . 0)) (DOT_DOT . (primary . 0)) (SLASH . (primary . 0)) 
(STAR . (primary . 0)) (MOD . (primary . 0)) (REM . (primary . 0)) (IDENTIFIER 
.  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
-      ((default . error) (AND .  1043) (DOT .  84) (TICK .  85) (WITH .  1044) 
(LEFT_PAREN .  103))
-      ((default . error) (AND .  1041) (DOT .  84) (TICK .  85) (WITH .  1042) 
(LEFT_PAREN .  103))
       ((default . error) (DOT . (name . 0)) (LEFT_PAREN . (name . 0)) (TICK . 
(name . 0)) (SEMICOLON . (null_exclusion_opt_name . 2)) (RIGHT_PAREN . 
(null_exclusion_opt_name . 2)) (COLON_EQUAL . (null_exclusion_opt_name . 2)))
       ((default . error) (DOT . (name . 3)) (LEFT_PAREN . (name . 3)) (TICK . 
(name . 3)) (SEMICOLON . (null_exclusion_opt_name . 3)) (RIGHT_PAREN . 
(null_exclusion_opt_name . 3)) (COLON_EQUAL . (null_exclusion_opt_name . 3)))
       ((default . error) (SEMICOLON . (discriminant_specification_opt . 3)) 
(RIGHT_PAREN . (discriminant_specification_opt . 3)))
@@ -2381,39 +2369,38 @@
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (WHEN . (record_representation_clause . 0)) (END . 
(record_representation_clause . 0)) (PRIVATE . (record_representation_clause . 
0)) (CASE . (record_representation_clause . 0)) (USE . 
(record_representation_clause . 0)) (TYPE . (record_representation_clause . 0)) 
(TASK . (record_representation_clause . 0)) (SUBTYPE . 
(record_representation_clause . 0)) (PROTECTED . (record_representation_clause 
. 0)) (PROCEDURE . (record_representation_clause . 0)) (PRAGMA . (re [...]
       ((default . error) (WHEN . (enumeration_representation_clause . 0)) (END 
. (enumeration_representation_clause . 0)) (PRIVATE . 
(enumeration_representation_clause . 0)) (CASE . 
(enumeration_representation_clause . 0)) (USE . 
(enumeration_representation_clause . 0)) (TYPE . 
(enumeration_representation_clause . 0)) (TASK . 
(enumeration_representation_clause . 0)) (SUBTYPE . 
(enumeration_representation_clause . 0)) (PROTECTED . 
(enumeration_representation_clause . 0)) (PROCEDURE . (enu [...]
-      ((default . error) (MOD .  1037))
-      ((default . error) (IDENTIFIER .  1034))
-      ((default . error) (SEMICOLON .  1033))
+      ((default . error) (MOD .  1032))
+      ((default . error) (IDENTIFIER .  1029))
+      ((default . error) (SEMICOLON .  1028))
       ((default . error) (WHEN . (aspect_clause . 0)) (PRIVATE . 
(aspect_clause . 0)) (END . (aspect_clause . 0)) (CASE . (aspect_clause . 0)) 
(BEGIN . (aspect_clause . 0)) (IDENTIFIER . (aspect_clause . 0)) (ENTRY . 
(aspect_clause . 0)) (FOR . (aspect_clause . 0)) (FUNCTION . (aspect_clause . 
0)) (GENERIC . (aspect_clause . 0)) (NOT . (aspect_clause . 0)) (OVERRIDING . 
(aspect_clause . 0)) (PACKAGE . (aspect_clause . 0)) (PRAGMA . (aspect_clause . 
0)) (PROCEDURE . (aspect_clause . 0)) ( [...]
-      ((default . error) (SEMICOLON .  1032))
+      ((default . error) (SEMICOLON .  1027))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (IS .  1030))
+      ((default . error) (IS .  1025))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (END .  1026) (PRIVATE .  1027))
-      ((default . error) (SEMICOLON .  1025))
-      ((default . error) (SEMICOLON .  1024))
+      ((default . error) (END .  1021) (PRIVATE .  1022))
+      ((default . error) (SEMICOLON .  1020))
+      ((default . error) (SEMICOLON .  1019))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  141) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (SEMICOLON .  1020) (IS .  1021))
+      ((default . error) (SEMICOLON .  1015) (IS .  1016))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (END .  1016) (PRIVATE .  1017))
-      ((default . error) (SEMICOLON .  1015))
-      ((default . error) (SYNCHRONIZED .  1014) (TAGGED .  540) (NEW . 
((abstract_limited_synchronized_opt . 3) (abstract_limited_opt . 3))) (LIMITED 
.  1013))
+      ((default . error) (END .  1011) (PRIVATE .  1012))
+      ((default . error) (SEMICOLON .  1010))
+      ((default . error) (SYNCHRONIZED .  538) (TAGGED .  539) (NEW . 
((abstract_limited_synchronized_opt . 3) (abstract_limited_opt . 3))) (LIMITED 
.  1009))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (IDENTIFIER .  1007) (CHARACTER_LITERAL .  1008))
+      ((default . error) (IDENTIFIER .  1003) (CHARACTER_LITERAL .  1004))
       ((default . error) (INTERFACE .  532) (PRIVATE . 
(abstract_tagged_limited_opt . 5)) (NULL . (abstract_tagged_limited_opt . 5)) 
(RECORD . (abstract_tagged_limited_opt . 5)) (NEW . 
((abstract_limited_synchronized_opt . 4) (abstract_limited_opt . 2))))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (RECORD .  1005))
+      ((default . error) (RECORD .  1001))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (END . (component_list_opt . 0)) (NULL .  996) (CASE 
.  995) (IDENTIFIER .  69) (FOR .  279))
-      ((default . error) (NEW . (abstract_limited_synchronized_opt . 5)) 
(INTERFACE .  527))
-      ((default . error) (SEMICOLON .  994) (PRIVATE . 
(abstract_tagged_limited_opt . 4)) (NULL . (abstract_tagged_limited_opt . 4)) 
(RECORD . (abstract_tagged_limited_opt . 4)) (LIMITED .  525))
-      ((default . error) (NEW .  993))
-      ((default . error) (NEW .  992))
-      ((default . error) (PRIVATE .  990) (RECORD .  840) (NULL .  838))
+      ((default . error) (END . (component_list_opt . 0)) (NULL .  992) (CASE 
.  991) (IDENTIFIER .  69) (FOR .  279))
+      ((default . error) (SEMICOLON .  990) (PRIVATE . 
(abstract_tagged_limited_opt . 4)) (NULL . (abstract_tagged_limited_opt . 4)) 
(RECORD . (abstract_tagged_limited_opt . 4)) (LIMITED .  526))
+      ((default . error) (NEW .  989))
+      ((default . error) (NEW .  988))
+      ((default . error) (PRIVATE .  986) (RECORD .  837) (NULL .  835))
       ((default . error) (WITH . (type_definition . 8)) (SEMICOLON . 
(type_definition . 8)))
       ((default . error) (WITH . (type_definition . 6)) (SEMICOLON . 
(type_definition . 6)))
       ((default . error) (WITH . (type_definition . 9)) (SEMICOLON . 
(type_definition . 9)))
@@ -2421,265 +2408,259 @@
       ((default . error) (WITH . (type_definition . 10)) (SEMICOLON . 
(type_definition . 10)))
       ((default . error) (WITH . (type_definition . 7)) (SEMICOLON . 
(type_definition . 7)))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(package_specification . 0)) (LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  988))
-      ((default . error) (NULL .  987))
-      ((default . error) (COLON_EQUAL .  985) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (COLON_EQUAL .  983) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
+      ((default . error) (SEMICOLON . (package_specification . 0)))
+      ((default . error) (SEMICOLON .  984))
+      ((default . error) (NULL .  983))
       ((default . error) (COLON_EQUAL .  981) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
-      ((default . error) (SEMICOLON .  980))
-      ((default . error) (SEMICOLON .  979))
-      ((default . error) (SEMICOLON .  978))
-      ((default . error) (SEMICOLON .  977))
+      ((default . error) (COLON_EQUAL .  979) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
+      ((default . error) (COLON_EQUAL .  977) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
       ((default . error) (SEMICOLON .  976))
-      ((default . error) (RIGHT_PAREN .  975))
-      ((default . error) (LOOP . (subtype_indication . 3)) (DOT .  84) (IN . 
(primary . 2)) (NOT . (primary . 2)) (EQUAL . (primary . 2)) (GREATER . 
(primary . 2)) (GREATER_EQUAL . (primary . 2)) (LESS . (primary . 2)) 
(LESS_EQUAL . (primary . 2)) (SLASH_EQUAL . (primary . 2)) (RIGHT_PAREN . 
((subtype_indication . 3) (primary . 2))) (COMMA . ((subtype_indication . 3) 
(primary . 2))) (BAR . (primary . 2)) (EQUAL_GREATER . ((subtype_indication . 
3) (primary . 2))) (AND . (primary . 2)) (OR [...]
+      ((default . error) (SEMICOLON .  975))
+      ((default . error) (SEMICOLON .  974))
+      ((default . error) (SEMICOLON .  973))
+      ((default . error) (SEMICOLON .  972))
+      ((default . error) (RIGHT_PAREN .  971))
+      ((default . error) (LOOP . (subtype_indication . 3)) (DOT .  84) (IN . 
(primary . 2)) (NOT . (primary . 2)) (EQUAL . (primary . 2)) (GREATER . 
(primary . 2)) (GREATER_EQUAL . (primary . 2)) (LESS . (primary . 2)) 
(LESS_EQUAL . (primary . 2)) (SLASH_EQUAL . (primary . 2)) (RIGHT_PAREN . 
((subtype_indication . 3) (primary . 2))) (COMMA . ((subtype_indication . 3) 
(primary . 2))) (BAR . (primary . 2)) (EQUAL_GREATER . ((subtype_indication . 
3) (primary . 2))) (AND . (primary . 2)) (OR [...]
       ((default . error) (SEMICOLON . (name_opt . 0)) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (END . (package_body . 1)) (BEGIN . (package_body . 
1)) (IDENTIFIER . (package_body . 1)) (ENTRY . (package_body . 1)) (FOR . 
(package_body . 1)) (PROTECTED . (package_body . 1)) (SUBTYPE . (package_body . 
1)) (TASK . (package_body . 1)) (TYPE . (package_body . 1)) (WITH . 
(package_body . 1)) (USE . (package_body . 1)) (SEPARATE . (package_body . 1)) 
(PROCEDURE . (package_body . 1)) (PRIVATE . (package_body . 1)) (PRAGMA . 
(package_body . 1)) (PACKAGE . (package_ [...]
-      ((default . error) (WHEN .  702))
-      ((default . error) (BAR .  262) (EQUAL_GREATER .  972))
+      ((default . error) (WHEN .  701))
+      ((default . error) (BAR .  262) (EQUAL_GREATER .  968))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
       ((default . error) (DOT .  84) (TICK .  85) (LOOP . 
(iterator_specification . 5)) (EQUAL_GREATER . (iterator_specification . 5)) 
(LEFT_PAREN .  103))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  750) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  746) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (LOOP . (iterator_specification . 1)) (EQUAL_GREATER 
. (iterator_specification . 1)))
-      ((default . error) (OF .  969))
+      ((default . error) (OF .  965))
       ((default . error) (RIGHT_PAREN . (quantified_expression . 0)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (elsif_expression_list . 0)) (ELSE . 
(elsif_expression_list . 0)) (ELSIF . (elsif_expression_list . 0)))
-      ((default . error) (RIGHT_PAREN . (if_expression . 1)) (ELSE .  965) 
(ELSIF .  877))
-      ((default . error) (END . (protected_operation_item_list_opt . 0)) 
(ENTRY .  956) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(FOR .  279))
+      ((default . error) (RIGHT_PAREN . (if_expression . 1)) (ELSE .  961) 
(ELSIF .  873))
+      ((default . error) (END . (protected_operation_item_list_opt . 0)) 
(ENTRY .  952) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(FOR .  279))
       ((default . error) (BEGIN . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
       ((default . error) (ACCEPT . (label_opt . 1)) (BEGIN . (label_opt . 1)) 
(CASE . (label_opt . 1)) (DECLARE . (label_opt . 1)) (FOR . (label_opt . 1)) 
(IF . (label_opt . 1)) (LOOP . (label_opt . 1)) (RETURN . (label_opt . 1)) 
(SELECT . (label_opt . 1)) (WHILE . (label_opt . 1)) (IDENTIFIER . (label_opt . 
1)) (STRING_LITERAL . (label_opt . 1)) (CHARACTER_LITERAL . (label_opt . 1)) 
(ABORT . (label_opt . 1)) (DELAY . (label_opt . 1)) (EXIT . (label_opt . 1)) 
(GOTO . (label_opt . 1)) (NU [...]
       ((default . error) (RIGHT_PAREN . ((association_opt . 0) (expression_opt 
. 0))) (COMMA . ((association_opt . 0) (expression_opt . 0))) (EQUAL_GREATER . 
(discrete_choice_list . 0)) (BAR . (discrete_choice_list . 0)) (OTHERS .  165) 
(IDENTIFIER .  45) (CHARACTER_LITERAL .  163) (STRING_LITERAL .  46) (PLUS .  
136) (MINUS .  135) (ABS .  138) (NOT .  164) (NULL .  142) (NEW .  140) 
(LEFT_PAREN .  139))
       ((default . error) (SEMICOLON . (actual_parameter_part_opt . 1)) 
(LEFT_PAREN . (actual_parameter_part_opt . 1)) (DO . (actual_parameter_part_opt 
. 1)))
-      ((default . error) (DO . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  773))
+      ((default . error) (DO . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  770))
       ((default . error) (OR . (simple_statement . 8)) (THEN . 
(simple_statement . 8)) (WHEN . (simple_statement . 8)) (EXCEPTION . 
(simple_statement . 8)) (END . (simple_statement . 8)) (LESS_LESS . 
(simple_statement . 8)) (IDENTIFIER . (simple_statement . 8)) (STRING_LITERAL . 
(simple_statement . 8)) (CHARACTER_LITERAL . (simple_statement . 8)) (ACCEPT . 
(simple_statement . 8)) (ABORT . (simple_statement . 8)) (BEGIN . 
(simple_statement . 8)) (CASE . (simple_statement . 8)) (DECLARE .  [...]
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (WHEN .  950))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (WHEN .  946))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (WHEN . (delay_statement . 1)) (EXCEPTION . 
(delay_statement . 1)) (ELSIF . (delay_statement . 1)) (THEN . (delay_statement 
. 1)) (ELSE . (delay_statement . 1)) (OR . (delay_statement . 1)) (END . 
(delay_statement . 1)) (LESS_LESS . (delay_statement . 1)) (IDENTIFIER . 
(delay_statement . 1)) (STRING_LITERAL . (delay_statement . 1)) 
(CHARACTER_LITERAL . (delay_statement . 1)) (ACCEPT . (delay_statement . 1)) 
(ABORT . (delay_statement . 1)) (BEGIN . (delay_statemen [...]
-      ((default . error) (SEMICOLON .  948))
+      ((default . error) (SEMICOLON .  944))
       ((default . error) (OR . (exit_statement . 1)) (THEN . (exit_statement . 
1)) (WHEN . (exit_statement . 1)) (EXCEPTION . (exit_statement . 1)) (END . 
(exit_statement . 1)) (LESS_LESS . (exit_statement . 1)) (IDENTIFIER . 
(exit_statement . 1)) (STRING_LITERAL . (exit_statement . 1)) 
(CHARACTER_LITERAL . (exit_statement . 1)) (ACCEPT . (exit_statement . 1)) 
(ABORT . (exit_statement . 1)) (BEGIN . (exit_statement . 1)) (CASE . 
(exit_statement . 1)) (DECLARE . (exit_statement . 1)) (DEL [...]
       ((default . error) (SEMICOLON . (expression_opt . 0)) (PLUS .  136) 
(MINUS .  135) (ABS .  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER 
.  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (OR . (simple_statement . 3)) (THEN . 
(simple_statement . 3)) (WHEN . (simple_statement . 3)) (EXCEPTION . 
(simple_statement . 3)) (END . (simple_statement . 3)) (LESS_LESS . 
(simple_statement . 3)) (IDENTIFIER . (simple_statement . 3)) (STRING_LITERAL . 
(simple_statement . 3)) (CHARACTER_LITERAL . (simple_statement . 3)) (ACCEPT . 
(simple_statement . 3)) (ABORT . (simple_statement . 3)) (BEGIN . 
(simple_statement . 3)) (CASE . (simple_statement . 3)) (DECLARE .  [...]
-      ((default . error) (ELSIF . (sequence_of_statements_opt . 0)) (ELSE . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . ( [...]
-      ((default . error) (LOOP .  945))
+      ((default . error) (ELSIF . (sequence_of_statements_opt . 0)) (ELSE . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . ( [...]
+      ((default . error) (LOOP .  941))
       ((default . error) (OR . (raise_statement . 2)) (THEN . (raise_statement 
. 2)) (WHEN . (raise_statement . 2)) (EXCEPTION . (raise_statement . 2)) (END . 
(raise_statement . 2)) (LESS_LESS . (raise_statement . 2)) (IDENTIFIER . 
(raise_statement . 2)) (STRING_LITERAL . (raise_statement . 2)) 
(CHARACTER_LITERAL . (raise_statement . 2)) (ACCEPT . (raise_statement . 2)) 
(ABORT . (raise_statement . 2)) (BEGIN . (raise_statement . 2)) (CASE . 
(raise_statement . 2)) (DECLARE . (raise_statem [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (OR . (requeue_statement . 1)) (THEN . 
(requeue_statement . 1)) (WHEN . (requeue_statement . 1)) (EXCEPTION . 
(requeue_statement . 1)) (END . (requeue_statement . 1)) (LESS_LESS . 
(requeue_statement . 1)) (IDENTIFIER . (requeue_statement . 1)) (STRING_LITERAL 
. (requeue_statement . 1)) (CHARACTER_LITERAL . (requeue_statement . 1)) 
(ACCEPT . (requeue_statement . 1)) (ABORT . (requeue_statement . 1)) (BEGIN . 
(requeue_statement . 1)) (CASE . (requeue_statement . 1) [...]
-      ((default . error) (ABORT .  943))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (ABORT .  939))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (OR . (extended_return_statement . 1)) (THEN . 
(extended_return_statement . 1)) (WHEN . (extended_return_statement . 1)) 
(EXCEPTION . (extended_return_statement . 1)) (END . (extended_return_statement 
. 1)) (LESS_LESS . (extended_return_statement . 1)) (IDENTIFIER . 
(extended_return_statement . 1)) (STRING_LITERAL . (extended_return_statement . 
1)) (CHARACTER_LITERAL . (extended_return_statement . 1)) (ACCEPT . 
(extended_return_statement . 1)) (ABORT . (extended_ [...]
       ((default . error) (OR . (simple_return_statement . 1)) (THEN . 
(simple_return_statement . 1)) (WHEN . (simple_return_statement . 1)) 
(EXCEPTION . (simple_return_statement . 1)) (END . (simple_return_statement . 
1)) (LESS_LESS . (simple_return_statement . 1)) (IDENTIFIER . 
(simple_return_statement . 1)) (STRING_LITERAL . (simple_return_statement . 1)) 
(CHARACTER_LITERAL . (simple_return_statement . 1)) (ACCEPT . 
(simple_return_statement . 1)) (ABORT . (simple_return_statement . 1)) [...]
       ((default . error) (CONSTANT . (aliased_opt . 0)) (IDENTIFIER . 
(aliased_opt . 0)) (STRING_LITERAL . (aliased_opt . 0)) (CHARACTER_LITERAL . 
(aliased_opt . 0)) (ACCESS . (aliased_opt . 0)) (NOT . (aliased_opt . 0)) 
(ALIASED .  499))
-      ((default . error) (ABORT .  940))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
-      ((default . error) (SELECT .  938))
-      ((default . error) (WHEN .  658) (TERMINATE .  657) (ACCEPT .  601) 
(DELAY .  606))
+      ((default . error) (ABORT .  936))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (SELECT .  934))
+      ((default . error) (WHEN .  657) (TERMINATE .  656) (ACCEPT .  600) 
(DELAY .  605))
       ((default . error) (OR . (entry_call_alternative . 0)) (ELSE . 
(entry_call_alternative . 0)) (THEN . (triggering_alternative . 0)))
       ((default . error) (OR . (entry_call_alternative . 1)) (ELSE . 
(entry_call_alternative . 1)) (THEN . (triggering_alternative . 1)))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
-      ((default . error) (DELAY .  606))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (DELAY .  605))
       ((default . error) (OR . (delay_alternative . 0)) (END . 
(delay_alternative . 0)) (ELSE . (delay_alternative . 0)) (THEN . 
(triggering_alternative . 2)))
       ((default . error) (END . (select_alternative . 1)) (OR . 
(select_alternative . 1)) (ELSE . (select_alternative . 1)))
-      ((default . error) (EQUAL_GREATER .  933))
+      ((default . error) (EQUAL_GREATER .  929))
       ((default . error) (END . (select_alternative . 5)) (OR . 
(select_alternative . 5)) (ELSE . (select_alternative . 5)))
-      ((default . error) (SEMICOLON .  932))
-      ((default . error) (END .  931))
-      ((default . error) (SEMICOLON .  930))
-      ((default . error) (OTHERS .  926) (IDENTIFIER .  925) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (SEMICOLON .  928))
+      ((default . error) (END .  927))
+      ((default . error) (SEMICOLON .  926))
+      ((default . error) (OTHERS .  922) (IDENTIFIER .  921) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (END . (exception_handler_list . 0)) (WHEN . 
(exception_handler_list . 0)))
-      ((default . error) (END . (exception_handler_list_opt . 1)) (WHEN .  
920))
+      ((default . error) (END . (exception_handler_list_opt . 1)) (WHEN .  
916))
       ((default . error) (END . (handled_sequence_of_statements . 0)))
       ((default . error) (WHEN . (exception_handler_list . 1)) (END . 
(exception_handler_list . 1)))
-      ((default . error) (COLON .  1160) (EQUAL_GREATER . (name . 0)) (BAR . 
(name . 0)) (LEFT_PAREN . (name . 0)) (DOT . (name . 0)) (TICK . (name . 0)))
+      ((default . error) (COLON .  1150) (EQUAL_GREATER . (name . 0)) (BAR . 
(name . 0)) (LEFT_PAREN . (name . 0)) (DOT . (name . 0)) (TICK . (name . 0)))
       ((default . error) (BAR . (exception_choice . 1)) (EQUAL_GREATER . 
(exception_choice . 1)))
       ((default . error) (EQUAL_GREATER . (exception_choice_list . 0)) (BAR . 
(exception_choice_list . 0)))
-      ((default . error) (BAR .  1158) (EQUAL_GREATER .  1159))
+      ((default . error) (BAR .  1148) (EQUAL_GREATER .  1149))
       ((default . error) (DOT .  84) (BAR . (exception_choice . 0)) 
(EQUAL_GREATER . (exception_choice . 0)) (TICK .  85) (LEFT_PAREN .  103))
       ((default . error) (WHEN . (assignment_statement . 0)) (THEN . 
(assignment_statement . 0)) (OR . (assignment_statement . 0)) (ELSIF . 
(assignment_statement . 0)) (ELSE . (assignment_statement . 0)) (WHILE . 
(assignment_statement . 0)) (SELECT . (assignment_statement . 0)) (RETURN . 
(assignment_statement . 0)) (REQUEUE . (assignment_statement . 0)) (RAISE . 
(assignment_statement . 0)) (PRAGMA . (assignment_statement . 0)) (NULL . 
(assignment_statement . 0)) (LOOP . (assignment_state [...]
-      ((default . error) (LOOP .  1157))
+      ((default . error) (LOOP .  1147))
       ((default . error) (TYPE . (subprogram_body . 0)) (TASK . 
(subprogram_body . 0)) (SUBTYPE . (subprogram_body . 0)) (PROTECTED . 
(subprogram_body . 0)) (FOR . (subprogram_body . 0)) (ENTRY . (subprogram_body 
. 0)) (IDENTIFIER . (subprogram_body . 0)) (BEGIN . (subprogram_body . 0)) (END 
. (subprogram_body . 0)) ($EOI . (subprogram_body . 0)) (FUNCTION . 
(subprogram_body . 0)) (GENERIC . (subprogram_body . 0)) (LIMITED . 
(subprogram_body . 0)) (NOT . (subprogram_body . 0)) (OVERRIDIN [...]
-      ((default . error) (TERMINATE .  1154) (ACCEPT .  601) (DELAY .  606))
-      ((default . error) (END .  1153))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
-      ((default . error) (END .  1151))
+      ((default . error) (TERMINATE .  1144) (ACCEPT .  600) (DELAY .  605))
+      ((default . error) (END .  1143))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (ELSE . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
+      ((default . error) (END .  1141))
       ((default . error) (ELSE . (select_alternative_list . 1)) (END . 
(select_alternative_list . 1)) (OR . (select_alternative_list . 1)))
-      ((default . error) (SEMICOLON .  1150))
-      ((default . error) (END .  1149))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
-      ((default . error) (IDENTIFIER . (constant_opt . 0)) (STRING_LITERAL . 
(constant_opt . 0)) (CHARACTER_LITERAL . (constant_opt . 0)) (ACCESS . 
(constant_opt . 0)) (NOT . (constant_opt . 0)) (CONSTANT .  714))
-      ((default . error) (END .  1146))
-      ((default . error) (SEMICOLON .  1145))
-      ((default . error) (SEMICOLON .  1144))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (ELSE .  1138) (END .  1140) (ELSIF .  1139))
-      ((default . error) (SEMICOLON .  1137))
-      ((default . error) (WHEN . (delay_statement . 0)) (ELSIF . 
(delay_statement . 0)) (EXCEPTION . (delay_statement . 0)) (WHILE . 
(delay_statement . 0)) (SELECT . (delay_statement . 0)) (RETURN . 
(delay_statement . 0)) (REQUEUE . (delay_statement . 0)) (RAISE . 
(delay_statement . 0)) (PRAGMA . (delay_statement . 0)) (NULL . 
(delay_statement . 0)) (LOOP . (delay_statement . 0)) (IF . (delay_statement . 
0)) (GOTO . (delay_statement . 0)) (FOR . (delay_statement . 0)) (EXIT . 
(delay_stat [...]
+      ((default . error) (SEMICOLON .  1140))
+      ((default . error) (END .  1139))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (IDENTIFIER . (constant_opt . 0)) (STRING_LITERAL . 
(constant_opt . 0)) (CHARACTER_LITERAL . (constant_opt . 0)) (ACCESS . 
(constant_opt . 0)) (NOT . (constant_opt . 0)) (CONSTANT .  713))
       ((default . error) (END .  1136))
+      ((default . error) (SEMICOLON .  1135))
+      ((default . error) (SEMICOLON .  1134))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (ELSE .  1128) (END .  1130) (ELSIF .  1129))
+      ((default . error) (SEMICOLON .  1127))
+      ((default . error) (WHEN . (delay_statement . 0)) (ELSIF . 
(delay_statement . 0)) (EXCEPTION . (delay_statement . 0)) (WHILE . 
(delay_statement . 0)) (SELECT . (delay_statement . 0)) (RETURN . 
(delay_statement . 0)) (REQUEUE . (delay_statement . 0)) (RAISE . 
(delay_statement . 0)) (PRAGMA . (delay_statement . 0)) (NULL . 
(delay_statement . 0)) (LOOP . (delay_statement . 0)) (IF . (delay_statement . 
0)) (GOTO . (delay_statement . 0)) (FOR . (delay_statement . 0)) (EXIT . 
(delay_stat [...]
+      ((default . error) (END .  1126))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . 
(discrete_choice_list . 0)) (OTHERS .  165) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) 
(ABS .  138) (NOT .  164) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (END . (case_statement_alternative_list . 0)) (WHEN . 
(case_statement_alternative_list . 0)))
-      ((default . error) (END .  1133) (WHEN .  950))
-      ((default . error) (SEMICOLON .  1132))
-      ((default . error) (DO .  1131) (SEMICOLON .  1130))
-      ((default . error) (BEGIN .  1129))
-      ((default . error) (IDENTIFIER .  1128))
+      ((default . error) (END .  1123) (WHEN .  946))
+      ((default . error) (SEMICOLON .  1122))
+      ((default . error) (DO .  1121) (SEMICOLON .  1120))
+      ((default . error) (BEGIN .  1119))
+      ((default . error) (IDENTIFIER .  1118))
       ((default . error) (PROCEDURE . (protected_operation_item . 3)) 
(OVERRIDING . (protected_operation_item . 3)) (NOT . (protected_operation_item 
. 3)) (FUNCTION . (protected_operation_item . 3)) (FOR . 
(protected_operation_item . 3)) (ENTRY . (protected_operation_item . 3)) (END . 
(protected_operation_item . 3)))
       ((default . error) (PROCEDURE . (protected_operation_item . 2)) 
(OVERRIDING . (protected_operation_item . 2)) (NOT . (protected_operation_item 
. 2)) (FUNCTION . (protected_operation_item . 2)) (FOR . 
(protected_operation_item . 2)) (ENTRY . (protected_operation_item . 2)) (END . 
(protected_operation_item . 2)))
       ((default . error) (FUNCTION .  1) (PROCEDURE .  9))
       ((default . error) (END . (protected_operation_item_list . 0)) (ENTRY . 
(protected_operation_item_list . 0)) (FOR . (protected_operation_item_list . 
0)) (FUNCTION . (protected_operation_item_list . 0)) (NOT . 
(protected_operation_item_list . 0)) (OVERRIDING . 
(protected_operation_item_list . 0)) (PROCEDURE . 
(protected_operation_item_list . 0)))
-      ((default . error) (END . (protected_operation_item_list_opt . 1)) 
(ENTRY .  956) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(FOR .  279))
-      ((default . error) (END .  1126))
+      ((default . error) (END . (protected_operation_item_list_opt . 1)) 
(ENTRY .  952) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(FOR .  279))
+      ((default . error) (END .  1116))
       ((default . error) (PROCEDURE . (protected_operation_item . 1)) 
(OVERRIDING . (protected_operation_item . 1)) (NOT . (protected_operation_item 
. 1)) (FUNCTION . (protected_operation_item . 1)) (FOR . 
(protected_operation_item . 1)) (ENTRY . (protected_operation_item . 1)) (END . 
(protected_operation_item . 1)))
       ((default . error) (PROCEDURE . (protected_operation_item . 0)) 
(OVERRIDING . (protected_operation_item . 0)) (NOT . (protected_operation_item 
. 0)) (FUNCTION . (protected_operation_item . 0)) (FOR . 
(protected_operation_item . 0)) (ENTRY . (protected_operation_item . 0)) (END . 
(protected_operation_item . 0)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (ELSIF . (elsif_expression_list . 1)) (ELSE . 
(elsif_expression_list . 1)) (RIGHT_PAREN . (elsif_expression_list . 1)))
-      ((default . error) (THEN .  1124))
+      ((default . error) (THEN .  1114))
       ((default . error) (RIGHT_PAREN . (if_expression . 2)))
-      ((default . error) (REVERSE .  1122) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (REVERSE .  1112) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (LOOP . (iterator_specification . 0)) (EQUAL_GREATER 
. (iterator_specification . 0)))
       ((default . error) (DOT .  84) (TICK .  85) (LOOP . 
(iterator_specification . 4)) (EQUAL_GREATER . (iterator_specification . 4)) 
(LEFT_PAREN .  103))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (case_expression_alternative_list . 
1)) (COMMA . (case_expression_alternative_list . 1)))
-      ((default . error) (SEMICOLON .  1120))
-      ((default . error) (WITH . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  773))
+      ((default . error) (SEMICOLON .  1110))
+      ((default . error) (WITH . (parameter_profile_opt . 0)) (SEMICOLON . 
(parameter_profile_opt . 0)) (LEFT_PAREN .  770))
       ((default . error) (USE . (entry_declaration . 1)) (TYPE . 
(entry_declaration . 1)) (TASK . (entry_declaration . 1)) (SUBTYPE . 
(entry_declaration . 1)) (PROTECTED . (entry_declaration . 1)) (PROCEDURE . 
(entry_declaration . 1)) (PRAGMA . (entry_declaration . 1)) (PACKAGE . 
(entry_declaration . 1)) (OVERRIDING . (entry_declaration . 1)) (NOT . 
(entry_declaration . 1)) (GENERIC . (entry_declaration . 1)) (FUNCTION . 
(entry_declaration . 1)) (FOR . (entry_declaration . 1)) (ENTRY . ( [...]
       ((default . error) (USE . (null_procedure_declaration . 0)) (TYPE . 
(null_procedure_declaration . 0)) (TASK . (null_procedure_declaration . 0)) 
(SUBTYPE . (null_procedure_declaration . 0)) (PROTECTED . 
(null_procedure_declaration . 0)) (PROCEDURE . (null_procedure_declaration . 
0)) (PRAGMA . (null_procedure_declaration . 0)) (PACKAGE . 
(null_procedure_declaration . 0)) (OVERRIDING . (null_procedure_declaration . 
0)) (NOT . (null_procedure_declaration . 0)) (GENERIC . (null_procedur [...]
       ((default . error) (BEGIN . (subprogram_renaming_declaration . 0)) 
(IDENTIFIER . (subprogram_renaming_declaration . 0)) (ENTRY . 
(subprogram_renaming_declaration . 0)) (FOR . (subprogram_renaming_declaration 
. 0)) (FUNCTION . (subprogram_renaming_declaration . 0)) (GENERIC . 
(subprogram_renaming_declaration . 0)) (NOT . (subprogram_renaming_declaration 
. 0)) (OVERRIDING . (subprogram_renaming_declaration . 0)) (PACKAGE . 
(subprogram_renaming_declaration . 0)) (PRAGMA . (subprogram_ [...]
       ((default . error) (USE . (abstract_subprogram_declaration . 0)) (TYPE . 
(abstract_subprogram_declaration . 0)) (TASK . (abstract_subprogram_declaration 
. 0)) (SUBTYPE . (abstract_subprogram_declaration . 0)) (PROTECTED . 
(abstract_subprogram_declaration . 0)) (PROCEDURE . 
(abstract_subprogram_declaration . 0)) (PRAGMA . 
(abstract_subprogram_declaration . 0)) (PACKAGE . 
(abstract_subprogram_declaration . 0)) (OVERRIDING . 
(abstract_subprogram_declaration . 0)) (NOT . (abstract_subp [...]
       ((default . error) (USE . (subprogram_body_stub . 0)) (TYPE . 
(subprogram_body_stub . 0)) (TASK . (subprogram_body_stub . 0)) (SUBTYPE . 
(subprogram_body_stub . 0)) (PROTECTED . (subprogram_body_stub . 0)) (PROCEDURE 
. (subprogram_body_stub . 0)) (PRAGMA . (subprogram_body_stub . 0)) (PACKAGE . 
(subprogram_body_stub . 0)) (OVERRIDING . (subprogram_body_stub . 0)) (NOT . 
(subprogram_body_stub . 0)) (GENERIC . (subprogram_body_stub . 0)) (FUNCTION . 
(subprogram_body_stub . 0)) (FOR . [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  1117))
+      ((default . error) (SEMICOLON .  1107))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  1115))
+      ((default . error) (SEMICOLON .  1105))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  1113))
+      ((default . error) (SEMICOLON .  1103))
       ((default . error) (ACCESS . (null_exclusion_opt . 1)) (IDENTIFIER .  
45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (BEGIN . (declaration . 8)) (IDENTIFIER . 
(declaration . 8)) (ENTRY . (declaration . 8)) (FOR . (declaration . 8)) 
(FUNCTION . (declaration . 8)) (GENERIC . (declaration . 8)) (NOT . 
(declaration . 8)) (OVERRIDING . (declaration . 8)) (PACKAGE . (declaration . 
8)) (PRAGMA . (declaration . 8)) (PROCEDURE . (declaration . 8)) (PROTECTED . 
(declaration . 8)) (SUBTYPE . (declaration . 8)) (TASK . (declaration . 8)) 
(TYPE . (declaration . 8)) (USE . (declaration . 8)) [...]
-      ((default . error) (SEMICOLON .  1112))
+      ((default . error) (SEMICOLON .  1102))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (WITH . (record_type_definition . 0)) (SEMICOLON . 
(record_type_definition . 0)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (NOT .  724) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
+      ((default . error) (NOT .  723) (IDENTIFIER .  45) (CHARACTER_LITERAL .  
47) (STRING_LITERAL .  46))
       ((default . error) (BEGIN . (incomplete_type_declaration . 0)) 
(IDENTIFIER . (incomplete_type_declaration . 0)) (ENTRY . 
(incomplete_type_declaration . 0)) (FOR . (incomplete_type_declaration . 0)) 
(FUNCTION . (incomplete_type_declaration . 0)) (GENERIC . 
(incomplete_type_declaration . 0)) (NOT . (incomplete_type_declaration . 0)) 
(OVERRIDING . (incomplete_type_declaration . 0)) (PACKAGE . 
(incomplete_type_declaration . 0)) (PRAGMA . (incomplete_type_declaration . 0)) 
(PROCEDURE .  [...]
-      ((default . error) (IDENTIFIER .  1106) (STRING_LITERAL .  1107))
-      ((default . error) (SEMICOLON .  1105))
+      ((default . error) (IDENTIFIER .  1096) (STRING_LITERAL .  1097))
+      ((default . error) (SEMICOLON .  1095))
       ((default . error) (WHEN . (component_item . 1)) (END . (component_item 
. 1)) (FOR . (component_item . 1)) (IDENTIFIER . (component_item . 1)) (CASE . 
(component_item . 1)))
       ((default . error) (WHEN . (component_item . 0)) (END . (component_item 
. 0)) (FOR . (component_item . 0)) (IDENTIFIER . (component_item . 0)) (CASE . 
(component_item . 0)))
       ((default . error) (WHEN . (component_list . 0)) (END . (component_list 
. 0)) (CASE . (component_list . 0)) (IDENTIFIER . (component_list . 0)) (FOR . 
(component_list . 0)))
-      ((default . error) (END . (component_list_opt . 1)) (CASE .  995) 
(IDENTIFIER .  69) (FOR .  279))
-      ((default . error) (END .  1102))
-      ((default . error) (COMMA .  92) (COLON .  1101))
+      ((default . error) (END . (component_list_opt . 1)) (CASE .  991) 
(IDENTIFIER .  69) (FOR .  279))
+      ((default . error) (END .  1092))
+      ((default . error) (COMMA .  92) (COLON .  1091))
       ((default . error) (WHEN . (component_list . 3)) (END . (component_list 
. 3)) (CASE . (component_list . 3)) (IDENTIFIER . (component_list . 3)) (FOR . 
(component_list . 3)))
-      ((default . error) (DOT_DOT .  1100))
+      ((default . error) (DOT_DOT .  1090))
       ((default . error) (SEMICOLON . (record_definition . 1)) (WITH . 
(record_definition . 1)))
       ((default . error) (SEMICOLON . (type_definition . 2)) (WITH . 
(type_definition . 2)))
       ((default . error) (COMMA . (enumeration_literal . 0)) (RIGHT_PAREN . 
(enumeration_literal . 0)))
       ((default . error) (COMMA . (enumeration_literal . 1)) (RIGHT_PAREN . 
(enumeration_literal . 1)))
       ((default . error) (RIGHT_PAREN . (enumeration_literal_list . 0)) (COMMA 
. (enumeration_literal_list . 0)))
-      ((default . error) (COMMA .  1098) (RIGHT_PAREN .  1099))
-      ((default . error) (WITH . (real_range_specification_opt . 0)) 
(SEMICOLON . (real_range_specification_opt . 0)) (RANGE .  1095))
-      ((default . error) (DIGITS .  1094) (WITH . 
(real_range_specification_opt . 0)) (SEMICOLON . (real_range_specification_opt 
. 0)) (RANGE .  1095))
+      ((default . error) (COMMA .  1088) (RIGHT_PAREN .  1089))
+      ((default . error) (WITH . (real_range_specification_opt . 0)) 
(SEMICOLON . (real_range_specification_opt . 0)) (RANGE .  1085))
+      ((default . error) (DIGITS .  1084) (WITH . 
(real_range_specification_opt . 0)) (SEMICOLON . (real_range_specification_opt 
. 0)) (RANGE .  1085))
       ((default . error) (NEW . ((abstract_limited_opt . 1) 
(abstract_limited_synchronized_opt . 1))))
-      ((default . error) (NEW . (abstract_limited_synchronized_opt . 2)))
       ((default . error) (BEGIN . (single_task_declaration . 1)) (IDENTIFIER . 
(single_task_declaration . 1)) (ENTRY . (single_task_declaration . 1)) (FOR . 
(single_task_declaration . 1)) (FUNCTION . (single_task_declaration . 1)) 
(GENERIC . (single_task_declaration . 1)) (NOT . (single_task_declaration . 1)) 
(OVERRIDING . (single_task_declaration . 1)) (PACKAGE . 
(single_task_declaration . 1)) (PRAGMA . (single_task_declaration . 1)) 
(PROCEDURE . (single_task_declaration . 1)) (PROTECTE [...]
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
       ((default . error) (END . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (AND .  1054) (WITH .  1091))
-      ((default . error) (SEMICOLON .  1090))
+      ((default . error) (AND .  1045) (WITH .  1081))
+      ((default . error) (SEMICOLON .  1080))
       ((default . error) (USE . (task_type_declaration . 2)) (TYPE . 
(task_type_declaration . 2)) (TASK . (task_type_declaration . 2)) (SUBTYPE . 
(task_type_declaration . 2)) (PROTECTED . (task_type_declaration . 2)) 
(PROCEDURE . (task_type_declaration . 2)) (PRAGMA . (task_type_declaration . 
2)) (PACKAGE . (task_type_declaration . 2)) (OVERRIDING . 
(task_type_declaration . 2)) (NOT . (task_type_declaration . 2)) (GENERIC . 
(task_type_declaration . 2)) (FUNCTION . (task_type_declaration  [...]
-      ((default . error) (NEW .  1088) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (DO . (subtype_indication . 1)) (LOOP . 
(subtype_indication . 1)) (COLON_EQUAL . (subtype_indication . 1)) (SEMICOLON . 
(subtype_indication . 1)) (OF . (subtype_indication . 1)) (AND . 
(subtype_indication . 1)) (WITH . (subtype_indication . 1)) (EQUAL_GREATER . 
(subtype_indication . 1)) (COMMA . (subtype_indication . 1)) (RIGHT_PAREN . 
(subtype_indication . 1)) (DOT .  84) (TICK .  85) (RANGE .  825) (LEFT_PAREN . 
 792))
+      ((default . error) (NEW .  1078) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
+      ((default . error) (DO . (subtype_indication . 1)) (LOOP . 
(subtype_indication . 1)) (COLON_EQUAL . (subtype_indication . 1)) (SEMICOLON . 
(subtype_indication . 1)) (OF . (subtype_indication . 1)) (AND . 
(subtype_indication . 1)) (WITH . (subtype_indication . 1)) (EQUAL_GREATER . 
(subtype_indication . 1)) (COMMA . (subtype_indication . 1)) (RIGHT_PAREN . 
(subtype_indication . 1)) (DOT .  84) (TICK .  85) (RANGE .  822) (LEFT_PAREN . 
 791))
       ((default . error) (LOOP . (constraint . 0)) (EQUAL_GREATER . 
(constraint . 0)) (DO . (constraint . 0)) (OF . (constraint . 0)) (AND . 
(constraint . 0)) (SEMICOLON . (constraint . 0)) (WITH . (constraint . 0)) 
(COLON_EQUAL . (constraint . 0)) (RIGHT_PAREN . (constraint . 0)) (COMMA . 
(constraint . 0)))
       ((default . error) (USE . (subtype_declaration . 0)) (TYPE . 
(subtype_declaration . 0)) (TASK . (subtype_declaration . 0)) (SUBTYPE . 
(subtype_declaration . 0)) (PROTECTED . (subtype_declaration . 0)) (PROCEDURE . 
(subtype_declaration . 0)) (PRAGMA . (subtype_declaration . 0)) (PACKAGE . 
(subtype_declaration . 0)) (OVERRIDING . (subtype_declaration . 0)) (NOT . 
(subtype_declaration . 0)) (GENERIC . (subtype_declaration . 0)) (FUNCTION . 
(subtype_declaration . 0)) (FOR . (subtype_de [...]
       ((default . error) (BEGIN . (single_protected_declaration . 1)) 
(IDENTIFIER . (single_protected_declaration . 1)) (ENTRY . 
(single_protected_declaration . 1)) (FOR . (single_protected_declaration . 1)) 
(FUNCTION . (single_protected_declaration . 1)) (GENERIC . 
(single_protected_declaration . 1)) (NOT . (single_protected_declaration . 1)) 
(OVERRIDING . (single_protected_declaration . 1)) (PACKAGE . 
(single_protected_declaration . 1)) (PRAGMA . (single_protected_declaration . 
1)) (PR [...]
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
       ((default . error) (END . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (AND .  1054) (WITH .  1084))
-      ((default . error) (SEMICOLON .  1083))
-      ((default . error) (NEW .  1081) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (SEMICOLON .  1080))
+      ((default . error) (AND .  1045) (WITH .  1074))
+      ((default . error) (SEMICOLON .  1073))
+      ((default . error) (NEW .  1071) (END . (declarative_part_opt . 0)) 
(PRIVATE . (declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  
7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) 
(PROCEDURE . (overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt 
. 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED 
.  281) (TASK .  283) (PACKAGE .  280))
+      ((default . error) (SEMICOLON .  1070))
       ((default . error) (BEGIN . (package_renaming_declaration . 0)) 
(IDENTIFIER . (package_renaming_declaration . 0)) (ENTRY . 
(package_renaming_declaration . 0)) (FOR . (package_renaming_declaration . 0)) 
(FUNCTION . (package_renaming_declaration . 0)) (GENERIC . 
(package_renaming_declaration . 0)) (NOT . (package_renaming_declaration . 0)) 
(OVERRIDING . (package_renaming_declaration . 0)) (PACKAGE . 
(package_renaming_declaration . 0)) (PRAGMA . (package_renaming_declaration . 
0)) (PR [...]
       ((default . error) (WHEN . (at_clause . 0)) (BEGIN . (at_clause . 0)) 
(IDENTIFIER . (at_clause . 0)) (ENTRY . (at_clause . 0)) (FOR . (at_clause . 
0)) (FUNCTION . (at_clause . 0)) (GENERIC . (at_clause . 0)) (NOT . (at_clause 
. 0)) (OVERRIDING . (at_clause . 0)) (PACKAGE . (at_clause . 0)) (PRAGMA . 
(at_clause . 0)) (PROCEDURE . (at_clause . 0)) (PROTECTED . (at_clause . 0)) 
(SUBTYPE . (at_clause . 0)) (TASK . (at_clause . 0)) (TYPE . (at_clause . 0)) 
(USE . (at_clause . 0)) (CASE  [...]
-      ((default . error) (AT .  1079))
+      ((default . error) (AT .  1069))
       ((default . error) (END . (component_clause_list . 0)) (IDENTIFIER . 
(component_clause_list . 0)))
-      ((default . error) (END .  1077) (IDENTIFIER .  1034))
+      ((default . error) (END .  1067) (IDENTIFIER .  1029))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (DOT .  84) (TICK .  85) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104) (LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  1074))
-      ((default . error) (SEMICOLON .  1073))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (PRIVATE .  1071))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (PRIVATE .  1069))
-      ((default . error) (ALIASED .  1064) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  855))
+      ((default . error) (SEMICOLON .  1064))
+      ((default . error) (SEMICOLON .  1063))
+      ((default . error) (ALIASED .  1058) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  851))
       ((default . error) (RIGHT_PAREN . (discrete_subtype_definition_list . 
1)) (COMMA . (discrete_subtype_definition_list . 1)))
-      ((default . error) (ALIASED .  1064) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  855))
+      ((default . error) (ALIASED .  1058) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  851))
       ((default . error) (RIGHT_PAREN . (index_subtype_definition_list . 1)) 
(COMMA . (index_subtype_definition_list . 1)))
-      ((default . error) (DOT .  84) (RANGE .  1063) (TICK .  85) (LEFT_PAREN 
.  103))
+      ((default . error) (DOT .  84) (RANGE .  1057) (TICK .  85) (LEFT_PAREN 
.  103))
       ((default . error) (COMMA . (index_subtype_definition . 0)) (RIGHT_PAREN 
. (index_subtype_definition . 0)))
-      ((default . error) (NULL .  1062) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (COMMA .  798) (RIGHT_PAREN .  1061))
+      ((default . error) (NULL .  1056) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
+      ((default . error) (COMMA .  797) (RIGHT_PAREN .  1055))
       ((default . error) (COMMA . (discrete_subtype_definition . 1)) (BAR . 
(discrete_choice . 2)) (EQUAL_GREATER . (discrete_choice . 2)) (RIGHT_PAREN . 
((discrete_subtype_definition . 1)  260)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
+      ((default . error) (SEMICOLON . (formal_derived_type_definition . 1)) 
(WITH . (formal_derived_type_definition . 1)))
+      ((default . error) (SEMICOLON . (formal_derived_type_definition . 2)) 
(AND .  1045) (WITH . ((formal_derived_type_definition . 2)  1053)))
       ((default . error) (WITH . (formal_package_actual_part . 0)) (SEMICOLON 
. (formal_package_actual_part . 0)))
       ((default . error) (PACKAGE . (formal_package_declaration . 0)) 
(PROCEDURE . (formal_package_declaration . 0)) (FUNCTION . 
(formal_package_declaration . 0)) (IDENTIFIER . (formal_package_declaration . 
0)) (PRAGMA . (formal_package_declaration . 0)) (TYPE . 
(formal_package_declaration . 0)) (WITH . (formal_package_declaration . 0)))
       ((default . error) (PACKAGE . (formal_object_declaration . 0)) 
(PROCEDURE . (formal_object_declaration . 0)) (FUNCTION . 
(formal_object_declaration . 0)) (IDENTIFIER . (formal_object_declaration . 0)) 
(PRAGMA . (formal_object_declaration . 0)) (TYPE . (formal_object_declaration . 
0)) (WITH . (formal_object_declaration . 0)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (parameter_specification . 0)) 
(SEMICOLON . (parameter_specification . 0)))
+      ((default . error) (PRIVATE .  1213))
       ((default . error) (DOT .  84) (TICK .  85) (WITH . (interface_list . 
1)) (SEMICOLON . (interface_list . 1)) (AND . (interface_list . 1)) (LEFT_PAREN 
.  103))
       ((default . error) (LOOP . (index_constraint . 0)) (DO . 
(index_constraint . 0)) (EQUAL_GREATER . (index_constraint . 0)) (COMMA . 
(index_constraint . 0)) (RIGHT_PAREN . (index_constraint . 0)) (COLON_EQUAL . 
(index_constraint . 0)) (WITH . (index_constraint . 0)) (SEMICOLON . 
(index_constraint . 0)) (AND . (index_constraint . 0)) (OF . (index_constraint 
. 0)))
       ((default . error) (PLUS . (primary . 0)) (MINUS . (primary . 0)) 
(AMPERSAND . (primary . 0)) (DOT_DOT . (primary . 0)) (SLASH . (primary . 0)) 
(STAR . (primary . 0)) (MOD . (primary . 0)) (REM . (primary . 0)) (XOR . 
(primary . 0)) (OR . (primary . 0)) (AND . (primary . 0)) (EQUAL_GREATER . 
(primary . 0)) (BAR . (primary . 0)) (IN . (primary . 0)) (NOT . (primary . 0)) 
(EQUAL . (primary . 0)) (GREATER . (primary . 0)) (GREATER_EQUAL . (primary . 
0)) (LESS . (primary . 0)) (LESS_EQ [...]
-      ((default . error) (BOX .  1050))
-      ((default . error) (ACCESS . (null_exclusion_opt . 0)) (NOT .  855) 
(IDENTIFIER .  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
+      ((default . error) (BOX .  1041))
+      ((default . error) (ACCESS . (null_exclusion_opt . 0)) (NOT .  851) 
(IDENTIFIER .  45) (CHARACTER_LITERAL .  47) (STRING_LITERAL .  46))
       ((default . error) (WITH . (component_definition . 3)) (SEMICOLON . 
(component_definition . 3)) (COLON_EQUAL . (component_definition . 3)))
       ((default . error) (WITH . (array_type_definition . 0)) (SEMICOLON . 
(array_type_definition . 0)) (COLON_EQUAL . (array_type_definition . 0)))
       ((default . error) (WITH . (component_definition . 1)) (SEMICOLON . 
(component_definition . 1)) (COLON_EQUAL . (component_definition . 1)))
       ((default . error) (WITH . (array_type_definition . 1)) (SEMICOLON . 
(array_type_definition . 1)) (COLON_EQUAL . (array_type_definition . 1)))
-      ((default . error) (WITH . (formal_derived_type_definition . 4)) 
(SEMICOLON . (formal_derived_type_definition . 4)))
-      ((default . error) (AND .  1054) (WITH . ( 1221 
(formal_derived_type_definition . 2))) (SEMICOLON . 
(formal_derived_type_definition . 2)))
-      ((default . error) (WITH . (formal_derived_type_definition . 5)) 
(SEMICOLON . (formal_derived_type_definition . 5)))
-      ((default . error) (AND .  1054) (WITH . ( 1220 
(formal_derived_type_definition . 3))) (SEMICOLON . 
(formal_derived_type_definition . 3)))
       ((default . error) (END . (object_renaming_declaration . 2)) (PRIVATE . 
(object_renaming_declaration . 2)) (USE . (object_renaming_declaration . 2)) 
(TYPE . (object_renaming_declaration . 2)) (TASK . (object_renaming_declaration 
. 2)) (SUBTYPE . (object_renaming_declaration . 2)) (PROTECTED . 
(object_renaming_declaration . 2)) (PROCEDURE . (object_renaming_declaration . 
2)) (PRAGMA . (object_renaming_declaration . 2)) (PACKAGE . 
(object_renaming_declaration . 2)) (OVERRIDING . (obj [...]
       ((default . error) (END . (object_renaming_declaration . 1)) (PRIVATE . 
(object_renaming_declaration . 1)) (USE . (object_renaming_declaration . 1)) 
(TYPE . (object_renaming_declaration . 1)) (TASK . (object_renaming_declaration 
. 1)) (SUBTYPE . (object_renaming_declaration . 1)) (PROTECTED . 
(object_renaming_declaration . 1)) (PROCEDURE . (object_renaming_declaration . 
1)) (PRAGMA . (object_renaming_declaration . 1)) (PACKAGE . 
(object_renaming_declaration . 1)) (OVERRIDING . (obj [...]
-      ((default . error) (SEMICOLON .  1219))
-      ((default . error) (SEMICOLON .  1218))
-      ((default . error) (RECORD .  1217))
+      ((default . error) (SEMICOLON .  1209))
+      ((default . error) (SEMICOLON .  1208))
+      ((default . error) (RECORD .  1207))
       ((default . error) (IDENTIFIER . (component_clause_list . 1)) (END . 
(component_clause_list . 1)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PRIVATE . (package_body_stub . 0)) (END . 
(package_body_stub . 0)) (BEGIN . (package_body_stub . 0)) (IDENTIFIER . 
(package_body_stub . 0)) (ENTRY . (package_body_stub . 0)) (FOR . 
(package_body_stub . 0)) (FUNCTION . (package_body_stub . 0)) (GENERIC . 
(package_body_stub . 0)) (NOT . (package_body_stub . 0)) (OVERRIDING . 
(package_body_stub . 0)) (PACKAGE . (package_body_stub . 0)) (PRAGMA . 
(package_body_stub . 0)) (PROCEDURE . (package_body_stub . 0)) (PROTEC [...]
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (SEMICOLON .  1214))
+      ((default . error) (SEMICOLON .  1204))
       ((default . error) (PRIVATE . (protected_body_stub . 0)) (END . 
(protected_body_stub . 0)) (BEGIN . (protected_body_stub . 0)) (IDENTIFIER . 
(protected_body_stub . 0)) (ENTRY . (protected_body_stub . 0)) (FOR . 
(protected_body_stub . 0)) (FUNCTION . (protected_body_stub . 0)) (GENERIC . 
(protected_body_stub . 0)) (NOT . (protected_body_stub . 0)) (OVERRIDING . 
(protected_body_stub . 0)) (PACKAGE . (protected_body_stub . 0)) (PRAGMA . 
(protected_body_stub . 0)) (PROCEDURE . (protect [...]
       ((default . error) (END . (declarative_part_opt . 0)) (PRIVATE . 
(declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  7) (NOT .  
4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) (PROCEDURE . 
(overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt . 2)) (FOR . 
 279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED .  281) (TASK 
.  283) (PACKAGE .  280))
-      ((default . error) (END .  1212))
+      ((default . error) (END .  1202))
       ((default . error) (SEMICOLON . (protected_definition . 1)))
       ((default . error) (LOOP . (subtype_indication . 0)) (DO . 
(subtype_indication . 0)) (RIGHT_PAREN . (subtype_indication . 0)) (COMMA . 
(subtype_indication . 0)) (EQUAL_GREATER . (subtype_indication . 0)) (WITH . 
(subtype_indication . 0)) (AND . (subtype_indication . 0)) (OF . 
(subtype_indication . 0)) (SEMICOLON . (subtype_indication . 0)) (COLON_EQUAL . 
(subtype_indication . 0)))
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (SEMICOLON .  1210))
+      ((default . error) (SEMICOLON .  1200))
       ((default . error) (PRIVATE . (task_body_stub . 0)) (END . 
(task_body_stub . 0)) (BEGIN . (task_body_stub . 0)) (IDENTIFIER . 
(task_body_stub . 0)) (ENTRY . (task_body_stub . 0)) (FOR . (task_body_stub . 
0)) (FUNCTION . (task_body_stub . 0)) (GENERIC . (task_body_stub . 0)) (NOT . 
(task_body_stub . 0)) (OVERRIDING . (task_body_stub . 0)) (PACKAGE . 
(task_body_stub . 0)) (PRAGMA . (task_body_stub . 0)) (PROCEDURE . 
(task_body_stub . 0)) (PROTECTED . (task_body_stub . 0)) (SUBTYPE .  [...]
       ((default . error) (END . (declarative_part_opt . 0)) (PRIVATE . 
(declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  7) (NOT .  
4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) (PROCEDURE . 
(overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt . 2)) (FOR . 
 279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED .  281) (TASK 
.  283) (PACKAGE .  280))
-      ((default . error) (END .  1208))
+      ((default . error) (END .  1198))
       ((default . error) (SEMICOLON . (task_definition . 1)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (WITH . (type_definition . 4)) (SEMICOLON . 
(type_definition . 4)))
       ((default . error) (WITH . (type_definition . 3)) (SEMICOLON . 
(type_definition . 3)))
-      ((default . error) (IDENTIFIER .  1007) (CHARACTER_LITERAL .  1008))
+      ((default . error) (IDENTIFIER .  1003) (CHARACTER_LITERAL .  1004))
       ((default . error) (SEMICOLON . (enumeration_type_definition . 0)) (WITH 
. (enumeration_type_definition . 0)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (ALIASED .  1064) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  855))
-      ((default . error) (RECORD .  1202))
+      ((default . error) (ALIASED .  1058) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt 
. 0)) (NOT .  851))
+      ((default . error) (RECORD .  1192))
       ((default . error) (WHEN . (component_list . 1)) (FOR . (component_list 
. 1)) (IDENTIFIER . (component_list . 1)) (CASE . (component_list . 1)) (END . 
(component_list . 1)))
       ((default . error) (WHEN . (component_list . 2)) (FOR . (component_list 
. 2)) (IDENTIFIER . (component_list . 2)) (CASE . (component_list . 2)) (END . 
(component_list . 2)))
       ((default . error) (WHEN . (component_list . 4)) (FOR . (component_list 
. 4)) (IDENTIFIER . (component_list . 4)) (CASE . (component_list . 4)) (END . 
(component_list . 4)))
       ((default . error) (IS . (direct_name . 0)))
       ((default . error) (IS . (direct_name . 1)))
-      ((default . error) (IS .  1201))
-      ((default . error) (WITH . (and_interface_list_opt . 0)) (AND .  1198))
-      ((default . error) (SEMICOLON . (derived_type_definition . 1)) (DOT .  
84) (TICK .  85) (WITH . ((derived_type_definition . 1) (and_interface_list_opt 
. 0))) (AND .  1198) (LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  1197))
+      ((default . error) (IS .  1191))
+      ((default . error) (WITH . (and_interface_list_opt . 0)) (AND .  1188))
+      ((default . error) (SEMICOLON . (derived_type_definition . 1)) (DOT .  
84) (TICK .  85) (WITH . ((derived_type_definition . 1) (and_interface_list_opt 
. 0))) (AND .  1188) (LEFT_PAREN .  103))
+      ((default . error) (SEMICOLON .  1187))
       ((default . error) (END . (full_type_declaration . 0)) (PRIVATE . 
(full_type_declaration . 0)) (USE . (full_type_declaration . 0)) (TYPE . 
(full_type_declaration . 0)) (TASK . (full_type_declaration . 0)) (SUBTYPE . 
(full_type_declaration . 0)) (PROTECTED . (full_type_declaration . 0)) 
(PROCEDURE . (full_type_declaration . 0)) (PRAGMA . (full_type_declaration . 
0)) (PACKAGE . (full_type_declaration . 0)) (OVERRIDING . 
(full_type_declaration . 0)) (NOT . (full_type_declaration . 0)) [...]
       ((default . error) (PRIVATE . (object_declaration . 3)) (END . 
(object_declaration . 3)) (BEGIN . (object_declaration . 3)) (IDENTIFIER . 
(object_declaration . 3)) (ENTRY . (object_declaration . 3)) (FOR . 
(object_declaration . 3)) (FUNCTION . (object_declaration . 3)) (GENERIC . 
(object_declaration . 3)) (NOT . (object_declaration . 3)) (OVERRIDING . 
(object_declaration . 3)) (PACKAGE . (object_declaration . 3)) (PRAGMA . 
(object_declaration . 3)) (PROCEDURE . (object_declaration  [...]
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
@@ -2694,107 +2675,104 @@
       ((default . error) (DOT .  84) (TICK .  85) (LOOP . 
(iterator_specification . 3)) (EQUAL_GREATER . (iterator_specification . 3)) 
(LEFT_PAREN .  103))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (RIGHT_PAREN . (if_expression . 0)))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
       ((default . error) (PROCEDURE . (protected_operation_item_list . 1)) 
(OVERRIDING . (protected_operation_item_list . 1)) (NOT . 
(protected_operation_item_list . 1)) (FUNCTION . (protected_operation_item_list 
. 1)) (FOR . (protected_operation_item_list . 1)) (ENTRY . 
(protected_operation_item_list . 1)) (END . (protected_operation_item_list . 
1)))
-      ((default . error) (WHEN . (parameter_profile_opt . 0)) (LEFT_PAREN .  
1187))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (WHEN . (parameter_profile_opt . 0)) (LEFT_PAREN .  
1177))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (THEN . (accept_statement . 1)) (WHEN . 
(accept_statement . 1)) (EXCEPTION . (accept_statement . 1)) (ELSIF . 
(accept_statement . 1)) (ELSE . (accept_statement . 1)) (OR . (accept_statement 
. 1)) (END . (accept_statement . 1)) (LESS_LESS . (accept_statement . 1)) 
(IDENTIFIER . (accept_statement . 1)) (STRING_LITERAL . (accept_statement . 1)) 
(CHARACTER_LITERAL . (accept_statement . 1)) (ACCEPT . (accept_statement . 1)) 
(ABORT . (accept_statement . 1)) (BEGIN . (a [...]
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
       ((default . error) (OR . (block_statement . 1)) (THEN . (block_statement 
. 1)) (WHEN . (block_statement . 1)) (EXCEPTION . (block_statement . 1)) (END . 
(block_statement . 1)) (LESS_LESS . (block_statement . 1)) (IDENTIFIER . 
(block_statement . 1)) (STRING_LITERAL . (block_statement . 1)) 
(CHARACTER_LITERAL . (block_statement . 1)) (ACCEPT . (block_statement . 1)) 
(ABORT . (block_statement . 1)) (BEGIN . (block_statement . 1)) (CASE . 
(block_statement . 1)) (DECLARE . (block_statem [...]
-      ((default . error) (CASE .  1184))
+      ((default . error) (CASE .  1174))
       ((default . error) (WHEN . (case_statement_alternative_list . 1)) (END . 
(case_statement_alternative_list . 1)))
-      ((default . error) (BAR .  262) (EQUAL_GREATER .  1183))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
+      ((default . error) (BAR .  262) (EQUAL_GREATER .  1173))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
       ((default . error) (OR . (exit_statement . 0)) (THEN . (exit_statement . 
0)) (WHEN . (exit_statement . 0)) (EXCEPTION . (exit_statement . 0)) (END . 
(exit_statement . 0)) (LESS_LESS . (exit_statement . 0)) (IDENTIFIER . 
(exit_statement . 0)) (STRING_LITERAL . (exit_statement . 0)) 
(CHARACTER_LITERAL . (exit_statement . 0)) (ACCEPT . (exit_statement . 0)) 
(ABORT . (exit_statement . 0)) (BEGIN . (exit_statement . 0)) (CASE . 
(exit_statement . 0)) (DECLARE . (exit_statement . 0)) (DEL [...]
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
       ((default . error) (THEN . (expression_opt . 0)) (PLUS .  136) (MINUS .  
135) (ABS .  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (IF .  1179))
+      ((default . error) (IF .  1169))
       ((default . error) (END . (elsif_statement_list . 0)) (ELSE . 
(elsif_statement_list . 0)) (ELSIF . (elsif_statement_list . 0)))
-      ((default . error) (END .  1177) (ELSE .  1176) (ELSIF .  1139))
-      ((default . error) (SEMICOLON .  1175))
+      ((default . error) (END .  1167) (ELSE .  1166) (ELSIF .  1129))
+      ((default . error) (SEMICOLON .  1165))
       ((default . error) (OR . (raise_statement . 1)) (THEN . (raise_statement 
. 1)) (WHEN . (raise_statement . 1)) (EXCEPTION . (raise_statement . 1)) (END . 
(raise_statement . 1)) (LESS_LESS . (raise_statement . 1)) (IDENTIFIER . 
(raise_statement . 1)) (STRING_LITERAL . (raise_statement . 1)) 
(CHARACTER_LITERAL . (raise_statement . 1)) (ACCEPT . (raise_statement . 1)) 
(ABORT . (raise_statement . 1)) (BEGIN . (raise_statement . 1)) (CASE . 
(raise_statement . 1)) (DECLARE . (raise_statem [...]
       ((default . error) (OR . (requeue_statement . 0)) (THEN . 
(requeue_statement . 0)) (WHEN . (requeue_statement . 0)) (EXCEPTION . 
(requeue_statement . 0)) (END . (requeue_statement . 0)) (LESS_LESS . 
(requeue_statement . 0)) (IDENTIFIER . (requeue_statement . 0)) (STRING_LITERAL 
. (requeue_statement . 0)) (CHARACTER_LITERAL . (requeue_statement . 0)) 
(ACCEPT . (requeue_statement . 0)) (ABORT . (requeue_statement . 0)) (BEGIN . 
(requeue_statement . 0)) (CASE . (requeue_statement . 0) [...]
-      ((default . error) (RETURN .  1174))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt . 0)) (NOT .  855))
-      ((default . error) (END .  1170))
-      ((default . error) (SELECT .  1169))
+      ((default . error) (RETURN .  1164))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (ACCESS . (null_exclusion_opt . 0)) (NOT .  851))
+      ((default . error) (END .  1160))
+      ((default . error) (SELECT .  1159))
       ((default . error) (OR . (selective_accept . 1)) (THEN . 
(selective_accept . 1)) (WHEN . (selective_accept . 1)) (EXCEPTION . 
(selective_accept . 1)) (END . (selective_accept . 1)) (LESS_LESS . 
(selective_accept . 1)) (IDENTIFIER . (selective_accept . 1)) (STRING_LITERAL . 
(selective_accept . 1)) (CHARACTER_LITERAL . (selective_accept . 1)) (ACCEPT . 
(selective_accept . 1)) (ABORT . (selective_accept . 1)) (BEGIN . 
(selective_accept . 1)) (CASE . (selective_accept . 1)) (DECLARE .  [...]
-      ((default . error) (SELECT .  1168))
+      ((default . error) (SELECT .  1158))
       ((default . error) (END . (delay_alternative . 0)) (OR . 
(delay_alternative . 0)) (ELSE . (delay_alternative . 0)))
-      ((default . error) (SELECT .  1167))
-      ((default . error) (SEMICOLON .  1166))
-      ((default . error) (ELSE . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
+      ((default . error) (SELECT .  1157))
+      ((default . error) (SEMICOLON .  1156))
+      ((default . error) (ELSE . (sequence_of_statements_opt . 0)) (OR . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . (lab [...]
       ((default . error) (END . (select_alternative . 2)) (OR . 
(select_alternative . 2)) (ELSE . (select_alternative . 2)))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (OTHERS .  926) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46))
-      ((default . error) (WHEN . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
-      ((default . error) (OTHERS .  926) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46))
-      ((default . error) (BAR .  1158) (EQUAL_GREATER .  1268))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (OTHERS .  922) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46))
+      ((default . error) (WHEN . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
+      ((default . error) (OTHERS .  922) (IDENTIFIER .  45) (CHARACTER_LITERAL 
.  47) (STRING_LITERAL .  46))
+      ((default . error) (BAR .  1148) (EQUAL_GREATER .  1255))
       ((default . error) (WHEN . (exception_handler . 1)) (END . 
(exception_handler . 1)))
       ((default . error) (EQUAL_GREATER . (exception_choice_list . 1)) (BAR . 
(exception_choice_list . 1)))
-      ((default . error) (SEMICOLON .  1267))
+      ((default . error) (SEMICOLON .  1254))
       ((default . error) (ELSE . (select_alternative . 0)) (OR . 
(select_alternative . 0)) (END . (select_alternative . 0)))
       ((default . error) (ELSE . (select_alternative . 4)) (OR . 
(select_alternative . 4)) (END . (select_alternative . 4)))
-      ((default . error) (SEMICOLON .  1266))
-      ((default . error) (SEMICOLON .  1265))
-      ((default . error) (SEMICOLON .  1264))
-      ((default . error) (SELECT .  1263))
+      ((default . error) (SEMICOLON .  1253))
+      ((default . error) (SEMICOLON .  1252))
+      ((default . error) (SEMICOLON .  1251))
+      ((default . error) (SELECT .  1250))
       ((default . error) (DO . (return_subtype_indication . 1)) (SEMICOLON . 
(return_subtype_indication . 1)) (COLON_EQUAL . (return_subtype_indication . 
1)))
-      ((default . error) (DO . (extended_return_object_declaration . 1)) 
(SEMICOLON . (extended_return_object_declaration . 1)) (COLON_EQUAL .  1262))
+      ((default . error) (DO . (extended_return_object_declaration . 1)) 
(SEMICOLON . (extended_return_object_declaration . 1)) (COLON_EQUAL .  1249))
       ((default . error) (DO . (return_subtype_indication . 0)) (SEMICOLON . 
(return_subtype_indication . 0)) (COLON_EQUAL . (return_subtype_indication . 
0)))
-      ((default . error) (SEMICOLON .  1261))
+      ((default . error) (SEMICOLON .  1248))
       ((default . error) (WHEN . (loop_statement . 1)) (THEN . (loop_statement 
. 1)) (OR . (loop_statement . 1)) (ELSIF . (loop_statement . 1)) (ELSE . 
(loop_statement . 1)) (WHILE . (loop_statement . 1)) (SELECT . (loop_statement 
. 1)) (RETURN . (loop_statement . 1)) (REQUEUE . (loop_statement . 1)) (RAISE . 
(loop_statement . 1)) (PRAGMA . (loop_statement . 1)) (NULL . (loop_statement . 
1)) (LOOP . (loop_statement . 1)) (IF . (loop_statement . 1)) (GOTO . 
(loop_statement . 1)) (FOR . (l [...]
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
-      ((default . error) (IF .  1259))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (ACCEPT . 
(label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . 
(label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) (LOOP . 
(label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . 
(label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . 
(label_opt . 0)) (ABORT . (label_opt . 0)) (DELAY . (label_opt . 0)) (EXIT . 
(label_opt . 0)) (GOTO . (label_opt [...]
+      ((default . error) (IF .  1246))
       ((default . error) (ELSIF . (elsif_statement_list . 1)) (ELSE . 
(elsif_statement_list . 1)) (END . (elsif_statement_list . 1)))
-      ((default . error) (SEMICOLON .  1258))
-      ((default . error) (THEN .  1257))
-      ((default . error) (END .  1256))
-      ((default . error) (SEMICOLON .  1255))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (WHEN . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
-      ((default . error) (SEMICOLON .  1253))
-      ((default . error) (END .  1252))
-      ((default . error) (END .  1251))
-      ((default . error) (FOR .  1250) (IDENTIFIER .  69))
-      ((default . error) (WHEN .  1249))
+      ((default . error) (SEMICOLON .  1245))
+      ((default . error) (THEN .  1244))
+      ((default . error) (END .  1243))
+      ((default . error) (SEMICOLON .  1242))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (WHEN . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
+      ((default . error) (SEMICOLON .  1240))
+      ((default . error) (END .  1239))
+      ((default . error) (END .  1238))
+      ((default . error) (FOR .  1237) (IDENTIFIER .  69))
+      ((default . error) (WHEN .  1236))
       ((default . error) (WHEN . (entry_body_formal_part . 1)))
-      ((default . error) (SEMICOLON .  1248))
+      ((default . error) (SEMICOLON .  1235))
       ((default . error) (ELSE . (elsif_expression_item . 0)) (ELSIF . 
(elsif_expression_item . 0)) (RIGHT_PAREN . (elsif_expression_item . 0)))
       ((default . error) (DOT .  84) (TICK .  85) (LOOP . 
(iterator_specification . 2)) (EQUAL_GREATER . (iterator_specification . 2)) 
(LEFT_PAREN .  103))
-      ((default . error) (SEMICOLON .  1247))
-      ((default . error) (SEMICOLON .  1246))
-      ((default . error) (SEMICOLON .  1245))
-      ((default . error) (SEMICOLON .  1244))
+      ((default . error) (SEMICOLON .  1234))
+      ((default . error) (SEMICOLON .  1233))
+      ((default . error) (SEMICOLON .  1232))
+      ((default . error) (SEMICOLON .  1231))
       ((default . error) (BEGIN . (private_type_declaration . 0)) (IDENTIFIER 
. (private_type_declaration . 0)) (ENTRY . (private_type_declaration . 0)) (FOR 
. (private_type_declaration . 0)) (FUNCTION . (private_type_declaration . 0)) 
(GENERIC . (private_type_declaration . 0)) (NOT . (private_type_declaration . 
0)) (OVERRIDING . (private_type_declaration . 0)) (PACKAGE . 
(private_type_declaration . 0)) (PRAGMA . (private_type_declaration . 0)) 
(PROCEDURE . (private_type_declaration . 0) [...]
       ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46))
-      ((default . error) (WITH .  1242))
-      ((default . error) (WITH .  1241))
-      ((default . error) (WHEN .  1238))
+      ((default . error) (WITH .  1229))
+      ((default . error) (WITH .  1228))
+      ((default . error) (WHEN .  1225))
       ((default . error) (SEMICOLON . (record_definition . 0)) (WITH . 
(record_definition . 0)))
-      ((default . error) (COLON_EQUAL .  1236) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
+      ((default . error) (COLON_EQUAL .  1223) (SEMICOLON . 
(aspect_specification_opt . 0)) (WITH .  104))
       ((default . error) (SEMICOLON . (type_definition . 1)) (WITH . 
(type_definition . 1)))
       ((default . error) (RIGHT_PAREN . (enumeration_literal_list . 1)) (COMMA 
. (enumeration_literal_list . 1)))
-      ((default . error) (DOT_DOT .  1235))
-      ((default . error) (WITH . (real_range_specification_opt . 0)) 
(SEMICOLON . (real_range_specification_opt . 0)) (RANGE .  1095))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (SEMICOLON .  1232))
+      ((default . error) (DOT_DOT .  1222))
+      ((default . error) (WITH . (real_range_specification_opt . 0)) 
(SEMICOLON . (real_range_specification_opt . 0)) (RANGE .  1085))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (SEMICOLON .  1219))
       ((default . error) (USE . (task_type_declaration . 1)) (TYPE . 
(task_type_declaration . 1)) (TASK . (task_type_declaration . 1)) (SUBTYPE . 
(task_type_declaration . 1)) (PROTECTED . (task_type_declaration . 1)) 
(PROCEDURE . (task_type_declaration . 1)) (PRAGMA . (task_type_declaration . 
1)) (PACKAGE . (task_type_declaration . 1)) (OVERRIDING . 
(task_type_declaration . 1)) (NOT . (task_type_declaration . 1)) (GENERIC . 
(task_type_declaration . 1)) (FUNCTION . (task_type_declaration  [...]
-      ((default . error) (AND .  1054) (WITH .  1231))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (SEMICOLON .  1229))
+      ((default . error) (AND .  1045) (WITH .  1218))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (SEMICOLON .  1216))
       ((default . error) (USE . (protected_type_declaration . 1)) (TYPE . 
(protected_type_declaration . 1)) (TASK . (protected_type_declaration . 1)) 
(SUBTYPE . (protected_type_declaration . 1)) (PROTECTED . 
(protected_type_declaration . 1)) (PROCEDURE . (protected_type_declaration . 
1)) (PRAGMA . (protected_type_declaration . 1)) (PACKAGE . 
(protected_type_declaration . 1)) (OVERRIDING . (protected_type_declaration . 
1)) (NOT . (protected_type_declaration . 1)) (GENERIC . (protected_typ [...]
-      ((default . error) (AND .  1054) (WITH .  1228))
-      ((default . error) (RANGE .  1227))
+      ((default . error) (AND .  1045) (WITH .  1215))
+      ((default . error) (RANGE .  1214))
       ((default . error) (SEMICOLON . (record_rep . 0)))
       ((default . error) (IDENTIFIER . (mod_clause_opt . 1)))
       ((default . error) (BEGIN . (object_renaming_declaration . 0)) 
(IDENTIFIER . (object_renaming_declaration . 0)) (ENTRY . 
(object_renaming_declaration . 0)) (FOR . (object_renaming_declaration . 0)) 
(FUNCTION . (object_renaming_declaration . 0)) (GENERIC . 
(object_renaming_declaration . 0)) (NOT . (object_renaming_declaration . 0)) 
(OVERRIDING . (object_renaming_declaration . 0)) (PACKAGE . 
(object_renaming_declaration . 0)) (PRAGMA . (object_renaming_declaration . 0)) 
(PROCEDURE .  [...]
-      ((default . error) (PRIVATE .  1226))
-      ((default . error) (PRIVATE .  1225))
       ((default . error) (COLON_EQUAL . (component_definition . 2)) (SEMICOLON 
. (component_definition . 2)) (WITH . (component_definition . 2)))
       ((default . error) (COLON_EQUAL . (component_definition . 0)) (SEMICOLON 
. (component_definition . 0)) (WITH . (component_definition . 0)))
-      ((default . error) (RIGHT_PAREN . (subtype_indication . 1)) (COMMA . 
(subtype_indication . 1)) (DOT .  84) (TICK .  85) (BAR . (discrete_choice . 
1)) (EQUAL_GREATER . (discrete_choice . 1)) (RANGE .  825) (LEFT_PAREN .  792))
-      ((default . error) (WITH . (formal_derived_type_definition . 0)) 
(SEMICOLON . (formal_derived_type_definition . 0)))
-      ((default . error) (WITH . (formal_derived_type_definition . 1)) 
(SEMICOLON . (formal_derived_type_definition . 1)))
+      ((default . error) (RIGHT_PAREN . (subtype_indication . 1)) (COMMA . 
(subtype_indication . 1)) (DOT .  84) (TICK .  85) (BAR . (discrete_choice . 
1)) (EQUAL_GREATER . (discrete_choice . 1)) (RANGE .  822) (LEFT_PAREN .  791))
+      ((default . error) (SEMICOLON . (formal_derived_type_definition . 0)) 
(WITH . (formal_derived_type_definition . 0)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (END . (declarative_part_opt . 0)) (PRIVATE . 
(declarative_part_opt . 0)) (USE .  11) (SUBTYPE .  282) (PRAGMA .  7) (NOT .  
4) (OVERRIDING .  5) (FUNCTION . (overriding_indicator_opt . 2)) (PROCEDURE . 
(overriding_indicator_opt . 2)) (ENTRY . (overriding_indicator_opt . 2)) (FOR . 
 279) (IDENTIFIER .  278) (TYPE .  284) (GENERIC .  2) (PROTECTED .  281) (TASK 
.  283) (PACKAGE .  280))
       ((default . error) (END . (single_protected_declaration . 0)) (PRIVATE . 
(single_protected_declaration . 0)) (USE . (single_protected_declaration . 0)) 
(TYPE . (single_protected_declaration . 0)) (TASK . 
(single_protected_declaration . 0)) (SUBTYPE . (single_protected_declaration . 
0)) (PROTECTED . (single_protected_declaration . 0)) (PROCEDURE . 
(single_protected_declaration . 0)) (PRAGMA . (single_protected_declaration . 
0)) (PACKAGE . (single_protected_declaration . 0)) (OVERRID [...]
@@ -2805,88 +2783,88 @@
       ((default . error) (WITH . (type_definition . 5)) (SEMICOLON . 
(type_definition . 5)))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  1285))
+      ((default . error) (SEMICOLON .  1272))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 0)) (BAR . 
(discrete_choice_list . 0)) (OTHERS .  165) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) 
(ABS .  138) (NOT .  164) (NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
-      ((default . error) (END .  1282) (WHEN .  1238))
+      ((default . error) (END .  1269) (WHEN .  1225))
       ((default . error) (END . (variant_list . 0)) (WHEN . (variant_list . 
0)))
-      ((default . error) (PRIVATE .  1281))
-      ((default . error) (RECORD .  840) (NULL .  838))
-      ((default . error) (AND .  1054) (WITH . (and_interface_list_opt . 1)))
+      ((default . error) (PRIVATE .  1268))
+      ((default . error) (RECORD .  837) (NULL .  835))
+      ((default . error) (AND .  1045) (WITH . (and_interface_list_opt . 1)))
       ((default . error) (PRIVATE . (object_declaration . 2)) (END . 
(object_declaration . 2)) (BEGIN . (object_declaration . 2)) (IDENTIFIER . 
(object_declaration . 2)) (ENTRY . (object_declaration . 2)) (FOR . 
(object_declaration . 2)) (FUNCTION . (object_declaration . 2)) (GENERIC . 
(object_declaration . 2)) (NOT . (object_declaration . 2)) (OVERRIDING . 
(object_declaration . 2)) (PACKAGE . (object_declaration . 2)) (PRAGMA . 
(object_declaration . 2)) (PROCEDURE . (object_declaration  [...]
       ((default . error) (PRIVATE . (object_declaration . 4)) (END . 
(object_declaration . 4)) (BEGIN . (object_declaration . 4)) (IDENTIFIER . 
(object_declaration . 4)) (ENTRY . (object_declaration . 4)) (FOR . 
(object_declaration . 4)) (FUNCTION . (object_declaration . 4)) (GENERIC . 
(object_declaration . 4)) (NOT . (object_declaration . 4)) (OVERRIDING . 
(object_declaration . 4)) (PACKAGE . (object_declaration . 4)) (PRAGMA . 
(object_declaration . 4)) (PROCEDURE . (object_declaration  [...]
       ((default . error) (PRIVATE . (object_declaration . 0)) (END . 
(object_declaration . 0)) (BEGIN . (object_declaration . 0)) (IDENTIFIER . 
(object_declaration . 0)) (ENTRY . (object_declaration . 0)) (FOR . 
(object_declaration . 0)) (FUNCTION . (object_declaration . 0)) (GENERIC . 
(object_declaration . 0)) (NOT . (object_declaration . 0)) (OVERRIDING . 
(object_declaration . 0)) (PACKAGE . (object_declaration . 0)) (PRAGMA . 
(object_declaration . 0)) (PROCEDURE . (object_declaration  [...]
       ((default . error) (PRIVATE . (entry_declaration . 0)) (END . 
(entry_declaration . 0)) (BEGIN . (entry_declaration . 0)) (IDENTIFIER . 
(entry_declaration . 0)) (ENTRY . (entry_declaration . 0)) (FOR . 
(entry_declaration . 0)) (FUNCTION . (entry_declaration . 0)) (GENERIC . 
(entry_declaration . 0)) (NOT . (entry_declaration . 0)) (OVERRIDING . 
(entry_declaration . 0)) (PACKAGE . (entry_declaration . 0)) (PRAGMA . 
(entry_declaration . 0)) (PROCEDURE . (entry_declaration . 0)) (PROTEC [...]
       ((default . error) (PRIVATE . (protected_body . 0)) (END . 
(protected_body . 0)) (BEGIN . (protected_body . 0)) (IDENTIFIER . 
(protected_body . 0)) (ENTRY . (protected_body . 0)) (FOR . (protected_body . 
0)) (FUNCTION . (protected_body . 0)) (GENERIC . (protected_body . 0)) (NOT . 
(protected_body . 0)) (OVERRIDING . (protected_body . 0)) (PACKAGE . 
(protected_body . 0)) (PRAGMA . (protected_body . 0)) (PROCEDURE . 
(protected_body . 0)) (PROTECTED . (protected_body . 0)) (SUBTYPE .  [...]
       ((default . error) (IS . (expression_opt . 0)) (PLUS .  136) (MINUS .  
135) (ABS .  138) (NOT .  141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) 
(CHARACTER_LITERAL .  47) (STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (IDENTIFIER .  1278))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
+      ((default . error) (IDENTIFIER .  1265))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
       ((default . error) (OR . (case_statement . 0)) (THEN . (case_statement . 
0)) (WHEN . (case_statement . 0)) (EXCEPTION . (case_statement . 0)) (END . 
(case_statement . 0)) (LESS_LESS . (case_statement . 0)) (IDENTIFIER . 
(case_statement . 0)) (STRING_LITERAL . (case_statement . 0)) 
(CHARACTER_LITERAL . (case_statement . 0)) (ACCEPT . (case_statement . 0)) 
(ABORT . (case_statement . 0)) (BEGIN . (case_statement . 0)) (CASE . 
(case_statement . 0)) (DECLARE . (case_statement . 0)) (DEL [...]
       ((default . error) (END . (case_statement_alternative . 0)) (WHEN . 
(case_statement_alternative . 0)))
       ((default . error) (OR . (block_statement . 0)) (THEN . (block_statement 
. 0)) (WHEN . (block_statement . 0)) (EXCEPTION . (block_statement . 0)) (END . 
(block_statement . 0)) (LESS_LESS . (block_statement . 0)) (IDENTIFIER . 
(block_statement . 0)) (STRING_LITERAL . (block_statement . 0)) 
(CHARACTER_LITERAL . (block_statement . 0)) (ACCEPT . (block_statement . 0)) 
(ABORT . (block_statement . 0)) (BEGIN . (block_statement . 0)) (CASE . 
(block_statement . 0)) (DECLARE . (block_statem [...]
-      ((default . error) (IF .  1275))
-      ((default . error) (ELSE . (sequence_of_statements_opt . 0)) (ELSIF . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . ( [...]
+      ((default . error) (IF .  1262))
+      ((default . error) (ELSE . (sequence_of_statements_opt . 0)) (ELSIF . 
(sequence_of_statements_opt . 0)) (END . (sequence_of_statements_opt . 0)) 
(ACCEPT . (label_opt . 0)) (BEGIN . (label_opt . 0)) (CASE . (label_opt . 0)) 
(DECLARE . (label_opt . 0)) (FOR . (label_opt . 0)) (IF . (label_opt . 0)) 
(LOOP . (label_opt . 0)) (RETURN . (label_opt . 0)) (SELECT . (label_opt . 0)) 
(WHILE . (label_opt . 0)) (STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL 
. (label_opt . 0)) (ABORT . ( [...]
       ((default . error) (OR . (if_statement . 3)) (THEN . (if_statement . 3)) 
(WHEN . (if_statement . 3)) (EXCEPTION . (if_statement . 3)) (END . 
(if_statement . 3)) (LESS_LESS . (if_statement . 3)) (IDENTIFIER . 
(if_statement . 3)) (STRING_LITERAL . (if_statement . 3)) (CHARACTER_LITERAL . 
(if_statement . 3)) (ACCEPT . (if_statement . 3)) (ABORT . (if_statement . 3)) 
(BEGIN . (if_statement . 3)) (CASE . (if_statement . 3)) (DECLARE . 
(if_statement . 3)) (DELAY . (if_statement . 3)) (EX [...]
-      ((default . error) (SEMICOLON .  1273))
-      ((default . error) (END .  1272))
+      ((default . error) (SEMICOLON .  1260))
+      ((default . error) (END .  1259))
       ((default . error) (OR . (extended_return_statement . 0)) (THEN . 
(extended_return_statement . 0)) (WHEN . (extended_return_statement . 0)) 
(EXCEPTION . (extended_return_statement . 0)) (END . (extended_return_statement 
. 0)) (LESS_LESS . (extended_return_statement . 0)) (IDENTIFIER . 
(extended_return_statement . 0)) (STRING_LITERAL . (extended_return_statement . 
0)) (CHARACTER_LITERAL . (extended_return_statement . 0)) (ACCEPT . 
(extended_return_statement . 0)) (ABORT . (extended_ [...]
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
-      ((default . error) (SEMICOLON .  1270))
+      ((default . error) (SEMICOLON .  1257))
       ((default . error) (OR . (selective_accept . 0)) (THEN . 
(selective_accept . 0)) (WHEN . (selective_accept . 0)) (EXCEPTION . 
(selective_accept . 0)) (END . (selective_accept . 0)) (LESS_LESS . 
(selective_accept . 0)) (IDENTIFIER . (selective_accept . 0)) (STRING_LITERAL . 
(selective_accept . 0)) (CHARACTER_LITERAL . (selective_accept . 0)) (ACCEPT . 
(selective_accept . 0)) (ABORT . (selective_accept . 0)) (BEGIN . 
(selective_accept . 0)) (CASE . (selective_accept . 0)) (DECLARE .  [...]
       ((default . error) (OR . (conditional_entry_call . 0)) (THEN . 
(conditional_entry_call . 0)) (WHEN . (conditional_entry_call . 0)) (EXCEPTION 
. (conditional_entry_call . 0)) (END . (conditional_entry_call . 0)) (LESS_LESS 
. (conditional_entry_call . 0)) (IDENTIFIER . (conditional_entry_call . 0)) 
(STRING_LITERAL . (conditional_entry_call . 0)) (CHARACTER_LITERAL . 
(conditional_entry_call . 0)) (ACCEPT . (conditional_entry_call . 0)) (ABORT . 
(conditional_entry_call . 0)) (BEGIN . ( [...]
       ((default . error) (OR . (timed_entry_call . 0)) (THEN . 
(timed_entry_call . 0)) (WHEN . (timed_entry_call . 0)) (EXCEPTION . 
(timed_entry_call . 0)) (END . (timed_entry_call . 0)) (LESS_LESS . 
(timed_entry_call . 0)) (IDENTIFIER . (timed_entry_call . 0)) (STRING_LITERAL . 
(timed_entry_call . 0)) (CHARACTER_LITERAL . (timed_entry_call . 0)) (ACCEPT . 
(timed_entry_call . 0)) (ABORT . (timed_entry_call . 0)) (BEGIN . 
(timed_entry_call . 0)) (CASE . (timed_entry_call . 0)) (DECLARE .  [...]
       ((default . error) (OR . (loop_statement . 0)) (THEN . (loop_statement . 
0)) (WHEN . (loop_statement . 0)) (EXCEPTION . (loop_statement . 0)) (END . 
(loop_statement . 0)) (LESS_LESS . (loop_statement . 0)) (IDENTIFIER . 
(loop_statement . 0)) (STRING_LITERAL . (loop_statement . 0)) 
(CHARACTER_LITERAL . (loop_statement . 0)) (ACCEPT . (loop_statement . 0)) 
(ABORT . (loop_statement . 0)) (BEGIN . (loop_statement . 0)) (CASE . 
(loop_statement . 0)) (DECLARE . (loop_statement . 0)) (DEL [...]
-      ((default . error) (WHEN . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
+      ((default . error) (WHEN . (sequence_of_statements_opt . 0)) (END . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt . 0)) ( [...]
       ((default . error) (WHEN . (exception_handler . 0)) (END . 
(exception_handler . 0)))
       ((default . error) (WHEN . (asynchronous_select . 0)) (THEN . 
(asynchronous_select . 0)) (OR . (asynchronous_select . 0)) (ELSIF . 
(asynchronous_select . 0)) (ELSE . (asynchronous_select . 0)) (WHILE . 
(asynchronous_select . 0)) (SELECT . (asynchronous_select . 0)) (RETURN . 
(asynchronous_select . 0)) (REQUEUE . (asynchronous_select . 0)) (RAISE . 
(asynchronous_select . 0)) (PRAGMA . (asynchronous_select . 0)) (NULL . 
(asynchronous_select . 0)) (LOOP . (asynchronous_select . 0)) (I [...]
       ((default . error) (DO . (extended_return_object_declaration . 0)) 
(SEMICOLON . (extended_return_object_declaration . 0)))
-      ((default . error) (IF .  1303))
+      ((default . error) (IF .  1290))
       ((default . error) (WHEN . (if_statement . 1)) (THEN . (if_statement . 
1)) (OR . (if_statement . 1)) (ELSIF . (if_statement . 1)) (ELSE . 
(if_statement . 1)) (WHILE . (if_statement . 1)) (SELECT . (if_statement . 1)) 
(RETURN . (if_statement . 1)) (REQUEUE . (if_statement . 1)) (RAISE . 
(if_statement . 1)) (PRAGMA . (if_statement . 1)) (NULL . (if_statement . 1)) 
(LOOP . (if_statement . 1)) (IF . (if_statement . 1)) (GOTO . (if_statement . 
1)) (FOR . (if_statement . 1)) (EXIT . (if_ [...]
       ((default . error) (ELSE . (elsif_statement_item . 0)) (ELSIF . 
(elsif_statement_item . 0)) (END . (elsif_statement_item . 0)))
-      ((default . error) (SEMICOLON .  1302))
-      ((default . error) (SEMICOLON .  1301))
-      ((default . error) (SEMICOLON .  1300))
-      ((default . error) (IN .  1299))
-      ((default . error) (IS .  1298))
+      ((default . error) (SEMICOLON .  1289))
+      ((default . error) (SEMICOLON .  1288))
+      ((default . error) (SEMICOLON .  1287))
+      ((default . error) (IN .  1286))
+      ((default . error) (IS .  1285))
       ((default . error) (WITH . (derived_type_definition . 0)) (SEMICOLON . 
(derived_type_definition . 0)))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
-      ((default . error) (CASE .  1296))
+      ((default . error) (CASE .  1283))
       ((default . error) (WHEN . (variant_list . 1)) (END . (variant_list . 
1)))
-      ((default . error) (BAR .  262) (EQUAL_GREATER .  1295))
+      ((default . error) (BAR .  262) (EQUAL_GREATER .  1282))
       ((default . error) (WHEN . (component_declaration . 1)) (END . 
(component_declaration . 1)) (CASE . (component_declaration . 1)) (IDENTIFIER . 
(component_declaration . 1)) (FOR . (component_declaration . 1)))
       ((default . error) (SEMICOLON . (aspect_specification_opt . 0)) (WITH .  
104))
       ((default . error) (SEMICOLON . (real_range_specification_opt . 1)) 
(WITH . (real_range_specification_opt . 1)))
-      ((default . error) (SEMICOLON .  1293))
-      ((default . error) (SEMICOLON .  1292))
-      ((default . error) (DOT_DOT .  1291))
+      ((default . error) (SEMICOLON .  1280))
+      ((default . error) (SEMICOLON .  1279))
+      ((default . error) (DOT_DOT .  1278))
       ((default . error) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  
141) (NULL .  142) (NEW .  140) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (LEFT_PAREN .  139))
       ((default . error) (PRIVATE . (protected_type_declaration . 0)) (END . 
(protected_type_declaration . 0)) (BEGIN . (protected_type_declaration . 0)) 
(IDENTIFIER . (protected_type_declaration . 0)) (ENTRY . 
(protected_type_declaration . 0)) (FOR . (protected_type_declaration . 0)) 
(FUNCTION . (protected_type_declaration . 0)) (GENERIC . 
(protected_type_declaration . 0)) (NOT . (protected_type_declaration . 0)) 
(OVERRIDING . (protected_type_declaration . 0)) (PACKAGE . (protected_type [...]
       ((default . error) (PRIVATE . (task_type_declaration . 0)) (END . 
(task_type_declaration . 0)) (BEGIN . (task_type_declaration . 0)) (IDENTIFIER 
. (task_type_declaration . 0)) (ENTRY . (task_type_declaration . 0)) (FOR . 
(task_type_declaration . 0)) (FUNCTION . (task_type_declaration . 0)) (GENERIC 
. (task_type_declaration . 0)) (NOT . (task_type_declaration . 0)) (OVERRIDING 
. (task_type_declaration . 0)) (PACKAGE . (task_type_declaration . 0)) (PRAGMA 
. (task_type_declaration . 0 [...]
-      ((default . error) (SEMICOLON .  1310))
-      ((default . error) (NULL .  996) (CASE .  995) (IDENTIFIER .  69) (FOR . 
 279))
-      ((default . error) (SEMICOLON .  1308))
-      ((default . error) (SEMICOLON .  1307))
+      ((default . error) (SEMICOLON .  1297))
+      ((default . error) (NULL .  992) (CASE .  991) (IDENTIFIER .  69) (FOR . 
 279))
+      ((default . error) (SEMICOLON .  1295))
+      ((default . error) (SEMICOLON .  1294))
       ((default . error) (BEGIN . (declarative_part_opt . 0)) (USE .  11) 
(SUBTYPE .  282) (PRAGMA .  7) (NOT .  4) (OVERRIDING .  5) (FUNCTION . 
(overriding_indicator_opt . 2)) (PROCEDURE . (overriding_indicator_opt . 2)) 
(ENTRY . (overriding_indicator_opt . 2)) (FOR .  279) (IDENTIFIER .  278) (TYPE 
.  284) (GENERIC .  2) (PROTECTED .  281) (TASK .  283) (PACKAGE .  280))
-      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  750) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
+      ((default . error) (IDENTIFIER .  45) (CHARACTER_LITERAL .  47) 
(STRING_LITERAL .  46) (PLUS .  136) (MINUS .  135) (ABS .  138) (NOT .  746) 
(NULL .  142) (NEW .  140) (LEFT_PAREN .  139))
       ((default . error) (PRIVATE . (task_body . 0)) (END . (task_body . 0)) 
(BEGIN . (task_body . 0)) (IDENTIFIER . (task_body . 0)) (ENTRY . (task_body . 
0)) (FOR . (task_body . 0)) (FUNCTION . (task_body . 0)) (GENERIC . (task_body 
. 0)) (NOT . (task_body . 0)) (OVERRIDING . (task_body . 0)) (PACKAGE . 
(task_body . 0)) (PRAGMA . (task_body . 0)) (PROCEDURE . (task_body . 0)) 
(PROTECTED . (task_body . 0)) (SUBTYPE . (task_body . 0)) (TASK . (task_body . 
0)) (TYPE . (task_body . 0)) (US [...]
       ((default . error) (THEN . (accept_statement . 0)) (WHEN . 
(accept_statement . 0)) (EXCEPTION . (accept_statement . 0)) (ELSIF . 
(accept_statement . 0)) (ELSE . (accept_statement . 0)) (OR . (accept_statement 
. 0)) (END . (accept_statement . 0)) (LESS_LESS . (accept_statement . 0)) 
(IDENTIFIER . (accept_statement . 0)) (STRING_LITERAL . (accept_statement . 0)) 
(CHARACTER_LITERAL . (accept_statement . 0)) (ACCEPT . (accept_statement . 0)) 
(ABORT . (accept_statement . 0)) (BEGIN . (a [...]
       ((default . error) (OR . (if_statement . 2)) (THEN . (if_statement . 2)) 
(WHEN . (if_statement . 2)) (EXCEPTION . (if_statement . 2)) (END . 
(if_statement . 2)) (LESS_LESS . (if_statement . 2)) (IDENTIFIER . 
(if_statement . 2)) (STRING_LITERAL . (if_statement . 2)) (CHARACTER_LITERAL . 
(if_statement . 2)) (ACCEPT . (if_statement . 2)) (ABORT . (if_statement . 2)) 
(BEGIN . (if_statement . 2)) (CASE . (if_statement . 2)) (DECLARE . 
(if_statement . 2)) (DELAY . (if_statement . 2)) (EX [...]
-      ((default . error) (SEMICOLON .  1304))
+      ((default . error) (SEMICOLON .  1291))
       ((default . error) (WHEN . (if_statement . 0)) (THEN . (if_statement . 
0)) (OR . (if_statement . 0)) (ELSIF . (if_statement . 0)) (ELSE . 
(if_statement . 0)) (WHILE . (if_statement . 0)) (SELECT . (if_statement . 0)) 
(RETURN . (if_statement . 0)) (REQUEUE . (if_statement . 0)) (RAISE . 
(if_statement . 0)) (PRAGMA . (if_statement . 0)) (NULL . (if_statement . 0)) 
(LOOP . (if_statement . 0)) (IF . (if_statement . 0)) (GOTO . (if_statement . 
0)) (FOR . (if_statement . 0)) (EXIT . (if_ [...]
-      ((default . error) (RIGHT_PAREN .  1314))
-      ((default . error) (BEGIN .  1313))
+      ((default . error) (RIGHT_PAREN .  1301))
+      ((default . error) (BEGIN .  1300))
       ((default . error) (BEGIN . (private_extension_declaration . 0)) 
(IDENTIFIER . (private_extension_declaration . 0)) (ENTRY . 
(private_extension_declaration . 0)) (FOR . (private_extension_declaration . 
0)) (FUNCTION . (private_extension_declaration . 0)) (GENERIC . 
(private_extension_declaration . 0)) (NOT . (private_extension_declaration . 
0)) (OVERRIDING . (private_extension_declaration . 0)) (PACKAGE . 
(private_extension_declaration . 0)) (PRAGMA . (private_extension_declaration 
[...]
       ((default . error) (WHEN . (variant_part . 0)) (END . (variant_part . 
0)) (CASE . (variant_part . 0)) (IDENTIFIER . (variant_part . 0)) (FOR . 
(variant_part . 0)))
-      ((default . error) (END . (variant . 0)) (WHEN . (variant . 0)) (CASE .  
995) (IDENTIFIER .  69) (FOR .  279))
+      ((default . error) (END . (variant . 0)) (WHEN . (variant . 0)) (CASE .  
991) (IDENTIFIER .  69) (FOR .  279))
       ((default . error) (WHEN . (component_declaration . 0)) (END . 
(component_declaration . 0)) (CASE . (component_declaration . 0)) (IDENTIFIER . 
(component_declaration . 0)) (FOR . (component_declaration . 0)))
-      ((default . error) (SEMICOLON .  1312))
+      ((default . error) (SEMICOLON .  1299))
       ((default . error) (END . (component_clause . 0)) (IDENTIFIER . 
(component_clause . 0)))
-      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
-      ((default . error) (WHEN . (parameter_profile_opt . 0)) (LEFT_PAREN .  
773))
+      ((default . error) (END . (sequence_of_statements_opt . 0)) (EXCEPTION . 
(sequence_of_statements_opt . 0)) (ACCEPT . (label_opt . 0)) (BEGIN . 
(label_opt . 0)) (CASE . (label_opt . 0)) (DECLARE . (label_opt . 0)) (FOR . 
(label_opt . 0)) (IF . (label_opt . 0)) (LOOP . (label_opt . 0)) (RETURN . 
(label_opt . 0)) (SELECT . (label_opt . 0)) (WHILE . (label_opt . 0)) 
(STRING_LITERAL . (label_opt . 0)) (CHARACTER_LITERAL . (label_opt . 0)) (ABORT 
. (label_opt . 0)) (DELAY . (label_opt .  [...]
+      ((default . error) (WHEN . (parameter_profile_opt . 0)) (LEFT_PAREN .  
770))
       ((default . error) (WHEN . (entry_body_formal_part . 0)))
-      ((default . error) (END .  1317))
-      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
683))
-      ((default . error) (SEMICOLON .  1319))
+      ((default . error) (END .  1304))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  
682))
+      ((default . error) (SEMICOLON .  1306))
       ((default . error) (PROCEDURE . (entry_body . 0)) (OVERRIDING . 
(entry_body . 0)) (NOT . (entry_body . 0)) (FUNCTION . (entry_body . 0)) (FOR . 
(entry_body . 0)) (ENTRY . (entry_body . 0)) (END . (entry_body . 0)))]
      [((compilation_unit . 13)(compilation_unit_list . 14)(context_item . 
15)(generic_declaration . 16)(generic_formal_part . 17)(generic_instantiation . 
18)(generic_package_declaration . 19)(generic_renaming_declaration . 
20)(generic_subprogram_declaration . 21)(library_item . 
22)(library_unit_declaration . 23)(library_unit_renaming_declaration . 
24)(overriding_indicator_opt . 25)(package_body . 26)(package_declaration . 
27)(package_specification . 28)(pragma . 29)(procedure_specificati [...]
       ((attribute_reference . 48)(name . 83)(qualified_expression . 
51)(selected_component . 52))
@@ -3127,7 +3105,7 @@
       nil
       ((actual_parameter_part . 88))
       ((aspect_specification_opt . 486))
-      ((abstract_tagged_limited_opt . 480)(access_definition . 
481)(array_type_definition . 482)(formal_type_definition . 
483)(formal_derived_type_definition . 484)(interface_type_definition . 
485)(null_exclusion_opt . 201))
+      ((abstract_limited_synchronized_opt . 479)(abstract_tagged_limited_opt . 
480)(access_definition . 481)(array_type_definition . 
482)(formal_type_definition . 483)(formal_derived_type_definition . 
484)(interface_type_definition . 485)(null_exclusion_opt . 201))
       nil
       nil
       nil
@@ -3261,9 +3239,9 @@
       nil
       ((attribute_reference . 48)(name . 374)(qualified_expression . 
51)(selected_component . 52))
       ((attribute_reference . 48)(name . 373)(qualified_expression . 
51)(selected_component . 52))
-      ((actual_parameter_part . 88)(aspect_specification_opt . 645))
       ((actual_parameter_part . 88)(aspect_specification_opt . 644))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 627)(if_statement . 628)(iteration_scheme 
. 629)(label_opt . 630)(loop_statement . 631)(name . 632)(pragma . 
633)(procedure_call_statement . 634)(qualified_expression . 51)(raise_statement 
. 63 [...]
+      ((actual_parameter_part . 88)(aspect_specification_opt . 643))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 626)(if_statement . 627)(iteration_scheme 
. 628)(label_opt . 629)(loop_statement . 630)(name . 631)(pragma . 
632)(procedure_call_statement . 633)(qualified_expression . 51)(raise_statement 
. 63 [...]
       ((aspect_specification_opt . 123))
       nil
       nil
@@ -3275,21 +3253,21 @@
       nil
       nil
       nil
-      ((iterator_specification . 594))
+      ((iterator_specification . 593))
       nil
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation . 
591)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      nil
       ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation . 
590)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      nil
       ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation . 
589)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
+      nil
       ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation . 
588)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation . 
587)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      nil
       nil
       nil
       ((multiplying_operator . 341))
@@ -3297,49 +3275,49 @@
       nil
       nil
       ((aspect_specification_opt . 123))
-      ((aliased_opt . 581))
-      ((attribute_reference . 48)(name . 578)(qualified_expression . 
51)(selected_component . 52))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 577)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((aliased_opt . 580))
+      ((attribute_reference . 48)(name . 577)(qualified_expression . 
51)(selected_component . 52))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 576)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
-      ((discriminant_part_opt . 576))
-      ((aspect_specification_opt . 574))
+      ((discriminant_part_opt . 575))
+      ((aspect_specification_opt . 573))
       nil
       nil
       nil
-      ((aspect_specification_opt . 570))
+      ((aspect_specification_opt . 569))
       nil
       nil
-      ((attribute_reference . 48)(name . 567)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 566)(qualified_expression . 
51)(selected_component . 52))
       ((actual_parameter_part . 88)(aspect_specification_opt . 105))
       nil
       nil
       nil
       nil
       ((actual_parameter_part . 88))
-      ((access_definition . 561)(null_exclusion_opt . 562))
+      ((access_definition . 560)(null_exclusion_opt . 561))
       nil
       nil
       nil
       ((actual_parameter_part . 88))
       nil
       nil
-      ((relational_operator . 555))
+      ((relational_operator . 554))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(choice_relation . 
559)(factor . 145)(name . 146)(primary . 149)(qualified_expression . 
51)(selected_component . 52)(simple_expression . 435)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       ((aggregate . 143)(attribute_reference . 48)(choice_relation . 
558)(factor . 145)(name . 146)(primary . 149)(qualified_expression . 
51)(selected_component . 52)(simple_expression . 435)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      nil
       ((aggregate . 143)(attribute_reference . 48)(choice_relation . 
557)(factor . 145)(name . 146)(primary . 149)(qualified_expression . 
51)(selected_component . 52)(simple_expression . 435)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       ((aggregate . 143)(attribute_reference . 48)(choice_relation . 
556)(factor . 145)(name . 146)(primary . 149)(qualified_expression . 
51)(selected_component . 52)(simple_expression . 435)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
+      ((aggregate . 143)(attribute_reference . 48)(choice_relation . 
555)(factor . 145)(name . 146)(primary . 149)(qualified_expression . 
51)(selected_component . 52)(simple_expression . 435)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      nil
       nil
       nil
       nil
-      ((relational_operator . 555))
+      ((relational_operator . 554))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 
145)(membership_choice_list . 553)(membership_choice . 453)(name . 179)(primary 
. 149)(qualified_expression . 51)(range . 454)(selected_component . 
52)(simple_expression . 455)(term . 157)(term_list . 158)(unary_adding_operator 
. 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 
145)(membership_choice_list . 552)(membership_choice . 453)(name . 179)(primary 
. 149)(qualified_expression . 51)(range . 454)(selected_component . 
52)(simple_expression . 455)(term . 157)(term_list . 158)(unary_adding_operator 
. 159))
       nil
       nil
       nil
@@ -3349,8 +3327,8 @@
       nil
       nil
       nil
-      ((access_definition . 544)(attribute_reference . 48)(name . 
545)(null_exclusion_opt . 201)(null_exclusion_opt_name . 
546)(qualified_expression . 51)(selected_component . 547))
-      ((discriminant_specification_opt . 541)(identifier_list . 244))
+      ((access_definition . 543)(attribute_reference . 48)(name . 
544)(null_exclusion_opt . 201)(null_exclusion_opt_name . 
545)(qualified_expression . 51)(selected_component . 546))
+      ((discriminant_specification_opt . 540)(identifier_list . 244))
       nil
       nil
       nil
@@ -3362,11 +3340,11 @@
       nil
       nil
       nil
-      ((attribute_reference . 48)(name . 530)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
-      ((aspect_specification_opt . 526))
+      ((aspect_specification_opt . 527))
+      nil
       nil
       nil
       nil
@@ -3397,36 +3375,35 @@
       nil
       nil
       nil
-      ((null_exclusion_opt . 777))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 776)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((formal_part . 89)(parameter_and_result_profile . 775))
-      ((formal_part . 111)(parameter_profile_opt . 774))
+      ((null_exclusion_opt . 774))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 773)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((formal_part . 89)(parameter_and_result_profile . 772))
+      ((formal_part . 111)(parameter_profile_opt . 771))
       ((actual_parameter_part . 88))
       nil
-      ((aspect_specification_opt . 772))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 771)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aspect_specification_opt . 769))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 768)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((actual_parameter_part . 88)(formal_package_actual_part . 769))
+      ((actual_parameter_part . 88)(formal_package_actual_part . 766))
       nil
       nil
       nil
       nil
       nil
+      ((attribute_reference . 48)(name . 762)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
       nil
       nil
       nil
-      ((actual_parameter_part . 88))
       nil
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 751)(discrete_subtype_definition_list . 752)(factor . 
145)(index_subtype_definition . 753)(index_subtype_definition_list . 754)(name 
. 755)(primary . 149)(qualified_expression . 51)(range . 
756)(selected_component . 52)(simple_expression . 757)(subtype_indication . 
758)(term . 157)(term_list . 158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 747)(discrete_subtype_definition_list . 748)(factor . 
145)(index_subtype_definition . 749)(index_subtype_definition_list . 750)(name 
. 751)(primary . 149)(qualified_expression . 51)(range . 
752)(selected_component . 52)(simple_expression . 753)(subtype_indication . 
754)(term . 157)(term_list . 158)(unary_adding_operator . 159))
       nil
-      ((attribute_reference . 48)(name . 748)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
@@ -3440,72 +3417,72 @@
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 
145)(membership_choice . 742)(name . 179)(primary . 149)(qualified_expression . 
51)(range . 454)(selected_component . 52)(simple_expression . 455)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 
145)(membership_choice . 741)(name . 179)(primary . 149)(qualified_expression . 
51)(range . 454)(selected_component . 52)(simple_expression . 455)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 741)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 740)(term . 157)(term_list . 158)(unary_adding_operator 
. 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 740)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 739)(term . 157)(term_list . 158)(unary_adding_operator 
. 159))
       nil
       nil
       nil
       nil
       nil
       nil
-      ((attribute_reference . 48)(name . 737)(qualified_expression . 
51)(selected_component . 52))
-      ((aggregate . 735)(record_rep . 736))
+      ((attribute_reference . 48)(name . 736)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 734)(record_rep . 735))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 732)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 731)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 731)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 730)(qualified_expression . 
51)(selected_component . 52))
       ((actual_parameter_part . 88)(aspect_specification_opt . 160))
-      ((discriminant_part_opt . 729))
-      ((aspect_specification_opt . 695))
-      nil
-      ((attribute_reference . 48)(name . 725)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 726))
-      ((discriminant_part_opt . 723))
+      ((discriminant_part_opt . 728))
       ((aspect_specification_opt . 694))
       nil
+      ((attribute_reference . 48)(name . 724)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 725))
+      ((discriminant_part_opt . 722))
+      ((aspect_specification_opt . 693))
+      nil
       nil
       nil
       nil
       ((actual_parameter_part . 88))
       nil
       nil
-      ((constant_opt . 715))
+      ((constant_opt . 714))
       nil
-      ((attribute_reference . 48)(name . 711)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 710)(qualified_expression . 
51)(selected_component . 52))
       nil
-      ((formal_part . 111)(parameter_profile_opt . 709))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 707)(if_statement . 628)(iteration_scheme 
. 629)(label_opt . 630)(loop_statement . 631)(name . 632)(pragma . 
633)(procedure_call_statement . 634)(qualified_expression . 51)(raise_statement 
. 63 [...]
-      ((attribute_reference . 48)(name . 705)(name_opt . 
706)(qualified_expression . 51)(selected_component . 52))
+      ((formal_part . 111)(parameter_profile_opt . 708))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 706)(if_statement . 627)(iteration_scheme 
. 628)(label_opt . 629)(loop_statement . 630)(name . 631)(pragma . 
632)(procedure_call_statement . 633)(qualified_expression . 51)(raise_statement 
. 63 [...]
+      ((attribute_reference . 48)(name . 704)(name_opt . 
705)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
       nil
       nil
-      ((case_expression_alternative . 703)(case_expression_alternative_list . 
704))
+      ((case_expression_alternative . 702)(case_expression_alternative_list . 
703))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 697)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       ((aggregate . 143)(attribute_reference . 48)(expression . 696)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aspect_specification_opt . 695))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 695)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       ((aspect_specification_opt . 694))
+      ((aspect_specification_opt . 693))
       nil
       nil
       nil
-      ((attribute_reference . 48)(name . 690)(qualified_expression . 
51)(selected_component . 52))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 689)(if_statement . 628)(iteration_scheme 
. 629)(label_opt . 630)(loop_statement . 631)(name . 632)(pragma . 
633)(procedure_call_statement . 634)(qualified_expression . 51)(raise_statement 
. 63 [...]
-      ((aggregate . 143)(attribute_reference . 48)(expression . 688)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 687)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
-      ((aggregate . 143)(attribute_reference . 48)(expression . 686)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((identifier_opt . 684))
-      ((iterator_specification . 681)(iterator_specification_opt . 682))
+      ((attribute_reference . 48)(name . 689)(qualified_expression . 
51)(selected_component . 52))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 688)(if_statement . 627)(iteration_scheme 
. 628)(label_opt . 629)(loop_statement . 630)(name . 631)(pragma . 
632)(procedure_call_statement . 633)(qualified_expression . 51)(raise_statement 
. 63 [...]
+      ((aggregate . 143)(attribute_reference . 48)(expression . 687)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 686)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((aggregate . 143)(attribute_reference . 48)(expression . 685)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((identifier_opt . 683))
+      ((iterator_specification . 680)(iterator_specification_opt . 681))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 679)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 678)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
-      ((attribute_reference . 48)(name . 676)(qualified_expression . 
51)(selected_component . 52))
-      ((attribute_reference . 48)(name . 674)(qualified_expression . 
51)(selected_component . 52))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
671)(extended_return_object_declaration . 
672)(extended_return_object_declaration_opt . 673)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((accept_statement . 659)(attribute_reference . 48)(delay_alternative . 
660)(delay_statement . 661)(entry_call_alternative . 662)(name . 
663)(procedure_call_statement . 664)(qualified_expression . 
51)(selected_component . 52)(select_alternative . 665)(select_alternative_list 
. 666)(select_alternative_list_opt . 667)(triggering_alternative . 668))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 656)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 675)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 673)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
670)(extended_return_object_declaration . 
671)(extended_return_object_declaration_opt . 672)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((accept_statement . 658)(attribute_reference . 48)(delay_alternative . 
659)(delay_statement . 660)(entry_call_alternative . 661)(name . 
662)(procedure_call_statement . 663)(qualified_expression . 
51)(selected_component . 52)(select_alternative . 664)(select_alternative_list 
. 665)(select_alternative_list_opt . 666)(triggering_alternative . 667))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 655)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
       nil
       nil
       nil
@@ -3518,7 +3495,7 @@
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(compound_statement . 652)(conditional_entry_call . 
623)(delay_statement . 624)(exit_statement . 625)(extended_return_statement . 
626)(if_statement . 628)(iteration_scheme . 629)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(s [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(compound_statement . 651)(conditional_entry_call . 
622)(delay_statement . 623)(exit_statement . 624)(extended_return_statement . 
625)(if_statement . 627)(iteration_scheme . 628)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(s [...]
       nil
       ((actual_parameter_part . 88))
       nil
@@ -3527,7 +3504,7 @@
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
@@ -3536,23 +3513,23 @@
       nil
       nil
       nil
-      ((exception_handler . 921)(exception_handler_list . 
922)(exception_handler_list_opt . 923))
+      ((exception_handler . 917)(exception_handler_list . 
918)(exception_handler_list_opt . 919))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 919)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 915)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
-      ((attribute_reference . 48)(name . 705)(name_opt . 
917)(qualified_expression . 51)(selected_component . 52))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
+      ((attribute_reference . 48)(name . 704)(name_opt . 
913)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 915)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((aggregate . 143)(attribute_reference . 48)(expression . 911)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
-      ((accept_statement . 618)(actual_parameter_part . 
88)(assignment_statement . 619)(asynchronous_select . 620)(attribute_reference 
. 48)(block_statement . 621)(case_statement . 622)(conditional_entry_call . 
623)(delay_statement . 624)(exit_statement . 625)(extended_return_statement . 
626)(if_statement . 628)(iteration_scheme . 629)(label_opt . 
630)(loop_statement . 631)(name . 632)(pragma . 633)(procedure_call_statement . 
634)(qualified_expression . 51)(raise_statement . 635)(requeue [...]
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(actual_parameter_part . 
88)(assignment_statement . 618)(asynchronous_select . 619)(attribute_reference 
. 48)(block_statement . 620)(case_statement . 621)(conditional_entry_call . 
622)(delay_statement . 623)(exit_statement . 624)(extended_return_statement . 
625)(if_statement . 627)(iteration_scheme . 628)(label_opt . 
629)(loop_statement . 630)(name . 631)(pragma . 632)(procedure_call_statement . 
633)(qualified_expression . 51)(raise_statement . 634)(requeue [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
@@ -3573,99 +3550,97 @@
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 891)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 887)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
       nil
       ((actual_parameter_part . 88))
-      ((actual_parameter_part . 884)(actual_parameter_part_opt . 885))
+      ((actual_parameter_part . 880)(actual_parameter_part_opt . 881))
       nil
       nil
       nil
       nil
       nil
-      ((elsif_expression_item . 878)(elsif_expression_list . 879))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 875)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 725)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 874))
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 873)(factor . 145)(name . 865)(primary . 149)(qualified_expression . 
51)(range . 756)(selected_component . 52)(simple_expression . 
757)(subtype_indication . 758)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 871)(qualified_expression . 
51)(selected_component . 52))
-      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 869)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_o [...]
+      ((elsif_expression_item . 874)(elsif_expression_list . 875))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 871)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 724)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 870))
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 869)(factor . 145)(name . 861)(primary . 149)(qualified_expression . 
51)(range . 752)(selected_component . 52)(simple_expression . 
753)(subtype_indication . 754)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 867)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 865)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_o [...]
       nil
       nil
       ((actual_parameter_part . 88))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 864)(factor . 145)(identifier_list . 203)(name . 865)(parameter_specification 
. 204)(parameter_specification_list . 205)(primary . 149)(qualified_expression 
. 51)(range . 756)(selected_component . 52)(simple_expression . 
757)(subtype_indication . 758)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aspect_specification_opt . 863))
-      ((aspect_specification_opt . 862))
-      ((actual_parameter_part . 88)(aspect_specification_opt . 861))
-      ((aspect_specification_opt . 860))
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 860)(factor . 145)(identifier_list . 203)(name . 861)(parameter_specification 
. 204)(parameter_specification_list . 205)(primary . 149)(qualified_expression 
. 51)(range . 752)(selected_component . 52)(simple_expression . 
753)(subtype_indication . 754)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       ((aspect_specification_opt . 859))
+      ((aspect_specification_opt . 858))
+      ((actual_parameter_part . 88)(aspect_specification_opt . 857))
+      ((aspect_specification_opt . 856))
+      ((aspect_specification_opt . 855))
       nil
-      ((access_definition . 856)(array_type_definition . 
857)(attribute_reference . 48)(name . 725)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
858))
+      ((access_definition . 852)(array_type_definition . 
853)(attribute_reference . 48)(name . 724)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
854))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 854)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 853)(qualified_expression . 
51)(selected_component . 52))
-      ((abstract_limited_synchronized_opt . 843)(abstract_limited_opt . 
844)(abstract_tagged_limited_opt . 845)(access_definition . 
846)(array_type_definition . 847)(derived_type_definition . 
848)(enumeration_type_definition . 849)(interface_type_definition . 
850)(null_exclusion_opt . 201)(record_type_definition . 851)(type_definition . 
852))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 850)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 704)(name_opt . 
849)(qualified_expression . 51)(selected_component . 52))
+      ((abstract_limited_synchronized_opt . 839)(abstract_limited_opt . 
840)(abstract_tagged_limited_opt . 841)(access_definition . 
842)(array_type_definition . 843)(derived_type_definition . 
844)(enumeration_type_definition . 845)(interface_type_definition . 
846)(null_exclusion_opt . 201)(record_type_definition . 847)(type_definition . 
848))
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 830)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 827)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
-      ((aspect_specification_opt . 827))
-      nil
-      ((actual_parameter_part . 88)(constraint . 794)(index_constraint . 795))
       ((aspect_specification_opt . 824))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 822)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
-      ((aspect_specification_opt . 819))
+      ((actual_parameter_part . 88)(constraint . 793)(index_constraint . 794))
+      ((aspect_specification_opt . 821))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 819)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      nil
+      ((aspect_specification_opt . 816))
       nil
-      ((actual_parameter_part . 88)(aspect_specification_opt . 817))
+      ((actual_parameter_part . 88)(aspect_specification_opt . 814))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 815)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((mod_clause_opt . 814))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 812)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((mod_clause_opt . 811))
       nil
       nil
       ((actual_parameter_part . 88))
-      ((attribute_reference . 48)(name . 809)(qualified_expression . 
51)(selected_component . 52))
-      ((attribute_reference . 48)(name . 808)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 806)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 805)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 806)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 805)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 545)(qualified_expression . 
51)(selected_component . 804))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 803)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 802)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 544)(qualified_expression . 
51)(selected_component . 801))
       nil
-      ((attribute_reference . 48)(name . 802)(qualified_expression . 
51)(selected_component . 52))
-      ((actual_parameter_part . 88))
-      ((attribute_reference . 48)(name . 801)(qualified_expression . 
51)(selected_component . 52))
       ((aggregate . 143)(attribute_reference . 48)(name . 146)(primary . 
275)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
       nil
       nil
-      ((actual_parameter_part . 88)(constraint . 794)(index_constraint . 795))
+      ((actual_parameter_part . 88)(constraint . 793)(index_constraint . 794))
       nil
       nil
       nil
       nil
       nil
-      ((attribute_reference . 48)(interface_list . 790)(name . 
787)(qualified_expression . 51)(selected_component . 52))
-      ((attribute_reference . 48)(interface_list . 789)(name . 
787)(qualified_expression . 51)(selected_component . 52))
-      ((attribute_reference . 48)(interface_list . 788)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 789)(name . 
786)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 788)(name . 
786)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 787)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
-      ((attribute_reference . 48)(interface_list . 786)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 785)(name . 
786)(qualified_expression . 51)(selected_component . 52))
+      ((actual_parameter_part . 88))
       nil
       nil
       ((aggregate . 143)(association_opt . 166)(association_list . 
167)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 176)(expression . 177)(expression_opt . 
178)(factor . 145)(name . 179)(primary . 149)(qualified_expression . 51)(range 
. 180)(relati [...]
-      ((aspect_specification_opt . 784))
+      ((aspect_specification_opt . 781))
       nil
-      ((aspect_specification_opt . 783))
+      ((aspect_specification_opt . 780))
       nil
       ((identifier_list . 203)(parameter_specification . 
204)(parameter_specification_list . 205))
       nil
       nil
       nil
-      ((attribute_reference . 48)(name . 781)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 778)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
@@ -3674,133 +3649,132 @@
       nil
       nil
       nil
+      ((attribute_reference . 48)(interface_list . 1047)(name . 
786)(qualified_expression . 51)(selected_component . 52))
+      nil
       nil
       ((actual_parameter_part . 88))
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(association_opt . 166)(association_list . 
167)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 176)(discrete_subtype_definition . 
751)(discrete_subtype_definition_list . 1052)(expression . 177)(expression_opt 
. 178)(factor . 14 [...]
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
179)(primary . 149)(qualified_expression . 51)(range . 1023)(selected_component 
. 52)(simple_expression . 757)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(association_opt . 166)(association_list . 
167)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 176)(discrete_subtype_definition . 
747)(discrete_subtype_definition_list . 1043)(expression . 177)(expression_opt 
. 178)(factor . 14 [...]
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
179)(primary . 149)(qualified_expression . 51)(range . 1018)(selected_component 
. 52)(simple_expression . 753)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
-      ((attribute_reference . 48)(index_subtype_definition . 1048)(name . 
1049)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(index_subtype_definition . 1039)(name . 
1040)(qualified_expression . 51)(selected_component . 52))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 1046)(factor . 145)(name . 865)(primary . 149)(qualified_expression . 
51)(range . 756)(selected_component . 52)(simple_expression . 
757)(subtype_indication . 758)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 1037)(factor . 145)(name . 861)(primary . 149)(qualified_expression . 
51)(range . 752)(selected_component . 52)(simple_expression . 
753)(subtype_indication . 754)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((attribute_reference . 48)(name . 1022)(qualified_expression . 
51)(selected_component . 52))
-      ((actual_parameter_part . 88))
-      ((actual_parameter_part . 88))
+      ((attribute_reference . 48)(name . 1017)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
       nil
       nil
-      ((actual_parameter_part . 88)(aspect_specification_opt . 1040))
-      ((actual_parameter_part . 88)(aspect_specification_opt . 1039))
-      ((attribute_reference . 48)(name . 1038)(qualified_expression . 
51)(selected_component . 52))
+      ((actual_parameter_part . 88)(aspect_specification_opt . 1035))
+      ((actual_parameter_part . 88)(aspect_specification_opt . 1034))
+      ((attribute_reference . 48)(name . 1033)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
-      ((component_clause . 1035)(component_clause_list . 1036))
+      ((component_clause . 1030)(component_clause_list . 1031))
       nil
       nil
       nil
-      ((aspect_specification_opt . 1031))
+      ((aspect_specification_opt . 1026))
       nil
-      ((aspect_specification_opt . 1029))
-      ((attribute_reference . 48)(interface_list . 1028)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((aspect_specification_opt . 1024))
+      ((attribute_reference . 48)(interface_list . 1023)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
179)(primary . 149)(qualified_expression . 51)(range . 1023)(selected_component 
. 52)(simple_expression . 757)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((attribute_reference . 48)(name . 1022)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
179)(primary . 149)(qualified_expression . 51)(range . 1018)(selected_component 
. 52)(simple_expression . 753)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((attribute_reference . 48)(name . 1017)(qualified_expression . 
51)(selected_component . 52))
       nil
-      ((aspect_specification_opt . 1019))
-      ((attribute_reference . 48)(interface_list . 1018)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((aspect_specification_opt . 1014))
+      ((attribute_reference . 48)(interface_list . 1013)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1012)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1011)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((enumeration_literal . 1009)(enumeration_literal_list . 1010))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1008)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1007)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((enumeration_literal . 1005)(enumeration_literal_list . 1006))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1006)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1002)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1004)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aspect_clause . 997)(at_clause . 287)(component_declaration . 
998)(component_item . 999)(component_list . 1000)(component_list_opt . 
1001)(enumeration_representation_clause . 294)(identifier_list . 
1002)(record_representation_clause . 317)(variant_part . 1003))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1000)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aspect_clause . 993)(at_clause . 287)(component_declaration . 
994)(component_item . 995)(component_list . 996)(component_list_opt . 
997)(enumeration_representation_clause . 294)(identifier_list . 
998)(record_representation_clause . 317)(variant_part . 999))
       nil
       nil
       nil
+      ((record_definition . 987))
       nil
-      ((record_definition . 991))
       nil
       nil
       nil
       nil
       nil
+      ((aspect_specification_opt . 985))
       nil
-      ((aspect_specification_opt . 989))
-      ((actual_parameter_part . 88))
       nil
       nil
-      ((aspect_specification_opt . 986))
-      ((aspect_specification_opt . 984))
       ((aspect_specification_opt . 982))
+      ((aspect_specification_opt . 980))
+      ((aspect_specification_opt . 978))
       nil
       nil
       nil
       nil
       nil
       nil
-      ((actual_parameter_part . 88)(constraint . 794)(index_constraint . 795))
-      ((attribute_reference . 48)(name . 705)(name_opt . 
974)(qualified_expression . 51)(selected_component . 52))
+      ((actual_parameter_part . 88)(constraint . 793)(index_constraint . 794))
+      ((attribute_reference . 48)(name . 704)(name_opt . 
970)(qualified_expression . 51)(selected_component . 52))
       nil
-      ((case_expression_alternative . 973))
+      ((case_expression_alternative . 969))
       nil
-      ((attribute_reference . 48)(name . 971)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 967)(qualified_expression . 
51)(selected_component . 52))
       ((actual_parameter_part . 88))
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 970)(factor . 145)(name . 865)(primary . 149)(qualified_expression . 
51)(range . 756)(selected_component . 52)(simple_expression . 
757)(subtype_indication . 758)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 966)(factor . 145)(name . 861)(primary . 149)(qualified_expression . 
51)(range . 752)(selected_component . 52)(simple_expression . 
753)(subtype_indication . 754)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 968)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 967)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 964)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 963)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((elsif_expression_item . 966))
-      ((aspect_clause . 957)(at_clause . 287)(entry_body . 
958)(enumeration_representation_clause . 294)(overriding_indicator_opt . 
959)(procedure_specification . 30)(protected_operation_item . 
960)(protected_operation_item_list . 961)(protected_operation_item_list_opt . 
962)(record_representation_clause . 317)(subprogram_body . 
963)(subprogram_declaration . 964))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 955)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((elsif_expression_item . 962))
+      ((aspect_clause . 953)(at_clause . 287)(entry_body . 
954)(enumeration_representation_clause . 294)(overriding_indicator_opt . 
955)(procedure_specification . 30)(protected_operation_item . 
956)(protected_operation_item_list . 957)(protected_operation_item_list_opt . 
958)(record_representation_clause . 317)(subprogram_body . 
959)(subprogram_declaration . 960))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 951)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       ((aggregate . 143)(association_opt . 166)(association_list . 
167)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 176)(expression . 177)(expression_opt . 
178)(factor . 145)(name . 179)(primary . 149)(qualified_expression . 51)(range 
. 221)(relati [...]
       nil
-      ((formal_part . 111)(parameter_profile_opt . 954))
+      ((formal_part . 111)(parameter_profile_opt . 950))
       nil
-      ((identifier_opt . 953))
-      ((case_statement_alternative . 951)(case_statement_alternative_list . 
952))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 949)(if_statement . 628)(iteration_scheme 
. 629)(label_opt . 630)(loop_statement . 631)(name . 632)(pragma . 
633)(procedure_call_statement . 634)(qualified_expression . 51)(raise_statement 
. 63 [...]
+      ((identifier_opt . 949))
+      ((case_statement_alternative . 947)(case_statement_alternative_list . 
948))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 945)(if_statement . 627)(iteration_scheme 
. 628)(label_opt . 629)(loop_statement . 630)(name . 631)(pragma . 
632)(procedure_call_statement . 633)(qualified_expression . 51)(raise_statement 
. 63 [...]
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 947)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 943)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 944)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 940)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 942)(if_statement . 628)(iteration_scheme 
. 629)(label_opt . 630)(loop_statement . 631)(name . 632)(pragma . 
633)(procedure_call_statement . 634)(qualified_expression . 51)(raise_statement 
. 63 [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 938)(if_statement . 627)(iteration_scheme 
. 628)(label_opt . 629)(loop_statement . 630)(name . 631)(pragma . 
632)(procedure_call_statement . 633)(qualified_expression . 51)(raise_statement 
. 63 [...]
       nil
       nil
-      ((aliased_opt . 941))
+      ((aliased_opt . 937))
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
-      ((accept_statement . 659)(delay_alternative . 660)(delay_statement . 
935)(select_alternative . 937))
+      ((accept_statement . 658)(delay_alternative . 659)(delay_statement . 
931)(select_alternative . 933))
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
-      ((delay_alternative . 934)(delay_statement . 935))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
+      ((delay_alternative . 930)(delay_statement . 931))
       nil
       nil
       nil
@@ -3808,9 +3782,9 @@
       nil
       nil
       nil
-      ((attribute_reference . 48)(exception_choice . 
927)(exception_choice_list . 928)(name . 929)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(exception_choice . 
923)(exception_choice_list . 924)(name . 925)(qualified_expression . 
51)(selected_component . 52))
       nil
-      ((exception_handler . 924))
+      ((exception_handler . 920))
       nil
       nil
       nil
@@ -3821,26 +3795,26 @@
       nil
       nil
       nil
-      ((accept_statement . 1155)(delay_alternative . 1156)(delay_statement . 
935))
+      ((accept_statement . 1145)(delay_alternative . 1146)(delay_statement . 
931))
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
-      ((constant_opt . 1147))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
+      ((constant_opt . 1137))
       nil
       nil
       nil
-      ((identifier_opt . 1143))
-      ((elsif_statement_item . 1141)(elsif_statement_list . 1142))
+      ((identifier_opt . 1133))
+      ((elsif_statement_item . 1131)(elsif_statement_list . 1132))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 1135)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_ [...]
+      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 1125)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_ [...]
       nil
-      ((case_statement_alternative . 1134))
+      ((case_statement_alternative . 1124))
       nil
       nil
       nil
@@ -3849,49 +3823,46 @@
       nil
       ((procedure_specification . 30)(subprogram_specification . 39))
       nil
-      ((aspect_clause . 957)(at_clause . 287)(entry_body . 
958)(enumeration_representation_clause . 294)(overriding_indicator_opt . 
959)(procedure_specification . 30)(protected_operation_item . 
1127)(record_representation_clause . 317)(subprogram_body . 
963)(subprogram_declaration . 964))
+      ((aspect_clause . 953)(at_clause . 287)(entry_body . 
954)(enumeration_representation_clause . 294)(overriding_indicator_opt . 
955)(procedure_specification . 30)(protected_operation_item . 
1117)(record_representation_clause . 317)(subprogram_body . 
959)(subprogram_declaration . 960))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1125)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1115)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
-      ((attribute_reference . 48)(name . 1123)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 1113)(qualified_expression . 
51)(selected_component . 52))
       nil
       ((actual_parameter_part . 88))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1121)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      nil
-      nil
-      ((formal_part . 111)(parameter_profile_opt . 1119))
-      nil
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1111)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
+      ((formal_part . 111)(parameter_profile_opt . 1109))
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1118)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1116)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1114)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((attribute_reference . 48)(name . 1022)(qualified_expression . 
51)(selected_component . 52))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1108)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1106)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((aspect_specification_opt . 1111))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1104)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((attribute_reference . 48)(name . 1110)(qualified_expression . 
51)(selected_component . 52))
-      ((attribute_reference . 48)(name . 725)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 1109))
+      ((attribute_reference . 48)(name . 1017)(qualified_expression . 
51)(selected_component . 52))
       nil
-      ((direct_name . 1108))
       nil
+      ((aspect_specification_opt . 1101))
       nil
+      ((attribute_reference . 48)(name . 1100)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 724)(qualified_expression . 
51)(selected_component . 52)(subtype_indication . 1099))
       nil
+      ((direct_name . 1098))
       nil
-      ((aspect_clause . 997)(at_clause . 287)(component_declaration . 
998)(component_item . 1103)(enumeration_representation_clause . 
294)(identifier_list . 1002)(record_representation_clause . 317)(variant_part . 
1104))
       nil
       nil
       nil
+      ((aspect_clause . 993)(at_clause . 287)(component_declaration . 
994)(component_item . 1093)(enumeration_representation_clause . 
294)(identifier_list . 998)(record_representation_clause . 317)(variant_part . 
1094))
       nil
       nil
       nil
@@ -3899,64 +3870,61 @@
       nil
       nil
       nil
-      ((real_range_specification_opt . 1097))
-      ((real_range_specification_opt . 1096))
       nil
       nil
       nil
-      ((identifier_opt . 1093))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1092)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
+      ((real_range_specification_opt . 1087))
+      ((real_range_specification_opt . 1086))
       nil
       nil
+      ((identifier_opt . 1083))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1082)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 830)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
-      ((actual_parameter_part . 88)(constraint . 1087)(index_constraint . 795))
       nil
       nil
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 827)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((actual_parameter_part . 88)(constraint . 1077)(index_constraint . 794))
       nil
-      ((identifier_opt . 1086))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1085)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
       nil
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 822)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((identifier_opt . 1076))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1075)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
       nil
       nil
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 819)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       nil
       nil
-      ((component_clause . 1078))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1076)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((actual_parameter_part . 88)(aspect_specification_opt . 1075))
       nil
       nil
-      ((attribute_reference . 48)(interface_list . 1072)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((component_clause . 1068))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1066)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((actual_parameter_part . 88)(aspect_specification_opt . 1065))
       nil
-      ((attribute_reference . 48)(interface_list . 1070)(name . 
787)(qualified_expression . 51)(selected_component . 52))
       nil
-      ((access_definition . 1065)(attribute_reference . 
48)(component_definition . 1068)(name . 725)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1067))
+      ((access_definition . 1059)(attribute_reference . 
48)(component_definition . 1062)(name . 724)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1061))
       nil
-      ((access_definition . 1065)(attribute_reference . 
48)(component_definition . 1066)(name . 725)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1067))
+      ((access_definition . 1059)(attribute_reference . 
48)(component_definition . 1060)(name . 724)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1061))
       nil
       ((actual_parameter_part . 88))
       nil
       ((aggregate . 143)(attribute_reference . 48)(name . 146)(primary . 
275)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
-      ((attribute_reference . 48)(name . 1060)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 1054)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1059)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((actual_parameter_part . 88))
-      nil
-      ((attribute_reference . 48)(name . 1224)(qualified_expression . 
51)(selected_component . 52))
       nil
-      ((access_definition . 1222)(attribute_reference . 48)(name . 
725)(null_exclusion_opt . 201)(qualified_expression . 51)(selected_component . 
52)(subtype_indication . 1223))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1052)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
+      ((actual_parameter_part . 88))
       nil
+      ((attribute_reference . 48)(name . 1212)(qualified_expression . 
51)(selected_component . 52))
       nil
+      ((access_definition . 1210)(attribute_reference . 48)(name . 
724)(null_exclusion_opt . 201)(qualified_expression . 51)(selected_component . 
52)(subtype_indication . 1211))
       nil
       nil
       nil
@@ -3967,29 +3935,29 @@
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1216)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1206)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((attribute_reference . 48)(interface_list . 1215)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 1205)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 822)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 819)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       nil
       nil
-      ((attribute_reference . 48)(interface_list . 1211)(name . 
787)(qualified_expression . 51)(selected_component . 52))
+      ((attribute_reference . 48)(interface_list . 1201)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 830)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 827)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1207)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1206)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1197)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1196)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
-      ((enumeration_literal . 1205))
+      ((enumeration_literal . 1195))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1204)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((access_definition . 1065)(attribute_reference . 
48)(component_definition . 1203)(name . 725)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1067))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1194)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((access_definition . 1059)(attribute_reference . 
48)(component_definition . 1193)(name . 724)(null_exclusion_opt . 
201)(qualified_expression . 51)(selected_component . 52)(subtype_indication . 
1061))
       nil
       nil
       nil
@@ -3997,45 +3965,45 @@
       nil
       nil
       nil
-      ((and_interface_list_opt . 1200))
-      ((actual_parameter_part . 88)(and_interface_list_opt . 1199))
+      ((and_interface_list_opt . 1190))
+      ((actual_parameter_part . 88)(and_interface_list_opt . 1189))
       nil
       nil
       nil
-      ((aspect_specification_opt . 1196))
+      ((aspect_specification_opt . 1186))
       nil
-      ((aspect_specification_opt . 1195))
+      ((aspect_specification_opt . 1185))
       nil
-      ((aspect_specification_opt . 1194))
-      ((aspect_specification_opt . 1193))
+      ((aspect_specification_opt . 1184))
+      ((aspect_specification_opt . 1183))
       nil
       nil
-      ((attribute_reference . 48)(name . 1192)(qualified_expression . 
51)(selected_component . 52))
+      ((attribute_reference . 48)(name . 1182)(qualified_expression . 
51)(selected_component . 52))
       ((actual_parameter_part . 88))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1191)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1181)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((identifier_opt . 1190))
+      ((identifier_opt . 1180))
       nil
-      ((entry_body_formal_part . 1188)(formal_part . 
111)(parameter_profile_opt . 1189))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 1186)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 6 [...]
+      ((entry_body_formal_part . 1178)(formal_part . 
111)(parameter_profile_opt . 1179))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 1176)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 6 [...]
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 1185)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 6 [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 1175)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 6 [...]
       nil
       nil
       nil
       nil
-      ((identifier_opt . 1182))
+      ((identifier_opt . 1172))
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 1180)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 1170)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
       nil
       nil
-      ((elsif_statement_item . 1178))
+      ((elsif_statement_item . 1168))
       nil
       nil
       nil
       nil
-      ((access_definition . 1171)(attribute_reference . 48)(name . 
725)(null_exclusion_opt . 201)(qualified_expression . 
51)(return_subtype_indication . 1172)(selected_component . 
52)(subtype_indication . 1173))
+      ((access_definition . 1161)(attribute_reference . 48)(name . 
724)(null_exclusion_opt . 201)(qualified_expression . 
51)(return_subtype_indication . 1162)(selected_component . 
52)(subtype_indication . 1163))
       nil
       nil
       nil
@@ -4043,12 +4011,12 @@
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
-      ((identifier_opt . 1164))
-      ((attribute_reference . 48)(exception_choice . 1163)(name . 
929)(qualified_expression . 51)(selected_component . 52))
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
-      ((attribute_reference . 48)(exception_choice . 
927)(exception_choice_list . 1161)(name . 929)(qualified_expression . 
51)(selected_component . 52))
+      ((identifier_opt . 1154))
+      ((attribute_reference . 48)(exception_choice . 1153)(name . 
925)(qualified_expression . 51)(selected_component . 52))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
+      ((attribute_reference . 48)(exception_choice . 
923)(exception_choice_list . 1151)(name . 925)(qualified_expression . 
51)(selected_component . 52))
       nil
       nil
       nil
@@ -4064,14 +4032,14 @@
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
@@ -4086,24 +4054,21 @@
       nil
       nil
       nil
-      ((attribute_reference . 48)(interface_list . 1243)(name . 
787)(qualified_expression . 51)(selected_component . 52))
-      nil
-      nil
-      ((variant_list . 1239)(variant . 1240))
-      nil
-      ((aspect_specification_opt . 1237))
+      ((attribute_reference . 48)(interface_list . 1230)(name . 
786)(qualified_expression . 51)(selected_component . 52))
       nil
       nil
+      ((variant_list . 1226)(variant . 1227))
       nil
-      ((real_range_specification_opt . 1234))
-      ((identifier_opt . 1233))
+      ((aspect_specification_opt . 1224))
       nil
       nil
       nil
-      ((identifier_opt . 1230))
+      ((real_range_specification_opt . 1221))
+      ((identifier_opt . 1220))
       nil
       nil
       nil
+      ((identifier_opt . 1217))
       nil
       nil
       nil
@@ -4112,51 +4077,51 @@
       nil
       nil
       nil
-      ((actual_parameter_part . 88)(constraint . 1087)(index_constraint . 795))
       nil
+      ((actual_parameter_part . 88)(constraint . 1077)(index_constraint . 794))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1290)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 822)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1277)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 819)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 830)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 827)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 21 [...]
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1287)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1286)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1274)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1273)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
-      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 1284)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_ [...]
-      ((variant . 1283))
+      ((aggregate . 143)(attribute_reference . 48)(choice_expression . 
168)(choice_relation_and_list . 169)(choice_relation_or_list . 
170)(choice_relation_xor_list . 171)(choice_relation_and_then_list . 
172)(choice_relation_or_else_list . 173)(choice_relation . 174)(discrete_choice 
. 175)(discrete_choice_list . 1271)(factor . 145)(name . 179)(primary . 
149)(qualified_expression . 51)(range . 221)(selected_component . 
52)(simple_expression . 448)(term . 157)(term_list . 158)(unary_adding_ [...]
+      ((variant . 1270))
       nil
       nil
-      ((record_definition . 1280))
+      ((record_definition . 1267))
       nil
       nil
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 1279)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 
177)(expression_opt . 1266)(factor . 145)(name . 146)(primary . 
149)(qualified_expression . 51)(relation_and_list . 150)(relation_and_then_list 
. 151)(relation_or_list . 152)(relation_or_else_list . 153)(relation_xor_list . 
154)(relation . 155)(selected_component . 52)(simple_expression . 156)(term . 
157)(term_list . 158)(unary_adding_operator . 159))
       nil
-      ((identifier_opt . 1277))
-      ((identifier_opt . 1276))
+      ((identifier_opt . 1264))
+      ((identifier_opt . 1263))
       nil
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(expression . 1271)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(expression . 1258)(factor . 
145)(name . 146)(primary . 149)(qualified_expression . 51)(relation_and_list . 
150)(relation_and_then_list . 151)(relation_or_list . 
152)(relation_or_else_list . 153)(relation_xor_list . 154)(relation . 
155)(selected_component . 52)(simple_expression . 156)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 626)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 635)(requeue_statement . 636)(selected_c [...]
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 625)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 634)(requeue_statement . 635)(selected_c [...]
       nil
       nil
       nil
@@ -4169,25 +4134,25 @@
       nil
       nil
       nil
-      ((aspect_specification_opt . 1297))
+      ((aspect_specification_opt . 1284))
       nil
       nil
       nil
       nil
-      ((aspect_specification_opt . 1294))
+      ((aspect_specification_opt . 1281))
       nil
       nil
       nil
       nil
-      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1311)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((aggregate . 143)(attribute_reference . 48)(factor . 145)(name . 
146)(primary . 149)(qualified_expression . 51)(selected_component . 
52)(simple_expression . 1298)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
-      ((aspect_clause . 997)(at_clause . 287)(component_declaration . 
998)(component_item . 999)(component_list . 
1309)(enumeration_representation_clause . 294)(identifier_list . 
1002)(record_representation_clause . 317)(variant_part . 1003))
+      ((aspect_clause . 993)(at_clause . 287)(component_declaration . 
994)(component_item . 995)(component_list . 
1296)(enumeration_representation_clause . 294)(identifier_list . 
998)(record_representation_clause . 317)(variant_part . 999))
       nil
       nil
-      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1306)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
-      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 1305)(factor . 145)(name . 865)(primary . 149)(qualified_expression . 
51)(range . 756)(selected_component . 52)(simple_expression . 
757)(subtype_indication . 758)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
+      ((abstract_subprogram_declaration . 285)(aspect_clause . 286)(at_clause 
. 287)(body . 288)(body_stub . 289)(declaration . 290)(declarations . 
291)(declarative_part_opt . 1293)(entry_declaration . 
293)(enumeration_representation_clause . 294)(exception_declaration . 
295)(full_type_declaration . 296)(generic_declaration . 
297)(generic_formal_part . 17)(generic_instantiation . 
298)(generic_package_declaration . 19)(generic_renaming_declaration . 
299)(generic_subprogram_declaration . 2 [...]
+      ((aggregate . 143)(attribute_reference . 48)(discrete_subtype_definition 
. 1292)(factor . 145)(name . 861)(primary . 149)(qualified_expression . 
51)(range . 752)(selected_component . 52)(simple_expression . 
753)(subtype_indication . 754)(term . 157)(term_list . 
158)(unary_adding_operator . 159))
       nil
       nil
       nil
@@ -4197,15 +4162,15 @@
       nil
       nil
       nil
-      ((aspect_clause . 997)(at_clause . 287)(component_declaration . 
998)(component_item . 1103)(enumeration_representation_clause . 
294)(identifier_list . 1002)(record_representation_clause . 317)(variant_part . 
1104))
+      ((aspect_clause . 993)(at_clause . 287)(component_declaration . 
994)(component_item . 1093)(enumeration_representation_clause . 
294)(identifier_list . 998)(record_representation_clause . 317)(variant_part . 
1094))
       nil
       nil
       nil
-      ((accept_statement . 618)(assignment_statement . 
619)(asynchronous_select . 620)(attribute_reference . 48)(block_statement . 
621)(case_statement . 622)(conditional_entry_call . 623)(delay_statement . 
624)(exit_statement . 625)(extended_return_statement . 
626)(handled_sequence_of_statements . 1316)(if_statement . 
628)(iteration_scheme . 629)(label_opt . 630)(loop_statement . 631)(name . 
632)(pragma . 633)(procedure_call_statement . 634)(qualified_expression . 
51)(raise_statement . 6 [...]
-      ((formal_part . 111)(parameter_profile_opt . 1315))
+      ((accept_statement . 617)(assignment_statement . 
618)(asynchronous_select . 619)(attribute_reference . 48)(block_statement . 
620)(case_statement . 621)(conditional_entry_call . 622)(delay_statement . 
623)(exit_statement . 624)(extended_return_statement . 
625)(handled_sequence_of_statements . 1303)(if_statement . 
627)(iteration_scheme . 628)(label_opt . 629)(loop_statement . 630)(name . 
631)(pragma . 632)(procedure_call_statement . 633)(qualified_expression . 
51)(raise_statement . 6 [...]
+      ((formal_part . 111)(parameter_profile_opt . 1302))
       nil
       nil
-      ((identifier_opt . 1318))
+      ((identifier_opt . 1305))
       nil
       nil]))
   "Parser table.")
diff --git a/packages/ada-mode/ada-mode.el b/packages/ada-mode/ada-mode.el
index c7c32bc..41a1e2e 100755
--- a/packages/ada-mode/ada-mode.el
+++ b/packages/ada-mode/ada-mode.el
@@ -1,11 +1,11 @@
 ;;; ada-mode.el --- major-mode for editing Ada sources
 ;;
-;;; Copyright (C) 1994, 1995, 1997 - 2013  Free Software Foundation, Inc.
+;;; Copyright (C) 1994, 1995, 1997 - 2014  Free Software Foundation, Inc.
 ;;
 ;; Author: Stephen Leake <address@hidden>
 ;; Maintainer: Stephen Leake <address@hidden>
 ;; Keywords FIXME: languages, ada ELPA broken for multiple keywords
-;; Version: 5.0
+;; Version: 5.0.1
 ;; package-requires: ((wisi "1.0"))
 ;; url: http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html
 ;;
@@ -113,7 +113,7 @@
 ;;
 ;;   alist entries are set during load by the implementation elisp files.
 ;;
-;;   `ada-prj-parse-file-ext' uses this style.
+;;   `ada-prj-default-compiler-alist' uses this style.
 
 ;;; History:
 ;;
@@ -161,7 +161,6 @@
 
 (require 'find-file)
 (require 'align)
-(require 'which-func)
 (require 'compile)
 
 (eval-when-compile (require 'cl-macs))
@@ -169,7 +168,7 @@
 (defun ada-mode-version ()
   "Return Ada mode version."
   (interactive)
-  (let ((version-string "5.0"))
+  (let ((version-string "5.0.1"))
     ;; must match:
     ;; ada-mode.texi
     ;; README
@@ -300,6 +299,7 @@ Values defined by cross reference packages.")
     ;; global-map has C-x ` 'next-error
     (define-key map [return]    'ada-indent-newline-indent)
     (define-key map "\C-c`"     'ada-show-secondary-error)
+    (define-key map "\C-c;"      'comment-dwim)
     (define-key map "\C-c\M-`"          'ada-fix-compiler-error)
     (define-key map "\C-c\C-a"          'ada-align)
     (define-key map "\C-c\C-b"          'ada-make-subprogram-body)
@@ -366,12 +366,11 @@ Values defined by cross reference packages.")
      )
     ("Edit"
      ["Expand skeleton"             ada-expand              t]
-     ["Indent line"                 indent-for-tab-command  t]
+     ["Indent line or selection"    indent-for-tab-command  t]
      ["Indent current statement"    ada-indent-statement    t]
      ["Indent lines in file"        (indent-region (point-min) (point-max))  t]
      ["Align"                       ada-align               t]
-     ["Comment selection"           comment-region          t]
-     ["Uncomment selection"         (comment-region t)      t]
+     ["Comment/uncomment selection" comment-dwim            t]
      ["Fill comment paragraph"         ada-fill-comment-paragraph           t]
      ["Fill comment paragraph justify" (ada-fill-comment-paragraph 'full)   t]
      ["Fill comment paragraph postfix" (ada-fill-comment-paragraph 'full t) t]
@@ -387,6 +386,7 @@ Values defined by cross reference packages.")
     ("Misc"
      ["Show last parse error"         ada-show-parse-error         t]
      ["Refresh cross reference cache" ada-xref-refresh             t]
+     ["Reset parser"                  ada-reset-parser             t]
      )))
 
 ;; This doesn't need to be buffer-local because there can be only one
@@ -768,6 +768,16 @@ Each parameter declaration is represented by a list
       )
     ))
 
+(defvar ada-reset-parser nil
+  ;; Supplied by indentation engine parser
+  "Function to reset parser, to clear confused state."
+  )
+
+(defun ada-reset-parser ()
+  (interactive)
+  (when ada-reset-parser
+    (funcall ada-reset-parser)))
+
 (defvar ada-show-parse-error nil
   ;; Supplied by indentation engine parser
   "Function to show last error reported by indentation parser."
@@ -1188,7 +1198,6 @@ Include properties set via 
`ada-prj-default-compiler-alist',
      (list
       ;; variable name alphabetical order
       'ada_compiler    ada-compiler
-      'ada_ref_tool    ada-xref-tool
       'auto_case       ada-auto-case
       'case_keyword    ada-case-keyword
       'case_strict     ada-case-strict
@@ -1215,7 +1224,7 @@ Include properties set via 
`ada-prj-default-compiler-alist',
    (lambda (ext) (cons ext 'ada-prj-parse-file-1))
    ada-prj-file-extensions)
   ;; project file parse
-  "Alist of parsers for project files.
+  "Alist of parsers for project files, indexed by file extension.
 Default provides the minimal Ada mode parser; compiler support
 code may add other parsers.  Parser is called with two arguments;
 the project file name and the current project property
@@ -1615,7 +1624,7 @@ See `ff-other-file-alist'.")
   "Regexp for extracting the parent name from fully-qualified name.")
 
 (defvar ada-file-name-from-ada-name nil
-  ;; depends on ada-compiler, per-project
+  ;; determined by ada-xref-tool, set by *-select-prj
   "Function called with one parameter ADA-NAME, which is a library
 unit name; it should return the filename in which ADA-NAME is
 found.")
@@ -1854,7 +1863,8 @@ identifier.  May be an Ada identifier or operator 
function name."
 FILE may be absolute, or on `compilation-search-path'.
 
 If OTHER-WINDOW is non-nil, show the buffer in another window."
-  (setq file (ff-get-file-name compilation-search-path file))
+  (or (file-name-absolute-p file)
+      (setq file (ff-get-file-name compilation-search-path file)))
   (let ((buffer (get-file-buffer file)))
     (cond
      ((bufferp buffer)
@@ -2532,7 +2542,8 @@ The paragraph is indented on the first line."
   (set (make-local-variable 'add-log-current-defun-function)
        'ada-add-log-current-function)
 
-  (add-hook 'which-func-functions 'ada-which-function nil t)
+  (when (boundp 'which-func-functions)
+    (add-hook 'which-func-functions 'ada-which-function nil t))
 
   ;;  Support for align
   (add-to-list 'align-dq-string-modes 'ada-mode)
@@ -2619,9 +2630,15 @@ The paragraph is indented on the first line."
   (require 'ada-gnat-compile))
 
 (unless (featurep 'ada-xref-tool)
-  (require 'ada-gnat-xref))
+  (cl-case ada-xref-tool
+    ((nil 'gnat) (require 'ada-gnat-xref))
+    ('gnat_inspect (require 'gnat-inspect))
+    ))
 
 (unless (featurep 'ada-skeletons)
   (require 'ada-skel))
 
+(when (featurep 'imenu)
+  (require 'ada-imenu))
+
 ;;; end of file
diff --git a/packages/ada-mode/ada-mode.info b/packages/ada-mode/ada-mode.info
index da08d6c..154e51b 100644
--- a/packages/ada-mode/ada-mode.info
+++ b/packages/ada-mode/ada-mode.info
@@ -1,8 +1,7 @@
 This is ../ada-mode.info, produced by makeinfo version 4.13 from
 ../ada-mode.texi.
 
-Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-2008, 2009, 2010, 2011, 2012, 2013  Free Software Foundation, Inc.
+Copyright (C) 1999 - 2014  Free Software Foundation, Inc.
 
      Permission is granted to copy, distribute and/or modify this
      document under the terms of the GNU Free Documentation License,
@@ -24,8 +23,7 @@ END-INFO-DIR-ENTRY
 
 File: ada-mode.info,  Node: Top,  Next: Overview,  Prev: (dir),  Up: (dir)
 
-   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-2008, 2009, 2010, 2011, 2012, 2013  Free Software Foundation, Inc.
+   Copyright (C) 1999 - 2014  Free Software Foundation, Inc.
 
      Permission is granted to copy, distribute and/or modify this
      document under the terms of the GNU Free Documentation License,
@@ -65,11 +63,10 @@ File: ada-mode.info,  Node: Overview,  Next: Installation,  
Prev: Top,  Up: Top
 **********
 
 The Emacs mode for programming in Ada helps the user in reading
-existing code and facilitates writing new code.
+existing code and facilitates developing new code.
 
-   When the Gnu Ada compiler GNAT is used, the cross-reference
-information output by the compiler is used to provide powerful code
-navigation (jump to definition, find all uses, etc).
+   Cross-reference information output by the compiler is used to provide
+powerful code navigation (jump to definition, find all uses, etc).
 
    When you open a file with a file extension of `.ads' or `.adb',
 Emacs will automatically load and activate Ada mode.
@@ -79,19 +76,18 @@ compiler (`https://libre2.adacore.com/') and the GNAT 
default naming
 convention.
 
    You must customize a few things if you are using a different file
-naming convention or compiler; *Note Other compiler::, *Note
-Non-standard file names::.
+naming convention or compiler; *Note Non-standard file names::, *Note
+Other compiler::.
 
    In addition, you may want to customize the indentation,
 capitalization, and other things; *Note Other customization::.
 
-   Finally, for large Ada projects, you will want to set up an Emacs
-Ada mode project file for each project; *Note Project files::. Note
-that these are different from the GNAT project files used by gnatmake
-and other GNAT commands.
+   Finally, for large Ada projects, you will want to set up an Emacs Ada
+mode project file for each project; *Note Project files::. Note that
+these are different from the GNAT project files used by the GNAT tools.
 
-   *Note Running Debuggers Under Emacs: (emacs)Running Debuggers Under
-Emacs, for general information on debugging.
+   *Note Debuggers: (emacs)Debuggers, for general information on
+debugging.
 
 
 File: ada-mode.info,  Node: Installation,  Next: Customization,  Prev: 
Overview,  Up: Top
@@ -99,18 +95,21 @@ File: ada-mode.info,  Node: Installation,  Next: 
Customization,  Prev: Overview,
 2 Installation
 **************
 
-Ada mode is part of the standard Emacs distribution; if you use that,
-no files need to be installed.
+Ada mode is distributed in the Gnu ELPA package archive; it can be
+installed via `M-x list-packages' (*note Packages: (emacs)Packages.).
+You must first enable packages in your `~/.emacs', _after_ customizing
+`Info-default-directory-list' (if you do that):
+
+     (package-initialize)
 
    Ada mode is also available as a separate distribution, from the Emacs
 Ada mode website
-`http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html'. The
-separate distribution may be more recent.
+`http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html'.
 
    For installing the separate distribution, see the `README' file in
 the distribution.
 
-   To see what version of Ada mode you have installed, do `M-x
+   To see what version of Ada mode you have installed, invoke `M-x
 ada-mode-version'.
 
 * Menu:
@@ -131,7 +130,9 @@ for which gcc provices the `-fdump-xref'.
 requires the very latest version, in `gnatcoll 1.7w' distributed with
 GNATPro 7.2 preview.
 
-   To build `gnatinspect':
+   To build `gnatinspect', assuming gnat-7.1.2 is installed in
+`/usr/gnat-7.1.1':
+
      tar xf ~/Downloads/gnatcoll-1.7w-src.tgz
      cd gnatcoll-1.7w-src
      ./configure --prefix=/usr/gnat-7.1.2
@@ -201,7 +202,7 @@ ends with either `.adb', `_b.ada' or `.body'.
 name following the GNAT convention, you need to provide an alternate
 function for `ada-file-name-from-ada-name'. Doing that is beyond the
 scope of this manual; see the current definitions in `ada-mode.el' and
-`ada-gnat.el' for examples.
+`ada-gnat-xref.el' for examples.
 
 
 File: ada-mode.info,  Node: Other compiler,  Next: Other cross-reference,  
Prev: Non-standard file names,  Up: Customization
@@ -274,18 +275,27 @@ the syntax to set a variable is the following:
      Insert a matching right paren when you type a left paren.
 
 `hippie-expand'
-     Bind hippie-expand to a key; it expands the word before point,
+     Bind `hippie-expand' to a key; it expands the word before point,
      using words from current buffer, other buffers, file names, etc;
      see `hippie-expand-try-functions-list'. You can also add
      `ada-skel-hippie-try' to that list. Note that `ada-expand', which
      defaults to `ada-skel-expand', is bound to <C-c C-e> (*note
      Statement skeletons::).
 
+`imenu'
+
+`which-func'
+
    The above can all be set by the following code in your `~/.emacs'.
 Note that some are functions are added to `before-save-hook'; they run
-just before a buffer is written to disk.
+just before a buffer is written to disk. Also, the order is important;
+ada-mode does not set up the Ada-specific features of imenu and
+which-func unless they are loaded first.
+
      (setq-default indent-tabs-mode nil)
      (electric-pair-mode 1)
+     (require 'imenu)
+     (require 'which-func)
      (require 'ada-mode)
      (add-to-list 'hippie-expand-try-functions-list 'ada-skel-hippie-try)
      (define-key ada-mode-map "\C-e"     'hippie-expand)
@@ -444,7 +454,7 @@ This example uses no project files.
    Yes, this is missing "use Ada.Text_IO;" - we want to demonstrate
 compiler error handling.
 
-   `hello_2.adb':
+   `hello_2.adb' has no errors:
 
      with Hello_Pkg;
      procedure Hello_2
@@ -452,16 +462,12 @@ compiler error handling.
         Hello_Pkg.Say_Hello;
      end Hello_2;
 
-   This file has no errors.
-
-   `hello_pkg.ads':
+   `hello_pkg.ads' has no errors:
 
      package Hello_Pkg is
         procedure Say_Hello;
      end Hello_Pkg;
 
-   This file has no errors.
-
    `hello_pkg.adb':
 
      with Ada.Text_IO;
@@ -933,9 +939,10 @@ An Emacs Ada mode project file specifies what directories 
hold sources
 for your project, and allows you to customize the compilation commands
 and other things on a per-project basis.
 
-   The default file extension for Ada mode project files is `*.adp'.
-You can use a different extension by adding it to
-`ada-prj-parser-alist'.
+   The default file extension for Ada mode project files is `*.adp' or
+`*.prj'. You can use a different extension by adding it to
+`ada-prj-file-extensions', and a different syntax by adding a parser
+function to `ada-prj-parser-alist'.
 
    Note that Ada mode project files `*.adp' are different than GNAT
 compiler project files `*.gpr'. However, Emacs Ada mode can use a GNAT
@@ -943,6 +950,9 @@ project file to specify the project directories. If no other
 customization is needed, a GNAT project file can be used without an
 Emacs Ada mode project file.
 
+   If no Emacs Ada mode project file is specified, some Ada mode
+functions are not available.
+
 * Menu:
 
 * Project file overview::
@@ -960,6 +970,8 @@ line specifies a project variable name and its value, 
separated by "="
      src_dir=/Projects/my_project/src_1
      src_dir=/Projects/my_project/src_2
 
+   Any line that does not have an "=" is a comment.
+
    Some variables (like `src_dir') are lists; multiple occurrences are
 concatenated.
 
@@ -967,7 +979,8 @@ concatenated.
 trailing spaces.
 
    The current project file is given by the lisp variable
-`ada-prj-default-project-file'.
+`ada-prj-default-project-file', and shown by the menu command <Ada |
+Project Files | Show project>.
 
    To set the project file, use the menu command `Ada | Set Project
 ...', or the elisp functions `ada-parse-prj-file, ada-select-prj-file'.
@@ -980,8 +993,8 @@ The latter can be added to a Makefile:
 
    You specify either a GNAT project file or an Emacs Ada mode project
 file; if the file extension is `.gpr', the file is treated as a GNAT
-project file. Any other extension is treated as an Emacs Ada mode
-project file.
+project file. Extensions given by `ada-prj-file-extensions' (default
+`.adp, .prj') are treated as an Emacs Ada mode project file.
 
    After a project file is parsed, you can make it current again with
 just `ada-select-prj-file', or by selecting it from the menu.
@@ -992,22 +1005,20 @@ File: ada-mode.info,  Node: Project file variables,  
Prev: Project file overview
 5.2 Project file variables
 ==========================
 
-Some project file variables can also be defined in elisp variables.
-
-   To set a project variable that is a list, specify each element of the
+To set a project variable that is a list, specify each element of the
 list on a separate line in the project file.
 
    Process environment variables can be referenced using the normal
 `$var' syntax.
 
    Most project variables have defaults that can be changed by setting
-elisp variables; the table below identifies the lisp variable for each
+elisp variables; the table below identifies the elisp variable for each
 project variable. Elisp variables corresponding to project variables
 that are lists are elisp lists.
 
    In general, project variables are evaluated when referenced in Emacs
-Ada mode commands. Relative file paths are expanded to absolute
-relative to the directory containing the project file.
+Ada mode commands. Relative file paths are expanded relative to the
+directory containing the project file.
 
    Ada mode defines some project variables; others are defined by the
 compiler.
@@ -1035,6 +1046,15 @@ project file.
      List of files containing casing exceptions. *Note Automatic
      casing::.
 
+`el_file'        [default: ]
+     The value is a file name, which is loaded as an elisp file when the
+     project file is parsed or selected. This allows setting Ada mode
+     indentation variables, and any arbitrary elisp code used to
+     customize the project.
+
+`path_sep'       [default: `path-separator']
+     Separator character used in compiler search paths.
+
 `src_dir'        [default: `"."']
      A list of directories to search for source files.
 
@@ -1047,14 +1067,18 @@ project file.
 `ada_project_path'   [default: `""']
      A list of directories to search for GNAT project files.
 
-     If set, the `ADA_PROJECT_PATH' process environment variable is set
+     If set, the `GPR_PROJECT_PATH' process environment variable is set
      to this value in the child process that runs GNAT tools. If not
-     set, `ADA_PROJECT_PATH' in the child process is inherited from the
+     set, `GPR_PROJECT_PATH' in the child process is inherited from the
      Emacs process.
 
-     If you have the `ADA_PROJECT_PATH' environment variable set in the
-     Emacs process correctly for all of your projects, you do not need
-     to set this project variable.
+     If you have the `GPR_PROJECT_PATH' or `ADA_PROJECT_PATH'
+     environment variable set in the Emacs process correctly for all of
+     your projects, you do not need to set this project variable.
+
+     The project search path can also be set in GNAT aggregate
+     projects. However, the gnat tools do not make that path available
+     to Emacs, so you must duplicate it in an Emacs Ada project file.
 
 `gpr_file'   [default: `""']
      The GNAT project file.
@@ -1064,6 +1088,9 @@ project file.
      This allows specifying Ada source directories with a GNAT project
      file, and other source directories with the Emacs project file.
 
+`gpr_project_path'   [default: `""']
+     Same as `ada_project_path'.
+
 
 
 File: ada-mode.info,  Node: Moving Through Ada Code,  Next: Identifier 
completion,  Prev: Project files,  Up: Top
@@ -1074,16 +1101,17 @@ File: ada-mode.info,  Node: Moving Through Ada Code,  
Next: Identifier completio
 There are several commands to navigate through Ada code. All these
 functions are available through the Ada menu and keybindings.
 
-   Some of these commands rely on facilities provided by the compiler;
-the standard Emacs Ada mode only supports the GNAT compiler, but others
-can be added.
+   Some of these commands rely on cross reference facilities provided by
+the compiler; the standard Emacs Ada mode only supports the GNAT
+compiler, but others can be added (*note Other cross-reference::).
 
 `C-c C-d'
      Move from any use of an identifier to its declaration, for from a
-     declaration to its body.
+     declaration to its body (if there is one).
 
 `C-c M-d'
-     Move from a child type declaration to the parent type declaration.
+     Move from a child type declaration to the parent type declaration;
+     display a list of references if there is more than one parent.
 
 `C-c C-n'
      Move to the next keyword in the current statement.
@@ -1098,21 +1126,25 @@ can be added.
 `C-c C-o'
      Switch between corresponding spec and body. There are several
      special cases:
-        *     If the region is active, it is assumed to contain an Ada
-          package     name; position point on the corresponding package
+
+        * If the region is active, it is assumed to contain an Ada
+          package name; position point on the corresponding package
           declaration.
 
-        *     If point is in the start line of a top level child package
-             declaration (but not package body), or a child subprogram
-          spec or     body, position point on the corresponding parent
-          package     declaration.
+        * If point is in the start line of a top level child package
+          declaration (but not package body), or a child subprogram
+          spec or body, position point on the corresponding parent
+          package declaration.
 
-        *     If point is in the start line of a top level separate
-          body,     position point on the corresponding separate stub
-          declaration.
+        * If point is in the start line of a top level separate body,
+          position point on the corresponding separate stub declaration.
+
+        * If point is in a subprogram declaration or body, position
+          point on the corresponding body or declaration in the other
+          file.
 
-        *     If point is in a subprogram, position point on the
-          corresponding     declaration or body in the other file.
+        * If point is on a `with' clause, position point on the
+          corresponding declaration.
 
 
 `C-c C-r'
@@ -1125,9 +1157,18 @@ can be added.
      point. Use `C-x `' (`next-error') to visit each reference (as for
      compilation errors).
 
+`C-c M-x'
+     Show the declaration that the declaration at point overrides.
+
 `C-u SPACE'
      Jump back to the previous location.
 
+`Ada | Misc | Refresh cross reference cache'
+     Cross reference information is loaded from the compiler output when
+     the first cross reference command is issued. If the code is
+     recompiled after that, the cross reference information is reloaded
+     by invoking this menu command.
+
 
 
 File: ada-mode.info,  Node: Identifier completion,  Next: Indentation,  Prev: 
Moving Through Ada Code,  Up: Top
@@ -1216,6 +1257,10 @@ can also configure the indentation, via the following 
variables:
      Indentation for the lines in a `with' context clause.
 
 
+   The indentation variables are buffer local; the global value may be
+overridden in an elisp file invoked by an `el_file' Emacs Ada mode
+project file statement, or in a file local variable section.
+
    The following keys indent portions of the text:
 `RET'
      Insert and indent a new line.
@@ -1229,13 +1274,14 @@ can also configure the indentation, via the following 
variables:
 
    The indentation algorithm relies on a grammar parser to identify the
 syntactic role for keywords and other words in the code. If the code is
-accepted by the parser, the indentation is correct. If the code is not
-accepted (because it is partially complete during editing), the
-indentation engine falls back to the trivial algorithm of indenting
-each new line the same as the previous line.
+accepted by the parser, the indentation is done according to the rules
+in the indentation engine.
 
-   Once enough new text has been entered to make the code acceptable to
-the parser, the statement or declaration is properly indented.
+   If the code is not accepted (because it is partially complete during
+editing), the indentation engine falls back to the trivial algorithm of
+indenting each new line the same as the previous line. Once enough new
+text has been entered to make the code acceptable to the parser, the
+statement or declaration is properly indented.
 
    For example, if you are entering this code:
 
@@ -1243,9 +1289,10 @@ the parser, the statement or declaration is properly 
indented.
         B;
      end if;
 
-   when you type `RET B', `B' is indented to the same column as `if'.
-Then when you type the final `;', all three lines are indented, putting
-`B' where it belongs.
+   when you type `RET B', `B' is indented to the same column as `if',
+because the parser does not find `end if;'. Then when you type the
+final `;' followed by <TAB>, all three lines are indented, putting `B'
+where it belongs.
 
    To be more user friendly, the parser accepts a superset of the Ada
 grammer. For example, the parser accepts this code for an `if'
@@ -1260,6 +1307,9 @@ omitted.
    One way to easily insert empty statements like this is using *note
 Statement skeletons::.
 
+   In rare cases, the parser gets confused; it can be reset by invoking
+menu <Ada | Misc | Reset parser>. Please report such cases as a bug.
+
 
 File: ada-mode.info,  Node: Statement skeletons,  Next: Aligning code,  Prev: 
Indentation,  Up: Top
 
@@ -1267,7 +1317,7 @@ File: ada-mode.info,  Node: Statement skeletons,  Next: 
Aligning code,  Prev: In
 *********************
 
 `C-c C-e' expands the previous one or two words into a statment
-skeleton. For example, `if C-c C-e' expands to:
+skeleton. For example, `i f C-c C-e' expands to:
 
      if  then
      elsif  then
@@ -1278,11 +1328,11 @@ skeleton. For example, `if C-c C-e' expands to:
 this is a convenient way to insert statements with correct indentation.
 
    For named statements (packages, loops, etc), the name is taken from
-the word before point, and the name of statement from the word before
-that. Some expansions prompt for more information, such as whether a
-spec or body is desired. For example, `package A_Package C-c C-e' first
-prompts for "body" or "spec". If "spec" is selected, the following code
-is inserted:
+the word before point, and the name of the statement from the word
+before that. Some expansions prompt for more information, such as
+whether a spec or body is desired. For example, `package A_Package C-c
+C-e' first prompts for "body" or "spec". If "spec" is selected, the
+following code is inserted:
 
      package A_Package is
      private
@@ -1344,9 +1394,9 @@ File: ada-mode.info,  Node: Automatic casing,  Next: 
Comment Handling,  Prev: Al
 *******************
 
 Casing of identifiers, attributes and keywords is automatically
-performed while typing when the variable `ada-auto-case' is non-nil.
-Every time you type a word separator, the previous word is
-automatically cased.
+performed while typing when the variable `ada-auto-case' is non-nil
+(the default). Every time you type a word separator, the previous word
+is automatically cased.
 
    You can customize the automatic casing with the following variables:
 
@@ -1364,7 +1414,8 @@ automatically cased.
 
      If nil, the mixed case characters in identifiers are forced to
      upper case, but the other characters are not modified. That allows
-     typing all uppercase identifiers without defining an exception.
+     typing all uppercase identifiers without defining a casing
+     exception.
 
    You can define exceptions to these rules, in files specified by the
 variable `ada-case-exception-file'. Each line in a case exception file
@@ -1387,9 +1438,8 @@ underscores or word boundary.
    There are two ways to add new items to this file: you can simply edit
 it as you would edit any text file. Or you can position point on the
 word you want to add, and select menu `Ada | Casing | Create full
-exception' (`C-c C-y', `ada-case-create-exception') or `Ada | Casing |
-Create partial exception' (`C-c C-M-y').  The word will be added to the
-current list of exceptions and to the file.
+exception' or `Ada | Casing | Create partial exception'.  The word will
+be added to the current list of exceptions and to the file.
 
    It is sometimes useful to have multiple exception files. For
 example, one could be the standard Ada acronyms, the second some
@@ -1439,6 +1489,10 @@ File: ada-mode.info,  Node: Key summary,  Next: 
Developer overview,  Prev: Comme
 13 Key summary
 **************
 
+This table summarizes the keys described in this manual. Other keys are
+bound by Ada mode; see <C-h b> for a complete list. The Ada menu also
+displays keys bound to menu operations.
+
 `M-/'
      *Note Identifier completion::.  Complete the word before point;
      repeat to cycle thru possible completions.
@@ -1447,6 +1501,9 @@ File: ada-mode.info,  Node: Key summary,  Next: Developer 
overview,  Prev: Comme
      *Note Comment Handling::.  If the region is active, comment or
      uncomment it.
 
+`M-q'
+     *Note Comment Handling::.  Fill the current comment paragraph.
+
 `RET'
      *Note Indentation::.  Insert and indent a new line.
 
@@ -1464,6 +1521,9 @@ File: ada-mode.info,  Node: Key summary,  Next: Developer 
overview,  Prev: Comme
 `C-c C-a'
      *Note Aligning code::.  Align code.
 
+`C-c C-c'
+     *Note Compile commands::.  Build the current main program.
+
 `C-c C-d'
      *Note Moving Through Ada Code::.  Move from any use of an
      identifier to its declaration, for from a declaration to its body.
@@ -1476,6 +1536,9 @@ File: ada-mode.info,  Node: Key summary,  Next: Developer 
overview,  Prev: Comme
      *Note Statement skeletons::.  Expand previous one or two words
      into a statement or declaration skeleton.
 
+`C-c C-c'
+     *Note Compile commands::.  Build the current file.
+
 `C-c C-n'
      *Note Moving Through Ada Code::.  Move to the next keyword in the
      current statement.
@@ -1503,6 +1566,10 @@ File: ada-mode.info,  Node: Key summary,  Next: 
Developer overview,  Prev: Comme
 `C-c C-y'
      *Note Automatic casing::.  Create case exception.
 
+`C-c `'
+     *Note Compiler errors::.  Move to the location of the next
+     secondary compilation error.
+
 `C-x `'
      *Note Compiler errors::.  Move to the location of the next
      compilation error or show result.
@@ -1525,6 +1592,7 @@ sources, here's an overview.
 * Directory structure::
 * Package organization::
 * OpenToken::
+* ELPA::
 
 
 File: ada-mode.info,  Node: Directory structure,  Next: Package organization,  
Prev: Developer overview,  Up: Developer overview
@@ -1532,7 +1600,7 @@ File: ada-mode.info,  Node: Directory structure,  Next: 
Package organization,  P
 14.1 Directory structure
 ========================
 
-`org.emacs.ada-mode.stephe-1'
+`org.emacs.ada-mode'
      Main source.
 
      File extensions:
@@ -1541,7 +1609,8 @@ File: ada-mode.info,  Node: Directory structure,  Next: 
Package organization,  P
 
     `*.elc'
           Byte-compiled elisp files, not in the distribution. Generated
-          by the Makefile target `byte-compile'.
+          by the Makefile target `byte-compile', or by the Emacs
+          package installer.
 
           Compiling the parse tables (`*-wy.el') speeds up loading them
           significantly. Compiling other files speeds up parsing, but
@@ -1554,8 +1623,8 @@ File: ada-mode.info,  Node: Directory structure,  Next: 
Package organization,  P
     `*-wy.el'
           Parse tables, generated from the corresponding grammar `*.wy'
           by the OpenToken tool `wisi-generate.exe'. These are in the
-          tarball distribution and the monotone so users and Elisp
-          developers don't have to install OpenToken.
+          tarball distribution and the monotone repository so users and
+          Elisp developers don't have to install OpenToken.
 
     `*-wy.output'
           Diagnostic output from `wisi-generate.exe', useful for tracing
@@ -1585,12 +1654,13 @@ File: ada-mode.info,  Node: Directory structure,  Next: 
Package organization,  P
 
 
 `build'
-     Makefiles for byte-compiling, running tests, making zips.
+     Makefile for building the user guides, publishing to the web page
+     or Gnu ELPA. Test drivers.
 
 `build/wisi'
-     Makefiles for building and testing with the wisi-based parser.
+     Makefile for building and testing with the wisi-based parser.
      Separate from `build', because there used to be a SMIE-based
-     parser, and there might be another one someday.
+     parser, and there might be another parser someday.
 
      The emacs used to byte-compile and run tests is given by the 'make'
      variable EMACS_EXE, which defaults to 'emacs'; it can be
@@ -1680,8 +1750,7 @@ Ada mode consists of all files with `ada-' prefix in the 
file name.
      All user-settable options for the Ada indentation engine.
 
 `ada-mode-compat-23.4.el'
-     A start on defining functions used by Ada mode but not in Emacs
-     23.4.
+     Defines functions used by Ada mode that are not in Emacs 23.4.
 
      Emacs Ada mode is written for Emacs 24.3. Emacs version 23.4 is
      partially supported. Earlier versions of Emacs are not supported.
@@ -1771,7 +1840,7 @@ name.
      Implements the generalized LALR parser.
 
 
-File: ada-mode.info,  Node: OpenToken,  Prev: Package organization,  Up: 
Developer overview
+File: ada-mode.info,  Node: OpenToken,  Next: ELPA,  Prev: Package 
organization,  Up: Developer overview
 
 14.3 OpenToken
 ==============
@@ -1787,6 +1856,27 @@ directory for OpenToken; you probably need to override 
it with an
 external environment variable or on the `make' command line.
 
 
+File: ada-mode.info,  Node: ELPA,  Prev: OpenToken,  Up: Developer overview
+
+14.4 ELPA
+=========
+
+Ada mode is published via the Gnu ELPA archive. To test a new version
+of Ada mode, we use a local Gnu ELPA archive. That requires fetching
+Gnu ELPA via git:
+
+     cd /Projects
+     git clone git://git.savannah.gnu.org/emacs/elpa.git
+
+   If you have an Emacs Savannah developer account, you can use:
+
+     cd /Projects
+     git clone <login>@git.savannah.gnu.org/emacs/elpa.git
+
+   `build/Makefile' contains targets for copying Ada mode source to the
+elpa workspace, and for building the elpa archive there.
+
+
 File: ada-mode.info,  Node: GNU Free Documentation License,  Next: Index,  
Prev: Developer overview,  Up: Top
 
 Appendix A GNU Free Documentation License
@@ -2282,66 +2372,69 @@ Index
 * Menu:
 
 * ada-case-adjust-at-point:              Automatic casing.     (line 65)
-* ada-case-create-exception:             Automatic casing.     (line 47)
+* ada-case-create-exception:             Automatic casing.     (line 48)
 * ada-find-other-file:                   Moving Through Ada Code.
-                                                               (line 31)
+                                                               (line 32)
 * ada-goto-declaration:                  Moving Through Ada Code.
                                                                (line 14)
 * ada-goto-declaration-parent:           Moving Through Ada Code.
                                                                (line 18)
 * ada-next-statement-keyword:            Moving Through Ada Code.
-                                                               (line 21)
+                                                               (line 22)
 * ada-prev-statement-keyword:            Moving Through Ada Code.
-                                                               (line 26)
+                                                               (line 27)
+* ada-show-overridden:                   Moving Through Ada Code.
+                                                               (line 66)
 * ada-show-overriding:                   Moving Through Ada Code.
-                                                               (line 56)
+                                                               (line 61)
 * ada-show-references:                   Moving Through Ada Code.
-                                                               (line 51)
+                                                               (line 56)
 * comment-dwim:                          Comment Handling.     (line 10)
 * fill-paragraph:                        Comment Handling.     (line 18)
 
 
 
 Tag Table:
-Node: Top1031
-Node: Overview2675
-Node: Installation3984
-Node: gnatinspect4607
-Node: Customization5280
-Node: Non-standard file names5761
-Node: Other compiler7595
-Node: Other cross-reference8174
-Node: Other customization8892
-Node: Compiling Executing11155
-Node: Compile commands11889
-Node: Compiling Examples14621
-Node: No project files15453
-Node: Set compiler options20838
-Node: Set source search path22796
-Node: Use GNAT project file25245
-Node: Use multiple GNAT project files28018
-Node: Use a Makefile30735
-Node: Compiler errors32049
-Node: Project files32863
-Node: Project file overview33700
-Node: Project file variables35055
-Node: Moving Through Ada Code37979
-Node: Identifier completion40087
-Node: Indentation41048
-Node: Statement skeletons44731
-Node: Aligning code45932
-Node: Automatic casing46876
-Node: Comment Handling49600
-Node: Key summary50118
-Node: Developer overview52236
-Node: Directory structure52567
-Node: Package organization55955
-Node: Ada mode56190
-Node: gpr mode58393
-Node: GNAT core58675
-Node: Wisi59621
-Node: OpenToken60583
-Node: GNU Free Documentation License61171
-Node: Index86351
+Node: Top954
+Node: Overview2521
+Node: Installation3731
+Node: gnatinspect4494
+Node: Customization5223
+Node: Non-standard file names5704
+Node: Other compiler7543
+Node: Other cross-reference8122
+Node: Other customization8840
+Node: Compiling Executing11313
+Node: Compile commands12047
+Node: Compiling Examples14779
+Node: No project files15611
+Node: Set compiler options20966
+Node: Set source search path22924
+Node: Use GNAT project file25373
+Node: Use multiple GNAT project files28146
+Node: Use a Makefile30863
+Node: Compiler errors32177
+Node: Project files32991
+Node: Project file overview34015
+Node: Project file variables35541
+Node: Moving Through Ada Code39048
+Node: Identifier completion41744
+Node: Indentation42705
+Node: Statement skeletons46838
+Node: Aligning code48044
+Node: Automatic casing48988
+Node: Comment Handling51682
+Node: Key summary52200
+Node: Developer overview54825
+Node: Directory structure55165
+Node: Package organization58642
+Node: Ada mode58877
+Node: gpr mode61068
+Node: GNAT core61350
+Node: Wisi62296
+Node: OpenToken63258
+Node: ELPA63859
+Node: GNU Free Documentation License64467
+Node: Index89647
 
 End Tag Table
diff --git a/packages/ada-mode/ada-skel.el b/packages/ada-mode/ada-skel.el
index 53c513e..a4a794c 100755
--- a/packages/ada-mode/ada-skel.el
+++ b/packages/ada-mode/ada-skel.el
@@ -337,7 +337,6 @@ trailing `...' if there are more keys."
       (concat (mapconcat 'car alist-1 " | ") " | ... : "))
   ))
 
-;;;###autoload
 (defun ada-skel-expand (&optional name)
   "Expand the token or placeholder before point to a skeleton, as defined by 
`ada-skel-token-alist'.
 A token is a symbol in the current syntax.
diff --git a/packages/ada-mode/ada-wisi-opentoken.el 
b/packages/ada-mode/ada-wisi-opentoken.el
index 1812a49..651dbce 100755
--- a/packages/ada-mode/ada-wisi-opentoken.el
+++ b/packages/ada-mode/ada-wisi-opentoken.el
@@ -1,7 +1,7 @@
 ;;; ada-wisi-opentoken.el --- An indentation function for ada-wisi that 
indents OpenToken
 ;; grammar statements nicely.
 
-;; Copyright (C) 2013  Free Software Foundation, Inc.
+;; Copyright (C) 2013, 2014  Free Software Foundation, Inc.
 
 ;; This file is part of GNU Emacs.
 
@@ -23,13 +23,12 @@
 
 ;; This is an example of a user-added indentation rule.
 ;;
-;; In ~/.emacs (or project-specific config):
-;; (require 'ada-wisi-opentoken)
-;;
-;; In each file that declares OpenToken grammars:
+;; In each file that declares OpenToken grammars, enable
+;; ada-indent-opentoken minor mode by adding this near the end of the
+;; file:
 ;;
 ;; Local Variables:
-;; ada-indent-opentoken: t
+;; eval: (ada-indent-opentoken-mode)
 ;; End:
 
 ;;; Code:
@@ -37,45 +36,49 @@
 (require 'ada-mode)
 (require 'wisi)
 
-(defcustom ada-indent-opentoken nil
-  "If non-nil, apply `ada-wisi-opentoken' indentation rule."
-  :type  'boolean
-  :group 'ada-indentation
-  :safe  'booleanp)
-(make-variable-buffer-local 'ada-indent-opentoken)
-
 (defun ada-wisi-opentoken ()
   "Return appropriate indentation (an integer column) for continuation lines 
in an OpenToken grammar statement."
   ;; We don't do any checking to see if we actually are in an
   ;; OpenToken grammar statement, since this rule should only be
   ;; included in package specs that exist solely to define OpenToken
   ;; grammar fragments.
-  (when ada-indent-opentoken
-    (save-excursion
-      (let ((token-text (nth 1 (wisi-backward-token))))
-       (cond
-        ((equal token-text "<=")
-         (back-to-indentation)
-         (+ (current-column) ada-indent-broken))
-
-        ((member token-text '("+" "&"))
-         (while (not (equal "<=" (nth 1 (wisi-backward-token)))))
-         (back-to-indentation)
-         (+ (current-column) ada-indent-broken))
-        )))))
-
-(defun ada-wisi-opentoken-setup ()
-  (add-to-list 'wisi-indent-calculate-functions 'ada-wisi-opentoken))
-
-;; This must be after ada-wisi-setup on ada-mode-hook, because
-;; ada-wisi-setup resets wisi-indent-calculate-functions
-(add-hook 'ada-mode-hook 'ada-wisi-opentoken-setup t)
-
-(add-to-list 'ada-align-rules
-            '(ada-opentoken
-              (regexp  . "[^=]\\(\\s-*\\)<=")
-              (valid   . (lambda() (not (ada-in-comment-p))))
-              (modes   . '(ada-mode))))
+  (save-excursion
+    (let ((token-text (nth 1 (wisi-backward-token))))
+      (cond
+       ((equal token-text "<=")
+       (back-to-indentation)
+       (+ (current-column) ada-indent-broken))
+
+       ((member token-text '("+" "&"))
+       (while (not (equal "<=" (nth 1 (wisi-backward-token)))))
+       (back-to-indentation)
+       (+ (current-column) ada-indent-broken))
+       ))))
+
+(defconst ada-wisi-opentoken-align
+  "Align rule for OpenToken grammar definitions."
+  '(ada-opentoken
+    (regexp  . "[^=]\\(\\s-*\\)<=")
+    (valid   . (lambda() (not (ada-in-comment-p))))
+    (modes   . '(ada-mode))))
+
+;;;###autoload
+(define-minor-mode ada-indent-opentoken-mode
+  "Minor mode for indenting grammar definitions for the OpenToken package.
+Enable mode if ARG is positive"
+  :initial-value t
+  :lighter       "OpenToken"   ;; mode line
+
+  (if ada-indent-opentoken-mode
+      (progn
+       ;; This must be after ada-wisi-setup on ada-mode-hook, because
+       ;; ada-wisi-setup resets wisi-indent-calculate-functions
+       (add-to-list 'ada-align-rules ada-wisi-opentoken-align)
+       (add-to-list 'wisi-indent-calculate-functions 'ada-wisi-opentoken))
+
+    (setq ada-align-rules (delete ada-wisi-opentoken-align ada-align-rules))
+    (setq wisi-indent-calculate-functions (delete 'ada-wisi-opentoken 
wisi-indent-calculate-functions))
+    ))
 
 (provide 'ada-wisi-opentoken)
 ;; end of file
diff --git a/packages/ada-mode/ada-wisi.el b/packages/ada-mode/ada-wisi.el
index aef5c78..16f87f4 100755
--- a/packages/ada-mode/ada-wisi.el
+++ b/packages/ada-mode/ada-wisi.el
@@ -1321,7 +1321,6 @@ Also return cache at start."
   (define-key ada-mode-map "\M-k" 'wisi-show-token)
   )
 
-;;;###autoload
 (defun ada-wisi-setup ()
   "Set up a buffer for parsing Ada files with wisi."
   (wisi-setup '(ada-wisi-comment
@@ -1380,6 +1379,7 @@ Also return cache at start."
 (setq ada-make-subprogram-body 'ada-wisi-make-subprogram-body)
 (setq ada-next-statement-keyword 'wisi-forward-statement-keyword)
 (setq ada-prev-statement-keyword 'wisi-backward-statement-keyword)
+(setq ada-reset-parser 'wisi-invalidate-cache)
 (setq ada-scan-paramlist 'ada-wisi-scan-paramlist)
 (setq ada-show-parse-error 'wisi-show-parse-error)
 (setq ada-which-function 'ada-wisi-which-function)
diff --git a/packages/ada-mode/gnat-inspect.el 
b/packages/ada-mode/gnat-inspect.el
index 055f942..8cebef9 100755
--- a/packages/ada-mode/gnat-inspect.el
+++ b/packages/ada-mode/gnat-inspect.el
@@ -332,7 +332,7 @@ set compilation-mode with compilation-error-regexp-alist 
set to COMP-ERR."
       (cond
        ((null search-type)
        (pop-to-buffer (current-buffer))
-       (error "gnatinspect did not return other item"))
+       (error "gnatinspect did not return other item; refresh?"))
 
        ((and
         (string-equal search-type "declaration")
@@ -345,7 +345,7 @@ set compilation-mode with compilation-error-regexp-alist 
set to COMP-ERR."
 
       (when (null result)
        (pop-to-buffer (current-buffer))
-       (error "gnatinspect did not return other item"))
+       (error "gnatinspect did not return other item; refresh?"))
 
       (message "parsing result ... done")
       result)))
@@ -391,7 +391,7 @@ set compilation-mode with compilation-error-regexp-alist 
set to COMP-ERR."
 
       (when (null result)
        (pop-to-buffer (current-buffer))
-       (error "gnatinspect did not return other item"))
+       (error "gnatinspect did not return other item; refresh?"))
 
       (message "parsing result ... done")
       result)))
diff --git a/packages/ada-mode/gpr-grammar-wy.el 
b/packages/ada-mode/gpr-grammar-wy.el
index b0ae6fd..d5e00cd 100755
--- a/packages/ada-mode/gpr-grammar-wy.el
+++ b/packages/ada-mode/gpr-grammar-wy.el
@@ -15,9 +15,6 @@
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
-;; PLEASE DO NOT MANUALLY EDIT THIS FILE!  It is automatically
-;; generated from the grammar file gpr-grammar.wy
-
 (require 'wisi)
 (require 'semantic/lex)
 (require 'wisi-compile)
@@ -104,10 +101,11 @@
         (wisi-statement-action 1 'block-middle 3 'block-start)
         (wisi-containing-action 3 4))))
       (case_items
+       (())
        ((case_item ))
        ((case_items case_item )))
       (compilation_unit
-       ((context_clause_opt project_qualifier_opt project_declaration )))
+       ((context_clause_opt project_qualifier_opt project_declaration_opt )))
       (context_clause
        ((with_clause ))
        ((context_clause with_clause )))
@@ -119,9 +117,11 @@
        ((typed_string_declaration ))
        ((package_declaration )))
       (declarative_items
+       (())
        ((declarative_item ))
        ((declarative_items declarative_item )))
       (discrete_choice
+       (())
        ((STRING_LITERAL ))
        ((OTHERS )))
       (discrete_choice_list
@@ -135,15 +135,19 @@
         (wisi-statement-action 2 'open-paren 4 'close-paren))
        ((EXTERNAL_AS_LIST LEFT_PAREN string_list RIGHT_PAREN )
         (wisi-statement-action 2 'open-paren 4 'close-paren)))
+      (identifier_opt
+       (())
+       ((IDENTIFIER )))
       (name
-       ((IDENTIFIER ))
+       ((identifier_opt ))
        ((name DOT IDENTIFIER )))
-      (project_declaration
+      (project_declaration_opt
+       (())
        ((simple_project_declaration )))
       (package_declaration
        ((package_spec )))
       (package_spec
-       ((PACKAGE IDENTIFIER IS simple_declarative_items END IDENTIFIER 
SEMICOLON )
+       ((PACKAGE identifier_opt IS simple_declarative_items END identifier_opt 
SEMICOLON )
         (progn
         (wisi-statement-action 1 'statement-start 3 'block-start 5 'block-end 
7 'statement-end)
         (wisi-containing-action 3 4))))
@@ -169,10 +173,11 @@
        ((NULL SEMICOLON )
         (wisi-statement-action 1 'statement-start 2 'statement-end)))
       (simple_declarative_items
+       (())
        ((simple_declarative_item ))
        ((simple_declarative_items simple_declarative_item )))
       (simple_project_declaration
-       ((PROJECT IDENTIFIER IS declarative_items END IDENTIFIER SEMICOLON )
+       ((PROJECT identifier_opt IS declarative_items END identifier_opt 
SEMICOLON )
         (progn
         (wisi-statement-action 1 'statement-start 3 'block-start 5 'block-end 
7 'statement-end)
         (wisi-containing-action 3 4))))
@@ -199,129 +204,130 @@
         (wisi-statement-action 1 'statement-start 4 'open-paren 6 'close-paren 
7 'statement-end)))
       (with_clause
        ((WITH string_list SEMICOLON ))))
-     [((default . error) (ABSTRACT . (context_clause_opt . 0)) (AGGREGATE . 
(context_clause_opt . 0)) (CONFIGURATION . (context_clause_opt . 0)) (LIBRARY . 
(context_clause_opt . 0)) (STANDARD . (context_clause_opt . 0)) (PROJECT . 
(context_clause_opt . 0)) (WITH .  7))
-      ((default . error) (PROJECT . (project_qualifier_opt . 1)))
-      ((default . error) (LIBRARY .  29) (PROJECT . (project_qualifier_opt . 
3)))
-      ((default . error) (PROJECT . (project_qualifier_opt . 6)))
-      ((default . error) (PROJECT . (project_qualifier_opt . 5)))
-      ((default . error) (IDENTIFIER .  28))
-      ((default . error) (PROJECT . (project_qualifier_opt . 2)))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
+     [((default . error) (ABSTRACT . (context_clause_opt . 0)) (AGGREGATE . 
(context_clause_opt . 0)) (CONFIGURATION . (context_clause_opt . 0)) (LIBRARY . 
(context_clause_opt . 0)) (STANDARD . (context_clause_opt . 0)) (PROJECT . 
(context_clause_opt . 0)) ($EOI . (context_clause_opt . 0)) (WITH .  7))
+      ((default . error) ($EOI . (project_qualifier_opt . 1)) (PROJECT . 
(project_qualifier_opt . 1)))
+      ((default . error) (LIBRARY .  30) ($EOI . (project_qualifier_opt . 3)) 
(PROJECT . (project_qualifier_opt . 3)))
+      ((default . error) ($EOI . (project_qualifier_opt . 6)) (PROJECT . 
(project_qualifier_opt . 6)))
+      ((default . error) ($EOI . (project_qualifier_opt . 5)) (PROJECT . 
(project_qualifier_opt . 5)))
+      ((default . error) (IS . (identifier_opt . 0)) (IDENTIFIER .  16))
+      ((default . error) ($EOI . (project_qualifier_opt . 2)) (PROJECT . 
(project_qualifier_opt . 2)))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (COMMA . 
(identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) 
(PROJECT .  20))
       ((default . error) ($EOI .  15))
-      ((default . error) (ABSTRACT . (context_clause_opt . 1)) (AGGREGATE . 
(context_clause_opt . 1)) (CONFIGURATION . (context_clause_opt . 1)) (LIBRARY . 
(context_clause_opt . 1)) (STANDARD . (context_clause_opt . 1)) (PROJECT . 
(context_clause_opt . 1)) (WITH .  7))
-      ((default . error) (PROJECT . (project_qualifier_opt . 0)) (ABSTRACT .  
1) (STANDARD .  6) (AGGREGATE .  2) (LIBRARY .  4) (CONFIGURATION .  3))
-      ((default . error) ($EOI . (project_declaration . 0)))
-      ((default . error) (PROJECT . (context_clause . 0)) (STANDARD . 
(context_clause . 0)) (LIBRARY . (context_clause . 0)) (CONFIGURATION . 
(context_clause . 0)) (AGGREGATE . (context_clause . 0)) (ABSTRACT . 
(context_clause . 0)) (WITH . (context_clause . 0)))
-      ((default . error) (PROJECT .  5))
-      ((default . error) (WITH . (context_clause . 1)) (ABSTRACT . 
(context_clause . 1)) (AGGREGATE . (context_clause . 1)) (CONFIGURATION . 
(context_clause . 1)) (LIBRARY . (context_clause . 1)) (STANDARD . 
(context_clause . 1)) (PROJECT . (context_clause . 1)))
+      ((default . error) (ABSTRACT . (context_clause_opt . 1)) (AGGREGATE . 
(context_clause_opt . 1)) (CONFIGURATION . (context_clause_opt . 1)) (LIBRARY . 
(context_clause_opt . 1)) (STANDARD . (context_clause_opt . 1)) (PROJECT . 
(context_clause_opt . 1)) ($EOI . (context_clause_opt . 1)) (WITH .  7))
+      ((default . error) (PROJECT . (project_qualifier_opt . 0)) ($EOI . 
(project_qualifier_opt . 0)) (ABSTRACT .  1) (STANDARD .  6) (AGGREGATE .  2) 
(LIBRARY .  4) (CONFIGURATION .  3))
+      ((default . error) ($EOI . (project_declaration_opt . 1)))
+      ((default . error) ($EOI . (context_clause . 0)) (PROJECT . 
(context_clause . 0)) (STANDARD . (context_clause . 0)) (LIBRARY . 
(context_clause . 0)) (CONFIGURATION . (context_clause . 0)) (AGGREGATE . 
(context_clause . 0)) (ABSTRACT . (context_clause . 0)) (WITH . (context_clause 
. 0)))
+      ((default . error) ($EOI . (project_declaration_opt . 0)) (PROJECT .  5))
+      ((default . error) (WITH . (context_clause . 1)) (ABSTRACT . 
(context_clause . 1)) (AGGREGATE . (context_clause . 1)) (CONFIGURATION . 
(context_clause . 1)) (LIBRARY . (context_clause . 1)) (STANDARD . 
(context_clause . 1)) (PROJECT . (context_clause . 1)) ($EOI . (context_clause 
. 1)))
       ((default . error) ($EOI . accept) (WITH . accept) (WHEN . accept) (USE 
. accept) (TYPE . accept) (STANDARD . accept) (RIGHT_PAREN . accept) (PROJECT . 
accept) (PACKAGE . accept) (OTHERS . accept) (NULL . accept) (LIBRARY . accept) 
(LEFT_PAREN . accept) (IS . accept) (FOR . accept) (EXTERNAL_AS_LIST . accept) 
(EXTERNAL . accept) (END . accept) (CONFIGURATION . accept) (CASE . accept) 
(AGGREGATE . accept) (ABSTRACT . accept) (STRING_LITERAL . accept) (IDENTIFIER 
. accept) (VERTICAL_ [...]
-      ((default . error) (IS . (name . 0)) (COMMA . (name . 0)) (RIGHT_PAREN . 
(name . 0)) (SEMICOLON . (name . 0)) (AMPERSAND . (name . 0)) (DOT . (name . 
0)) (QUOTE . (name . 0)))
+      ((default . error) (IS . (identifier_opt . 1)) (RIGHT_PAREN . 
(identifier_opt . 1)) (COMMA . (identifier_opt . 1)) (DOT . (identifier_opt . 
1)) (AMPERSAND . (identifier_opt . 1)) (SEMICOLON . (identifier_opt . 1)) 
(QUOTE . (identifier_opt . 1)))
       ((default . error) (RIGHT_PAREN . (string_primary . 0)) (COMMA . 
(string_primary . 0)) (AMPERSAND . (string_primary . 0)) (SEMICOLON . 
(string_primary . 0)))
+      ((default . error) (LEFT_PAREN .  38))
       ((default . error) (LEFT_PAREN .  37))
-      ((default . error) (LEFT_PAREN .  36))
       ((default . error) (QUOTE . (attribute_prefix . 0)))
-      ((default . error) (QUOTE .  35))
+      ((default . error) (QUOTE .  36))
       ((default . error) (RIGHT_PAREN . (string_primary . 3)) (COMMA . 
(string_primary . 3)) (AMPERSAND . (string_primary . 3)) (SEMICOLON . 
(string_primary . 3)))
       ((default . error) (RIGHT_PAREN . (string_primary . 2)) (COMMA . 
(string_primary . 2)) (AMPERSAND . (string_primary . 2)) (SEMICOLON . 
(string_primary . 2)))
-      ((default . error) (RIGHT_PAREN . (string_primary . 1)) (COMMA . 
(string_primary . 1)) (AMPERSAND . (string_primary . 1)) (SEMICOLON . 
(string_primary . 1)) (DOT .  34) (QUOTE . (attribute_prefix . 1)))
-      ((default . error) (SEMICOLON . (string_list . 0)) (RIGHT_PAREN . 
(string_list . 0)) (COMMA . (string_list . 0)) (AMPERSAND .  33))
+      ((default . error) (IS . (name . 0)) (COMMA . (name . 0)) (RIGHT_PAREN . 
(name . 0)) (SEMICOLON . (name . 0)) (AMPERSAND . (name . 0)) (DOT . (name . 
0)) (QUOTE . (name . 0)))
+      ((default . error) (RIGHT_PAREN . (string_primary . 1)) (COMMA . 
(string_primary . 1)) (AMPERSAND . (string_primary . 1)) (SEMICOLON . 
(string_primary . 1)) (DOT .  35) (QUOTE . (attribute_prefix . 1)))
+      ((default . error) (SEMICOLON . (string_list . 0)) (RIGHT_PAREN . 
(string_list . 0)) (COMMA . (string_list . 0)) (AMPERSAND .  34))
       ((default . error) (COMMA . (string_expression . 0)) (RIGHT_PAREN . 
(string_expression . 0)) (SEMICOLON . (string_expression . 0)) (AMPERSAND . 
(string_expression . 0)))
-      ((default . error) (COMMA .  31) (SEMICOLON .  32))
-      ((default . error) (IS .  30))
-      ((default . error) (PROJECT . (project_qualifier_opt . 4)))
-      ((default . error) (TYPE .  50) (IDENTIFIER .  45) (NULL .  48) (CASE .  
46) (FOR .  47) (PACKAGE .  49))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (WITH . (with_clause . 0)) (ABSTRACT . (with_clause . 
0)) (AGGREGATE . (with_clause . 0)) (CONFIGURATION . (with_clause . 0)) 
(LIBRARY . (with_clause . 0)) (STANDARD . (with_clause . 0)) (PROJECT . 
(with_clause . 0)))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (COMMA .  32) (SEMICOLON .  33))
+      ((default . error) (IS .  31))
+      ((default . error) ($EOI . (project_qualifier_opt . 4)) (PROJECT . 
(project_qualifier_opt . 4)))
+      ((default . error) (END . (declarative_items . 0)) (TYPE . 
((declarative_items . 0)  51)) (IDENTIFIER . ((declarative_items . 0)  46)) 
(NULL . ((declarative_items . 0)  49)) (CASE . ((declarative_items . 0)  47)) 
(FOR . ((declarative_items . 0)  48)) (PACKAGE . ((declarative_items . 0)  50)))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (RIGHT_PAREN . (identifier_opt . 0)) (COMMA . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (WITH . (with_clause . 0)) (ABSTRACT . (with_clause . 
0)) (AGGREGATE . (with_clause . 0)) (CONFIGURATION . (with_clause . 0)) 
(LIBRARY . (with_clause . 0)) (STANDARD . (with_clause . 0)) (PROJECT . 
(with_clause . 0)) ($EOI . (with_clause . 0)))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (SEMICOLON . 
(identifier_opt . 0)) (COMMA . (identifier_opt . 0)) (RIGHT_PAREN . 
(identifier_opt . 0)) (AMPERSAND . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (IDENTIFIER .  43))
       ((default . error) (IDENTIFIER .  42))
-      ((default . error) (IDENTIFIER .  41))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (RIGHT_PAREN . (identifier_opt . 0)) (COMMA . 
(identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) 
(PROJECT .  20))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (RIGHT_PAREN . (identifier_opt . 0)) (COMMA . 
(identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) 
(PROJECT .  20))
       ((default . error) ($EOI . (compilation_unit . 0)))
-      ((default . error) (COMMA .  31) (RIGHT_PAREN .  70))
-      ((default . error) (COMMA .  31) (RIGHT_PAREN .  69))
-      ((default . error) (LEFT_PAREN .  68) (COMMA . (attribute_reference . 
0)) (RIGHT_PAREN . (attribute_reference . 0)) (SEMICOLON . (attribute_reference 
. 0)) (AMPERSAND . (attribute_reference . 0)))
+      ((default . error) (COMMA .  32) (RIGHT_PAREN .  71))
+      ((default . error) (COMMA .  32) (RIGHT_PAREN .  70))
+      ((default . error) (LEFT_PAREN .  69) (COMMA . (attribute_reference . 
0)) (RIGHT_PAREN . (attribute_reference . 0)) (SEMICOLON . (attribute_reference 
. 0)) (AMPERSAND . (attribute_reference . 0)))
       ((default . error) (IS . (name . 1)) (COMMA . (name . 1)) (RIGHT_PAREN . 
(name . 1)) (SEMICOLON . (name . 1)) (AMPERSAND . (name . 1)) (DOT . (name . 
1)) (QUOTE . (name . 1)))
       ((default . error) (SEMICOLON . (string_expression . 1)) (COMMA . 
(string_expression . 1)) (RIGHT_PAREN . (string_expression . 1)) (AMPERSAND . 
(string_expression . 1)))
-      ((default . error) (AMPERSAND .  33) (RIGHT_PAREN . (string_list . 1)) 
(SEMICOLON . (string_list . 1)) (COMMA . (string_list . 1)))
-      ((default . error) (COLON .  66) (COLON_EQUALS .  67))
-      ((default . error) (IDENTIFIER .  16))
-      ((default . error) (IDENTIFIER .  64))
-      ((default . error) (SEMICOLON .  63))
+      ((default . error) (AMPERSAND .  34) (RIGHT_PAREN . (string_list . 1)) 
(SEMICOLON . (string_list . 1)) (COMMA . (string_list . 1)))
+      ((default . error) (COLON .  67) (COLON_EQUALS .  68))
+      ((default . error) (DOT . (identifier_opt . 0)) (IS . (identifier_opt . 
0)) (IDENTIFIER .  16))
+      ((default . error) (IDENTIFIER .  65))
+      ((default . error) (SEMICOLON .  64))
+      ((default . error) (IS . (identifier_opt . 0)) (IDENTIFIER .  16))
       ((default . error) (IDENTIFIER .  62))
-      ((default . error) (IDENTIFIER .  61))
       ((default . error) (WHEN . (simple_declarative_item . 2)) (END . 
(simple_declarative_item . 2)) (IDENTIFIER . (simple_declarative_item . 2)) 
(CASE . (simple_declarative_item . 2)) (FOR . (simple_declarative_item . 2)) 
(NULL . (simple_declarative_item . 2)) (PACKAGE . (simple_declarative_item . 
2)) (TYPE . (simple_declarative_item . 2)))
       ((default . error) (WHEN . (simple_declarative_item . 3)) (END . 
(simple_declarative_item . 3)) (IDENTIFIER . (simple_declarative_item . 3)) 
(CASE . (simple_declarative_item . 3)) (FOR . (simple_declarative_item . 3)) 
(NULL . (simple_declarative_item . 3)) (PACKAGE . (simple_declarative_item . 
3)) (TYPE . (simple_declarative_item . 3)))
-      ((default . error) (WHEN . (declarative_items . 0)) (END . 
(declarative_items . 0)) (IDENTIFIER . (declarative_items . 0)) (CASE . 
(declarative_items . 0)) (FOR . (declarative_items . 0)) (NULL . 
(declarative_items . 0)) (PACKAGE . (declarative_items . 0)) (TYPE . 
(declarative_items . 0)))
-      ((default . error) (END .  59) (TYPE .  50) (IDENTIFIER .  45) (NULL .  
48) (CASE .  46) (FOR .  47) (PACKAGE .  49))
+      ((default . error) (WHEN . (declarative_items . 1)) (END . 
(declarative_items . 1)) (IDENTIFIER . (declarative_items . 1)) (CASE . 
(declarative_items . 1)) (FOR . (declarative_items . 1)) (NULL . 
(declarative_items . 1)) (PACKAGE . (declarative_items . 1)) (TYPE . 
(declarative_items . 1)))
+      ((default . error) (END .  60) (TYPE .  51) (IDENTIFIER .  46) (NULL .  
49) (CASE .  47) (FOR .  48) (PACKAGE .  50))
       ((default . error) (WHEN . (declarative_item . 2)) (END . 
(declarative_item . 2)) (TYPE . (declarative_item . 2)) (PACKAGE . 
(declarative_item . 2)) (NULL . (declarative_item . 2)) (FOR . 
(declarative_item . 2)) (CASE . (declarative_item . 2)) (IDENTIFIER . 
(declarative_item . 2)))
       ((default . error) (WHEN . (package_declaration . 0)) (END . 
(package_declaration . 0)) (IDENTIFIER . (package_declaration . 0)) (CASE . 
(package_declaration . 0)) (FOR . (package_declaration . 0)) (NULL . 
(package_declaration . 0)) (PACKAGE . (package_declaration . 0)) (TYPE . 
(package_declaration . 0)))
       ((default . error) (WHEN . (declarative_item . 0)) (END . 
(declarative_item . 0)) (TYPE . (declarative_item . 0)) (PACKAGE . 
(declarative_item . 0)) (NULL . (declarative_item . 0)) (FOR . 
(declarative_item . 0)) (CASE . (declarative_item . 0)) (IDENTIFIER . 
(declarative_item . 0)))
       ((default . error) (WHEN . (declarative_item . 1)) (END . 
(declarative_item . 1)) (TYPE . (declarative_item . 1)) (PACKAGE . 
(declarative_item . 1)) (NULL . (declarative_item . 1)) (FOR . 
(declarative_item . 1)) (CASE . (declarative_item . 1)) (IDENTIFIER . 
(declarative_item . 1)))
-      ((default . error) (IDENTIFIER .  82))
-      ((default . error) (WHEN . (declarative_items . 1)) (TYPE . 
(declarative_items . 1)) (PACKAGE . (declarative_items . 1)) (NULL . 
(declarative_items . 1)) (FOR . (declarative_items . 1)) (CASE . 
(declarative_items . 1)) (IDENTIFIER . (declarative_items . 1)) (END . 
(declarative_items . 1)))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  16))
+      ((default . error) (WHEN . (declarative_items . 2)) (TYPE . 
(declarative_items . 2)) (PACKAGE . (declarative_items . 2)) (NULL . 
(declarative_items . 2)) (FOR . (declarative_items . 2)) (CASE . 
(declarative_items . 2)) (IDENTIFIER . (declarative_items . 2)) (END . 
(declarative_items . 2)))
+      ((default . error) (IS .  82))
       ((default . error) (IS .  81))
-      ((default . error) (IS .  80))
       ((default . error) (WHEN . (simple_declarative_item . 4)) (TYPE . 
(simple_declarative_item . 4)) (PACKAGE . (simple_declarative_item . 4)) (NULL 
. (simple_declarative_item . 4)) (FOR . (simple_declarative_item . 4)) (CASE . 
(simple_declarative_item . 4)) (IDENTIFIER . (simple_declarative_item . 4)) 
(END . (simple_declarative_item . 4)))
-      ((default . error) (USE .  79) (LEFT_PAREN .  78))
-      ((default . error) (DOT .  34) (IS .  77))
-      ((default . error) (IDENTIFIER .  76))
-      ((default . error) (LEFT_PAREN .  72) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (STRING_LITERAL .  71))
+      ((default . error) (USE .  80) (LEFT_PAREN .  79))
+      ((default . error) (DOT .  35) (IS .  78))
+      ((default . error) (IDENTIFIER .  77))
+      ((default . error) (LEFT_PAREN .  73) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (STRING_LITERAL .  72))
       ((default . error) (AMPERSAND . (external_value . 1)) (SEMICOLON . 
(external_value . 1)) (RIGHT_PAREN . (external_value . 1)) (COMMA . 
(external_value . 1)))
       ((default . error) (AMPERSAND . (external_value . 0)) (SEMICOLON . 
(external_value . 0)) (RIGHT_PAREN . (external_value . 0)) (COMMA . 
(external_value . 0)))
-      ((default . error) (RIGHT_PAREN .  97))
-      ((default . error) (RIGHT_PAREN .  95) (STRING_LITERAL .  17) (EXTERNAL 
.  18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (AMPERSAND .  93) (SEMICOLON .  94))
-      ((default . error) (SEMICOLON . (term . 0)) (AMPERSAND . ((term . 0)  
33)))
+      ((default . error) (RIGHT_PAREN .  98))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (RIGHT_PAREN . ( 96 (identifier_opt . 0))) (COMMA . 
(identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) 
(PROJECT .  20))
+      ((default . error) (AMPERSAND .  94) (SEMICOLON .  95))
+      ((default . error) (SEMICOLON . (term . 0)) (AMPERSAND . ((term . 0)  
34)))
       ((default . error) (SEMICOLON . (expression . 0)) (AMPERSAND . 
(expression . 0)))
-      ((default . error) (COLON_EQUALS .  92))
-      ((default . error) (WHEN .  89))
-      ((default . error) (STRING_LITERAL .  88))
-      ((default . error) (LEFT_PAREN .  72) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (IDENTIFIER .  45) (NULL .  48) (CASE .  46) (FOR .  
47))
-      ((default . error) (LEFT_PAREN .  84))
-      ((default . error) (SEMICOLON .  83))
+      ((default . error) (COLON_EQUALS .  93))
+      ((default . error) (END . (case_items . 0)) (WHEN . ((case_items . 0)  
90)))
+      ((default . error) (STRING_LITERAL .  89))
+      ((default . error) (LEFT_PAREN .  73) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (END . (simple_declarative_items . 0)) (IDENTIFIER . 
((simple_declarative_items . 0)  46)) (NULL . ((simple_declarative_items . 0)  
49)) (CASE . ((simple_declarative_items . 0)  47)) (FOR . 
((simple_declarative_items . 0)  48)))
+      ((default . error) (LEFT_PAREN .  85))
+      ((default . error) (SEMICOLON .  84))
       ((default . error) ($EOI . (simple_project_declaration . 0)))
-      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (END . (simple_declarative_items . 0)) (IDENTIFIER . 
(simple_declarative_items . 0)) (CASE . (simple_declarative_items . 0)) (FOR . 
(simple_declarative_items . 0)) (NULL . (simple_declarative_items . 0)))
-      ((default . error) (END .  109) (IDENTIFIER .  45) (NULL .  48) (CASE .  
46) (FOR .  47))
-      ((default . error) (AMPERSAND .  93) (SEMICOLON .  108))
-      ((default . error) (RIGHT_PAREN .  107))
-      ((default . error) (STRING_LITERAL .  103) (OTHERS .  104))
-      ((default . error) (END . (case_items . 0)) (WHEN . (case_items . 0)))
-      ((default . error) (END .  101) (WHEN .  89))
-      ((default . error) (LEFT_PAREN .  72) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (LEFT_PAREN .  72) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (STRING_LITERAL .  17) (EXTERNAL .  18) 
(EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (RIGHT_PAREN . (identifier_opt . 0)) (COMMA . 
(identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) 
(PROJECT .  20))
+      ((default . error) (END . (simple_declarative_items . 1)) (IDENTIFIER . 
(simple_declarative_items . 1)) (CASE . (simple_declarative_items . 1)) (FOR . 
(simple_declarative_items . 1)) (NULL . (simple_declarative_items . 1)))
+      ((default . error) (END .  110) (IDENTIFIER .  46) (NULL .  49) (CASE .  
47) (FOR .  48))
+      ((default . error) (AMPERSAND .  94) (SEMICOLON .  109))
+      ((default . error) (RIGHT_PAREN .  108))
+      ((default . error) (VERTICAL_BAR . (discrete_choice . 0)) (EQUAL_GREATER 
. (discrete_choice . 0)) (STRING_LITERAL .  104) (OTHERS .  105))
+      ((default . error) (END . (case_items . 1)) (WHEN . (case_items . 1)))
+      ((default . error) (END .  102) (WHEN .  90))
+      ((default . error) (LEFT_PAREN .  73) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (LEFT_PAREN .  73) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (SEMICOLON . 
(identifier_opt . 0)) (AMPERSAND . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
       ((default . error) (WHEN . (simple_declarative_item . 0)) (TYPE . 
(simple_declarative_item . 0)) (PACKAGE . (simple_declarative_item . 0)) (NULL 
. (simple_declarative_item . 0)) (FOR . (simple_declarative_item . 0)) (CASE . 
(simple_declarative_item . 0)) (IDENTIFIER . (simple_declarative_item . 0)) 
(END . (simple_declarative_item . 0)))
       ((default . error) (SEMICOLON . (term . 1)) (AMPERSAND . (term . 1)))
-      ((default . error) (COMMA .  31) (RIGHT_PAREN .  98))
+      ((default . error) (COMMA .  32) (RIGHT_PAREN .  99))
       ((default . error) (AMPERSAND . (attribute_reference . 1)) (SEMICOLON . 
(attribute_reference . 1)) (RIGHT_PAREN . (attribute_reference . 1)) (COMMA . 
(attribute_reference . 1)))
       ((default . error) (AMPERSAND . (term . 2)) (SEMICOLON . (term . 2)))
       ((default . error) (SEMICOLON . (expression . 1)) (AMPERSAND . 
(expression . 1)))
-      ((default . error) (AMPERSAND .  93) (SEMICOLON .  118))
-      ((default . error) (CASE .  117))
-      ((default . error) (WHEN . (case_items . 1)) (END . (case_items . 1)))
-      ((default . error) (VERTICAL_BAR . (discrete_choice . 0)) (EQUAL_GREATER 
. (discrete_choice . 0)))
+      ((default . error) (AMPERSAND .  94) (SEMICOLON .  119))
+      ((default . error) (CASE .  118))
+      ((default . error) (WHEN . (case_items . 2)) (END . (case_items . 2)))
       ((default . error) (VERTICAL_BAR . (discrete_choice . 1)) (EQUAL_GREATER 
. (discrete_choice . 1)))
+      ((default . error) (VERTICAL_BAR . (discrete_choice . 2)) (EQUAL_GREATER 
. (discrete_choice . 2)))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 0)) 
(VERTICAL_BAR . (discrete_choice_list . 0)))
-      ((default . error) (VERTICAL_BAR .  116) (EQUAL_GREATER .  115))
-      ((default . error) (USE .  114))
+      ((default . error) (VERTICAL_BAR .  117) (EQUAL_GREATER .  116))
+      ((default . error) (USE .  115))
       ((default . error) (WHEN . (attribute_declaration . 0)) (END . 
(attribute_declaration . 0)) (TYPE . (attribute_declaration . 0)) (PACKAGE . 
(attribute_declaration . 0)) (NULL . (attribute_declaration . 0)) (FOR . 
(attribute_declaration . 0)) (CASE . (attribute_declaration . 0)) (IDENTIFIER . 
(attribute_declaration . 0)))
-      ((default . error) (IDENTIFIER .  113))
-      ((default . error) (NULL . (simple_declarative_items . 1)) (FOR . 
(simple_declarative_items . 1)) (CASE . (simple_declarative_items . 1)) 
(IDENTIFIER . (simple_declarative_items . 1)) (END . (simple_declarative_items 
. 1)))
-      ((default . error) (COMMA .  31) (RIGHT_PAREN .  112))
+      ((default . error) (SEMICOLON . (identifier_opt . 0)) (IDENTIFIER .  16))
+      ((default . error) (NULL . (simple_declarative_items . 2)) (FOR . 
(simple_declarative_items . 2)) (CASE . (simple_declarative_items . 2)) 
(IDENTIFIER . (simple_declarative_items . 2)) (END . (simple_declarative_items 
. 2)))
+      ((default . error) (COMMA .  32) (RIGHT_PAREN .  113))
+      ((default . error) (SEMICOLON .  125))
       ((default . error) (SEMICOLON .  124))
-      ((default . error) (SEMICOLON .  123))
-      ((default . error) (LEFT_PAREN .  72) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (IDENTIFIER .  16) (PROJECT .  20))
-      ((default . error) (TYPE .  50) (IDENTIFIER .  45) (NULL .  48) (CASE .  
46) (FOR .  47) (PACKAGE .  49))
-      ((default . error) (STRING_LITERAL .  103) (OTHERS .  104))
-      ((default . error) (SEMICOLON .  119))
+      ((default . error) (LEFT_PAREN .  73) (STRING_LITERAL .  17) (EXTERNAL . 
 18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . 
(identifier_opt . 0)) (SEMICOLON . (identifier_opt . 0)) (QUOTE . 
(identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  20))
+      ((default . error) (END . (declarative_items . 0)) (WHEN . 
(declarative_items . 0)) (TYPE . ((declarative_items . 0)  51)) (IDENTIFIER . 
((declarative_items . 0)  46)) (NULL . ((declarative_items . 0)  49)) (CASE . 
((declarative_items . 0)  47)) (FOR . ((declarative_items . 0)  48)) (PACKAGE . 
((declarative_items . 0)  50)))
+      ((default . error) (EQUAL_GREATER . (discrete_choice . 0)) (VERTICAL_BAR 
. (discrete_choice . 0)) (STRING_LITERAL .  104) (OTHERS .  105))
+      ((default . error) (SEMICOLON .  120))
       ((default . error) (WHEN . (simple_declarative_item . 1)) (TYPE . 
(simple_declarative_item . 1)) (PACKAGE . (simple_declarative_item . 1)) (NULL 
. (simple_declarative_item . 1)) (FOR . (simple_declarative_item . 1)) (CASE . 
(simple_declarative_item . 1)) (IDENTIFIER . (simple_declarative_item . 1)) 
(END . (simple_declarative_item . 1)))
       ((default . error) (WHEN . (case_statement . 0)) (END . (case_statement 
. 0)) (TYPE . (case_statement . 0)) (PACKAGE . (case_statement . 0)) (NULL . 
(case_statement . 0)) (FOR . (case_statement . 0)) (CASE . (case_statement . 
0)) (IDENTIFIER . (case_statement . 0)))
       ((default . error) (EQUAL_GREATER . (discrete_choice_list . 1)) 
(VERTICAL_BAR . (discrete_choice_list . 1)))
-      ((default . error) (END . (case_item . 0)) (WHEN . (case_item . 0)) 
(TYPE .  50) (IDENTIFIER .  45) (NULL .  48) (CASE .  46) (FOR .  47) (PACKAGE 
.  49))
-      ((default . error) (AMPERSAND .  93) (SEMICOLON .  125))
+      ((default . error) (END . (case_item . 0)) (WHEN . (case_item . 0)) 
(TYPE .  51) (IDENTIFIER .  46) (NULL .  49) (CASE .  47) (FOR .  48) (PACKAGE 
.  50))
+      ((default . error) (AMPERSAND .  94) (SEMICOLON .  126))
       ((default . error) (WHEN . (package_spec . 0)) (END . (package_spec . 
0)) (TYPE . (package_spec . 0)) (PACKAGE . (package_spec . 0)) (NULL . 
(package_spec . 0)) (FOR . (package_spec . 0)) (CASE . (package_spec . 0)) 
(IDENTIFIER . (package_spec . 0)))
       ((default . error) (WHEN . (typed_string_declaration . 0)) (END . 
(typed_string_declaration . 0)) (IDENTIFIER . (typed_string_declaration . 0)) 
(CASE . (typed_string_declaration . 0)) (FOR . (typed_string_declaration . 0)) 
(NULL . (typed_string_declaration . 0)) (PACKAGE . (typed_string_declaration . 
0)) (TYPE . (typed_string_declaration . 0)))
       ((default . error) (WHEN . (attribute_declaration . 1)) (IDENTIFIER . 
(attribute_declaration . 1)) (CASE . (attribute_declaration . 1)) (FOR . 
(attribute_declaration . 1)) (NULL . (attribute_declaration . 1)) (PACKAGE . 
(attribute_declaration . 1)) (TYPE . (attribute_declaration . 1)) (END . 
(attribute_declaration . 1)))]
@@ -330,17 +336,15 @@
       nil
       nil
       nil
+      ((identifier_opt . 29))
       nil
-      nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 27))
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 26)(string_primary . 
27)(string_list . 28))
       nil
       ((with_clause . 14))
       ((project_qualifier_opt . 13))
       nil
       nil
-      ((project_declaration . 38)(simple_project_declaration . 11))
-      nil
-      nil
+      ((project_declaration_opt . 39)(simple_project_declaration . 11))
       nil
       nil
       nil
@@ -355,71 +359,73 @@
       nil
       nil
       nil
-      ((attribute_declaration . 51)(case_statement . 52)(declarative_item . 
53)(declarative_items . 54)(package_declaration . 55)(package_spec . 
56)(simple_declarative_item . 57)(typed_string_declaration . 58))
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 44)(string_primary . 26))
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_primary . 43))
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 40))
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 39))
+      ((attribute_declaration . 52)(case_statement . 53)(declarative_item . 
54)(declarative_items . 55)(package_declaration . 56)(package_spec . 
57)(simple_declarative_item . 58)(typed_string_declaration . 59))
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 45)(string_primary . 
27))
       nil
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_primary . 44))
       nil
       nil
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 26)(string_primary . 
27)(string_list . 41))
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 26)(string_primary . 
27)(string_list . 40))
       nil
       nil
       nil
       nil
       nil
-      ((name . 65))
       nil
       nil
       nil
+      ((identifier_opt . 24)(name . 66))
       nil
       nil
+      ((identifier_opt . 63))
       nil
       nil
-      ((attribute_declaration . 51)(case_statement . 52)(declarative_item . 
60)(package_declaration . 55)(package_spec . 56)(simple_declarative_item . 
57)(typed_string_declaration . 58))
       nil
       nil
+      ((attribute_declaration . 52)(case_statement . 53)(declarative_item . 
61)(package_declaration . 56)(package_spec . 57)(simple_declarative_item . 
58)(typed_string_declaration . 59))
       nil
       nil
       nil
       nil
+      ((identifier_opt . 83))
       nil
       nil
       nil
       nil
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
73)(external_value . 23)(name . 24)(string_expression . 74)(string_primary . 
26)(term . 75))
       nil
+      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
74)(external_value . 23)(identifier_opt . 24)(name . 25)(string_expression . 
75)(string_primary . 27)(term . 76))
       nil
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 96))
       nil
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 26)(string_primary . 
27)(string_list . 97))
       nil
       nil
       nil
-      ((case_item . 90)(case_items . 91))
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
87)(external_value . 23)(name . 24)(string_expression . 74)(string_primary . 
26)(term . 75))
-      ((attribute_declaration . 51)(case_statement . 
52)(simple_declarative_item . 85)(simple_declarative_items . 86))
+      ((case_item . 91)(case_items . 92))
       nil
+      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
88)(external_value . 23)(identifier_opt . 24)(name . 25)(string_expression . 
75)(string_primary . 27)(term . 76))
+      ((attribute_declaration . 52)(case_statement . 
53)(simple_declarative_item . 86)(simple_declarative_items . 87))
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 111))
       nil
-      ((attribute_declaration . 51)(case_statement . 
52)(simple_declarative_item . 110))
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 26)(string_primary . 
27)(string_list . 112))
       nil
+      ((attribute_declaration . 52)(case_statement . 
53)(simple_declarative_item . 111))
       nil
-      ((discrete_choice . 105)(discrete_choice_list . 106))
       nil
-      ((case_item . 102))
-      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
100)(external_value . 23)(name . 24)(string_expression . 74)(string_primary . 
26)(term . 75))
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(name . 24)(string_expression . 74)(string_primary . 26)(term . 99))
+      ((discrete_choice . 106)(discrete_choice_list . 107))
       nil
+      ((case_item . 103))
+      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
101)(external_value . 23)(identifier_opt . 24)(name . 25)(string_expression . 
75)(string_primary . 27)(term . 76))
+      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 
23)(identifier_opt . 24)(name . 25)(string_expression . 75)(string_primary . 
27)(term . 100))
       nil
       nil
       nil
@@ -435,18 +441,19 @@
       nil
       nil
       nil
+      ((identifier_opt . 114))
       nil
       nil
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
122)(external_value . 23)(name . 24)(string_expression . 74)(string_primary . 
26)(term . 75))
-      ((attribute_declaration . 51)(case_statement . 52)(declarative_item . 
53)(declarative_items . 121)(package_declaration . 55)(package_spec . 
56)(simple_declarative_item . 57)(typed_string_declaration . 58))
-      ((discrete_choice . 120))
+      ((attribute_prefix . 21)(attribute_reference . 22)(expression . 
123)(external_value . 23)(identifier_opt . 24)(name . 25)(string_expression . 
75)(string_primary . 27)(term . 76))
+      ((attribute_declaration . 52)(case_statement . 53)(declarative_item . 
54)(declarative_items . 122)(package_declaration . 56)(package_spec . 
57)(simple_declarative_item . 58)(typed_string_declaration . 59))
+      ((discrete_choice . 121))
       nil
       nil
       nil
       nil
-      ((attribute_declaration . 51)(case_statement . 52)(declarative_item . 
60)(package_declaration . 55)(package_spec . 56)(simple_declarative_item . 
57)(typed_string_declaration . 58))
+      ((attribute_declaration . 52)(case_statement . 53)(declarative_item . 
61)(package_declaration . 56)(package_spec . 57)(simple_declarative_item . 
58)(typed_string_declaration . 59))
       nil
       nil
       nil
diff --git a/packages/ada-mode/gpr-mode.el b/packages/ada-mode/gpr-mode.el
index 84f3cc6..22f9c5e 100755
--- a/packages/ada-mode/gpr-mode.el
+++ b/packages/ada-mode/gpr-mode.el
@@ -1,10 +1,9 @@
 ;;; gpr-mode --- major-mode for editing GNAT project files
 
-;; Copyright (C) 2004, 2007, 2008, 2012-2013  Free Software Foundation, Inc.
+;; Copyright (C) 2004, 2007, 2008, 2012-2014  Free Software Foundation, Inc.
 
 ;; Author: Stephen Leake <address@hidden>
 ;; Maintainer: Stephen Leake <address@hidden>
-;; Version: 5.0
 
 ;; This file is part of GNU Emacs.
 
@@ -38,18 +37,6 @@
 ;; we reuse several ada-mode functions
 (require 'ada-mode)
 
-(defun gpr-align ()
-  "If region is active, apply 'align'. If not, attempt to align
-current construct."
-  (interactive)
-  (if (use-region-p)
-      (progn
-        (align (region-beginning) (region-end))
-        (deactivate-mark))
-
-    (align-current)
-    ))
-
 (defvar gpr-mode-map
   (let ((map (make-sparse-keymap)))
     ;; C-c <letter> are reserved for users
@@ -57,7 +44,6 @@ current construct."
     ;; global-map has C-x ` 'next-error
     (define-key map [return]   'ada-indent-newline-indent)
     (define-key map "\C-c`"    'ada-show-secondary-error)
-    (define-key map "\C-c\C-a" 'gpr-align)
     (define-key map "\C-c\C-c" 'compile)
     (define-key map "\C-c\C-e" 'gpr-expand)
     (define-key map "\C-c\C-f" 'gpr-show-parse-error)
@@ -65,6 +51,7 @@ current construct."
             ;; FIXME (later): implement?
     ;; (define-key map "\C-c\C-n" 'ada-next-statement-keyword)
     ;; (define-key map "\C-c\C-p" 'ada-prev-statement-keyword)
+    (define-key map "\C-c\C-o"          'ff-find-other-file)
     (define-key map "\C-c\C-S-p" 'gpr-set-as-project)
     (define-key map "\C-c\C-t" 'ada-case-read-all-exceptions)
     (define-key map "\C-c\C-w" 'ada-case-adjust-at-point)
@@ -92,14 +79,13 @@ current construct."
     ["Next compilation error"      next-error                       t]
     ["Show secondary error"        ada-show-secondary-error         t]
     ["Show last parse error"       gpr-show-parse-error             t]
+    ["Other file"                  ff-find-other-file               t]
     ("Edit"
-     ["Indent Line"                 indent-for-tab-command         t]
-     ["Indent Lines in Selection"   indent-region                  t]
+     ["Indent Line or selection"    indent-for-tab-command         t]
+     ["Indent current statement"    gpr-indent-statement           t]
      ["Indent Lines in File"        (indent-region (point-min) (point-max))  t]
      ["Expand skeleton"             gpr-expand                     t] ;; 
FIXME: only if skeleton
-     ["Align"                       gpr-align                      t]
-     ["Comment Selection"           comment-region                 t]
-     ["Uncomment Selection"         (lambda () (comment-region t)) t]
+     ["Comment/uncomment selection" comment-dwim                   t]
      ["Fill Comment Paragraph"      fill-paragraph                 t]
 
      ["Fill Comment Paragraph Justify" ada-fill-comment-paragraph-justify t]
@@ -221,6 +207,7 @@ of the package or project point is in or just after, or 
nil.")
   (ada-select-prj-file (or file (buffer-file-name))))
 
 ;;;;
+;;;###autoload
 (defun gpr-mode ()
   "The major mode for editing GNAT project files."
 
@@ -265,8 +252,7 @@ of the package or project point is in or just after, or 
nil.")
 
   )
 
-;; user needs to add this somewhere:
-;; FIXME: add autoload processing?
+;;;###autoload
 (add-to-list 'auto-mode-alist '("\\.gpr\\'" . gpr-mode))  ; GNAT project files
 
 (provide 'gpr-mode)
@@ -274,4 +260,7 @@ of the package or project point is in or just after, or 
nil.")
 (unless (featurep 'gpr-indent-engine)
   (require 'gpr-wisi))
 
+(unless (featurep 'gpr-skeletons)
+  (require 'gpr-skel))
+
 ;;; end of file
diff --git a/packages/ada-mode/gpr-mode.info b/packages/ada-mode/gpr-mode.info
index 6d2e6bf..8313779 100644
--- a/packages/ada-mode/gpr-mode.info
+++ b/packages/ada-mode/gpr-mode.info
@@ -41,6 +41,11 @@ File: gpr-mode.info,  Node: Top,  Next: Overview,  Prev: 
(dir),  Up: (dir)
 
 * Overview::
 * Installation::
+* Customization::
+* Moving Through Gpr Code::
+* Identifier completion::
+* Indentation::
+* Statement skeletons::
 * GNU Free Documentation License::
 * Index::
 
@@ -63,16 +68,17 @@ and facilitates writing new code.
 automatically load and activate gpr mode.
 
 
-File: gpr-mode.info,  Node: Installation,  Prev: Overview,  Up: Top
+File: gpr-mode.info,  Node: Installation,  Next: Customization,  Prev: 
Overview,  Up: Top
 
 2 Installation
 **************
 
-gpr mode is part of the standard Emacs distribution; if you use that,
-no files need to be installed.
+gpr mode is distributed in the Gnu ELPA package archive, bundled with
+Ada mode; it can be installed via `M-x list-packages' (*note Packages:
+(emacs)Packages.).
 
-   gpr mode is also available as a separate distribution (bundled with
-Ada mode), from the Emacs Ada mode website
+   gpr mode is also available as a separate distribution bundled with
+Ada mode, from the Emacs Ada mode website
 `http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html'. The
 separate distribution may be more recent.
 
@@ -84,7 +90,200 @@ version number. To see what version of Ada mode you have 
installed, do
 `M-x ada-mode-version'.
 
 
-File: gpr-mode.info,  Node: GNU Free Documentation License,  Next: Index,  Up: 
Top
+File: gpr-mode.info,  Node: Customization,  Next: Moving Through Gpr Code,  
Prev: Installation,  Up: Top
+
+3 Customization
+***************
+
+gpr mode uses the Ada mode indentation variables; they can be set via
+the menu `Ada | Customize' from an Ada mode buffer.  Click on the
+`Help' button there for help on using customize.
+
+   To modify a specific variable, you can directly call the function
+`customize-variable'; just type `M-x customize-variable <RET>
+VARIABLE-NAME <RET>').
+
+   Alternately, you can specify variable settings in the Emacs
+configuration file, `~/.emacs'. This file is coded in Emacs lisp, and
+the syntax to set a variable is the following:
+     (setq variable-name value)
+
+   Some general Emacs settings that are useful for gpr files:
+`delete-trailing-whitespace'
+     Deletes space, tab at end of line and blank lines at end of buffer.
+
+`untabify'
+     Deletes tab characters that have crept into the file.
+
+`indent-tabs-mode'
+     Don't insert tab characters when indenting.
+
+`hippie-expand'
+     Bind `hippie-expand' to a key; it expands the word before point,
+     using words from current buffer, other buffers, file names, etc;
+     see `hippie-expand-try-functions-list'. You can also add
+     `skeleton-hippie-try' to that list (*note Statement skeletons::).
+
+   The above can all be set by the following code in your `~/.emacs'.
+Note that some are functions are added to `before-save-hook'; they run
+just before a buffer is written to disk.
+     (setq-default indent-tabs-mode nil)
+     (require 'gpr-mode)
+     (add-to-list 'hippie-expand-try-functions-list 'skeleton-hippie-try)
+     (define-key gpr-mode-map "\C-e"     'hippie-expand)
+     (add-hook 'gpr-mode-hook
+        (lambda ()
+         (add-hook 'before-save-hook 'delete-trailing-whitespace nil t)
+         (add-hook 'before-save-hook
+                   (lambda () (untabify (point-min) (point-max)))
+                    nil t)))
+
+
+File: gpr-mode.info,  Node: Moving Through Gpr Code,  Next: Identifier 
completion,  Prev: Customization,  Up: Top
+
+4 Moving Through Gpr Code
+*************************
+
+These commands navigate through gpr code. All these functions are
+available through the gpr menu and keybindings.
+
+`C-c C-o'
+     If point is on a `with' clause, position point on the
+     corresponding package declaration.
+
+`C-u SPACE'
+     Jump back to the previous location.
+
+
+
+File: gpr-mode.info,  Node: Identifier completion,  Next: Indentation,  Prev: 
Moving Through Gpr Code,  Up: Top
+
+5 Identifier completion
+***********************
+
+Emacs provides a general way of completing identifiers: `M-/' (bound to
+`dabbrev-expand'). This is an easy way to type faster: you just have to
+type the first few letters of an identifier, and then loop through all
+the possible completions.
+
+   `M-/' works by parsing all open gpr files for possible completions.
+
+   For instance, if the words `my_identifier' and `my_subprogram' are
+the only words starting with `my' in any of the open gpr files, then
+you will have this scenario:
+
+     You type:  myM-/
+     Emacs inserts:  `my_identifier'
+     If you press M-/ once again, Emacs replaces `my_identifier' with
+     `my_subprogram'.
+     Pressing M-/ once more will bring you back to `my_identifier'.
+
+   This is a very fast way to do completion, and the casing of words
+will also be respected.
+
+
+File: gpr-mode.info,  Node: Indentation,  Next: Statement skeletons,  Prev: 
Identifier completion,  Up: Top
+
+6 Indentation
+*************
+
+gpr mode comes with a full set of rules for automatic indentation. You
+can also configure the indentation, via the following variables:
+
+`ada-indent'                  (default value: 3)
+     Number of columns for default indentation.
+
+`ada-indent-broken'           (default value: 2)
+     Number of columns to indent the continuation of a broken line.
+
+`ada-indent-when'             (default value: 3)
+     Indentation for `when' relative to `exception', `case', or `or' in
+     `select'.
+
+`ada-indent-with'             (default value: ada-indent-broken)
+     Indentation for the lines in a `with' context clause.
+
+
+   The following keys indent portions of the text:
+`RET'
+     Insert and indent a new line.
+
+`TAB'
+     Indent the current line, or the current region.
+
+`C-c TAB'
+     Indent the current declaration.
+
+
+   The indentation algorithm relies on a grammar parser to identify the
+syntactic role for keywords and other words in the code. If the code is
+accepted by the parser, the indentation is done according to the rules
+in the indentation engine.
+
+   If the code is not accepted (because it is partially complete during
+editing), the indentation engine falls back to the trivial algorithm of
+indenting each new line the same as the previous line. Once enough new
+text has been entered to make the code acceptable to the parser, the
+declaration is properly indented.
+
+   For example, if you are entering this code:
+
+        for Source_Dirs use
+          ("../../1553/test",
+           "../../system/test");
+
+   when you type `RET (', `(' is indented to the same column as `for',
+because the parser does not find `);'. Then when you type the final `;'
+followed by <TAB>, all three lines are indented, putting `(' where it
+belongs.
+
+   To be more user friendly, the parser accepts a superset of the gpr
+grammer. For example, the parser accepts this code for a `case'
+statement:
+
+     case is
+     end case;
+
+   In general, any sequence of statements, and many expressions, may be
+omitted.
+
+   One way to easily insert empty statements like this is using *note
+Statement skeletons::.
+
+   In rare cases, the parser gets confused; it can be reset by invoking
+menu <gpr | Misc | Reset parser>. Please report such cases as a bug.
+
+
+File: gpr-mode.info,  Node: Statement skeletons,  Next: GNU Free Documentation 
License,  Prev: Indentation,  Up: Top
+
+7 Statement skeletons
+*********************
+
+`C-c C-e' expands the previous one or two words into a statment
+skeleton. For example, `c a s e C-c C-e' expands to:
+
+     case  is
+     when =>
+     end case;
+
+   All skeleton expansions are accepted by the indentation parser, so
+this is a convenient way to insert statements with correct indentation.
+
+   For named packages, the name is taken from the word before point,
+and the package keyword from the word before that:
+
+     package A_Package
+
+   expands to:
+
+     package A_Package is
+     end A_Package;
+
+   Some expansions prompt for more information, such as a choice of
+license.
+
+
+File: gpr-mode.info,  Node: GNU Free Documentation License,  Next: Index,  
Prev: Statement skeletons,  Up: Top
 
 Appendix A GNU Free Documentation License
 *****************************************
@@ -578,12 +777,21 @@ Index
 [index]
 * Menu:
 
+* ff-find-other-file:                    Moving Through Gpr Code.
+                                                               (line 10)
+
+
 
 Tag Table:
 Node: Top969
-Node: Overview1840
-Node: Installation2398
-Node: GNU Free Documentation License3077
-Node: Index28230
+Node: Overview1952
+Node: Installation2510
+Node: Customization3268
+Node: Moving Through Gpr Code5191
+Node: Identifier completion5641
+Node: Indentation6602
+Node: Statement skeletons8978
+Node: GNU Free Documentation License9733
+Node: Index34914
 
 End Tag Table
diff --git a/packages/ada-mode/gpr-skel.el b/packages/ada-mode/gpr-skel.el
index 6ce5509..485a097 100755
--- a/packages/ada-mode/gpr-skel.el
+++ b/packages/ada-mode/gpr-skel.el
@@ -41,7 +41,7 @@
 
 ;;;;; user variables, example skeletons intended to be overwritten
 
-(defcustom gpr-skel-initial-string "header\nproject"
+(defcustom gpr-skel-initial-string "{header}\n{project}"
   "*String to insert in empty buffer.
 This could end in a token recognized by `gpr-skel-expand'."
   :type 'string
@@ -144,7 +144,6 @@ trailing `...' if there are more keys."
       (concat (mapconcat 'car alist-1 " | ") " | ... : "))
   ))
 
-;;;###autoload
 (defun skeleton-expand (&optional name)
   "Expand the token or placeholder before point to a skeleton, as defined by 
`skeleton-token-alist'.
 A token is a symbol in the current syntax.
diff --git a/packages/ada-mode/gpr-wisi.el b/packages/ada-mode/gpr-wisi.el
index 9efaa48..4f4b8a1 100755
--- a/packages/ada-mode/gpr-wisi.el
+++ b/packages/ada-mode/gpr-wisi.el
@@ -168,7 +168,6 @@
   )
 
 ;;;;
-;;;###autoload
 (defun gpr-wisi-setup ()
   "Set up a buffer for parsing Ada files with wisi."
   (wisi-setup '(gpr-wisi-before-cache
diff --git a/packages/wisi/wisi-parse.el b/packages/wisi/wisi-parse.el
index 4497b39..bb3b60b 100755
--- a/packages/wisi/wisi-parse.el
+++ b/packages/wisi/wisi-parse.el
@@ -75,7 +75,12 @@
 If a file needs more than this, it's probably an indication that
 the grammar is excessively redundant.")
 
-(defvar wisi-debug)
+(defvar wisi-debug 0
+  "wisi debug mode:
+0 : normal - ignore parse errors, for indenting new code
+1 : report parse errors (for running tests)
+2 : show parse states, position point at parse errors, debug-on-error works in 
parser
+3 : also show top 10 items of parser stack.")
 
 (defun wisi-parse (automaton lexer)
   "Parse input using the automaton specified in AUTOMATON.
diff --git a/packages/wisi/wisi.el b/packages/wisi/wisi.el
index faa1e3d..e327c18 100755
--- a/packages/wisi/wisi.el
+++ b/packages/wisi/wisi.el
@@ -38,8 +38,8 @@
 ;; that lets us find statement indent points from arbitrary places in
 ;; the code.
 ;;
-;; The grammar for Ada as represented by the EBNF in LRM Annex P is
-;; not LALR(1), so we use a generalized LALR(1) parser (see
+;; For example, the grammar for Ada as represented by the EBNF in LRM
+;; Annex P is not LALR(1), so we use a generalized LALR(1) parser (see
 ;; wisi-parse, wisi-compile).
 ;;
 ;; The parser actions cache indentation and other information as text
@@ -120,7 +120,7 @@
 ;;;; grammar compiler and parser
 ;;
 ;; Since we are using a generalized LALR(1) parser, we cannot use any
-;; of the wisent grammar functions.  We use the OpenToken Ada package
+;; of the wisent grammar functions.  We use OpenToken wisi-generate
 ;; to compile BNF to Elisp source (similar to
 ;; semantic-grammar-create-package), and wisi-compile-grammar to
 ;; compile that to the parser table.
@@ -443,13 +443,6 @@ Also invalidate the Emacs syntax cache."
 If accessing cache at a marker for a token as set by `wisi-cache-tokens', POS 
must be (1- mark)."
   (get-text-property pos 'wisi-cache))
 
-(defvar wisi-debug 0
-  "wisi debug mode:
-0 : normal - ignore parse errors, for indenting new code
-1 : report parse errors (for running tests)
-2 : show parse states, position point at parse errors, debug-on-error works in 
parser
-3 : also show top 10 items of parser stack.")
-
 (defvar-local wisi-parse-error-msg nil)
 
 (defun wisi-goto-error ()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]