summaryrefslogtreecommitdiff
path: root/gcc/ada
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada')
-rw-r--r--gcc/ada/ChangeLog91
-rw-r--r--gcc/ada/Make-lang.in9
-rw-r--r--gcc/ada/Makefile.in66
-rw-r--r--gcc/ada/einfo.h1786
-rw-r--r--gcc/ada/sinfo.h822
5 files changed, 2711 insertions, 63 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index c7138f7090e..758a4a02fb1 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,26 @@
+2001-10-08 Zack Weinberg <zack@codesourcery.com>
+
+ * Make-lang.in (ADAFLAGS): Add -W -Wall.
+ (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
+ (gnat1): Also depend on attribs.o.
+ (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
+ * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
+ (ADAC): Set to @ADAC@ in stage1, $(CC) later.
+ (ADAFLAGS): Add -W -Wall.
+ (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
+ take out CFLAGS.
+
+ (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
+ s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
+ s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
+ Use $(ADAC), not $(CC), as compilation command.
+
+ (gnattools): Depend directly on tools to build, don't use
+ recursive make.
+ (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
+
+ * einfo.h, sinfo.h: New files (autogenerated).
+
2001-10-08 Richard Henderson <rth@redhat.com>
* comperr.adb (Abort_In_Progress): New.
@@ -6,20 +29,20 @@
2001-10-08 Robert Dewar <dewar@gnat.com>
* atree.adb: Set Error_Posted in Error node, helps error recovery.
-
- * par-endh.adb (Output_End_Expected): We should also not test
+
+ * par-endh.adb (Output_End_Expected): We should also not test
Error_Posted on the Error node, since now it is always set.
-
- * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
+
+ * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
to help error recovery. Part of general work on 9407-004.
-
+
* par.adb: Add ??? for misuse of error
-
+
* sem_res.adb:
(Resolve): Defend against Error, fixes 9407-003.
(Resolve_Discrete_Subtype_Indication): Defend against Error.
-
- * sinfo.ads (N_Error): Now has Etype field (which will be set
+
+ * sinfo.ads (N_Error): Now has Etype field (which will be set
to Any_Type to help error recovery).
2001-10-08 Richard Kenner (kenner@gnat.com)
@@ -50,70 +73,70 @@
* sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
Arg is int, not FILE *, in dummy version of functions.
-
+
* adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
Arg is int, not FILE *.
2001-10-04 Geert Bosch <bosch@gnat.com>
* 3lsoccon.ads: Added file, missed with initial check ins.
-
+
* 4lintnam.ads: Fix header format.
Change Linux to GNU/Linux.
-
+
* 5iosinte.adb: Change Linux to GNU/Linux.
* 5iosinte.ads: Change Linux to GNU/Linux.
-
+
* 5itaprop.adb: Change Linux to GNU/Linux.
-
+
* 5itaspri.ads: Change Linux to GNU/Linux.
Update copyright notice.
-
+
* 5lintman.adb: Change Linux to GNU/Linux.
-
+
* 5lml-tgt.adb: Change Linux to GNU/Linux.
-
+
* 5losinte.ads: Change Linux to GNU/Linux.
-
+
* 5lsystem.ads: Change Linux to GNU/Linux.
-
+
* 5qosinte.adb: Change Linux to GNU/Linux.
-
+
* 5qosinte.ads: Change Linux to GNU/Linux.
-
+
* 5qparame.ads: Change Linux to GNU/Linux.
-
+
* 5qtaprop.adb: Change Linux to GNU/Linux.
-
+
* 5qtaspri.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice.
-
+
* 5vintman.ads: Change Linux to GNU/Linux.
Fix header format. Add 2001 to copyright notice.
-
+
* g-soccon.ads: Change Linux to GNU/Linux.
-
+
* g-trasym.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice.
-
+
* memtrack.adb: Change Linux to GNU/Linux.
-
+
* s-intman.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice. Fix header format.
-
+
* s-stache.adb: Change Linux to GNU/Linux.
-
+
* adaint.c: Change Linux to GNU/Linux.
-
+
* cio.c: Change Linux to GNU/Linux.
-
+
* cstreams.c: Change Linux to GNU/Linux.
-
+
* init.c: Change Linux to GNU/Linux.
-
+
* gmem.c: Change Linux to GNU/Linux.
-
+
* tracebak.c: Change Linux to GNU/Linux.
diff --git a/gcc/ada/Make-lang.in b/gcc/ada/Make-lang.in
index a3c8606675e..72204ca6b95 100644
--- a/gcc/ada/Make-lang.in
+++ b/gcc/ada/Make-lang.in
@@ -46,7 +46,7 @@ shext =
# Extra flags to pass to recursive makes.
BOOT_ADAFLAGS= $(ADAFLAGS)
-ADAFLAGS= -gnatpg -gnata
+ADAFLAGS= -W -Wall -gnatpg -gnata
GNATLIBFLAGS= -gnatpg
GNATLIBCFLAGS= -g -O2
ADA_INCLUDE_DIR = $(libsubdir)/adainclude
@@ -54,6 +54,7 @@ ADA_RTL_OBJ_DIR = $(libsubdir)/adalib
THREAD_KIND=native
GNATBIND = gnatbind
ADA_FLAGS_TO_PASS = \
+ "ADA_CFLAGS=$(CFLAGS)" \
"ADA_FOR_BUILD=$(ADA_FOR_BUILD)" \
"ADA_INCLUDE_DIR=$(ADA_INCLUDE_DIR)" \
"ADA_RTL_OBJ_DIR=$(ADA_RTL_OBJ_DIR)" \
@@ -70,7 +71,7 @@ Ada ada: gnat1$(exeext) gnatbind$(exeext)
# There are too many Ada sources to check against here. Let's
# always force the recursive make.
-gnat1$(exeext): prefix.o $(LIBDEPS) $(BACKEND) force
+gnat1$(exeext): prefix.o attribs.o $(LIBDEPS) $(BACKEND) force
$(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \
../gnat1$(exeext)
@@ -155,16 +156,20 @@ cross-gnattools: force
gnatprep$(exeext) gnatpsta$(exeext) gnatpsys$(exeext) \
gnatxref$(exeext) gnatfind$(exeext) $(EXTRA_GNATTOOLS)
+# use target-gcc
gnatlib: force
$(MAKE) -C ada $(FLAGS_TO_PASS) \
+ CC="../xgcc -B../" ADAC="../xgcc -B../" STAGE_PREFIX=../ \
GNATLIBFLAGS="$(GNATLIBFLAGS)" \
GNATLIBCFLAGS="$(GNATLIBCFLAGS)" \
TARGET_LIBGCC2_CFLAGS="$(TARGET_LIBGCC2_CFLAGS)" \
THREAD_KIND="$(THREAD_KIND)" \
gnatlib
+# use target-gcc
gnatlib-shared: force
$(MAKE) -C ada $(FLAGS_TO_PASS) \
+ CC="../xgcc -B../" ADAC="../xgcc -B../" STAGE_PREFIX=../ \
GNATLIBFLAGS="$(GNATLIBFLAGS)" \
GNATLIBCFLAGS="$(GNATLIBCFLAGS)" \
GNATLIBLDFLAGS="$(GNATLIBLDFLAGS)" \
diff --git a/gcc/ada/Makefile.in b/gcc/ada/Makefile.in
index d5f44a94b9d..85c67ed250b 100644
--- a/gcc/ada/Makefile.in
+++ b/gcc/ada/Makefile.in
@@ -78,7 +78,18 @@ T_CFLAGS =
X_CPPFLAGS =
T_CPPFLAGS =
+X_ADAFLAGS =
+T_ADAFLAGS =
+
CC = cc
+# Let the configure setting prevail only if CC hasn't been overridden
+# to xgcc by the top level Makefile (in a later stage of bootstrap).
+ifeq ($(findstring xgcc, $(CC)),)
+ADAC = @ADAC@
+else
+ADAC = $(CC)
+endif
+
BISON = bison
BISONFLAGS =
ECHO = echo
@@ -103,13 +114,13 @@ MAKEINFO = makeinfo
TEXI2DVI = texi2dvi
GNATBIND = $(STAGE_PREFIX)gnatbind -C
ADA_CFLAGS =
-ADAFLAGS = -gnatpg -gnata
+ADAFLAGS = -W -Wall -gnatpg -gnata
SOME_ADAFLAGS =-gnata
FORCE_DEBUG_ADAFLAGS = -g
GNATLIBFLAGS = -gnatpg
GNATLIBCFLAGS= -g -O2
-ALL_ADAFLAGS = $(CFLAGS) $(ADA_CFLAGS) $(ADAFLAGS)
-MOST_ADAFLAGS = $(CFLAGS) $(ADA_CFLAGS) $(SOME_ADAFLAGS)
+ALL_ADAFLAGS = $(ADA_CFLAGS) $(X_ADAFLAGS) $(T_ADAFLAGS) $(ADAFLAGS)
+MOST_ADAFLAGS = $(ADA_CFLAGS) $(X_ADAFLAGS) $(T_ADAFLAGS) $(SOME_ADAFLAGS)
THREAD_KIND=native
GMEM_LIB=
MISCLIB =
@@ -268,9 +279,9 @@ ADA_INCLUDES_FOR_SUBDIR = -I. -I$(fsrcdir)
.c.o:
$(CC) -c $(ALL_CFLAGS) $(ADA_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $<
.adb.o:
- $(CC) -c $(ALL_ADAFLAGS) $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(ADA_INCLUDES) $<
.ads.o:
- $(CC) -c $(ALL_ADAFLAGS) $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(ADA_INCLUDES) $<
# This tells GNU make version 3 not to export all the variables
# defined in this file into the environment.
@@ -836,11 +847,11 @@ ifeq ($(strip $(filter-out %86 interix,$(arch) $(osys))),)
# Work around for gcc optimization bug wrt cxa5a09
a-numaux.o : a-numaux.adb a-numaux.ads
- $(CC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
# Work around for gcc optimization bug wrt cxf3a01
a-teioed.o : a-teioed.adb a-teioed.ads
- $(CC) -c $(ALL_ADAFLAGS) -O0 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) -O0 $(ADA_INCLUDES) $<
endif
@@ -960,7 +971,7 @@ ifeq ($(strip $(filter-out m68k% wrs vx%,$(targ))),)
# ??? work around a gcc -O2 bug on m68k
s-interr.o : s-interr.adb s-interr.ads
- $(CC) -c $(ALL_ADAFLAGS) -O1 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) -O1 $(ADA_INCLUDES) $<
endif
ifeq ($(strip $(filter-out powerpc% wrs vx%,$(targ))),)
@@ -1140,7 +1151,7 @@ ifeq ($(strip $(filter-out %86 solaris2%,$(arch) $(osys))),)
# ??? work around a gcc -O3 bug on x86
a-numaux.o : a-numaux.adb a-numaux.ads
- $(CC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
endif
ifeq ($(strip $(filter-out %86 linux%,$(arch) $(osys))),)
@@ -1265,7 +1276,7 @@ a-tcbinf.o: s-tpgetc.ali
# force debug info so that workshop can find the All_Tasks_List symbol
s-taskin.o: s-taskin.adb s-taskin.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) $(ADA_INCLUDES) $<
endif
ifeq ($(strip $(filter-out hppa% hp hpux%,$(targ))),)
@@ -1484,7 +1495,7 @@ ifeq ($(strip $(filter-out cygwin32% mingw32% pe,$(osys))),)
# ??? work around a gcc -O3 bug on x86
a-numaux.o : a-numaux.adb a-numaux.ads
- $(CC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
endif
# The runtime library for gnat comprises two directories. One contains the
@@ -2076,12 +2087,7 @@ gnatbl.o: gnatbl.c adaint.h
true; \
fi
-gnattools: force
- $(MAKE) \
- "CC=$(CC)" "ALL_CFLAGS=$(ALL_CFLAGS)" "INCLUDE=$(INCLUDES)" \
- "LDFLAGS=$(LDFLAGS)" \
- "MISCLIB=$(MISCLIB)" "exeext=$(exeext)" \
- ../gnatbl$(exeext) ../gnatchop$(exeext) ../gnatcmd$(exeext) \
+gnattools: ../gnatbl$(exeext) ../gnatchop$(exeext) ../gnatcmd$(exeext) \
../gnatkr$(exeext) ../gnatlink$(exeext) \
../gnatls$(exeext) ../gnatmake$(exeext) ../gnatmem$(exeext) \
../gnatprep$(exeext) ../gnatpsta$(exeext) ../gnatpsys$(exeext) \
@@ -2175,11 +2181,12 @@ gnatlib: ../stamp-gnatlib1 ../stamp-gnatlib2
$(MAKE) -C rts CC="../../xgcc -B../../" \
INCLUDES="$(INCLUDES_FOR_SUBDIR) -I./../.." \
CFLAGS="$(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -DIN_RTS" \
+ ADA_CFLAGS="$(GNATLIBCFLAGS)" \
srcdir=$(fsrcdir) \
-f ../Makefile $(LIBGNAT_OBJS)
$(MAKE) -C rts CC="../../xgcc -B../../" \
ADA_INCLUDES="$(ADA_INCLUDES_FOR_SUBDIR)" \
- CFLAGS="$(GNATLIBCFLAGS)" \
+ CFLAGS="$(GNATLIBCFLAGS)" ADA_CFLAGS="$(GNATLIBCFLAGS)" \
ADAFLAGS="$(GNATLIBFLAGS)" \
srcdir=$(fsrcdir) \
-f ../Makefile \
@@ -2464,40 +2471,43 @@ ADA_TREE_H = ada-tree.h ada-tree.def
sdefault.o : sdefault.ads sdefault.adb types.ads unchdeal.ads \
system.ads s-exctab.ads s-stalib.ads unchconv.ads
- $(CC) -c -O2 $(MOST_ADAFLAGS) $(ADA_INCLUDES) sdefault.adb
+ $(ADAC) -c -O2 $(MOST_ADAFLAGS) $(ADA_INCLUDES) sdefault.adb
# force debugging information on s-tasdeb.o so that it is always
# possible to set conditional breakpoints on tasks.
s-tasdeb.o : s-tasdeb.adb s-tasdeb.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) $(ADA_INCLUDES) $<
# force debugging information on s-vaflop.o so that it is always
# possible to call the VAX float debug print routines.
# force at least -O so that the inline assembly works.
s-vaflop.o : s-vaflop.adb s-vaflop.ads
- $(CC) -c -O $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) $(ADA_INCLUDES) $<
+ $(ADAC) -c -O $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) \
+ $(ADA_INCLUDES) $<
# force debugging information on a-except.o so that it is always
# possible to set conditional breakpoints on exceptions.
# use -O1 otherwise gdb isn't able to get a full backtrace on mips targets.
a-except.o : a-except.adb a-except.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O1 -fno-inline \
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O1 -fno-inline \
$(ADA_INCLUDES) $<
# force debugging information on s-assert.o so that it is always
# possible to set breakpoint on assert failures.
s-assert.o : s-assert.adb s-assert.ads a-except.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O2 \
+ $(ADA_INCLUDES) $<
# force debugging information on s-stalib.o so that it is always
# possible to set breakpoints on exceptions.
s-stalib.o : s-stalib.adb s-stalib.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O2 \
+ $(ADA_INCLUDES) $<
# force debugging information and no optimization on s-memory.o so that it
# is always possible to set breakpoint on __gnat_malloc and __gnat_free
@@ -2505,10 +2515,12 @@ s-stalib.o : s-stalib.adb s-stalib.ads
# memtrack.adb, and used by the post-mortem analysis with gnatmem.
s-memory.o : s-memory.adb s-memory.ads memtrack.o
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O0 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O0 \
+ $(ADA_INCLUDES) $<
memtrack.o : memtrack.adb s-memory.ads
- $(CC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O0 $(ADA_INCLUDES) $<
+ $(ADAC) -c $(ALL_ADAFLAGS) $(FORCE_DEBUG_ADAFLAGS) -O0 \
+ $(ADA_INCLUDES) $<
# Need to keep the frame pointer in this file to pop the stack properly on
# some targets.
@@ -2599,7 +2611,7 @@ stamp-tool_src_dir:
touch stamp-tool_src_dir
mlib-tgt.o : stamp-tool_src_dir
- $(CC) -c -Itools $(ALL_ADAFLAGS) $(ADA_INCLUDES) tools/mlib-tgt.adb
+ $(ADAC) -c -Itools $(ALL_ADAFLAGS) $(ADA_INCLUDES) tools/mlib-tgt.adb
# GNAT DEPENDENCIES
# regular dependencies
diff --git a/gcc/ada/einfo.h b/gcc/ada/einfo.h
new file mode 100644
index 00000000000..9a308c1bf43
--- /dev/null
+++ b/gcc/ada/einfo.h
@@ -0,0 +1,1786 @@
+/*--------------------------------------------------------------------------*/
+/* */
+/* GNAT COMPILER COMPONENTS */
+/* */
+/* E I N F O */
+/* */
+/* C Header File */
+/* */
+/* Generated by xeinfo revision 1.1 using */
+/* einfo.ads revision 1.1 */
+/* einfo.adb revision 1.1 */
+/* */
+/* Copyright (C) 1992-2001 Free Software Foundation, Inc. */
+/* */
+/* GNAT is free software; you can redistribute it and/or modify it under */
+/* terms of the GNU General Public License as published by the Free Soft- */
+/* ware Foundation; either version 2, or (at your option) any later ver- */
+/* sion. GNAT is distributed in the hope that it will be useful, but WITH- */
+/* OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY */
+/* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License */
+/* for more details. You should have received a copy of the GNU General */
+/* Public License distributed with GNAT; see file COPYING. If not, write */
+/* to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, */
+/* MA 02111-1307, USA. */
+/* */
+/* As a special exception, if other files instantiate generics from this */
+/* unit, or you link this unit with other files to produce an executable, */
+/* this unit does not by itself cause the resulting executable to be */
+/* covered by the GNU General Public License. This exception does not */
+/* however invalidate any other reasons why the executable file might be */
+/* covered by the GNU Public License. */
+/* */
+/* GNAT was originally developed by the GNAT team at New York University. */
+/* It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). */
+/* */
+/*--------------------------------------------------------------------------*/
+
+ #define E_Void 0
+ #define E_Variable 1
+ #define E_Component 2
+ #define E_Constant 3
+ #define E_Discriminant 4
+ #define E_Loop_Parameter 5
+ #define E_In_Parameter 6
+ #define E_Out_Parameter 7
+ #define E_In_Out_Parameter 8
+ #define E_Generic_In_Out_Parameter 9
+ #define E_Generic_In_Parameter 10
+ #define E_Named_Integer 11
+ #define E_Named_Real 12
+ #define E_Enumeration_Type 13
+ #define E_Enumeration_Subtype 14
+ #define E_Signed_Integer_Type 15
+ #define E_Signed_Integer_Subtype 16
+ #define E_Modular_Integer_Type 17
+ #define E_Modular_Integer_Subtype 18
+ #define E_Ordinary_Fixed_Point_Type 19
+ #define E_Ordinary_Fixed_Point_Subtype 20
+ #define E_Decimal_Fixed_Point_Type 21
+ #define E_Decimal_Fixed_Point_Subtype 22
+ #define E_Floating_Point_Type 23
+ #define E_Floating_Point_Subtype 24
+ #define E_Access_Type 25
+ #define E_Access_Subtype 26
+ #define E_Access_Attribute_Type 27
+ #define E_Allocator_Type 28
+ #define E_General_Access_Type 29
+ #define E_Access_Subprogram_Type 30
+ #define E_Access_Protected_Subprogram_Type 31
+ #define E_Anonymous_Access_Type 32
+ #define E_Array_Type 33
+ #define E_Array_Subtype 34
+ #define E_String_Type 35
+ #define E_String_Subtype 36
+ #define E_String_Literal_Subtype 37
+ #define E_Class_Wide_Type 38
+ #define E_Class_Wide_Subtype 39
+ #define E_Record_Type 40
+ #define E_Record_Subtype 41
+ #define E_Record_Type_With_Private 42
+ #define E_Record_Subtype_With_Private 43
+ #define E_Private_Type 44
+ #define E_Private_Subtype 45
+ #define E_Limited_Private_Type 46
+ #define E_Limited_Private_Subtype 47
+ #define E_Incomplete_Type 48
+ #define E_Task_Type 49
+ #define E_Task_Subtype 50
+ #define E_Protected_Type 51
+ #define E_Protected_Subtype 52
+ #define E_Exception_Type 53
+ #define E_Subprogram_Type 54
+ #define E_Enumeration_Literal 55
+ #define E_Function 56
+ #define E_Operator 57
+ #define E_Procedure 58
+ #define E_Entry 59
+ #define E_Entry_Family 60
+ #define E_Block 61
+ #define E_Entry_Index_Parameter 62
+ #define E_Exception 63
+ #define E_Generic_Function 64
+ #define E_Generic_Package 65
+ #define E_Generic_Procedure 66
+ #define E_Label 67
+ #define E_Loop 68
+ #define E_Package 69
+ #define E_Package_Body 70
+ #define E_Protected_Object 71
+ #define E_Protected_Body 72
+ #define E_Task_Body 73
+ #define E_Subprogram_Body 74
+
+ SUBTYPE (Access_Kind, Entity_Kind,
+ E_Access_Type, E_Anonymous_Access_Type)
+
+ SUBTYPE (Array_Kind, Entity_Kind,
+ E_Array_Type, E_String_Literal_Subtype)
+
+ SUBTYPE (Class_Wide_Kind, Entity_Kind,
+ E_Class_Wide_Type, E_Class_Wide_Subtype)
+
+ SUBTYPE (Composite_Kind, Entity_Kind,
+ E_Array_Type, E_Protected_Subtype)
+
+ SUBTYPE (Concurrent_Kind, Entity_Kind,
+ E_Task_Type, E_Protected_Subtype)
+
+ SUBTYPE (Concurrent_Body_Kind, Entity_Kind,
+ E_Protected_Body, E_Task_Body)
+
+ SUBTYPE (Decimal_Fixed_Point_Kind, Entity_Kind,
+ E_Decimal_Fixed_Point_Type, E_Decimal_Fixed_Point_Subtype)
+
+ SUBTYPE (Digits_Kind, Entity_Kind,
+ E_Decimal_Fixed_Point_Type, E_Floating_Point_Subtype)
+
+ SUBTYPE (Discrete_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Modular_Integer_Subtype)
+
+ SUBTYPE (Discrete_Or_Fixed_Point_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Decimal_Fixed_Point_Subtype)
+
+ SUBTYPE (Elementary_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Anonymous_Access_Type)
+
+ SUBTYPE (Enumeration_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Enumeration_Subtype)
+
+ SUBTYPE (Entry_Kind, Entity_Kind,
+ E_Entry, E_Entry_Family)
+
+ SUBTYPE (Fixed_Point_Kind, Entity_Kind,
+ E_Ordinary_Fixed_Point_Type, E_Decimal_Fixed_Point_Subtype)
+
+ SUBTYPE (Float_Kind, Entity_Kind,
+ E_Floating_Point_Type, E_Floating_Point_Subtype)
+
+ SUBTYPE (Formal_Kind, Entity_Kind,
+ E_In_Parameter, E_In_Out_Parameter)
+
+ SUBTYPE (Generic_Unit_Kind, Entity_Kind,
+ E_Generic_Function, E_Generic_Procedure)
+
+ SUBTYPE (Incomplete_Or_Private_Kind, Entity_Kind,
+ E_Record_Type_With_Private, E_Incomplete_Type)
+
+ SUBTYPE (Integer_Kind, Entity_Kind,
+ E_Signed_Integer_Type, E_Modular_Integer_Subtype)
+
+ SUBTYPE (Modular_Integer_Kind, Entity_Kind,
+ E_Modular_Integer_Type, E_Modular_Integer_Subtype)
+
+ SUBTYPE (Named_Kind, Entity_Kind,
+ E_Named_Integer, E_Named_Real)
+
+ SUBTYPE (Numeric_Kind, Entity_Kind,
+ E_Signed_Integer_Type, E_Floating_Point_Subtype)
+
+ SUBTYPE (Object_Kind, Entity_Kind,
+ E_Variable, E_Generic_In_Parameter)
+
+ SUBTYPE (Ordinary_Fixed_Point_Kind, Entity_Kind,
+ E_Ordinary_Fixed_Point_Type, E_Ordinary_Fixed_Point_Subtype)
+
+ SUBTYPE (Overloadable_Kind, Entity_Kind,
+ E_Enumeration_Literal, E_Entry)
+
+ SUBTYPE (Private_Kind, Entity_Kind,
+ E_Record_Type_With_Private, E_Limited_Private_Subtype)
+
+ SUBTYPE (Protected_Kind, Entity_Kind,
+ E_Protected_Type, E_Protected_Subtype)
+
+ SUBTYPE (Real_Kind, Entity_Kind,
+ E_Ordinary_Fixed_Point_Type, E_Floating_Point_Subtype)
+
+ SUBTYPE (Record_Kind, Entity_Kind,
+ E_Class_Wide_Type, E_Record_Subtype_With_Private)
+
+ SUBTYPE (Scalar_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Floating_Point_Subtype)
+
+ SUBTYPE (String_Kind, Entity_Kind,
+ E_String_Type, E_String_Literal_Subtype)
+
+ SUBTYPE (Subprogram_Kind, Entity_Kind,
+ E_Function, E_Procedure)
+
+ SUBTYPE (Signed_Integer_Kind, Entity_Kind,
+ E_Signed_Integer_Type, E_Signed_Integer_Subtype)
+
+ SUBTYPE (Task_Kind, Entity_Kind,
+ E_Task_Type, E_Task_Subtype)
+
+ SUBTYPE (Type_Kind, Entity_Kind,
+ E_Enumeration_Type, E_Subprogram_Type)
+
+ typedef int Component_Alignment_Kind;
+ #define Calign_Default 0
+ #define Calign_Component_Size 1
+ #define Calign_Component_Size_4 2
+ #define Calign_Storage_Unit 3
+
+ typedef Boolean B;
+ typedef Component_Alignment_Kind C;
+ typedef Entity_Id E;
+ typedef Mechanism_Type M;
+ typedef Node_Id N;
+ typedef Uint U;
+ typedef Ureal R;
+ typedef Elist_Id L;
+ typedef List_Id S;
+
+ INLINE L Accept_Address (E Id);
+ INLINE E Access_Disp_Table (E Id);
+ INLINE E Actual_Subtype (E Id);
+ INLINE B Address_Taken (E Id);
+ INLINE E Alias (E Id);
+ INLINE U Alignment (E Id);
+ INLINE E Associated_Final_Chain (E Id);
+ INLINE E Associated_Formal_Package (E Id);
+ INLINE N Associated_Node_For_Itype (E Id);
+ INLINE E Associated_Storage_Pool (E Id);
+ INLINE N Barrier_Function (E Id);
+ INLINE N Block_Node (E Id);
+ INLINE E Body_Entity (E Id);
+ INLINE E CR_Discriminant (E Id);
+ INLINE B C_Pass_By_Copy (E Id);
+ INLINE E Class_Wide_Type (E Id);
+ INLINE E Cloned_Subtype (E Id);
+
+ #define Component_Alignment einfo__component_alignment
+ C Component_Alignment (E Id);
+
+ INLINE N Component_Clause (E Id);
+ INLINE U Component_Bit_Offset (E Id);
+ INLINE U Component_Size (E Id);
+ INLINE E Component_Type (E Id);
+ INLINE E Corresponding_Concurrent_Type (E Id);
+ INLINE E Corresponding_Discriminant (E Id);
+ INLINE E Corresponding_Equality (E Id);
+ INLINE E Corresponding_Record_Type (E Id);
+ INLINE E Corresponding_Remote_Type (E Id);
+ INLINE B Debug_Info_Off (E Id);
+ INLINE E Debug_Renaming_Link (E Id);
+ INLINE E DTC_Entity (E Id);
+ INLINE U DT_Entry_Count (E Id);
+ INLINE U DT_Position (E Id);
+ INLINE E Default_Expr_Function (E Id);
+ INLINE B Default_Expressions_Processed (E Id);
+ INLINE N Default_Value (E Id);
+ INLINE B Delay_Cleanups (E Id);
+ INLINE B Delay_Subprogram_Descriptors (E Id);
+ INLINE R Delta_Value (E Id);
+ INLINE L Dependent_Instances (E Id);
+ INLINE B Depends_On_Private (E Id);
+ INLINE U Digits_Value (E Id);
+ INLINE E Directly_Designated_Type (E Id);
+ INLINE B Discard_Names (E Id);
+ INLINE E Discriminal (E Id);
+ INLINE E Discriminal_Link (E Id);
+ INLINE E Discriminant_Checking_Func (E Id);
+ INLINE L Discriminant_Constraint (E Id);
+ INLINE N Discriminant_Default_Value (E Id);
+ INLINE U Discriminant_Number (E Id);
+ INLINE B Elaborate_All_Desirable (E Id);
+ INLINE E Elaboration_Entity (E Id);
+ INLINE B Elaboration_Entity_Required (E Id);
+ INLINE E Enclosing_Scope (E Id);
+ INLINE B Entry_Accepted (E Id);
+ INLINE E Entry_Bodies_Array (E Id);
+ INLINE E Entry_Cancel_Parameter (E Id);
+ INLINE E Entry_Component (E Id);
+ INLINE E Entry_Formal (E Id);
+ INLINE E Entry_Index_Constant (E Id);
+ INLINE E Entry_Index_Type (E Id);
+ INLINE E Entry_Parameters_Type (E Id);
+ INLINE E Enum_Pos_To_Rep (E Id);
+ INLINE U Enumeration_Pos (E Id);
+ INLINE U Enumeration_Rep (E Id);
+ INLINE N Enumeration_Rep_Expr (E Id);
+ INLINE E Equivalent_Type (E Id);
+ INLINE U Esize (E Id);
+ INLINE U Exception_Code (E Id);
+ INLINE E Extra_Accessibility (E Id);
+ INLINE E Extra_Constrained (E Id);
+ INLINE E Extra_Formal (E Id);
+ INLINE E Finalization_Chain_Entity (E Id);
+
+ #define Finalize_Storage_Only einfo__finalize_storage_only
+ B Finalize_Storage_Only (E Id);
+
+ INLINE E First_Entity (E Id);
+ INLINE N First_Index (E Id);
+ INLINE E First_Literal (E Id);
+ INLINE E First_Optional_Parameter (E Id);
+ INLINE E First_Private_Entity (E Id);
+ INLINE N First_Rep_Item (E Id);
+ INLINE N Freeze_Node (E Id);
+ INLINE B From_With_Type (E Id);
+ INLINE E Full_View (E Id);
+ INLINE B Function_Returns_With_DSP (E Id);
+ INLINE L Generic_Renamings (E Id);
+ INLINE L Girder_Constraint (E Id);
+ INLINE S Handler_Records (E Id);
+ INLINE B Has_Aliased_Components (E Id);
+ INLINE B Has_Alignment_Clause (E Id);
+ INLINE B Has_All_Calls_Remote (E Id);
+ INLINE B Has_Atomic_Components (E Id);
+ INLINE B Has_Biased_Representation (E Id);
+ INLINE B Has_Completion (E Id);
+ INLINE B Has_Completion_In_Body (E Id);
+ INLINE B Has_Complex_Representation (E Id);
+ INLINE B Has_Component_Size_Clause (E Id);
+ INLINE B Has_Controlled_Component (E Id);
+ INLINE B Has_Controlling_Result (E Id);
+ INLINE B Has_Convention_Pragma (E Id);
+ INLINE B Has_Delayed_Freeze (E Id);
+ INLINE B Has_Discriminants (E Id);
+ INLINE B Has_Enumeration_Rep_Clause (E Id);
+ INLINE B Has_Exit (E Id);
+ INLINE B Has_External_Tag_Rep_Clause (E Id);
+ INLINE B Has_Fully_Qualified_Name (E Id);
+ INLINE B Has_Gigi_Rep_Item (E Id);
+ INLINE B Has_Homonym (E Id);
+
+ #define Has_Interrupt_Handler einfo__has_interrupt_handler
+ B Has_Interrupt_Handler (E Id);
+
+ INLINE B Has_Machine_Radix_Clause (E Id);
+ INLINE B Has_Master_Entity (E Id);
+ INLINE B Has_Missing_Return (E Id);
+ INLINE B Has_Nested_Block_With_Handler (E Id);
+ INLINE B Has_Forward_Instantiation (E Id);
+ INLINE B Has_Non_Standard_Rep (E Id);
+ INLINE B Has_Object_Size_Clause (E Id);
+ INLINE B Has_Per_Object_Constraint (E Id);
+ INLINE B Has_Pragma_Controlled (E Id);
+ INLINE B Has_Pragma_Elaborate_Body (E Id);
+ INLINE B Has_Pragma_Inline (E Id);
+ INLINE B Has_Pragma_Pack (E Id);
+ INLINE B Has_Primitive_Operations (E Id);
+ INLINE B Has_Qualified_Name (E Id);
+ INLINE B Has_Record_Rep_Clause (E Id);
+ INLINE B Has_Recursive_Call (E Id);
+ INLINE B Has_Size_Clause (E Id);
+ INLINE B Has_Small_Clause (E Id);
+ INLINE B Has_Specified_Layout (E Id);
+ INLINE B Has_Storage_Size_Clause (E Id);
+ INLINE B Has_Subprogram_Descriptor (E Id);
+ INLINE B Has_Task (E Id);
+ INLINE B Has_Unchecked_Union (E Id);
+ INLINE B Has_Unknown_Discriminants (E Id);
+ INLINE B Has_Volatile_Components (E Id);
+ INLINE E Homonym (E Id);
+ INLINE E Hiding_Loop_Variable (E Id);
+ INLINE B In_Package_Body (E Id);
+ INLINE B In_Private_Part (E Id);
+ INLINE B In_Use (E Id);
+ INLINE L Inner_Instances (E Id);
+ INLINE N Interface_Name (E Id);
+ INLINE B Is_AST_Entry (E Id);
+ INLINE B Is_Abstract (E Id);
+ INLINE B Is_Access_Constant (E Id);
+ INLINE B Is_Aliased (E Id);
+ INLINE B Is_Asynchronous (E Id);
+ INLINE B Is_Atomic (E Id);
+ INLINE B Is_Bit_Packed_Array (E Id);
+ INLINE B Is_CPP_Class (E Id);
+ INLINE B Is_Called (E Id);
+ INLINE B Is_Character_Type (E Id);
+ INLINE B Is_Child_Unit (E Id);
+ INLINE B Is_Compilation_Unit (E Id);
+ INLINE B Is_Completely_Hidden (E Id);
+ INLINE B Is_Constr_Subt_For_UN_Aliased (E Id);
+ INLINE B Is_Constr_Subt_For_U_Nominal (E Id);
+ INLINE B Is_Constrained (E Id);
+ INLINE B Is_Constructor (E Id);
+ INLINE B Is_Controlled (E Id);
+ INLINE B Is_Controlling_Formal (E Id);
+ INLINE B Is_Destructor (E Id);
+ INLINE B Is_Discrim_SO_Function (E Id);
+ INLINE B Is_Dispatching_Operation (E Id);
+ INLINE B Is_Eliminated (E Id);
+ INLINE B Is_Entry_Formal (E Id);
+ INLINE B Is_Exported (E Id);
+ INLINE B Is_First_Subtype (E Id);
+ INLINE B Is_For_Access_Subtype (E Id);
+ INLINE B Is_Frozen (E Id);
+ INLINE B Is_Generic_Instance (E Id);
+ INLINE B Is_Hidden (E Id);
+ INLINE B Is_Hidden_Open_Scope (E Id);
+ INLINE B Is_Immediately_Visible (E Id);
+ INLINE B Is_Imported (E Id);
+ INLINE B Is_Inlined (E Id);
+ INLINE B Is_Instantiated (E Id);
+ INLINE B Is_Internal (E Id);
+ INLINE B Is_Interrupt_Handler (E Id);
+ INLINE B Is_Intrinsic_Subprogram (E Id);
+ INLINE B Is_Itype (E Id);
+ INLINE B Is_Known_Valid (E Id);
+ INLINE B Is_Limited_Composite (E Id);
+ INLINE B Is_Machine_Code_Subprogram (E Id);
+ INLINE B Is_Non_Static_Subtype (E Id);
+ INLINE B Is_Null_Init_Proc (E Id);
+ INLINE B Is_Optional_Parameter (E Id);
+ INLINE B Is_Package_Body_Entity (E Id);
+ INLINE B Is_Packed (E Id);
+ INLINE B Is_Packed_Array_Type (E Id);
+ INLINE B Is_Potentially_Use_Visible (E Id);
+ INLINE B Is_Preelaborated (E Id);
+ INLINE B Is_Private_Composite (E Id);
+ INLINE B Is_Private_Descendant (E Id);
+ INLINE B Is_Psected (E Id);
+ INLINE B Is_Public (E Id);
+ INLINE B Is_Pure (E Id);
+ INLINE B Is_Remote_Call_Interface (E Id);
+ INLINE B Is_Remote_Types (E Id);
+ INLINE B Is_Renaming_Of_Object (E Id);
+ INLINE B Is_Shared_Passive (E Id);
+ INLINE B Is_Statically_Allocated (E Id);
+ INLINE B Is_Tag (E Id);
+ INLINE B Is_Tagged_Type (E Id);
+ INLINE B Is_True_Constant (E Id);
+ INLINE B Is_Unchecked_Union (E Id);
+ INLINE B Is_Unsigned_Type (E Id);
+ INLINE B Is_VMS_Exception (E Id);
+ INLINE B Is_Valued_Procedure (E Id);
+ INLINE B Is_Visible_Child_Unit (E Id);
+ INLINE B Is_Volatile (E Id);
+
+ #define Is_Wrapper_Package einfo__is_wrapper_package
+ B Is_Wrapper_Package (E Id);
+
+ INLINE E Last_Entity (E Id);
+ INLINE E Lit_Indexes (E Id);
+ INLINE E Lit_Strings (E Id);
+ INLINE B Machine_Radix_10 (E Id);
+ INLINE E Master_Id (E Id);
+ INLINE B Materialize_Entity (E Id);
+ INLINE M Mechanism (E Id);
+ INLINE U Modulus (E Id);
+ INLINE B Needs_Debug_Info (E Id);
+ INLINE B Needs_No_Actuals (E Id);
+ INLINE E Next_Inlined_Subprogram (E Id);
+ INLINE B No_Pool_Assigned (E Id);
+ INLINE B No_Return (E Id);
+ INLINE B Non_Binary_Modulus (E Id);
+ INLINE B Nonzero_Is_True (E Id);
+ INLINE U Normalized_First_Bit (E Id);
+ INLINE U Normalized_Position (E Id);
+ INLINE U Normalized_Position_Max (E Id);
+ INLINE B Not_Source_Assigned (E Id);
+ INLINE E Object_Ref (E Id);
+ INLINE E Original_Record_Component (E Id);
+ INLINE E Packed_Array_Type (E Id);
+ INLINE E Parent_Subtype (E Id);
+ INLINE L Primitive_Operations (E Id);
+ INLINE E Prival (E Id);
+ INLINE L Privals_Chain (E Id);
+ INLINE L Private_Dependents (E Id);
+ INLINE N Private_View (E Id);
+ INLINE E Protected_Body_Subprogram (E Id);
+ INLINE E Protected_Formal (E Id);
+ INLINE E Protected_Operation (E Id);
+ INLINE U RM_Size (E Id);
+ INLINE B Reachable (E Id);
+ INLINE B Referenced (E Id);
+ INLINE N Referenced_Object (E Id);
+ INLINE N Register_Exception_Call (E Id);
+ INLINE E Related_Array_Object (E Id);
+ INLINE E Related_Instance (E Id);
+ INLINE N Renamed_Entity (E Id);
+ INLINE N Renamed_Object (E Id);
+ INLINE U Renaming_Map (E Id);
+ INLINE B Return_Present (E Id);
+ INLINE B Returns_By_Ref (E Id);
+ INLINE B Reverse_Bit_Order (E Id);
+ INLINE N Scalar_Range (E Id);
+ INLINE U Scale_Value (E Id);
+ INLINE U Scope_Depth_Value (E Id);
+ INLINE B Sec_Stack_Needed_For_Return (E Id);
+ INLINE S Shadow_Entities (E Id);
+ INLINE E Shared_Var_Assign_Proc (E Id);
+ INLINE E Shared_Var_Read_Proc (E Id);
+ INLINE N Size_Check_Code (E Id);
+ INLINE B Size_Known_At_Compile_Time (E Id);
+ INLINE B Size_Depends_On_Discriminant (E Id);
+ INLINE R Small_Value (E Id);
+ INLINE E Spec_Entity (E Id);
+ INLINE E Storage_Size_Variable (E Id);
+ INLINE B Strict_Alignment (E Id);
+ INLINE U String_Literal_Length (E Id);
+ INLINE N String_Literal_Low_Bound (E Id);
+ INLINE B Suppress_Access_Checks (E Id);
+ INLINE B Suppress_Accessibility_Checks (E Id);
+ INLINE B Suppress_Discriminant_Checks (E Id);
+ INLINE B Suppress_Division_Checks (E Id);
+ INLINE B Suppress_Elaboration_Checks (E Id);
+ INLINE B Suppress_Elaboration_Warnings (E Id);
+ INLINE B Suppress_Index_Checks (E Id);
+ INLINE B Suppress_Init_Proc (E Id);
+ INLINE B Suppress_Length_Checks (E Id);
+ INLINE B Suppress_Overflow_Checks (E Id);
+ INLINE B Suppress_Range_Checks (E Id);
+ INLINE B Suppress_Storage_Checks (E Id);
+ INLINE B Suppress_Style_Checks (E Id);
+ INLINE B Suppress_Tag_Checks (E Id);
+ INLINE E Underlying_Full_View (E Id);
+ INLINE N Unset_Reference (E Id);
+ INLINE B Uses_Sec_Stack (E Id);
+ INLINE B Vax_Float (E Id);
+ INLINE B Warnings_Off (E Id);
+ INLINE B Is_Access_Type (E Id);
+ INLINE B Is_Array_Type (E Id);
+ INLINE B Is_Class_Wide_Type (E Id);
+ INLINE B Is_Composite_Type (E Id);
+ INLINE B Is_Concurrent_Body (E Id);
+ INLINE B Is_Concurrent_Record_Type (E Id);
+ INLINE B Is_Concurrent_Type (E Id);
+ INLINE B Is_Decimal_Fixed_Point_Type (E Id);
+ INLINE B Is_Digits_Type (E Id);
+ INLINE B Is_Discrete_Or_Fixed_Point_Type (E Id);
+ INLINE B Is_Discrete_Type (E Id);
+ INLINE B Is_Elementary_Type (E Id);
+ INLINE B Is_Entry (E Id);
+ INLINE B Is_Enumeration_Type (E Id);
+ INLINE B Is_Fixed_Point_Type (E Id);
+ INLINE B Is_Floating_Point_Type (E Id);
+ INLINE B Is_Formal (E Id);
+ INLINE B Is_Formal_Subprogram (E Id);
+ INLINE B Is_Generic_Actual_Type (E Id);
+ INLINE B Is_Generic_Type (E Id);
+ INLINE B Is_Generic_Unit (E Id);
+ INLINE B Is_Incomplete_Or_Private_Type (E Id);
+ INLINE B Is_Integer_Type (E Id);
+ INLINE B Is_Limited_Record (E Id);
+ INLINE B Is_Modular_Integer_Type (E Id);
+ INLINE B Is_Named_Number (E Id);
+ INLINE B Is_Numeric_Type (E Id);
+ INLINE B Is_Object (E Id);
+ INLINE B Is_Ordinary_Fixed_Point_Type (E Id);
+ INLINE B Is_Overloadable (E Id);
+ INLINE B Is_Private_Type (E Id);
+ INLINE B Is_Protected_Type (E Id);
+ INLINE B Is_Real_Type (E Id);
+ INLINE B Is_Record_Type (E Id);
+ INLINE B Is_Scalar_Type (E Id);
+ INLINE B Is_Signed_Integer_Type (E Id);
+ INLINE B Is_Subprogram (E Id);
+ INLINE B Is_Task_Type (E Id);
+ INLINE B Is_Type (E Id);
+
+ #define Address_Clause einfo__address_clause
+ N Address_Clause (E Id);
+
+ #define Alignment_Clause einfo__alignment_clause
+ N Alignment_Clause (E Id);
+
+ #define Ancestor_Subtype einfo__ancestor_subtype
+ E Ancestor_Subtype (E Id);
+
+ #define Base_Type einfo__base_type
+ E Base_Type (E Id);
+
+ #define Constant_Value einfo__constant_value
+ N Constant_Value (E Id);
+
+ #define Declaration_Node einfo__declaration_node
+ N Declaration_Node (E Id);
+
+ #define Designated_Type einfo__designated_type
+ E Designated_Type (E Id);
+
+ #define Enclosing_Dynamic_Scope einfo__enclosing_dynamic_scope
+ E Enclosing_Dynamic_Scope (E Id);
+
+ #define First_Component einfo__first_component
+ E First_Component (E Id);
+
+ #define First_Discriminant einfo__first_discriminant
+ E First_Discriminant (E Id);
+
+ #define First_Formal einfo__first_formal
+ E First_Formal (E Id);
+
+ #define First_Girder_Discriminant einfo__first_girder_discriminant
+ E First_Girder_Discriminant (E Id);
+
+ #define First_Subtype einfo__first_subtype
+ E First_Subtype (E Id);
+
+ #define Has_Attach_Handler einfo__has_attach_handler
+ B Has_Attach_Handler (E Id);
+
+ #define Has_Entries einfo__has_entries
+ B Has_Entries (E Id);
+
+ #define Has_Foreign_Convention einfo__has_foreign_convention
+ B Has_Foreign_Convention (E Id);
+
+ #define Has_Private_Ancestor einfo__has_private_ancestor
+ B Has_Private_Ancestor (E Id);
+
+ INLINE B Has_Private_Declaration (E Id);
+
+ #define Implementation_Base_Type einfo__implementation_base_type
+ E Implementation_Base_Type (E Id);
+
+ #define Is_Always_Inlined einfo__is_always_inlined
+ B Is_Always_Inlined (E Id);
+
+ #define Is_Boolean_Type einfo__is_boolean_type
+ B Is_Boolean_Type (E Id);
+
+ #define Is_By_Copy_Type einfo__is_by_copy_type
+ B Is_By_Copy_Type (E Id);
+
+ #define Is_By_Reference_Type einfo__is_by_reference_type
+ B Is_By_Reference_Type (E Id);
+
+ #define Is_Derived_Type einfo__is_derived_type
+ B Is_Derived_Type (E Id);
+
+ #define Is_Dynamic_Scope einfo__is_dynamic_scope
+ B Is_Dynamic_Scope (E Id);
+
+ #define Is_Indefinite_Subtype einfo__is_indefinite_subtype
+ B Is_Indefinite_Subtype (E Id);
+
+ #define Is_Limited_Type einfo__is_limited_type
+ B Is_Limited_Type (E Id);
+
+ #define Is_Package einfo__is_package
+ B Is_Package (E Id);
+
+ #define Is_Protected_Private einfo__is_protected_private
+ B Is_Protected_Private (E Id);
+
+ #define Is_Protected_Record_Type einfo__is_protected_record_type
+ B Is_Protected_Record_Type (E Id);
+
+ #define Is_Return_By_Reference_Type einfo__is_return_by_reference_type
+ B Is_Return_By_Reference_Type (E Id);
+
+ #define Is_String_Type einfo__is_string_type
+ B Is_String_Type (E Id);
+
+ #define Is_Task_Record_Type einfo__is_task_record_type
+ B Is_Task_Record_Type (E Id);
+
+ #define Next_Component einfo__next_component
+ E Next_Component (E Id);
+
+ #define Next_Discriminant einfo__next_discriminant
+ E Next_Discriminant (E Id);
+
+ #define Next_Formal einfo__next_formal
+ E Next_Formal (E Id);
+
+ #define Next_Formal_With_Extras einfo__next_formal_with_extras
+ E Next_Formal_With_Extras (E Id);
+
+ #define Next_Girder_Discriminant einfo__next_girder_discriminant
+ E Next_Girder_Discriminant (E Id);
+
+ INLINE E Next_Literal (E Id);
+
+ #define Number_Dimensions einfo__number_dimensions
+ Pos Number_Dimensions (E Id);
+
+ #define Number_Discriminants einfo__number_discriminants
+ Pos Number_Discriminants (E Id);
+
+ #define Number_Entries einfo__number_entries
+ Nat Number_Entries (E Id);
+
+ #define Number_Formals einfo__number_formals
+ Pos Number_Formals (E Id);
+
+ INLINE Formal_Kind Parameter_Mode (E Id);
+
+ #define Root_Type einfo__root_type
+ E Root_Type (E Id);
+
+ #define Scope_Depth_Set einfo__scope_depth_set
+ B Scope_Depth_Set (E Id);
+
+ #define Size_Clause einfo__size_clause
+ N Size_Clause (E Id);
+
+ #define Tag_Component einfo__tag_component
+ E Tag_Component (E Id);
+
+ #define Type_High_Bound einfo__type_high_bound
+ N Type_High_Bound (E Id);
+
+ #define Type_Low_Bound einfo__type_low_bound
+ N Type_Low_Bound (E Id);
+
+ #define Underlying_Type einfo__underlying_type
+ E Underlying_Type (E Id);
+
+ INLINE B Known_Alignment (Entity_Id E);
+ INLINE B Known_Component_Bit_Offset (Entity_Id E);
+ INLINE B Known_Component_Size (Entity_Id E);
+ INLINE B Known_Esize (Entity_Id E);
+
+ #define Known_Normalized_First_Bit einfo__known_normalized_first_bit
+ B Known_Normalized_First_Bit (Entity_Id E);
+
+ #define Known_Normalized_Position einfo__known_normalized_position
+ B Known_Normalized_Position (Entity_Id E);
+
+ #define Known_Normalized_Position_Max einfo__known_normalized_position_max
+ B Known_Normalized_Position_Max (Entity_Id E);
+
+ #define Known_RM_Size einfo__known_rm_size
+ B Known_RM_Size (Entity_Id E);
+
+ #define Known_Static_Component_Bit_Offset einfo__known_static_component_bit_offset
+ B Known_Static_Component_Bit_Offset (Entity_Id E);
+
+ INLINE B Known_Static_Component_Size (Entity_Id E);
+ INLINE B Known_Static_Esize (Entity_Id E);
+
+ #define Known_Static_Normalized_Position einfo__known_static_normalized_position
+ B Known_Static_Normalized_Position (Entity_Id E);
+
+ #define Known_Static_Normalized_Position_Max einfo__known_static_normalized_position_max
+ B Known_Static_Normalized_Position_Max (Entity_Id E);
+
+ #define Known_Static_RM_Size einfo__known_static_rm_size
+ B Known_Static_RM_Size (Entity_Id E);
+
+ INLINE B Unknown_Alignment (Entity_Id E);
+ INLINE B Unknown_Component_Bit_Offset (Entity_Id E);
+ INLINE B Unknown_Component_Size (Entity_Id E);
+ INLINE B Unknown_Esize (Entity_Id E);
+
+ #define Unknown_Normalized_First_Bit einfo__unknown_normalized_first_bit
+ B Unknown_Normalized_First_Bit (Entity_Id E);
+
+ #define Unknown_Normalized_Position einfo__unknown_normalized_position
+ B Unknown_Normalized_Position (Entity_Id E);
+
+ #define Unknown_Normalized_Position_Max einfo__unknown_normalized_position_max
+ B Unknown_Normalized_Position_Max (Entity_Id E);
+
+ #define Unknown_RM_Size einfo__unknown_rm_size
+ B Unknown_RM_Size (Entity_Id E);
+
+
+ INLINE L Accept_Address (E Id)
+ { return Elist21 (Id); }
+
+ INLINE E Access_Disp_Table (E Id)
+ { return Node16 (Base_Type (Underlying_Type (Base_Type (Id)))); }
+
+ INLINE E Actual_Subtype (E Id)
+ { return Node17 (Id); }
+
+ INLINE B Address_Taken (E Id)
+ { return Flag104 (Id); }
+
+ INLINE E Alias (E Id)
+ { return Node18 (Id); }
+
+ INLINE U Alignment (E Id)
+ { return Uint14 (Id); }
+
+ INLINE E Associated_Final_Chain (E Id)
+ { return Node23 (Id); }
+
+ INLINE E Associated_Formal_Package (E Id)
+ { return Node12 (Id); }
+
+ INLINE N Associated_Node_For_Itype (E Id)
+ { return Node8 (Id); }
+
+ INLINE E Associated_Storage_Pool (E Id)
+ { return Node22 (Id); }
+
+ INLINE N Barrier_Function (E Id)
+ { return Node12 (Id); }
+
+ INLINE N Block_Node (E Id)
+ { return Node11 (Id); }
+
+ INLINE E Body_Entity (E Id)
+ { return Node19 (Id); }
+
+ INLINE B C_Pass_By_Copy (E Id)
+ { return Flag125 (Implementation_Base_Type (Id)); }
+
+ INLINE E Class_Wide_Type (E Id)
+ { return Node9 (Id); }
+
+ INLINE E Cloned_Subtype (E Id)
+ { return Node16 (Id); }
+
+ INLINE U Component_Bit_Offset (E Id)
+ { return Uint11 (Id); }
+
+ INLINE N Component_Clause (E Id)
+ { return Node13 (Id); }
+
+ INLINE U Component_Size (E Id)
+ { return Uint22 (Implementation_Base_Type (Id)); }
+
+ INLINE E Component_Type (E Id)
+ { return Node20 (Implementation_Base_Type (Id)); }
+
+ INLINE E Corresponding_Concurrent_Type (E Id)
+ { return Node18 (Id); }
+
+ INLINE E Corresponding_Discriminant (E Id)
+ { return Node19 (Id); }
+
+ INLINE E Corresponding_Equality (E Id)
+ { return Node13 (Id); }
+
+ INLINE E Corresponding_Record_Type (E Id)
+ { return Node18 (Id); }
+
+ INLINE E Corresponding_Remote_Type (E Id)
+ { return Node22 (Id); }
+
+ INLINE E CR_Discriminant (E Id)
+ { return Node23 (Id); }
+
+ INLINE B Debug_Info_Off (E Id)
+ { return Flag166 (Id); }
+
+ INLINE E Debug_Renaming_Link (E Id)
+ { return Node13 (Id); }
+
+ INLINE E Default_Expr_Function (E Id)
+ { return Node21 (Id); }
+
+ INLINE B Default_Expressions_Processed (E Id)
+ { return Flag108 (Id); }
+
+ INLINE N Default_Value (E Id)
+ { return Node20 (Id); }
+
+ INLINE B Delay_Cleanups (E Id)
+ { return Flag114 (Id); }
+
+ INLINE B Delay_Subprogram_Descriptors (E Id)
+ { return Flag50 (Id); }
+
+ INLINE R Delta_Value (E Id)
+ { return Ureal18 (Id); }
+
+ INLINE L Dependent_Instances (E Id)
+ { return Elist8 (Id); }
+
+ INLINE B Depends_On_Private (E Id)
+ { return Flag14 (Id); }
+
+ INLINE U Digits_Value (E Id)
+ { return Uint17 (Id); }
+
+ INLINE E Directly_Designated_Type (E Id)
+ { return Node20 (Id); }
+
+ INLINE B Discard_Names (E Id)
+ { return Flag88 (Id); }
+
+ INLINE E Discriminal (E Id)
+ { return Node17 (Id); }
+
+ INLINE N Discriminal_Link (E Id)
+ { return Node10 (Id); }
+
+ INLINE E Discriminant_Checking_Func (E Id)
+ { return Node20 (Id); }
+
+ INLINE L Discriminant_Constraint (E Id)
+ { return Elist21 (Id); }
+
+ INLINE N Discriminant_Default_Value (E Id)
+ { return Node20 (Id); }
+
+ INLINE U Discriminant_Number (E Id)
+ { return Uint15 (Id); }
+
+ INLINE U DT_Entry_Count (E Id)
+ { return Uint15 (Id); }
+
+ INLINE U DT_Position (E Id)
+ { return Uint15 (Id); }
+
+ INLINE E DTC_Entity (E Id)
+ { return Node16 (Id); }
+
+ INLINE B Elaborate_All_Desirable (E Id)
+ { return Flag146 (Id); }
+
+ INLINE E Elaboration_Entity (E Id)
+ { return Node13 (Id); }
+
+ INLINE B Elaboration_Entity_Required (E Id)
+ { return Flag174 (Id); }
+
+ INLINE E Enclosing_Scope (E Id)
+ { return Node18 (Id); }
+
+ INLINE B Entry_Accepted (E Id)
+ { return Flag152 (Id); }
+
+ INLINE E Entry_Bodies_Array (E Id)
+ { return Node15 (Id); }
+
+ INLINE E Entry_Cancel_Parameter (E Id)
+ { return Node23 (Id); }
+
+ INLINE E Entry_Component (E Id)
+ { return Node11 (Id); }
+
+ INLINE E Entry_Formal (E Id)
+ { return Node16 (Id); }
+
+ INLINE N Entry_Index_Constant (E Id)
+ { return Node18 (Id); }
+
+ INLINE E Entry_Parameters_Type (E Id)
+ { return Node15 (Id); }
+
+ INLINE E Enum_Pos_To_Rep (E Id)
+ { return Node23 (Id); }
+
+ INLINE Uint Enumeration_Pos (E Id)
+ { return Uint11 (Id); }
+
+ INLINE U Enumeration_Rep (E Id)
+ { return Uint12 (Id); }
+
+ INLINE N Enumeration_Rep_Expr (E Id)
+ { return Node22 (Id); }
+
+ INLINE E Equivalent_Type (E Id)
+ { return Node18 (Id); }
+
+ INLINE Uint Esize (E Id)
+ { return Uint12 (Id); }
+
+ INLINE Uint Exception_Code (E Id)
+ { return Uint22 (Id); }
+
+ INLINE E Extra_Accessibility (E Id)
+ { return Node13 (Id); }
+
+ INLINE E Extra_Constrained (E Id)
+ { return Node23 (Id); }
+
+ INLINE E Extra_Formal (E Id)
+ { return Node15 (Id); }
+
+ INLINE E Finalization_Chain_Entity (E Id)
+ { return Node19 (Id); }
+
+ INLINE E First_Entity (E Id)
+ { return Node17 (Id); }
+
+ INLINE N First_Index (E Id)
+ { return Node17 (Id); }
+
+ INLINE E First_Literal (E Id)
+ { return Node17 (Id); }
+
+ INLINE E First_Optional_Parameter (E Id)
+ { return Node14 (Id); }
+
+ INLINE E First_Private_Entity (E Id)
+ { return Node16 (Id); }
+
+ INLINE E First_Rep_Item (E Id)
+ { return Node6 (Id); }
+
+ INLINE N Freeze_Node (E Id)
+ { return Node7 (Id); }
+
+ INLINE B From_With_Type (E Id)
+ { return Flag159 (Id); }
+
+ INLINE E Full_View (E Id)
+ { return Node11 (Id); }
+
+ INLINE B Function_Returns_With_DSP (E Id)
+ { return Flag169 (Id); }
+
+ INLINE L Generic_Renamings (E Id)
+ { return Elist23 (Id); }
+
+ INLINE L Girder_Constraint (E Id)
+ { return Elist23 (Id); }
+
+ INLINE S Handler_Records (E Id)
+ { return List10 (Id); }
+
+ INLINE B Has_Aliased_Components (E Id)
+ { return Flag135 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Alignment_Clause (E Id)
+ { return Flag46 (Id); }
+
+ INLINE B Has_All_Calls_Remote (E Id)
+ { return Flag79 (Id); }
+
+ INLINE B Has_Atomic_Components (E Id)
+ { return Flag86 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Biased_Representation (E Id)
+ { return Flag139 (Id); }
+
+ INLINE B Has_Completion (E Id)
+ { return Flag26 (Id); }
+
+ INLINE B Has_Completion_In_Body (E Id)
+ { return Flag71 (Id); }
+
+ INLINE B Has_Complex_Representation (E Id)
+ { return Flag140 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Component_Size_Clause (E Id)
+ { return Flag68 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Controlled_Component (E Id)
+ { return Flag43 (Base_Type (Id)); }
+
+ INLINE B Has_Controlling_Result (E Id)
+ { return Flag98 (Id); }
+
+ INLINE B Has_Convention_Pragma (E Id)
+ { return Flag119 (Id); }
+
+ INLINE B Has_Delayed_Freeze (E Id)
+ { return Flag18 (Id); }
+
+ INLINE B Has_Discriminants (E Id)
+ { return Flag5 (Id); }
+
+ INLINE B Has_Enumeration_Rep_Clause (E Id)
+ { return Flag66 (Id); }
+
+ INLINE B Has_Exit (E Id)
+ { return Flag47 (Id); }
+
+ INLINE B Has_External_Tag_Rep_Clause (E Id)
+ { return Flag110 (Id); }
+
+ INLINE B Has_Forward_Instantiation (E Id)
+ { return Flag175 (Id); }
+
+ INLINE B Has_Fully_Qualified_Name (E Id)
+ { return Flag173 (Id); }
+
+ INLINE B Has_Gigi_Rep_Item (E Id)
+ { return Flag82 (Id); }
+
+ INLINE B Has_Homonym (E Id)
+ { return Flag56 (Id); }
+
+ INLINE B Has_Machine_Radix_Clause (E Id)
+ { return Flag83 (Id); }
+
+ INLINE B Has_Master_Entity (E Id)
+ { return Flag21 (Id); }
+
+ INLINE B Has_Missing_Return (E Id)
+ { return Flag142 (Id); }
+
+ INLINE B Has_Nested_Block_With_Handler (E Id)
+ { return Flag101 (Id); }
+
+ INLINE B Has_Non_Standard_Rep (E Id)
+ { return Flag75 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Object_Size_Clause (E Id)
+ { return Flag172 (Id); }
+
+ INLINE B Has_Per_Object_Constraint (E Id)
+ { return Flag154 (Id); }
+
+ INLINE B Has_Pragma_Controlled (E Id)
+ { return Flag27 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Pragma_Elaborate_Body (E Id)
+ { return Flag150 (Id); }
+
+ INLINE B Has_Pragma_Inline (E Id)
+ { return Flag157 (Id); }
+
+ INLINE B Has_Pragma_Pack (E Id)
+ { return Flag121 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Primitive_Operations (E Id)
+ { return Flag120 (Base_Type (Id)); }
+
+ INLINE B Has_Private_Declaration (E Id)
+ { return Flag155 (Id); }
+
+ INLINE B Has_Qualified_Name (E Id)
+ { return Flag161 (Id); }
+
+ INLINE B Has_Record_Rep_Clause (E Id)
+ { return Flag65 (Id); }
+
+ INLINE B Has_Recursive_Call (E Id)
+ { return Flag143 (Id); }
+
+ INLINE B Has_Size_Clause (E Id)
+ { return Flag29 (Id); }
+
+ INLINE B Has_Small_Clause (E Id)
+ { return Flag67 (Id); }
+
+ INLINE B Has_Specified_Layout (E Id)
+ { return Flag100 (Id); }
+
+ INLINE B Has_Storage_Size_Clause (E Id)
+ { return Flag23 (Implementation_Base_Type (Id)); }
+
+ INLINE B Has_Subprogram_Descriptor (E Id)
+ { return Flag93 (Id); }
+
+ INLINE B Has_Task (E Id)
+ { return Flag30 (Base_Type (Id)); }
+
+ INLINE B Has_Unchecked_Union (E Id)
+ { return Flag123 (Base_Type (Id)); }
+
+ INLINE B Has_Unknown_Discriminants (E Id)
+ { return Flag72 (Id); }
+
+ INLINE B Has_Volatile_Components (E Id)
+ { return Flag87 (Implementation_Base_Type (Id)); }
+
+ INLINE E Hiding_Loop_Variable (E Id)
+ { return Node8 (Id); }
+
+ INLINE E Homonym (E Id)
+ { return Node4 (Id); }
+
+ INLINE B In_Package_Body (E Id)
+ { return Flag48 (Id); }
+
+ INLINE B In_Private_Part (E Id)
+ { return Flag45 (Id); }
+
+ INLINE B In_Use (E Id)
+ { return Flag8 (Id); }
+
+ INLINE L Inner_Instances (E Id)
+ { return Elist23 (Id); }
+
+ INLINE N Interface_Name (E Id)
+ { return Node21 (Id); }
+
+ INLINE B Is_Abstract (E Id)
+ { return Flag19 (Id); }
+
+ INLINE B Is_Access_Constant (E Id)
+ { return Flag69 (Id); }
+
+ INLINE B Is_Aliased (E Id)
+ { return Flag15 (Id); }
+
+ INLINE B Is_AST_Entry (E Id)
+ { return Flag132 (Id); }
+
+ INLINE B Is_Asynchronous (E Id)
+ { return Flag81 (Id); }
+
+ INLINE B Is_Atomic (E Id)
+ { return Flag85 (Id); }
+
+ INLINE B Is_Bit_Packed_Array (E Id)
+ { return Flag122 (Implementation_Base_Type (Id)); }
+
+ INLINE B Is_Called (E Id)
+ { return Flag102 (Id); }
+
+ INLINE B Is_Character_Type (E Id)
+ { return Flag63 (Id); }
+
+ INLINE B Is_Child_Unit (E Id)
+ { return Flag73 (Id); }
+
+ INLINE B Is_Compilation_Unit (E Id)
+ { return Flag149 (Id); }
+
+ INLINE B Is_Completely_Hidden (E Id)
+ { return Flag103 (Id); }
+
+ INLINE B Is_Constr_Subt_For_U_Nominal (E Id)
+ { return Flag80 (Id); }
+
+ INLINE B Is_Constr_Subt_For_UN_Aliased (E Id)
+ { return Flag141 (Id); }
+
+ INLINE B Is_Constrained (E Id)
+ { return Flag12 (Id); }
+
+ INLINE B Is_Constructor (E Id)
+ { return Flag76 (Id); }
+
+ INLINE B Is_Controlled (E Id)
+ { return Flag42 (Base_Type (Id)); }
+
+ INLINE B Is_Controlling_Formal (E Id)
+ { return Flag97 (Id); }
+
+ INLINE B Is_CPP_Class (E Id)
+ { return Flag74 (Id); }
+
+ INLINE B Is_Destructor (E Id)
+ { return Flag77 (Id); }
+
+ INLINE B Is_Discrim_SO_Function (E Id)
+ { return Flag176 (Id); }
+
+ INLINE B Is_Dispatching_Operation (E Id)
+ { return Flag6 (Id); }
+
+ INLINE B Is_Eliminated (E Id)
+ { return Flag124 (Id); }
+
+ INLINE B Is_Entry_Formal (E Id)
+ { return Flag52 (Id); }
+
+ INLINE B Is_Exported (E Id)
+ { return Flag99 (Id); }
+
+ INLINE B Is_First_Subtype (E Id)
+ { return Flag70 (Id); }
+
+ INLINE B Is_For_Access_Subtype (E Id)
+ { return Flag118 (Id); }
+
+ INLINE B Is_Formal_Subprogram (E Id)
+ { return Flag111 (Id); }
+
+ INLINE B Is_Frozen (E Id)
+ { return Flag4 (Id); }
+
+ INLINE B Is_Generic_Actual_Type (E Id)
+ { return Flag94 (Id); }
+
+ INLINE B Is_Generic_Instance (E Id)
+ { return Flag130 (Id); }
+
+ INLINE B Is_Generic_Type (E Id)
+ { return Flag13 (Id); }
+
+ INLINE B Is_Hidden (E Id)
+ { return Flag57 (Id); }
+
+ INLINE B Is_Hidden_Open_Scope (E Id)
+ { return Flag171 (Id); }
+
+ INLINE B Is_Immediately_Visible (E Id)
+ { return Flag7 (Id); }
+
+ INLINE B Is_Imported (E Id)
+ { return Flag24 (Id); }
+
+ INLINE B Is_Inlined (E Id)
+ { return Flag11 (Id); }
+
+ INLINE B Is_Instantiated (E Id)
+ { return Flag126 (Id); }
+
+ INLINE B Is_Internal (E Id)
+ { return Flag17 (Id); }
+
+ INLINE B Is_Interrupt_Handler (E Id)
+ { return Flag89 (Id); }
+
+ INLINE B Is_Intrinsic_Subprogram (E Id)
+ { return Flag64 (Id); }
+
+ INLINE B Is_Itype (E Id)
+ { return Flag91 (Id); }
+
+ INLINE B Is_Known_Valid (E Id)
+ { return Flag170 (Id); }
+
+ INLINE B Is_Limited_Composite (E Id)
+ { return Flag106 (Id); }
+
+ INLINE B Is_Limited_Record (E Id)
+ { return Flag25 (Id); }
+
+ INLINE B Is_Machine_Code_Subprogram (E Id)
+ { return Flag137 (Id); }
+
+ INLINE B Is_Non_Static_Subtype (E Id)
+ { return Flag109 (Id); }
+
+ INLINE B Is_Null_Init_Proc (E Id)
+ { return Flag178 (Id); }
+
+ INLINE B Is_Optional_Parameter (E Id)
+ { return Flag134 (Id); }
+
+ INLINE B Is_Package_Body_Entity (E Id)
+ { return Flag160 (Id); }
+
+ INLINE B Is_Packed (E Id)
+ { return Flag51 (Implementation_Base_Type (Id)); }
+
+ INLINE B Is_Packed_Array_Type (E Id)
+ { return Flag138 (Id); }
+
+ INLINE B Is_Potentially_Use_Visible (E Id)
+ { return Flag9 (Id); }
+
+ INLINE B Is_Preelaborated (E Id)
+ { return Flag59 (Id); }
+
+ INLINE B Is_Private_Composite (E Id)
+ { return Flag107 (Id); }
+
+ INLINE B Is_Private_Descendant (E Id)
+ { return Flag53 (Id); }
+
+ INLINE B Is_Psected (E Id)
+ { return Flag153 (Id); }
+
+ INLINE B Is_Public (E Id)
+ { return Flag10 (Id); }
+
+ INLINE B Is_Pure (E Id)
+ { return Flag44 (Id); }
+
+ INLINE B Is_Remote_Call_Interface (E Id)
+ { return Flag62 (Id); }
+
+ INLINE B Is_Remote_Types (E Id)
+ { return Flag61 (Id); }
+
+ INLINE B Is_Renaming_Of_Object (E Id)
+ { return Flag112 (Id); }
+
+ INLINE B Is_Shared_Passive (E Id)
+ { return Flag60 (Id); }
+
+ INLINE B Is_Statically_Allocated (E Id)
+ { return Flag28 (Id); }
+
+ INLINE B Is_Tag (E Id)
+ { return Flag78 (Id); }
+
+ INLINE B Is_Tagged_Type (E Id)
+ { return Flag55 (Id); }
+
+ INLINE B Is_True_Constant (E Id)
+ { return Flag163 (Id); }
+
+ INLINE B Is_Unchecked_Union (E Id)
+ { return Flag117 (Id); }
+
+ INLINE B Is_Unsigned_Type (E Id)
+ { return Flag144 (Id); }
+
+ INLINE B Is_Valued_Procedure (E Id)
+ { return Flag127 (Id); }
+
+ INLINE B Is_Visible_Child_Unit (E Id)
+ { return Flag116 (Id); }
+
+ INLINE B Is_VMS_Exception (E Id)
+ { return Flag133 (Id); }
+
+ INLINE B Is_Volatile (E Id)
+ { return Flag16 (Id); }
+
+ INLINE E Last_Entity (E Id)
+ { return Node20 (Id); }
+
+ INLINE E Lit_Indexes (E Id)
+ { return Node15 (Id); }
+
+ INLINE E Lit_Strings (E Id)
+ { return Node16 (Id); }
+
+ INLINE B Machine_Radix_10 (E Id)
+ { return Flag84 (Id); }
+
+ INLINE E Master_Id (E Id)
+ { return Node17 (Id); }
+
+ INLINE B Materialize_Entity (E Id)
+ { return Flag168 (Id); }
+
+ INLINE M Mechanism (E Id)
+ { return UI_To_Int (Uint8 (Id)); }
+
+ INLINE Uint Modulus (E Id)
+ { return Uint17 (Base_Type (Id)); }
+
+ INLINE B Needs_Debug_Info (E Id)
+ { return Flag147 (Id); }
+
+ INLINE B Needs_No_Actuals (E Id)
+ { return Flag22 (Id); }
+
+ INLINE E Next_Inlined_Subprogram (E Id)
+ { return Node12 (Id); }
+
+ INLINE B No_Pool_Assigned (E Id)
+ { return Flag131 (Root_Type (Id)); }
+
+ INLINE B No_Return (E Id)
+ { return Flag113 (Id); }
+
+ INLINE B Non_Binary_Modulus (E Id)
+ { return Flag58 (Base_Type (Id)); }
+
+ INLINE B Nonzero_Is_True (E Id)
+ { return Flag162 (Base_Type (Id)); }
+
+ INLINE U Normalized_First_Bit (E Id)
+ { return Uint8 (Id); }
+
+ INLINE U Normalized_Position (E Id)
+ { return Uint9 (Id); }
+
+ INLINE U Normalized_Position_Max (E Id)
+ { return Uint10 (Id); }
+
+ INLINE B Not_Source_Assigned (E Id)
+ { return Flag115 (Id); }
+
+ INLINE E Object_Ref (E Id)
+ { return Node17 (Id); }
+
+ INLINE E Original_Record_Component (E Id)
+ { return Node22 (Id); }
+
+ INLINE E Packed_Array_Type (E Id)
+ { return Node23 (Id); }
+
+ INLINE E Parent_Subtype (E Id)
+ { return Node19 (Id); }
+
+ INLINE L Primitive_Operations (E Id)
+ { return Elist15 (Id); }
+
+ INLINE E Prival (E Id)
+ { return Node17 (Id); }
+
+ INLINE L Privals_Chain (E Id)
+ { return Elist23 (Id); }
+
+ INLINE L Private_Dependents (E Id)
+ { return Elist18 (Id); }
+
+ INLINE N Private_View (E Id)
+ { return Node22 (Id); }
+
+ INLINE E Protected_Body_Subprogram (E Id)
+ { return Node11 (Id); }
+
+ INLINE E Protected_Formal (E Id)
+ { return Node22 (Id); }
+
+ INLINE N Protected_Operation (E Id)
+ { return Node23 (Id); }
+
+ INLINE B Reachable (E Id)
+ { return Flag49 (Id); }
+
+ INLINE B Referenced (E Id)
+ { return Flag156 (Id); }
+
+ INLINE N Referenced_Object (E Id)
+ { return Node10 (Id); }
+
+ INLINE N Register_Exception_Call (E Id)
+ { return Node20 (Id); }
+
+ INLINE E Related_Array_Object (E Id)
+ { return Node19 (Id); }
+
+ INLINE E Related_Instance (E Id)
+ { return Node15 (Id); }
+
+ INLINE N Renamed_Entity (E Id)
+ { return Node18 (Id); }
+
+ INLINE N Renamed_Object (E Id)
+ { return Node18 (Id); }
+
+ INLINE U Renaming_Map (E Id)
+ { return Uint9 (Id); }
+
+ INLINE B Return_Present (E Id)
+ { return Flag54 (Id); }
+
+ INLINE B Returns_By_Ref (E Id)
+ { return Flag90 (Id); }
+
+ INLINE B Reverse_Bit_Order (E Id)
+ { return Flag164 (Base_Type (Id)); }
+
+ INLINE U RM_Size (E Id)
+ { return Uint13 (Id); }
+
+ INLINE N Scalar_Range (E Id)
+ { return Node20 (Id); }
+
+ INLINE U Scale_Value (E Id)
+ { return Uint15 (Id); }
+
+ INLINE U Scope_Depth_Value (E Id)
+ { return Uint22 (Id); }
+
+ INLINE B Sec_Stack_Needed_For_Return (E Id)
+ { return Flag167 (Id); }
+
+ INLINE S Shadow_Entities (E Id)
+ { return List14 (Id); }
+
+ INLINE E Shared_Var_Assign_Proc (E Id)
+ { return Node22 (Id); }
+
+ INLINE E Shared_Var_Read_Proc (E Id)
+ { return Node15 (Id); }
+
+ INLINE N Size_Check_Code (E Id)
+ { return Node9 (Id); }
+
+ INLINE B Size_Depends_On_Discriminant (E Id)
+ { return Flag177 (Id); }
+
+ INLINE B Size_Known_At_Compile_Time (E Id)
+ { return Flag92 (Id); }
+
+ INLINE R Small_Value (E Id)
+ { return Ureal21 (Id); }
+
+ INLINE E Spec_Entity (E Id)
+ { return Node19 (Id); }
+
+ INLINE E Storage_Size_Variable (E Id)
+ { return Node15 (Implementation_Base_Type (Id)); }
+
+ INLINE B Strict_Alignment (E Id)
+ { return Flag145 (Implementation_Base_Type (Id)); }
+
+ INLINE U String_Literal_Length (E Id)
+ { return Uint16 (Id); }
+
+ INLINE N String_Literal_Low_Bound (E Id)
+ { return Node15 (Id); }
+
+ INLINE B Suppress_Access_Checks (E Id)
+ { return Flag31 (Id); }
+
+ INLINE B Suppress_Accessibility_Checks (E Id)
+ { return Flag32 (Id); }
+
+ INLINE B Suppress_Discriminant_Checks (E Id)
+ { return Flag33 (Id); }
+
+ INLINE B Suppress_Division_Checks (E Id)
+ { return Flag34 (Id); }
+
+ INLINE B Suppress_Elaboration_Checks (E Id)
+ { return Flag35 (Id); }
+
+ INLINE B Suppress_Elaboration_Warnings (E Id)
+ { return Flag148 (Id); }
+
+ INLINE B Suppress_Index_Checks (E Id)
+ { return Flag36 (Id); }
+
+ INLINE B Suppress_Init_Proc (E Id)
+ { return Flag105 (Base_Type (Id)); }
+
+ INLINE B Suppress_Length_Checks (E Id)
+ { return Flag37 (Id); }
+
+ INLINE B Suppress_Overflow_Checks (E Id)
+ { return Flag38 (Id); }
+
+ INLINE B Suppress_Range_Checks (E Id)
+ { return Flag39 (Id); }
+
+ INLINE B Suppress_Storage_Checks (E Id)
+ { return Flag40 (Id); }
+
+ INLINE B Suppress_Style_Checks (E Id)
+ { return Flag165 (Id); }
+
+ INLINE B Suppress_Tag_Checks (E Id)
+ { return Flag41 (Id); }
+
+ INLINE E Underlying_Full_View (E Id)
+ { return Node19 (Id); }
+
+ INLINE N Unset_Reference (E Id)
+ { return Node16 (Id); }
+
+ INLINE B Uses_Sec_Stack (E Id)
+ { return Flag95 (Id); }
+
+ INLINE B Vax_Float (E Id)
+ { return Flag151 (Base_Type (Id)); }
+
+ INLINE B Warnings_Off (E Id)
+ { return Flag96 (Id); }
+
+ INLINE B Is_Access_Type (E Id)
+ { return IN (Ekind (Id), Access_Kind); }
+
+ INLINE B Is_Array_Type (E Id)
+ { return IN (Ekind (Id), Array_Kind); }
+
+ INLINE B Is_Class_Wide_Type (E Id)
+ { return IN (Ekind (Id), Class_Wide_Kind); }
+
+ INLINE B Is_Composite_Type (E Id)
+ { return IN (Ekind (Id), Composite_Kind); }
+
+ INLINE B Is_Concurrent_Body (E Id)
+ { return IN (Ekind (Id), Concurrent_Body_Kind); }
+
+ INLINE B Is_Concurrent_Record_Type (E Id)
+ { return Flag20 (Id); }
+
+ INLINE B Is_Concurrent_Type (E Id)
+ { return IN (Ekind (Id), Concurrent_Kind); }
+
+ INLINE B Is_Decimal_Fixed_Point_Type (E Id)
+ { return IN (Ekind (Id), Decimal_Fixed_Point_Kind); }
+
+ INLINE B Is_Digits_Type (E Id)
+ { return IN (Ekind (Id), Digits_Kind); }
+
+ INLINE B Is_Discrete_Or_Fixed_Point_Type (E Id)
+ { return IN (Ekind (Id), Discrete_Or_Fixed_Point_Kind); }
+
+ INLINE B Is_Discrete_Type (E Id)
+ { return IN (Ekind (Id), Discrete_Kind); }
+
+ INLINE B Is_Elementary_Type (E Id)
+ { return IN (Ekind (Id), Elementary_Kind); }
+
+ INLINE B Is_Entry (E Id)
+ { return IN (Ekind (Id), Entry_Kind); }
+
+ INLINE B Is_Enumeration_Type (E Id)
+ { return IN (Ekind (Id), Enumeration_Kind); }
+
+ INLINE B Is_Fixed_Point_Type (E Id)
+ { return IN (Ekind (Id), Fixed_Point_Kind); }
+
+ INLINE B Is_Floating_Point_Type (E Id)
+ { return IN (Ekind (Id), Float_Kind); }
+
+ INLINE B Is_Formal (E Id)
+ { return IN (Ekind (Id), Formal_Kind); }
+
+ INLINE B Is_Generic_Unit (E Id)
+ { return IN (Ekind (Id), Generic_Unit_Kind); }
+
+ INLINE B Is_Incomplete_Or_Private_Type (E Id)
+ { return IN (Ekind (Id), Incomplete_Or_Private_Kind); }
+
+ INLINE B Is_Integer_Type (E Id)
+ { return IN (Ekind (Id), Integer_Kind); }
+
+ INLINE B Is_Modular_Integer_Type (E Id)
+ { return IN (Ekind (Id), Modular_Integer_Kind); }
+
+ INLINE B Is_Named_Number (E Id)
+ { return IN (Ekind (Id), Named_Kind); }
+
+ INLINE B Is_Numeric_Type (E Id)
+ { return IN (Ekind (Id), Numeric_Kind); }
+
+ INLINE B Is_Object (E Id)
+ { return IN (Ekind (Id), Object_Kind); }
+
+ INLINE B Is_Ordinary_Fixed_Point_Type (E Id)
+ { return IN (Ekind (Id), Ordinary_Fixed_Point_Kind); }
+
+ INLINE B Is_Overloadable (E Id)
+ { return IN (Ekind (Id), Overloadable_Kind); }
+
+ INLINE B Is_Private_Type (E Id)
+ { return IN (Ekind (Id), Private_Kind); }
+
+ INLINE B Is_Protected_Type (E Id)
+ { return IN (Ekind (Id), Protected_Kind); }
+
+ INLINE B Is_Real_Type (E Id)
+ { return IN (Ekind (Id), Real_Kind); }
+
+ INLINE B Is_Record_Type (E Id)
+ { return IN (Ekind (Id), Record_Kind); }
+
+ INLINE B Is_Scalar_Type (E Id)
+ { return IN (Ekind (Id), Scalar_Kind); }
+
+ INLINE B Is_Signed_Integer_Type (E Id)
+ { return IN (Ekind (Id), Signed_Integer_Kind); }
+
+ INLINE B Is_Subprogram (E Id)
+ { return IN (Ekind (Id), Subprogram_Kind); }
+
+ INLINE B Is_Task_Type (E Id)
+ { return IN (Ekind (Id), Task_Kind); }
+
+ INLINE B Is_Type (E Id)
+ { return IN (Ekind (Id), Type_Kind); }
+
+ INLINE B Known_Alignment (Entity_Id E)
+ { return Uint14 (E) != Uint_0; }
+
+ INLINE B Known_Component_Bit_Offset (Entity_Id E)
+ { return Uint11 (E) != No_Uint; }
+
+ INLINE B Known_Component_Size (Entity_Id E)
+ { return Uint22 (Base_Type (E)) != Uint_0; }
+
+ INLINE B Known_Esize (Entity_Id E)
+ { return Uint12 (E) != Uint_0; }
+
+ INLINE B Known_Static_Component_Size (Entity_Id E)
+ { return Uint22 (Base_Type (E)) > Uint_0; }
+
+ INLINE B Known_Static_Esize (Entity_Id E)
+ { return Uint12 (E) > Uint_0; }
+
+ INLINE B Unknown_Alignment (Entity_Id E)
+ { return Uint14 (E) == Uint_0; }
+
+ INLINE B Unknown_Component_Bit_Offset (Entity_Id E)
+ { return Uint11 (E) == No_Uint; }
+
+ INLINE B Unknown_Component_Size (Entity_Id E)
+ { return Uint22 (Base_Type (E)) == Uint_0; }
+
+ INLINE B Unknown_Esize (Entity_Id E)
+ { return Uint12 (E) == Uint_0; }
+
+ INLINE N Entry_Index_Type (E Id)
+ { return Etype (Discrete_Subtype_Definition (Parent (Id))); }
+
+ INLINE Node_Id Next_Index (Node_Id Id)
+ { return Next (Id); }
+
+ INLINE E Next_Literal (E Id)
+ { return Next (Id); }
+
+ INLINE Formal_Kind Parameter_Mode (E Id)
+ { return Ekind (Id); }
+
+/* End of einfo.h (C version of Einfo package specification) */
diff --git a/gcc/ada/sinfo.h b/gcc/ada/sinfo.h
new file mode 100644
index 00000000000..c3e9a8d99ca
--- /dev/null
+++ b/gcc/ada/sinfo.h
@@ -0,0 +1,822 @@
+/*--------------------------------------------------------------------------*/
+/* */
+/* GNAT COMPILER COMPONENTS */
+/* */
+/* S I N F O */
+/* */
+/* C Header File */
+/* */
+/* Generated by xsinfo revision 1.1 using */
+/* sinfo.ads revision 1.1 */
+/* */
+/* Copyright (C) 1992-2001, Free Software Foundation, Inc. */
+/* */
+/* GNAT is free software; you can redistribute it and/or modify it under */
+/* terms of the GNU General Public License as published by the Free Soft- */
+/* ware Foundation; either version 2, or (at your option) any later ver- */
+/* sion. GNAT is distributed in the hope that it will be useful, but WITH- */
+/* OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY */
+/* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License */
+/* for more details. You should have received a copy of the GNU General */
+/* Public License distributed with GNAT; see file COPYING. If not, write */
+/* to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, */
+/* MA 02111-1307, USA. */
+/* */
+/* As a special exception, if other files instantiate generics from this */
+/* unit, or you link this unit with other files to produce an executable, */
+/* this unit does not by itself cause the resulting executable to be */
+/* covered by the GNU General Public License. This exception does not */
+/* however invalidate any other reasons why the executable file might be */
+/* covered by the GNU Public License. */
+/* */
+/* GNAT was originally developed by the GNAT team at New York University. */
+/* It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). */
+/* */
+/*--------------------------------------------------------------------------*/
+
+ #define N_Unused_At_Start 0
+ #define N_At_Clause 1
+ #define N_Component_Clause 2
+ #define N_Enumeration_Representation_Clause 3
+ #define N_Mod_Clause 4
+ #define N_Record_Representation_Clause 5
+ #define N_Attribute_Definition_Clause 6
+ #define N_Empty 7
+ #define N_Error 8
+ #define N_Pragma 9
+ #define N_Pragma_Argument_Association 10
+ #define N_Defining_Character_Literal 11
+ #define N_Defining_Identifier 12
+ #define N_Defining_Operator_Symbol 13
+ #define N_Expanded_Name 14
+ #define N_Identifier 15
+ #define N_Operator_Symbol 16
+ #define N_Character_Literal 17
+ #define N_Op_Add 18
+ #define N_Op_Concat 19
+ #define N_Op_Divide 20
+ #define N_Op_Expon 21
+ #define N_Op_Mod 22
+ #define N_Op_Multiply 23
+ #define N_Op_Rem 24
+ #define N_Op_Subtract 25
+ #define N_Op_And 26
+ #define N_Op_Eq 27
+ #define N_Op_Ge 28
+ #define N_Op_Gt 29
+ #define N_Op_Le 30
+ #define N_Op_Lt 31
+ #define N_Op_Ne 32
+ #define N_Op_Or 33
+ #define N_Op_Xor 34
+ #define N_Op_Rotate_Left 35
+ #define N_Op_Rotate_Right 36
+ #define N_Op_Shift_Left 37
+ #define N_Op_Shift_Right 38
+ #define N_Op_Shift_Right_Arithmetic 39
+ #define N_Op_Abs 40
+ #define N_Op_Minus 41
+ #define N_Op_Not 42
+ #define N_Op_Plus 43
+ #define N_Attribute_Reference 44
+ #define N_And_Then 45
+ #define N_Conditional_Expression 46
+ #define N_Explicit_Dereference 47
+ #define N_Function_Call 48
+ #define N_In 49
+ #define N_Indexed_Component 50
+ #define N_Integer_Literal 51
+ #define N_Not_In 52
+ #define N_Null 53
+ #define N_Or_Else 54
+ #define N_Procedure_Call_Statement 55
+ #define N_Qualified_Expression 56
+ #define N_Raise_Constraint_Error 57
+ #define N_Raise_Program_Error 58
+ #define N_Raise_Storage_Error 59
+ #define N_Aggregate 60
+ #define N_Allocator 61
+ #define N_Extension_Aggregate 62
+ #define N_Range 63
+ #define N_Real_Literal 64
+ #define N_Reference 65
+ #define N_Selected_Component 66
+ #define N_Slice 67
+ #define N_String_Literal 68
+ #define N_Subprogram_Info 69
+ #define N_Type_Conversion 70
+ #define N_Unchecked_Expression 71
+ #define N_Unchecked_Type_Conversion 72
+ #define N_Subtype_Indication 73
+ #define N_Component_Declaration 74
+ #define N_Entry_Declaration 75
+ #define N_Formal_Object_Declaration 76
+ #define N_Formal_Type_Declaration 77
+ #define N_Full_Type_Declaration 78
+ #define N_Incomplete_Type_Declaration 79
+ #define N_Loop_Parameter_Specification 80
+ #define N_Object_Declaration 81
+ #define N_Protected_Type_Declaration 82
+ #define N_Private_Extension_Declaration 83
+ #define N_Private_Type_Declaration 84
+ #define N_Subtype_Declaration 85
+ #define N_Function_Specification 86
+ #define N_Procedure_Specification 87
+ #define N_Entry_Index_Specification 88
+ #define N_Freeze_Entity 89
+ #define N_Access_Function_Definition 90
+ #define N_Access_Procedure_Definition 91
+ #define N_Task_Type_Declaration 92
+ #define N_Package_Body_Stub 93
+ #define N_Protected_Body_Stub 94
+ #define N_Subprogram_Body_Stub 95
+ #define N_Task_Body_Stub 96
+ #define N_Function_Instantiation 97
+ #define N_Package_Instantiation 98
+ #define N_Procedure_Instantiation 99
+ #define N_Package_Body 100
+ #define N_Subprogram_Body 101
+ #define N_Protected_Body 102
+ #define N_Task_Body 103
+ #define N_Implicit_Label_Declaration 104
+ #define N_Package_Declaration 105
+ #define N_Single_Task_Declaration 106
+ #define N_Subprogram_Declaration 107
+ #define N_Use_Package_Clause 108
+ #define N_Generic_Package_Declaration 109
+ #define N_Generic_Subprogram_Declaration 110
+ #define N_Constrained_Array_Definition 111
+ #define N_Unconstrained_Array_Definition 112
+ #define N_Exception_Renaming_Declaration 113
+ #define N_Object_Renaming_Declaration 114
+ #define N_Package_Renaming_Declaration 115
+ #define N_Subprogram_Renaming_Declaration 116
+ #define N_Generic_Function_Renaming_Declaration 117
+ #define N_Generic_Package_Renaming_Declaration 118
+ #define N_Generic_Procedure_Renaming_Declaration 119
+ #define N_Abort_Statement 120
+ #define N_Accept_Statement 121
+ #define N_Assignment_Statement 122
+ #define N_Asynchronous_Select 123
+ #define N_Block_Statement 124
+ #define N_Case_Statement 125
+ #define N_Code_Statement 126
+ #define N_Conditional_Entry_Call 127
+ #define N_Delay_Relative_Statement 128
+ #define N_Delay_Until_Statement 129
+ #define N_Entry_Call_Statement 130
+ #define N_Free_Statement 131
+ #define N_Goto_Statement 132
+ #define N_Loop_Statement 133
+ #define N_Null_Statement 134
+ #define N_Raise_Statement 135
+ #define N_Requeue_Statement 136
+ #define N_Return_Statement 137
+ #define N_Selective_Accept 138
+ #define N_Timed_Entry_Call 139
+ #define N_Exit_Statement 140
+ #define N_If_Statement 141
+ #define N_Accept_Alternative 142
+ #define N_Delay_Alternative 143
+ #define N_Elsif_Part 144
+ #define N_Entry_Body_Formal_Part 145
+ #define N_Iteration_Scheme 146
+ #define N_Terminate_Alternative 147
+ #define N_Abortable_Part 148
+ #define N_Abstract_Subprogram_Declaration 149
+ #define N_Access_Definition 150
+ #define N_Access_To_Object_Definition 151
+ #define N_Case_Statement_Alternative 152
+ #define N_Compilation_Unit 153
+ #define N_Compilation_Unit_Aux 154
+ #define N_Component_Association 155
+ #define N_Component_List 156
+ #define N_Derived_Type_Definition 157
+ #define N_Decimal_Fixed_Point_Definition 158
+ #define N_Defining_Program_Unit_Name 159
+ #define N_Delta_Constraint 160
+ #define N_Designator 161
+ #define N_Digits_Constraint 162
+ #define N_Discriminant_Association 163
+ #define N_Discriminant_Specification 164
+ #define N_Enumeration_Type_Definition 165
+ #define N_Entry_Body 166
+ #define N_Entry_Call_Alternative 167
+ #define N_Exception_Declaration 168
+ #define N_Exception_Handler 169
+ #define N_Floating_Point_Definition 170
+ #define N_Formal_Decimal_Fixed_Point_Definition 171
+ #define N_Formal_Derived_Type_Definition 172
+ #define N_Formal_Discrete_Type_Definition 173
+ #define N_Formal_Floating_Point_Definition 174
+ #define N_Formal_Modular_Type_Definition 175
+ #define N_Formal_Ordinary_Fixed_Point_Definition 176
+ #define N_Formal_Package_Declaration 177
+ #define N_Formal_Private_Type_Definition 178
+ #define N_Formal_Signed_Integer_Type_Definition 179
+ #define N_Formal_Subprogram_Declaration 180
+ #define N_Generic_Association 181
+ #define N_Handled_Sequence_Of_Statements 182
+ #define N_Index_Or_Discriminant_Constraint 183
+ #define N_Itype_Reference 184
+ #define N_Label 185
+ #define N_Modular_Type_Definition 186
+ #define N_Number_Declaration 187
+ #define N_Ordinary_Fixed_Point_Definition 188
+ #define N_Others_Choice 189
+ #define N_Package_Specification 190
+ #define N_Parameter_Association 191
+ #define N_Parameter_Specification 192
+ #define N_Protected_Definition 193
+ #define N_Range_Constraint 194
+ #define N_Real_Range_Specification 195
+ #define N_Record_Definition 196
+ #define N_Signed_Integer_Type_Definition 197
+ #define N_Single_Protected_Declaration 198
+ #define N_Subunit 199
+ #define N_Task_Definition 200
+ #define N_Triggering_Alternative 201
+ #define N_Use_Type_Clause 202
+ #define N_Validate_Unchecked_Conversion 203
+ #define N_Variant 204
+ #define N_Variant_Part 205
+ #define N_With_Clause 206
+ #define N_With_Type_Clause 207
+ #define N_Unused_At_End 208
+
+ #define Number_Node_Kinds 209
+ SUBTYPE (N_Access_To_Subprogram_Definition, Node_Kind,
+ N_Access_Function_Definition,
+ N_Access_Procedure_Definition)
+ SUBTYPE (N_Array_Type_Definition, Node_Kind,
+ N_Constrained_Array_Definition,
+ N_Unconstrained_Array_Definition)
+ SUBTYPE (N_Binary_Op, Node_Kind,
+ N_Op_Add,
+ N_Op_Shift_Right_Arithmetic)
+ SUBTYPE (N_Body_Stub, Node_Kind,
+ N_Package_Body_Stub,
+ N_Task_Body_Stub)
+ SUBTYPE (N_Declaration, Node_Kind,
+ N_Component_Declaration,
+ N_Procedure_Specification)
+ SUBTYPE (N_Direct_Name, Node_Kind,
+ N_Identifier,
+ N_Character_Literal)
+ SUBTYPE (N_Entity, Node_Kind,
+ N_Defining_Character_Literal,
+ N_Defining_Operator_Symbol)
+ SUBTYPE (N_Generic_Declaration, Node_Kind,
+ N_Generic_Package_Declaration,
+ N_Generic_Subprogram_Declaration)
+ SUBTYPE (N_Generic_Instantiation, Node_Kind,
+ N_Function_Instantiation,
+ N_Procedure_Instantiation)
+ SUBTYPE (N_Generic_Renaming_Declaration, Node_Kind,
+ N_Generic_Function_Renaming_Declaration,
+ N_Generic_Procedure_Renaming_Declaration)
+ SUBTYPE (N_Has_Chars, Node_Kind,
+ N_Attribute_Definition_Clause,
+ N_Op_Plus)
+ SUBTYPE (N_Has_Entity, Node_Kind,
+ N_Expanded_Name,
+ N_Attribute_Reference)
+ SUBTYPE (N_Has_Etype, Node_Kind,
+ N_Defining_Character_Literal,
+ N_Subtype_Indication)
+ SUBTYPE (N_Later_Decl_Item, Node_Kind,
+ N_Task_Type_Declaration,
+ N_Generic_Subprogram_Declaration)
+ SUBTYPE (N_Op, Node_Kind,
+ N_Op_Add,
+ N_Op_Plus)
+ SUBTYPE (N_Op_Boolean, Node_Kind,
+ N_Op_And,
+ N_Op_Xor)
+ SUBTYPE (N_Op_Compare, Node_Kind,
+ N_Op_Eq,
+ N_Op_Ne)
+ SUBTYPE (N_Op_Shift, Node_Kind,
+ N_Op_Rotate_Left,
+ N_Op_Shift_Right_Arithmetic)
+ SUBTYPE (N_Proper_Body, Node_Kind,
+ N_Package_Body,
+ N_Task_Body)
+ SUBTYPE (N_Raise_xxx_Error, Node_Kind,
+ N_Raise_Constraint_Error,
+ N_Raise_Storage_Error)
+ SUBTYPE (N_Renaming_Declaration, Node_Kind,
+ N_Exception_Renaming_Declaration,
+ N_Generic_Procedure_Renaming_Declaration)
+ SUBTYPE (N_Representation_Clause, Node_Kind,
+ N_At_Clause,
+ N_Attribute_Definition_Clause)
+ SUBTYPE (N_Statement_Other_Than_Procedure_Call, Node_Kind,
+ N_Abort_Statement,
+ N_If_Statement)
+ SUBTYPE (N_Has_Condition, Node_Kind,
+ N_Exit_Statement,
+ N_Terminate_Alternative)
+ SUBTYPE (N_Subexpr, Node_Kind,
+ N_Expanded_Name,
+ N_Unchecked_Type_Conversion)
+ SUBTYPE (N_Subprogram_Specification, Node_Kind,
+ N_Function_Specification,
+ N_Procedure_Specification)
+ SUBTYPE (N_Unary_Op, Node_Kind,
+ N_Op_Abs,
+ N_Op_Plus)
+ SUBTYPE (N_Unit_Body, Node_Kind,
+ N_Package_Body,
+ N_Subprogram_Body)
+ INLINE Boolean ABE_Is_Certain (Node_Id N)
+ { return Flag18 (N); }
+ INLINE Boolean Abort_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Node_Id Abortable_Part (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean Abstract_Present (Node_Id N)
+ { return Flag4 (N); }
+ INLINE List_Id Accept_Handler_Records (Node_Id N)
+ { return List5 (N); }
+ INLINE Node_Id Accept_Statement (Node_Id N)
+ { return Node2 (N); }
+ INLINE Elist_Id Access_Types_To_Process (Node_Id N)
+ { return Elist2 (N); }
+ INLINE List_Id Actions (Node_Id N)
+ { return List1 (N); }
+ INLINE Node_Id Activation_Chain_Entity (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Acts_As_Spec (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Node_Id Aggregate_Bounds (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Aliased_Present (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Boolean All_Others (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Boolean All_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE List_Id Alternatives (Node_Id N)
+ { return List4 (N); }
+ INLINE Node_Id Ancestor_Part (Node_Id N)
+ { return Node3 (N); }
+ INLINE Node_Id Array_Aggregate (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Assignment_OK (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Node_Id At_End_Proc (Node_Id N)
+ { return Node1 (N); }
+ INLINE Name_Id Attribute_Name (Node_Id N)
+ { return Name2 (N); }
+ INLINE Node_Id Aux_Decls_Node (Node_Id N)
+ { return Node5 (N); }
+ INLINE Boolean Backwards_OK (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Boolean Bad_Is_Detected (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Boolean By_Ref (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Boolean Body_Required (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Node_Id Body_To_Inline (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Box_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Char_Code Char_Literal_Value (Node_Id N)
+ { return Char_Code2 (N); }
+ INLINE Name_Id Chars (Node_Id N)
+ { return Name1 (N); }
+ INLINE Node_Id Choice_Parameter (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Choices (Node_Id N)
+ { return List1 (N); }
+ INLINE Boolean Compile_Time_Known_Aggregate (Node_Id N)
+ { return Flag18 (N); }
+ INLINE List_Id Component_Associations (Node_Id N)
+ { return List2 (N); }
+ INLINE List_Id Component_Clauses (Node_Id N)
+ { return List3 (N); }
+ INLINE List_Id Component_Items (Node_Id N)
+ { return List3 (N); }
+ INLINE Node_Id Component_List (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Component_Name (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Condition (Node_Id N)
+ { return Node1 (N); }
+ INLINE List_Id Condition_Actions (Node_Id N)
+ { return List3 (N); }
+ INLINE Boolean Constant_Present (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Node_Id Constraint (Node_Id N)
+ { return Node3 (N); }
+ INLINE List_Id Constraints (Node_Id N)
+ { return List1 (N); }
+ INLINE Boolean Context_Installed (Node_Id N)
+ { return Flag13 (N); }
+ INLINE List_Id Context_Items (Node_Id N)
+ { return List1 (N); }
+ INLINE Node_Id Controlling_Argument (Node_Id N)
+ { return Node1 (N); }
+ INLINE Boolean Conversion_OK (Node_Id N)
+ { return Flag14 (N); }
+ INLINE Node_Id Corresponding_Body (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Corresponding_Generic_Association (Node_Id N)
+ { return Node5 (N); }
+ INLINE Uint Corresponding_Integer_Value (Node_Id N)
+ { return Uint4 (N); }
+ INLINE Node_Id Corresponding_Spec (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Corresponding_Stub (Node_Id N)
+ { return Node3 (N); }
+ INLINE Entity_Id Dcheck_Function (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Debug_Statement (Node_Id N)
+ { return Node3 (N); }
+ INLINE List_Id Declarations (Node_Id N)
+ { return List2 (N); }
+ INLINE Node_Id Default_Expression (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Default_Name (Node_Id N)
+ { return Node2 (N); }
+ INLINE Entity_Id Defining_Identifier (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Defining_Unit_Name (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Delay_Alternative (Node_Id N)
+ { return Node4 (N); }
+ INLINE Boolean Delay_Finalize_Attach (Node_Id N)
+ { return Flag14 (N); }
+ INLINE Node_Id Delay_Statement (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Delta_Expression (Node_Id N)
+ { return Node3 (N); }
+ INLINE Node_Id Digits_Expression (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean Discr_Check_Funcs_Built (Node_Id N)
+ { return Flag11 (N); }
+ INLINE List_Id Discrete_Choices (Node_Id N)
+ { return List4 (N); }
+ INLINE Node_Id Discrete_Range (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Discrete_Subtype_Definition (Node_Id N)
+ { return Node4 (N); }
+ INLINE List_Id Discrete_Subtype_Definitions (Node_Id N)
+ { return List2 (N); }
+ INLINE List_Id Discriminant_Specifications (Node_Id N)
+ { return List4 (N); }
+ INLINE Node_Id Discriminant_Type (Node_Id N)
+ { return Node5 (N); }
+ INLINE Boolean Do_Access_Check (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Boolean Do_Accessibility_Check (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Do_Discriminant_Check (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Do_Division_Check (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Do_Length_Check (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Boolean Do_Overflow_Check (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Boolean Do_Range_Check (Node_Id N)
+ { return Flag9 (N); }
+ INLINE Boolean Do_Storage_Check (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Boolean Do_Tag_Check (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Elaborate_All_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Boolean Elaborate_Present (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Node_Id Elaboration_Boolean (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Else_Actions (Node_Id N)
+ { return List3 (N); }
+ INLINE List_Id Else_Statements (Node_Id N)
+ { return List4 (N); }
+ INLINE List_Id Elsif_Parts (Node_Id N)
+ { return List3 (N); }
+ INLINE Node_Id Enclosing_Variant (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id End_Label (Node_Id N)
+ { return Node4 (N); }
+ INLINE Uint End_Span (Node_Id N)
+ { return Uint5 (N); }
+ INLINE Node_Id Entity (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Entry_Body_Formal_Part (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Entry_Call_Alternative (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Entry_Call_Statement (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Entry_Direct_Name (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Entry_Index (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Entry_Index_Specification (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Etype (Node_Id N)
+ { return Node5 (N); }
+ INLINE List_Id Exception_Choices (Node_Id N)
+ { return List4 (N); }
+ INLINE List_Id Exception_Handlers (Node_Id N)
+ { return List5 (N); }
+ INLINE Boolean Exception_Junk (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Node_Id Explicit_Actual_Parameter (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Expansion_Delayed (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Node_Id Explicit_Generic_Actual_Parameter (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Expression (Node_Id N)
+ { return Node3 (N); }
+ INLINE List_Id Expressions (Node_Id N)
+ { return List1 (N); }
+ INLINE Node_Id First_Bit (Node_Id N)
+ { return Node3 (N); }
+ INLINE Entity_Id First_Inlined_Subprogram (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean First_Name (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Node_Id First_Named_Actual (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id First_Real_Statement (Node_Id N)
+ { return Node2 (N); }
+ INLINE Entity_Id First_Subtype_Link (Node_Id N)
+ { return Node5 (N); }
+ INLINE Boolean Float_Truncate (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Node_Id Formal_Type_Definition (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Forwards_OK (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Boolean From_At_Mod (Node_Id N)
+ { return Flag4 (N); }
+ INLINE List_Id Generic_Associations (Node_Id N)
+ { return List3 (N); }
+ INLINE List_Id Generic_Formal_Declarations (Node_Id N)
+ { return List2 (N); }
+ INLINE Node_Id Generic_Parent (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Generic_Parent_Type (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Handled_Statement_Sequence (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Handler_List_Entry (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean Has_Created_Identifier (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Boolean Has_Dynamic_Length_Check (Node_Id N)
+ { return Flag10 (N); }
+ INLINE Boolean Has_Dynamic_Range_Check (Node_Id N)
+ { return Flag12 (N); }
+ INLINE Boolean Has_No_Elaboration_Code (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Boolean Has_Priority_Pragma (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Boolean Has_Private_View (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Boolean Has_Storage_Size_Pragma (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Boolean Has_Task_Info_Pragma (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Boolean Has_Task_Name_Pragma (Node_Id N)
+ { return Flag8 (N); }
+ INLINE Boolean Has_Wide_Character (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Elist_Id Hidden_By_Use_Clause (Node_Id N)
+ { return Elist4 (N); }
+ INLINE Node_Id High_Bound (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Identifier (Node_Id N)
+ { return Node1 (N); }
+ INLINE Boolean Implicit_With (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Boolean In_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Boolean Includes_Infinities (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Node_Id Instance_Spec (Node_Id N)
+ { return Node5 (N); }
+ INLINE Uint Intval (Node_Id N)
+ { return Uint3 (N); }
+ INLINE Boolean Is_Asynchronous_Call_Block (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Boolean Is_Component_Left_Opnd (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Is_Component_Right_Opnd (Node_Id N)
+ { return Flag14 (N); }
+ INLINE Boolean Is_Controlling_Actual (Node_Id N)
+ { return Flag16 (N); }
+ INLINE Boolean Is_Machine_Number (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Boolean Is_Overloaded (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Boolean Is_Power_Of_2_For_Shift (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Is_Protected_Subprogram_Body (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Boolean Is_Static_Expression (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Boolean Is_Subprogram_Descriptor (Node_Id N)
+ { return Flag16 (N); }
+ INLINE Boolean Is_Task_Allocation_Block (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Boolean Is_Task_Master (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Node_Id Iteration_Scheme (Node_Id N)
+ { return Node2 (N); }
+ INLINE Entity_Id Itype (Node_Id N)
+ { return Node1 (N); }
+ INLINE Boolean Kill_Range_Check (Node_Id N)
+ { return Flag11 (N); }
+ INLINE Node_Id Label_Construct (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Left_Opnd (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Last_Bit (Node_Id N)
+ { return Node4 (N); }
+ INLINE Boolean Last_Name (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Node_Id Library_Unit (Node_Id N)
+ { return Node4 (N); }
+ INLINE Boolean Limited_Present (Node_Id N)
+ { return Flag17 (N); }
+ INLINE List_Id Literals (Node_Id N)
+ { return List1 (N); }
+ INLINE List_Id Loop_Actions (Node_Id N)
+ { return List2 (N); }
+ INLINE Node_Id Loop_Parameter_Specification (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Low_Bound (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Mod_Clause (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean More_Ids (Node_Id N)
+ { return Flag5 (N); }
+ INLINE Boolean Must_Not_Freeze (Node_Id N)
+ { return Flag8 (N); }
+ INLINE Node_Id Name (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Names (Node_Id N)
+ { return List2 (N); }
+ INLINE Node_Id Next_Entity (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Next_Named_Actual (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Next_Rep_Item (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Next_Use_Clause (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean No_Ctrl_Actions (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Boolean No_Entities_Ref_In_Spec (Node_Id N)
+ { return Flag8 (N); }
+ INLINE Boolean No_Initialization (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Null_Present (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Null_Record_Present (Node_Id N)
+ { return Flag17 (N); }
+ INLINE Node_Id Object_Definition (Node_Id N)
+ { return Node4 (N); }
+ INLINE Boolean OK_For_Stream (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Node_Id Original_Discriminant (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Others_Discrete_Choices (Node_Id N)
+ { return List1 (N); }
+ INLINE Boolean Out_Present (Node_Id N)
+ { return Flag17 (N); }
+ INLINE List_Id Parameter_Associations (Node_Id N)
+ { return List3 (N); }
+ INLINE Boolean Parameter_List_Truncated (Node_Id N)
+ { return Flag17 (N); }
+ INLINE List_Id Parameter_Specifications (Node_Id N)
+ { return List3 (N); }
+ INLINE Node_Id Parameter_Type (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Parent_Spec (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Position (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Pragma_Argument_Associations (Node_Id N)
+ { return List2 (N); }
+ INLINE List_Id Pragmas_After (Node_Id N)
+ { return List5 (N); }
+ INLINE List_Id Pragmas_Before (Node_Id N)
+ { return List4 (N); }
+ INLINE Node_Id Prefix (Node_Id N)
+ { return Node3 (N); }
+ INLINE Uint Present_Expr (Node_Id N)
+ { return Uint3 (N); }
+ INLINE Boolean Prev_Ids (Node_Id N)
+ { return Flag6 (N); }
+ INLINE Boolean Print_In_Hex (Node_Id N)
+ { return Flag13 (N); }
+ INLINE List_Id Private_Declarations (Node_Id N)
+ { return List3 (N); }
+ INLINE Boolean Private_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Node_Id Procedure_To_Call (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Proper_Body (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Protected_Definition (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Protected_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Boolean Raises_Constraint_Error (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Node_Id Range_Constraint (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Range_Expression (Node_Id N)
+ { return Node4 (N); }
+ INLINE Node_Id Real_Range_Specification (Node_Id N)
+ { return Node4 (N); }
+ INLINE Ureal Realval (Node_Id N)
+ { return Ureal3 (N); }
+ INLINE Node_Id Record_Extension_Part (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Redundant_Use (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Node_Id Return_Type (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean Reverse_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Node_Id Right_Opnd (Node_Id N)
+ { return Node3 (N); }
+ INLINE Boolean Rounded_Result (Node_Id N)
+ { return Flag18 (N); }
+ INLINE Node_Id Scope (Node_Id N)
+ { return Node3 (N); }
+ INLINE List_Id Select_Alternatives (Node_Id N)
+ { return List1 (N); }
+ INLINE Node_Id Selector_Name (Node_Id N)
+ { return Node2 (N); }
+ INLINE List_Id Selector_Names (Node_Id N)
+ { return List1 (N); }
+ INLINE Boolean Shift_Count_OK (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Entity_Id Source_Type (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Specification (Node_Id N)
+ { return Node1 (N); }
+ INLINE List_Id Statements (Node_Id N)
+ { return List3 (N); }
+ INLINE Boolean Static_Processing_OK (Node_Id N)
+ { return Flag4 (N); }
+ INLINE Node_Id Storage_Pool (Node_Id N)
+ { return Node1 (N); }
+ INLINE String_Id Strval (Node_Id N)
+ { return Str3 (N); }
+ INLINE Node_Id Subtype_Indication (Node_Id N)
+ { return Node5 (N); }
+ INLINE Node_Id Subtype_Mark (Node_Id N)
+ { return Node4 (N); }
+ INLINE List_Id Subtype_Marks (Node_Id N)
+ { return List2 (N); }
+ INLINE Boolean Tagged_Present (Node_Id N)
+ { return Flag15 (N); }
+ INLINE Entity_Id Target_Type (Node_Id N)
+ { return Node2 (N); }
+ INLINE Entity_Id Task_Body_Procedure (Node_Id N)
+ { return Node2 (N); }
+ INLINE Node_Id Task_Definition (Node_Id N)
+ { return Node3 (N); }
+ INLINE List_Id Then_Actions (Node_Id N)
+ { return List2 (N); }
+ INLINE List_Id Then_Statements (Node_Id N)
+ { return List2 (N); }
+ INLINE Boolean Treat_Fixed_As_Integer (Node_Id N)
+ { return Flag14 (N); }
+ INLINE Node_Id Triggering_Alternative (Node_Id N)
+ { return Node1 (N); }
+ INLINE Node_Id Triggering_Statement (Node_Id N)
+ { return Node1 (N); }
+ INLINE Elist_Id TSS_Elist (Node_Id N)
+ { return Elist3 (N); }
+ INLINE Node_Id Type_Definition (Node_Id N)
+ { return Node3 (N); }
+ INLINE Node_Id Unit (Node_Id N)
+ { return Node2 (N); }
+ INLINE Boolean Unknown_Discriminants_Present (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Unreferenced_In_Spec (Node_Id N)
+ { return Flag7 (N); }
+ INLINE Node_Id Variant_Part (Node_Id N)
+ { return Node4 (N); }
+ INLINE List_Id Variants (Node_Id N)
+ { return List1 (N); }
+ INLINE List_Id Visible_Declarations (Node_Id N)
+ { return List2 (N); }
+ INLINE Boolean Was_Originally_Stub (Node_Id N)
+ { return Flag13 (N); }
+ INLINE Boolean Zero_Cost_Handling (Node_Id N)
+ { return Flag5 (N); }
+