]> code.delx.au - gnu-emacs-elpa/blobdiff - packages/ada-mode/gpr-grammar-wy.el
publish ada-mode 5.1.6, wisi 1.0.6, new package ada-ref-man
[gnu-emacs-elpa] / packages / ada-mode / gpr-grammar-wy.el
old mode 100755 (executable)
new mode 100644 (file)
index b0ae6fd..3cefbb1
@@ -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)
 (defconst gpr-grammar-wy--parse-table
    (wisi-compile-grammar
    '((AMPERSAND COLON COLON_EQUALS COMMA DOT EQUAL_GREATER QUOTE SEMICOLON VERTICAL_BAR IDENTIFIER STRING_LITERAL ABSTRACT AGGREGATE CASE CONFIGURATION END EXTERNAL EXTERNAL_AS_LIST FOR IS LEFT_PAREN LIBRARY NULL OTHERS PACKAGE PROJECT RIGHT_PAREN STANDARD TYPE USE WHEN WITH )
-     ((attribute_declaration
+     ((aggregate
+       ((LEFT_PAREN string_list RIGHT_PAREN )
+        (progn
+        (wisi-statement-action 1 'open-paren 3 'close-paren)
+        (wisi-containing-action 1 2))))
+      (attribute_declaration
        ((FOR IDENTIFIER USE expression SEMICOLON )
         (progn
         (wisi-statement-action 1 'statement-start 3 'statement-other 5 'statement-end)
         (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 )))
        ((typed_string_declaration ))
        ((package_declaration )))
       (declarative_items
+       (())
        ((declarative_item ))
        ((declarative_items declarative_item )))
       (discrete_choice
+       (())
        ((STRING_LITERAL ))
        ((OTHERS )))
       (discrete_choice_list
        ((term ))
        ((expression AMPERSAND term )))
       (external_value
-       ((EXTERNAL LEFT_PAREN string_list RIGHT_PAREN )
-        (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)))
+       ((EXTERNAL aggregate ))
+       ((EXTERNAL_AS_LIST aggregate )))
+      (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))))
        ((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))))
       (string_expression
-       ((string_primary ))
-       ((string_expression AMPERSAND string_primary )))
+       ((string_primary )))
       (string_primary
        ((STRING_LITERAL ))
        ((name ))
        ((external_value ))
        ((attribute_reference )))
       (string_list
-       ((string_expression ))
-       ((string_list COMMA string_expression )))
+       ((expression ))
+       ((string_list COMMA expression )
+        (progn
+        (wisi-statement-action 2 'list-break)
+        (wisi-containing-action 2 3))))
       (term
        ((string_expression ))
        ((LEFT_PAREN RIGHT_PAREN ))
-       ((LEFT_PAREN string_list RIGHT_PAREN )
-        (wisi-statement-action
-        1 'open-paren
-        3 'close-paren)))
+       ((aggregate )))
       (typed_string_declaration
-       ((TYPE IDENTIFIER IS LEFT_PAREN string_list RIGHT_PAREN SEMICOLON )
-        (wisi-statement-action 1 'statement-start 4 'open-paren 6 'close-paren 7 'statement-end)))
+       ((TYPE IDENTIFIER IS aggregate SEMICOLON )
+        (progn
+        (wisi-statement-action 1 'statement-start 5 'statement-end)
+        (wisi-containing-action 1 4))))
       (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 .  34) ($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) (LEFT_PAREN .  20) (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 .  21))
       ((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_BAR . accept) (SEMICOLON . accept) (QUOTE . accept) (EQUAL_GREATER . accept) (DOT . accept) (COMMA . accept) (COLON_EQUALS . accept) (COLON . accept) (AMPERSAND . accept))
