OSDN Git Service

* sysdep.c: Problem discovered during IA64 VMS port.
[pf3gnuchains/gcc-fork.git] / gcc / ada / sinfo.h
1 /*--------------------------------------------------------------------------*/
2 /*                                                                          */
3 /*                         GNAT COMPILER COMPONENTS                         */
4 /*                                                                          */
5 /*                                S I N F O                                 */
6 /*                                                                          */
7 /*                              C Header File                               */
8 /*                                                                          */
9 /*          Copyright (C) 1992-2003, Free Software Foundation, Inc.         */
10 /*                                                                          */
11 /* GNAT is free software;  you can  redistribute it  and/or modify it under */
12 /* terms of the  GNU General Public License as published  by the Free Soft- */
13 /* ware  Foundation;  either version 2,  or (at your option) any later ver- */
14 /* sion.  GNAT is distributed in the hope that it will be useful, but WITH- */
15 /* OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY */
16 /* or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License */
17 /* for  more details.  You should have  received  a copy of the GNU General */
18 /* Public License  distributed with GNAT;  see file COPYING.  If not, write */
19 /* to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, */
20 /* MA 02111-1307, USA.                                                      */
21 /*                                                                          */
22 /* As a special exception,  if other files  instantiate  generics from this */
23 /* unit, or you link  this unit with other files  to produce an executable, */
24 /* this  unit  does not  by itself cause  the resulting  executable  to  be */
25 /* covered  by the  GNU  General  Public  License.  This exception does not */
26 /* however invalidate  any other reasons why  the executable file  might be */
27 /* covered by the  GNU Public License.                                      */
28 /*                                                                          */
29 /* GNAT was originally developed  by the GNAT team at  New York University. */
30 /* Extensive contributions were provided by Ada Core Technologies Inc.      */
31 /*                                                                          */
32 /*--------------------------------------------------------------------------*/
33
34       #define N_Unused_At_Start 0
35       #define N_At_Clause 1
36       #define N_Component_Clause 2
37       #define N_Enumeration_Representation_Clause 3
38       #define N_Mod_Clause 4
39       #define N_Record_Representation_Clause 5
40       #define N_Attribute_Definition_Clause 6
41       #define N_Empty 7
42       #define N_Pragma 8
43       #define N_Pragma_Argument_Association 9
44       #define N_Error 10
45       #define N_Defining_Character_Literal 11
46       #define N_Defining_Identifier 12
47       #define N_Defining_Operator_Symbol 13
48       #define N_Expanded_Name 14
49       #define N_Identifier 15
50       #define N_Operator_Symbol 16
51       #define N_Character_Literal 17
52       #define N_Op_Add 18
53       #define N_Op_Concat 19
54       #define N_Op_Expon 20
55       #define N_Op_Subtract 21
56       #define N_Op_Divide 22
57       #define N_Op_Mod 23
58       #define N_Op_Multiply 24
59       #define N_Op_Rem 25
60       #define N_Op_And 26
61       #define N_Op_Eq 27
62       #define N_Op_Ge 28
63       #define N_Op_Gt 29
64       #define N_Op_Le 30
65       #define N_Op_Lt 31
66       #define N_Op_Ne 32
67       #define N_Op_Or 33
68       #define N_Op_Xor 34
69       #define N_Op_Rotate_Left 35
70       #define N_Op_Rotate_Right 36
71       #define N_Op_Shift_Left 37
72       #define N_Op_Shift_Right 38
73       #define N_Op_Shift_Right_Arithmetic 39
74       #define N_Op_Abs 40
75       #define N_Op_Minus 41
76       #define N_Op_Not 42
77       #define N_Op_Plus 43
78       #define N_Attribute_Reference 44
79       #define N_And_Then 45
80       #define N_Conditional_Expression 46
81       #define N_Explicit_Dereference 47
82       #define N_Function_Call 48
83       #define N_In 49
84       #define N_Indexed_Component 50
85       #define N_Integer_Literal 51
86       #define N_Not_In 52
87       #define N_Null 53
88       #define N_Or_Else 54
89       #define N_Procedure_Call_Statement 55
90       #define N_Qualified_Expression 56
91       #define N_Raise_Constraint_Error 57
92       #define N_Raise_Program_Error 58
93       #define N_Raise_Storage_Error 59
94       #define N_Aggregate 60
95       #define N_Allocator 61
96       #define N_Extension_Aggregate 62
97       #define N_Range 63
98       #define N_Real_Literal 64
99       #define N_Reference 65
100       #define N_Selected_Component 66
101       #define N_Slice 67
102       #define N_String_Literal 68
103       #define N_Subprogram_Info 69
104       #define N_Type_Conversion 70
105       #define N_Unchecked_Expression 71
106       #define N_Unchecked_Type_Conversion 72
107       #define N_Subtype_Indication 73
108       #define N_Component_Declaration 74
109       #define N_Entry_Declaration 75
110       #define N_Formal_Object_Declaration 76
111       #define N_Formal_Type_Declaration 77
112       #define N_Full_Type_Declaration 78
113       #define N_Incomplete_Type_Declaration 79
114       #define N_Loop_Parameter_Specification 80
115       #define N_Object_Declaration 81
116       #define N_Protected_Type_Declaration 82
117       #define N_Private_Extension_Declaration 83
118       #define N_Private_Type_Declaration 84
119       #define N_Subtype_Declaration 85
120       #define N_Function_Specification 86
121       #define N_Procedure_Specification 87
122       #define N_Entry_Index_Specification 88
123       #define N_Freeze_Entity 89
124       #define N_Access_Function_Definition 90
125       #define N_Access_Procedure_Definition 91
126       #define N_Task_Type_Declaration 92
127       #define N_Package_Body_Stub 93
128       #define N_Protected_Body_Stub 94
129       #define N_Subprogram_Body_Stub 95
130       #define N_Task_Body_Stub 96
131       #define N_Function_Instantiation 97
132       #define N_Package_Instantiation 98
133       #define N_Procedure_Instantiation 99
134       #define N_Package_Body 100
135       #define N_Subprogram_Body 101
136       #define N_Protected_Body 102
137       #define N_Task_Body 103
138       #define N_Implicit_Label_Declaration 104
139       #define N_Package_Declaration 105
140       #define N_Single_Task_Declaration 106
141       #define N_Subprogram_Declaration 107
142       #define N_Use_Package_Clause 108
143       #define N_Generic_Package_Declaration 109
144       #define N_Generic_Subprogram_Declaration 110
145       #define N_Constrained_Array_Definition 111
146       #define N_Unconstrained_Array_Definition 112
147       #define N_Exception_Renaming_Declaration 113
148       #define N_Object_Renaming_Declaration 114
149       #define N_Package_Renaming_Declaration 115
150       #define N_Subprogram_Renaming_Declaration 116
151       #define N_Generic_Function_Renaming_Declaration 117
152       #define N_Generic_Package_Renaming_Declaration 118
153       #define N_Generic_Procedure_Renaming_Declaration 119
154       #define N_Abort_Statement 120
155       #define N_Accept_Statement 121
156       #define N_Assignment_Statement 122
157       #define N_Asynchronous_Select 123
158       #define N_Block_Statement 124
159       #define N_Case_Statement 125
160       #define N_Code_Statement 126
161       #define N_Conditional_Entry_Call 127
162       #define N_Delay_Relative_Statement 128
163       #define N_Delay_Until_Statement 129
164       #define N_Entry_Call_Statement 130
165       #define N_Free_Statement 131
166       #define N_Goto_Statement 132
167       #define N_Loop_Statement 133
168       #define N_Null_Statement 134
169       #define N_Raise_Statement 135
170       #define N_Requeue_Statement 136
171       #define N_Return_Statement 137
172       #define N_Selective_Accept 138
173       #define N_Timed_Entry_Call 139
174       #define N_Exit_Statement 140
175       #define N_If_Statement 141
176       #define N_Accept_Alternative 142
177       #define N_Delay_Alternative 143
178       #define N_Elsif_Part 144
179       #define N_Entry_Body_Formal_Part 145
180       #define N_Iteration_Scheme 146
181       #define N_Terminate_Alternative 147
182       #define N_Abortable_Part 148
183       #define N_Abstract_Subprogram_Declaration 149
184       #define N_Access_Definition 150
185       #define N_Access_To_Object_Definition 151
186       #define N_Case_Statement_Alternative 152
187       #define N_Compilation_Unit 153
188       #define N_Compilation_Unit_Aux 154
189       #define N_Component_Association 155
190       #define N_Component_List 156
191       #define N_Derived_Type_Definition 157
192       #define N_Decimal_Fixed_Point_Definition 158
193       #define N_Defining_Program_Unit_Name 159
194       #define N_Delta_Constraint 160
195       #define N_Designator 161
196       #define N_Digits_Constraint 162
197       #define N_Discriminant_Association 163
198       #define N_Discriminant_Specification 164
199       #define N_Enumeration_Type_Definition 165
200       #define N_Entry_Body 166
201       #define N_Entry_Call_Alternative 167
202       #define N_Exception_Declaration 168
203       #define N_Exception_Handler 169
204       #define N_Floating_Point_Definition 170
205       #define N_Formal_Decimal_Fixed_Point_Definition 171
206       #define N_Formal_Derived_Type_Definition 172
207       #define N_Formal_Discrete_Type_Definition 173
208       #define N_Formal_Floating_Point_Definition 174
209       #define N_Formal_Modular_Type_Definition 175
210       #define N_Formal_Ordinary_Fixed_Point_Definition 176
211       #define N_Formal_Package_Declaration 177
212       #define N_Formal_Private_Type_Definition 178
213       #define N_Formal_Signed_Integer_Type_Definition 179
214       #define N_Formal_Subprogram_Declaration 180
215       #define N_Generic_Association 181
216       #define N_Handled_Sequence_Of_Statements 182
217       #define N_Index_Or_Discriminant_Constraint 183
218       #define N_Itype_Reference 184
219       #define N_Label 185
220       #define N_Modular_Type_Definition 186
221       #define N_Number_Declaration 187
222       #define N_Ordinary_Fixed_Point_Definition 188
223       #define N_Others_Choice 189
224       #define N_Package_Specification 190
225       #define N_Parameter_Association 191
226       #define N_Parameter_Specification 192
227       #define N_Protected_Definition 193
228       #define N_Range_Constraint 194
229       #define N_Real_Range_Specification 195
230       #define N_Record_Definition 196
231       #define N_Signed_Integer_Type_Definition 197
232       #define N_Single_Protected_Declaration 198
233       #define N_Subunit 199
234       #define N_Task_Definition 200
235       #define N_Triggering_Alternative 201
236       #define N_Use_Type_Clause 202
237       #define N_Validate_Unchecked_Conversion 203
238       #define N_Variant 204
239       #define N_Variant_Part 205
240       #define N_With_Clause 206
241       #define N_With_Type_Clause 207
242       #define N_Unused_At_End 208
243
244       #define Number_Node_Kinds 209
245    SUBTYPE (N_Access_To_Subprogram_Definition, Node_Kind, 
246       N_Access_Function_Definition,
247       N_Access_Procedure_Definition)
248    SUBTYPE (N_Array_Type_Definition, Node_Kind, 
249       N_Constrained_Array_Definition,
250       N_Unconstrained_Array_Definition)
251    SUBTYPE (N_Binary_Op, Node_Kind, 
252       N_Op_Add,
253       N_Op_Shift_Right_Arithmetic)
254    SUBTYPE (N_Body_Stub, Node_Kind, 
255       N_Package_Body_Stub,
256       N_Task_Body_Stub)
257    SUBTYPE (N_Declaration, Node_Kind, 
258       N_Component_Declaration,
259       N_Procedure_Specification)
260    SUBTYPE (N_Direct_Name, Node_Kind, 
261       N_Identifier,
262       N_Character_Literal)
263    SUBTYPE (N_Entity, Node_Kind, 
264       N_Defining_Character_Literal,
265       N_Defining_Operator_Symbol)
266    SUBTYPE (N_Generic_Declaration, Node_Kind, 
267       N_Generic_Package_Declaration,
268       N_Generic_Subprogram_Declaration)
269    SUBTYPE (N_Generic_Instantiation, Node_Kind, 
270       N_Function_Instantiation,
271       N_Procedure_Instantiation)
272    SUBTYPE (N_Generic_Renaming_Declaration, Node_Kind, 
273       N_Generic_Function_Renaming_Declaration,
274       N_Generic_Procedure_Renaming_Declaration)
275    SUBTYPE (N_Has_Chars, Node_Kind, 
276       N_Attribute_Definition_Clause,
277       N_Op_Plus)
278    SUBTYPE (N_Has_Entity, Node_Kind, 
279       N_Expanded_Name,
280       N_Attribute_Reference)
281    SUBTYPE (N_Has_Etype, Node_Kind, 
282       N_Error,
283       N_Subtype_Indication)
284    SUBTYPE (N_Has_Treat_Fixed_As_Integer, Node_Kind, 
285       N_Op_Divide,
286       N_Op_Rem)
287    SUBTYPE (N_Later_Decl_Item, Node_Kind, 
288       N_Task_Type_Declaration,
289       N_Generic_Subprogram_Declaration)
290    SUBTYPE (N_Op, Node_Kind, 
291       N_Op_Add,
292       N_Op_Plus)
293    SUBTYPE (N_Op_Boolean, Node_Kind, 
294       N_Op_And,
295       N_Op_Xor)
296    SUBTYPE (N_Op_Compare, Node_Kind, 
297       N_Op_Eq,
298       N_Op_Ne)
299    SUBTYPE (N_Op_Shift, Node_Kind, 
300       N_Op_Rotate_Left,
301       N_Op_Shift_Right_Arithmetic)
302    SUBTYPE (N_Proper_Body, Node_Kind, 
303       N_Package_Body,
304       N_Task_Body)
305    SUBTYPE (N_Raise_xxx_Error, Node_Kind, 
306       N_Raise_Constraint_Error,
307       N_Raise_Storage_Error)
308    SUBTYPE (N_Renaming_Declaration, Node_Kind, 
309       N_Exception_Renaming_Declaration,
310       N_Generic_Procedure_Renaming_Declaration)
311    SUBTYPE (N_Representation_Clause, Node_Kind, 
312       N_At_Clause,
313       N_Attribute_Definition_Clause)
314    SUBTYPE (N_Statement_Other_Than_Procedure_Call, Node_Kind, 
315       N_Abort_Statement,
316       N_If_Statement)
317    SUBTYPE (N_Has_Condition, Node_Kind, 
318       N_Exit_Statement,
319       N_Terminate_Alternative)
320    SUBTYPE (N_Subexpr, Node_Kind, 
321       N_Expanded_Name,
322       N_Unchecked_Type_Conversion)
323    SUBTYPE (N_Subprogram_Specification, Node_Kind, 
324       N_Function_Specification,
325       N_Procedure_Specification)
326    SUBTYPE (N_Unary_Op, Node_Kind, 
327       N_Op_Abs,
328       N_Op_Plus)
329    SUBTYPE (N_Unit_Body, Node_Kind, 
330       N_Package_Body,
331       N_Subprogram_Body)
332    INLINE Boolean   ABE_Is_Certain                 (Node_Id N)
333       { return Flag18 (N); }
334    INLINE Boolean   Abort_Present                  (Node_Id N)
335       { return Flag15 (N); }
336    INLINE Node_Id   Abortable_Part                 (Node_Id N)
337       { return Node2 (N); }
338    INLINE Boolean   Abstract_Present               (Node_Id N)
339       { return Flag4 (N); }
340    INLINE List_Id   Accept_Handler_Records         (Node_Id N)
341       { return List5 (N); }
342    INLINE Node_Id   Accept_Statement               (Node_Id N)
343       { return Node2 (N); }
344    INLINE Elist_Id  Access_Types_To_Process        (Node_Id N)
345       { return Elist2 (N); }
346    INLINE List_Id   Actions                        (Node_Id N)
347       { return List1 (N); }
348    INLINE Node_Id   Activation_Chain_Entity        (Node_Id N)
349       { return Node3 (N); }
350    INLINE Boolean   Acts_As_Spec                   (Node_Id N)
351       { return Flag4 (N); }
352    INLINE Node_Id   Aggregate_Bounds               (Node_Id N)
353       { return Node3 (N); }
354    INLINE Boolean   Aliased_Present                (Node_Id N)
355       { return Flag4 (N); }
356    INLINE Boolean   All_Others                     (Node_Id N)
357       { return Flag11 (N); }
358    INLINE Boolean   All_Present                    (Node_Id N)
359       { return Flag15 (N); }
360    INLINE List_Id   Alternatives                   (Node_Id N)
361       { return List4 (N); }
362    INLINE Node_Id   Ancestor_Part                  (Node_Id N)
363       { return Node3 (N); }
364    INLINE Node_Id   Array_Aggregate                (Node_Id N)
365       { return Node3 (N); }
366    INLINE Boolean   Assignment_OK                  (Node_Id N)
367       { return Flag15 (N); }
368    INLINE Node_Id   Associated_Node                (Node_Id N)
369       { return Node4 (N); }
370    INLINE Node_Id   At_End_Proc                    (Node_Id N)
371       { return Node1 (N); }
372    INLINE Name_Id   Attribute_Name                 (Node_Id N)
373       { return Name2 (N); }
374    INLINE Node_Id   Aux_Decls_Node                 (Node_Id N)
375       { return Node5 (N); }
376    INLINE Boolean   Backwards_OK                   (Node_Id N)
377       { return Flag6 (N); }
378    INLINE Boolean   Bad_Is_Detected                (Node_Id N)
379       { return Flag15 (N); }
380    INLINE Boolean   By_Ref                         (Node_Id N)
381       { return Flag5 (N); }
382    INLINE Boolean   Body_Required                  (Node_Id N)
383       { return Flag13 (N); }
384    INLINE Node_Id   Body_To_Inline                 (Node_Id N)
385       { return Node3 (N); }
386    INLINE Boolean   Box_Present                    (Node_Id N)
387       { return Flag15 (N); }
388    INLINE Char_Code Char_Literal_Value             (Node_Id N)
389       { return Char_Code2 (N); }
390    INLINE Name_Id   Chars                          (Node_Id N)
391       { return Name1 (N); }
392    INLINE Boolean   Check_Address_Alignment        (Node_Id N)
393       { return Flag11 (N); }
394    INLINE Node_Id   Choice_Parameter               (Node_Id N)
395       { return Node2 (N); }
396    INLINE List_Id   Choices                        (Node_Id N)
397       { return List1 (N); }
398    INLINE Boolean   Compile_Time_Known_Aggregate   (Node_Id N)
399       { return Flag18 (N); }
400    INLINE List_Id   Component_Associations         (Node_Id N)
401       { return List2 (N); }
402    INLINE List_Id   Component_Clauses              (Node_Id N)
403       { return List3 (N); }
404    INLINE List_Id   Component_Items                (Node_Id N)
405       { return List3 (N); }
406    INLINE Node_Id   Component_List                 (Node_Id N)
407       { return Node1 (N); }
408    INLINE Node_Id   Component_Name                 (Node_Id N)
409       { return Node1 (N); }
410    INLINE Node_Id   Condition                      (Node_Id N)
411       { return Node1 (N); }
412    INLINE List_Id   Condition_Actions              (Node_Id N)
413       { return List3 (N); }
414    INLINE List_Id   Config_Pragmas                 (Node_Id N)
415       { return List4 (N); }
416    INLINE Boolean   Constant_Present               (Node_Id N)
417       { return Flag17 (N); }
418    INLINE Node_Id   Constraint                     (Node_Id N)
419       { return Node3 (N); }
420    INLINE List_Id   Constraints                    (Node_Id N)
421       { return List1 (N); }
422    INLINE Boolean   Context_Installed              (Node_Id N)
423       { return Flag13 (N); }
424    INLINE List_Id   Context_Items                  (Node_Id N)
425       { return List1 (N); }
426    INLINE Node_Id   Controlling_Argument           (Node_Id N)
427       { return Node1 (N); }
428    INLINE Boolean   Conversion_OK                  (Node_Id N)
429       { return Flag14 (N); }
430    INLINE Node_Id   Corresponding_Body             (Node_Id N)
431       { return Node5 (N); }
432    INLINE Node_Id   Corresponding_Generic_Association (Node_Id N)
433       { return Node5 (N); }
434    INLINE Uint      Corresponding_Integer_Value    (Node_Id N)
435       { return Uint4 (N); }
436    INLINE Node_Id   Corresponding_Spec             (Node_Id N)
437       { return Node5 (N); }
438    INLINE Node_Id   Corresponding_Stub             (Node_Id N)
439       { return Node3 (N); }
440    INLINE Entity_Id Dcheck_Function                (Node_Id N)
441       { return Node5 (N); }
442    INLINE Node_Id   Debug_Statement                (Node_Id N)
443       { return Node3 (N); }
444    INLINE List_Id   Declarations                   (Node_Id N)
445       { return List2 (N); }
446    INLINE Node_Id   Default_Expression             (Node_Id N)
447       { return Node5 (N); }
448    INLINE Node_Id   Default_Name                   (Node_Id N)
449       { return Node2 (N); }
450    INLINE Entity_Id Defining_Identifier            (Node_Id N)
451       { return Node1 (N); }
452    INLINE Node_Id   Defining_Unit_Name             (Node_Id N)
453       { return Node1 (N); }
454    INLINE Node_Id   Delay_Alternative              (Node_Id N)
455       { return Node4 (N); }
456    INLINE Boolean   Delay_Finalize_Attach          (Node_Id N)
457       { return Flag14 (N); }
458    INLINE Node_Id   Delay_Statement                (Node_Id N)
459       { return Node2 (N); }
460    INLINE Node_Id   Delta_Expression               (Node_Id N)
461       { return Node3 (N); }
462    INLINE Node_Id   Digits_Expression              (Node_Id N)
463       { return Node2 (N); }
464    INLINE Boolean   Discr_Check_Funcs_Built        (Node_Id N)
465       { return Flag11 (N); }
466    INLINE List_Id   Discrete_Choices               (Node_Id N)
467       { return List4 (N); }
468    INLINE Node_Id   Discrete_Range                 (Node_Id N)
469       { return Node4 (N); }
470    INLINE Node_Id   Discrete_Subtype_Definition    (Node_Id N)
471       { return Node4 (N); }
472    INLINE List_Id   Discrete_Subtype_Definitions   (Node_Id N)
473       { return List2 (N); }
474    INLINE List_Id   Discriminant_Specifications    (Node_Id N)
475       { return List4 (N); }
476    INLINE Node_Id   Discriminant_Type              (Node_Id N)
477       { return Node5 (N); }
478    INLINE Boolean   Do_Accessibility_Check         (Node_Id N)
479       { return Flag13 (N); }
480    INLINE Boolean   Do_Discriminant_Check          (Node_Id N)
481       { return Flag13 (N); }
482    INLINE Boolean   Do_Division_Check              (Node_Id N)
483       { return Flag13 (N); }
484    INLINE Boolean   Do_Length_Check                (Node_Id N)
485       { return Flag4 (N); }
486    INLINE Boolean   Do_Overflow_Check              (Node_Id N)
487       { return Flag17 (N); }
488    INLINE Boolean   Do_Range_Check                 (Node_Id N)
489       { return Flag9 (N); }
490    INLINE Boolean   Do_Storage_Check               (Node_Id N)
491       { return Flag17 (N); }
492    INLINE Boolean   Do_Tag_Check                   (Node_Id N)
493       { return Flag13 (N); }
494    INLINE Boolean   Elaborate_All_Present          (Node_Id N)
495       { return Flag15 (N); }
496    INLINE Boolean   Elaborate_Present              (Node_Id N)
497       { return Flag4 (N); }
498    INLINE Node_Id   Elaboration_Boolean            (Node_Id N)
499       { return Node2 (N); }
500    INLINE List_Id   Else_Actions                   (Node_Id N)
501       { return List3 (N); }
502    INLINE List_Id   Else_Statements                (Node_Id N)
503       { return List4 (N); }
504    INLINE List_Id   Elsif_Parts                    (Node_Id N)
505       { return List3 (N); }
506    INLINE Node_Id   Enclosing_Variant              (Node_Id N)
507       { return Node2 (N); }
508    INLINE Node_Id   End_Label                      (Node_Id N)
509       { return Node4 (N); }
510    INLINE Uint      End_Span                       (Node_Id N)
511       { return Uint5 (N); }
512    INLINE Node_Id   Entity                         (Node_Id N)
513       { return Node4 (N); }
514    INLINE Node_Id   Entry_Body_Formal_Part         (Node_Id N)
515       { return Node5 (N); }
516    INLINE Node_Id   Entry_Call_Alternative         (Node_Id N)
517       { return Node1 (N); }
518    INLINE Node_Id   Entry_Call_Statement           (Node_Id N)
519       { return Node1 (N); }
520    INLINE Node_Id   Entry_Direct_Name              (Node_Id N)
521       { return Node1 (N); }
522    INLINE Node_Id   Entry_Index                    (Node_Id N)
523       { return Node5 (N); }
524    INLINE Node_Id   Entry_Index_Specification      (Node_Id N)
525       { return Node4 (N); }
526    INLINE Node_Id   Etype                          (Node_Id N)
527       { return Node5 (N); }
528    INLINE List_Id   Exception_Choices              (Node_Id N)
529       { return List4 (N); }
530    INLINE List_Id   Exception_Handlers             (Node_Id N)
531       { return List5 (N); }
532    INLINE Boolean   Exception_Junk                 (Node_Id N)
533       { return Flag11 (N); }
534    INLINE Node_Id   Explicit_Actual_Parameter      (Node_Id N)
535       { return Node3 (N); }
536    INLINE Boolean   Expansion_Delayed              (Node_Id N)
537       { return Flag11 (N); }
538    INLINE Node_Id   Explicit_Generic_Actual_Parameter (Node_Id N)
539       { return Node1 (N); }
540    INLINE Node_Id   Expression                     (Node_Id N)
541       { return Node3 (N); }
542    INLINE List_Id   Expressions                    (Node_Id N)
543       { return List1 (N); }
544    INLINE Node_Id   First_Bit                      (Node_Id N)
545       { return Node3 (N); }
546    INLINE Entity_Id First_Inlined_Subprogram       (Node_Id N)
547       { return Node3 (N); }
548    INLINE Boolean   First_Name                     (Node_Id N)
549       { return Flag5 (N); }
550    INLINE Node_Id   First_Named_Actual             (Node_Id N)
551       { return Node4 (N); }
552    INLINE Node_Id   First_Real_Statement           (Node_Id N)
553       { return Node2 (N); }
554    INLINE Entity_Id First_Subtype_Link             (Node_Id N)
555       { return Node5 (N); }
556    INLINE Boolean   Float_Truncate                 (Node_Id N)
557       { return Flag11 (N); }
558    INLINE Node_Id   Formal_Type_Definition         (Node_Id N)
559       { return Node3 (N); }
560    INLINE Boolean   Forwards_OK                    (Node_Id N)
561       { return Flag5 (N); }
562    INLINE Boolean   From_At_Mod                    (Node_Id N)
563       { return Flag4 (N); }
564    INLINE List_Id   Generic_Associations           (Node_Id N)
565       { return List3 (N); }
566    INLINE List_Id   Generic_Formal_Declarations    (Node_Id N)
567       { return List2 (N); }
568    INLINE Node_Id   Generic_Parent                 (Node_Id N)
569       { return Node5 (N); }
570    INLINE Node_Id   Generic_Parent_Type            (Node_Id N)
571       { return Node4 (N); }
572    INLINE Node_Id   Handled_Statement_Sequence     (Node_Id N)
573       { return Node4 (N); }
574    INLINE Node_Id   Handler_List_Entry             (Node_Id N)
575       { return Node2 (N); }
576    INLINE Boolean   Has_Created_Identifier         (Node_Id N)
577       { return Flag15 (N); }
578    INLINE Boolean   Has_Dynamic_Length_Check       (Node_Id N)
579       { return Flag10 (N); }
580    INLINE Boolean   Has_Dynamic_Range_Check        (Node_Id N)
581       { return Flag12 (N); }
582    INLINE Boolean   Has_No_Elaboration_Code        (Node_Id N)
583       { return Flag17 (N); }
584    INLINE Boolean   Has_Priority_Pragma            (Node_Id N)
585       { return Flag6 (N); }
586    INLINE Boolean   Has_Private_View               (Node_Id N)
587       { return Flag11 (N); }
588    INLINE Boolean   Has_Storage_Size_Pragma        (Node_Id N)
589       { return Flag5 (N); }
590    INLINE Boolean   Has_Task_Info_Pragma           (Node_Id N)
591       { return Flag7 (N); }
592    INLINE Boolean   Has_Task_Name_Pragma           (Node_Id N)
593       { return Flag8 (N); }
594    INLINE Boolean   Has_Wide_Character             (Node_Id N)
595       { return Flag11 (N); }
596    INLINE Elist_Id  Hidden_By_Use_Clause           (Node_Id N)
597       { return Elist4 (N); }
598    INLINE Node_Id   High_Bound                     (Node_Id N)
599       { return Node2 (N); }
600    INLINE Node_Id   Identifier                     (Node_Id N)
601       { return Node1 (N); }
602    INLINE Boolean   Implicit_With                  (Node_Id N)
603       { return Flag16 (N); }
604    INLINE Boolean   In_Present                     (Node_Id N)
605       { return Flag15 (N); }
606    INLINE Boolean   Includes_Infinities            (Node_Id N)
607       { return Flag11 (N); }
608    INLINE Node_Id   Instance_Spec                  (Node_Id N)
609       { return Node5 (N); }
610    INLINE Uint      Intval                         (Node_Id N)
611       { return Uint3 (N); }
612    INLINE Boolean   Is_Asynchronous_Call_Block     (Node_Id N)
613       { return Flag7 (N); }
614    INLINE Boolean   Is_Component_Left_Opnd         (Node_Id N)
615       { return Flag13 (N); }
616    INLINE Boolean   Is_Component_Right_Opnd        (Node_Id N)
617       { return Flag14 (N); }
618    INLINE Boolean   Is_Controlling_Actual          (Node_Id N)
619       { return Flag16 (N); }
620    INLINE Boolean   Is_In_Discriminant_Check       (Node_Id N)
621       { return Flag11 (N); }
622    INLINE Boolean   Is_Machine_Number              (Node_Id N)
623       { return Flag11 (N); }
624    INLINE Boolean   Is_Null_Loop                   (Node_Id N)
625       { return Flag16 (N); }
626    INLINE Boolean   Is_Overloaded                  (Node_Id N)
627       { return Flag5 (N); }
628    INLINE Boolean   Is_Power_Of_2_For_Shift        (Node_Id N)
629       { return Flag13 (N); }
630    INLINE Boolean   Is_Protected_Subprogram_Body   (Node_Id N)
631       { return Flag7 (N); }
632    INLINE Boolean   Is_Static_Expression           (Node_Id N)
633       { return Flag6 (N); }
634    INLINE Boolean   Is_Subprogram_Descriptor       (Node_Id N)
635       { return Flag16 (N); }
636    INLINE Boolean   Is_Task_Allocation_Block       (Node_Id N)
637       { return Flag6 (N); }
638    INLINE Boolean   Is_Task_Master                 (Node_Id N)
639       { return Flag5 (N); }
640    INLINE Node_Id   Iteration_Scheme               (Node_Id N)
641       { return Node2 (N); }
642    INLINE Entity_Id Itype                          (Node_Id N)
643       { return Node1 (N); }
644    INLINE Boolean   Kill_Range_Check               (Node_Id N)
645       { return Flag11 (N); }
646    INLINE Node_Id   Label_Construct                (Node_Id N)
647       { return Node2 (N); }
648    INLINE Node_Id   Left_Opnd                      (Node_Id N)
649       { return Node2 (N); }
650    INLINE Node_Id   Last_Bit                       (Node_Id N)
651       { return Node4 (N); }
652    INLINE Boolean   Last_Name                      (Node_Id N)
653       { return Flag6 (N); }
654    INLINE Node_Id   Library_Unit                   (Node_Id N)
655       { return Node4 (N); }
656    INLINE Boolean   Limited_View_Installed         (Node_Id N)
657       { return Flag18 (N); }
658    INLINE Boolean   Limited_Present                (Node_Id N)
659       { return Flag17 (N); }
660    INLINE List_Id   Literals                       (Node_Id N)
661       { return List1 (N); }
662    INLINE List_Id   Loop_Actions                   (Node_Id N)
663       { return List2 (N); }
664    INLINE Node_Id   Loop_Parameter_Specification   (Node_Id N)
665       { return Node4 (N); }
666    INLINE Node_Id   Low_Bound                      (Node_Id N)
667       { return Node1 (N); }
668    INLINE Node_Id   Mod_Clause                     (Node_Id N)
669       { return Node2 (N); }
670    INLINE Boolean   More_Ids                       (Node_Id N)
671       { return Flag5 (N); }
672    INLINE Boolean   Must_Be_Byte_Aligned           (Node_Id N)
673       { return Flag14 (N); }
674    INLINE Boolean   Must_Not_Freeze                (Node_Id N)
675       { return Flag8 (N); }
676    INLINE Node_Id   Name                           (Node_Id N)
677       { return Node2 (N); }
678    INLINE List_Id   Names                          (Node_Id N)
679       { return List2 (N); }
680    INLINE Node_Id   Next_Entity                    (Node_Id N)
681       { return Node2 (N); }
682    INLINE Node_Id   Next_Named_Actual              (Node_Id N)
683       { return Node4 (N); }
684    INLINE Node_Id   Next_Rep_Item                  (Node_Id N)
685       { return Node4 (N); }
686    INLINE Node_Id   Next_Use_Clause                (Node_Id N)
687       { return Node3 (N); }
688    INLINE Boolean   No_Ctrl_Actions                (Node_Id N)
689       { return Flag7 (N); }
690    INLINE Boolean   No_Entities_Ref_In_Spec        (Node_Id N)
691       { return Flag8 (N); }
692    INLINE Boolean   No_Initialization              (Node_Id N)
693       { return Flag13 (N); }
694    INLINE Boolean   No_Truncation                  (Node_Id N)
695       { return Flag17 (N); }
696    INLINE Boolean   Null_Present                   (Node_Id N)
697       { return Flag13 (N); }
698    INLINE Boolean   Null_Record_Present            (Node_Id N)
699       { return Flag17 (N); }
700    INLINE Node_Id   Object_Definition              (Node_Id N)
701       { return Node4 (N); }
702    INLINE Boolean   OK_For_Stream                  (Node_Id N)
703       { return Flag4 (N); }
704    INLINE Node_Id   Original_Discriminant          (Node_Id N)
705       { return Node2 (N); }
706    INLINE Entity_Id Original_Entity                (Node_Id N)
707       { return Node2 (N); }
708    INLINE List_Id   Others_Discrete_Choices        (Node_Id N)
709       { return List1 (N); }
710    INLINE Boolean   Out_Present                    (Node_Id N)
711       { return Flag17 (N); }
712    INLINE List_Id   Parameter_Associations         (Node_Id N)
713       { return List3 (N); }
714    INLINE Boolean   Parameter_List_Truncated       (Node_Id N)
715       { return Flag17 (N); }
716    INLINE List_Id   Parameter_Specifications       (Node_Id N)
717       { return List3 (N); }
718    INLINE Node_Id   Parameter_Type                 (Node_Id N)
719       { return Node2 (N); }
720    INLINE Node_Id   Parent_Spec                    (Node_Id N)
721       { return Node4 (N); }
722    INLINE Node_Id   Position                       (Node_Id N)
723       { return Node2 (N); }
724    INLINE List_Id   Pragma_Argument_Associations   (Node_Id N)
725       { return List2 (N); }
726    INLINE List_Id   Pragmas_After                  (Node_Id N)
727       { return List5 (N); }
728    INLINE List_Id   Pragmas_Before                 (Node_Id N)
729       { return List4 (N); }
730    INLINE Node_Id   Prefix                         (Node_Id N)
731       { return Node3 (N); }
732    INLINE Uint      Present_Expr                   (Node_Id N)
733       { return Uint3 (N); }
734    INLINE Boolean   Prev_Ids                       (Node_Id N)
735       { return Flag6 (N); }
736    INLINE Boolean   Print_In_Hex                   (Node_Id N)
737       { return Flag13 (N); }
738    INLINE List_Id   Private_Declarations           (Node_Id N)
739       { return List3 (N); }
740    INLINE Boolean   Private_Present                (Node_Id N)
741       { return Flag15 (N); }
742    INLINE Node_Id   Procedure_To_Call              (Node_Id N)
743       { return Node4 (N); }
744    INLINE Node_Id   Proper_Body                    (Node_Id N)
745       { return Node1 (N); }
746    INLINE Node_Id   Protected_Definition           (Node_Id N)
747       { return Node3 (N); }
748    INLINE Boolean   Protected_Present              (Node_Id N)
749       { return Flag15 (N); }
750    INLINE Boolean   Raises_Constraint_Error        (Node_Id N)
751       { return Flag7 (N); }
752    INLINE Node_Id   Range_Constraint               (Node_Id N)
753       { return Node4 (N); }
754    INLINE Node_Id   Range_Expression               (Node_Id N)
755       { return Node4 (N); }
756    INLINE Node_Id   Real_Range_Specification       (Node_Id N)
757       { return Node4 (N); }
758    INLINE Ureal     Realval                        (Node_Id N)
759       { return Ureal3 (N); }
760    INLINE Uint      Reason                         (Node_Id N)
761       { return Uint3 (N); }
762    INLINE Node_Id   Record_Extension_Part          (Node_Id N)
763       { return Node3 (N); }
764    INLINE Boolean   Redundant_Use                  (Node_Id N)
765       { return Flag13 (N); }
766    INLINE Node_Id   Return_Type                    (Node_Id N)
767       { return Node2 (N); }
768    INLINE Boolean   Reverse_Present                (Node_Id N)
769       { return Flag15 (N); }
770    INLINE Node_Id   Right_Opnd                     (Node_Id N)
771       { return Node3 (N); }
772    INLINE Boolean   Rounded_Result                 (Node_Id N)
773       { return Flag18 (N); }
774    INLINE Node_Id   Scope                          (Node_Id N)
775       { return Node3 (N); }
776    INLINE List_Id   Select_Alternatives            (Node_Id N)
777       { return List1 (N); }
778    INLINE Node_Id   Selector_Name                  (Node_Id N)
779       { return Node2 (N); }
780    INLINE List_Id   Selector_Names                 (Node_Id N)
781       { return List1 (N); }
782    INLINE Boolean   Shift_Count_OK                 (Node_Id N)
783       { return Flag4 (N); }
784    INLINE Entity_Id Source_Type                    (Node_Id N)
785       { return Node1 (N); }
786    INLINE Node_Id   Specification                  (Node_Id N)
787       { return Node1 (N); }
788    INLINE List_Id   Statements                     (Node_Id N)
789       { return List3 (N); }
790    INLINE Boolean   Static_Processing_OK           (Node_Id N)
791       { return Flag4 (N); }
792    INLINE Node_Id   Storage_Pool                   (Node_Id N)
793       { return Node1 (N); }
794    INLINE String_Id Strval                         (Node_Id N)
795       { return Str3 (N); }
796    INLINE Node_Id   Subtype_Indication             (Node_Id N)
797       { return Node5 (N); }
798    INLINE Node_Id   Subtype_Mark                   (Node_Id N)
799       { return Node4 (N); }
800    INLINE List_Id   Subtype_Marks                  (Node_Id N)
801       { return List2 (N); }
802    INLINE Boolean   Tagged_Present                 (Node_Id N)
803       { return Flag15 (N); }
804    INLINE Entity_Id Target_Type                    (Node_Id N)
805       { return Node2 (N); }
806    INLINE Entity_Id Task_Body_Procedure            (Node_Id N)
807       { return Node2 (N); }
808    INLINE Node_Id   Task_Definition                (Node_Id N)
809       { return Node3 (N); }
810    INLINE List_Id   Then_Actions                   (Node_Id N)
811       { return List2 (N); }
812    INLINE List_Id   Then_Statements                (Node_Id N)
813       { return List2 (N); }
814    INLINE Boolean   Treat_Fixed_As_Integer         (Node_Id N)
815       { return Flag14 (N); }
816    INLINE Node_Id   Triggering_Alternative         (Node_Id N)
817       { return Node1 (N); }
818    INLINE Node_Id   Triggering_Statement           (Node_Id N)
819       { return Node1 (N); }
820    INLINE Elist_Id  TSS_Elist                      (Node_Id N)
821       { return Elist3 (N); }
822    INLINE Node_Id   Type_Definition                (Node_Id N)
823       { return Node3 (N); }
824    INLINE Node_Id   Unit                           (Node_Id N)
825       { return Node2 (N); }
826    INLINE Boolean   Unknown_Discriminants_Present  (Node_Id N)
827       { return Flag13 (N); }
828    INLINE Boolean   Unreferenced_In_Spec           (Node_Id N)
829       { return Flag7 (N); }
830    INLINE Node_Id   Variant_Part                   (Node_Id N)
831       { return Node4 (N); }
832    INLINE List_Id   Variants                       (Node_Id N)
833       { return List1 (N); }
834    INLINE List_Id   Visible_Declarations           (Node_Id N)
835       { return List2 (N); }
836    INLINE Boolean   Was_Originally_Stub            (Node_Id N)
837       { return Flag13 (N); }
838    INLINE Boolean   Zero_Cost_Handling             (Node_Id N)
839       { return Flag5 (N); }
840