OSDN Git Service

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