aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sinfo.h
blob: 763539fa5ac5c3d4e7ad447ed2e31bf2aca01d1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
/*--------------------------------------------------------------------------*/
/*                                                                          */
/*                         GNAT COMPILER COMPONENTS                         */
/*                                                                          */
/*                                S I N F O                                 */
/*                                                                          */
/*                              C Header File                               */
/*                                                                          */
/*                 Generated by xsinfo revision 1.1 using                  */
/*                         sinfo.ads revision 1.6                         */
/*                                                                          */
/*          Copyright (C) 1992-2001, Free Software Foundation, Inc.         */
/*                                                                          */
/* GNAT is free software;  you can  redistribute it  and/or modify it under */
/* terms of the  GNU General Public License as published  by the Free Soft- */
/* ware  Foundation;  either version 2,  or (at your option) any later ver- */
/* sion.  GNAT is distributed in the hope that it will be useful, but WITH- */
/* OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY */
/* or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License */
/* for  more details.  You should have  received  a copy of the GNU General */
/* Public License  distributed with GNAT;  see file COPYING.  If not, write */
/* to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, */
/* MA 02111-1307, USA.                                                      */
/*                                                                          */
/* As a special exception,  if other files  instantiate  generics from this */
/* unit, or you link  this unit with other files  to produce an executable, */
/* this  unit  does not  by itself cause  the resulting  executable  to  be */
/* covered  by the  GNU  General  Public  License.  This exception does not */
/* however invalidate  any other reasons why  the executable file  might be */
/* covered by the  GNU Public License.                                      */
/*                                                                          */
/* GNAT was originally developed  by the GNAT team at  New York University. */
/* Extensive contributions were provided by Ada Core Technologies Inc.      */
/*                                                                          */
/*--------------------------------------------------------------------------*/

      #define N_Unused_At_Start 0
      #define N_At_Clause 1
      #define N_Component_Clause 2
      #define N_Enumeration_Representation_Clause 3
      #define N_Mod_Clause 4
      #define N_Record_Representation_Clause 5
      #define N_Attribute_Definition_Clause 6
      #define N_Empty 7
      #define N_Pragma 8
      #define N_Pragma_Argument_Association 9
      #define N_Error 10
      #define N_Defining_Character_Literal 11
      #define N_Defining_Identifier 12
      #define N_Defining_Operator_Symbol 13
      #define N_Expanded_Name 14
      #define N_Identifier 15
      #define N_Operator_Symbol 16
      #define N_Character_Literal 17
      #define N_Op_Add 18
      #define N_Op_Concat 19
      #define N_Op_Divide 20
      #define N_Op_Expon 21
      #define N_Op_Mod 22
      #define N_Op_Multiply 23
      #define N_Op_Rem 24
      #define N_Op_Subtract 25
      #define N_Op_And 26
      #define N_Op_Eq 27
      #define N_Op_Ge 28
      #define N_Op_Gt 29
      #define N_Op_Le 30
      #define N_Op_Lt 31
      #define N_Op_Ne 32
      #define N_Op_Or 33
      #define N_Op_Xor 34
      #define N_Op_Rotate_Left 35
      #define N_Op_Rotate_Right 36
      #define N_Op_Shift_Left 37
      #define N_Op_Shift_Right 38
      #define N_Op_Shift_Right_Arithmetic 39
      #define N_Op_Abs 40
      #define N_Op_Minus 41
      #define N_Op_Not 42
      #define N_Op_Plus 43
      #define N_Attribute_Reference 44
      #define N_And_Then 45
      #define N_Conditional_Expression 46
      #define N_Explicit_Dereference 47
      #define N_Function_Call 48
      #define N_In 49
      #define N_Indexed_Component 50
      #define N_Integer_Literal 51
      #define N_Not_In 52
      #define N_Null 53
      #define N_Or_Else 54
      #define N_Procedure_Call_Statement 55
      #define N_Qualified_Expression 56
      #define N_Raise_Constraint_Error 57
      #define N_Raise_Program_Error 58
      #define N_Raise_Storage_Error 59
      #define N_Aggregate 60
      #define N_Allocator 61
      #define N_Extension_Aggregate 62
      #define N_Range 63
      #define N_Real_Literal 64
      #define N_Reference 65
      #define N_Selected_Component 66
      #define N_Slice 67
      #define N_String_Literal 68
      #define N_Subprogram_Info 69
      #define N_Type_Conversion 70
      #define N_Unchecked_Expression 71
      #define N_Unchecked_Type_Conversion 72
      #define N_Subtype_Indication 73
      #define N_Component_Declaration 74
      #define N_Entry_Declaration 75
      #define N_Formal_Object_Declaration 76
      #define N_Formal_Type_Declaration 77
      #define N_Full_Type_Declaration 78
      #define N_Incomplete_Type_Declaration 79
      #define N_Loop_Parameter_Specification 80
      #define N_Object_Declaration 81
      #define N_Protected_Type_Declaration 82
      #define N_Private_Extension_Declaration 83
      #define N_Private_Type_Declaration 84
      #define N_Subtype_Declaration 85
      #define N_Function_Specification 86
      #define N_Procedure_Specification 87
      #define N_Entry_Index_Specification 88
      #define N_Freeze_Entity 89
      #define N_Access_Function_Definition 90
      #define N_Access_Procedure_Definition 91
      #define N_Task_Type_Declaration 92
      #define N_Package_Body_Stub 93
      #define N_Protected_Body_Stub 94
      #define N_Subprogram_Body_Stub 95
      #define N_Task_Body_Stub 96
      #define N_Function_Instantiation 97
      #define N_Package_Instantiation 98
      #define N_Procedure_Instantiation 99
      #define N_Package_Body 100
      #define N_Subprogram_Body 101
      #define N_Protected_Body 102
      #define N_Task_Body 103
      #define N_Implicit_Label_Declaration 104
      #define N_Package_Declaration 105
      #define N_Single_Task_Declaration 106
      #define N_Subprogram_Declaration 107
      #define N_Use_Package_Clause 108
      #define N_Generic_Package_Declaration 109
      #define N_Generic_Subprogram_Declaration 110
      #define N_Constrained_Array_Definition 111
      #define N_Unconstrained_Array_Definition 112
      #define N_Exception_Renaming_Declaration 113
      #define N_Object_Renaming_Declaration 114
      #define N_Package_Renaming_Declaration 115
      #define N_Subprogram_Renaming_Declaration 116
      #define N_Generic_Function_Renaming_Declaration 117
      #define N_Generic_Package_Renaming_Declaration 118
      #define N_Generic_Procedure_Renaming_Declaration 119
      #define N_Abort_Statement 120
      #define N_Accept_Statement 121
      #define N_Assignment_Statement 122
      #define N_Asynchronous_Select 123
      #define N_Block_Statement 124
      #define N_Case_Statement 125
      #define N_Code_Statement 126
      #define N_Conditional_Entry_Call 127
      #define N_Delay_Relative_Statement 128
      #define N_Delay_Until_Statement 129
      #define N_Entry_Call_Statement 130
      #define N_Free_Statement 131
      #define N_Goto_Statement 132
      #define N_Loop_Statement 133
      #define N_Null_Statement 134
      #define N_Raise_Statement 135
      #define N_Requeue_Statement 136
      #define N_Return_Statement 137
      #define N_Selective_Accept 138
      #define N_Timed_Entry_Call 139
      #define N_Exit_Statement 140
      #define N_If_Statement 141
      #define N_Accept_Alternative 142
      #define N_Delay_Alternative 143
      #define N_Elsif_Part 144
      #define N_Entry_Body_Formal_Part 145
      #define N_Iteration_Scheme 146
      #define N_Terminate_Alternative 147
      #define N_Abortable_Part 148
      #define N_Abstract_Subprogram_Declaration 149
      #define N_Access_Definition 150
      #define N_Access_To_Object_Definition 151
      #define N_Case_Statement_Alternative 152
      #define N_Compilation_Unit 153
      #define N_Compilation_Unit_Aux 154
      #define N_Component_Association 155
      #define N_Component_List 156
      #define N_Derived_Type_Definition 157
      #define N_Decimal_Fixed_Point_Definition 158
      #define N_Defining_Program_Unit_Name 159
      #define N_Delta_Constraint 160
      #define N_Designator 161
      #define N_Digits_Constraint 162
      #define N_Discriminant_Association 163
      #define N_Discriminant_Specification 164
      #define N_Enumeration_Type_Definition 165
      #define N_Entry_Body 166
      #define N_Entry_Call_Alternative 167
      #define N_Exception_Declaration 168
      #define N_Exception_Handler 169
      #define N_Floating_Point_Definition 170
      #define N_Formal_Decimal_Fixed_Point_Definition 171
      #define N_Formal_Derived_Type_Definition 172
      #define N_Formal_Discrete_Type_Definition 173
      #define N_Formal_Floating_Point_Definition 174
      #define N_Formal_Modular_Type_Definition 175
      #define N_Formal_Ordinary_Fixed_Point_Definition 176
      #define N_Formal_Package_Declaration 177
      #define N_Formal_Private_Type_Definition 178
      #define N_Formal_Signed_Integer_Type_Definition 179
      #define N_Formal_Subprogram_Declaration 180
      #define N_Generic_Association 181
      #define N_Handled_Sequence_Of_Statements 182
      #define N_Index_Or_Discriminant_Constraint 183
      #define N_Itype_Reference 184
      #define N_Label 185
      #define N_Modular_Type_Definition 186
      #define N_Number_Declaration 187
      #define N_Ordinary_Fixed_Point_Definition 188
      #define N_Others_Choice 189
      #define N_Package_Specification 190
      #define N_Parameter_Association 191
      #define N_Parameter_Specification 192
      #define N_Protected_Definition 193
      #define N_Range_Constraint 194
      #define N_Real_Range_Specification 195
      #define N_Record_Definition 196
      #define N_Signed_Integer_Type_Definition 197
      #define N_Single_Protected_Declaration 198
      #define N_Subunit 199
      #define N_Task_Definition 200
      #define N_Triggering_Alternative 201
      #define N_Use_Type_Clause 202
      #define N_Validate_Unchecked_Conversion 203
      #define N_Variant 204
      #define N_Variant_Part 205
      #define N_With_Clause 206
      #define N_With_Type_Clause 207
      #define N_Unused_At_End 208

      #define Number_Node_Kinds 209
   SUBTYPE (N_Access_To_Subprogram_Definition, Node_Kind, 
      N_Access_Function_Definition,
      N_Access_Procedure_Definition)
   SUBTYPE (N_Array_Type_Definition, Node_Kind, 
      N_Constrained_Array_Definition,
      N_Unconstrained_Array_Definition)
   SUBTYPE (N_Binary_Op, Node_Kind, 
      N_Op_Add,
      N_Op_Shift_Right_Arithmetic)
   SUBTYPE (N_Body_Stub, Node_Kind, 
      N_Package_Body_Stub,
      N_Task_Body_Stub)
   SUBTYPE (N_Declaration, Node_Kind, 
      N_Component_Declaration,
      N_Procedure_Specification)
   SUBTYPE (N_Direct_Name, Node_Kind, 
      N_Identifier,
      N_Character_Literal)
   SUBTYPE (N_Entity, Node_Kind, 
      N_Defining_Character_Literal,
      N_Defining_Operator_Symbol)
   SUBTYPE (N_Generic_Declaration, Node_Kind, 
      N_Generic_Package_Declaration,
      N_Generic_Subprogram_Declaration)
   SUBTYPE (N_Generic_Instantiation, Node_Kind, 
      N_Function_Instantiation,
      N_Procedure_Instantiation)
   SUBTYPE (N_Generic_Renaming_Declaration, Node_Kind, 
      N_Generic_Function_Renaming_Declaration,
      N_Generic_Procedure_Renaming_Declaration)
   SUBTYPE (N_Has_Chars, Node_Kind, 
      N_Attribute_Definition_Clause,
      N_Op_Plus)
   SUBTYPE (N_Has_Entity, Node_Kind, 
      N_Expanded_Name,
      N_Attribute_Reference)
   SUBTYPE (N_Has_Etype, Node_Kind, 
      N_Error,
      N_Subtype_Indication)
   SUBTYPE (N_Later_Decl_Item, Node_Kind, 
      N_Task_Type_Declaration,
      N_Generic_Subprogram_Declaration)
   SUBTYPE (N_Op, Node_Kind, 
      N_Op_Add,
      N_Op_Plus)
   SUBTYPE (N_Op_Boolean, Node_Kind, 
      N_Op_And,
      N_Op_Xor)
   SUBTYPE (N_Op_Compare, Node_Kind, 
      N_Op_Eq,
      N_Op_Ne)
   SUBTYPE (N_Op_Shift, Node_Kind, 
      N_Op_Rotate_Left,
      N_Op_Shift_Right_Arithmetic)
   SUBTYPE (N_Proper_Body, Node_Kind, 
      N_Package_Body,
      N_Task_Body)
   SUBTYPE (N_Raise_xxx_Error, Node_Kind, 
      N_Raise_Constraint_Error,
      N_Raise_Storage_Error)
   SUBTYPE (N_Renaming_Declaration, Node_Kind, 
      N_Exception_Renaming_Declaration,
      N_Generic_Procedure_Renaming_Declaration)
   SUBTYPE (N_Representation_Clause, Node_Kind, 
      N_At_Clause,
      N_Attribute_Definition_Clause)
   SUBTYPE (N_Statement_Other_Than_Procedure_Call, Node_Kind, 
      N_Abort_Statement,
      N_If_Statement)
   SUBTYPE (N_Has_Condition, Node_Kind, 
      N_Exit_Statement,
      N_Terminate_Alternative)
   SUBTYPE (N_Subexpr, Node_Kind, 
      N_Expanded_Name,
      N_Unchecked_Type_Conversion)
   SUBTYPE (N_Subprogram_Specification, Node_Kind, 
      N_Function_Specification,
      N_Procedure_Specification)
   SUBTYPE (N_Unary_Op, Node_Kind, 
      N_Op_Abs,
      N_Op_Plus)
   SUBTYPE (N_Unit_Body, Node_Kind, 
      N_Package_Body,
      N_Subprogram_Body)
   INLINE Boolean   ABE_Is_Certain                 (Node_Id N)
      { return Flag18 (N); }
   INLINE Boolean   Abort_Present                  (Node_Id N)
      { return Flag15 (N); }
   INLINE Node_Id   Abortable_Part                 (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   Abstract_Present               (Node_Id N)
      { return Flag4 (N); }
   INLINE List_Id   Accept_Handler_Records         (Node_Id N)
      { return List5 (N); }
   INLINE Node_Id   Accept_Statement               (Node_Id N)
      { return Node2 (N); }
   INLINE Elist_Id  Access_Types_To_Process        (Node_Id N)
      { return Elist2 (N); }
   INLINE List_Id   Actions                        (Node_Id N)
      { return List1 (N); }
   INLINE Node_Id   Activation_Chain_Entity        (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Acts_As_Spec                   (Node_Id N)
      { return Flag4 (N); }
   INLINE Node_Id   Aggregate_Bounds               (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Aliased_Present                (Node_Id N)
      { return Flag4 (N); }
   INLINE Boolean   All_Others                     (Node_Id N)
      { return Flag11 (N); }
   INLINE Boolean   All_Present                    (Node_Id N)
      { return Flag15 (N); }
   INLINE List_Id   Alternatives                   (Node_Id N)
      { return List4 (N); }
   INLINE Node_Id   Ancestor_Part                  (Node_Id N)
      { return Node3 (N); }
   INLINE Node_Id   Array_Aggregate                (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Assignment_OK                  (Node_Id N)
      { return Flag15 (N); }
   INLINE Node_Id   Associated_Node                (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   At_End_Proc                    (Node_Id N)
      { return Node1 (N); }
   INLINE Name_Id   Attribute_Name                 (Node_Id N)
      { return Name2 (N); }
   INLINE Node_Id   Aux_Decls_Node                 (Node_Id N)
      { return Node5 (N); }
   INLINE Boolean   Backwards_OK                   (Node_Id N)
      { return Flag6 (N); }
   INLINE Boolean   Bad_Is_Detected                (Node_Id N)
      { return Flag15 (N); }
   INLINE Boolean   By_Ref                         (Node_Id N)
      { return Flag5 (N); }
   INLINE Boolean   Body_Required                  (Node_Id N)
      { return Flag13 (N); }
   INLINE Node_Id   Body_To_Inline                 (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Box_Present                    (Node_Id N)
      { return Flag15 (N); }
   INLINE Char_Code Char_Literal_Value             (Node_Id N)
      { return Char_Code2 (N); }
   INLINE Name_Id   Chars                          (Node_Id N)
      { return Name1 (N); }
   INLINE Node_Id   Choice_Parameter               (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Choices                        (Node_Id N)
      { return List1 (N); }
   INLINE Boolean   Compile_Time_Known_Aggregate   (Node_Id N)
      { return Flag18 (N); }
   INLINE List_Id   Component_Associations         (Node_Id N)
      { return List2 (N); }
   INLINE List_Id   Component_Clauses              (Node_Id N)
      { return List3 (N); }
   INLINE List_Id   Component_Items                (Node_Id N)
      { return List3 (N); }
   INLINE Node_Id   Component_List                 (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Component_Name                 (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Condition                      (Node_Id N)
      { return Node1 (N); }
   INLINE List_Id   Condition_Actions              (Node_Id N)
      { return List3 (N); }
   INLINE Boolean   Constant_Present               (Node_Id N)
      { return Flag17 (N); }
   INLINE Node_Id   Constraint                     (Node_Id N)
      { return Node3 (N); }
   INLINE List_Id   Constraints                    (Node_Id N)
      { return List1 (N); }
   INLINE Boolean   Context_Installed              (Node_Id N)
      { return Flag13 (N); }
   INLINE List_Id   Context_Items                  (Node_Id N)
      { return List1 (N); }
   INLINE Node_Id   Controlling_Argument           (Node_Id N)
      { return Node1 (N); }
   INLINE Boolean   Conversion_OK                  (Node_Id N)
      { return Flag14 (N); }
   INLINE Node_Id   Corresponding_Body             (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Corresponding_Generic_Association (Node_Id N)
      { return Node5 (N); }
   INLINE Uint      Corresponding_Integer_Value    (Node_Id N)
      { return Uint4 (N); }
   INLINE Node_Id   Corresponding_Spec             (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Corresponding_Stub             (Node_Id N)
      { return Node3 (N); }
   INLINE Entity_Id Dcheck_Function                (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Debug_Statement                (Node_Id N)
      { return Node3 (N); }
   INLINE List_Id   Declarations                   (Node_Id N)
      { return List2 (N); }
   INLINE Node_Id   Default_Expression             (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Default_Name                   (Node_Id N)
      { return Node2 (N); }
   INLINE Entity_Id Defining_Identifier            (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Defining_Unit_Name             (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Delay_Alternative              (Node_Id N)
      { return Node4 (N); }
   INLINE Boolean   Delay_Finalize_Attach          (Node_Id N)
      { return Flag14 (N); }
   INLINE Node_Id   Delay_Statement                (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Delta_Expression               (Node_Id N)
      { return Node3 (N); }
   INLINE Node_Id   Digits_Expression              (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   Discr_Check_Funcs_Built        (Node_Id N)
      { return Flag11 (N); }
   INLINE List_Id   Discrete_Choices               (Node_Id N)
      { return List4 (N); }
   INLINE Node_Id   Discrete_Range                 (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Discrete_Subtype_Definition    (Node_Id N)
      { return Node4 (N); }
   INLINE List_Id   Discrete_Subtype_Definitions   (Node_Id N)
      { return List2 (N); }
   INLINE List_Id   Discriminant_Specifications    (Node_Id N)
      { return List4 (N); }
   INLINE Node_Id   Discriminant_Type              (Node_Id N)
      { return Node5 (N); }
   INLINE Boolean   Do_Access_Check                (Node_Id N)
      { return Flag11 (N); }
   INLINE Boolean   Do_Accessibility_Check         (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Do_Discriminant_Check          (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Do_Division_Check              (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Do_Length_Check                (Node_Id N)
      { return Flag4 (N); }
   INLINE Boolean   Do_Overflow_Check              (Node_Id N)
      { return Flag17 (N); }
   INLINE Boolean   Do_Range_Check                 (Node_Id N)
      { return Flag9 (N); }
   INLINE Boolean   Do_Storage_Check               (Node_Id N)
      { return Flag17 (N); }
   INLINE Boolean   Do_Tag_Check                   (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Elaborate_All_Present          (Node_Id N)
      { return Flag15 (N); }
   INLINE Boolean   Elaborate_Present              (Node_Id N)
      { return Flag4 (N); }
   INLINE Node_Id   Elaboration_Boolean            (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Else_Actions                   (Node_Id N)
      { return List3 (N); }
   INLINE List_Id   Else_Statements                (Node_Id N)
      { return List4 (N); }
   INLINE List_Id   Elsif_Parts                    (Node_Id N)
      { return List3 (N); }
   INLINE Node_Id   Enclosing_Variant              (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   End_Label                      (Node_Id N)
      { return Node4 (N); }
   INLINE Uint      End_Span                       (Node_Id N)
      { return Uint5 (N); }
   INLINE Node_Id   Entity                         (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Entry_Body_Formal_Part         (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Entry_Call_Alternative         (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Entry_Call_Statement           (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Entry_Direct_Name              (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Entry_Index                    (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Entry_Index_Specification      (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Etype                          (Node_Id N)
      { return Node5 (N); }
   INLINE List_Id   Exception_Choices              (Node_Id N)
      { return List4 (N); }
   INLINE List_Id   Exception_Handlers             (Node_Id N)
      { return List5 (N); }
   INLINE Boolean   Exception_Junk                 (Node_Id N)
      { return Flag11 (N); }
   INLINE Node_Id   Explicit_Actual_Parameter      (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Expansion_Delayed              (Node_Id N)
      { return Flag11 (N); }
   INLINE Node_Id   Explicit_Generic_Actual_Parameter (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Expression                     (Node_Id N)
      { return Node3 (N); }
   INLINE List_Id   Expressions                    (Node_Id N)
      { return List1 (N); }
   INLINE Node_Id   First_Bit                      (Node_Id N)
      { return Node3 (N); }
   INLINE Entity_Id First_Inlined_Subprogram       (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   First_Name                     (Node_Id N)
      { return Flag5 (N); }
   INLINE Node_Id   First_Named_Actual             (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   First_Real_Statement           (Node_Id N)
      { return Node2 (N); }
   INLINE Entity_Id First_Subtype_Link             (Node_Id N)
      { return Node5 (N); }
   INLINE Boolean   Float_Truncate                 (Node_Id N)
      { return Flag11 (N); }
   INLINE Node_Id   Formal_Type_Definition         (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Forwards_OK                    (Node_Id N)
      { return Flag5 (N); }
   INLINE Boolean   From_At_Mod                    (Node_Id N)
      { return Flag4 (N); }
   INLINE List_Id   Generic_Associations           (Node_Id N)
      { return List3 (N); }
   INLINE List_Id   Generic_Formal_Declarations    (Node_Id N)
      { return List2 (N); }
   INLINE Node_Id   Generic_Parent                 (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Generic_Parent_Type            (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Handled_Statement_Sequence     (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Handler_List_Entry             (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   Has_Created_Identifier         (Node_Id N)
      { return Flag15 (N); }
   INLINE Boolean   Has_Dynamic_Length_Check       (Node_Id N)
      { return Flag10 (N); }
   INLINE Boolean   Has_Dynamic_Range_Check        (Node_Id N)
      { return Flag12 (N); }
   INLINE Boolean   Has_No_Elaboration_Code        (Node_Id N)
      { return Flag17 (N); }
   INLINE Boolean   Has_Priority_Pragma            (Node_Id N)
      { return Flag6 (N); }
   INLINE Boolean   Has_Private_View               (Node_Id N)
      { return Flag11 (N); }
   INLINE Boolean   Has_Storage_Size_Pragma        (Node_Id N)
      { return Flag5 (N); }
   INLINE Boolean   Has_Task_Info_Pragma           (Node_Id N)
      { return Flag7 (N); }
   INLINE Boolean   Has_Task_Name_Pragma           (Node_Id N)
      { return Flag8 (N); }
   INLINE Boolean   Has_Wide_Character             (Node_Id N)
      { return Flag11 (N); }
   INLINE Elist_Id  Hidden_By_Use_Clause           (Node_Id N)
      { return Elist4 (N); }
   INLINE Node_Id   High_Bound                     (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Identifier                     (Node_Id N)
      { return Node1 (N); }
   INLINE Boolean   Implicit_With                  (Node_Id N)
      { return Flag17 (N); }
   INLINE Boolean   In_Present                     (Node_Id N)
      { return Flag15 (N); }
   INLINE Boolean   Includes_Infinities            (Node_Id N)
      { return Flag11 (N); }
   INLINE Node_Id   Instance_Spec                  (Node_Id N)
      { return Node5 (N); }
   INLINE Uint      Intval                         (Node_Id N)
      { return Uint3 (N); }
   INLINE Boolean   Is_Asynchronous_Call_Block     (Node_Id N)
      { return Flag7 (N); }
   INLINE Boolean   Is_Component_Left_Opnd         (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Is_Component_Right_Opnd        (Node_Id N)
      { return Flag14 (N); }
   INLINE Boolean   Is_Controlling_Actual          (Node_Id N)
      { return Flag16 (N); }
   INLINE Boolean   Is_Machine_Number              (Node_Id N)
      { return Flag11 (N); }
   INLINE Boolean   Is_Overloaded                  (Node_Id N)
      { return Flag5 (N); }
   INLINE Boolean   Is_Power_Of_2_For_Shift        (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Is_Protected_Subprogram_Body   (Node_Id N)
      { return Flag7 (N); }
   INLINE Boolean   Is_Static_Expression           (Node_Id N)
      { return Flag6 (N); }
   INLINE Boolean   Is_Subprogram_Descriptor       (Node_Id N)
      { return Flag16 (N); }
   INLINE Boolean   Is_Task_Allocation_Block       (Node_Id N)
      { return Flag6 (N); }
   INLINE Boolean   Is_Task_Master                 (Node_Id N)
      { return Flag5 (N); }
   INLINE Node_Id   Iteration_Scheme               (Node_Id N)
      { return Node2 (N); }
   INLINE Entity_Id Itype                          (Node_Id N)
      { return Node1 (N); }
   INLINE Boolean   Kill_Range_Check               (Node_Id N)
      { return Flag11 (N); }
   INLINE Node_Id   Label_Construct                (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Left_Opnd                      (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Last_Bit                       (Node_Id N)
      { return Node4 (N); }
   INLINE Boolean   Last_Name                      (Node_Id N)
      { return Flag6 (N); }
   INLINE Node_Id   Library_Unit                   (Node_Id N)
      { return Node4 (N); }
   INLINE Boolean   Limited_Present                (Node_Id N)
      { return Flag17 (N); }
   INLINE List_Id   Literals                       (Node_Id N)
      { return List1 (N); }
   INLINE List_Id   Loop_Actions                   (Node_Id N)
      { return List2 (N); }
   INLINE Node_Id   Loop_Parameter_Specification   (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Low_Bound                      (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Mod_Clause                     (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   More_Ids                       (Node_Id N)
      { return Flag5 (N); }
   INLINE Boolean   Must_Not_Freeze                (Node_Id N)
      { return Flag8 (N); }
   INLINE Node_Id   Name                           (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Names                          (Node_Id N)
      { return List2 (N); }
   INLINE Node_Id   Next_Entity                    (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Next_Named_Actual              (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Next_Rep_Item                  (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Next_Use_Clause                (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   No_Ctrl_Actions                (Node_Id N)
      { return Flag7 (N); }
   INLINE Boolean   No_Entities_Ref_In_Spec        (Node_Id N)
      { return Flag8 (N); }
   INLINE Boolean   No_Initialization              (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Null_Present                   (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Null_Record_Present            (Node_Id N)
      { return Flag17 (N); }
   INLINE Node_Id   Object_Definition              (Node_Id N)
      { return Node4 (N); }
   INLINE Boolean   OK_For_Stream                  (Node_Id N)
      { return Flag4 (N); }
   INLINE Node_Id   Original_Discriminant          (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Others_Discrete_Choices        (Node_Id N)
      { return List1 (N); }
   INLINE Boolean   Out_Present                    (Node_Id N)
      { return Flag17 (N); }
   INLINE List_Id   Parameter_Associations         (Node_Id N)
      { return List3 (N); }
   INLINE Boolean   Parameter_List_Truncated       (Node_Id N)
      { return Flag17 (N); }
   INLINE List_Id   Parameter_Specifications       (Node_Id N)
      { return List3 (N); }
   INLINE Node_Id   Parameter_Type                 (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Parent_Spec                    (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Position                       (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Pragma_Argument_Associations   (Node_Id N)
      { return List2 (N); }
   INLINE List_Id   Pragmas_After                  (Node_Id N)
      { return List5 (N); }
   INLINE List_Id   Pragmas_Before                 (Node_Id N)
      { return List4 (N); }
   INLINE Node_Id   Prefix                         (Node_Id N)
      { return Node3 (N); }
   INLINE Uint      Present_Expr                   (Node_Id N)
      { return Uint3 (N); }
   INLINE Boolean   Prev_Ids                       (Node_Id N)
      { return Flag6 (N); }
   INLINE Boolean   Print_In_Hex                   (Node_Id N)
      { return Flag13 (N); }
   INLINE List_Id   Private_Declarations           (Node_Id N)
      { return List3 (N); }
   INLINE Boolean   Private_Present                (Node_Id N)
      { return Flag15 (N); }
   INLINE Node_Id   Procedure_To_Call              (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Proper_Body                    (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Protected_Definition           (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Protected_Present              (Node_Id N)
      { return Flag15 (N); }
   INLINE Boolean   Raises_Constraint_Error        (Node_Id N)
      { return Flag7 (N); }
   INLINE Node_Id   Range_Constraint               (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Range_Expression               (Node_Id N)
      { return Node4 (N); }
   INLINE Node_Id   Real_Range_Specification       (Node_Id N)
      { return Node4 (N); }
   INLINE Ureal     Realval                        (Node_Id N)
      { return Ureal3 (N); }
   INLINE Node_Id   Record_Extension_Part          (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Redundant_Use                  (Node_Id N)
      { return Flag13 (N); }
   INLINE Node_Id   Return_Type                    (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   Reverse_Present                (Node_Id N)
      { return Flag15 (N); }
   INLINE Node_Id   Right_Opnd                     (Node_Id N)
      { return Node3 (N); }
   INLINE Boolean   Rounded_Result                 (Node_Id N)
      { return Flag18 (N); }
   INLINE Node_Id   Scope                          (Node_Id N)
      { return Node3 (N); }
   INLINE List_Id   Select_Alternatives            (Node_Id N)
      { return List1 (N); }
   INLINE Node_Id   Selector_Name                  (Node_Id N)
      { return Node2 (N); }
   INLINE List_Id   Selector_Names                 (Node_Id N)
      { return List1 (N); }
   INLINE Boolean   Shift_Count_OK                 (Node_Id N)
      { return Flag4 (N); }
   INLINE Entity_Id Source_Type                    (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Specification                  (Node_Id N)
      { return Node1 (N); }
   INLINE List_Id   Statements                     (Node_Id N)
      { return List3 (N); }
   INLINE Boolean   Static_Processing_OK           (Node_Id N)
      { return Flag4 (N); }
   INLINE Node_Id   Storage_Pool                   (Node_Id N)
      { return Node1 (N); }
   INLINE String_Id Strval                         (Node_Id N)
      { return Str3 (N); }
   INLINE Node_Id   Subtype_Indication             (Node_Id N)
      { return Node5 (N); }
   INLINE Node_Id   Subtype_Mark                   (Node_Id N)
      { return Node4 (N); }
   INLINE List_Id   Subtype_Marks                  (Node_Id N)
      { return List2 (N); }
   INLINE Boolean   Tagged_Present                 (Node_Id N)
      { return Flag15 (N); }
   INLINE Entity_Id Target_Type                    (Node_Id N)
      { return Node2 (N); }
   INLINE Entity_Id Task_Body_Procedure            (Node_Id N)
      { return Node2 (N); }
   INLINE Node_Id   Task_Definition                (Node_Id N)
      { return Node3 (N); }
   INLINE List_Id   Then_Actions                   (Node_Id N)
      { return List2 (N); }
   INLINE List_Id   Then_Statements                (Node_Id N)
      { return List2 (N); }
   INLINE Boolean   Treat_Fixed_As_Integer         (Node_Id N)
      { return Flag14 (N); }
   INLINE Node_Id   Triggering_Alternative         (Node_Id N)
      { return Node1 (N); }
   INLINE Node_Id   Triggering_Statement           (Node_Id N)
      { return Node1 (N); }
   INLINE Elist_Id  TSS_Elist                      (Node_Id N)
      { return Elist3 (N); }
   INLINE Node_Id   Type_Definition                (Node_Id N)
      { return Node3 (N); }
   INLINE Node_Id   Unit                           (Node_Id N)
      { return Node2 (N); }
   INLINE Boolean   Unknown_Discriminants_Present  (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Unreferenced_In_Spec           (Node_Id N)
      { return Flag7 (N); }
   INLINE Node_Id   Variant_Part                   (Node_Id N)
      { return Node4 (N); }
   INLINE List_Id   Variants                       (Node_Id N)
      { return List1 (N); }
   INLINE List_Id   Visible_Declarations           (Node_Id N)
      { return List2 (N); }
   INLINE Boolean   Was_Originally_Stub            (Node_Id N)
      { return Flag13 (N); }
   INLINE Boolean   Zero_Cost_Handling             (Node_Id N)
      { return Flag5 (N); }