OSDN Git Service

* sysdep.c: Problem discovered during IA64 VMS port.
[pf3gnuchains/gcc-fork.git] / gcc / ada / einfo.h
1 /*--------------------------------------------------------------------------*/
2 /*                                                                          */
3 /*                         GNAT COMPILER COMPONENTS                         */
4 /*                                                                          */
5 /*                                E 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 E_Void                           0
35    #define E_Variable                       1
36    #define E_Component                      2
37    #define E_Constant                       3
38    #define E_Discriminant                   4
39    #define E_Loop_Parameter                 5
40    #define E_In_Parameter                   6
41    #define E_Out_Parameter                  7
42    #define E_In_Out_Parameter               8
43    #define E_Generic_In_Out_Parameter       9
44    #define E_Generic_In_Parameter           10
45    #define E_Named_Integer                  11
46    #define E_Named_Real                     12
47    #define E_Enumeration_Type               13
48    #define E_Enumeration_Subtype            14
49    #define E_Signed_Integer_Type            15
50    #define E_Signed_Integer_Subtype         16
51    #define E_Modular_Integer_Type           17
52    #define E_Modular_Integer_Subtype        18
53    #define E_Ordinary_Fixed_Point_Type      19
54    #define E_Ordinary_Fixed_Point_Subtype   20
55    #define E_Decimal_Fixed_Point_Type       21
56    #define E_Decimal_Fixed_Point_Subtype    22
57    #define E_Floating_Point_Type            23
58    #define E_Floating_Point_Subtype         24
59    #define E_Access_Type                    25
60    #define E_Access_Subtype                 26
61    #define E_Access_Attribute_Type          27
62    #define E_Allocator_Type                 28
63    #define E_General_Access_Type            29
64    #define E_Access_Subprogram_Type         30
65    #define E_Access_Protected_Subprogram_Type 31
66    #define E_Anonymous_Access_Type          32
67    #define E_Array_Type                     33
68    #define E_Array_Subtype                  34
69    #define E_String_Type                    35
70    #define E_String_Subtype                 36
71    #define E_String_Literal_Subtype         37
72    #define E_Class_Wide_Type                38
73    #define E_Class_Wide_Subtype             39
74    #define E_Record_Type                    40
75    #define E_Record_Subtype                 41
76    #define E_Record_Type_With_Private       42
77    #define E_Record_Subtype_With_Private    43
78    #define E_Private_Type                   44
79    #define E_Private_Subtype                45
80    #define E_Limited_Private_Type           46
81    #define E_Limited_Private_Subtype        47
82    #define E_Incomplete_Type                48
83    #define E_Task_Type                      49
84    #define E_Task_Subtype                   50
85    #define E_Protected_Type                 51
86    #define E_Protected_Subtype              52
87    #define E_Exception_Type                 53
88    #define E_Subprogram_Type                54
89    #define E_Enumeration_Literal            55
90    #define E_Function                       56
91    #define E_Operator                       57
92    #define E_Procedure                      58
93    #define E_Entry                          59
94    #define E_Entry_Family                   60
95    #define E_Block                          61
96    #define E_Entry_Index_Parameter          62
97    #define E_Exception                      63
98    #define E_Generic_Function               64
99    #define E_Generic_Procedure              65
100    #define E_Generic_Package                66
101    #define E_Label                          67
102    #define E_Loop                           68
103    #define E_Package                        69
104    #define E_Package_Body                   70
105    #define E_Protected_Object               71
106    #define E_Protected_Body                 72
107    #define E_Task_Body                      73
108    #define E_Subprogram_Body                74
109
110    SUBTYPE (Access_Kind, Entity_Kind, 
111       E_Access_Type, E_Anonymous_Access_Type)
112
113    SUBTYPE (Array_Kind, Entity_Kind, 
114       E_Array_Type, E_String_Literal_Subtype)
115
116    SUBTYPE (Class_Wide_Kind, Entity_Kind, 
117       E_Class_Wide_Type, E_Class_Wide_Subtype)
118
119    SUBTYPE (Composite_Kind, Entity_Kind, 
120       E_Array_Type, E_Protected_Subtype)
121
122    SUBTYPE (Concurrent_Kind, Entity_Kind, 
123       E_Task_Type, E_Protected_Subtype)
124
125    SUBTYPE (Concurrent_Body_Kind, Entity_Kind, 
126       E_Protected_Body, E_Task_Body)
127
128    SUBTYPE (Decimal_Fixed_Point_Kind, Entity_Kind, 
129       E_Decimal_Fixed_Point_Type, E_Decimal_Fixed_Point_Subtype)
130
131    SUBTYPE (Digits_Kind, Entity_Kind, 
132       E_Decimal_Fixed_Point_Type, E_Floating_Point_Subtype)
133
134    SUBTYPE (Discrete_Kind, Entity_Kind, 
135       E_Enumeration_Type, E_Modular_Integer_Subtype)
136
137    SUBTYPE (Discrete_Or_Fixed_Point_Kind, Entity_Kind, 
138       E_Enumeration_Type, E_Decimal_Fixed_Point_Subtype)
139
140    SUBTYPE (Elementary_Kind, Entity_Kind, 
141       E_Enumeration_Type, E_Anonymous_Access_Type)
142
143    SUBTYPE (Enumeration_Kind, Entity_Kind, 
144       E_Enumeration_Type, E_Enumeration_Subtype)
145
146    SUBTYPE (Entry_Kind, Entity_Kind, 
147       E_Entry, E_Entry_Family)
148
149    SUBTYPE (Fixed_Point_Kind, Entity_Kind, 
150       E_Ordinary_Fixed_Point_Type, E_Decimal_Fixed_Point_Subtype)
151
152    SUBTYPE (Float_Kind, Entity_Kind, 
153       E_Floating_Point_Type, E_Floating_Point_Subtype)
154
155    SUBTYPE (Formal_Kind, Entity_Kind, 
156       E_In_Parameter, E_In_Out_Parameter)
157
158    SUBTYPE (Generic_Subprogram_Kind, Entity_Kind, 
159       E_Generic_Function, E_Generic_Procedure)
160
161    SUBTYPE (Generic_Unit_Kind, Entity_Kind, 
162       E_Generic_Function, E_Generic_Package)
163
164    SUBTYPE (Incomplete_Or_Private_Kind, Entity_Kind, 
165       E_Record_Type_With_Private, E_Incomplete_Type)
166
167    SUBTYPE (Integer_Kind, Entity_Kind, 
168       E_Signed_Integer_Type, E_Modular_Integer_Subtype)
169
170    SUBTYPE (Modular_Integer_Kind, Entity_Kind, 
171       E_Modular_Integer_Type, E_Modular_Integer_Subtype)
172
173    SUBTYPE (Named_Kind, Entity_Kind, 
174       E_Named_Integer, E_Named_Real)
175
176    SUBTYPE (Numeric_Kind, Entity_Kind, 
177       E_Signed_Integer_Type, E_Floating_Point_Subtype)
178
179    SUBTYPE (Object_Kind, Entity_Kind, 
180       E_Variable, E_Generic_In_Parameter)
181
182    SUBTYPE (Ordinary_Fixed_Point_Kind, Entity_Kind, 
183       E_Ordinary_Fixed_Point_Type, E_Ordinary_Fixed_Point_Subtype)
184
185    SUBTYPE (Overloadable_Kind, Entity_Kind, 
186       E_Enumeration_Literal, E_Entry)
187
188    SUBTYPE (Private_Kind, Entity_Kind, 
189       E_Record_Type_With_Private, E_Limited_Private_Subtype)
190
191    SUBTYPE (Protected_Kind, Entity_Kind, 
192       E_Protected_Type, E_Protected_Subtype)
193
194    SUBTYPE (Real_Kind, Entity_Kind, 
195       E_Ordinary_Fixed_Point_Type, E_Floating_Point_Subtype)
196
197    SUBTYPE (Record_Kind, Entity_Kind, 
198       E_Class_Wide_Type, E_Record_Subtype_With_Private)
199
200    SUBTYPE (Scalar_Kind, Entity_Kind, 
201       E_Enumeration_Type, E_Floating_Point_Subtype)
202
203    SUBTYPE (String_Kind, Entity_Kind, 
204       E_String_Type, E_String_Literal_Subtype)
205
206    SUBTYPE (Subprogram_Kind, Entity_Kind, 
207       E_Function, E_Procedure)
208
209    SUBTYPE (Signed_Integer_Kind, Entity_Kind, 
210       E_Signed_Integer_Type, E_Signed_Integer_Subtype)
211
212    SUBTYPE (Task_Kind, Entity_Kind, 
213       E_Task_Type, E_Task_Subtype)
214
215    SUBTYPE (Type_Kind, Entity_Kind, 
216       E_Enumeration_Type, E_Subprogram_Type)
217
218    typedef char Component_Alignment_Kind;
219       #define Calign_Default           0
220       #define Calign_Component_Size    1
221       #define Calign_Component_Size_4  2
222       #define Calign_Storage_Unit      3
223
224    typedef Boolean B;
225    typedef Component_Alignment_Kind C;
226    typedef Entity_Id E;
227    typedef Mechanism_Type M;
228    typedef Node_Id N;
229    typedef Uint U;
230    typedef Ureal R;
231    typedef Elist_Id L;
232    typedef List_Id S;
233
234    INLINE L Accept_Address                     (E Id);
235    INLINE E Access_Disp_Table                  (E Id);
236    INLINE E Actual_Subtype                     (E Id);
237    INLINE B Address_Taken                      (E Id);
238    INLINE E Alias                              (E Id);
239    INLINE U Alignment                          (E Id);
240    INLINE E Associated_Final_Chain             (E Id);
241    INLINE E Associated_Formal_Package          (E Id);
242    INLINE N Associated_Node_For_Itype          (E Id);
243    INLINE E Associated_Storage_Pool            (E Id);
244    INLINE N Barrier_Function                   (E Id);
245    INLINE N Block_Node                         (E Id);
246    INLINE E Body_Entity                        (E Id);
247    INLINE B Body_Needed_For_SAL                (E Id);
248    INLINE E CR_Discriminant                    (E Id);
249    INLINE B C_Pass_By_Copy                     (E Id);
250    INLINE B Can_Never_Be_Null                  (E Id);
251    INLINE B Checks_May_Be_Suppressed           (E Id);
252    INLINE E Class_Wide_Type                    (E Id);
253    INLINE E Cloned_Subtype                     (E Id);
254
255    #define Component_Alignment einfo__component_alignment
256    C Component_Alignment                (E Id);
257
258    INLINE N Component_Clause                   (E Id);
259    INLINE U Component_Bit_Offset               (E Id);
260    INLINE U Component_Size                     (E Id);
261    INLINE E Component_Type                     (E Id);
262    INLINE E Corresponding_Concurrent_Type      (E Id);
263    INLINE E Corresponding_Discriminant         (E Id);
264    INLINE E Corresponding_Equality             (E Id);
265    INLINE E Corresponding_Record_Type          (E Id);
266    INLINE E Corresponding_Remote_Type          (E Id);
267    INLINE N Current_Value                      (E Id);
268    INLINE B Debug_Info_Off                     (E Id);
269    INLINE E Debug_Renaming_Link                (E Id);
270    INLINE E DTC_Entity                         (E Id);
271    INLINE U DT_Entry_Count                     (E Id);
272    INLINE U DT_Position                        (E Id);
273    INLINE E Default_Expr_Function              (E Id);
274    INLINE B Default_Expressions_Processed      (E Id);
275    INLINE N Default_Value                      (E Id);
276    INLINE B Delay_Cleanups                     (E Id);
277    INLINE B Delay_Subprogram_Descriptors       (E Id);
278    INLINE R Delta_Value                        (E Id);
279    INLINE L Dependent_Instances                (E Id);
280    INLINE B Depends_On_Private                 (E Id);
281    INLINE U Digits_Value                       (E Id);
282    INLINE E Directly_Designated_Type           (E Id);
283    INLINE B Discard_Names                      (E Id);
284    INLINE E Discriminal                        (E Id);
285    INLINE E Discriminal_Link                   (E Id);
286    INLINE E Discriminant_Checking_Func         (E Id);
287    INLINE L Discriminant_Constraint            (E Id);
288    INLINE N Discriminant_Default_Value         (E Id);
289    INLINE U Discriminant_Number                (E Id);
290    INLINE B Elaborate_All_Desirable            (E Id);
291    INLINE E Elaboration_Entity                 (E Id);
292    INLINE B Elaboration_Entity_Required        (E Id);
293    INLINE E Enclosing_Scope                    (E Id);
294    INLINE B Entry_Accepted                     (E Id);
295    INLINE E Entry_Bodies_Array                 (E Id);
296    INLINE E Entry_Cancel_Parameter             (E Id);
297    INLINE E Entry_Component                    (E Id);
298    INLINE E Entry_Formal                       (E Id);
299    INLINE E Entry_Index_Constant               (E Id);
300    INLINE E Entry_Index_Type                   (E Id);
301    INLINE E Entry_Parameters_Type              (E Id);
302    INLINE E Enum_Pos_To_Rep                    (E Id);
303    INLINE U Enumeration_Pos                    (E Id);
304    INLINE U Enumeration_Rep                    (E Id);
305    INLINE N Enumeration_Rep_Expr               (E Id);
306    INLINE E Equivalent_Type                    (E Id);
307    INLINE U Esize                              (E Id);
308    INLINE U Exception_Code                     (E Id);
309    INLINE E Extra_Accessibility                (E Id);
310    INLINE E Extra_Constrained                  (E Id);
311    INLINE E Extra_Formal                       (E Id);
312    INLINE E Finalization_Chain_Entity          (E Id);
313
314    #define Finalize_Storage_Only einfo__finalize_storage_only
315    B Finalize_Storage_Only              (E Id);
316
317    INLINE E First_Entity                       (E Id);
318    INLINE N First_Index                        (E Id);
319    INLINE E First_Literal                      (E Id);
320    INLINE E First_Optional_Parameter           (E Id);
321    INLINE E First_Private_Entity               (E Id);
322    INLINE N First_Rep_Item                     (E Id);
323    INLINE N Freeze_Node                        (E Id);
324    INLINE B From_With_Type                     (E Id);
325    INLINE E Full_View                          (E Id);
326    INLINE B Function_Returns_With_DSP          (E Id);
327    INLINE E Generic_Homonym                    (E Id);
328    INLINE L Generic_Renamings                  (E Id);
329    INLINE S Handler_Records                    (E Id);
330    INLINE B Has_Aliased_Components             (E Id);
331    INLINE B Has_Alignment_Clause               (E Id);
332    INLINE B Has_All_Calls_Remote               (E Id);
333    INLINE B Has_Atomic_Components              (E Id);
334    INLINE B Has_Biased_Representation          (E Id);
335    INLINE B Has_Completion                     (E Id);
336    INLINE B Has_Completion_In_Body             (E Id);
337    INLINE B Has_Complex_Representation         (E Id);
338    INLINE B Has_Component_Size_Clause          (E Id);
339    INLINE B Has_Contiguous_Rep                 (E Id);
340    INLINE B Has_Controlled_Component           (E Id);
341    INLINE B Has_Controlling_Result             (E Id);
342    INLINE B Has_Convention_Pragma              (E Id);
343    INLINE B Has_Delayed_Freeze                 (E Id);
344    INLINE B Has_Discriminants                  (E Id);
345    INLINE B Has_Enumeration_Rep_Clause         (E Id);
346    INLINE B Has_Exit                           (E Id);
347    INLINE B Has_External_Tag_Rep_Clause        (E Id);
348    INLINE B Has_Fully_Qualified_Name           (E Id);
349    INLINE B Has_Gigi_Rep_Item                  (E Id);
350    INLINE B Has_Homonym                        (E Id);
351
352    #define Has_Interrupt_Handler einfo__has_interrupt_handler
353    B Has_Interrupt_Handler              (E Id);
354
355    INLINE B Has_Machine_Radix_Clause           (E Id);
356    INLINE B Has_Master_Entity                  (E Id);
357    INLINE B Has_Missing_Return                 (E Id);
358    INLINE B Has_Nested_Block_With_Handler      (E Id);
359    INLINE B Has_Forward_Instantiation          (E Id);
360    INLINE B Has_Non_Standard_Rep               (E Id);
361    INLINE B Has_Object_Size_Clause             (E Id);
362    INLINE B Has_Per_Object_Constraint          (E Id);
363    INLINE B Has_Pragma_Controlled              (E Id);
364    INLINE B Has_Pragma_Elaborate_Body          (E Id);
365    INLINE B Has_Pragma_Inline                  (E Id);
366    INLINE B Has_Pragma_Pack                    (E Id);
367    INLINE B Has_Pragma_Pure_Function           (E Id);
368    INLINE B Has_Pragma_Unreferenced            (E Id);
369    INLINE B Has_Primitive_Operations           (E Id);
370    INLINE B Has_Qualified_Name                 (E Id);
371    INLINE B Has_Record_Rep_Clause              (E Id);
372    INLINE B Has_Recursive_Call                 (E Id);
373    INLINE B Has_Size_Clause                    (E Id);
374    INLINE B Has_Small_Clause                   (E Id);
375    INLINE B Has_Specified_Layout               (E Id);
376    INLINE B Has_Storage_Size_Clause            (E Id);
377    INLINE B Has_Subprogram_Descriptor          (E Id);
378    INLINE B Has_Task                           (E Id);
379    INLINE B Has_Unchecked_Union                (E Id);
380    INLINE B Has_Unknown_Discriminants          (E Id);
381    INLINE B Has_Volatile_Components            (E Id);
382    INLINE B Has_Xref_Entry                     (E Id);
383    INLINE E Hiding_Loop_Variable               (E Id);
384    INLINE E Homonym                            (E Id);
385    INLINE B In_Package_Body                    (E Id);
386    INLINE B In_Private_Part                    (E Id);
387    INLINE B In_Use                             (E Id);
388    INLINE L Inner_Instances                    (E Id);
389    INLINE N Interface_Name                     (E Id);
390    INLINE B Is_AST_Entry                       (E Id);
391    INLINE B Is_Abstract                        (E Id);
392    INLINE B Is_Access_Constant                 (E Id);
393    INLINE B Is_Aliased                         (E Id);
394    INLINE B Is_Asynchronous                    (E Id);
395    INLINE B Is_Atomic                          (E Id);
396    INLINE B Is_Bit_Packed_Array                (E Id);
397    INLINE B Is_CPP_Class                       (E Id);
398    INLINE B Is_Called                          (E Id);
399    INLINE B Is_Character_Type                  (E Id);
400    INLINE B Is_Child_Unit                      (E Id);
401    INLINE B Is_Class_Wide_Equivalent_Type      (E Id);
402    INLINE B Is_Compilation_Unit                (E Id);
403    INLINE B Is_Completely_Hidden               (E Id);
404    INLINE B Is_Constr_Subt_For_UN_Aliased      (E Id);
405    INLINE B Is_Constr_Subt_For_U_Nominal       (E Id);
406    INLINE B Is_Constrained                     (E Id);
407    INLINE B Is_Constructor                     (E Id);
408    INLINE B Is_Controlled                      (E Id);
409    INLINE B Is_Controlling_Formal              (E Id);
410    INLINE B Is_Discrim_SO_Function             (E Id);
411    INLINE B Is_Dispatching_Operation           (E Id);
412    INLINE B Is_Eliminated                      (E Id);
413    INLINE B Is_Entry_Formal                    (E Id);
414    INLINE B Is_Exported                        (E Id);
415    INLINE B Is_First_Subtype                   (E Id);
416    INLINE B Is_For_Access_Subtype              (E Id);
417    INLINE B Is_Frozen                          (E Id);
418    INLINE B Is_Generic_Instance                (E Id);
419    INLINE B Is_Hidden                          (E Id);
420    INLINE B Is_Hidden_Open_Scope               (E Id);
421    INLINE B Is_Immediately_Visible             (E Id);
422    INLINE B Is_Imported                        (E Id);
423    INLINE B Is_Inlined                         (E Id);
424    INLINE B Is_Instantiated                    (E Id);
425    INLINE B Is_Internal                        (E Id);
426    INLINE B Is_Interrupt_Handler               (E Id);
427    INLINE B Is_Intrinsic_Subprogram            (E Id);
428    INLINE B Is_Itype                           (E Id);
429    INLINE B Is_Known_Non_Null                  (E Id);
430    INLINE B Is_Known_Valid                     (E Id);
431    INLINE B Is_Limited_Composite               (E Id);
432    INLINE B Is_Machine_Code_Subprogram         (E Id);
433    INLINE B Is_Non_Static_Subtype              (E Id);
434    INLINE B Is_Null_Init_Proc                  (E Id);
435    INLINE B Is_Optional_Parameter              (E Id);
436    INLINE B Is_Package_Body_Entity             (E Id);
437    INLINE B Is_Packed                          (E Id);
438    INLINE B Is_Packed_Array_Type               (E Id);
439    INLINE B Is_Potentially_Use_Visible         (E Id);
440    INLINE B Is_Preelaborated                   (E Id);
441    INLINE B Is_Private_Composite               (E Id);
442    INLINE B Is_Private_Descendant              (E Id);
443    INLINE B Is_Psected                         (E Id);
444    INLINE B Is_Public                          (E Id);
445    INLINE B Is_Pure                            (E Id);
446    INLINE B Is_Remote_Call_Interface           (E Id);
447    INLINE B Is_Remote_Types                    (E Id);
448    INLINE B Is_Renaming_Of_Object              (E Id);
449    INLINE B Is_Shared_Passive                  (E Id);
450    INLINE B Is_Statically_Allocated            (E Id);
451    INLINE B Is_Tag                             (E Id);
452    INLINE B Is_Tagged_Type                     (E Id);
453    INLINE B Is_Thread_Body                     (E Id);
454    INLINE B Is_True_Constant                   (E Id);
455    INLINE B Is_Unchecked_Union                 (E Id);
456    INLINE B Is_Unsigned_Type                   (E Id);
457    INLINE B Is_VMS_Exception                   (E Id);
458    INLINE B Is_Valued_Procedure                (E Id);
459    INLINE B Is_Visible_Child_Unit              (E Id);
460
461    #define Is_Volatile einfo__is_volatile
462    B Is_Volatile                        (E Id);
463
464    #define Is_Wrapper_Package einfo__is_wrapper_package
465    B Is_Wrapper_Package                 (E Id);
466
467    INLINE B Kill_Elaboration_Checks            (E Id);
468    INLINE B Kill_Range_Checks                  (E Id);
469    INLINE B Kill_Tag_Checks                    (E Id);
470    INLINE E Last_Entity                        (E Id);
471    INLINE L Limited_Views                      (E Id);
472    INLINE E Lit_Indexes                        (E Id);
473    INLINE E Lit_Strings                        (E Id);
474    INLINE B Machine_Radix_10                   (E Id);
475    INLINE E Master_Id                          (E Id);
476    INLINE B Materialize_Entity                 (E Id);
477    INLINE M Mechanism                          (E Id);
478    INLINE U Modulus                            (E Id);
479    INLINE B Needs_Debug_Info                   (E Id);
480    INLINE B Needs_No_Actuals                   (E Id);
481    INLINE B Never_Set_In_Source                (E Id);
482    INLINE E Next_Inlined_Subprogram            (E Id);
483    INLINE B No_Pool_Assigned                   (E Id);
484    INLINE B No_Return                          (E Id);
485    INLINE B Non_Binary_Modulus                 (E Id);
486    INLINE E Non_Limited_View                   (E Id);
487    INLINE B Nonzero_Is_True                    (E Id);
488    INLINE U Normalized_First_Bit               (E Id);
489    INLINE U Normalized_Position                (E Id);
490    INLINE U Normalized_Position_Max            (E Id);
491    INLINE E Object_Ref                         (E Id);
492    INLINE E Original_Array_Type                (E Id);
493    INLINE E Original_Record_Component          (E Id);
494    INLINE E Packed_Array_Type                  (E Id);
495    INLINE E Parent_Subtype                     (E Id);
496    INLINE L Primitive_Operations               (E Id);
497    INLINE E Prival                             (E Id);
498    INLINE L Privals_Chain                      (E Id);
499    INLINE L Private_Dependents                 (E Id);
500    INLINE N Private_View                       (E Id);
501    INLINE E Protected_Body_Subprogram          (E Id);
502    INLINE E Protected_Formal                   (E Id);
503    INLINE E Protected_Operation                (E Id);
504    INLINE U RM_Size                            (E Id);
505    INLINE B Reachable                          (E Id);
506    INLINE B Referenced                         (E Id);
507    INLINE B Referenced_As_LHS                  (E Id);
508    INLINE N Referenced_Object                  (E Id);
509    INLINE N Register_Exception_Call            (E Id);
510    INLINE E Related_Array_Object               (E Id);
511    INLINE E Related_Instance                   (E Id);
512    INLINE N Renamed_Entity                     (E Id);
513    INLINE N Renamed_Object                     (E Id);
514    INLINE U Renaming_Map                       (E Id);
515    INLINE B Return_Present                     (E Id);
516    INLINE B Returns_By_Ref                     (E Id);
517    INLINE B Reverse_Bit_Order                  (E Id);
518    INLINE N Scalar_Range                       (E Id);
519    INLINE U Scale_Value                        (E Id);
520    INLINE U Scope_Depth_Value                  (E Id);
521    INLINE B Sec_Stack_Needed_For_Return        (E Id);
522    INLINE S Shadow_Entities                    (E Id);
523    INLINE E Shared_Var_Assign_Proc             (E Id);
524    INLINE E Shared_Var_Read_Proc               (E Id);
525    INLINE N Size_Check_Code                    (E Id);
526    INLINE B Size_Known_At_Compile_Time         (E Id);
527    INLINE B Size_Depends_On_Discriminant       (E Id);
528    INLINE R Small_Value                        (E Id);
529    INLINE E Spec_Entity                        (E Id);
530    INLINE E Storage_Size_Variable              (E Id);
531    INLINE L Stored_Constraint                  (E Id);
532    INLINE B Strict_Alignment                   (E Id);
533    INLINE U String_Literal_Length              (E Id);
534    INLINE N String_Literal_Low_Bound           (E Id);
535    INLINE B Suppress_Elaboration_Warnings      (E Id);
536    INLINE B Suppress_Init_Proc                 (E Id);
537    INLINE B Suppress_Style_Checks              (E Id);
538    INLINE B Treat_As_Volatile                  (E Id);
539    INLINE E Underlying_Full_View               (E Id);
540    INLINE N Unset_Reference                    (E Id);
541    INLINE B Uses_Sec_Stack                     (E Id);
542    INLINE B Vax_Float                          (E Id);
543    INLINE B Warnings_Off                       (E Id);
544    INLINE B Is_Access_Type                     (E Id);
545    INLINE B Is_Array_Type                      (E Id);
546    INLINE B Is_Class_Wide_Type                 (E Id);
547    INLINE B Is_Composite_Type                  (E Id);
548    INLINE B Is_Concurrent_Body                 (E Id);
549    INLINE B Is_Concurrent_Record_Type          (E Id);
550    INLINE B Is_Concurrent_Type                 (E Id);
551    INLINE B Is_Decimal_Fixed_Point_Type        (E Id);
552    INLINE B Is_Digits_Type                     (E Id);
553    INLINE B Is_Discrete_Or_Fixed_Point_Type    (E Id);
554    INLINE B Is_Discrete_Type                   (E Id);
555    INLINE B Is_Elementary_Type                 (E Id);
556    INLINE B Is_Entry                           (E Id);
557    INLINE B Is_Enumeration_Type                (E Id);
558    INLINE B Is_Fixed_Point_Type                (E Id);
559    INLINE B Is_Floating_Point_Type             (E Id);
560    INLINE B Is_Formal                          (E Id);
561    INLINE B Is_Formal_Subprogram               (E Id);
562    INLINE B Is_Generic_Actual_Type             (E Id);
563    INLINE B Is_Generic_Unit                    (E Id);
564    INLINE B Is_Generic_Type                    (E Id);
565    INLINE B Is_Generic_Subprogram              (E Id);
566    INLINE B Is_Incomplete_Or_Private_Type      (E Id);
567    INLINE B Is_Integer_Type                    (E Id);
568    INLINE B Is_Limited_Record                  (E Id);
569    INLINE B Is_Modular_Integer_Type            (E Id);
570    INLINE B Is_Named_Number                    (E Id);
571    INLINE B Is_Numeric_Type                    (E Id);
572    INLINE B Is_Object                          (E Id);
573    INLINE B Is_Ordinary_Fixed_Point_Type       (E Id);
574    INLINE B Is_Overloadable                    (E Id);
575    INLINE B Is_Overriding_Operation            (E Id);
576    INLINE B Is_Private_Type                    (E Id);
577    INLINE B Is_Protected_Type                  (E Id);
578    INLINE B Is_Real_Type                       (E Id);
579    INLINE B Is_Record_Type                     (E Id);
580    INLINE B Is_Scalar_Type                     (E Id);
581    INLINE B Is_Signed_Integer_Type             (E Id);
582    INLINE B Is_Subprogram                      (E Id);
583    INLINE B Is_Task_Type                       (E Id);
584    INLINE B Is_Type                            (E Id);
585
586    #define Address_Clause einfo__address_clause
587    N Address_Clause                     (E Id);
588
589    #define Alignment_Clause einfo__alignment_clause
590    N Alignment_Clause                   (E Id);
591
592    #define Ancestor_Subtype einfo__ancestor_subtype
593    E Ancestor_Subtype                   (E Id);
594
595    #define Base_Type einfo__base_type
596    E Base_Type                          (E Id);
597
598    #define Constant_Value einfo__constant_value
599    N Constant_Value                     (E Id);
600
601    #define Declaration_Node einfo__declaration_node
602    N Declaration_Node                   (E Id);
603
604    #define Designated_Type einfo__designated_type
605    E Designated_Type                    (E Id);
606
607    #define Enclosing_Dynamic_Scope einfo__enclosing_dynamic_scope
608    E Enclosing_Dynamic_Scope            (E Id);
609
610    #define First_Component einfo__first_component
611    E First_Component                    (E Id);
612
613    #define First_Discriminant einfo__first_discriminant
614    E First_Discriminant                 (E Id);
615
616    #define First_Formal einfo__first_formal
617    E First_Formal                       (E Id);
618
619    #define First_Stored_Discriminant einfo__first_stored_discriminant
620    E First_Stored_Discriminant          (E Id);
621
622    #define First_Subtype einfo__first_subtype
623    E First_Subtype                      (E Id);
624
625    #define Has_Attach_Handler einfo__has_attach_handler
626    B Has_Attach_Handler                 (E Id);
627
628    #define Has_Entries einfo__has_entries
629    B Has_Entries                        (E Id);
630
631    #define Has_Foreign_Convention einfo__has_foreign_convention
632    B Has_Foreign_Convention             (E Id);
633
634    #define Has_Private_Ancestor einfo__has_private_ancestor
635    B Has_Private_Ancestor               (E Id);
636
637    INLINE B Has_Private_Declaration            (E Id);
638
639    #define Implementation_Base_Type einfo__implementation_base_type
640    E Implementation_Base_Type           (E Id);
641
642    #define Is_Always_Inlined einfo__is_always_inlined
643    B Is_Always_Inlined                  (E Id);
644
645    #define Is_Boolean_Type einfo__is_boolean_type
646    B Is_Boolean_Type                    (E Id);
647
648    #define Is_By_Copy_Type einfo__is_by_copy_type
649    B Is_By_Copy_Type                    (E Id);
650
651    #define Is_By_Reference_Type einfo__is_by_reference_type
652    B Is_By_Reference_Type               (E Id);
653
654    #define Is_Derived_Type einfo__is_derived_type
655    B Is_Derived_Type                    (E Id);
656
657    #define Is_Dynamic_Scope einfo__is_dynamic_scope
658    B Is_Dynamic_Scope                   (E Id);
659
660    #define Is_Indefinite_Subtype einfo__is_indefinite_subtype
661    B Is_Indefinite_Subtype              (E Id);
662
663    #define Is_Limited_Type einfo__is_limited_type
664    B Is_Limited_Type                    (E Id);
665
666    #define Is_Package einfo__is_package
667    B Is_Package                         (E Id);
668
669    #define Is_Protected_Private einfo__is_protected_private
670    B Is_Protected_Private               (E Id);
671
672    #define Is_Protected_Record_Type einfo__is_protected_record_type
673    B Is_Protected_Record_Type           (E Id);
674
675    #define Is_Return_By_Reference_Type einfo__is_return_by_reference_type
676    B Is_Return_By_Reference_Type        (E Id);
677
678    #define Is_String_Type einfo__is_string_type
679    B Is_String_Type                     (E Id);
680
681    #define Is_Task_Record_Type einfo__is_task_record_type
682    B Is_Task_Record_Type                (E Id);
683
684    #define Next_Component einfo__next_component
685    E Next_Component                     (E Id);
686
687    #define Next_Discriminant einfo__next_discriminant
688    E Next_Discriminant                  (E Id);
689
690    #define Next_Formal einfo__next_formal
691    E Next_Formal                        (E Id);
692
693    #define Next_Formal_With_Extras einfo__next_formal_with_extras
694    E Next_Formal_With_Extras            (E Id);
695
696    INLINE E Next_Literal                       (E Id);
697
698    #define Next_Stored_Discriminant einfo__next_stored_discriminant
699    E Next_Stored_Discriminant           (E Id);
700
701    #define Number_Dimensions einfo__number_dimensions
702    Pos Number_Dimensions                  (E Id);
703
704    #define Number_Discriminants einfo__number_discriminants
705    Pos Number_Discriminants               (E Id);
706
707    #define Number_Entries einfo__number_entries
708    Nat Number_Entries                     (E Id);
709
710    #define Number_Formals einfo__number_formals
711    Pos Number_Formals                     (E Id);
712
713    INLINE Formal_Kind Parameter_Mode                     (E Id);
714
715    #define Root_Type einfo__root_type
716    E Root_Type                          (E Id);
717
718    #define Scope_Depth_Set einfo__scope_depth_set
719    B Scope_Depth_Set                    (E Id);
720
721    #define Size_Clause einfo__size_clause
722    N Size_Clause                        (E Id);
723
724    #define Tag_Component einfo__tag_component
725    E Tag_Component                      (E Id);
726
727    #define Type_High_Bound einfo__type_high_bound
728    N Type_High_Bound                    (E Id);
729
730    #define Type_Low_Bound einfo__type_low_bound
731    N Type_Low_Bound                     (E Id);
732
733    #define Underlying_Type einfo__underlying_type
734    E Underlying_Type                    (E Id);
735
736    #define Known_Alignment einfo__known_alignment
737    B Known_Alignment                       (Entity_Id E);
738
739    #define Known_Component_Bit_Offset einfo__known_component_bit_offset
740    B Known_Component_Bit_Offset            (Entity_Id E);
741
742    #define Known_Component_Size einfo__known_component_size
743    B Known_Component_Size                  (Entity_Id E);
744
745    #define Known_Esize einfo__known_esize
746    B Known_Esize                           (Entity_Id E);
747
748    #define Known_Normalized_First_Bit einfo__known_normalized_first_bit
749    B Known_Normalized_First_Bit            (Entity_Id E);
750
751    #define Known_Normalized_Position einfo__known_normalized_position
752    B Known_Normalized_Position             (Entity_Id E);
753
754    #define Known_Normalized_Position_Max einfo__known_normalized_position_max
755    B Known_Normalized_Position_Max         (Entity_Id E);
756
757    #define Known_RM_Size einfo__known_rm_size
758    B Known_RM_Size                         (Entity_Id E);
759
760    #define Known_Static_Component_Bit_Offset einfo__known_static_component_bit_offset
761    B Known_Static_Component_Bit_Offset     (Entity_Id E);
762
763    #define Known_Static_Component_Size einfo__known_static_component_size
764    B Known_Static_Component_Size           (Entity_Id E);
765
766    #define Known_Static_Esize einfo__known_static_esize
767    B Known_Static_Esize                    (Entity_Id E);
768
769    #define Known_Static_Normalized_First_Bit einfo__known_static_normalized_first_bit
770    B Known_Static_Normalized_First_Bit     (Entity_Id E);
771
772    #define Known_Static_Normalized_Position einfo__known_static_normalized_position
773    B Known_Static_Normalized_Position      (Entity_Id E);
774
775    #define Known_Static_Normalized_Position_Max einfo__known_static_normalized_position_max
776    B Known_Static_Normalized_Position_Max  (Entity_Id E);
777
778    #define Known_Static_RM_Size einfo__known_static_rm_size
779    B Known_Static_RM_Size                  (Entity_Id E);
780
781    #define Unknown_Alignment einfo__unknown_alignment
782    B Unknown_Alignment                     (Entity_Id E);
783
784    #define Unknown_Component_Bit_Offset einfo__unknown_component_bit_offset
785    B Unknown_Component_Bit_Offset          (Entity_Id E);
786
787    #define Unknown_Component_Size einfo__unknown_component_size
788    B Unknown_Component_Size                (Entity_Id E);
789
790    #define Unknown_Esize einfo__unknown_esize
791    B Unknown_Esize                         (Entity_Id E);
792
793    #define Unknown_Normalized_First_Bit einfo__unknown_normalized_first_bit
794    B Unknown_Normalized_First_Bit          (Entity_Id E);
795
796    #define Unknown_Normalized_Position einfo__unknown_normalized_position
797    B Unknown_Normalized_Position           (Entity_Id E);
798
799    #define Unknown_Normalized_Position_Max einfo__unknown_normalized_position_max
800    B Unknown_Normalized_Position_Max       (Entity_Id E);
801
802    #define Unknown_RM_Size einfo__unknown_rm_size
803    B Unknown_RM_Size                       (Entity_Id E);
804
805
806    INLINE L Accept_Address (E Id)
807       { return Elist21 (Id); }
808
809    INLINE E Access_Disp_Table (E Id)
810       { return Node16 (Implementation_Base_Type (Id)); }
811
812    INLINE E Actual_Subtype (E Id)
813       { return Node17 (Id); }
814
815    INLINE B Address_Taken (E Id)
816       { return Flag104 (Id); }
817
818    INLINE E Alias (E Id)
819       { return Node18 (Id); }
820
821    INLINE U Alignment (E Id)
822       { return Uint14 (Id); }
823
824    INLINE E Associated_Final_Chain (E Id)
825       { return Node23 (Id); }
826
827    INLINE E Associated_Formal_Package (E Id)
828       { return Node12 (Id); }
829
830    INLINE N Associated_Node_For_Itype (E Id)
831       { return Node8 (Id); }
832
833    INLINE E Associated_Storage_Pool (E Id)
834       { return Node22 (Root_Type (Id)); }
835
836    INLINE N Barrier_Function (E Id)
837       { return Node12 (Id); }
838
839    INLINE N Block_Node (E Id)
840       { return Node11 (Id); }
841
842    INLINE E Body_Entity (E Id)
843       { return Node19 (Id); }
844
845    INLINE B Body_Needed_For_SAL (E Id)
846       { return Flag40 (Id); }
847
848    INLINE B C_Pass_By_Copy (E Id)
849       { return Flag125 (Implementation_Base_Type (Id)); }
850
851    INLINE B Can_Never_Be_Null (E Id)
852       { return Flag38 (Id); }
853
854    INLINE B Checks_May_Be_Suppressed (E Id)
855       { return Flag31 (Id); }
856
857    INLINE E Class_Wide_Type (E Id)
858       { return Node9 (Id); }
859
860    INLINE E Cloned_Subtype (E Id)
861       { return Node16 (Id); }
862
863    INLINE U Component_Bit_Offset (E Id)
864       { return Uint11 (Id); }
865
866    INLINE N Component_Clause (E Id)
867       { return Node13 (Id); }
868
869    INLINE U Component_Size (E Id)
870       { return Uint22 (Implementation_Base_Type (Id)); }
871
872    INLINE E Component_Type (E Id)
873       { return Node20 (Implementation_Base_Type (Id)); }
874
875    INLINE E Corresponding_Concurrent_Type (E Id)
876       { return Node18 (Id); }
877
878    INLINE E Corresponding_Discriminant (E Id)
879       { return Node19 (Id); }
880
881    INLINE E Corresponding_Equality (E Id)
882       { return Node13 (Id); }
883
884    INLINE E Corresponding_Record_Type (E Id)
885       { return Node18 (Id); }
886
887    INLINE E Corresponding_Remote_Type (E Id)
888       { return Node22 (Id); }
889
890    INLINE N Current_Value (E Id)
891       { return Node9 (Id); }
892
893    INLINE E CR_Discriminant (E Id)
894       { return Node23 (Id); }
895
896    INLINE B Debug_Info_Off (E Id)
897       { return Flag166 (Id); }
898
899    INLINE E Debug_Renaming_Link (E Id)
900       { return Node13 (Id); }
901
902    INLINE E Default_Expr_Function (E Id)
903       { return Node21 (Id); }
904
905    INLINE B Default_Expressions_Processed (E Id)
906       { return Flag108 (Id); }
907
908    INLINE N Default_Value (E Id)
909       { return Node20 (Id); }
910
911    INLINE B Delay_Cleanups (E Id)
912       { return Flag114 (Id); }
913
914    INLINE B Delay_Subprogram_Descriptors (E Id)
915       { return Flag50 (Id); }
916
917    INLINE R Delta_Value (E Id)
918       { return Ureal18 (Id); }
919
920    INLINE L Dependent_Instances (E Id)
921       { return Elist8 (Id); }
922
923    INLINE B Depends_On_Private (E Id)
924       { return Flag14 (Id); }
925
926    INLINE U Digits_Value (E Id)
927       { return Uint17 (Id); }
928
929    INLINE E Directly_Designated_Type (E Id)
930       { return Node20 (Id); }
931
932    INLINE B Discard_Names (E Id)
933       { return Flag88 (Id); }
934
935    INLINE E Discriminal (E Id)
936       { return Node17 (Id); }
937
938    INLINE N Discriminal_Link (E Id)
939       { return Node10 (Id); }
940
941    INLINE E Discriminant_Checking_Func (E Id)
942       { return Node20 (Id); }
943
944    INLINE L Discriminant_Constraint (E Id)
945       { return Elist21 (Id); }
946
947    INLINE N Discriminant_Default_Value (E Id)
948       { return Node20 (Id); }
949
950    INLINE U Discriminant_Number (E Id)
951       { return Uint15 (Id); }
952
953    INLINE U DT_Entry_Count (E Id)
954       { return Uint15 (Id); }
955
956    INLINE U DT_Position (E Id)
957       { return Uint15 (Id); }
958
959    INLINE E DTC_Entity (E Id)
960       { return Node16 (Id); }
961
962    INLINE B Elaborate_All_Desirable (E Id)
963       { return Flag146 (Id); }
964
965    INLINE E Elaboration_Entity (E Id)
966       { return Node13 (Id); }
967
968    INLINE B Elaboration_Entity_Required (E Id)
969       { return Flag174 (Id); }
970
971    INLINE E Enclosing_Scope (E Id)
972       { return Node18 (Id); }
973
974    INLINE B Entry_Accepted (E Id)
975       { return Flag152 (Id); }
976
977    INLINE E Entry_Bodies_Array (E Id)
978       { return Node15 (Id); }
979
980    INLINE E Entry_Cancel_Parameter (E Id)
981       { return Node23 (Id); }
982
983    INLINE E Entry_Component (E Id)
984       { return Node11 (Id); }
985
986    INLINE E Entry_Formal (E Id)
987       { return Node16 (Id); }
988
989    INLINE N Entry_Index_Constant (E Id)
990       { return Node18 (Id); }
991
992    INLINE E Entry_Parameters_Type (E Id)
993       { return Node15 (Id); }
994
995    INLINE E Enum_Pos_To_Rep (E Id)
996       { return Node23 (Id); }
997
998    INLINE Uint Enumeration_Pos (E Id)
999       { return Uint11 (Id); }
1000
1001    INLINE U Enumeration_Rep (E Id)
1002       { return Uint12 (Id); }
1003
1004    INLINE N Enumeration_Rep_Expr (E Id)
1005       { return Node22 (Id); }
1006
1007    INLINE E Equivalent_Type (E Id)
1008       { return Node18 (Id); }
1009
1010    INLINE Uint Esize (E Id)
1011       { return Uint12 (Id); }
1012
1013    INLINE Uint Exception_Code (E Id)
1014       { return Uint22 (Id); }
1015
1016    INLINE E Extra_Accessibility (E Id)
1017       { return Node13 (Id); }
1018
1019    INLINE E Extra_Constrained (E Id)
1020       { return Node23 (Id); }
1021
1022    INLINE E Extra_Formal (E Id)
1023       { return Node15 (Id); }
1024
1025    INLINE E Finalization_Chain_Entity (E Id)
1026       { return Node19 (Id); }
1027
1028    INLINE E First_Entity (E Id)
1029       { return Node17 (Id); }
1030
1031    INLINE N First_Index (E Id)
1032       { return Node17 (Id); }
1033
1034    INLINE E First_Literal (E Id)
1035       { return Node17 (Id); }
1036
1037    INLINE E First_Optional_Parameter (E Id)
1038       { return Node14 (Id); }
1039
1040    INLINE E First_Private_Entity (E Id)
1041       { return Node16 (Id); }
1042
1043    INLINE E First_Rep_Item (E Id)
1044       { return Node6 (Id); }
1045
1046    INLINE N Freeze_Node (E Id)
1047       { return Node7 (Id); }
1048
1049    INLINE B From_With_Type (E Id)
1050       { return Flag159 (Id); }
1051
1052    INLINE E Full_View (E Id)
1053       { return Node11 (Id); }
1054
1055    INLINE B Function_Returns_With_DSP (E Id)
1056       { return Flag169 (Id); }
1057
1058    INLINE E Generic_Homonym (E Id)
1059       { return Node11 (Id); }
1060
1061    INLINE L Generic_Renamings (E Id)
1062       { return Elist23 (Id); }
1063
1064    INLINE S Handler_Records (E Id)
1065       { return List10 (Id); }
1066
1067    INLINE B Has_Aliased_Components (E Id)
1068       { return Flag135 (Implementation_Base_Type (Id)); }
1069
1070    INLINE B Has_Alignment_Clause (E Id)
1071       { return Flag46 (Id); }
1072
1073    INLINE B Has_All_Calls_Remote (E Id)
1074       { return Flag79 (Id); }
1075
1076    INLINE B Has_Atomic_Components (E Id)
1077       { return Flag86 (Implementation_Base_Type (Id)); }
1078
1079    INLINE B Has_Biased_Representation (E Id)
1080       { return Flag139 (Id); }
1081
1082    INLINE B Has_Completion (E Id)
1083       { return Flag26 (Id); }
1084
1085    INLINE B Has_Completion_In_Body (E Id)
1086       { return Flag71 (Id); }
1087
1088    INLINE B Has_Complex_Representation (E Id)
1089       { return Flag140 (Implementation_Base_Type (Id)); }
1090
1091    INLINE B Has_Component_Size_Clause (E Id)
1092       { return Flag68 (Implementation_Base_Type (Id)); }
1093
1094    INLINE B Has_Controlled_Component (E Id)
1095       { return Flag43 (Base_Type (Id)); }
1096
1097    INLINE B Has_Contiguous_Rep (E Id)
1098       { return Flag181 (Id); }
1099
1100    INLINE B Has_Controlling_Result (E Id)
1101       { return Flag98 (Id); }
1102
1103    INLINE B Has_Convention_Pragma (E Id)
1104       { return Flag119 (Id); }
1105
1106    INLINE B Has_Delayed_Freeze (E Id)
1107       { return Flag18 (Id); }
1108
1109    INLINE B Has_Discriminants (E Id)
1110       { return Flag5 (Id); }
1111
1112    INLINE B Has_Enumeration_Rep_Clause (E Id)
1113       { return Flag66 (Id); }
1114
1115    INLINE B Has_Exit (E Id)
1116       { return Flag47 (Id); }
1117
1118    INLINE B Has_External_Tag_Rep_Clause (E Id)
1119       { return Flag110 (Id); }
1120
1121    INLINE B Has_Forward_Instantiation (E Id)
1122       { return Flag175 (Id); }
1123
1124    INLINE B Has_Fully_Qualified_Name (E Id)
1125       { return Flag173 (Id); }
1126
1127    INLINE B Has_Gigi_Rep_Item (E Id)
1128       { return Flag82 (Id); }
1129
1130    INLINE B Has_Homonym (E Id)
1131       { return Flag56 (Id); }
1132
1133    INLINE B Has_Machine_Radix_Clause (E Id)
1134       { return Flag83 (Id); }
1135
1136    INLINE B Has_Master_Entity (E Id)
1137       { return Flag21 (Id); }
1138
1139    INLINE B Has_Missing_Return (E Id)
1140       { return Flag142 (Id); }
1141
1142    INLINE B Has_Nested_Block_With_Handler (E Id)
1143       { return Flag101 (Id); }
1144
1145    INLINE B Has_Non_Standard_Rep (E Id)
1146       { return Flag75 (Implementation_Base_Type (Id)); }
1147
1148    INLINE B Has_Object_Size_Clause (E Id)
1149       { return Flag172 (Id); }
1150
1151    INLINE B Has_Per_Object_Constraint (E Id)
1152       { return Flag154 (Id); }
1153
1154    INLINE B Has_Pragma_Controlled (E Id)
1155       { return Flag27 (Implementation_Base_Type (Id)); }
1156
1157    INLINE B Has_Pragma_Elaborate_Body (E Id)
1158       { return Flag150 (Id); }
1159
1160    INLINE B Has_Pragma_Inline (E Id)
1161       { return Flag157 (Id); }
1162
1163    INLINE B Has_Pragma_Pack (E Id)
1164       { return Flag121 (Implementation_Base_Type (Id)); }
1165
1166    INLINE B Has_Pragma_Pure_Function (E Id)
1167       { return Flag179 (Id); }
1168
1169    INLINE B Has_Pragma_Unreferenced (E Id)
1170       { return Flag180 (Id); }
1171
1172    INLINE B Has_Primitive_Operations (E Id)
1173       { return Flag120 (Base_Type (Id)); }
1174
1175    INLINE B Has_Private_Declaration (E Id)
1176       { return Flag155 (Id); }
1177
1178    INLINE B Has_Qualified_Name (E Id)
1179       { return Flag161 (Id); }
1180
1181    INLINE B Has_Record_Rep_Clause (E Id)
1182       { return Flag65 (Implementation_Base_Type (Id)); }
1183
1184    INLINE B Has_Recursive_Call (E Id)
1185       { return Flag143 (Id); }
1186
1187    INLINE B Has_Size_Clause (E Id)
1188       { return Flag29 (Id); }
1189
1190    INLINE B Has_Small_Clause (E Id)
1191       { return Flag67 (Id); }
1192
1193    INLINE B Has_Specified_Layout (E Id)
1194       { return Flag100 (Implementation_Base_Type (Id)); }
1195
1196    INLINE B Has_Storage_Size_Clause (E Id)
1197       { return Flag23 (Implementation_Base_Type (Id)); }
1198
1199    INLINE B Has_Subprogram_Descriptor (E Id)
1200       { return Flag93 (Id); }
1201
1202    INLINE B Has_Task (E Id)
1203       { return Flag30 (Base_Type (Id)); }
1204
1205    INLINE B Has_Unchecked_Union (E Id)
1206       { return Flag123 (Base_Type (Id)); }
1207
1208    INLINE B Has_Unknown_Discriminants (E Id)
1209       { return Flag72 (Id); }
1210
1211    INLINE B Has_Volatile_Components (E Id)
1212       { return Flag87 (Implementation_Base_Type (Id)); }
1213
1214    INLINE B Has_Xref_Entry (E Id)
1215       { return Flag182 (Implementation_Base_Type (Id)); }
1216
1217    INLINE E Hiding_Loop_Variable (E Id)
1218       { return Node8 (Id); }
1219
1220    INLINE E Homonym (E Id)
1221       { return Node4 (Id); }
1222
1223    INLINE B In_Package_Body (E Id)
1224       { return Flag48 (Id); }
1225
1226    INLINE B In_Private_Part (E Id)
1227       { return Flag45 (Id); }
1228
1229    INLINE B In_Use (E Id)
1230       { return Flag8 (Id); }
1231
1232    INLINE L Inner_Instances (E Id)
1233       { return Elist23 (Id); }
1234
1235    INLINE N Interface_Name (E Id)
1236       { return Node21 (Id); }
1237
1238    INLINE B Is_Abstract (E Id)
1239       { return Flag19 (Id); }
1240
1241    INLINE B Is_Access_Constant (E Id)
1242       { return Flag69 (Id); }
1243
1244    INLINE B Is_Aliased (E Id)
1245       { return Flag15 (Id); }
1246
1247    INLINE B Is_AST_Entry (E Id)
1248       { return Flag132 (Id); }
1249
1250    INLINE B Is_Asynchronous (E Id)
1251       { return Flag81 (Id); }
1252
1253    INLINE B Is_Atomic (E Id)
1254       { return Flag85 (Id); }
1255
1256    INLINE B Is_Bit_Packed_Array (E Id)
1257       { return Flag122 (Implementation_Base_Type (Id)); }
1258
1259    INLINE B Is_Called (E Id)
1260       { return Flag102 (Id); }
1261
1262    INLINE B Is_Character_Type (E Id)
1263       { return Flag63 (Id); }
1264
1265    INLINE B Is_Child_Unit (E Id)
1266       { return Flag73 (Id); }
1267
1268    INLINE B Is_Class_Wide_Equivalent_Type (E Id)
1269       { return Flag35 (Id); }
1270
1271    INLINE B Is_Compilation_Unit (E Id)
1272       { return Flag149 (Id); }
1273
1274    INLINE B Is_Completely_Hidden (E Id)
1275       { return Flag103 (Id); }
1276
1277    INLINE B Is_Constr_Subt_For_U_Nominal (E Id)
1278       { return Flag80 (Id); }
1279
1280    INLINE B Is_Constr_Subt_For_UN_Aliased (E Id)
1281       { return Flag141 (Id); }
1282
1283    INLINE B Is_Constrained (E Id)
1284       { return Flag12 (Id); }
1285
1286    INLINE B Is_Constructor (E Id)
1287       { return Flag76 (Id); }
1288
1289    INLINE B Is_Controlled (E Id)
1290       { return Flag42 (Base_Type (Id)); }
1291
1292    INLINE B Is_Controlling_Formal (E Id)
1293       { return Flag97 (Id); }
1294
1295    INLINE B Is_CPP_Class (E Id)
1296       { return Flag74 (Id); }
1297
1298    INLINE B Is_Discrim_SO_Function (E Id)
1299       { return Flag176 (Id); }
1300
1301    INLINE B Is_Dispatching_Operation (E Id)
1302       { return Flag6 (Id); }
1303
1304    INLINE B Is_Eliminated (E Id)
1305       { return Flag124 (Id); }
1306
1307    INLINE B Is_Entry_Formal (E Id)
1308       { return Flag52 (Id); }
1309
1310    INLINE B Is_Exported (E Id)
1311       { return Flag99 (Id); }
1312
1313    INLINE B Is_First_Subtype (E Id)
1314       { return Flag70 (Id); }
1315
1316    INLINE B Is_For_Access_Subtype (E Id)
1317       { return Flag118 (Id); }
1318
1319    INLINE B Is_Formal_Subprogram (E Id)
1320       { return Flag111 (Id); }
1321
1322    INLINE B Is_Frozen (E Id)
1323       { return Flag4 (Id); }
1324
1325    INLINE B Is_Generic_Actual_Type (E Id)
1326       { return Flag94 (Id); }
1327
1328    INLINE B Is_Generic_Instance (E Id)
1329       { return Flag130 (Id); }
1330
1331    INLINE B Is_Generic_Type (E Id)
1332       { return Flag13 (Id); }
1333
1334    INLINE B Is_Hidden (E Id)
1335       { return Flag57 (Id); }
1336
1337    INLINE B Is_Hidden_Open_Scope (E Id)
1338       { return Flag171 (Id); }
1339
1340    INLINE B Is_Immediately_Visible (E Id)
1341       { return Flag7 (Id); }
1342
1343    INLINE B Is_Imported (E Id)
1344       { return Flag24 (Id); }
1345
1346    INLINE B Is_Inlined (E Id)
1347       { return Flag11 (Id); }
1348
1349    INLINE B Is_Instantiated (E Id)
1350       { return Flag126 (Id); }
1351
1352    INLINE B Is_Internal (E Id)
1353       { return Flag17 (Id); }
1354
1355    INLINE B Is_Interrupt_Handler (E Id)
1356       { return Flag89 (Id); }
1357
1358    INLINE B Is_Intrinsic_Subprogram (E Id)
1359       { return Flag64 (Id); }
1360
1361    INLINE B Is_Itype (E Id)
1362       { return Flag91 (Id); }
1363
1364    INLINE B Is_Known_Non_Null (E Id)
1365       { return Flag37 (Id); }
1366
1367    INLINE B Is_Known_Valid (E Id)
1368       { return Flag170 (Id); }
1369
1370    INLINE B Is_Limited_Composite (E Id)
1371       { return Flag106 (Id); }
1372
1373    INLINE B Is_Limited_Record (E Id)
1374       { return Flag25 (Id); }
1375
1376    INLINE B Is_Machine_Code_Subprogram (E Id)
1377       { return Flag137 (Id); }
1378
1379    INLINE B Is_Non_Static_Subtype (E Id)
1380       { return Flag109 (Id); }
1381
1382    INLINE B Is_Null_Init_Proc (E Id)
1383       { return Flag178 (Id); }
1384
1385    INLINE B Is_Optional_Parameter (E Id)
1386       { return Flag134 (Id); }
1387
1388    INLINE B Is_Overriding_Operation (E Id)
1389       { return Flag39 (Id); }
1390
1391    INLINE B Is_Package_Body_Entity (E Id)
1392       { return Flag160 (Id); }
1393
1394    INLINE B Is_Packed (E Id)
1395       { return Flag51 (Implementation_Base_Type (Id)); }
1396
1397    INLINE B Is_Packed_Array_Type (E Id)
1398       { return Flag138 (Id); }
1399
1400    INLINE B Is_Potentially_Use_Visible (E Id)
1401       { return Flag9 (Id); }
1402
1403    INLINE B Is_Preelaborated (E Id)
1404       { return Flag59 (Id); }
1405
1406    INLINE B Is_Private_Composite (E Id)
1407       { return Flag107 (Id); }
1408
1409    INLINE B Is_Private_Descendant (E Id)
1410       { return Flag53 (Id); }
1411
1412    INLINE B Is_Psected (E Id)
1413       { return Flag153 (Id); }
1414
1415    INLINE B Is_Public (E Id)
1416       { return Flag10 (Id); }
1417
1418    INLINE B Is_Pure (E Id)
1419       { return Flag44 (Id); }
1420
1421    INLINE B Is_Remote_Call_Interface (E Id)
1422       { return Flag62 (Id); }
1423
1424    INLINE B Is_Remote_Types (E Id)
1425       { return Flag61 (Id); }
1426
1427    INLINE B Is_Renaming_Of_Object (E Id)
1428       { return Flag112 (Id); }
1429
1430    INLINE B Is_Shared_Passive (E Id)
1431       { return Flag60 (Id); }
1432
1433    INLINE B Is_Statically_Allocated (E Id)
1434       { return Flag28 (Id); }
1435
1436    INLINE B Is_Tag (E Id)
1437       { return Flag78 (Id); }
1438
1439    INLINE B Is_Tagged_Type (E Id)
1440       { return Flag55 (Id); }
1441
1442    INLINE B Is_Thread_Body (E Id)
1443       { return Flag77 (Id); }
1444
1445    INLINE B Is_True_Constant (E Id)
1446       { return Flag163 (Id); }
1447
1448    INLINE B Is_Unchecked_Union (E Id)
1449       { return Flag117 (Id); }
1450
1451    INLINE B Is_Unsigned_Type (E Id)
1452       { return Flag144 (Id); }
1453
1454    INLINE B Is_Valued_Procedure (E Id)
1455       { return Flag127 (Id); }
1456
1457    INLINE B Is_Visible_Child_Unit (E Id)
1458       { return Flag116 (Id); }
1459
1460    INLINE B Is_VMS_Exception (E Id)
1461       { return Flag133 (Id); }
1462
1463    INLINE B Kill_Elaboration_Checks (E Id)
1464       { return Flag32 (Id); }
1465
1466    INLINE B Kill_Range_Checks (E Id)
1467       { return Flag33 (Id); }
1468
1469    INLINE B Kill_Tag_Checks (E Id)
1470       { return Flag34 (Id); }
1471
1472    INLINE E Last_Entity (E Id)
1473       { return Node20 (Id); }
1474
1475    INLINE L Limited_Views (E Id)
1476       { return Elist23 (Id); }
1477
1478    INLINE E Lit_Indexes (E Id)
1479       { return Node15 (Id); }
1480
1481    INLINE E Lit_Strings (E Id)
1482       { return Node16 (Id); }
1483
1484    INLINE B Machine_Radix_10 (E Id)
1485       { return Flag84 (Id); }
1486
1487    INLINE E Master_Id (E Id)
1488       { return Node17 (Id); }
1489
1490    INLINE B Materialize_Entity (E Id)
1491       { return Flag168 (Id); }
1492
1493    INLINE M Mechanism (E Id)
1494       { return UI_To_Int (Uint8 (Id)); }
1495
1496    INLINE Uint Modulus (E Id)
1497       { return Uint17 (Base_Type (Id)); }
1498
1499    INLINE B Needs_Debug_Info (E Id)
1500       { return Flag147 (Id); }
1501
1502    INLINE B Needs_No_Actuals (E Id)
1503       { return Flag22 (Id); }
1504
1505    INLINE B Never_Set_In_Source (E Id)
1506       { return Flag115 (Id); }
1507
1508    INLINE E Next_Inlined_Subprogram (E Id)
1509       { return Node12 (Id); }
1510
1511    INLINE B No_Pool_Assigned (E Id)
1512       { return Flag131 (Root_Type (Id)); }
1513
1514    INLINE B No_Return (E Id)
1515       { return Flag113 (Id); }
1516
1517    INLINE B Non_Binary_Modulus (E Id)
1518       { return Flag58 (Base_Type (Id)); }
1519
1520    INLINE E Non_Limited_View (E Id)
1521       { return Node17 (Id); }
1522
1523    INLINE B Nonzero_Is_True (E Id)
1524       { return Flag162 (Base_Type (Id)); }
1525
1526    INLINE U Normalized_First_Bit (E Id)
1527       { return Uint8 (Id); }
1528
1529    INLINE U Normalized_Position (E Id)
1530       { return Uint14 (Id); }
1531
1532    INLINE U Normalized_Position_Max (E Id)
1533       { return Uint10 (Id); }
1534
1535    INLINE E Object_Ref (E Id)
1536       { return Node17 (Id); }
1537
1538    INLINE E Original_Array_Type (E Id)
1539       { return Node21 (Id); }
1540
1541    INLINE E Original_Record_Component (E Id)
1542       { return Node22 (Id); }
1543
1544    INLINE E Packed_Array_Type (E Id)
1545       { return Node23 (Id); }
1546
1547    INLINE E Parent_Subtype (E Id)
1548       { return Node19 (Id); }
1549
1550    INLINE L Primitive_Operations (E Id)
1551       { return Elist15 (Id); }
1552
1553    INLINE E Prival (E Id)
1554       { return Node17 (Id); }
1555
1556    INLINE L Privals_Chain (E Id)
1557       { return Elist23 (Id); }
1558
1559    INLINE L Private_Dependents (E Id)
1560       { return Elist18 (Id); }
1561
1562    INLINE N Private_View (E Id)
1563       { return Node22 (Id); }
1564
1565    INLINE E Protected_Body_Subprogram (E Id)
1566       { return Node11 (Id); }
1567
1568    INLINE E Protected_Formal (E Id)
1569       { return Node22 (Id); }
1570
1571    INLINE N Protected_Operation (E Id)
1572       { return Node23 (Id); }
1573
1574    INLINE B Reachable (E Id)
1575       { return Flag49 (Id); }
1576
1577    INLINE B Referenced (E Id)
1578       { return Flag156 (Id); }
1579
1580    INLINE B Referenced_As_LHS (E Id)
1581       { return Flag36 (Id); }
1582
1583    INLINE N Referenced_Object (E Id)
1584       { return Node10 (Id); }
1585
1586    INLINE N Register_Exception_Call (E Id)
1587       { return Node20 (Id); }
1588
1589    INLINE E Related_Array_Object (E Id)
1590       { return Node19 (Id); }
1591
1592    INLINE E Related_Instance (E Id)
1593       { return Node15 (Id); }
1594
1595    INLINE N Renamed_Entity (E Id)
1596       { return Node18 (Id); }
1597
1598    INLINE N Renamed_Object (E Id)
1599       { return Node18 (Id); }
1600
1601    INLINE U Renaming_Map (E Id)
1602       { return Uint9 (Id); }
1603
1604    INLINE B Return_Present (E Id)
1605       { return Flag54 (Id); }
1606
1607    INLINE B Returns_By_Ref (E Id)
1608       { return Flag90 (Id); }
1609
1610    INLINE B Reverse_Bit_Order (E Id)
1611       { return Flag164 (Base_Type (Id)); }
1612
1613    INLINE U RM_Size (E Id)
1614       { return Uint13 (Id); }
1615
1616    INLINE N Scalar_Range (E Id)
1617       { return Node20 (Id); }
1618
1619    INLINE U Scale_Value (E Id)
1620       { return Uint15 (Id); }
1621
1622    INLINE U Scope_Depth_Value (E Id)
1623       { return Uint22 (Id); }
1624
1625    INLINE B Sec_Stack_Needed_For_Return (E Id)
1626       { return Flag167 (Id); }
1627
1628    INLINE S Shadow_Entities (E Id)
1629       { return List14 (Id); }
1630
1631    INLINE E Shared_Var_Assign_Proc (E Id)
1632       { return Node22 (Id); }
1633
1634    INLINE E Shared_Var_Read_Proc (E Id)
1635       { return Node15 (Id); }
1636
1637    INLINE N Size_Check_Code (E Id)
1638       { return Node19 (Id); }
1639
1640    INLINE B Size_Depends_On_Discriminant (E Id)
1641       { return Flag177 (Id); }
1642
1643    INLINE B Size_Known_At_Compile_Time (E Id)
1644       { return Flag92 (Id); }
1645
1646    INLINE R Small_Value (E Id)
1647       { return Ureal21 (Id); }
1648
1649    INLINE E Spec_Entity (E Id)
1650       { return Node19 (Id); }
1651
1652    INLINE E Storage_Size_Variable (E Id)
1653       { return Node15 (Implementation_Base_Type (Id)); }
1654
1655    INLINE L Stored_Constraint (E Id)
1656       { return Elist23 (Id); }
1657
1658    INLINE B Strict_Alignment (E Id)
1659       { return Flag145 (Implementation_Base_Type (Id)); }
1660
1661    INLINE U String_Literal_Length (E Id)
1662       { return Uint16 (Id); }
1663
1664    INLINE N String_Literal_Low_Bound (E Id)
1665       { return Node15 (Id); }
1666
1667    INLINE B Suppress_Elaboration_Warnings (E Id)
1668       { return Flag148 (Id); }
1669
1670    INLINE B Suppress_Init_Proc (E Id)
1671       { return Flag105 (Base_Type (Id)); }
1672
1673    INLINE B Suppress_Style_Checks (E Id)
1674       { return Flag165 (Id); }
1675
1676    INLINE B Treat_As_Volatile (E Id)
1677       { return Flag41 (Id); }
1678
1679    INLINE E Underlying_Full_View (E Id)
1680       { return Node19 (Id); }
1681
1682    INLINE N Unset_Reference (E Id)
1683       { return Node16 (Id); }
1684
1685    INLINE B Uses_Sec_Stack (E Id)
1686       { return Flag95 (Id); }
1687
1688    INLINE B Vax_Float (E Id)
1689       { return Flag151 (Base_Type (Id)); }
1690
1691    INLINE B Warnings_Off (E Id)
1692       { return Flag96 (Id); }
1693
1694    INLINE B Is_Access_Type                      (E Id)
1695       { return IN (Ekind (Id), Access_Kind); }
1696
1697    INLINE B Is_Array_Type                       (E Id)
1698       { return IN (Ekind (Id), Array_Kind); }
1699
1700    INLINE B Is_Class_Wide_Type                  (E Id)
1701       { return IN (Ekind (Id), Class_Wide_Kind); }
1702
1703    INLINE B Is_Composite_Type                   (E Id)
1704       { return IN (Ekind (Id), Composite_Kind); }
1705
1706    INLINE B Is_Concurrent_Body                  (E Id)
1707       { return IN (Ekind (Id), Concurrent_Body_Kind); }
1708
1709    INLINE B Is_Concurrent_Record_Type           (E Id)
1710       { return Flag20 (Id); }
1711
1712    INLINE B Is_Concurrent_Type                  (E Id)
1713       { return IN (Ekind (Id), Concurrent_Kind); }
1714
1715    INLINE B Is_Decimal_Fixed_Point_Type         (E Id)
1716       { return IN (Ekind (Id), Decimal_Fixed_Point_Kind); }
1717
1718    INLINE B Is_Digits_Type                      (E Id)
1719       { return IN (Ekind (Id), Digits_Kind); }
1720
1721    INLINE B Is_Discrete_Or_Fixed_Point_Type     (E Id)
1722       { return IN (Ekind (Id), Discrete_Or_Fixed_Point_Kind); }
1723
1724    INLINE B Is_Discrete_Type                    (E Id)
1725       { return IN (Ekind (Id), Discrete_Kind); }
1726
1727    INLINE B Is_Elementary_Type                  (E Id)
1728       { return IN (Ekind (Id), Elementary_Kind); }
1729
1730    INLINE B Is_Entry                            (E Id)
1731       { return IN (Ekind (Id), Entry_Kind); }
1732
1733    INLINE B Is_Enumeration_Type                 (E Id)
1734       { return IN (Ekind (Id), Enumeration_Kind); }
1735
1736    INLINE B Is_Fixed_Point_Type                 (E Id)
1737       { return IN (Ekind (Id), Fixed_Point_Kind); }
1738
1739    INLINE B Is_Floating_Point_Type              (E Id)
1740       { return IN (Ekind (Id), Float_Kind); }
1741
1742    INLINE B Is_Formal                           (E Id)
1743       { return IN (Ekind (Id), Formal_Kind); }
1744
1745    INLINE B Is_Generic_Subprogram               (E Id)
1746       { return IN (Ekind (Id), Generic_Subprogram_Kind); }
1747
1748    INLINE B Is_Generic_Unit                     (E Id)
1749       { return IN (Ekind (Id), Generic_Unit_Kind); }
1750
1751    INLINE B Is_Incomplete_Or_Private_Type       (E Id)
1752       { return IN (Ekind (Id), Incomplete_Or_Private_Kind); }
1753
1754    INLINE B Is_Integer_Type                     (E Id)
1755       { return IN (Ekind (Id), Integer_Kind); }
1756
1757    INLINE B Is_Modular_Integer_Type             (E Id)
1758       { return IN (Ekind (Id), Modular_Integer_Kind); }
1759
1760    INLINE B Is_Named_Number                     (E Id)
1761       { return IN (Ekind (Id), Named_Kind); }
1762
1763    INLINE B Is_Numeric_Type                     (E Id)
1764       { return IN (Ekind (Id), Numeric_Kind); }
1765
1766    INLINE B Is_Object                           (E Id)
1767       { return IN (Ekind (Id), Object_Kind); }
1768
1769    INLINE B Is_Ordinary_Fixed_Point_Type        (E Id)
1770       { return IN (Ekind (Id), Ordinary_Fixed_Point_Kind); }
1771
1772    INLINE B Is_Overloadable                     (E Id)
1773       { return IN (Ekind (Id), Overloadable_Kind); }
1774
1775    INLINE B Is_Private_Type                     (E Id)
1776       { return IN (Ekind (Id), Private_Kind); }
1777
1778    INLINE B Is_Protected_Type                   (E Id)
1779       { return IN (Ekind (Id), Protected_Kind); }
1780
1781    INLINE B Is_Real_Type                        (E Id)
1782       { return IN (Ekind (Id), Real_Kind); }
1783
1784    INLINE B Is_Record_Type                      (E Id)
1785       { return IN (Ekind (Id), Record_Kind); }
1786
1787    INLINE B Is_Scalar_Type                      (E Id)
1788       { return IN (Ekind (Id), Scalar_Kind); }
1789
1790    INLINE B Is_Signed_Integer_Type              (E Id)
1791       { return IN (Ekind (Id), Signed_Integer_Kind); }
1792
1793    INLINE B Is_Subprogram                       (E Id)
1794       { return IN (Ekind (Id), Subprogram_Kind); }
1795
1796    INLINE B Is_Task_Type                        (E Id)
1797       { return IN (Ekind (Id), Task_Kind); }
1798
1799    INLINE B Is_Type                             (E Id)
1800       { return IN (Ekind (Id), Type_Kind); }
1801
1802    INLINE N Entry_Index_Type (E Id)
1803       { return Etype (Discrete_Subtype_Definition (Parent (Id))); }
1804
1805    INLINE Node_Id Next_Index (Node_Id Id)
1806       { return Next (Id); }
1807
1808    INLINE E Next_Literal (E Id)
1809       { return Next (Id); }
1810
1811    INLINE Formal_Kind Parameter_Mode (E Id)
1812       { return Ekind (Id); }
1813
1814 /* End of einfo.h (C version of Einfo package specification) */