-      ((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 . (identifier_opt . 1)) (COMMA . (identifier_opt . 1)) (IS . (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 .  37))
-      ((default . error) (LEFT_PAREN .  36))
+      ((default . error) (LEFT_PAREN .  43))
+      ((default . error) (LEFT_PAREN .  43))
+      ((default . error) (LEFT_PAREN .  20) (STRING_LITERAL .  17) (EXTERNAL .  18) (EXTERNAL_AS_LIST .  19) (DOT . (identifier_opt . 0)) (AMPERSAND . (identifier_opt . 0)) (RIGHT_PAREN . ( 41 (identifier_opt . 0))) (COMMA . (identifier_opt . 0)) (QUOTE . (identifier_opt . 0)) (IDENTIFIER .  16) (PROJECT .  21))
       ((default . error) (QUOTE . (attribute_prefix . 0)))
-      ((default . error) (QUOTE .  35))
+      ((default . error) (RIGHT_PAREN . (term . 2)) (COMMA . (term . 2)) (AMPERSAND . (term . 2)) (SEMICOLON . (term . 2)))
+      ((default . error) (QUOTE .  40))
       ((default . error) (RIGHT_PAREN . (string_primary . 3)) (COMMA . (string_primary . 3)) (AMPERSAND . (string_primary . 3)) (SEMICOLON . (string_primary . 3)))
+      ((default . error) (SEMICOLON . (string_list . 0)) (RIGHT_PAREN . (string_list . 0)) (COMMA . (string_list . 0)) (AMPERSAND .  39))
       ((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) (COMMA . (name . 0)) (RIGHT_PAREN . (name . 0)) (IS . (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 .  38) (QUOTE . (attribute_prefix . 1)))
+      ((default . error) (RIGHT_PAREN . (term . 0)) (COMMA . (term . 0)) (AMPERSAND . (term . 0)) (SEMICOLON . (term . 0)))
       ((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) (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) (COMMA .  36) (SEMICOLON .  37))
+      ((default . error) (COMMA . (expression . 0)) (RIGHT_PAREN . (expression . 0)) (SEMICOLON . (expression . 0)) (AMPERSAND . (expression . 0)))
+      ((default . error) (IS .  35))
+      ((default . error) ($EOI . (project_qualifier_opt . 4)) (PROJECT . (project_qualifier_opt . 4)))
+      ((default . error) (END . (declarative_items . 0)) (TYPE . ((declarative_items . 0)  57)) (IDENTIFIER . ((declarative_items . 0)  52)) (NULL . ((declarative_items . 0)  55)) (CASE . ((declarative_items . 0)  53)) (FOR . ((declarative_items . 0)  54)) (PACKAGE . ((declarative_items . 0)  56)))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((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) (IDENTIFIER .  50))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((default . error) (IDENTIFIER .  48))
+      ((default . error) (SEMICOLON . (term . 1)) (AMPERSAND . (term . 1)) (COMMA . (term . 1)) (RIGHT_PAREN . (term . 1)))
+      ((default . error) (COMMA .  36) (RIGHT_PAREN .  47))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((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) ($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 . (aggregate . 0)) (RIGHT_PAREN . (aggregate . 0)) (SEMICOLON . (aggregate . 0)) (AMPERSAND . (aggregate . 0)))
+      ((default . error) (LEFT_PAREN .  75) (COMMA . (attribute_reference . 0)) (RIGHT_PAREN . (attribute_reference . 0)) (SEMICOLON . (attribute_reference . 0)) (AMPERSAND . (attribute_reference . 0)))
+      ((default . error) (SEMICOLON . (expression . 1)) (COMMA . (expression . 1)) (RIGHT_PAREN . (expression . 1)) (AMPERSAND . (expression . 1)))
       ((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) (IDENTIFIER .  62))
-      ((default . error) (IDENTIFIER .  61))
+      ((default . error) (AMPERSAND .  39) (RIGHT_PAREN . (string_list . 1)) (SEMICOLON . (string_list . 1)) (COMMA . (string_list . 1)))
+      ((default . error) (COLON .  73) (COLON_EQUALS .  74))
+      ((default . error) (DOT . (identifier_opt . 0)) (IS . (identifier_opt . 0)) (IDENTIFIER .  16))
+      ((default . error) (IDENTIFIER .  71))
+      ((default . error) (SEMICOLON .  70))
+      ((default . error) (IS . (identifier_opt . 0)) (IDENTIFIER .  16))
+      ((default . error) (IDENTIFIER .  68))
       ((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 .  66) (TYPE .  57) (IDENTIFIER .  52) (NULL .  55) (CASE .  53) (FOR .  54) (PACKAGE .  56))
       ((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) (IS .  81))
-      ((default . error) (IS .  80))
+      ((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 .  83))
+      ((default . error) (IS .  82))
       ((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) (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) (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) (USE .  81) (LEFT_PAREN .  80))
+      ((default . error) (DOT .  38) (IS .  79))
+      ((default . error) (IDENTIFIER .  78))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((default . error) (STRING_LITERAL .  76))
+      ((default . error) (RIGHT_PAREN .  96))
+      ((default . error) (AMPERSAND .  39) (SEMICOLON .  95))
+      ((default . error) (COLON_EQUALS .  94))
+      ((default . error) (END . (case_items . 0)) (WHEN . ((case_items . 0)  91)))
+      ((default . error) (STRING_LITERAL .  90))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((default . error) (END . (simple_declarative_items . 0)) (IDENTIFIER . ((simple_declarative_items . 0)  52)) (NULL . ((simple_declarative_items . 0)  55)) (CASE . ((simple_declarative_items . 0)  53)) (FOR . ((simple_declarative_items . 0)  54)))
+      ((default . error) (LEFT_PAREN .  43))
+      ((default . error) (SEMICOLON .  85))
       ((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) (SEMICOLON .  108))
+      ((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 .  106) (IDENTIFIER .  52) (NULL .  55) (CASE .  53) (FOR .  54))
+      ((default . error) (AMPERSAND .  39) (SEMICOLON .  105))
+      ((default . error) (RIGHT_PAREN .  104))
+      ((default . error) (VERTICAL_BAR . (discrete_choice . 0)) (EQUAL_GREATER . (discrete_choice . 0)) (STRING_LITERAL .  100) (OTHERS .  101))
+      ((default . error) (END . (case_items . 1)) (WHEN . (case_items . 1)))
+      ((default . error) (END .  98) (WHEN .  91))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
       ((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) (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 .  39) (SEMICOLON .  114))
+      ((default . error) (CASE .  113))
+      ((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 .  112) (EQUAL_GREATER .  111))
+      ((default . error) (USE .  110))
       ((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 .  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 . (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) (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) (SEMICOLON .  119))
+      ((default . error) (LEFT_PAREN .  20) (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 .  21))
+      ((default . error) (END . (declarative_items . 0)) (WHEN . (declarative_items . 0)) (TYPE . ((declarative_items . 0)  57)) (IDENTIFIER . ((declarative_items . 0)  52)) (NULL . ((declarative_items . 0)  55)) (CASE . ((declarative_items . 0)  53)) (FOR . ((declarative_items . 0)  54)) (PACKAGE . ((declarative_items . 0)  56)))
+      ((default . error) (EQUAL_GREATER . (discrete_choice . 0)) (VERTICAL_BAR . (discrete_choice . 0)) (STRING_LITERAL .  100) (OTHERS .  101))
+      ((default . error) (SEMICOLON .  115))
       ((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 .  57) (IDENTIFIER .  52) (NULL .  55) (CASE .  53) (FOR .  54) (PACKAGE .  56))
+      ((default . error) (AMPERSAND .  39) (SEMICOLON .  120))
       ((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)))]
      [((compilation_unit . 8)(context_clause . 9)(context_clause_opt . 10)(simple_project_declaration . 11)(with_clause . 12))
       nil
       nil
       nil
       nil
+      ((identifier_opt . 33))
       nil
-      nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 27))
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 25)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(string_list . 31)(term . 32))
       nil
       ((with_clause . 14))
       ((project_qualifier_opt . 13))
       nil
       nil
