1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Generated by xtreeprs revision 1.1 using --
10 -- sinfo.ads revision 1.2 --
11 -- treeprs.adt revision 1.1 --
13 -- Copyright (C) 1992-1997 Free Software Foundation, Inc. --
15 -- GNAT is free software; you can redistribute it and/or modify it under --
16 -- terms of the GNU General Public License as published by the Free Soft- --
17 -- ware Foundation; either version 2, or (at your option) any later ver- --
18 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
19 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
20 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
21 -- for more details. You should have received a copy of the GNU General --
22 -- Public License distributed with GNAT; see file COPYING. If not, write --
23 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
24 -- MA 02111-1307, USA. --
26 -- GNAT was originally developed by the GNAT team at New York University. --
27 -- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). --
29 ------------------------------------------------------------------------------
32 -- This package contains the declaration of the string used by the Tree_Print
33 -- package. It must be updated whenever the arrangements of the field names
34 -- in package Sinfo is changed. The utility program XTREEPRS is used to
35 -- do this update correctly using the template treeprs.adt as input.
37 with Sinfo
; use Sinfo
;
41 --------------------------------
42 -- String Data for Node Print --
43 --------------------------------
45 -- String data for print out. The Pchars array is a long string with the
46 -- the entry for each node type consisting of a single blank, followed by
47 -- a series of entries, one for each Op or Flag field used for the node.
48 -- Each entry has a single character which identifies the field, followed
49 -- by the synonym name. The starting location for a given node type is
50 -- found from the corresponding entry in the Pchars_Pos_Array.
52 -- The following characters identify the field. These are characters
53 -- which could never occur in a field name, so they also mark the
54 -- end of the previous name.
56 subtype Fchar
is Character range '#' .. '9';
58 F_Field1
: constant Fchar
:= '#'; -- Character'Val (16#23#)
59 F_Field2
: constant Fchar
:= '$'; -- Character'Val (16#24#)
60 F_Field3
: constant Fchar
:= '%'; -- Character'Val (16#25#)
61 F_Field4
: constant Fchar
:= '&'; -- Character'Val (16#26#)
62 F_Field5
: constant Fchar
:= '''; -- Character'Val (16#27#)
63 F_Flag1
: constant Fchar
:= '('; -- Character'Val (16#28#)
64 F_Flag2
: constant Fchar
:= ')'; -- Character'Val (16#29#)
65 F_Flag3
: constant Fchar
:= '*'; -- Character'Val (16#2A#)
66 F_Flag4
: constant Fchar
:= '+'; -- Character'Val (16#2B#)
67 F_Flag5
: constant Fchar
:= ','; -- Character'Val (16#2C#)
68 F_Flag6
: constant Fchar
:= '-'; -- Character'Val (16#2D#)
69 F_Flag7
: constant Fchar
:= '.'; -- Character'Val (16#2E#)
70 F_Flag8
: constant Fchar
:= '/'; -- Character'Val (16#2F#)
71 F_Flag9
: constant Fchar
:= '0'; -- Character'Val (16#30#)
72 F_Flag10
: constant Fchar
:= '1'; -- Character'Val (16#31#)
73 F_Flag11
: constant Fchar
:= '2'; -- Character'Val (16#32#)
74 F_Flag12
: constant Fchar
:= '3'; -- Character'Val (16#33#)
75 F_Flag13
: constant Fchar
:= '4'; -- Character'Val (16#34#)
76 F_Flag14
: constant Fchar
:= '5'; -- Character'Val (16#35#)
77 F_Flag15
: constant Fchar
:= '6'; -- Character'Val (16#36#)
78 F_Flag16
: constant Fchar
:= '7'; -- Character'Val (16#37#)
79 F_Flag17
: constant Fchar
:= '8'; -- Character'Val (16#38#)
80 F_Flag18
: constant Fchar
:= '9'; -- Character'Val (16#39#)
82 -- Note this table does not include entity field and flags whose access
83 -- functions are in Einfo (these are handled by the Print_Entity_Info
84 -- procedure in Treepr, which uses the routines in Einfo to get the
85 -- proper symbolic information). In addition, the following fields are
86 -- handled by Treepr, and do not appear in the Pchars array:
94 -- Is_Controlling_Actual
96 -- Is_Static_Expression
102 -- Raises_Constraint_Error
105 Pchars
: constant String :=
109 "#Identifier%Expression" &
111 "#Component_Name$Position%First_Bit&Last_Bit" &
112 -- Enumeration_Representation_Clause
113 "#Identifier%Array_Aggregate&Next_Rep_Item" &
115 "%Expression&Pragmas_Before" &
116 -- Record_Representation_Clause
117 "#Identifier$Mod_Clause%Component_Clauses&Next_Rep_Item" &
118 -- Attribute_Definition_Clause
119 "$Name%Expression&Next_Rep_Item+From_At_Mod" &
123 "$Pragma_Argument_Associations%Debug_Statement&Next_Rep_Item" &
124 -- Pragma_Argument_Association
128 -- Defining_Character_Literal
129 "$Next_Entity%Scope" &
130 -- Defining_Identifier
131 "$Next_Entity%Scope" &
132 -- Defining_Operator_Symbol
133 "$Next_Entity%Scope" &
135 "%Prefix$Selector_Name&Entity4Redundant_Use2Has_Private_View" &
137 "&Entity$Original_Discriminant4Redundant_Use2Has_Private_View" &
139 "%Strval&Entity2Has_Private_View" &
141 "$Char_Literal_Value&Entity2Has_Private_View" &
145 "4Is_Component_Left_Opnd5Is_Component_Right_Opnd" &
147 "5Treat_Fixed_As_Integer4Do_Division_Check9Rounded_Result" &
149 "4Is_Power_Of_2_For_Shift" &
151 "5Treat_Fixed_As_Integer4Do_Division_Check" &
153 "5Treat_Fixed_As_Integer9Rounded_Result" &
155 "5Treat_Fixed_As_Integer4Do_Division_Check" &
184 -- Op_Shift_Right_Arithmetic
194 -- Attribute_Reference
195 "%Prefix$Attribute_Name#Expressions&Entity2Do_Access_Check8Do_Overflow" &
196 "_Check4Redundant_Use+OK_For_Stream" &
199 -- Conditional_Expression
200 "#Expressions$Then_Actions%Else_Actions" &
201 -- Explicit_Dereference
202 "%Prefix2Do_Access_Check" &
204 "$Name%Parameter_Associations&First_Named_Actual#Controlling_Argument4" &
205 "Do_Tag_Check8Parameter_List_Truncated9ABE_Is_Certain" &
209 "%Prefix#Expressions2Do_Access_Check" &
211 "%Intval4Print_In_Hex" &
218 -- Procedure_Call_Statement
219 "$Name%Parameter_Associations&First_Named_Actual#Controlling_Argument4" &
220 "Do_Tag_Check8Parameter_List_Truncated9ABE_Is_Certain" &
221 -- Qualified_Expression
222 "&Subtype_Mark%Expression" &
223 -- Raise_Constraint_Error
225 -- Raise_Program_Error
227 -- Raise_Storage_Error
230 "#Expressions$Component_Associations8Null_Record_Present%Aggregate_Bou" &
231 "nds+Static_Processing_OK9Compile_Time_Known_Aggregate2Expansion_De" &
234 "%Expression#Storage_Pool&Procedure_To_Call4No_Initialization8Do_Stora" &
236 -- Extension_Aggregate
237 "%Ancestor_Part#Expressions$Component_Associations8Null_Record_Present" &
238 "2Expansion_Delayed" &
240 "#Low_Bound$High_Bound2Includes_Infinities" &
242 "%Realval&Corresponding_Integer_Value2Is_Machine_Number" &
245 -- Selected_Component
246 "%Prefix$Selector_Name2Do_Access_Check4Do_Discriminant_Check" &
248 "%Prefix&Discrete_Range2Do_Access_Check" &
250 "%Strval2Has_Wide_Character" &
254 "&Subtype_Mark%Expression8Do_Overflow_Check4Do_Tag_Check+Do_Length_Che" &
255 "ck2Float_Truncate9Rounded_Result5Conversion_OK" &
256 -- Unchecked_Expression
258 -- Unchecked_Type_Conversion
259 "&Subtype_Mark%Expression2Kill_Range_Check" &
260 -- Subtype_Indication
261 "&Subtype_Mark%Constraint/Must_Not_Freeze" &
262 -- Component_Declaration
263 "#Defining_Identifier+Aliased_Present'Subtype_Indication%Expression,Mo" &
266 "#Defining_Identifier&Discrete_Subtype_Definition%Parameter_Specificat" &
268 -- Formal_Object_Declaration
269 "#Defining_Identifier6In_Present8Out_Present&Subtype_Mark%Expression,M" &
271 -- Formal_Type_Declaration
272 "#Defining_Identifier%Formal_Type_Definition&Discriminant_Specificatio" &
273 "ns4Unknown_Discriminants_Present" &
274 -- Full_Type_Declaration
275 "#Defining_Identifier&Discriminant_Specifications%Type_Definition2Disc" &
276 "r_Check_Funcs_Built" &
277 -- Incomplete_Type_Declaration
278 "#Defining_Identifier&Discriminant_Specifications4Unknown_Discriminant" &
280 -- Loop_Parameter_Specification
281 "#Defining_Identifier6Reverse_Present&Discrete_Subtype_Definition" &
282 -- Object_Declaration
283 "#Defining_Identifier+Aliased_Present8Constant_Present&Object_Definiti" &
284 "on%Expression$Handler_List_Entry'Corresponding_Generic_Association" &
285 ",More_Ids-Prev_Ids4No_Initialization6Assignment_OK2Exception_Junk5" &
286 "Delay_Finalize_Attach7Is_Subprogram_Descriptor" &
287 -- Protected_Type_Declaration
288 "#Defining_Identifier&Discriminant_Specifications%Protected_Definition" &
289 "'Corresponding_Body" &
290 -- Private_Extension_Declaration
291 "#Defining_Identifier&Discriminant_Specifications4Unknown_Discriminant" &
292 "s_Present+Abstract_Present'Subtype_Indication" &
293 -- Private_Type_Declaration
294 "#Defining_Identifier&Discriminant_Specifications4Unknown_Discriminant" &
295 "s_Present+Abstract_Present6Tagged_Present8Limited_Present" &
296 -- Subtype_Declaration
297 "#Defining_Identifier'Subtype_Indication&Generic_Parent_Type2Exception" &
299 -- Function_Specification
300 "#Defining_Unit_Name$Elaboration_Boolean%Parameter_Specifications&Subt" &
301 "ype_Mark'Generic_Parent" &
302 -- Procedure_Specification
303 "#Defining_Unit_Name$Elaboration_Boolean%Parameter_Specifications'Gene" &
305 -- Entry_Index_Specification
306 "#Defining_Identifier&Discrete_Subtype_Definition" &
308 "&Entity$Access_Types_To_Process%TSS_Elist#Actions'First_Subtype_Link" &
309 -- Access_Function_Definition
310 "6Protected_Present%Parameter_Specifications&Subtype_Mark" &
311 -- Access_Procedure_Definition
312 "6Protected_Present%Parameter_Specifications" &
313 -- Task_Type_Declaration
314 "#Defining_Identifier$Task_Body_Procedure&Discriminant_Specifications%" &
315 "Task_Definition'Corresponding_Body" &
317 "#Defining_Identifier&Library_Unit'Corresponding_Body" &
318 -- Protected_Body_Stub
319 "#Defining_Identifier&Library_Unit'Corresponding_Body" &
320 -- Subprogram_Body_Stub
321 "#Specification&Library_Unit'Corresponding_Body" &
323 "#Defining_Identifier&Library_Unit'Corresponding_Body" &
324 -- Function_Instantiation
325 "#Defining_Unit_Name$Name%Generic_Associations&Parent_Spec'Instance_Sp" &
326 "ec9ABE_Is_Certain" &
327 -- Package_Instantiation
328 "#Defining_Unit_Name$Name%Generic_Associations&Parent_Spec'Instance_Sp" &
329 "ec9ABE_Is_Certain" &
330 -- Procedure_Instantiation
331 "#Defining_Unit_Name$Name&Parent_Spec%Generic_Associations'Instance_Sp" &
332 "ec9ABE_Is_Certain" &
334 "#Defining_Unit_Name$Declarations&Handled_Statement_Sequence'Correspon" &
335 "ding_Spec4Was_Originally_Stub" &
337 "#Specification$Declarations&Handled_Statement_Sequence%Activation_Cha" &
338 "in_Entity'Corresponding_Spec+Acts_As_Spec6Bad_Is_Detected8Do_Stora" &
339 "ge_Check-Has_Priority_Pragma.Is_Protected_Subprogram_Body,Is_Task_" &
340 "Master4Was_Originally_Stub" &
342 "#Defining_Identifier$Declarations&End_Label'Corresponding_Spec4Was_Or" &
345 "#Defining_Identifier$Declarations&Handled_Statement_Sequence,Is_Task_" &
346 "Master%Activation_Chain_Entity'Corresponding_Spec4Was_Originally_S" &
348 -- Implicit_Label_Declaration
349 "#Defining_Identifier$Label_Construct" &
350 -- Package_Declaration
351 "#Specification'Corresponding_Body&Parent_Spec%Activation_Chain_Entity" &
352 -- Single_Task_Declaration
353 "#Defining_Identifier%Task_Definition" &
354 -- Subprogram_Declaration
355 "#Specification%Body_To_Inline'Corresponding_Body&Parent_Spec" &
356 -- Use_Package_Clause
357 "$Names%Next_Use_Clause&Hidden_By_Use_Clause" &
358 -- Generic_Package_Declaration
359 "#Specification'Corresponding_Body$Generic_Formal_Declarations&Parent_" &
360 "Spec%Activation_Chain_Entity" &
361 -- Generic_Subprogram_Declaration
362 "#Specification'Corresponding_Body$Generic_Formal_Declarations&Parent_" &
364 -- Constrained_Array_Definition
365 "$Discrete_Subtype_Definitions+Aliased_Present'Subtype_Indication" &
366 -- Unconstrained_Array_Definition
367 "$Subtype_Marks+Aliased_Present'Subtype_Indication" &
368 -- Exception_Renaming_Declaration
369 "#Defining_Identifier$Name" &
370 -- Object_Renaming_Declaration
371 "#Defining_Identifier&Subtype_Mark$Name'Corresponding_Generic_Associat" &
373 -- Package_Renaming_Declaration
374 "#Defining_Unit_Name$Name&Parent_Spec" &
375 -- Subprogram_Renaming_Declaration
376 "#Specification$Name&Parent_Spec'Corresponding_Spec" &
377 -- Generic_Function_Renaming_Declaration
378 "#Defining_Unit_Name$Name&Parent_Spec" &
379 -- Generic_Package_Renaming_Declaration
380 "#Defining_Unit_Name$Name&Parent_Spec" &
381 -- Generic_Procedure_Renaming_Declaration
382 "#Defining_Unit_Name$Name&Parent_Spec" &
386 "#Entry_Direct_Name'Entry_Index%Parameter_Specifications&Handled_State" &
387 "ment_Sequence$Declarations" &
388 -- Assignment_Statement
389 "$Name%Expression4Do_Tag_Check+Do_Length_Check,Forwards_OK-Backwards_O" &
390 "K.No_Ctrl_Actions" &
391 -- Asynchronous_Select
392 "#Triggering_Alternative$Abortable_Part" &
394 "#Identifier$Declarations&Handled_Statement_Sequence,Is_Task_Master%Ac" &
395 "tivation_Chain_Entity6Has_Created_Identifier-Is_Task_Allocation_Bl" &
396 "ock.Is_Asynchronous_Call_Block" &
398 "%Expression&Alternatives'End_Span" &
401 -- Conditional_Entry_Call
402 "#Entry_Call_Alternative&Else_Statements" &
403 -- Delay_Relative_Statement
405 -- Delay_Until_Statement
407 -- Entry_Call_Statement
408 "$Name%Parameter_Associations&First_Named_Actual" &
410 "%Expression#Storage_Pool&Procedure_To_Call" &
412 "$Name2Exception_Junk" &
414 "#Identifier$Iteration_Scheme%Statements&End_Label6Has_Created_Identif" &
421 "$Name6Abort_Present" &
423 "%Expression#Storage_Pool&Procedure_To_Call4Do_Tag_Check$Return_Type,B" &
426 "#Select_Alternatives&Else_Statements" &
428 "#Entry_Call_Alternative&Delay_Alternative" &
432 "#Condition$Then_Statements%Elsif_Parts&Else_Statements'End_Span" &
433 -- Accept_Alternative
434 "$Accept_Statement#Condition%Statements&Pragmas_Before'Accept_Handler_" &
437 "$Delay_Statement#Condition%Statements&Pragmas_Before" &
439 "#Condition$Then_Statements%Condition_Actions" &
440 -- Entry_Body_Formal_Part
441 "&Entry_Index_Specification%Parameter_Specifications#Condition" &
443 "#Condition%Condition_Actions&Loop_Parameter_Specification" &
444 -- Terminate_Alternative
445 "#Condition&Pragmas_Before'Pragmas_After" &
448 -- Abstract_Subprogram_Declaration
452 -- Access_To_Object_Definition
453 "6All_Present'Subtype_Indication8Constant_Present" &
454 -- Case_Statement_Alternative
455 "&Discrete_Choices%Statements" &
457 "&Library_Unit#Context_Items6Private_Present$Unit'Aux_Decls_Node8Has_N" &
458 "o_Elaboration_Code4Body_Required+Acts_As_Spec%First_Inlined_Subpro" &
460 -- Compilation_Unit_Aux
461 "$Declarations#Actions'Pragmas_After" &
462 -- Component_Association
463 "#Choices$Loop_Actions%Expression" &
465 "%Component_Items&Variant_Part4Null_Present" &
466 -- Derived_Type_Definition
467 "+Abstract_Present'Subtype_Indication%Record_Extension_Part" &
468 -- Decimal_Fixed_Point_Definition
469 "%Delta_Expression$Digits_Expression&Real_Range_Specification" &
470 -- Defining_Program_Unit_Name
471 "$Name#Defining_Identifier" &
473 "%Delta_Expression&Range_Constraint" &
477 "$Digits_Expression&Range_Constraint" &
478 -- Discriminant_Association
479 "#Selector_Names%Expression" &
480 -- Discriminant_Specification
481 "#Defining_Identifier'Discriminant_Type%Expression,More_Ids-Prev_Ids" &
482 -- Enumeration_Type_Definition
485 "#Defining_Identifier'Entry_Body_Formal_Part$Declarations&Handled_Stat" &
486 "ement_Sequence%Activation_Chain_Entity" &
487 -- Entry_Call_Alternative
488 "#Entry_Call_Statement%Statements&Pragmas_Before" &
489 -- Exception_Declaration
490 "#Defining_Identifier%Expression,More_Ids-Prev_Ids" &
492 "$Choice_Parameter&Exception_Choices%Statements,Zero_Cost_Handling" &
493 -- Floating_Point_Definition
494 "$Digits_Expression&Real_Range_Specification" &
495 -- Formal_Decimal_Fixed_Point_Definition
497 -- Formal_Derived_Type_Definition
498 "&Subtype_Mark6Private_Present+Abstract_Present" &
499 -- Formal_Discrete_Type_Definition
501 -- Formal_Floating_Point_Definition
503 -- Formal_Modular_Type_Definition
505 -- Formal_Ordinary_Fixed_Point_Definition
507 -- Formal_Package_Declaration
508 "#Defining_Identifier$Name%Generic_Associations6Box_Present'Instance_S" &
509 "pec9ABE_Is_Certain" &
510 -- Formal_Private_Type_Definition
511 "+Abstract_Present6Tagged_Present8Limited_Present" &
512 -- Formal_Signed_Integer_Type_Definition
514 -- Formal_Subprogram_Declaration
515 "#Specification$Default_Name6Box_Present" &
516 -- Generic_Association
517 "$Selector_Name#Explicit_Generic_Actual_Parameter" &
518 -- Handled_Sequence_Of_Statements
519 "%Statements&End_Label'Exception_Handlers#At_End_Proc$First_Real_State" &
520 "ment,Zero_Cost_Handling" &
521 -- Index_Or_Discriminant_Constraint
526 "#Identifier2Exception_Junk" &
527 -- Modular_Type_Definition
529 -- Number_Declaration
530 "#Defining_Identifier%Expression,More_Ids-Prev_Ids" &
531 -- Ordinary_Fixed_Point_Definition
532 "%Delta_Expression&Real_Range_Specification" &
534 "#Others_Discrete_Choices2All_Others" &
535 -- Package_Specification
536 "#Defining_Unit_Name$Visible_Declarations%Private_Declarations&End_Lab" &
537 "el'Generic_Parent" &
538 -- Parameter_Association
539 "$Selector_Name%Explicit_Actual_Parameter&Next_Named_Actual" &
540 -- Parameter_Specification
541 "#Defining_Identifier6In_Present8Out_Present$Parameter_Type%Expression" &
542 "4Do_Accessibility_Check,More_Ids-Prev_Ids'Default_Expression" &
543 -- Protected_Definition
544 "$Visible_Declarations%Private_Declarations&End_Label-Has_Priority_Pra" &
547 "&Range_Expression" &
548 -- Real_Range_Specification
549 "#Low_Bound$High_Bound" &
551 "&End_Label+Abstract_Present6Tagged_Present8Limited_Present#Component_" &
552 "List4Null_Present" &
553 -- Signed_Integer_Type_Definition
554 "#Low_Bound$High_Bound" &
555 -- Single_Protected_Declaration
556 "#Defining_Identifier%Protected_Definition" &
558 "$Name#Proper_Body%Corresponding_Stub" &
560 "$Visible_Declarations%Private_Declarations&End_Label-Has_Priority_Pra" &
561 "gma,Has_Storage_Size_Pragma.Has_Task_Info_Pragma/Has_Task_Name_Pra" &
563 -- Triggering_Alternative
564 "#Triggering_Statement%Statements&Pragmas_Before" &
566 "$Subtype_Marks%Next_Use_Clause&Hidden_By_Use_Clause" &
567 -- Validate_Unchecked_Conversion
568 "#Source_Type$Target_Type" &
570 "&Discrete_Choices#Component_List$Enclosing_Variant%Present_Expr'Dchec" &
575 "$Name&Library_Unit'Corresponding_Spec,First_Name-Last_Name4Context_In" &
576 "stalled+Elaborate_Present6Elaborate_All_Present8Implicit_With.Unre" &
577 "ferenced_In_Spec/No_Entities_Ref_In_Spec" &
579 "$Name6Tagged_Present" &
583 type Pchar_Pos_Array
is array (Node_Kind
) of Positive;
584 Pchar_Pos
: constant Pchar_Pos_Array
:= Pchar_Pos_Array
'(
585 N_Unused_At_Start => 1,
587 N_Component_Clause => 23,
588 N_Enumeration_Representation_Clause => 66,
590 N_Record_Representation_Clause => 133,
591 N_Attribute_Definition_Clause => 187,
594 N_Pragma_Argument_Association => 288,
596 N_Defining_Character_Literal => 299,
597 N_Defining_Identifier => 317,
598 N_Defining_Operator_Symbol => 335,
599 N_Expanded_Name => 353,
601 N_Operator_Symbol => 472,
602 N_Character_Literal => 503,
608 N_Op_Multiply => 714,
610 N_Op_Subtract => 793,
620 N_Op_Rotate_Left => 841,
621 N_Op_Rotate_Right => 856,
622 N_Op_Shift_Left => 871,
623 N_Op_Shift_Right => 886,
624 N_Op_Shift_Right_Arithmetic => 901,
629 N_Attribute_Reference => 916,
631 N_Conditional_Expression => 1027,
632 N_Explicit_Dereference => 1065,
633 N_Function_Call => 1088,
635 N_Indexed_Component => 1209,
636 N_Integer_Literal => 1244,
640 N_Procedure_Call_Statement => 1272,
641 N_Qualified_Expression => 1393,
642 N_Raise_Constraint_Error => 1417,
643 N_Raise_Program_Error => 1427,
644 N_Raise_Storage_Error => 1437,
647 N_Extension_Aggregate => 1664,
649 N_Real_Literal => 1792,
651 N_Selected_Component => 1853,
653 N_String_Literal => 1950,
654 N_Subprogram_Info => 1976,
655 N_Type_Conversion => 1987,
656 N_Unchecked_Expression => 2102,
657 N_Unchecked_Type_Conversion => 2113,
658 N_Subtype_Indication => 2154,
659 N_Component_Declaration => 2194,
660 N_Entry_Declaration => 2278,
661 N_Formal_Object_Declaration => 2351,
662 N_Formal_Type_Declaration => 2436,
663 N_Full_Type_Declaration => 2537,
664 N_Incomplete_Type_Declaration => 2625,
665 N_Loop_Parameter_Specification => 2703,
666 N_Object_Declaration => 2767,
667 N_Protected_Type_Declaration => 3014,
668 N_Private_Extension_Declaration => 3102,
669 N_Private_Type_Declaration => 3216,
670 N_Subtype_Declaration => 3342,
671 N_Function_Specification => 3416,
672 N_Procedure_Specification => 3508,
673 N_Entry_Index_Specification => 3587,
674 N_Freeze_Entity => 3635,
675 N_Access_Function_Definition => 3703,
676 N_Access_Procedure_Definition => 3759,
677 N_Task_Type_Declaration => 3802,
678 N_Package_Body_Stub => 3905,
679 N_Protected_Body_Stub => 3957,
680 N_Subprogram_Body_Stub => 4009,
681 N_Task_Body_Stub => 4055,
682 N_Function_Instantiation => 4107,
683 N_Package_Instantiation => 4193,
684 N_Procedure_Instantiation => 4279,
685 N_Package_Body => 4365,
686 N_Subprogram_Body => 4463,
687 N_Protected_Body => 4690,
689 N_Implicit_Label_Declaration => 4910,
690 N_Package_Declaration => 4946,
691 N_Single_Task_Declaration => 5015,
692 N_Subprogram_Declaration => 5051,
693 N_Use_Package_Clause => 5111,
694 N_Generic_Package_Declaration => 5154,
695 N_Generic_Subprogram_Declaration => 5251,
696 N_Constrained_Array_Definition => 5324,
697 N_Unconstrained_Array_Definition => 5388,
698 N_Exception_Renaming_Declaration => 5437,
699 N_Object_Renaming_Declaration => 5462,
700 N_Package_Renaming_Declaration => 5534,
701 N_Subprogram_Renaming_Declaration => 5570,
702 N_Generic_Function_Renaming_Declaration => 5620,
703 N_Generic_Package_Renaming_Declaration => 5656,
704 N_Generic_Procedure_Renaming_Declaration => 5692,
705 N_Abort_Statement => 5728,
706 N_Accept_Statement => 5734,
707 N_Assignment_Statement => 5829,
708 N_Asynchronous_Select => 5915,
709 N_Block_Statement => 5953,
710 N_Case_Statement => 6118,
711 N_Code_Statement => 6151,
712 N_Conditional_Entry_Call => 6162,
713 N_Delay_Relative_Statement => 6201,
714 N_Delay_Until_Statement => 6212,
715 N_Entry_Call_Statement => 6223,
716 N_Free_Statement => 6270,
717 N_Goto_Statement => 6312,
718 N_Loop_Statement => 6332,
719 N_Null_Statement => 6404,
720 N_Raise_Statement => 6404,
721 N_Requeue_Statement => 6409,
722 N_Return_Statement => 6428,
723 N_Selective_Accept => 6502,
724 N_Timed_Entry_Call => 6538,
725 N_Exit_Statement => 6579,
726 N_If_Statement => 6594,
727 N_Accept_Alternative => 6657,
728 N_Delay_Alternative => 6733,
729 N_Elsif_Part => 6785,
730 N_Entry_Body_Formal_Part => 6829,
731 N_Iteration_Scheme => 6890,
732 N_Terminate_Alternative => 6947,
733 N_Abortable_Part => 6986,
734 N_Abstract_Subprogram_Declaration => 6997,
735 N_Access_Definition => 7011,
736 N_Access_To_Object_Definition => 7024,
737 N_Case_Statement_Alternative => 7072,
738 N_Compilation_Unit => 7100,
739 N_Compilation_Unit_Aux => 7239,
740 N_Component_Association => 7274,
741 N_Component_List => 7306,
742 N_Derived_Type_Definition => 7348,
743 N_Decimal_Fixed_Point_Definition => 7406,
744 N_Defining_Program_Unit_Name => 7466,
745 N_Delta_Constraint => 7491,
746 N_Designator => 7525,
747 N_Digits_Constraint => 7541,
748 N_Discriminant_Association => 7576,
749 N_Discriminant_Specification => 7602,
750 N_Enumeration_Type_Definition => 7669,
751 N_Entry_Body => 7678,
752 N_Entry_Call_Alternative => 7785,
753 N_Exception_Declaration => 7832,
754 N_Exception_Handler => 7881,
755 N_Floating_Point_Definition => 7946,
756 N_Formal_Decimal_Fixed_Point_Definition => 7989,
757 N_Formal_Derived_Type_Definition => 7989,
758 N_Formal_Discrete_Type_Definition => 8035,
759 N_Formal_Floating_Point_Definition => 8035,
760 N_Formal_Modular_Type_Definition => 8035,
761 N_Formal_Ordinary_Fixed_Point_Definition => 8035,
762 N_Formal_Package_Declaration => 8035,
763 N_Formal_Private_Type_Definition => 8122,
764 N_Formal_Signed_Integer_Type_Definition => 8170,
765 N_Formal_Subprogram_Declaration => 8170,
766 N_Generic_Association => 8209,
767 N_Handled_Sequence_Of_Statements => 8257,
768 N_Index_Or_Discriminant_Constraint => 8349,
769 N_Itype_Reference => 8361,
771 N_Modular_Type_Definition => 8393,
772 N_Number_Declaration => 8404,
773 N_Ordinary_Fixed_Point_Definition => 8453,
774 N_Others_Choice => 8495,
775 N_Package_Specification => 8530,
776 N_Parameter_Association => 8616,
777 N_Parameter_Specification => 8674,
778 N_Protected_Definition => 8803,
779 N_Range_Constraint => 8875,
780 N_Real_Range_Specification => 8892,
781 N_Record_Definition => 8913,
782 N_Signed_Integer_Type_Definition => 8999,
783 N_Single_Protected_Declaration => 9020,
785 N_Task_Definition => 9097,
786 N_Triggering_Alternative => 9235,
787 N_Use_Type_Clause => 9282,
788 N_Validate_Unchecked_Conversion => 9333,
790 N_Variant_Part => 9436,
791 N_With_Clause => 9450,
792 N_With_Type_Clause => 9625,
793 N_Unused_At_End => 9645);