-      ((project_declaration . 38)(simple_project_declaration . 11))
-      nil
-      nil
-      nil
-      nil
-      nil
-      nil
-      nil
-      nil
+      ((project_declaration_opt . 46)(simple_project_declaration . 11))
       nil
       nil
       nil
       nil
+      ((aggregate . 45))
+      ((aggregate . 44))
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 25)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(string_list . 42)(term . 32))
       nil
       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))
       nil
       nil
       nil
       nil
       nil
       nil
+      ((attribute_declaration . 58)(case_statement . 59)(declarative_item . 60)(declarative_items . 61)(package_declaration . 62)(package_spec . 63)(simple_declarative_item . 64)(typed_string_declaration . 65))
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 51)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 32))
       nil
-      ((name . 65))
       nil
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 49))
       nil
       nil
       nil
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 25)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(string_list . 42)(term . 32))
       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))
       nil
       nil
       nil
       nil
       nil
       nil
+      ((identifier_opt . 27)(name . 72))
       nil
       nil
+      ((identifier_opt . 69))
       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))
+      ((attribute_declaration . 58)(case_statement . 59)(declarative_item . 67)(package_declaration . 62)(package_spec . 63)(simple_declarative_item . 64)(typed_string_declaration . 65))
       nil
       nil
       nil
       nil
-      ((attribute_prefix . 21)(attribute_reference . 22)(external_value . 23)(name . 24)(string_expression . 25)(string_primary . 26)(string_list . 96))
+      ((identifier_opt . 84))
       nil
       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))
       nil
       nil
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 77)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 32))
       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))
       nil
       nil
-      ((discrete_choice . 105)(discrete_choice_list . 106))
+      ((case_item . 92)(case_items . 93))
       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))
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 89)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 32))
+      ((attribute_declaration . 58)(case_statement . 59)(simple_declarative_item . 87)(simple_declarative_items . 88))
+      ((aggregate . 86))
       nil
       nil
       nil
       nil
+      ((attribute_declaration . 58)(case_statement . 59)(simple_declarative_item . 107))
       nil
       nil
+      ((discrete_choice . 102)(discrete_choice_list . 103))
       nil
+      ((case_item . 99))
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 97)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 32))
       nil
       nil
       nil
       nil
       nil
       nil
+      ((identifier_opt . 109))
       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))
       nil
+      ((aggregate . 22)(attribute_prefix . 23)(attribute_reference . 24)(expression . 118)(external_value . 26)(identifier_opt . 27)(name . 28)(string_expression . 29)(string_primary . 30)(term . 32))
+      ((attribute_declaration . 58)(case_statement . 59)(declarative_item . 60)(declarative_items . 117)(package_declaration . 62)(package_spec . 63)(simple_declarative_item . 64)(typed_string_declaration . 65))
+      ((discrete_choice . 116))
       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))
       nil
+      ((attribute_declaration . 58)(case_statement . 59)(declarative_item . 67)(package_declaration . 62)(package_spec . 63)(simple_declarative_item . 64)(typed_string_declaration . 65))
       nil
       nil
       nil]))