1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2012, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks
(All_Checks
);
33 -- Turn off subprogram ordering check for this package
35 -- WARNING: There is a C version of this package. Any changes to this source
36 -- file must be properly reflected in the file atree.h which is a C header
37 -- file containing equivalent definitions for use by gigi.
39 with Aspects
; use Aspects
;
40 with Debug
; use Debug
;
41 with Nlists
; use Nlists
;
42 with Output
; use Output
;
43 with Sinput
; use Sinput
;
44 with Tree_IO
; use Tree_IO
;
48 Reporting_Proc
: Report_Proc
:= null;
49 -- Record argument to last call to Set_Reporting_Proc
55 -- Suppose you find that node 12345 is messed up. You might want to find
56 -- the code that created that node. There are two ways to do this:
58 -- One way is to set a conditional breakpoint on New_Node_Debugging_Output
60 -- break nnd if n = 12345
61 -- and run gnat1 again from the beginning.
63 -- The other way is to set a breakpoint near the beginning (e.g. on
64 -- gnat1drv), and run. Then set Watch_Node (nickname "ww") to 12345 in gdb:
66 -- and set a breakpoint on New_Node_Breakpoint (nickname "nn"). Continue.
68 -- Either way, gnat1 will stop when node 12345 is created
70 -- The second method is much faster
72 -- Similarly, rr and rrd allow breaking on rewriting of a given node
74 ww
: Node_Id
'Base := Node_Id
'First - 1;
75 pragma Export
(Ada
, ww
); -- trick the optimizer
76 Watch_Node
: Node_Id
'Base renames ww
;
77 -- Node to "watch"; that is, whenever a node is created, we check if it
78 -- is equal to Watch_Node, and if so, call New_Node_Breakpoint. You have
79 -- presumably set a breakpoint on New_Node_Breakpoint. Note that the
80 -- initial value of Node_Id'First - 1 ensures that by default, no node
81 -- will be equal to Watch_Node.
84 pragma Export
(Ada
, nn
);
85 procedure New_Node_Breakpoint
renames nn
;
86 -- This doesn't do anything interesting; it's just for setting breakpoint
87 -- on as explained above.
89 procedure nnd
(N
: Node_Id
);
90 pragma Export
(Ada
, nnd
);
91 procedure New_Node_Debugging_Output
(N
: Node_Id
) renames nnd
;
92 -- For debugging. If debugging is turned on, New_Node and New_Entity call
93 -- this. If debug flag N is turned on, this prints out the new node.
95 -- If Node = Watch_Node, this prints out the new node and calls
96 -- New_Node_Breakpoint. Otherwise, does nothing.
99 pragma Export
(Ada
, rr
);
100 procedure Rewrite_Breakpoint
renames rr
;
101 -- This doesn't do anything interesting; it's just for setting breakpoint
102 -- on as explained above.
104 procedure rrd
(Old_Node
, New_Node
: Node_Id
);
105 pragma Export
(Ada
, rrd
);
106 procedure Rewrite_Debugging_Output
107 (Old_Node
, New_Node
: Node_Id
) renames rrd
;
108 -- For debugging. If debugging is turned on, Rewrite calls this. If debug
109 -- flag N is turned on, this prints out the new node.
111 -- If Old_Node = Watch_Node, this prints out the old and new nodes and
112 -- calls Rewrite_Breakpoint. Otherwise, does nothing.
114 procedure Node_Debug_Output
(Op
: String; N
: Node_Id
);
115 -- Common code for nnd and rrd, writes Op followed by information about N
117 -----------------------------
118 -- Local Objects and Types --
119 -----------------------------
122 -- Count allocated nodes for Num_Nodes function
124 use Unchecked_Access
;
125 -- We are allowed to see these from within our own body!
127 use Atree_Private_Part
;
128 -- We are also allowed to see our private data structures!
130 -- Functions used to store Entity_Kind value in Nkind field
132 -- The following declarations are used to store flags 65-72 in the
133 -- Nkind field of the third component of an extended (entity) node.
135 type Flag_Byte
is record
146 pragma Pack
(Flag_Byte
);
147 for Flag_Byte
'Size use 8;
149 type Flag_Byte_Ptr
is access all Flag_Byte
;
150 type Node_Kind_Ptr
is access all Node_Kind
;
152 function To_Flag_Byte
is new
153 Unchecked_Conversion
(Node_Kind
, Flag_Byte
);
155 function To_Flag_Byte_Ptr
is new
156 Unchecked_Conversion
(Node_Kind_Ptr
, Flag_Byte_Ptr
);
158 -- The following declarations are used to store flags 239-246 in the
159 -- Nkind field of the fourth component of an extended (entity) node.
161 type Flag_Byte2
is record
172 pragma Pack
(Flag_Byte2
);
173 for Flag_Byte2
'Size use 8;
175 type Flag_Byte2_Ptr
is access all Flag_Byte2
;
177 function To_Flag_Byte2
is new
178 Unchecked_Conversion
(Node_Kind
, Flag_Byte2
);
180 function To_Flag_Byte2_Ptr
is new
181 Unchecked_Conversion
(Node_Kind_Ptr
, Flag_Byte2_Ptr
);
183 -- The following declarations are used to store flags 247-254 in the
184 -- Nkind field of the fifth component of an extended (entity) node.
186 type Flag_Byte3
is record
197 pragma Pack
(Flag_Byte3
);
198 for Flag_Byte3
'Size use 8;
200 type Flag_Byte3_Ptr
is access all Flag_Byte3
;
202 function To_Flag_Byte3
is new
203 Unchecked_Conversion
(Node_Kind
, Flag_Byte3
);
205 function To_Flag_Byte3_Ptr
is new
206 Unchecked_Conversion
(Node_Kind_Ptr
, Flag_Byte3_Ptr
);
208 -- The following declarations are used to store flags 73-96 and the
209 -- Convention field in the Field12 field of the third component of an
210 -- extended (Entity) node.
212 type Flag_Word
is record
240 Convention
: Convention_Id
;
243 pragma Pack
(Flag_Word
);
244 for Flag_Word
'Size use 32;
245 for Flag_Word
'Alignment use 4;
247 type Flag_Word_Ptr
is access all Flag_Word
;
248 type Union_Id_Ptr
is access all Union_Id
;
250 function To_Flag_Word
is new
251 Unchecked_Conversion
(Union_Id
, Flag_Word
);
253 function To_Flag_Word_Ptr
is new
254 Unchecked_Conversion
(Union_Id_Ptr
, Flag_Word_Ptr
);
256 -- The following declarations are used to store flags 97-128 in the
257 -- Field12 field of the fourth component of an extended (entity) node.
259 type Flag_Word2
is record
297 pragma Pack
(Flag_Word2
);
298 for Flag_Word2
'Size use 32;
299 for Flag_Word2
'Alignment use 4;
301 type Flag_Word2_Ptr
is access all Flag_Word2
;
303 function To_Flag_Word2
is new
304 Unchecked_Conversion
(Union_Id
, Flag_Word2
);
306 function To_Flag_Word2_Ptr
is new
307 Unchecked_Conversion
(Union_Id_Ptr
, Flag_Word2_Ptr
);
309 -- The following declarations are used to store flags 152-183 in the
310 -- Field11 field of the fourth component of an extended (entity) node.
312 type Flag_Word3
is record
350 pragma Pack
(Flag_Word3
);
351 for Flag_Word3
'Size use 32;
352 for Flag_Word3
'Alignment use 4;
354 type Flag_Word3_Ptr
is access all Flag_Word3
;
356 function To_Flag_Word3
is new
357 Unchecked_Conversion
(Union_Id
, Flag_Word3
);
359 function To_Flag_Word3_Ptr
is new
360 Unchecked_Conversion
(Union_Id_Ptr
, Flag_Word3_Ptr
);
362 -- The following declarations are used to store flags 184-215 in the
363 -- Field12 field of the fifth component of an extended (entity) node.
365 type Flag_Word4
is record
403 pragma Pack
(Flag_Word4
);
404 for Flag_Word4
'Size use 32;
405 for Flag_Word4
'Alignment use 4;
407 type Flag_Word4_Ptr
is access all Flag_Word4
;
409 function To_Flag_Word4
is new
410 Unchecked_Conversion
(Union_Id
, Flag_Word4
);
412 function To_Flag_Word4_Ptr
is new
413 Unchecked_Conversion
(Union_Id_Ptr
, Flag_Word4_Ptr
);
415 --------------------------------------------------
416 -- Implementation of Tree Substitution Routines --
417 --------------------------------------------------
419 -- A separate table keeps track of the mapping between rewritten nodes
420 -- and their corresponding original tree nodes. Rewrite makes an entry
421 -- in this table for use by Original_Node. By default, if no call is
422 -- Rewrite, the entry in this table points to the original unwritten node.
424 -- Note: eventually, this should be a field in the Node directly, but
425 -- for now we do not want to disturb the efficiency of a power of 2
428 package Orig_Nodes
is new Table
.Table
(
429 Table_Component_Type
=> Node_Id
,
430 Table_Index_Type
=> Node_Id
'Base,
431 Table_Low_Bound
=> First_Node_Id
,
432 Table_Initial
=> Alloc
.Orig_Nodes_Initial
,
433 Table_Increment
=> Alloc
.Orig_Nodes_Increment
,
434 Table_Name
=> "Orig_Nodes");
436 --------------------------
437 -- Paren_Count Handling --
438 --------------------------
440 -- As noted in the spec, the paren count in a sub-expression node has
441 -- four possible values 0,1,2, and 3. The value 3 really means 3 or more,
442 -- and we use an auxiliary serially scanned table to record the actual
443 -- count. A serial search is fine, only pathological programs will use
444 -- entries in this table. Normal programs won't use it at all.
446 type Paren_Count_Entry
is record
448 -- The node to which this count applies
450 Count
: Nat
range 3 .. Nat
'Last;
451 -- The count of parentheses, which will be in the indicated range
454 package Paren_Counts
is new Table
.Table
(
455 Table_Component_Type
=> Paren_Count_Entry
,
456 Table_Index_Type
=> Int
,
457 Table_Low_Bound
=> 0,
459 Table_Increment
=> 200,
460 Table_Name
=> "Paren_Counts");
462 -----------------------
463 -- Local Subprograms --
464 -----------------------
466 procedure Fix_Parents
(Ref_Node
, Fix_Node
: Node_Id
);
467 -- Fixup parent pointers for the syntactic children of Fix_Node after
468 -- a copy, setting them to Fix_Node when they pointed to Ref_Node.
470 function Allocate_Initialize_Node
472 With_Extension
: Boolean) return Node_Id
;
473 -- Allocate a new node or node extension. If Src is not empty,
474 -- the information for the newly-allocated node is copied from it.
476 ------------------------------
477 -- Allocate_Initialize_Node --
478 ------------------------------
480 function Allocate_Initialize_Node
482 With_Extension
: Boolean) return Node_Id
488 and then not Has_Extension
(Src
)
489 and then With_Extension
490 and then Src
= Nodes
.Last
494 -- We are allocating a new node, or extending a node
495 -- other than Nodes.Last.
497 if Present
(Src
) then
498 Nodes
.Append
(Nodes
.Table
(Src
));
500 Nodes
.Append
(Default_Node
);
503 New_Id
:= Nodes
.Last
;
504 Orig_Nodes
.Append
(New_Id
);
505 Node_Count
:= Node_Count
+ 1;
508 -- Specifically copy Paren_Count to deal with creating new table entry
509 -- if the parentheses count is at the maximum possible value already.
511 if Present
(Src
) and then Nkind
(Src
) in N_Subexpr
then
512 Set_Paren_Count
(New_Id
, Paren_Count
(Src
));
515 -- Set extension nodes if required
517 if With_Extension
then
518 if Present
(Src
) and then Has_Extension
(Src
) then
519 for J
in 1 .. Num_Extension_Nodes
loop
520 Nodes
.Append
(Nodes
.Table
(Src
+ Node_Id
(J
)));
523 for J
in 1 .. Num_Extension_Nodes
loop
524 Nodes
.Append
(Default_Node_Extension
);
529 Orig_Nodes
.Set_Last
(Nodes
.Last
);
530 Allocate_List_Tables
(Nodes
.Last
);
532 -- Invoke the reporting procedure (if available)
534 if Reporting_Proc
/= null then
535 Reporting_Proc
.all (Target
=> New_Id
, Source
=> Src
);
539 end Allocate_Initialize_Node
;
545 function Analyzed
(N
: Node_Id
) return Boolean is
547 pragma Assert
(N
<= Nodes
.Last
);
548 return Nodes
.Table
(N
).Analyzed
;
551 --------------------------
552 -- Basic_Set_Convention --
553 --------------------------
555 procedure Basic_Set_Convention
(E
: Entity_Id
; Val
: Convention_Id
) is
557 pragma Assert
(Nkind
(E
) in N_Entity
);
560 (Nodes.Table (E + 2).Field12'Unrestricted_Access)).Convention := Val;
561 end Basic_Set_Convention;
567 procedure Change_Node (N : Node_Id; New_Node_Kind : Node_Kind) is
568 Save_Sloc : constant Source_Ptr := Sloc (N);
569 Save_In_List : constant Boolean := Nodes.Table (N).In_List;
570 Save_Link : constant Union_Id := Nodes.Table (N).Link;
571 Save_CFS : constant Boolean := Nodes.Table (N).Comes_From_Source;
572 Save_Posted : constant Boolean := Nodes.Table (N).Error_Posted;
573 Par_Count : Nat := 0;
576 if Nkind (N) in N_Subexpr then
577 Par_Count := Paren_Count (N);
580 Nodes.Table (N) := Default_Node;
581 Nodes.Table (N).Sloc := Save_Sloc;
582 Nodes.Table (N).In_List := Save_In_List;
583 Nodes.Table (N).Link := Save_Link;
584 Nodes.Table (N).Comes_From_Source := Save_CFS;
585 Nodes.Table (N).Nkind := New_Node_Kind;
586 Nodes.Table (N).Error_Posted := Save_Posted;
588 if New_Node_Kind in N_Subexpr then
589 Set_Paren_Count (N, Par_Count);
593 -----------------------
594 -- Comes_From_Source --
595 -----------------------
597 function Comes_From_Source (N : Node_Id) return Boolean is
599 pragma Assert (N <= Nodes.Last);
600 return Nodes.Table (N).Comes_From_Source;
601 end Comes_From_Source;
607 function Convention (E : Entity_Id) return Convention_Id is
609 pragma Assert (Nkind (E) in N_Entity);
610 return To_Flag_Word (Nodes.Table (E + 2).Field12).Convention;
617 procedure Copy_Node (Source : Node_Id; Destination : Node_Id) is
618 Save_In_List : constant Boolean := Nodes.Table (Destination).In_List;
619 Save_Link : constant Union_Id := Nodes.Table (Destination).Link;
622 Nodes.Table (Destination) := Nodes.Table (Source);
623 Nodes.Table (Destination).In_List := Save_In_List;
624 Nodes.Table (Destination).Link := Save_Link;
626 -- Specifically set Paren_Count to make sure auxiliary table entry
627 -- gets correctly made if the parentheses count is at the max value.
629 if Nkind (Destination) in N_Subexpr then
630 Set_Paren_Count (Destination, Paren_Count (Source));
633 -- Deal with copying extension nodes if present
635 if Has_Extension (Source) then
636 pragma Assert (Has_Extension (Destination));
637 Nodes.Table (Destination + 1) := Nodes.Table (Source + 1);
638 Nodes.Table (Destination + 2) := Nodes.Table (Source + 2);
639 Nodes.Table (Destination + 3) := Nodes.Table (Source + 3);
640 Nodes.Table (Destination + 4) := Nodes.Table (Source + 4);
643 pragma Assert (not Has_Extension (Source));
648 ------------------------
649 -- Copy_Separate_List --
650 ------------------------
652 function Copy_Separate_List (Source : List_Id) return List_Id is
653 Result : constant List_Id := New_List;
657 Nod := First (Source);
658 while Present (Nod) loop
659 Append (Copy_Separate_Tree (Nod), Result);
664 end Copy_Separate_List;
666 ------------------------
667 -- Copy_Separate_Tree --
668 ------------------------
670 function Copy_Separate_Tree (Source : Node_Id) return Node_Id is
673 function Copy_Entity (E : Entity_Id) return Entity_Id;
674 -- Copy Entity, copying only the Ekind and Chars fields
676 function Copy_List (List : List_Id) return List_Id;
679 function Possible_Copy (Field : Union_Id) return Union_Id;
680 -- Given a field, returns a copy of the node or list if its parent
681 -- is the current source node, and otherwise returns the input
687 function Copy_Entity (E : Entity_Id) return Entity_Id is
691 case N_Entity (Nkind (E)) is
692 when N_Defining_Identifier =>
693 New_Ent := New_Entity (N_Defining_Identifier, Sloc (E));
695 when N_Defining_Character_Literal =>
696 New_Ent := New_Entity (N_Defining_Character_Literal, Sloc (E));
698 when N_Defining_Operator_Symbol =>
699 New_Ent := New_Entity (N_Defining_Operator_Symbol, Sloc (E));
702 Set_Chars (New_Ent, Chars (E));
710 function Copy_List (List : List_Id) return List_Id is
715 if List = No_List then
722 while Present (E) loop
723 if Has_Extension (E) then
724 Append (Copy_Entity (E), NL);
726 Append (Copy_Separate_Tree (E), NL);
740 function Possible_Copy (Field : Union_Id) return Union_Id is
744 if Field in Node_Range then
745 New_N := Union_Id (Copy_Separate_Tree (Node_Id (Field)));
747 if Parent (Node_Id (Field)) = Source then
748 Set_Parent (Node_Id (New_N), New_Id);
753 elsif Field in List_Range then
754 New_N := Union_Id (Copy_List (List_Id (Field)));
756 if Parent (List_Id (Field)) = Source then
757 Set_Parent (List_Id (New_N), New_Id);
767 -- Start of processing for Copy_Separate_Tree
770 if Source <= Empty_Or_Error then
773 elsif Has_Extension (Source) then
774 return Copy_Entity (Source);
777 New_Id := New_Copy (Source);
779 -- Recursively copy descendents
781 Set_Field1 (New_Id, Possible_Copy (Field1 (New_Id)));
782 Set_Field2 (New_Id, Possible_Copy (Field2 (New_Id)));
783 Set_Field3 (New_Id, Possible_Copy (Field3 (New_Id)));
784 Set_Field4 (New_Id, Possible_Copy (Field4 (New_Id)));
785 Set_Field5 (New_Id, Possible_Copy (Field5 (New_Id)));
787 -- Set Entity field to Empty to ensure that no entity references
788 -- are shared between the two, if the source is already analyzed.
790 if Nkind (New_Id) in N_Has_Entity
791 or else Nkind (New_Id) = N_Freeze_Entity
793 Set_Entity (New_Id, Empty);
796 -- All done, return copied node
800 end Copy_Separate_Tree;
806 function Ekind (E : Entity_Id) return Entity_Kind is
808 pragma Assert (Nkind (E) in N_Entity);
809 return N_To_E (Nodes.Table (E + 1).Nkind);
819 V2 : Entity_Kind) return Boolean
822 return T = V1 or else
830 V3 : Entity_Kind) return Boolean
833 return T = V1 or else
843 V4 : Entity_Kind) return Boolean
846 return T = V1 or else
858 V5 : Entity_Kind) return Boolean
861 return T = V1 or else
875 V6 : Entity_Kind) return Boolean
878 return T = V1 or else
889 V2 : Entity_Kind) return Boolean
892 return Ekind_In (Ekind (E), V1, V2);
899 V3 : Entity_Kind) return Boolean
902 return Ekind_In (Ekind (E), V1, V2, V3);
910 V4 : Entity_Kind) return Boolean
913 return Ekind_In (Ekind (E), V1, V2, V3, V4);
922 V5 : Entity_Kind) return Boolean
925 return Ekind_In (Ekind (E), V1, V2, V3, V4, V5);
935 V6 : Entity_Kind) return Boolean
938 return Ekind_In (Ekind (E), V1, V2, V3, V4, V5, V6);
941 ------------------------
942 -- Set_Reporting_Proc --
943 ------------------------
945 procedure Set_Reporting_Proc (P : Report_Proc) is
947 pragma Assert (Reporting_Proc = null);
949 end Set_Reporting_Proc;
955 function Error_Posted (N : Node_Id) return Boolean is
957 pragma Assert (N <= Nodes.Last);
958 return Nodes.Table (N).Error_Posted;
961 -----------------------
962 -- Exchange_Entities --
963 -----------------------
965 procedure Exchange_Entities (E1 : Entity_Id; E2 : Entity_Id) is
966 Temp_Ent : Node_Record;
969 pragma Assert (Has_Extension (E1)
970 and then Has_Extension (E2)
971 and then not Nodes.Table (E1).In_List
972 and then not Nodes.Table (E2).In_List);
974 -- Exchange the contents of the two entities
976 Temp_Ent := Nodes.Table (E1);
977 Nodes.Table (E1) := Nodes.Table (E2);
978 Nodes.Table (E2) := Temp_Ent;
979 Temp_Ent := Nodes.Table (E1 + 1);
980 Nodes.Table (E1 + 1) := Nodes.Table (E2 + 1);
981 Nodes.Table (E2 + 1) := Temp_Ent;
982 Temp_Ent := Nodes.Table (E1 + 2);
983 Nodes.Table (E1 + 2) := Nodes.Table (E2 + 2);
984 Nodes.Table (E2 + 2) := Temp_Ent;
985 Temp_Ent := Nodes.Table (E1 + 3);
986 Nodes.Table (E1 + 3) := Nodes.Table (E2 + 3);
987 Nodes.Table (E2 + 3) := Temp_Ent;
988 Temp_Ent := Nodes.Table (E1 + 4);
989 Nodes.Table (E1 + 4) := Nodes.Table (E2 + 4);
990 Nodes.Table (E2 + 4) := Temp_Ent;
992 -- That exchange exchanged the parent pointers as well, which is what
993 -- we want, but we need to patch up the defining identifier pointers
994 -- in the parent nodes (the child pointers) to match this switch
995 -- unless for Implicit types entities which have no parent, in which
996 -- case we don't do anything otherwise we won't be able to revert back
997 -- to the original situation.
999 -- Shouldn't this use Is_Itype instead of the Parent test
1001 if Present (Parent (E1)) and then Present (Parent (E2)) then
1002 Set_Defining_Identifier (Parent (E1), E1);
1003 Set_Defining_Identifier (Parent (E2), E2);
1005 end Exchange_Entities;
1011 function Extend_Node (Node : Node_Id) return Entity_Id is
1014 procedure Debug_Extend_Node;
1015 pragma Inline (Debug_Extend_Node);
1016 -- Debug routine for debug flag N
1018 -----------------------
1019 -- Debug_Extend_Node --
1020 -----------------------
1022 procedure Debug_Extend_Node is
1024 if Debug_Flag_N then
1025 Write_Str ("Extend node ");
1026 Write_Int (Int (Node));
1028 if Result = Node then
1029 Write_Str (" in place");
1031 Write_Str (" copied to ");
1032 Write_Int (Int (Result));
1037 end Debug_Extend_Node;
1039 -- Start of processing for Extend_Node
1042 pragma Assert (not (Has_Extension (Node)));
1043 Result := Allocate_Initialize_Node (Node, With_Extension => True);
1044 pragma Debug (Debug_Extend_Node);
1052 procedure Fix_Parents (Ref_Node, Fix_Node : Node_Id) is
1054 procedure Fix_Parent (Field : Union_Id);
1055 -- Fixup one parent pointer. Field is checked to see if it points to
1056 -- a node, list, or element list that has a parent that points to
1057 -- Ref_Node. If so, the parent is reset to point to Fix_Node.
1063 procedure Fix_Parent (Field : Union_Id) is
1065 -- Fix parent of node that is referenced by Field. Note that we must
1066 -- exclude the case where the node is a member of a list, because in
1067 -- this case the parent is the parent of the list.
1069 if Field in Node_Range
1070 and then Present (Node_Id (Field))
1071 and then not Nodes.Table (Node_Id (Field)).In_List
1072 and then Parent (Node_Id (Field)) = Ref_Node
1074 Set_Parent (Node_Id (Field), Fix_Node);
1076 -- Fix parent of list that is referenced by Field
1078 elsif Field in List_Range
1079 and then Present (List_Id (Field))
1080 and then Parent (List_Id (Field)) = Ref_Node
1082 Set_Parent (List_Id (Field), Fix_Node);
1086 -- Start of processing for Fix_Parents
1089 Fix_Parent (Field1 (Fix_Node));
1090 Fix_Parent (Field2 (Fix_Node));
1091 Fix_Parent (Field3 (Fix_Node));
1092 Fix_Parent (Field4 (Fix_Node));
1093 Fix_Parent (Field5 (Fix_Node));
1096 -----------------------------------
1097 -- Get_Comes_From_Source_Default --
1098 -----------------------------------
1100 function Get_Comes_From_Source_Default return Boolean is
1102 return Default_Node.Comes_From_Source;
1103 end Get_Comes_From_Source_Default;
1109 function Has_Aspects (N : Node_Id) return Boolean is
1111 pragma Assert (N <= Nodes.Last);
1112 return Nodes.Table (N).Has_Aspects;
1119 function Has_Extension (N : Node_Id) return Boolean is
1121 return N < Nodes.Last and then Nodes.Table (N + 1).Is_Extension;
1128 procedure Initialize is
1130 pragma Warnings (Off, Dummy);
1134 Atree_Private_Part.Nodes.Init;
1138 -- Allocate Empty node
1140 Dummy := New_Node (N_Empty, No_Location);
1141 Set_Name1 (Empty, No_Name);
1143 -- Allocate Error node, and set Error_Posted, since we certainly
1144 -- only generate an Error node if we do post some kind of error!
1146 Dummy := New_Node (N_Error, No_Location);
1147 Set_Name1 (Error, Error_Name);
1148 Set_Error_Posted (Error, True);
1151 --------------------------
1152 -- Is_Rewrite_Insertion --
1153 --------------------------
1155 function Is_Rewrite_Insertion (Node : Node_Id) return Boolean is
1157 return Nodes.Table (Node).Rewrite_Ins;
1158 end Is_Rewrite_Insertion;
1160 -----------------------------
1161 -- Is_Rewrite_Substitution --
1162 -----------------------------
1164 function Is_Rewrite_Substitution (Node : Node_Id) return Boolean is
1166 return Orig_Nodes.Table (Node) /= Node;
1167 end Is_Rewrite_Substitution;
1173 function Last_Node_Id return Node_Id is
1184 Nodes.Locked := True;
1185 Orig_Nodes.Locked := True;
1190 ----------------------------
1191 -- Mark_Rewrite_Insertion --
1192 ----------------------------
1194 procedure Mark_Rewrite_Insertion (New_Node : Node_Id) is
1196 Nodes.Table (New_Node).Rewrite_Ins := True;
1197 end Mark_Rewrite_Insertion;
1203 function New_Copy (Source : Node_Id) return Node_Id is
1204 New_Id : Node_Id := Source;
1207 if Source > Empty_Or_Error then
1208 New_Id := Allocate_Initialize_Node (Source, Has_Extension (Source));
1210 Nodes.Table (New_Id).Link := Empty_List_Or_Node;
1211 Nodes.Table (New_Id).In_List := False;
1213 -- If the original is marked as a rewrite insertion, then unmark the
1214 -- copy, since we inserted the original, not the copy.
1216 Nodes.Table (New_Id).Rewrite_Ins := False;
1217 pragma Debug (New_Node_Debugging_Output (New_Id));
1219 -- Clear Is_Overloaded since we cannot have semantic interpretations
1220 -- of this new node.
1222 if Nkind (Source) in N_Subexpr then
1223 Set_Is_Overloaded (New_Id, False);
1226 -- Always clear Has_Aspects, the caller must take care of copying
1227 -- aspects if this is required for the particular situation.
1229 Set_Has_Aspects (New_Id, False);
1240 (New_Node_Kind : Node_Kind;
1241 New_Sloc : Source_Ptr) return Entity_Id
1246 pragma Assert (New_Node_Kind in N_Entity);
1248 Ent := Allocate_Initialize_Node (Empty, With_Extension => True);
1250 -- If this is a node with a real location and we are generating
1251 -- source nodes, then reset Current_Error_Node. This is useful
1252 -- if we bomb during parsing to get a error location for the bomb.
1254 if Default_Node.Comes_From_Source and then New_Sloc > No_Location then
1255 Current_Error_Node := Ent;
1258 Nodes.Table (Ent).Nkind := New_Node_Kind;
1259 Nodes.Table (Ent).Sloc := New_Sloc;
1260 pragma Debug (New_Node_Debugging_Output (Ent));
1270 (New_Node_Kind : Node_Kind;
1271 New_Sloc : Source_Ptr) return Node_Id
1276 pragma Assert (New_Node_Kind not in N_Entity);
1277 Nod := Allocate_Initialize_Node (Empty, With_Extension => False);
1278 Nodes.Table (Nod).Nkind := New_Node_Kind;
1279 Nodes.Table (Nod).Sloc := New_Sloc;
1280 pragma Debug (New_Node_Debugging_Output (Nod));
1282 -- If this is a node with a real location and we are generating source
1283 -- nodes, then reset Current_Error_Node. This is useful if we bomb
1284 -- during parsing to get an error location for the bomb.
1286 if Default_Node.Comes_From_Source and then New_Sloc > No_Location then
1287 Current_Error_Node := Nod;
1293 -------------------------
1294 -- New_Node_Breakpoint --
1295 -------------------------
1299 Write_Str ("Watched node ");
1300 Write_Int (Int (Watch_Node));
1301 Write_Str (" created");
1305 -------------------------------
1306 -- New_Node_Debugging_Output --
1307 -------------------------------
1309 procedure nnd (N : Node_Id) is
1310 Node_Is_Watched : constant Boolean := N = Watch_Node;
1313 if Debug_Flag_N or else Node_Is_Watched then
1314 Node_Debug_Output ("Allocate", N);
1316 if Node_Is_Watched then
1317 New_Node_Breakpoint;
1326 function Nkind (N : Node_Id) return Node_Kind is
1328 return Nodes.Table (N).Nkind;
1338 V2 : Node_Kind) return Boolean
1341 return Nkind_In (Nkind (N), V1, V2);
1348 V3 : Node_Kind) return Boolean
1351 return Nkind_In (Nkind (N), V1, V2, V3);
1359 V4 : Node_Kind) return Boolean
1362 return Nkind_In (Nkind (N), V1, V2, V3, V4);
1371 V5 : Node_Kind) return Boolean
1374 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5);
1384 V6 : Node_Kind) return Boolean
1387 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6);
1398 V7 : Node_Kind) return Boolean
1401 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7);
1413 V8 : Node_Kind) return Boolean
1416 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7, V8);
1429 V9 : Node_Kind) return Boolean
1432 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7, V8, V9);
1439 function No (N : Node_Id) return Boolean is
1444 -----------------------
1445 -- Node_Debug_Output --
1446 -----------------------
1448 procedure Node_Debug_Output (Op : String; N : Node_Id) is
1452 if Nkind (N) in N_Entity then
1453 Write_Str (" entity");
1455 Write_Str (" node");
1458 Write_Str (" Id = ");
1459 Write_Int (Int (N));
1461 Write_Location (Sloc (N));
1463 Write_Str (Node_Kind'Image (Nkind (N)));
1465 end Node_Debug_Output;
1471 function Nodes_Address return System.Address is
1473 return Nodes.Table (First_Node_Id)'Address;
1480 function Num_Nodes return Nat is
1489 function Original_Node (Node : Node_Id) return Node_Id is
1491 return Orig_Nodes.Table (Node);
1498 function Paren_Count (N : Node_Id) return Nat is
1502 pragma Assert (N <= Nodes.Last);
1504 if Nodes.Table (N).Pflag1 then
1508 if Nodes.Table (N).Pflag2 then
1512 -- Value of 0,1,2 returned as is
1517 -- Value of 3 means we search the table, and we must find an entry
1520 for J in Paren_Counts.First .. Paren_Counts.Last loop
1521 if N = Paren_Counts.Table (J).Nod then
1522 return Paren_Counts.Table (J).Count;
1526 raise Program_Error;
1534 function Parent (N : Node_Id) return Node_Id is
1536 if Is_List_Member (N) then
1537 return Parent (List_Containing (N));
1539 return Node_Id (Nodes.Table (N).Link);
1547 function Present (N : Node_Id) return Boolean is
1552 --------------------------------
1553 -- Preserve_Comes_From_Source --
1554 --------------------------------
1556 procedure Preserve_Comes_From_Source (NewN, OldN : Node_Id) is
1558 Nodes.Table (NewN).Comes_From_Source :=
1559 Nodes.Table (OldN).Comes_From_Source;
1560 end Preserve_Comes_From_Source;
1566 function Relocate_Node (Source : Node_Id) return Node_Id is
1574 New_Node := New_Copy (Source);
1575 Fix_Parents (Ref_Node => Source, Fix_Node => New_Node);
1577 -- We now set the parent of the new node to be the same as the
1578 -- parent of the source. Almost always this parent will be
1579 -- replaced by a new value when the relocated node is reattached
1580 -- to the tree, but by doing it now, we ensure that this node is
1581 -- not even temporarily disconnected from the tree. Note that this
1582 -- does not happen free, because in the list case, the parent does
1585 Set_Parent (New_Node, Parent (Source));
1587 -- If the node being relocated was a rewriting of some original
1588 -- node, then the relocated node has the same original node.
1590 if Orig_Nodes.Table (Source) /= Source then
1591 Orig_Nodes.Table (New_Node) := Orig_Nodes.Table (Source);
1601 procedure Replace (Old_Node, New_Node : Node_Id) is
1602 Old_Post : constant Boolean := Nodes.Table (Old_Node).Error_Posted;
1603 Old_HasA : constant Boolean := Nodes.Table (Old_Node).Has_Aspects;
1604 Old_CFS : constant Boolean := Nodes.Table (Old_Node).Comes_From_Source;
1608 (not Has_Extension (Old_Node)
1609 and not Has_Extension (New_Node)
1610 and not Nodes.Table (New_Node).In_List);
1612 -- Do copy, preserving link and in list status and required flags
1614 Copy_Node (Source => New_Node, Destination => Old_Node);
1615 Nodes.Table (Old_Node).Comes_From_Source := Old_CFS;
1616 Nodes.Table (Old_Node).Error_Posted := Old_Post;
1617 Nodes.Table (Old_Node).Has_Aspects := Old_HasA;
1619 -- Fix parents of substituted node, since it has changed identity
1621 Fix_Parents (Ref_Node => New_Node, Fix_Node => Old_Node);
1623 -- Since we are doing a replace, we assume that the original node
1624 -- is intended to become the new replaced node. The call would be
1625 -- to Rewrite if there were an intention to save the original node.
1627 Orig_Nodes.Table (Old_Node) := Old_Node;
1629 -- Invoke the reporting procedure (if available)
1631 if Reporting_Proc /= null then
1632 Reporting_Proc.all (Target => Old_Node, Source => New_Node);
1640 procedure Rewrite (Old_Node, New_Node : Node_Id) is
1641 Old_Error_P : constant Boolean := Nodes.Table (Old_Node).Error_Posted;
1642 -- This field is always preserved in the new node
1644 Old_Has_Aspects : constant Boolean := Nodes.Table (Old_Node).Has_Aspects;
1645 -- This field is always preserved in the new node
1647 Old_Paren_Count : Nat;
1648 Old_Must_Not_Freeze : Boolean;
1649 -- These fields are preserved in the new node only if the new node
1650 -- and the old node are both subexpression nodes.
1652 -- Note: it is a violation of abstraction levels for Must_Not_Freeze
1653 -- to be referenced like this. ???
1659 (not Has_Extension (Old_Node)
1660 and not Has_Extension (New_Node)
1661 and not Nodes.Table (New_Node).In_List);
1662 pragma Debug (Rewrite_Debugging_Output (Old_Node, New_Node));
1664 if Nkind (Old_Node) in N_Subexpr then
1665 Old_Paren_Count := Paren_Count (Old_Node);
1666 Old_Must_Not_Freeze := Must_Not_Freeze (Old_Node);
1668 Old_Paren_Count := 0;
1669 Old_Must_Not_Freeze := False;
1672 -- Allocate a new node, to be used to preserve the original contents
1673 -- of the Old_Node, for possible later retrival by Original_Node and
1674 -- make an entry in the Orig_Nodes table. This is only done if we have
1675 -- not already rewritten the node, as indicated by an Orig_Nodes entry
1676 -- that does not reference the Old_Node.
1678 if Orig_Nodes.Table (Old_Node) = Old_Node then
1679 Sav_Node := New_Copy (Old_Node);
1680 Orig_Nodes.Table (Sav_Node) := Sav_Node;
1681 Orig_Nodes.Table (Old_Node) := Sav_Node;
1683 -- Both the old and new copies of the node will share the same list
1684 -- of aspect specifications if aspect specifications are present.
1686 if Has_Aspects (Sav_Node) then
1687 Set_Has_Aspects (Sav_Node, False);
1688 Set_Aspect_Specifications
1689 (Sav_Node, Aspect_Specifications (Old_Node));
1693 -- Copy substitute node into place, preserving old fields as required
1695 Copy_Node (Source => New_Node, Destination => Old_Node);
1696 Nodes.Table (Old_Node).Error_Posted := Old_Error_P;
1697 Nodes.Table (Old_Node).Has_Aspects := Old_Has_Aspects;
1699 if Nkind (New_Node) in N_Subexpr then
1700 Set_Paren_Count (Old_Node, Old_Paren_Count);
1701 Set_Must_Not_Freeze (Old_Node, Old_Must_Not_Freeze);
1704 Fix_Parents (Ref_Node => New_Node, Fix_Node => Old_Node);
1706 -- Invoke the reporting procedure (if available)
1708 if Reporting_Proc /= null then
1709 Reporting_Proc.all (Target => Old_Node, Source => New_Node);
1713 -------------------------
1714 -- Rewrite_Breakpoint --
1715 -------------------------
1719 Write_Str ("Watched node ");
1720 Write_Int (Int (Watch_Node));
1721 Write_Str (" rewritten");
1725 ------------------------------
1726 -- Rewrite_Debugging_Output --
1727 ------------------------------
1729 procedure rrd (Old_Node, New_Node : Node_Id) is
1730 Node_Is_Watched : constant Boolean := Old_Node = Watch_Node;
1733 if Debug_Flag_N or else Node_Is_Watched then
1734 Node_Debug_Output ("Rewrite", Old_Node);
1735 Node_Debug_Output ("into", New_Node);
1737 if Node_Is_Watched then
1747 procedure Set_Analyzed (N : Node_Id; Val : Boolean := True) is
1749 Nodes.Table (N).Analyzed := Val;
1752 ---------------------------
1753 -- Set_Comes_From_Source --
1754 ---------------------------
1756 procedure Set_Comes_From_Source (N : Node_Id; Val : Boolean) is
1758 pragma Assert (N <= Nodes.Last);
1759 Nodes.Table (N).Comes_From_Source := Val;
1760 end Set_Comes_From_Source;
1762 -----------------------------------
1763 -- Set_Comes_From_Source_Default --
1764 -----------------------------------
1766 procedure Set_Comes_From_Source_Default (Default : Boolean) is
1768 Default_Node.Comes_From_Source := Default;
1769 end Set_Comes_From_Source_Default;
1775 procedure Set_Ekind (E : Entity_Id; Val : Entity_Kind) is
1777 pragma Assert (Nkind (E) in N_Entity);
1778 Nodes.Table (E + 1).Nkind := E_To_N (Val);
1781 ----------------------
1782 -- Set_Error_Posted --
1783 ----------------------
1785 procedure Set_Error_Posted (N : Node_Id; Val : Boolean := True) is
1787 Nodes.Table (N).Error_Posted := Val;
1788 end Set_Error_Posted;
1790 ---------------------
1791 -- Set_Has_Aspects --
1792 ---------------------
1794 procedure Set_Has_Aspects (N : Node_Id; Val : Boolean := True) is
1796 pragma Assert (N <= Nodes.Last);
1797 Nodes.Table (N).Has_Aspects := Val;
1798 end Set_Has_Aspects;
1800 -----------------------
1801 -- Set_Original_Node --
1802 -----------------------
1804 procedure Set_Original_Node (N : Node_Id; Val : Node_Id) is
1806 Orig_Nodes.Table (N) := Val;
1807 end Set_Original_Node;
1809 ---------------------
1810 -- Set_Paren_Count --
1811 ---------------------
1813 procedure Set_Paren_Count (N : Node_Id; Val : Nat) is
1815 pragma Assert (Nkind (N) in N_Subexpr);
1817 -- Value of 0,1,2 stored as is
1820 Nodes.Table (N).Pflag1 := (Val mod 2 /= 0);
1821 Nodes.Table (N).Pflag2 := (Val = 2);
1823 -- Value of 3 or greater stores 3 in node and makes table entry
1826 Nodes.Table (N).Pflag1 := True;
1827 Nodes.Table (N).Pflag2 := True;
1829 for J in Paren_Counts.First .. Paren_Counts.Last loop
1830 if N = Paren_Counts.Table (J).Nod then
1831 Paren_Counts.Table (J).Count := Val;
1836 Paren_Counts.Append ((Nod => N, Count => Val));
1838 end Set_Paren_Count;
1844 procedure Set_Parent (N : Node_Id; Val : Node_Id) is
1846 pragma Assert (not Nodes.Table (N).In_List);
1847 Nodes.Table (N).Link := Union_Id (Val);
1854 procedure Set_Sloc (N : Node_Id; Val : Source_Ptr) is
1856 Nodes.Table (N).Sloc := Val;
1863 function Sloc (N : Node_Id) return Source_Ptr is
1865 return Nodes.Table (N).Sloc;
1872 function Traverse_Func (Node : Node_Id) return Traverse_Final_Result is
1874 function Traverse_Field
1877 FN : Field_Num) return Traverse_Final_Result;
1878 -- Fld is one of the fields of Nod. If the field points to syntactic
1879 -- node or list, then this node or list is traversed, and the result is
1880 -- the result of this traversal. Otherwise a value of True is returned
1881 -- with no processing. FN is the number of the field (1 .. 5).
1883 --------------------
1884 -- Traverse_Field --
1885 --------------------
1887 function Traverse_Field
1890 FN : Field_Num) return Traverse_Final_Result
1893 if Fld = Union_Id (Empty) then
1896 -- Descendent is a node
1898 elsif Fld in Node_Range then
1900 -- Traverse descendent that is syntactic subtree node
1902 if Is_Syntactic_Field (Nkind (Nod), FN) then
1903 return Traverse_Func (Node_Id (Fld));
1905 -- Node that is not a syntactic subtree
1911 -- Descendent is a list
1913 elsif Fld in List_Range then
1915 -- Traverse descendent that is a syntactic subtree list
1917 if Is_Syntactic_Field (Nkind (Nod), FN) then
1919 Elmt : Node_Id := First (List_Id (Fld));
1921 while Present (Elmt) loop
1922 if Traverse_Func (Elmt) = Abandon then
1932 -- List that is not a syntactic subtree
1938 -- Field was not a node or a list
1945 Cur_Node : Node_Id := Node;
1947 -- Start of processing for Traverse_Func
1950 -- We walk Field2 last, and if it is a node, we eliminate the tail
1951 -- recursion by jumping back to this label. This is because Field2 is
1952 -- where the Left_Opnd field of N_Op_Concat is stored, and in practice
1953 -- concatenations are sometimes deeply nested, as in X1&X2&...&XN. This
1954 -- trick prevents us from running out of memory in that case. We don't
1955 -- bother eliminating the tail recursion if Field2 is a list.
1959 case Process (Cur_Node) is
1970 Cur_Node := Original_Node (Cur_Node);
1973 if Traverse_Field (Cur_Node, Field1 (Cur_Node), 1) = Abandon
1974 or else -- skip Field2 here
1975 Traverse_Field (Cur_Node, Field3 (Cur_Node), 3) = Abandon
1977 Traverse_Field (Cur_Node, Field4 (Cur_Node), 4) = Abandon
1979 Traverse_Field (Cur_Node, Field5 (Cur_Node), 5) = Abandon
1984 if Field2 (Cur_Node) not in Node_Range then
1985 return Traverse_Field (Cur_Node, Field2 (Cur_Node), 2);
1987 elsif Is_Syntactic_Field (Nkind (Cur_Node), 2)
1988 and then Field2 (Cur_Node) /= Empty_List_Or_Node
1990 -- Here is the tail recursion step, we reset Cur_Node and jump back
1991 -- to the start of the procedure, which has the same semantic effect
1994 Cur_Node := Node_Id (Field2 (Cur_Node));
2005 procedure Traverse_Proc (Node : Node_Id) is
2006 function Traverse is new Traverse_Func (Process);
2007 Discard : Traverse_Final_Result;
2008 pragma Warnings (Off, Discard);
2010 Discard := Traverse (Node);
2017 procedure Tree_Read is
2019 Tree_Read_Int (Node_Count);
2021 Orig_Nodes.Tree_Read;
2022 Paren_Counts.Tree_Read;
2029 procedure Tree_Write is
2031 Tree_Write_Int (Node_Count);
2033 Orig_Nodes.Tree_Write;
2034 Paren_Counts.Tree_Write;
2037 ------------------------------
2038 -- Unchecked Access Package --
2039 ------------------------------
2041 package body Unchecked_Access is
2043 function Field1 (N : Node_Id) return Union_Id is
2045 pragma Assert (N <= Nodes.Last);
2046 return Nodes.Table (N).Field1;
2049 function Field2 (N : Node_Id) return Union_Id is
2051 pragma Assert (N <= Nodes.Last);
2052 return Nodes.Table (N).Field2;
2055 function Field3 (N : Node_Id) return Union_Id is
2057 pragma Assert (N <= Nodes.Last);
2058 return Nodes.Table (N).Field3;
2061 function Field4 (N : Node_Id) return Union_Id is
2063 pragma Assert (N <= Nodes.Last);
2064 return Nodes.Table (N).Field4;
2067 function Field5 (N : Node_Id) return Union_Id is
2069 pragma Assert (N <= Nodes.Last);
2070 return Nodes.Table (N).Field5;
2073 function Field6 (N : Node_Id) return Union_Id is
2075 pragma Assert (Nkind (N) in N_Entity);
2076 return Nodes.Table (N + 1).Field6;
2079 function Field7 (N : Node_Id) return Union_Id is
2081 pragma Assert (Nkind (N) in N_Entity);
2082 return Nodes.Table (N + 1).Field7;
2085 function Field8 (N : Node_Id) return Union_Id is
2087 pragma Assert (Nkind (N) in N_Entity);
2088 return Nodes.Table (N + 1).Field8;
2091 function Field9 (N : Node_Id) return Union_Id is
2093 pragma Assert (Nkind (N) in N_Entity);
2094 return Nodes.Table (N + 1).Field9;
2097 function Field10 (N : Node_Id) return Union_Id is
2099 pragma Assert (Nkind (N) in N_Entity);
2100 return Nodes.Table (N + 1).Field10;
2103 function Field11 (N : Node_Id) return Union_Id is
2105 pragma Assert (Nkind (N) in N_Entity);
2106 return Nodes.Table (N + 1).Field11;
2109 function Field12 (N : Node_Id) return Union_Id is
2111 pragma Assert (Nkind (N) in N_Entity);
2112 return Nodes.Table (N + 1).Field12;
2115 function Field13 (N : Node_Id) return Union_Id is
2117 pragma Assert (Nkind (N) in N_Entity);
2118 return Nodes.Table (N + 2).Field6;
2121 function Field14 (N : Node_Id) return Union_Id is
2123 pragma Assert (Nkind (N) in N_Entity);
2124 return Nodes.Table (N + 2).Field7;
2127 function Field15 (N : Node_Id) return Union_Id is
2129 pragma Assert (Nkind (N) in N_Entity);
2130 return Nodes.Table (N + 2).Field8;
2133 function Field16 (N : Node_Id) return Union_Id is
2135 pragma Assert (Nkind (N) in N_Entity);
2136 return Nodes.Table (N + 2).Field9;
2139 function Field17 (N : Node_Id) return Union_Id is
2141 pragma Assert (Nkind (N) in N_Entity);
2142 return Nodes.Table (N + 2).Field10;
2145 function Field18 (N : Node_Id) return Union_Id is
2147 pragma Assert (Nkind (N) in N_Entity);
2148 return Nodes.Table (N + 2).Field11;
2151 function Field19 (N : Node_Id) return Union_Id is
2153 pragma Assert (Nkind (N) in N_Entity);
2154 return Nodes.Table (N + 3).Field6;
2157 function Field20 (N : Node_Id) return Union_Id is
2159 pragma Assert (Nkind (N) in N_Entity);
2160 return Nodes.Table (N + 3).Field7;
2163 function Field21 (N : Node_Id) return Union_Id is
2165 pragma Assert (Nkind (N) in N_Entity);
2166 return Nodes.Table (N + 3).Field8;
2169 function Field22 (N : Node_Id) return Union_Id is
2171 pragma Assert (Nkind (N) in N_Entity);
2172 return Nodes.Table (N + 3).Field9;
2175 function Field23 (N : Node_Id) return Union_Id is
2177 pragma Assert (Nkind (N) in N_Entity);
2178 return Nodes.Table (N + 3).Field10;
2181 function Field24 (N : Node_Id) return Union_Id is
2183 pragma Assert (Nkind (N) in N_Entity);
2184 return Nodes.Table (N + 4).Field6;
2187 function Field25 (N : Node_Id) return Union_Id is
2189 pragma Assert (Nkind (N) in N_Entity);
2190 return Nodes.Table (N + 4).Field7;
2193 function Field26 (N : Node_Id) return Union_Id is
2195 pragma Assert (Nkind (N) in N_Entity);
2196 return Nodes.Table (N + 4).Field8;
2199 function Field27 (N : Node_Id) return Union_Id is
2201 pragma Assert (Nkind (N) in N_Entity);
2202 return Nodes.Table (N + 4).Field9;
2205 function Field28 (N : Node_Id) return Union_Id is
2207 pragma Assert (Nkind (N) in N_Entity);
2208 return Nodes.Table (N + 4).Field10;
2211 function Field29 (N : Node_Id) return Union_Id is
2213 pragma Assert (Nkind (N) in N_Entity);
2214 return Nodes.Table (N + 4).Field11;
2217 function Node1 (N : Node_Id) return Node_Id is
2219 pragma Assert (N <= Nodes.Last);
2220 return Node_Id (Nodes.Table (N).Field1);
2223 function Node2 (N : Node_Id) return Node_Id is
2225 pragma Assert (N <= Nodes.Last);
2226 return Node_Id (Nodes.Table (N).Field2);
2229 function Node3 (N : Node_Id) return Node_Id is
2231 pragma Assert (N <= Nodes.Last);
2232 return Node_Id (Nodes.Table (N).Field3);
2235 function Node4 (N : Node_Id) return Node_Id is
2237 pragma Assert (N <= Nodes.Last);
2238 return Node_Id (Nodes.Table (N).Field4);
2241 function Node5 (N : Node_Id) return Node_Id is
2243 pragma Assert (N <= Nodes.Last);
2244 return Node_Id (Nodes.Table (N).Field5);
2247 function Node6 (N : Node_Id) return Node_Id is
2249 pragma Assert (Nkind (N) in N_Entity);
2250 return Node_Id (Nodes.Table (N + 1).Field6);
2253 function Node7 (N : Node_Id) return Node_Id is
2255 pragma Assert (Nkind (N) in N_Entity);
2256 return Node_Id (Nodes.Table (N + 1).Field7);
2259 function Node8 (N : Node_Id) return Node_Id is
2261 pragma Assert (Nkind (N) in N_Entity);
2262 return Node_Id (Nodes.Table (N + 1).Field8);
2265 function Node9 (N : Node_Id) return Node_Id is
2267 pragma Assert (Nkind (N) in N_Entity);
2268 return Node_Id (Nodes.Table (N + 1).Field9);
2271 function Node10 (N : Node_Id) return Node_Id is
2273 pragma Assert (Nkind (N) in N_Entity);
2274 return Node_Id (Nodes.Table (N + 1).Field10);
2277 function Node11 (N : Node_Id) return Node_Id is
2279 pragma Assert (Nkind (N) in N_Entity);
2280 return Node_Id (Nodes.Table (N + 1).Field11);
2283 function Node12 (N : Node_Id) return Node_Id is
2285 pragma Assert (Nkind (N) in N_Entity);
2286 return Node_Id (Nodes.Table (N + 1).Field12);
2289 function Node13 (N : Node_Id) return Node_Id is
2291 pragma Assert (Nkind (N) in N_Entity);
2292 return Node_Id (Nodes.Table (N + 2).Field6);
2295 function Node14 (N : Node_Id) return Node_Id is
2297 pragma Assert (Nkind (N) in N_Entity);
2298 return Node_Id (Nodes.Table (N + 2).Field7);
2301 function Node15 (N : Node_Id) return Node_Id is
2303 pragma Assert (Nkind (N) in N_Entity);
2304 return Node_Id (Nodes.Table (N + 2).Field8);
2307 function Node16 (N : Node_Id) return Node_Id is
2309 pragma Assert (Nkind (N) in N_Entity);
2310 return Node_Id (Nodes.Table (N + 2).Field9);
2313 function Node17 (N : Node_Id) return Node_Id is
2315 pragma Assert (Nkind (N) in N_Entity);
2316 return Node_Id (Nodes.Table (N + 2).Field10);
2319 function Node18 (N : Node_Id) return Node_Id is
2321 pragma Assert (Nkind (N) in N_Entity);
2322 return Node_Id (Nodes.Table (N + 2).Field11);
2325 function Node19 (N : Node_Id) return Node_Id is
2327 pragma Assert (Nkind (N) in N_Entity);
2328 return Node_Id (Nodes.Table (N + 3).Field6);
2331 function Node20 (N : Node_Id) return Node_Id is
2333 pragma Assert (Nkind (N) in N_Entity);
2334 return Node_Id (Nodes.Table (N + 3).Field7);
2337 function Node21 (N : Node_Id) return Node_Id is
2339 pragma Assert (Nkind (N) in N_Entity);
2340 return Node_Id (Nodes.Table (N + 3).Field8);
2343 function Node22 (N : Node_Id) return Node_Id is
2345 pragma Assert (Nkind (N) in N_Entity);
2346 return Node_Id (Nodes.Table (N + 3).Field9);
2349 function Node23 (N : Node_Id) return Node_Id is
2351 pragma Assert (Nkind (N) in N_Entity);
2352 return Node_Id (Nodes.Table (N + 3).Field10);
2355 function Node24 (N : Node_Id) return Node_Id is
2357 pragma Assert (Nkind (N) in N_Entity);
2358 return Node_Id (Nodes.Table (N + 4).Field6);
2361 function Node25 (N : Node_Id) return Node_Id is
2363 pragma Assert (Nkind (N) in N_Entity);
2364 return Node_Id (Nodes.Table (N + 4).Field7);
2367 function Node26 (N : Node_Id) return Node_Id is
2369 pragma Assert (Nkind (N) in N_Entity);
2370 return Node_Id (Nodes.Table (N + 4).Field8);
2373 function Node27 (N : Node_Id) return Node_Id is
2375 pragma Assert (Nkind (N) in N_Entity);
2376 return Node_Id (Nodes.Table (N + 4).Field9);
2379 function Node28 (N : Node_Id) return Node_Id is
2381 pragma Assert (Nkind (N) in N_Entity);
2382 return Node_Id (Nodes.Table (N + 4).Field10);
2385 function Node29 (N : Node_Id) return Node_Id is
2387 pragma Assert (Nkind (N) in N_Entity);
2388 return Node_Id (Nodes.Table (N + 4).Field11);
2391 function List1 (N : Node_Id) return List_Id is
2393 pragma Assert (N <= Nodes.Last);
2394 return List_Id (Nodes.Table (N).Field1);
2397 function List2 (N : Node_Id) return List_Id is
2399 pragma Assert (N <= Nodes.Last);
2400 return List_Id (Nodes.Table (N).Field2);
2403 function List3 (N : Node_Id) return List_Id is
2405 pragma Assert (N <= Nodes.Last);
2406 return List_Id (Nodes.Table (N).Field3);
2409 function List4 (N : Node_Id) return List_Id is
2411 pragma Assert (N <= Nodes.Last);
2412 return List_Id (Nodes.Table (N).Field4);
2415 function List5 (N : Node_Id) return List_Id is
2417 pragma Assert (N <= Nodes.Last);
2418 return List_Id (Nodes.Table (N).Field5);
2421 function List10 (N : Node_Id) return List_Id is
2423 pragma Assert (Nkind (N) in N_Entity);
2424 return List_Id (Nodes.Table (N + 1).Field10);
2427 function List14 (N : Node_Id) return List_Id is
2429 pragma Assert (Nkind (N) in N_Entity);
2430 return List_Id (Nodes.Table (N + 2).Field7);
2433 function List25 (N : Node_Id) return List_Id is
2435 pragma Assert (Nkind (N) in N_Entity);
2436 return List_Id (Nodes.Table (N + 4).Field7);
2439 function Elist1 (N : Node_Id) return Elist_Id is
2440 pragma Assert (N <= Nodes.Last);
2441 Value : constant Union_Id := Nodes.Table (N).Field1;
2446 return Elist_Id (Value);
2450 function Elist2 (N : Node_Id) return Elist_Id is
2451 pragma Assert (N <= Nodes.Last);
2452 Value : constant Union_Id := Nodes.Table (N).Field2;
2457 return Elist_Id (Value);
2461 function Elist3 (N : Node_Id) return Elist_Id is
2462 pragma Assert (N <= Nodes.Last);
2463 Value : constant Union_Id := Nodes.Table (N).Field3;
2468 return Elist_Id (Value);
2472 function Elist4 (N : Node_Id) return Elist_Id is
2473 pragma Assert (N <= Nodes.Last);
2474 Value : constant Union_Id := Nodes.Table (N).Field4;
2479 return Elist_Id (Value);
2483 function Elist5 (N : Node_Id) return Elist_Id is
2484 pragma Assert (N <= Nodes.Last);
2485 Value : constant Union_Id := Nodes.Table (N).Field5;
2490 return Elist_Id (Value);
2494 function Elist8 (N : Node_Id) return Elist_Id is
2495 pragma Assert (Nkind (N) in N_Entity);
2496 Value : constant Union_Id := Nodes.Table (N + 1).Field8;
2501 return Elist_Id (Value);
2505 function Elist10 (N : Node_Id) return Elist_Id is
2506 pragma Assert (Nkind (N) in N_Entity);
2507 Value : constant Union_Id := Nodes.Table (N + 1).Field10;
2512 return Elist_Id (Value);
2516 function Elist13 (N : Node_Id) return Elist_Id is
2517 pragma Assert (Nkind (N) in N_Entity);
2518 Value : constant Union_Id := Nodes.Table (N + 2).Field6;
2523 return Elist_Id (Value);
2527 function Elist15 (N : Node_Id) return Elist_Id is
2528 pragma Assert (Nkind (N) in N_Entity);
2529 Value : constant Union_Id := Nodes.Table (N + 2).Field8;
2534 return Elist_Id (Value);
2538 function Elist16 (N : Node_Id) return Elist_Id is
2539 pragma Assert (Nkind (N) in N_Entity);
2540 Value : constant Union_Id := Nodes.Table (N + 2).Field9;
2545 return Elist_Id (Value);
2549 function Elist18 (N : Node_Id) return Elist_Id is
2550 pragma Assert (Nkind (N) in N_Entity);
2551 Value : constant Union_Id := Nodes.Table (N + 2).Field11;
2556 return Elist_Id (Value);
2560 function Elist21 (N : Node_Id) return Elist_Id is
2561 pragma Assert (Nkind (N) in N_Entity);
2562 Value : constant Union_Id := Nodes.Table (N + 3).Field8;
2567 return Elist_Id (Value);
2571 function Elist23 (N : Node_Id) return Elist_Id is
2572 pragma Assert (Nkind (N) in N_Entity);
2573 Value : constant Union_Id := Nodes.Table (N + 3).Field10;
2578 return Elist_Id (Value);
2582 function Elist24 (N : Node_Id) return Elist_Id is
2583 pragma Assert (Nkind (N) in N_Entity);
2584 Value : constant Union_Id := Nodes.Table (N + 4).Field6;
2589 return Elist_Id (Value);
2593 function Elist25 (N : Node_Id) return Elist_Id is
2594 pragma Assert (Nkind (N) in N_Entity);
2595 Value : constant Union_Id := Nodes.Table (N + 4).Field7;
2600 return Elist_Id (Value);
2604 function Elist26 (N : Node_Id) return Elist_Id is
2605 pragma Assert (Nkind (N) in N_Entity);
2606 Value : constant Union_Id := Nodes.Table (N + 4).Field8;
2611 return Elist_Id (Value);
2615 function Name1 (N : Node_Id) return Name_Id is
2617 pragma Assert (N <= Nodes.Last);
2618 return Name_Id (Nodes.Table (N).Field1);
2621 function Name2 (N : Node_Id) return Name_Id is
2623 pragma Assert (N <= Nodes.Last);
2624 return Name_Id (Nodes.Table (N).Field2);
2627 function Str3 (N : Node_Id) return String_Id is
2629 pragma Assert (N <= Nodes.Last);
2630 return String_Id (Nodes.Table (N).Field3);
2633 function Uint2 (N : Node_Id) return Uint is
2634 pragma Assert (N <= Nodes.Last);
2635 U : constant Union_Id := Nodes.Table (N).Field2;
2640 return From_Union (U);
2644 function Uint3 (N : Node_Id) return Uint is
2645 pragma Assert (N <= Nodes.Last);
2646 U : constant Union_Id := Nodes.Table (N).Field3;
2651 return From_Union (U);
2655 function Uint4 (N : Node_Id) return Uint is
2656 pragma Assert (N <= Nodes.Last);
2657 U : constant Union_Id := Nodes.Table (N).Field4;
2662 return From_Union (U);
2666 function Uint5 (N : Node_Id) return Uint is
2667 pragma Assert (N <= Nodes.Last);
2668 U : constant Union_Id := Nodes.Table (N).Field5;
2673 return From_Union (U);
2677 function Uint8 (N : Node_Id) return Uint is
2678 pragma Assert (Nkind (N) in N_Entity);
2679 U : constant Union_Id := Nodes.Table (N + 1).Field8;
2684 return From_Union (U);
2688 function Uint9 (N : Node_Id) return Uint is
2689 pragma Assert (Nkind (N) in N_Entity);
2690 U : constant Union_Id := Nodes.Table (N + 1).Field9;
2695 return From_Union (U);
2699 function Uint10 (N : Node_Id) return Uint is
2700 pragma Assert (Nkind (N) in N_Entity);
2701 U : constant Union_Id := Nodes.Table (N + 1).Field10;
2706 return From_Union (U);
2710 function Uint11 (N : Node_Id) return Uint is
2711 pragma Assert (Nkind (N) in N_Entity);
2712 U : constant Union_Id := Nodes.Table (N + 1).Field11;
2717 return From_Union (U);
2721 function Uint12 (N : Node_Id) return Uint is
2722 pragma Assert (Nkind (N) in N_Entity);
2723 U : constant Union_Id := Nodes.Table (N + 1).Field12;
2728 return From_Union (U);
2732 function Uint13 (N : Node_Id) return Uint is
2733 pragma Assert (Nkind (N) in N_Entity);
2734 U : constant Union_Id := Nodes.Table (N + 2).Field6;
2739 return From_Union (U);
2743 function Uint14 (N : Node_Id) return Uint is
2744 pragma Assert (Nkind (N) in N_Entity);
2745 U : constant Union_Id := Nodes.Table (N + 2).Field7;
2750 return From_Union (U);
2754 function Uint15 (N : Node_Id) return Uint is
2755 pragma Assert (Nkind (N) in N_Entity);
2756 U : constant Union_Id := Nodes.Table (N + 2).Field8;
2761 return From_Union (U);
2765 function Uint16 (N : Node_Id) return Uint is
2766 pragma Assert (Nkind (N) in N_Entity);
2767 U : constant Union_Id := Nodes.Table (N + 2).Field9;
2772 return From_Union (U);
2776 function Uint17 (N : Node_Id) return Uint is
2777 pragma Assert (Nkind (N) in N_Entity);
2778 U : constant Union_Id := Nodes.Table (N + 2).Field10;
2783 return From_Union (U);
2787 function Uint22 (N : Node_Id) return Uint is
2788 pragma Assert (Nkind (N) in N_Entity);
2789 U : constant Union_Id := Nodes.Table (N + 3).Field9;
2794 return From_Union (U);
2798 function Ureal3 (N : Node_Id) return Ureal is
2800 pragma Assert (N <= Nodes.Last);
2801 return From_Union (Nodes.Table (N).Field3);
2804 function Ureal18 (N : Node_Id) return Ureal is
2806 pragma Assert (Nkind (N) in N_Entity);
2807 return From_Union (Nodes.Table (N + 2).Field11);
2810 function Ureal21 (N : Node_Id) return Ureal is
2812 pragma Assert (Nkind (N) in N_Entity);
2813 return From_Union (Nodes.Table (N + 3).Field8);
2816 function Flag4 (N : Node_Id) return Boolean is
2818 pragma Assert (N <= Nodes.Last);
2819 return Nodes.Table (N).Flag4;
2822 function Flag5 (N : Node_Id) return Boolean is
2824 pragma Assert (N <= Nodes.Last);
2825 return Nodes.Table (N).Flag5;
2828 function Flag6 (N : Node_Id) return Boolean is
2830 pragma Assert (N <= Nodes.Last);
2831 return Nodes.Table (N).Flag6;
2834 function Flag7 (N : Node_Id) return Boolean is
2836 pragma Assert (N <= Nodes.Last);
2837 return Nodes.Table (N).Flag7;
2840 function Flag8 (N : Node_Id) return Boolean is
2842 pragma Assert (N <= Nodes.Last);
2843 return Nodes.Table (N).Flag8;
2846 function Flag9 (N : Node_Id) return Boolean is
2848 pragma Assert (N <= Nodes.Last);
2849 return Nodes.Table (N).Flag9;
2852 function Flag10 (N : Node_Id) return Boolean is
2854 pragma Assert (N <= Nodes.Last);
2855 return Nodes.Table (N).Flag10;
2858 function Flag11 (N : Node_Id) return Boolean is
2860 pragma Assert (N <= Nodes.Last);
2861 return Nodes.Table (N).Flag11;
2864 function Flag12 (N : Node_Id) return Boolean is
2866 pragma Assert (N <= Nodes.Last);
2867 return Nodes.Table (N).Flag12;
2870 function Flag13 (N : Node_Id) return Boolean is
2872 pragma Assert (N <= Nodes.Last);
2873 return Nodes.Table (N).Flag13;
2876 function Flag14 (N : Node_Id) return Boolean is
2878 pragma Assert (N <= Nodes.Last);
2879 return Nodes.Table (N).Flag14;
2882 function Flag15 (N : Node_Id) return Boolean is
2884 pragma Assert (N <= Nodes.Last);
2885 return Nodes.Table (N).Flag15;
2888 function Flag16 (N : Node_Id) return Boolean is
2890 pragma Assert (N <= Nodes.Last);
2891 return Nodes.Table (N).Flag16;
2894 function Flag17 (N : Node_Id) return Boolean is
2896 pragma Assert (N <= Nodes.Last);
2897 return Nodes.Table (N).Flag17;
2900 function Flag18 (N : Node_Id) return Boolean is
2902 pragma Assert (N <= Nodes.Last);
2903 return Nodes.Table (N).Flag18;
2906 function Flag19 (N : Node_Id) return Boolean is
2908 pragma Assert (Nkind (N) in N_Entity);
2909 return Nodes.Table (N + 1).In_List;
2912 function Flag20 (N : Node_Id) return Boolean is
2914 pragma Assert (Nkind (N) in N_Entity);
2915 return Nodes.Table (N + 1).Has_Aspects;
2918 function Flag21 (N : Node_Id) return Boolean is
2920 pragma Assert (Nkind (N) in N_Entity);
2921 return Nodes.Table (N + 1).Rewrite_Ins;
2924 function Flag22 (N : Node_Id) return Boolean is
2926 pragma Assert (Nkind (N) in N_Entity);
2927 return Nodes.Table (N + 1).Analyzed;
2930 function Flag23 (N : Node_Id) return Boolean is
2932 pragma Assert (Nkind (N) in N_Entity);
2933 return Nodes.Table (N + 1).Comes_From_Source;
2936 function Flag24 (N : Node_Id) return Boolean is
2938 pragma Assert (Nkind (N) in N_Entity);
2939 return Nodes.Table (N + 1).Error_Posted;
2942 function Flag25 (N : Node_Id) return Boolean is
2944 pragma Assert (Nkind (N) in N_Entity);
2945 return Nodes.Table (N + 1).Flag4;
2948 function Flag26 (N : Node_Id) return Boolean is
2950 pragma Assert (Nkind (N) in N_Entity);
2951 return Nodes.Table (N + 1).Flag5;
2954 function Flag27 (N : Node_Id) return Boolean is
2956 pragma Assert (Nkind (N) in N_Entity);
2957 return Nodes.Table (N + 1).Flag6;
2960 function Flag28 (N : Node_Id) return Boolean is
2962 pragma Assert (Nkind (N) in N_Entity);
2963 return Nodes.Table (N + 1).Flag7;
2966 function Flag29 (N : Node_Id) return Boolean is
2968 pragma Assert (Nkind (N) in N_Entity);
2969 return Nodes.Table (N + 1).Flag8;
2972 function Flag30 (N : Node_Id) return Boolean is
2974 pragma Assert (Nkind (N) in N_Entity);
2975 return Nodes.Table (N + 1).Flag9;
2978 function Flag31 (N : Node_Id) return Boolean is
2980 pragma Assert (Nkind (N) in N_Entity);
2981 return Nodes.Table (N + 1).Flag10;
2984 function Flag32 (N : Node_Id) return Boolean is
2986 pragma Assert (Nkind (N) in N_Entity);
2987 return Nodes.Table (N + 1).Flag11;
2990 function Flag33 (N : Node_Id) return Boolean is
2992 pragma Assert (Nkind (N) in N_Entity);
2993 return Nodes.Table (N + 1).Flag12;
2996 function Flag34 (N : Node_Id) return Boolean is
2998 pragma Assert (Nkind (N) in N_Entity);
2999 return Nodes.Table (N + 1).Flag13;
3002 function Flag35 (N : Node_Id) return Boolean is
3004 pragma Assert (Nkind (N) in N_Entity);
3005 return Nodes.Table (N + 1).Flag14;
3008 function Flag36 (N : Node_Id) return Boolean is
3010 pragma Assert (Nkind (N) in N_Entity);
3011 return Nodes.Table (N + 1).Flag15;
3014 function Flag37 (N : Node_Id) return Boolean is
3016 pragma Assert (Nkind (N) in N_Entity);
3017 return Nodes.Table (N + 1).Flag16;
3020 function Flag38 (N : Node_Id) return Boolean is
3022 pragma Assert (Nkind (N) in N_Entity);
3023 return Nodes.Table (N + 1).Flag17;
3026 function Flag39 (N : Node_Id) return Boolean is
3028 pragma Assert (Nkind (N) in N_Entity);
3029 return Nodes.Table (N + 1).Flag18;
3032 function Flag40 (N : Node_Id) return Boolean is
3034 pragma Assert (Nkind (N) in N_Entity);
3035 return Nodes.Table (N + 2).In_List;
3038 function Flag41 (N : Node_Id) return Boolean is
3040 pragma Assert (Nkind (N) in N_Entity);
3041 return Nodes.Table (N + 2).Has_Aspects;
3044 function Flag42 (N : Node_Id) return Boolean is
3046 pragma Assert (Nkind (N) in N_Entity);
3047 return Nodes.Table (N + 2).Rewrite_Ins;
3050 function Flag43 (N : Node_Id) return Boolean is
3052 pragma Assert (Nkind (N) in N_Entity);
3053 return Nodes.Table (N + 2).Analyzed;
3056 function Flag44 (N : Node_Id) return Boolean is
3058 pragma Assert (Nkind (N) in N_Entity);
3059 return Nodes.Table (N + 2).Comes_From_Source;
3062 function Flag45 (N : Node_Id) return Boolean is
3064 pragma Assert (Nkind (N) in N_Entity);
3065 return Nodes.Table (N + 2).Error_Posted;
3068 function Flag46 (N : Node_Id) return Boolean is
3070 pragma Assert (Nkind (N) in N_Entity);
3071 return Nodes.Table (N + 2).Flag4;
3074 function Flag47 (N : Node_Id) return Boolean is
3076 pragma Assert (Nkind (N) in N_Entity);
3077 return Nodes.Table (N + 2).Flag5;
3080 function Flag48 (N : Node_Id) return Boolean is
3082 pragma Assert (Nkind (N) in N_Entity);
3083 return Nodes.Table (N + 2).Flag6;
3086 function Flag49 (N : Node_Id) return Boolean is
3088 pragma Assert (Nkind (N) in N_Entity);
3089 return Nodes.Table (N + 2).Flag7;
3092 function Flag50 (N : Node_Id) return Boolean is
3094 pragma Assert (Nkind (N) in N_Entity);
3095 return Nodes.Table (N + 2).Flag8;
3098 function Flag51 (N : Node_Id) return Boolean is
3100 pragma Assert (Nkind (N) in N_Entity);
3101 return Nodes.Table (N + 2).Flag9;
3104 function Flag52 (N : Node_Id) return Boolean is
3106 pragma Assert (Nkind (N) in N_Entity);
3107 return Nodes.Table (N + 2).Flag10;
3110 function Flag53 (N : Node_Id) return Boolean is
3112 pragma Assert (Nkind (N) in N_Entity);
3113 return Nodes.Table (N + 2).Flag11;
3116 function Flag54 (N : Node_Id) return Boolean is
3118 pragma Assert (Nkind (N) in N_Entity);
3119 return Nodes.Table (N + 2).Flag12;
3122 function Flag55 (N : Node_Id) return Boolean is
3124 pragma Assert (Nkind (N) in N_Entity);
3125 return Nodes.Table (N + 2).Flag13;
3128 function Flag56 (N : Node_Id) return Boolean is
3130 pragma Assert (Nkind (N) in N_Entity);
3131 return Nodes.Table (N + 2).Flag14;
3134 function Flag57 (N : Node_Id) return Boolean is
3136 pragma Assert (Nkind (N) in N_Entity);
3137 return Nodes.Table (N + 2).Flag15;
3140 function Flag58 (N : Node_Id) return Boolean is
3142 pragma Assert (Nkind (N) in N_Entity);
3143 return Nodes.Table (N + 2).Flag16;
3146 function Flag59 (N : Node_Id) return Boolean is
3148 pragma Assert (Nkind (N) in N_Entity);
3149 return Nodes.Table (N + 2).Flag17;
3152 function Flag60 (N : Node_Id) return Boolean is
3154 pragma Assert (Nkind (N) in N_Entity);
3155 return Nodes.Table (N + 2).Flag18;
3158 function Flag61 (N : Node_Id) return Boolean is
3160 pragma Assert (Nkind (N) in N_Entity);
3161 return Nodes.Table (N + 1).Pflag1;
3164 function Flag62 (N : Node_Id) return Boolean is
3166 pragma Assert (Nkind (N) in N_Entity);
3167 return Nodes.Table (N + 1).Pflag2;
3170 function Flag63 (N : Node_Id) return Boolean is
3172 pragma Assert (Nkind (N) in N_Entity);
3173 return Nodes.Table (N + 2).Pflag1;
3176 function Flag64 (N : Node_Id) return Boolean is
3178 pragma Assert (Nkind (N) in N_Entity);
3179 return Nodes.Table (N + 2).Pflag2;
3182 function Flag65 (N : Node_Id) return Boolean is
3184 pragma Assert (Nkind (N) in N_Entity);
3185 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag65;
3188 function Flag66 (N : Node_Id) return Boolean is
3190 pragma Assert (Nkind (N) in N_Entity);
3191 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag66;
3194 function Flag67 (N : Node_Id) return Boolean is
3196 pragma Assert (Nkind (N) in N_Entity);
3197 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag67;
3200 function Flag68 (N : Node_Id) return Boolean is
3202 pragma Assert (Nkind (N) in N_Entity);
3203 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag68;
3206 function Flag69 (N : Node_Id) return Boolean is
3208 pragma Assert (Nkind (N) in N_Entity);
3209 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag69;
3212 function Flag70 (N : Node_Id) return Boolean is
3214 pragma Assert (Nkind (N) in N_Entity);
3215 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag70;
3218 function Flag71 (N : Node_Id) return Boolean is
3220 pragma Assert (Nkind (N) in N_Entity);
3221 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag71;
3224 function Flag72 (N : Node_Id) return Boolean is
3226 pragma Assert (Nkind (N) in N_Entity);
3227 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag72;
3230 function Flag73 (N : Node_Id) return Boolean is
3232 pragma Assert (Nkind (N) in N_Entity);
3233 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag73;
3236 function Flag74 (N : Node_Id) return Boolean is
3238 pragma Assert (Nkind (N) in N_Entity);
3239 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag74;
3242 function Flag75 (N : Node_Id) return Boolean is
3244 pragma Assert (Nkind (N) in N_Entity);
3245 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag75;
3248 function Flag76 (N : Node_Id) return Boolean is
3250 pragma Assert (Nkind (N) in N_Entity);
3251 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag76;
3254 function Flag77 (N : Node_Id) return Boolean is
3256 pragma Assert (Nkind (N) in N_Entity);
3257 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag77;
3260 function Flag78 (N : Node_Id) return Boolean is
3262 pragma Assert (Nkind (N) in N_Entity);
3263 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag78;
3266 function Flag79 (N : Node_Id) return Boolean is
3268 pragma Assert (Nkind (N) in N_Entity);
3269 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag79;
3272 function Flag80 (N : Node_Id) return Boolean is
3274 pragma Assert (Nkind (N) in N_Entity);
3275 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag80;
3278 function Flag81 (N : Node_Id) return Boolean is
3280 pragma Assert (Nkind (N) in N_Entity);
3281 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag81;
3284 function Flag82 (N : Node_Id) return Boolean is
3286 pragma Assert (Nkind (N) in N_Entity);
3287 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag82;
3290 function Flag83 (N : Node_Id) return Boolean is
3292 pragma Assert (Nkind (N) in N_Entity);
3293 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag83;
3296 function Flag84 (N : Node_Id) return Boolean is
3298 pragma Assert (Nkind (N) in N_Entity);
3299 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag84;
3302 function Flag85 (N : Node_Id) return Boolean is
3304 pragma Assert (Nkind (N) in N_Entity);
3305 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag85;
3308 function Flag86 (N : Node_Id) return Boolean is
3310 pragma Assert (Nkind (N) in N_Entity);
3311 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag86;
3314 function Flag87 (N : Node_Id) return Boolean is
3316 pragma Assert (Nkind (N) in N_Entity);
3317 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag87;
3320 function Flag88 (N : Node_Id) return Boolean is
3322 pragma Assert (Nkind (N) in N_Entity);
3323 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag88;
3326 function Flag89 (N : Node_Id) return Boolean is
3328 pragma Assert (Nkind (N) in N_Entity);
3329 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag89;
3332 function Flag90 (N : Node_Id) return Boolean is
3334 pragma Assert (Nkind (N) in N_Entity);
3335 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag90;
3338 function Flag91 (N : Node_Id) return Boolean is
3340 pragma Assert (Nkind (N) in N_Entity);
3341 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag91;
3344 function Flag92 (N : Node_Id) return Boolean is
3346 pragma Assert (Nkind (N) in N_Entity);
3347 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag92;
3350 function Flag93 (N : Node_Id) return Boolean is
3352 pragma Assert (Nkind (N) in N_Entity);
3353 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag93;
3356 function Flag94 (N : Node_Id) return Boolean is
3358 pragma Assert (Nkind (N) in N_Entity);
3359 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag94;
3362 function Flag95 (N : Node_Id) return Boolean is
3364 pragma Assert (Nkind (N) in N_Entity);
3365 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag95;
3368 function Flag96 (N : Node_Id) return Boolean is
3370 pragma Assert (Nkind (N) in N_Entity);
3371 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag96;
3374 function Flag97 (N : Node_Id) return Boolean is
3376 pragma Assert (Nkind (N) in N_Entity);
3377 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag97;
3380 function Flag98 (N : Node_Id) return Boolean is
3382 pragma Assert (Nkind (N) in N_Entity);
3383 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag98;
3386 function Flag99 (N : Node_Id) return Boolean is
3388 pragma Assert (Nkind (N) in N_Entity);
3389 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag99;
3392 function Flag100 (N : Node_Id) return Boolean is
3394 pragma Assert (Nkind (N) in N_Entity);
3395 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag100;
3398 function Flag101 (N : Node_Id) return Boolean is
3400 pragma Assert (Nkind (N) in N_Entity);
3401 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag101;
3404 function Flag102 (N : Node_Id) return Boolean is
3406 pragma Assert (Nkind (N) in N_Entity);
3407 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag102;
3410 function Flag103 (N : Node_Id) return Boolean is
3412 pragma Assert (Nkind (N) in N_Entity);
3413 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag103;
3416 function Flag104 (N : Node_Id) return Boolean is
3418 pragma Assert (Nkind (N) in N_Entity);
3419 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag104;
3422 function Flag105 (N : Node_Id) return Boolean is
3424 pragma Assert (Nkind (N) in N_Entity);
3425 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag105;
3428 function Flag106 (N : Node_Id) return Boolean is
3430 pragma Assert (Nkind (N) in N_Entity);
3431 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag106;
3434 function Flag107 (N : Node_Id) return Boolean is
3436 pragma Assert (Nkind (N) in N_Entity);
3437 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag107;
3440 function Flag108 (N : Node_Id) return Boolean is
3442 pragma Assert (Nkind (N) in N_Entity);
3443 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag108;
3446 function Flag109 (N : Node_Id) return Boolean is
3448 pragma Assert (Nkind (N) in N_Entity);
3449 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag109;
3452 function Flag110 (N : Node_Id) return Boolean is
3454 pragma Assert (Nkind (N) in N_Entity);
3455 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag110;
3458 function Flag111 (N : Node_Id) return Boolean is
3460 pragma Assert (Nkind (N) in N_Entity);
3461 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag111;
3464 function Flag112 (N : Node_Id) return Boolean is
3466 pragma Assert (Nkind (N) in N_Entity);
3467 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag112;
3470 function Flag113 (N : Node_Id) return Boolean is
3472 pragma Assert (Nkind (N) in N_Entity);
3473 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag113;
3476 function Flag114 (N : Node_Id) return Boolean is
3478 pragma Assert (Nkind (N) in N_Entity);
3479 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag114;
3482 function Flag115 (N : Node_Id) return Boolean is
3484 pragma Assert (Nkind (N) in N_Entity);
3485 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag115;
3488 function Flag116 (N : Node_Id) return Boolean is
3490 pragma Assert (Nkind (N) in N_Entity);
3491 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag116;
3494 function Flag117 (N : Node_Id) return Boolean is
3496 pragma Assert (Nkind (N) in N_Entity);
3497 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag117;
3500 function Flag118 (N : Node_Id) return Boolean is
3502 pragma Assert (Nkind (N) in N_Entity);
3503 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag118;
3506 function Flag119 (N : Node_Id) return Boolean is
3508 pragma Assert (Nkind (N) in N_Entity);
3509 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag119;
3512 function Flag120 (N : Node_Id) return Boolean is
3514 pragma Assert (Nkind (N) in N_Entity);
3515 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag120;
3518 function Flag121 (N : Node_Id) return Boolean is
3520 pragma Assert (Nkind (N) in N_Entity);
3521 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag121;
3524 function Flag122 (N : Node_Id) return Boolean is
3526 pragma Assert (Nkind (N) in N_Entity);
3527 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag122;
3530 function Flag123 (N : Node_Id) return Boolean is
3532 pragma Assert (Nkind (N) in N_Entity);
3533 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag123;
3536 function Flag124 (N : Node_Id) return Boolean is
3538 pragma Assert (Nkind (N) in N_Entity);
3539 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag124;
3542 function Flag125 (N : Node_Id) return Boolean is
3544 pragma Assert (Nkind (N) in N_Entity);
3545 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag125;
3548 function Flag126 (N : Node_Id) return Boolean is
3550 pragma Assert (Nkind (N) in N_Entity);
3551 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag126;
3554 function Flag127 (N : Node_Id) return Boolean is
3556 pragma Assert (Nkind (N) in N_Entity);
3557 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag127;
3560 function Flag128 (N : Node_Id) return Boolean is
3562 pragma Assert (Nkind (N) in N_Entity);
3563 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag128;
3566 function Flag129 (N : Node_Id) return Boolean is
3568 pragma Assert (Nkind (N) in N_Entity);
3569 return Nodes.Table (N + 3).In_List;
3572 function Flag130 (N : Node_Id) return Boolean is
3574 pragma Assert (Nkind (N) in N_Entity);
3575 return Nodes.Table (N + 3).Has_Aspects;
3578 function Flag131 (N : Node_Id) return Boolean is
3580 pragma Assert (Nkind (N) in N_Entity);
3581 return Nodes.Table (N + 3).Rewrite_Ins;
3584 function Flag132 (N : Node_Id) return Boolean is
3586 pragma Assert (Nkind (N) in N_Entity);
3587 return Nodes.Table (N + 3).Analyzed;
3590 function Flag133 (N : Node_Id) return Boolean is
3592 pragma Assert (Nkind (N) in N_Entity);
3593 return Nodes.Table (N + 3).Comes_From_Source;
3596 function Flag134 (N : Node_Id) return Boolean is
3598 pragma Assert (Nkind (N) in N_Entity);
3599 return Nodes.Table (N + 3).Error_Posted;
3602 function Flag135 (N : Node_Id) return Boolean is
3604 pragma Assert (Nkind (N) in N_Entity);
3605 return Nodes.Table (N + 3).Flag4;
3608 function Flag136 (N : Node_Id) return Boolean is
3610 pragma Assert (Nkind (N) in N_Entity);
3611 return Nodes.Table (N + 3).Flag5;
3614 function Flag137 (N : Node_Id) return Boolean is
3616 pragma Assert (Nkind (N) in N_Entity);
3617 return Nodes.Table (N + 3).Flag6;
3620 function Flag138 (N : Node_Id) return Boolean is
3622 pragma Assert (Nkind (N) in N_Entity);
3623 return Nodes.Table (N + 3).Flag7;
3626 function Flag139 (N : Node_Id) return Boolean is
3628 pragma Assert (Nkind (N) in N_Entity);
3629 return Nodes.Table (N + 3).Flag8;
3632 function Flag140 (N : Node_Id) return Boolean is
3634 pragma Assert (Nkind (N) in N_Entity);
3635 return Nodes.Table (N + 3).Flag9;
3638 function Flag141 (N : Node_Id) return Boolean is
3640 pragma Assert (Nkind (N) in N_Entity);
3641 return Nodes.Table (N + 3).Flag10;
3644 function Flag142 (N : Node_Id) return Boolean is
3646 pragma Assert (Nkind (N) in N_Entity);
3647 return Nodes.Table (N + 3).Flag11;
3650 function Flag143 (N : Node_Id) return Boolean is
3652 pragma Assert (Nkind (N) in N_Entity);
3653 return Nodes.Table (N + 3).Flag12;
3656 function Flag144 (N : Node_Id) return Boolean is
3658 pragma Assert (Nkind (N) in N_Entity);
3659 return Nodes.Table (N + 3).Flag13;
3662 function Flag145 (N : Node_Id) return Boolean is
3664 pragma Assert (Nkind (N) in N_Entity);
3665 return Nodes.Table (N + 3).Flag14;
3668 function Flag146 (N : Node_Id) return Boolean is
3670 pragma Assert (Nkind (N) in N_Entity);
3671 return Nodes.Table (N + 3).Flag15;
3674 function Flag147 (N : Node_Id) return Boolean is
3676 pragma Assert (Nkind (N) in N_Entity);
3677 return Nodes.Table (N + 3).Flag16;
3680 function Flag148 (N : Node_Id) return Boolean is
3682 pragma Assert (Nkind (N) in N_Entity);
3683 return Nodes.Table (N + 3).Flag17;
3686 function Flag149 (N : Node_Id) return Boolean is
3688 pragma Assert (Nkind (N) in N_Entity);
3689 return Nodes.Table (N + 3).Flag18;
3692 function Flag150 (N : Node_Id) return Boolean is
3694 pragma Assert (Nkind (N) in N_Entity);
3695 return Nodes.Table (N + 3).Pflag1;
3698 function Flag151 (N : Node_Id) return Boolean is
3700 pragma Assert (Nkind (N) in N_Entity);
3701 return Nodes.Table (N + 3).Pflag2;
3704 function Flag152 (N : Node_Id) return Boolean is
3706 pragma Assert (Nkind (N) in N_Entity);
3707 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag152;
3710 function Flag153 (N : Node_Id) return Boolean is
3712 pragma Assert (Nkind (N) in N_Entity);
3713 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag153;
3716 function Flag154 (N : Node_Id) return Boolean is
3718 pragma Assert (Nkind (N) in N_Entity);
3719 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag154;
3722 function Flag155 (N : Node_Id) return Boolean is
3724 pragma Assert (Nkind (N) in N_Entity);
3725 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag155;
3728 function Flag156 (N : Node_Id) return Boolean is
3730 pragma Assert (Nkind (N) in N_Entity);
3731 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag156;
3734 function Flag157 (N : Node_Id) return Boolean is
3736 pragma Assert (Nkind (N) in N_Entity);
3737 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag157;
3740 function Flag158 (N : Node_Id) return Boolean is
3742 pragma Assert (Nkind (N) in N_Entity);
3743 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag158;
3746 function Flag159 (N : Node_Id) return Boolean is
3748 pragma Assert (Nkind (N) in N_Entity);
3749 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag159;
3752 function Flag160 (N : Node_Id) return Boolean is
3754 pragma Assert (Nkind (N) in N_Entity);
3755 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag160;
3758 function Flag161 (N : Node_Id) return Boolean is
3760 pragma Assert (Nkind (N) in N_Entity);
3761 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag161;
3764 function Flag162 (N : Node_Id) return Boolean is
3766 pragma Assert (Nkind (N) in N_Entity);
3767 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag162;
3770 function Flag163 (N : Node_Id) return Boolean is
3772 pragma Assert (Nkind (N) in N_Entity);
3773 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag163;
3776 function Flag164 (N : Node_Id) return Boolean is
3778 pragma Assert (Nkind (N) in N_Entity);
3779 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag164;
3782 function Flag165 (N : Node_Id) return Boolean is
3784 pragma Assert (Nkind (N) in N_Entity);
3785 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag165;
3788 function Flag166 (N : Node_Id) return Boolean is
3790 pragma Assert (Nkind (N) in N_Entity);
3791 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag166;
3794 function Flag167 (N : Node_Id) return Boolean is
3796 pragma Assert (Nkind (N) in N_Entity);
3797 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag167;
3800 function Flag168 (N : Node_Id) return Boolean is
3802 pragma Assert (Nkind (N) in N_Entity);
3803 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag168;
3806 function Flag169 (N : Node_Id) return Boolean is
3808 pragma Assert (Nkind (N) in N_Entity);
3809 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag169;
3812 function Flag170 (N : Node_Id) return Boolean is
3814 pragma Assert (Nkind (N) in N_Entity);
3815 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag170;
3818 function Flag171 (N : Node_Id) return Boolean is
3820 pragma Assert (Nkind (N) in N_Entity);
3821 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag171;
3824 function Flag172 (N : Node_Id) return Boolean is
3826 pragma Assert (Nkind (N) in N_Entity);
3827 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag172;
3830 function Flag173 (N : Node_Id) return Boolean is
3832 pragma Assert (Nkind (N) in N_Entity);
3833 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag173;
3836 function Flag174 (N : Node_Id) return Boolean is
3838 pragma Assert (Nkind (N) in N_Entity);
3839 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag174;
3842 function Flag175 (N : Node_Id) return Boolean is
3844 pragma Assert (Nkind (N) in N_Entity);
3845 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag175;
3848 function Flag176 (N : Node_Id) return Boolean is
3850 pragma Assert (Nkind (N) in N_Entity);
3851 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag176;
3854 function Flag177 (N : Node_Id) return Boolean is
3856 pragma Assert (Nkind (N) in N_Entity);
3857 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag177;
3860 function Flag178 (N : Node_Id) return Boolean is
3862 pragma Assert (Nkind (N) in N_Entity);
3863 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag178;
3866 function Flag179 (N : Node_Id) return Boolean is
3868 pragma Assert (Nkind (N) in N_Entity);
3869 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag179;
3872 function Flag180 (N : Node_Id) return Boolean is
3874 pragma Assert (Nkind (N) in N_Entity);
3875 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag180;
3878 function Flag181 (N : Node_Id) return Boolean is
3880 pragma Assert (Nkind (N) in N_Entity);
3881 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag181;
3884 function Flag182 (N : Node_Id) return Boolean is
3886 pragma Assert (Nkind (N) in N_Entity);
3887 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag182;
3890 function Flag183 (N : Node_Id) return Boolean is
3892 pragma Assert (Nkind (N) in N_Entity);
3893 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag183;
3896 function Flag184 (N : Node_Id) return Boolean is
3898 pragma Assert (Nkind (N) in N_Entity);
3899 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag184;
3902 function Flag185 (N : Node_Id) return Boolean is
3904 pragma Assert (Nkind (N) in N_Entity);
3905 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag185;
3908 function Flag186 (N : Node_Id) return Boolean is
3910 pragma Assert (Nkind (N) in N_Entity);
3911 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag186;
3914 function Flag187 (N : Node_Id) return Boolean is
3916 pragma Assert (Nkind (N) in N_Entity);
3917 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag187;
3920 function Flag188 (N : Node_Id) return Boolean is
3922 pragma Assert (Nkind (N) in N_Entity);
3923 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag188;
3926 function Flag189 (N : Node_Id) return Boolean is
3928 pragma Assert (Nkind (N) in N_Entity);
3929 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag189;
3932 function Flag190 (N : Node_Id) return Boolean is
3934 pragma Assert (Nkind (N) in N_Entity);
3935 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag190;
3938 function Flag191 (N : Node_Id) return Boolean is
3940 pragma Assert (Nkind (N) in N_Entity);
3941 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag191;
3944 function Flag192 (N : Node_Id) return Boolean is
3946 pragma Assert (Nkind (N) in N_Entity);
3947 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag192;
3950 function Flag193 (N : Node_Id) return Boolean is
3952 pragma Assert (Nkind (N) in N_Entity);
3953 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag193;
3956 function Flag194 (N : Node_Id) return Boolean is
3958 pragma Assert (Nkind (N) in N_Entity);
3959 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag194;
3962 function Flag195 (N : Node_Id) return Boolean is
3964 pragma Assert (Nkind (N) in N_Entity);
3965 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag195;
3968 function Flag196 (N : Node_Id) return Boolean is
3970 pragma Assert (Nkind (N) in N_Entity);
3971 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag196;
3974 function Flag197 (N : Node_Id) return Boolean is
3976 pragma Assert (Nkind (N) in N_Entity);
3977 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag197;
3980 function Flag198 (N : Node_Id) return Boolean is
3982 pragma Assert (Nkind (N) in N_Entity);
3983 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag198;
3986 function Flag199 (N : Node_Id) return Boolean is
3988 pragma Assert (Nkind (N) in N_Entity);
3989 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag199;
3992 function Flag200 (N : Node_Id) return Boolean is
3994 pragma Assert (Nkind (N) in N_Entity);
3995 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag200;
3998 function Flag201 (N : Node_Id) return Boolean is
4000 pragma Assert (Nkind (N) in N_Entity);
4001 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag201;
4004 function Flag202 (N : Node_Id) return Boolean is
4006 pragma Assert (Nkind (N) in N_Entity);
4007 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag202;
4010 function Flag203 (N : Node_Id) return Boolean is
4012 pragma Assert (Nkind (N) in N_Entity);
4013 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag203;
4016 function Flag204 (N : Node_Id) return Boolean is
4018 pragma Assert (Nkind (N) in N_Entity);
4019 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag204;
4022 function Flag205 (N : Node_Id) return Boolean is
4024 pragma Assert (Nkind (N) in N_Entity);
4025 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag205;
4028 function Flag206 (N : Node_Id) return Boolean is
4030 pragma Assert (Nkind (N) in N_Entity);
4031 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag206;
4034 function Flag207 (N : Node_Id) return Boolean is
4036 pragma Assert (Nkind (N) in N_Entity);
4037 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag207;
4040 function Flag208 (N : Node_Id) return Boolean is
4042 pragma Assert (Nkind (N) in N_Entity);
4043 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag208;
4046 function Flag209 (N : Node_Id) return Boolean is
4048 pragma Assert (Nkind (N) in N_Entity);
4049 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag209;
4052 function Flag210 (N : Node_Id) return Boolean is
4054 pragma Assert (Nkind (N) in N_Entity);
4055 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag210;
4058 function Flag211 (N : Node_Id) return Boolean is
4060 pragma Assert (Nkind (N) in N_Entity);
4061 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag211;
4064 function Flag212 (N : Node_Id) return Boolean is
4066 pragma Assert (Nkind (N) in N_Entity);
4067 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag212;
4070 function Flag213 (N : Node_Id) return Boolean is
4072 pragma Assert (Nkind (N) in N_Entity);
4073 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag213;
4076 function Flag214 (N : Node_Id) return Boolean is
4078 pragma Assert (Nkind (N) in N_Entity);
4079 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag214;
4082 function Flag215 (N : Node_Id) return Boolean is
4084 pragma Assert (Nkind (N) in N_Entity);
4085 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag215;
4088 function Flag216 (N : Node_Id) return Boolean is
4090 pragma Assert (Nkind (N) in N_Entity);
4091 return Nodes.Table (N + 4).In_List;
4094 function Flag217 (N : Node_Id) return Boolean is
4096 pragma Assert (Nkind (N) in N_Entity);
4097 return Nodes.Table (N + 4).Has_Aspects;
4100 function Flag218 (N : Node_Id) return Boolean is
4102 pragma Assert (Nkind (N) in N_Entity);
4103 return Nodes.Table (N + 4).Rewrite_Ins;
4106 function Flag219 (N : Node_Id) return Boolean is
4108 pragma Assert (Nkind (N) in N_Entity);
4109 return Nodes.Table (N + 4).Analyzed;
4112 function Flag220 (N : Node_Id) return Boolean is
4114 pragma Assert (Nkind (N) in N_Entity);
4115 return Nodes.Table (N + 4).Comes_From_Source;
4118 function Flag221 (N : Node_Id) return Boolean is
4120 pragma Assert (Nkind (N) in N_Entity);
4121 return Nodes.Table (N + 4).Error_Posted;
4124 function Flag222 (N : Node_Id) return Boolean is
4126 pragma Assert (Nkind (N) in N_Entity);
4127 return Nodes.Table (N + 4).Flag4;
4130 function Flag223 (N : Node_Id) return Boolean is
4132 pragma Assert (Nkind (N) in N_Entity);
4133 return Nodes.Table (N + 4).Flag5;
4136 function Flag224 (N : Node_Id) return Boolean is
4138 pragma Assert (Nkind (N) in N_Entity);
4139 return Nodes.Table (N + 4).Flag6;
4142 function Flag225 (N : Node_Id) return Boolean is
4144 pragma Assert (Nkind (N) in N_Entity);
4145 return Nodes.Table (N + 4).Flag7;
4148 function Flag226 (N : Node_Id) return Boolean is
4150 pragma Assert (Nkind (N) in N_Entity);
4151 return Nodes.Table (N + 4).Flag8;
4154 function Flag227 (N : Node_Id) return Boolean is
4156 pragma Assert (Nkind (N) in N_Entity);
4157 return Nodes.Table (N + 4).Flag9;
4160 function Flag228 (N : Node_Id) return Boolean is
4162 pragma Assert (Nkind (N) in N_Entity);
4163 return Nodes.Table (N + 4).Flag10;
4166 function Flag229 (N : Node_Id) return Boolean is
4168 pragma Assert (Nkind (N) in N_Entity);
4169 return Nodes.Table (N + 4).Flag11;
4172 function Flag230 (N : Node_Id) return Boolean is
4174 pragma Assert (Nkind (N) in N_Entity);
4175 return Nodes.Table (N + 4).Flag12;
4178 function Flag231 (N : Node_Id) return Boolean is
4180 pragma Assert (Nkind (N) in N_Entity);
4181 return Nodes.Table (N + 4).Flag13;
4184 function Flag232 (N : Node_Id) return Boolean is
4186 pragma Assert (Nkind (N) in N_Entity);
4187 return Nodes.Table (N + 4).Flag14;
4190 function Flag233 (N : Node_Id) return Boolean is
4192 pragma Assert (Nkind (N) in N_Entity);
4193 return Nodes.Table (N + 4).Flag15;
4196 function Flag234 (N : Node_Id) return Boolean is
4198 pragma Assert (Nkind (N) in N_Entity);
4199 return Nodes.Table (N + 4).Flag16;
4202 function Flag235 (N : Node_Id) return Boolean is
4204 pragma Assert (Nkind (N) in N_Entity);
4205 return Nodes.Table (N + 4).Flag17;
4208 function Flag236 (N : Node_Id) return Boolean is
4210 pragma Assert (Nkind (N) in N_Entity);
4211 return Nodes.Table (N + 4).Flag18;
4214 function Flag237 (N : Node_Id) return Boolean is
4216 pragma Assert (Nkind (N) in N_Entity);
4217 return Nodes.Table (N + 4).Pflag1;
4220 function Flag238 (N : Node_Id) return Boolean is
4222 pragma Assert (Nkind (N) in N_Entity);
4223 return Nodes.Table (N + 4).Pflag2;
4226 function Flag239 (N : Node_Id) return Boolean is
4228 pragma Assert (Nkind (N) in N_Entity);
4229 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag239;
4232 function Flag240 (N : Node_Id) return Boolean is
4234 pragma Assert (Nkind (N) in N_Entity);
4235 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag240;
4238 function Flag241 (N : Node_Id) return Boolean is
4240 pragma Assert (Nkind (N) in N_Entity);
4241 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag241;
4244 function Flag242 (N : Node_Id) return Boolean is
4246 pragma Assert (Nkind (N) in N_Entity);
4247 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag242;
4250 function Flag243 (N : Node_Id) return Boolean is
4252 pragma Assert (Nkind (N) in N_Entity);
4253 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag243;
4256 function Flag244 (N : Node_Id) return Boolean is
4258 pragma Assert (Nkind (N) in N_Entity);
4259 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag244;
4262 function Flag245 (N : Node_Id) return Boolean is
4264 pragma Assert (Nkind (N) in N_Entity);
4265 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag245;
4268 function Flag246 (N : Node_Id) return Boolean is
4270 pragma Assert (Nkind (N) in N_Entity);
4271 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag246;
4274 function Flag247 (N : Node_Id) return Boolean is
4276 pragma Assert (Nkind (N) in N_Entity);
4277 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag247;
4280 function Flag248 (N : Node_Id) return Boolean is
4282 pragma Assert (Nkind (N) in N_Entity);
4283 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag248;
4286 function Flag249 (N : Node_Id) return Boolean is
4288 pragma Assert (Nkind (N) in N_Entity);
4289 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag249;
4292 function Flag250 (N : Node_Id) return Boolean is
4294 pragma Assert (Nkind (N) in N_Entity);
4295 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag250;
4298 function Flag251 (N : Node_Id) return Boolean is
4300 pragma Assert (Nkind (N) in N_Entity);
4301 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag251;
4304 function Flag252 (N : Node_Id) return Boolean is
4306 pragma Assert (Nkind (N) in N_Entity);
4307 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag252;
4310 function Flag253 (N : Node_Id) return Boolean is
4312 pragma Assert (Nkind (N) in N_Entity);
4313 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag253;
4316 function Flag254 (N : Node_Id) return Boolean is
4318 pragma Assert (Nkind (N) in N_Entity);
4319 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag254;
4322 procedure Set_Nkind (N : Node_Id; Val : Node_Kind) is
4324 pragma Assert (N <= Nodes.Last);
4325 Nodes.Table (N).Nkind := Val;
4328 procedure Set_Field1 (N : Node_Id; Val : Union_Id) is
4330 pragma Assert (N <= Nodes.Last);
4331 Nodes.Table (N).Field1 := Val;
4334 procedure Set_Field2 (N : Node_Id; Val : Union_Id) is
4336 pragma Assert (N <= Nodes.Last);
4337 Nodes.Table (N).Field2 := Val;
4340 procedure Set_Field3 (N : Node_Id; Val : Union_Id) is
4342 pragma Assert (N <= Nodes.Last);
4343 Nodes.Table (N).Field3 := Val;
4346 procedure Set_Field4 (N : Node_Id; Val : Union_Id) is
4348 pragma Assert (N <= Nodes.Last);
4349 Nodes.Table (N).Field4 := Val;
4352 procedure Set_Field5 (N : Node_Id; Val : Union_Id) is
4354 pragma Assert (N <= Nodes.Last);
4355 Nodes.Table (N).Field5 := Val;
4358 procedure Set_Field6 (N : Node_Id; Val : Union_Id) is
4360 pragma Assert (Nkind (N) in N_Entity);
4361 Nodes.Table (N + 1).Field6 := Val;
4364 procedure Set_Field7 (N : Node_Id; Val : Union_Id) is
4366 pragma Assert (Nkind (N) in N_Entity);
4367 Nodes.Table (N + 1).Field7 := Val;
4370 procedure Set_Field8 (N : Node_Id; Val : Union_Id) is
4372 pragma Assert (Nkind (N) in N_Entity);
4373 Nodes.Table (N + 1).Field8 := Val;
4376 procedure Set_Field9 (N : Node_Id; Val : Union_Id) is
4378 pragma Assert (Nkind (N) in N_Entity);
4379 Nodes.Table (N + 1).Field9 := Val;
4382 procedure Set_Field10 (N : Node_Id; Val : Union_Id) is
4384 pragma Assert (Nkind (N) in N_Entity);
4385 Nodes.Table (N + 1).Field10 := Val;
4388 procedure Set_Field11 (N : Node_Id; Val : Union_Id) is
4390 pragma Assert (Nkind (N) in N_Entity);
4391 Nodes.Table (N + 1).Field11 := Val;
4394 procedure Set_Field12 (N : Node_Id; Val : Union_Id) is
4396 pragma Assert (Nkind (N) in N_Entity);
4397 Nodes.Table (N + 1).Field12 := Val;
4400 procedure Set_Field13 (N : Node_Id; Val : Union_Id) is
4402 pragma Assert (Nkind (N) in N_Entity);
4403 Nodes.Table (N + 2).Field6 := Val;
4406 procedure Set_Field14 (N : Node_Id; Val : Union_Id) is
4408 pragma Assert (Nkind (N) in N_Entity);
4409 Nodes.Table (N + 2).Field7 := Val;
4412 procedure Set_Field15 (N : Node_Id; Val : Union_Id) is
4414 pragma Assert (Nkind (N) in N_Entity);
4415 Nodes.Table (N + 2).Field8 := Val;
4418 procedure Set_Field16 (N : Node_Id; Val : Union_Id) is
4420 pragma Assert (Nkind (N) in N_Entity);
4421 Nodes.Table (N + 2).Field9 := Val;
4424 procedure Set_Field17 (N : Node_Id; Val : Union_Id) is
4426 pragma Assert (Nkind (N) in N_Entity);
4427 Nodes.Table (N + 2).Field10 := Val;
4430 procedure Set_Field18 (N : Node_Id; Val : Union_Id) is
4432 pragma Assert (Nkind (N) in N_Entity);
4433 Nodes.Table (N + 2).Field11 := Val;
4436 procedure Set_Field19 (N : Node_Id; Val : Union_Id) is
4438 pragma Assert (Nkind (N) in N_Entity);
4439 Nodes.Table (N + 3).Field6 := Val;
4442 procedure Set_Field20 (N : Node_Id; Val : Union_Id) is
4444 pragma Assert (Nkind (N) in N_Entity);
4445 Nodes.Table (N + 3).Field7 := Val;
4448 procedure Set_Field21 (N : Node_Id; Val : Union_Id) is
4450 pragma Assert (Nkind (N) in N_Entity);
4451 Nodes.Table (N + 3).Field8 := Val;
4454 procedure Set_Field22 (N : Node_Id; Val : Union_Id) is
4456 pragma Assert (Nkind (N) in N_Entity);
4457 Nodes.Table (N + 3).Field9 := Val;
4460 procedure Set_Field23 (N : Node_Id; Val : Union_Id) is
4462 pragma Assert (Nkind (N) in N_Entity);
4463 Nodes.Table (N + 3).Field10 := Val;
4466 procedure Set_Field24 (N : Node_Id; Val : Union_Id) is
4468 pragma Assert (Nkind (N) in N_Entity);
4469 Nodes.Table (N + 4).Field6 := Val;
4472 procedure Set_Field25 (N : Node_Id; Val : Union_Id) is
4474 pragma Assert (Nkind (N) in N_Entity);
4475 Nodes.Table (N + 4).Field7 := Val;
4478 procedure Set_Field26 (N : Node_Id; Val : Union_Id) is
4480 pragma Assert (Nkind (N) in N_Entity);
4481 Nodes.Table (N + 4).Field8 := Val;
4484 procedure Set_Field27 (N : Node_Id; Val : Union_Id) is
4486 pragma Assert (Nkind (N) in N_Entity);
4487 Nodes.Table (N + 4).Field9 := Val;
4490 procedure Set_Field28 (N : Node_Id; Val : Union_Id) is
4492 pragma Assert (Nkind (N) in N_Entity);
4493 Nodes.Table (N + 4).Field10 := Val;
4496 procedure Set_Field29 (N : Node_Id; Val : Union_Id) is
4498 pragma Assert (Nkind (N) in N_Entity);
4499 Nodes.Table (N + 4).Field11 := Val;
4502 procedure Set_Node1 (N : Node_Id; Val : Node_Id) is
4504 pragma Assert (N <= Nodes.Last);
4505 Nodes.Table (N).Field1 := Union_Id (Val);
4508 procedure Set_Node2 (N : Node_Id; Val : Node_Id) is
4510 pragma Assert (N <= Nodes.Last);
4511 Nodes.Table (N).Field2 := Union_Id (Val);
4514 procedure Set_Node3 (N : Node_Id; Val : Node_Id) is
4516 pragma Assert (N <= Nodes.Last);
4517 Nodes.Table (N).Field3 := Union_Id (Val);
4520 procedure Set_Node4 (N : Node_Id; Val : Node_Id) is
4522 pragma Assert (N <= Nodes.Last);
4523 Nodes.Table (N).Field4 := Union_Id (Val);
4526 procedure Set_Node5 (N : Node_Id; Val : Node_Id) is
4528 pragma Assert (N <= Nodes.Last);
4529 Nodes.Table (N).Field5 := Union_Id (Val);
4532 procedure Set_Node6 (N : Node_Id; Val : Node_Id) is
4534 pragma Assert (Nkind (N) in N_Entity);
4535 Nodes.Table (N + 1).Field6 := Union_Id (Val);
4538 procedure Set_Node7 (N : Node_Id; Val : Node_Id) is
4540 pragma Assert (Nkind (N) in N_Entity);
4541 Nodes.Table (N + 1).Field7 := Union_Id (Val);
4544 procedure Set_Node8 (N : Node_Id; Val : Node_Id) is
4546 pragma Assert (Nkind (N) in N_Entity);
4547 Nodes.Table (N + 1).Field8 := Union_Id (Val);
4550 procedure Set_Node9 (N : Node_Id; Val : Node_Id) is
4552 pragma Assert (Nkind (N) in N_Entity);
4553 Nodes.Table (N + 1).Field9 := Union_Id (Val);
4556 procedure Set_Node10 (N : Node_Id; Val : Node_Id) is
4558 pragma Assert (Nkind (N) in N_Entity);
4559 Nodes.Table (N + 1).Field10 := Union_Id (Val);
4562 procedure Set_Node11 (N : Node_Id; Val : Node_Id) is
4564 pragma Assert (Nkind (N) in N_Entity);
4565 Nodes.Table (N + 1).Field11 := Union_Id (Val);
4568 procedure Set_Node12 (N : Node_Id; Val : Node_Id) is
4570 pragma Assert (Nkind (N) in N_Entity);
4571 Nodes.Table (N + 1).Field12 := Union_Id (Val);
4574 procedure Set_Node13 (N : Node_Id; Val : Node_Id) is
4576 pragma Assert (Nkind (N) in N_Entity);
4577 Nodes.Table (N + 2).Field6 := Union_Id (Val);
4580 procedure Set_Node14 (N : Node_Id; Val : Node_Id) is
4582 pragma Assert (Nkind (N) in N_Entity);
4583 Nodes.Table (N + 2).Field7 := Union_Id (Val);
4586 procedure Set_Node15 (N : Node_Id; Val : Node_Id) is
4588 pragma Assert (Nkind (N) in N_Entity);
4589 Nodes.Table (N + 2).Field8 := Union_Id (Val);
4592 procedure Set_Node16 (N : Node_Id; Val : Node_Id) is
4594 pragma Assert (Nkind (N) in N_Entity);
4595 Nodes.Table (N + 2).Field9 := Union_Id (Val);
4598 procedure Set_Node17 (N : Node_Id; Val : Node_Id) is
4600 pragma Assert (Nkind (N) in N_Entity);
4601 Nodes.Table (N + 2).Field10 := Union_Id (Val);
4604 procedure Set_Node18 (N : Node_Id; Val : Node_Id) is
4606 pragma Assert (Nkind (N) in N_Entity);
4607 Nodes.Table (N + 2).Field11 := Union_Id (Val);
4610 procedure Set_Node19 (N : Node_Id; Val : Node_Id) is
4612 pragma Assert (Nkind (N) in N_Entity);
4613 Nodes.Table (N + 3).Field6 := Union_Id (Val);
4616 procedure Set_Node20 (N : Node_Id; Val : Node_Id) is
4618 pragma Assert (Nkind (N) in N_Entity);
4619 Nodes.Table (N + 3).Field7 := Union_Id (Val);
4622 procedure Set_Node21 (N : Node_Id; Val : Node_Id) is
4624 pragma Assert (Nkind (N) in N_Entity);
4625 Nodes.Table (N + 3).Field8 := Union_Id (Val);
4628 procedure Set_Node22 (N : Node_Id; Val : Node_Id) is
4630 pragma Assert (Nkind (N) in N_Entity);
4631 Nodes.Table (N + 3).Field9 := Union_Id (Val);
4634 procedure Set_Node23 (N : Node_Id; Val : Node_Id) is
4636 pragma Assert (Nkind (N) in N_Entity);
4637 Nodes.Table (N + 3).Field10 := Union_Id (Val);
4640 procedure Set_Node24 (N : Node_Id; Val : Node_Id) is
4642 pragma Assert (Nkind (N) in N_Entity);
4643 Nodes.Table (N + 4).Field6 := Union_Id (Val);
4646 procedure Set_Node25 (N : Node_Id; Val : Node_Id) is
4648 pragma Assert (Nkind (N) in N_Entity);
4649 Nodes.Table (N + 4).Field7 := Union_Id (Val);
4652 procedure Set_Node26 (N : Node_Id; Val : Node_Id) is
4654 pragma Assert (Nkind (N) in N_Entity);
4655 Nodes.Table (N + 4).Field8 := Union_Id (Val);
4658 procedure Set_Node27 (N : Node_Id; Val : Node_Id) is
4660 pragma Assert (Nkind (N) in N_Entity);
4661 Nodes.Table (N + 4).Field9 := Union_Id (Val);
4664 procedure Set_Node28 (N : Node_Id; Val : Node_Id) is
4666 pragma Assert (Nkind (N) in N_Entity);
4667 Nodes.Table (N + 4).Field10 := Union_Id (Val);
4670 procedure Set_Node29 (N : Node_Id; Val : Node_Id) is
4672 pragma Assert (Nkind (N) in N_Entity);
4673 Nodes.Table (N + 4).Field11 := Union_Id (Val);
4676 procedure Set_List1 (N : Node_Id; Val : List_Id) is
4678 pragma Assert (N <= Nodes.Last);
4679 Nodes.Table (N).Field1 := Union_Id (Val);
4682 procedure Set_List2 (N : Node_Id; Val : List_Id) is
4684 pragma Assert (N <= Nodes.Last);
4685 Nodes.Table (N).Field2 := Union_Id (Val);
4688 procedure Set_List3 (N : Node_Id; Val : List_Id) is
4690 pragma Assert (N <= Nodes.Last);
4691 Nodes.Table (N).Field3 := Union_Id (Val);
4694 procedure Set_List4 (N : Node_Id; Val : List_Id) is
4696 pragma Assert (N <= Nodes.Last);
4697 Nodes.Table (N).Field4 := Union_Id (Val);
4700 procedure Set_List5 (N : Node_Id; Val : List_Id) is
4702 pragma Assert (N <= Nodes.Last);
4703 Nodes.Table (N).Field5 := Union_Id (Val);
4706 procedure Set_List10 (N : Node_Id; Val : List_Id) is
4708 pragma Assert (Nkind (N) in N_Entity);
4709 Nodes.Table (N + 1).Field10 := Union_Id (Val);
4712 procedure Set_List14 (N : Node_Id; Val : List_Id) is
4714 pragma Assert (Nkind (N) in N_Entity);
4715 Nodes.Table (N + 2).Field7 := Union_Id (Val);
4718 procedure Set_List25 (N : Node_Id; Val : List_Id) is
4720 pragma Assert (Nkind (N) in N_Entity);
4721 Nodes.Table (N + 4).Field7 := Union_Id (Val);
4724 procedure Set_Elist1 (N : Node_Id; Val : Elist_Id) is
4726 Nodes.Table (N).Field1 := Union_Id (Val);
4729 procedure Set_Elist2 (N : Node_Id; Val : Elist_Id) is
4731 Nodes.Table (N).Field2 := Union_Id (Val);
4734 procedure Set_Elist3 (N : Node_Id; Val : Elist_Id) is
4736 Nodes.Table (N).Field3 := Union_Id (Val);
4739 procedure Set_Elist4 (N : Node_Id; Val : Elist_Id) is
4741 Nodes.Table (N).Field4 := Union_Id (Val);
4744 procedure Set_Elist5 (N : Node_Id; Val : Elist_Id) is
4746 Nodes.Table (N).Field5 := Union_Id (Val);
4749 procedure Set_Elist8 (N : Node_Id; Val : Elist_Id) is
4751 pragma Assert (Nkind (N) in N_Entity);
4752 Nodes.Table (N + 1).Field8 := Union_Id (Val);
4755 procedure Set_Elist10 (N : Node_Id; Val : Elist_Id) is
4757 pragma Assert (Nkind (N) in N_Entity);
4758 Nodes.Table (N + 1).Field10 := Union_Id (Val);
4761 procedure Set_Elist13 (N : Node_Id; Val : Elist_Id) is
4763 pragma Assert (Nkind (N) in N_Entity);
4764 Nodes.Table (N + 2).Field6 := Union_Id (Val);
4767 procedure Set_Elist15 (N : Node_Id; Val : Elist_Id) is
4769 pragma Assert (Nkind (N) in N_Entity);
4770 Nodes.Table (N + 2).Field8 := Union_Id (Val);
4773 procedure Set_Elist16 (N : Node_Id; Val : Elist_Id) is
4775 pragma Assert (Nkind (N) in N_Entity);
4776 Nodes.Table (N + 2).Field9 := Union_Id (Val);
4779 procedure Set_Elist18 (N : Node_Id; Val : Elist_Id) is
4781 pragma Assert (Nkind (N) in N_Entity);
4782 Nodes.Table (N + 2).Field11 := Union_Id (Val);
4785 procedure Set_Elist21 (N : Node_Id; Val : Elist_Id) is
4787 pragma Assert (Nkind (N) in N_Entity);
4788 Nodes.Table (N + 3).Field8 := Union_Id (Val);
4791 procedure Set_Elist23 (N : Node_Id; Val : Elist_Id) is
4793 pragma Assert (Nkind (N) in N_Entity);
4794 Nodes.Table (N + 3).Field10 := Union_Id (Val);
4797 procedure Set_Elist24 (N : Node_Id; Val : Elist_Id) is
4799 pragma Assert (Nkind (N) in N_Entity);
4800 Nodes.Table (N + 4).Field6 := Union_Id (Val);
4803 procedure Set_Elist25 (N : Node_Id; Val : Elist_Id) is
4805 pragma Assert (Nkind (N) in N_Entity);
4806 Nodes.Table (N + 4).Field7 := Union_Id (Val);
4809 procedure Set_Elist26 (N : Node_Id; Val : Elist_Id) is
4811 pragma Assert (Nkind (N) in N_Entity);
4812 Nodes.Table (N + 4).Field8 := Union_Id (Val);
4815 procedure Set_Name1 (N : Node_Id; Val : Name_Id) is
4817 pragma Assert (N <= Nodes.Last);
4818 Nodes.Table (N).Field1 := Union_Id (Val);
4821 procedure Set_Name2 (N : Node_Id; Val : Name_Id) is
4823 pragma Assert (N <= Nodes.Last);
4824 Nodes.Table (N).Field2 := Union_Id (Val);
4827 procedure Set_Str3 (N : Node_Id; Val : String_Id) is
4829 pragma Assert (N <= Nodes.Last);
4830 Nodes.Table (N).Field3 := Union_Id (Val);
4833 procedure Set_Uint2 (N : Node_Id; Val : Uint) is
4835 pragma Assert (N <= Nodes.Last);
4836 Nodes.Table (N).Field2 := To_Union (Val);
4839 procedure Set_Uint3 (N : Node_Id; Val : Uint) is
4841 pragma Assert (N <= Nodes.Last);
4842 Nodes.Table (N).Field3 := To_Union (Val);
4845 procedure Set_Uint4 (N : Node_Id; Val : Uint) is
4847 pragma Assert (N <= Nodes.Last);
4848 Nodes.Table (N).Field4 := To_Union (Val);
4851 procedure Set_Uint5 (N : Node_Id; Val : Uint) is
4853 pragma Assert (N <= Nodes.Last);
4854 Nodes.Table (N).Field5 := To_Union (Val);
4857 procedure Set_Uint8 (N : Node_Id; Val : Uint) is
4859 pragma Assert (Nkind (N) in N_Entity);
4860 Nodes.Table (N + 1).Field8 := To_Union (Val);
4863 procedure Set_Uint9 (N : Node_Id; Val : Uint) is
4865 pragma Assert (Nkind (N) in N_Entity);
4866 Nodes.Table (N + 1).Field9 := To_Union (Val);
4869 procedure Set_Uint10 (N : Node_Id; Val : Uint) is
4871 pragma Assert (Nkind (N) in N_Entity);
4872 Nodes.Table (N + 1).Field10 := To_Union (Val);
4875 procedure Set_Uint11 (N : Node_Id; Val : Uint) is
4877 pragma Assert (Nkind (N) in N_Entity);
4878 Nodes.Table (N + 1).Field11 := To_Union (Val);
4881 procedure Set_Uint12 (N : Node_Id; Val : Uint) is
4883 pragma Assert (Nkind (N) in N_Entity);
4884 Nodes.Table (N + 1).Field12 := To_Union (Val);
4887 procedure Set_Uint13 (N : Node_Id; Val : Uint) is
4889 pragma Assert (Nkind (N) in N_Entity);
4890 Nodes.Table (N + 2).Field6 := To_Union (Val);
4893 procedure Set_Uint14 (N : Node_Id; Val : Uint) is
4895 pragma Assert (Nkind (N) in N_Entity);
4896 Nodes.Table (N + 2).Field7 := To_Union (Val);
4899 procedure Set_Uint15 (N : Node_Id; Val : Uint) is
4901 pragma Assert (Nkind (N) in N_Entity);
4902 Nodes.Table (N + 2).Field8 := To_Union (Val);
4905 procedure Set_Uint16 (N : Node_Id; Val : Uint) is
4907 pragma Assert (Nkind (N) in N_Entity);
4908 Nodes.Table (N + 2).Field9 := To_Union (Val);
4911 procedure Set_Uint17 (N : Node_Id; Val : Uint) is
4913 pragma Assert (Nkind (N) in N_Entity);
4914 Nodes.Table (N + 2).Field10 := To_Union (Val);
4917 procedure Set_Uint22 (N : Node_Id; Val : Uint) is
4919 pragma Assert (Nkind (N) in N_Entity);
4920 Nodes.Table (N + 3).Field9 := To_Union (Val);
4923 procedure Set_Ureal3 (N : Node_Id; Val : Ureal) is
4925 pragma Assert (N <= Nodes.Last);
4926 Nodes.Table (N).Field3 := To_Union (Val);
4929 procedure Set_Ureal18 (N : Node_Id; Val : Ureal) is
4931 pragma Assert (Nkind (N) in N_Entity);
4932 Nodes.Table (N + 2).Field11 := To_Union (Val);
4935 procedure Set_Ureal21 (N : Node_Id; Val : Ureal) is
4937 pragma Assert (Nkind (N) in N_Entity);
4938 Nodes.Table (N + 3).Field8 := To_Union (Val);
4941 procedure Set_Flag4 (N : Node_Id; Val : Boolean) is
4943 pragma Assert (N <= Nodes.Last);
4944 Nodes.Table (N).Flag4 := Val;
4947 procedure Set_Flag5 (N : Node_Id; Val : Boolean) is
4949 pragma Assert (N <= Nodes.Last);
4950 Nodes.Table (N).Flag5 := Val;
4953 procedure Set_Flag6 (N : Node_Id; Val : Boolean) is
4955 pragma Assert (N <= Nodes.Last);
4956 Nodes.Table (N).Flag6 := Val;
4959 procedure Set_Flag7 (N : Node_Id; Val : Boolean) is
4961 pragma Assert (N <= Nodes.Last);
4962 Nodes.Table (N).Flag7 := Val;
4965 procedure Set_Flag8 (N : Node_Id; Val : Boolean) is
4967 pragma Assert (N <= Nodes.Last);
4968 Nodes.Table (N).Flag8 := Val;
4971 procedure Set_Flag9 (N : Node_Id; Val : Boolean) is
4973 pragma Assert (N <= Nodes.Last);
4974 Nodes.Table (N).Flag9 := Val;
4977 procedure Set_Flag10 (N : Node_Id; Val : Boolean) is
4979 pragma Assert (N <= Nodes.Last);
4980 Nodes.Table (N).Flag10 := Val;
4983 procedure Set_Flag11 (N : Node_Id; Val : Boolean) is
4985 pragma Assert (N <= Nodes.Last);
4986 Nodes.Table (N).Flag11 := Val;
4989 procedure Set_Flag12 (N : Node_Id; Val : Boolean) is
4991 pragma Assert (N <= Nodes.Last);
4992 Nodes.Table (N).Flag12 := Val;
4995 procedure Set_Flag13 (N : Node_Id; Val : Boolean) is
4997 pragma Assert (N <= Nodes.Last);
4998 Nodes.Table (N).Flag13 := Val;
5001 procedure Set_Flag14 (N : Node_Id; Val : Boolean) is
5003 pragma Assert (N <= Nodes.Last);
5004 Nodes.Table (N).Flag14 := Val;
5007 procedure Set_Flag15 (N : Node_Id; Val : Boolean) is
5009 pragma Assert (N <= Nodes.Last);
5010 Nodes.Table (N).Flag15 := Val;
5013 procedure Set_Flag16 (N : Node_Id; Val : Boolean) is
5015 pragma Assert (N <= Nodes.Last);
5016 Nodes.Table (N).Flag16 := Val;
5019 procedure Set_Flag17 (N : Node_Id; Val : Boolean) is
5021 pragma Assert (N <= Nodes.Last);
5022 Nodes.Table (N).Flag17 := Val;
5025 procedure Set_Flag18 (N : Node_Id; Val : Boolean) is
5027 pragma Assert (N <= Nodes.Last);
5028 Nodes.Table (N).Flag18 := Val;
5031 procedure Set_Flag19 (N : Node_Id; Val : Boolean) is
5033 pragma Assert (Nkind (N) in N_Entity);
5034 Nodes.Table (N + 1).In_List := Val;
5037 procedure Set_Flag20 (N : Node_Id; Val : Boolean) is
5039 pragma Assert (Nkind (N) in N_Entity);
5040 Nodes.Table (N + 1).Has_Aspects := Val;
5043 procedure Set_Flag21 (N : Node_Id; Val : Boolean) is
5045 pragma Assert (Nkind (N) in N_Entity);
5046 Nodes.Table (N + 1).Rewrite_Ins := Val;
5049 procedure Set_Flag22 (N : Node_Id; Val : Boolean) is
5051 pragma Assert (Nkind (N) in N_Entity);
5052 Nodes.Table (N + 1).Analyzed := Val;
5055 procedure Set_Flag23 (N : Node_Id; Val : Boolean) is
5057 pragma Assert (Nkind (N) in N_Entity);
5058 Nodes.Table (N + 1).Comes_From_Source := Val;
5061 procedure Set_Flag24 (N : Node_Id; Val : Boolean) is
5063 pragma Assert (Nkind (N) in N_Entity);
5064 Nodes.Table (N + 1).Error_Posted := Val;
5067 procedure Set_Flag25 (N : Node_Id; Val : Boolean) is
5069 pragma Assert (Nkind (N) in N_Entity);
5070 Nodes.Table (N + 1).Flag4 := Val;
5073 procedure Set_Flag26 (N : Node_Id; Val : Boolean) is
5075 pragma Assert (Nkind (N) in N_Entity);
5076 Nodes.Table (N + 1).Flag5 := Val;
5079 procedure Set_Flag27 (N : Node_Id; Val : Boolean) is
5081 pragma Assert (Nkind (N) in N_Entity);
5082 Nodes.Table (N + 1).Flag6 := Val;
5085 procedure Set_Flag28 (N : Node_Id; Val : Boolean) is
5087 pragma Assert (Nkind (N) in N_Entity);
5088 Nodes.Table (N + 1).Flag7 := Val;
5091 procedure Set_Flag29 (N : Node_Id; Val : Boolean) is
5093 pragma Assert (Nkind (N) in N_Entity);
5094 Nodes.Table (N + 1).Flag8 := Val;
5097 procedure Set_Flag30 (N : Node_Id; Val : Boolean) is
5099 pragma Assert (Nkind (N) in N_Entity);
5100 Nodes.Table (N + 1).Flag9 := Val;
5103 procedure Set_Flag31 (N : Node_Id; Val : Boolean) is
5105 pragma Assert (Nkind (N) in N_Entity);
5106 Nodes.Table (N + 1).Flag10 := Val;
5109 procedure Set_Flag32 (N : Node_Id; Val : Boolean) is
5111 pragma Assert (Nkind (N) in N_Entity);
5112 Nodes.Table (N + 1).Flag11 := Val;
5115 procedure Set_Flag33 (N : Node_Id; Val : Boolean) is
5117 pragma Assert (Nkind (N) in N_Entity);
5118 Nodes.Table (N + 1).Flag12 := Val;
5121 procedure Set_Flag34 (N : Node_Id; Val : Boolean) is
5123 pragma Assert (Nkind (N) in N_Entity);
5124 Nodes.Table (N + 1).Flag13 := Val;
5127 procedure Set_Flag35 (N : Node_Id; Val : Boolean) is
5129 pragma Assert (Nkind (N) in N_Entity);
5130 Nodes.Table (N + 1).Flag14 := Val;
5133 procedure Set_Flag36 (N : Node_Id; Val : Boolean) is
5135 pragma Assert (Nkind (N) in N_Entity);
5136 Nodes.Table (N + 1).Flag15 := Val;
5139 procedure Set_Flag37 (N : Node_Id; Val : Boolean) is
5141 pragma Assert (Nkind (N) in N_Entity);
5142 Nodes.Table (N + 1).Flag16 := Val;
5145 procedure Set_Flag38 (N : Node_Id; Val : Boolean) is
5147 pragma Assert (Nkind (N) in N_Entity);
5148 Nodes.Table (N + 1).Flag17 := Val;
5151 procedure Set_Flag39 (N : Node_Id; Val : Boolean) is
5153 pragma Assert (Nkind (N) in N_Entity);
5154 Nodes.Table (N + 1).Flag18 := Val;
5157 procedure Set_Flag40 (N : Node_Id; Val : Boolean) is
5159 pragma Assert (Nkind (N) in N_Entity);
5160 Nodes.Table (N + 2).In_List := Val;
5163 procedure Set_Flag41 (N : Node_Id; Val : Boolean) is
5165 pragma Assert (Nkind (N) in N_Entity);
5166 Nodes.Table (N + 2).Has_Aspects := Val;
5169 procedure Set_Flag42 (N : Node_Id; Val : Boolean) is
5171 pragma Assert (Nkind (N) in N_Entity);
5172 Nodes.Table (N + 2).Rewrite_Ins := Val;
5175 procedure Set_Flag43 (N : Node_Id; Val : Boolean) is
5177 pragma Assert (Nkind (N) in N_Entity);
5178 Nodes.Table (N + 2).Analyzed := Val;
5181 procedure Set_Flag44 (N : Node_Id; Val : Boolean) is
5183 pragma Assert (Nkind (N) in N_Entity);
5184 Nodes.Table (N + 2).Comes_From_Source := Val;
5187 procedure Set_Flag45 (N : Node_Id; Val : Boolean) is
5189 pragma Assert (Nkind (N) in N_Entity);
5190 Nodes.Table (N + 2).Error_Posted := Val;
5193 procedure Set_Flag46 (N : Node_Id; Val : Boolean) is
5195 pragma Assert (Nkind (N) in N_Entity);
5196 Nodes.Table (N + 2).Flag4 := Val;
5199 procedure Set_Flag47 (N : Node_Id; Val : Boolean) is
5201 pragma Assert (Nkind (N) in N_Entity);
5202 Nodes.Table (N + 2).Flag5 := Val;
5205 procedure Set_Flag48 (N : Node_Id; Val : Boolean) is
5207 pragma Assert (Nkind (N) in N_Entity);
5208 Nodes.Table (N + 2).Flag6 := Val;
5211 procedure Set_Flag49 (N : Node_Id; Val : Boolean) is
5213 pragma Assert (Nkind (N) in N_Entity);
5214 Nodes.Table (N + 2).Flag7 := Val;
5217 procedure Set_Flag50 (N : Node_Id; Val : Boolean) is
5219 pragma Assert (Nkind (N) in N_Entity);
5220 Nodes.Table (N + 2).Flag8 := Val;
5223 procedure Set_Flag51 (N : Node_Id; Val : Boolean) is
5225 pragma Assert (Nkind (N) in N_Entity);
5226 Nodes.Table (N + 2).Flag9 := Val;
5229 procedure Set_Flag52 (N : Node_Id; Val : Boolean) is
5231 pragma Assert (Nkind (N) in N_Entity);
5232 Nodes.Table (N + 2).Flag10 := Val;
5235 procedure Set_Flag53 (N : Node_Id; Val : Boolean) is
5237 pragma Assert (Nkind (N) in N_Entity);
5238 Nodes.Table (N + 2).Flag11 := Val;
5241 procedure Set_Flag54 (N : Node_Id; Val : Boolean) is
5243 pragma Assert (Nkind (N) in N_Entity);
5244 Nodes.Table (N + 2).Flag12 := Val;
5247 procedure Set_Flag55 (N : Node_Id; Val : Boolean) is
5249 pragma Assert (Nkind (N) in N_Entity);
5250 Nodes.Table (N + 2).Flag13 := Val;
5253 procedure Set_Flag56 (N : Node_Id; Val : Boolean) is
5255 pragma Assert (Nkind (N) in N_Entity);
5256 Nodes.Table (N + 2).Flag14 := Val;
5259 procedure Set_Flag57 (N : Node_Id; Val : Boolean) is
5261 pragma Assert (Nkind (N) in N_Entity);
5262 Nodes.Table (N + 2).Flag15 := Val;
5265 procedure Set_Flag58 (N : Node_Id; Val : Boolean) is
5267 pragma Assert (Nkind (N) in N_Entity);
5268 Nodes.Table (N + 2).Flag16 := Val;
5271 procedure Set_Flag59 (N : Node_Id; Val : Boolean) is
5273 pragma Assert (Nkind (N) in N_Entity);
5274 Nodes.Table (N + 2).Flag17 := Val;
5277 procedure Set_Flag60 (N : Node_Id; Val : Boolean) is
5279 pragma Assert (Nkind (N) in N_Entity);
5280 Nodes.Table (N + 2).Flag18 := Val;
5283 procedure Set_Flag61 (N : Node_Id; Val : Boolean) is
5285 pragma Assert (Nkind (N) in N_Entity);
5286 Nodes.Table (N + 1).Pflag1 := Val;
5289 procedure Set_Flag62 (N : Node_Id; Val : Boolean) is
5291 pragma Assert (Nkind (N) in N_Entity);
5292 Nodes.Table (N + 1).Pflag2 := Val;
5295 procedure Set_Flag63 (N : Node_Id; Val : Boolean) is
5297 pragma Assert (Nkind (N) in N_Entity);
5298 Nodes.Table (N + 2).Pflag1 := Val;
5301 procedure Set_Flag64 (N : Node_Id; Val : Boolean) is
5303 pragma Assert (Nkind (N) in N_Entity);
5304 Nodes.Table (N + 2).Pflag2 := Val;
5307 procedure Set_Flag65 (N : Node_Id; Val : Boolean) is
5309 pragma Assert (Nkind (N) in N_Entity);
5312 (Nodes
.Table
(N
+ 2).Nkind
'Unrestricted_Access)).Flag65
:= Val
;
5315 procedure Set_Flag66
(N
: Node_Id
; Val
: Boolean) is
5317 pragma Assert
(Nkind
(N
) in N_Entity
);
5320 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag66 := Val;
5323 procedure Set_Flag67 (N : Node_Id; Val : Boolean) is
5325 pragma Assert (Nkind (N) in N_Entity);
5328 (Nodes
.Table
(N
+ 2).Nkind
'Unrestricted_Access)).Flag67
:= Val
;
5331 procedure Set_Flag68
(N
: Node_Id
; Val
: Boolean) is
5333 pragma Assert
(Nkind
(N
) in N_Entity
);
5336 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag68 := Val;
5339 procedure Set_Flag69 (N : Node_Id; Val : Boolean) is
5341 pragma Assert (Nkind (N) in N_Entity);
5344 (Nodes
.Table
(N
+ 2).Nkind
'Unrestricted_Access)).Flag69
:= Val
;
5347 procedure Set_Flag70
(N
: Node_Id
; Val
: Boolean) is
5349 pragma Assert
(Nkind
(N
) in N_Entity
);
5352 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag70 := Val;
5355 procedure Set_Flag71 (N : Node_Id; Val : Boolean) is
5357 pragma Assert (Nkind (N) in N_Entity);
5360 (Nodes
.Table
(N
+ 2).Nkind
'Unrestricted_Access)).Flag71
:= Val
;
5363 procedure Set_Flag72
(N
: Node_Id
; Val
: Boolean) is
5365 pragma Assert
(Nkind
(N
) in N_Entity
);
5368 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag72 := Val;
5371 procedure Set_Flag73 (N : Node_Id; Val : Boolean) is
5373 pragma Assert (Nkind (N) in N_Entity);
5376 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag73
:= Val
;
5379 procedure Set_Flag74
(N
: Node_Id
; Val
: Boolean) is
5381 pragma Assert
(Nkind
(N
) in N_Entity
);
5384 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag74 := Val;
5387 procedure Set_Flag75 (N : Node_Id; Val : Boolean) is
5389 pragma Assert (Nkind (N) in N_Entity);
5392 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag75
:= Val
;
5395 procedure Set_Flag76
(N
: Node_Id
; Val
: Boolean) is
5397 pragma Assert
(Nkind
(N
) in N_Entity
);
5400 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag76 := Val;
5403 procedure Set_Flag77 (N : Node_Id; Val : Boolean) is
5405 pragma Assert (Nkind (N) in N_Entity);
5408 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag77
:= Val
;
5411 procedure Set_Flag78
(N
: Node_Id
; Val
: Boolean) is
5413 pragma Assert
(Nkind
(N
) in N_Entity
);
5416 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag78 := Val;
5419 procedure Set_Flag79 (N : Node_Id; Val : Boolean) is
5421 pragma Assert (Nkind (N) in N_Entity);
5424 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag79
:= Val
;
5427 procedure Set_Flag80
(N
: Node_Id
; Val
: Boolean) is
5429 pragma Assert
(Nkind
(N
) in N_Entity
);
5432 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag80 := Val;
5435 procedure Set_Flag81 (N : Node_Id; Val : Boolean) is
5437 pragma Assert (Nkind (N) in N_Entity);
5440 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag81
:= Val
;
5443 procedure Set_Flag82
(N
: Node_Id
; Val
: Boolean) is
5445 pragma Assert
(Nkind
(N
) in N_Entity
);
5448 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag82 := Val;
5451 procedure Set_Flag83 (N : Node_Id; Val : Boolean) is
5453 pragma Assert (Nkind (N) in N_Entity);
5456 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag83
:= Val
;
5459 procedure Set_Flag84
(N
: Node_Id
; Val
: Boolean) is
5461 pragma Assert
(Nkind
(N
) in N_Entity
);
5464 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag84 := Val;
5467 procedure Set_Flag85 (N : Node_Id; Val : Boolean) is
5469 pragma Assert (Nkind (N) in N_Entity);
5472 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag85
:= Val
;
5475 procedure Set_Flag86
(N
: Node_Id
; Val
: Boolean) is
5477 pragma Assert
(Nkind
(N
) in N_Entity
);
5480 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag86 := Val;
5483 procedure Set_Flag87 (N : Node_Id; Val : Boolean) is
5485 pragma Assert (Nkind (N) in N_Entity);
5488 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag87
:= Val
;
5491 procedure Set_Flag88
(N
: Node_Id
; Val
: Boolean) is
5493 pragma Assert
(Nkind
(N
) in N_Entity
);
5496 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag88 := Val;
5499 procedure Set_Flag89 (N : Node_Id; Val : Boolean) is
5501 pragma Assert (Nkind (N) in N_Entity);
5504 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag89
:= Val
;
5507 procedure Set_Flag90
(N
: Node_Id
; Val
: Boolean) is
5509 pragma Assert
(Nkind
(N
) in N_Entity
);
5512 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag90 := Val;
5515 procedure Set_Flag91 (N : Node_Id; Val : Boolean) is
5517 pragma Assert (Nkind (N) in N_Entity);
5520 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag91
:= Val
;
5523 procedure Set_Flag92
(N
: Node_Id
; Val
: Boolean) is
5525 pragma Assert
(Nkind
(N
) in N_Entity
);
5528 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag92 := Val;
5531 procedure Set_Flag93 (N : Node_Id; Val : Boolean) is
5533 pragma Assert (Nkind (N) in N_Entity);
5536 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag93
:= Val
;
5539 procedure Set_Flag94
(N
: Node_Id
; Val
: Boolean) is
5541 pragma Assert
(Nkind
(N
) in N_Entity
);
5544 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag94 := Val;
5547 procedure Set_Flag95 (N : Node_Id; Val : Boolean) is
5549 pragma Assert (Nkind (N) in N_Entity);
5552 (Nodes
.Table
(N
+ 2).Field12
'Unrestricted_Access)).Flag95
:= Val
;
5555 procedure Set_Flag96
(N
: Node_Id
; Val
: Boolean) is
5557 pragma Assert
(Nkind
(N
) in N_Entity
);
5560 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag96 := Val;
5563 procedure Set_Flag97 (N : Node_Id; Val : Boolean) is
5565 pragma Assert (Nkind (N) in N_Entity);
5568 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag97
:= Val
;
5571 procedure Set_Flag98
(N
: Node_Id
; Val
: Boolean) is
5573 pragma Assert
(Nkind
(N
) in N_Entity
);
5576 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag98 := Val;
5579 procedure Set_Flag99 (N : Node_Id; Val : Boolean) is
5581 pragma Assert (Nkind (N) in N_Entity);
5584 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag99
:= Val
;
5587 procedure Set_Flag100
(N
: Node_Id
; Val
: Boolean) is
5589 pragma Assert
(Nkind
(N
) in N_Entity
);
5592 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag100 := Val;
5595 procedure Set_Flag101 (N : Node_Id; Val : Boolean) is
5597 pragma Assert (Nkind (N) in N_Entity);
5600 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag101
:= Val
;
5603 procedure Set_Flag102
(N
: Node_Id
; Val
: Boolean) is
5605 pragma Assert
(Nkind
(N
) in N_Entity
);
5608 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag102 := Val;
5611 procedure Set_Flag103 (N : Node_Id; Val : Boolean) is
5613 pragma Assert (Nkind (N) in N_Entity);
5616 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag103
:= Val
;
5619 procedure Set_Flag104
(N
: Node_Id
; Val
: Boolean) is
5621 pragma Assert
(Nkind
(N
) in N_Entity
);
5624 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag104 := Val;
5627 procedure Set_Flag105 (N : Node_Id; Val : Boolean) is
5629 pragma Assert (Nkind (N) in N_Entity);
5632 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag105
:= Val
;
5635 procedure Set_Flag106
(N
: Node_Id
; Val
: Boolean) is
5637 pragma Assert
(Nkind
(N
) in N_Entity
);
5640 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag106 := Val;
5643 procedure Set_Flag107 (N : Node_Id; Val : Boolean) is
5645 pragma Assert (Nkind (N) in N_Entity);
5648 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag107
:= Val
;
5651 procedure Set_Flag108
(N
: Node_Id
; Val
: Boolean) is
5653 pragma Assert
(Nkind
(N
) in N_Entity
);
5656 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag108 := Val;
5659 procedure Set_Flag109 (N : Node_Id; Val : Boolean) is
5661 pragma Assert (Nkind (N) in N_Entity);
5664 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag109
:= Val
;
5667 procedure Set_Flag110
(N
: Node_Id
; Val
: Boolean) is
5669 pragma Assert
(Nkind
(N
) in N_Entity
);
5672 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag110 := Val;
5675 procedure Set_Flag111 (N : Node_Id; Val : Boolean) is
5677 pragma Assert (Nkind (N) in N_Entity);
5680 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag111
:= Val
;
5683 procedure Set_Flag112
(N
: Node_Id
; Val
: Boolean) is
5685 pragma Assert
(Nkind
(N
) in N_Entity
);
5688 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag112 := Val;
5691 procedure Set_Flag113 (N : Node_Id; Val : Boolean) is
5693 pragma Assert (Nkind (N) in N_Entity);
5696 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag113
:= Val
;
5699 procedure Set_Flag114
(N
: Node_Id
; Val
: Boolean) is
5701 pragma Assert
(Nkind
(N
) in N_Entity
);
5704 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag114 := Val;
5707 procedure Set_Flag115 (N : Node_Id; Val : Boolean) is
5709 pragma Assert (Nkind (N) in N_Entity);
5712 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag115
:= Val
;
5715 procedure Set_Flag116
(N
: Node_Id
; Val
: Boolean) is
5717 pragma Assert
(Nkind
(N
) in N_Entity
);
5720 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag116 := Val;
5723 procedure Set_Flag117 (N : Node_Id; Val : Boolean) is
5725 pragma Assert (Nkind (N) in N_Entity);
5728 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag117
:= Val
;
5731 procedure Set_Flag118
(N
: Node_Id
; Val
: Boolean) is
5733 pragma Assert
(Nkind
(N
) in N_Entity
);
5736 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag118 := Val;
5739 procedure Set_Flag119 (N : Node_Id; Val : Boolean) is
5741 pragma Assert (Nkind (N) in N_Entity);
5744 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag119
:= Val
;
5747 procedure Set_Flag120
(N
: Node_Id
; Val
: Boolean) is
5749 pragma Assert
(Nkind
(N
) in N_Entity
);
5752 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag120 := Val;
5755 procedure Set_Flag121 (N : Node_Id; Val : Boolean) is
5757 pragma Assert (Nkind (N) in N_Entity);
5760 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag121
:= Val
;
5763 procedure Set_Flag122
(N
: Node_Id
; Val
: Boolean) is
5765 pragma Assert
(Nkind
(N
) in N_Entity
);
5768 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag122 := Val;
5771 procedure Set_Flag123 (N : Node_Id; Val : Boolean) is
5773 pragma Assert (Nkind (N) in N_Entity);
5776 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag123
:= Val
;
5779 procedure Set_Flag124
(N
: Node_Id
; Val
: Boolean) is
5781 pragma Assert
(Nkind
(N
) in N_Entity
);
5784 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag124 := Val;
5787 procedure Set_Flag125 (N : Node_Id; Val : Boolean) is
5789 pragma Assert (Nkind (N) in N_Entity);
5792 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag125
:= Val
;
5795 procedure Set_Flag126
(N
: Node_Id
; Val
: Boolean) is
5797 pragma Assert
(Nkind
(N
) in N_Entity
);
5800 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag126 := Val;
5803 procedure Set_Flag127 (N : Node_Id; Val : Boolean) is
5805 pragma Assert (Nkind (N) in N_Entity);
5808 (Nodes
.Table
(N
+ 3).Field12
'Unrestricted_Access)).Flag127
:= Val
;
5811 procedure Set_Flag128
(N
: Node_Id
; Val
: Boolean) is
5813 pragma Assert
(Nkind
(N
) in N_Entity
);
5816 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag128 := Val;
5819 procedure Set_Flag129 (N : Node_Id; Val : Boolean) is
5821 pragma Assert (Nkind (N) in N_Entity);
5822 Nodes.Table (N + 3).In_List := Val;
5825 procedure Set_Flag130 (N : Node_Id; Val : Boolean) is
5827 pragma Assert (Nkind (N) in N_Entity);
5828 Nodes.Table (N + 3).Has_Aspects := Val;
5831 procedure Set_Flag131 (N : Node_Id; Val : Boolean) is
5833 pragma Assert (Nkind (N) in N_Entity);
5834 Nodes.Table (N + 3).Rewrite_Ins := Val;
5837 procedure Set_Flag132 (N : Node_Id; Val : Boolean) is
5839 pragma Assert (Nkind (N) in N_Entity);
5840 Nodes.Table (N + 3).Analyzed := Val;
5843 procedure Set_Flag133 (N : Node_Id; Val : Boolean) is
5845 pragma Assert (Nkind (N) in N_Entity);
5846 Nodes.Table (N + 3).Comes_From_Source := Val;
5849 procedure Set_Flag134 (N : Node_Id; Val : Boolean) is
5851 pragma Assert (Nkind (N) in N_Entity);
5852 Nodes.Table (N + 3).Error_Posted := Val;
5855 procedure Set_Flag135 (N : Node_Id; Val : Boolean) is
5857 pragma Assert (Nkind (N) in N_Entity);
5858 Nodes.Table (N + 3).Flag4 := Val;
5861 procedure Set_Flag136 (N : Node_Id; Val : Boolean) is
5863 pragma Assert (Nkind (N) in N_Entity);
5864 Nodes.Table (N + 3).Flag5 := Val;
5867 procedure Set_Flag137 (N : Node_Id; Val : Boolean) is
5869 pragma Assert (Nkind (N) in N_Entity);
5870 Nodes.Table (N + 3).Flag6 := Val;
5873 procedure Set_Flag138 (N : Node_Id; Val : Boolean) is
5875 pragma Assert (Nkind (N) in N_Entity);
5876 Nodes.Table (N + 3).Flag7 := Val;
5879 procedure Set_Flag139 (N : Node_Id; Val : Boolean) is
5881 pragma Assert (Nkind (N) in N_Entity);
5882 Nodes.Table (N + 3).Flag8 := Val;
5885 procedure Set_Flag140 (N : Node_Id; Val : Boolean) is
5887 pragma Assert (Nkind (N) in N_Entity);
5888 Nodes.Table (N + 3).Flag9 := Val;
5891 procedure Set_Flag141 (N : Node_Id; Val : Boolean) is
5893 pragma Assert (Nkind (N) in N_Entity);
5894 Nodes.Table (N + 3).Flag10 := Val;
5897 procedure Set_Flag142 (N : Node_Id; Val : Boolean) is
5899 pragma Assert (Nkind (N) in N_Entity);
5900 Nodes.Table (N + 3).Flag11 := Val;
5903 procedure Set_Flag143 (N : Node_Id; Val : Boolean) is
5905 pragma Assert (Nkind (N) in N_Entity);
5906 Nodes.Table (N + 3).Flag12 := Val;
5909 procedure Set_Flag144 (N : Node_Id; Val : Boolean) is
5911 pragma Assert (Nkind (N) in N_Entity);
5912 Nodes.Table (N + 3).Flag13 := Val;
5915 procedure Set_Flag145 (N : Node_Id; Val : Boolean) is
5917 pragma Assert (Nkind (N) in N_Entity);
5918 Nodes.Table (N + 3).Flag14 := Val;
5921 procedure Set_Flag146 (N : Node_Id; Val : Boolean) is
5923 pragma Assert (Nkind (N) in N_Entity);
5924 Nodes.Table (N + 3).Flag15 := Val;
5927 procedure Set_Flag147 (N : Node_Id; Val : Boolean) is
5929 pragma Assert (Nkind (N) in N_Entity);
5930 Nodes.Table (N + 3).Flag16 := Val;
5933 procedure Set_Flag148 (N : Node_Id; Val : Boolean) is
5935 pragma Assert (Nkind (N) in N_Entity);
5936 Nodes.Table (N + 3).Flag17 := Val;
5939 procedure Set_Flag149 (N : Node_Id; Val : Boolean) is
5941 pragma Assert (Nkind (N) in N_Entity);
5942 Nodes.Table (N + 3).Flag18 := Val;
5945 procedure Set_Flag150 (N : Node_Id; Val : Boolean) is
5947 pragma Assert (Nkind (N) in N_Entity);
5948 Nodes.Table (N + 3).Pflag1 := Val;
5951 procedure Set_Flag151 (N : Node_Id; Val : Boolean) is
5953 pragma Assert (Nkind (N) in N_Entity);
5954 Nodes.Table (N + 3).Pflag2 := Val;
5957 procedure Set_Flag152 (N : Node_Id; Val : Boolean) is
5959 pragma Assert (Nkind (N) in N_Entity);
5962 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag152
:= Val
;
5965 procedure Set_Flag153
(N
: Node_Id
; Val
: Boolean) is
5967 pragma Assert
(Nkind
(N
) in N_Entity
);
5970 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag153 := Val;
5973 procedure Set_Flag154 (N : Node_Id; Val : Boolean) is
5975 pragma Assert (Nkind (N) in N_Entity);
5978 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag154
:= Val
;
5981 procedure Set_Flag155
(N
: Node_Id
; Val
: Boolean) is
5983 pragma Assert
(Nkind
(N
) in N_Entity
);
5986 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag155 := Val;
5989 procedure Set_Flag156 (N : Node_Id; Val : Boolean) is
5991 pragma Assert (Nkind (N) in N_Entity);
5994 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag156
:= Val
;
5997 procedure Set_Flag157
(N
: Node_Id
; Val
: Boolean) is
5999 pragma Assert
(Nkind
(N
) in N_Entity
);
6002 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag157 := Val;
6005 procedure Set_Flag158 (N : Node_Id; Val : Boolean) is
6007 pragma Assert (Nkind (N) in N_Entity);
6010 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag158
:= Val
;
6013 procedure Set_Flag159
(N
: Node_Id
; Val
: Boolean) is
6015 pragma Assert
(Nkind
(N
) in N_Entity
);
6018 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag159 := Val;
6021 procedure Set_Flag160 (N : Node_Id; Val : Boolean) is
6023 pragma Assert (Nkind (N) in N_Entity);
6026 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag160
:= Val
;
6029 procedure Set_Flag161
(N
: Node_Id
; Val
: Boolean) is
6031 pragma Assert
(Nkind
(N
) in N_Entity
);
6034 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag161 := Val;
6037 procedure Set_Flag162 (N : Node_Id; Val : Boolean) is
6039 pragma Assert (Nkind (N) in N_Entity);
6042 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag162
:= Val
;
6045 procedure Set_Flag163
(N
: Node_Id
; Val
: Boolean) is
6047 pragma Assert
(Nkind
(N
) in N_Entity
);
6050 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag163 := Val;
6053 procedure Set_Flag164 (N : Node_Id; Val : Boolean) is
6055 pragma Assert (Nkind (N) in N_Entity);
6058 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag164
:= Val
;
6061 procedure Set_Flag165
(N
: Node_Id
; Val
: Boolean) is
6063 pragma Assert
(Nkind
(N
) in N_Entity
);
6066 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag165 := Val;
6069 procedure Set_Flag166 (N : Node_Id; Val : Boolean) is
6071 pragma Assert (Nkind (N) in N_Entity);
6074 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag166
:= Val
;
6077 procedure Set_Flag167
(N
: Node_Id
; Val
: Boolean) is
6079 pragma Assert
(Nkind
(N
) in N_Entity
);
6082 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag167 := Val;
6085 procedure Set_Flag168 (N : Node_Id; Val : Boolean) is
6087 pragma Assert (Nkind (N) in N_Entity);
6090 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag168
:= Val
;
6093 procedure Set_Flag169
(N
: Node_Id
; Val
: Boolean) is
6095 pragma Assert
(Nkind
(N
) in N_Entity
);
6098 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag169 := Val;
6101 procedure Set_Flag170 (N : Node_Id; Val : Boolean) is
6103 pragma Assert (Nkind (N) in N_Entity);
6106 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag170
:= Val
;
6109 procedure Set_Flag171
(N
: Node_Id
; Val
: Boolean) is
6111 pragma Assert
(Nkind
(N
) in N_Entity
);
6114 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag171 := Val;
6117 procedure Set_Flag172 (N : Node_Id; Val : Boolean) is
6119 pragma Assert (Nkind (N) in N_Entity);
6122 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag172
:= Val
;
6125 procedure Set_Flag173
(N
: Node_Id
; Val
: Boolean) is
6127 pragma Assert
(Nkind
(N
) in N_Entity
);
6130 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag173 := Val;
6133 procedure Set_Flag174 (N : Node_Id; Val : Boolean) is
6135 pragma Assert (Nkind (N) in N_Entity);
6138 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag174
:= Val
;
6141 procedure Set_Flag175
(N
: Node_Id
; Val
: Boolean) is
6143 pragma Assert
(Nkind
(N
) in N_Entity
);
6146 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag175 := Val;
6149 procedure Set_Flag176 (N : Node_Id; Val : Boolean) is
6151 pragma Assert (Nkind (N) in N_Entity);
6154 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag176
:= Val
;
6157 procedure Set_Flag177
(N
: Node_Id
; Val
: Boolean) is
6159 pragma Assert
(Nkind
(N
) in N_Entity
);
6162 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag177 := Val;
6165 procedure Set_Flag178 (N : Node_Id; Val : Boolean) is
6167 pragma Assert (Nkind (N) in N_Entity);
6170 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag178
:= Val
;
6173 procedure Set_Flag179
(N
: Node_Id
; Val
: Boolean) is
6175 pragma Assert
(Nkind
(N
) in N_Entity
);
6178 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag179 := Val;
6181 procedure Set_Flag180 (N : Node_Id; Val : Boolean) is
6183 pragma Assert (Nkind (N) in N_Entity);
6186 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag180
:= Val
;
6189 procedure Set_Flag181
(N
: Node_Id
; Val
: Boolean) is
6191 pragma Assert
(Nkind
(N
) in N_Entity
);
6194 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag181 := Val;
6197 procedure Set_Flag182 (N : Node_Id; Val : Boolean) is
6199 pragma Assert (Nkind (N) in N_Entity);
6202 (Nodes
.Table
(N
+ 3).Field11
'Unrestricted_Access)).Flag182
:= Val
;
6205 procedure Set_Flag183
(N
: Node_Id
; Val
: Boolean) is
6207 pragma Assert
(Nkind
(N
) in N_Entity
);
6210 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag183 := Val;
6213 procedure Set_Flag184 (N : Node_Id; Val : Boolean) is
6215 pragma Assert (Nkind (N) in N_Entity);
6218 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag184
:= Val
;
6221 procedure Set_Flag185
(N
: Node_Id
; Val
: Boolean) is
6223 pragma Assert
(Nkind
(N
) in N_Entity
);
6226 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag185 := Val;
6229 procedure Set_Flag186 (N : Node_Id; Val : Boolean) is
6231 pragma Assert (Nkind (N) in N_Entity);
6234 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag186
:= Val
;
6237 procedure Set_Flag187
(N
: Node_Id
; Val
: Boolean) is
6239 pragma Assert
(Nkind
(N
) in N_Entity
);
6242 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag187 := Val;
6245 procedure Set_Flag188 (N : Node_Id; Val : Boolean) is
6247 pragma Assert (Nkind (N) in N_Entity);
6250 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag188
:= Val
;
6253 procedure Set_Flag189
(N
: Node_Id
; Val
: Boolean) is
6255 pragma Assert
(Nkind
(N
) in N_Entity
);
6258 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag189 := Val;
6261 procedure Set_Flag190 (N : Node_Id; Val : Boolean) is
6263 pragma Assert (Nkind (N) in N_Entity);
6266 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag190
:= Val
;
6269 procedure Set_Flag191
(N
: Node_Id
; Val
: Boolean) is
6271 pragma Assert
(Nkind
(N
) in N_Entity
);
6274 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag191 := Val;
6277 procedure Set_Flag192 (N : Node_Id; Val : Boolean) is
6279 pragma Assert (Nkind (N) in N_Entity);
6282 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag192
:= Val
;
6285 procedure Set_Flag193
(N
: Node_Id
; Val
: Boolean) is
6287 pragma Assert
(Nkind
(N
) in N_Entity
);
6290 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag193 := Val;
6293 procedure Set_Flag194 (N : Node_Id; Val : Boolean) is
6295 pragma Assert (Nkind (N) in N_Entity);
6298 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag194
:= Val
;
6301 procedure Set_Flag195
(N
: Node_Id
; Val
: Boolean) is
6303 pragma Assert
(Nkind
(N
) in N_Entity
);
6306 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag195 := Val;
6309 procedure Set_Flag196 (N : Node_Id; Val : Boolean) is
6311 pragma Assert (Nkind (N) in N_Entity);
6314 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag196
:= Val
;
6317 procedure Set_Flag197
(N
: Node_Id
; Val
: Boolean) is
6319 pragma Assert
(Nkind
(N
) in N_Entity
);
6322 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag197 := Val;
6325 procedure Set_Flag198 (N : Node_Id; Val : Boolean) is
6327 pragma Assert (Nkind (N) in N_Entity);
6330 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag198
:= Val
;
6333 procedure Set_Flag199
(N
: Node_Id
; Val
: Boolean) is
6335 pragma Assert
(Nkind
(N
) in N_Entity
);
6338 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag199 := Val;
6341 procedure Set_Flag200 (N : Node_Id; Val : Boolean) is
6343 pragma Assert (Nkind (N) in N_Entity);
6346 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag200
:= Val
;
6349 procedure Set_Flag201
(N
: Node_Id
; Val
: Boolean) is
6351 pragma Assert
(Nkind
(N
) in N_Entity
);
6354 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag201 := Val;
6357 procedure Set_Flag202 (N : Node_Id; Val : Boolean) is
6359 pragma Assert (Nkind (N) in N_Entity);
6362 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag202
:= Val
;
6365 procedure Set_Flag203
(N
: Node_Id
; Val
: Boolean) is
6367 pragma Assert
(Nkind
(N
) in N_Entity
);
6370 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag203 := Val;
6373 procedure Set_Flag204 (N : Node_Id; Val : Boolean) is
6375 pragma Assert (Nkind (N) in N_Entity);
6378 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag204
:= Val
;
6381 procedure Set_Flag205
(N
: Node_Id
; Val
: Boolean) is
6383 pragma Assert
(Nkind
(N
) in N_Entity
);
6386 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag205 := Val;
6389 procedure Set_Flag206 (N : Node_Id; Val : Boolean) is
6391 pragma Assert (Nkind (N) in N_Entity);
6394 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag206
:= Val
;
6397 procedure Set_Flag207
(N
: Node_Id
; Val
: Boolean) is
6399 pragma Assert
(Nkind
(N
) in N_Entity
);
6402 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag207 := Val;
6405 procedure Set_Flag208 (N : Node_Id; Val : Boolean) is
6407 pragma Assert (Nkind (N) in N_Entity);
6410 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag208
:= Val
;
6413 procedure Set_Flag209
(N
: Node_Id
; Val
: Boolean) is
6415 pragma Assert
(Nkind
(N
) in N_Entity
);
6418 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag209 := Val;
6421 procedure Set_Flag210 (N : Node_Id; Val : Boolean) is
6423 pragma Assert (Nkind (N) in N_Entity);
6426 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag210
:= Val
;
6429 procedure Set_Flag211
(N
: Node_Id
; Val
: Boolean) is
6431 pragma Assert
(Nkind
(N
) in N_Entity
);
6434 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag211 := Val;
6437 procedure Set_Flag212 (N : Node_Id; Val : Boolean) is
6439 pragma Assert (Nkind (N) in N_Entity);
6442 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag212
:= Val
;
6445 procedure Set_Flag213
(N
: Node_Id
; Val
: Boolean) is
6447 pragma Assert
(Nkind
(N
) in N_Entity
);
6450 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag213 := Val;
6453 procedure Set_Flag214 (N : Node_Id; Val : Boolean) is
6455 pragma Assert (Nkind (N) in N_Entity);
6458 (Nodes
.Table
(N
+ 4).Field12
'Unrestricted_Access)).Flag214
:= Val
;
6461 procedure Set_Flag215
(N
: Node_Id
; Val
: Boolean) is
6463 pragma Assert
(Nkind
(N
) in N_Entity
);
6466 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag215 := Val;
6469 procedure Set_Flag216 (N : Node_Id; Val : Boolean) is
6471 pragma Assert (Nkind (N) in N_Entity);
6472 Nodes.Table (N + 4).In_List := Val;
6475 procedure Set_Flag217 (N : Node_Id; Val : Boolean) is
6477 pragma Assert (Nkind (N) in N_Entity);
6478 Nodes.Table (N + 4).Has_Aspects := Val;
6481 procedure Set_Flag218 (N : Node_Id; Val : Boolean) is
6483 pragma Assert (Nkind (N) in N_Entity);
6484 Nodes.Table (N + 4).Rewrite_Ins := Val;
6487 procedure Set_Flag219 (N : Node_Id; Val : Boolean) is
6489 pragma Assert (Nkind (N) in N_Entity);
6490 Nodes.Table (N + 4).Analyzed := Val;
6493 procedure Set_Flag220 (N : Node_Id; Val : Boolean) is
6495 pragma Assert (Nkind (N) in N_Entity);
6496 Nodes.Table (N + 4).Comes_From_Source := Val;
6499 procedure Set_Flag221 (N : Node_Id; Val : Boolean) is
6501 pragma Assert (Nkind (N) in N_Entity);
6502 Nodes.Table (N + 4).Error_Posted := Val;
6505 procedure Set_Flag222 (N : Node_Id; Val : Boolean) is
6507 pragma Assert (Nkind (N) in N_Entity);
6508 Nodes.Table (N + 4).Flag4 := Val;
6511 procedure Set_Flag223 (N : Node_Id; Val : Boolean) is
6513 pragma Assert (Nkind (N) in N_Entity);
6514 Nodes.Table (N + 4).Flag5 := Val;
6517 procedure Set_Flag224 (N : Node_Id; Val : Boolean) is
6519 pragma Assert (Nkind (N) in N_Entity);
6520 Nodes.Table (N + 4).Flag6 := Val;
6523 procedure Set_Flag225 (N : Node_Id; Val : Boolean) is
6525 pragma Assert (Nkind (N) in N_Entity);
6526 Nodes.Table (N + 4).Flag7 := Val;
6529 procedure Set_Flag226 (N : Node_Id; Val : Boolean) is
6531 pragma Assert (Nkind (N) in N_Entity);
6532 Nodes.Table (N + 4).Flag8 := Val;
6535 procedure Set_Flag227 (N : Node_Id; Val : Boolean) is
6537 pragma Assert (Nkind (N) in N_Entity);
6538 Nodes.Table (N + 4).Flag9 := Val;
6541 procedure Set_Flag228 (N : Node_Id; Val : Boolean) is
6543 pragma Assert (Nkind (N) in N_Entity);
6544 Nodes.Table (N + 4).Flag10 := Val;
6547 procedure Set_Flag229 (N : Node_Id; Val : Boolean) is
6549 pragma Assert (Nkind (N) in N_Entity);
6550 Nodes.Table (N + 4).Flag11 := Val;
6553 procedure Set_Flag230 (N : Node_Id; Val : Boolean) is
6555 pragma Assert (Nkind (N) in N_Entity);
6556 Nodes.Table (N + 4).Flag12 := Val;
6559 procedure Set_Flag231 (N : Node_Id; Val : Boolean) is
6561 pragma Assert (Nkind (N) in N_Entity);
6562 Nodes.Table (N + 4).Flag13 := Val;
6565 procedure Set_Flag232 (N : Node_Id; Val : Boolean) is
6567 pragma Assert (Nkind (N) in N_Entity);
6568 Nodes.Table (N + 4).Flag14 := Val;
6571 procedure Set_Flag233 (N : Node_Id; Val : Boolean) is
6573 pragma Assert (Nkind (N) in N_Entity);
6574 Nodes.Table (N + 4).Flag15 := Val;
6577 procedure Set_Flag234 (N : Node_Id; Val : Boolean) is
6579 pragma Assert (Nkind (N) in N_Entity);
6580 Nodes.Table (N + 4).Flag16 := Val;
6583 procedure Set_Flag235 (N : Node_Id; Val : Boolean) is
6585 pragma Assert (Nkind (N) in N_Entity);
6586 Nodes.Table (N + 4).Flag17 := Val;
6589 procedure Set_Flag236 (N : Node_Id; Val : Boolean) is
6591 pragma Assert (Nkind (N) in N_Entity);
6592 Nodes.Table (N + 4).Flag18 := Val;
6595 procedure Set_Flag237 (N : Node_Id; Val : Boolean) is
6597 pragma Assert (Nkind (N) in N_Entity);
6598 Nodes.Table (N + 4).Pflag1 := Val;
6601 procedure Set_Flag238 (N : Node_Id; Val : Boolean) is
6603 pragma Assert (Nkind (N) in N_Entity);
6604 Nodes.Table (N + 4).Pflag2 := Val;
6607 procedure Set_Flag239 (N : Node_Id; Val : Boolean) is
6609 pragma Assert (Nkind (N) in N_Entity);
6612 (Nodes
.Table
(N
+ 3).Nkind
'Unrestricted_Access)).Flag239
:= Val
;
6615 procedure Set_Flag240
(N
: Node_Id
; Val
: Boolean) is
6617 pragma Assert
(Nkind
(N
) in N_Entity
);
6620 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag240 := Val;
6623 procedure Set_Flag241 (N : Node_Id; Val : Boolean) is
6625 pragma Assert (Nkind (N) in N_Entity);
6628 (Nodes
.Table
(N
+ 3).Nkind
'Unrestricted_Access)).Flag241
:= Val
;
6631 procedure Set_Flag242
(N
: Node_Id
; Val
: Boolean) is
6633 pragma Assert
(Nkind
(N
) in N_Entity
);
6636 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag242 := Val;
6639 procedure Set_Flag243 (N : Node_Id; Val : Boolean) is
6641 pragma Assert (Nkind (N) in N_Entity);
6644 (Nodes
.Table
(N
+ 3).Nkind
'Unrestricted_Access)).Flag243
:= Val
;
6647 procedure Set_Flag244
(N
: Node_Id
; Val
: Boolean) is
6649 pragma Assert
(Nkind
(N
) in N_Entity
);
6652 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag244 := Val;
6655 procedure Set_Flag245 (N : Node_Id; Val : Boolean) is
6657 pragma Assert (Nkind (N) in N_Entity);
6660 (Nodes
.Table
(N
+ 3).Nkind
'Unrestricted_Access)).Flag245
:= Val
;
6663 procedure Set_Flag246
(N
: Node_Id
; Val
: Boolean) is
6665 pragma Assert
(Nkind
(N
) in N_Entity
);
6668 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag246 := Val;
6671 procedure Set_Flag247 (N : Node_Id; Val : Boolean) is
6673 pragma Assert (Nkind (N) in N_Entity);
6676 (Nodes
.Table
(N
+ 4).Nkind
'Unrestricted_Access)).Flag247
:= Val
;
6679 procedure Set_Flag248
(N
: Node_Id
; Val
: Boolean) is
6681 pragma Assert
(Nkind
(N
) in N_Entity
);
6684 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag248 := Val;
6687 procedure Set_Flag249 (N : Node_Id; Val : Boolean) is
6689 pragma Assert (Nkind (N) in N_Entity);
6692 (Nodes
.Table
(N
+ 4).Nkind
'Unrestricted_Access)).Flag249
:= Val
;
6695 procedure Set_Flag250
(N
: Node_Id
; Val
: Boolean) is
6697 pragma Assert
(Nkind
(N
) in N_Entity
);
6700 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag250 := Val;
6703 procedure Set_Flag251 (N : Node_Id; Val : Boolean) is
6705 pragma Assert (Nkind (N) in N_Entity);
6708 (Nodes
.Table
(N
+ 4).Nkind
'Unrestricted_Access)).Flag251
:= Val
;
6711 procedure Set_Flag252
(N
: Node_Id
; Val
: Boolean) is
6713 pragma Assert
(Nkind
(N
) in N_Entity
);
6716 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag252 := Val;
6719 procedure Set_Flag253 (N : Node_Id; Val : Boolean) is
6721 pragma Assert (Nkind (N) in N_Entity);
6724 (Nodes
.Table
(N
+ 4).Nkind
'Unrestricted_Access)).Flag253
:= Val
;
6727 procedure Set_Flag254
(N
: Node_Id
; Val
: Boolean) is
6729 pragma Assert
(Nkind
(N
) in N_Entity
);
6732 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag254 := Val;
6735 procedure Set_Node1_With_Parent (N : Node_Id; Val : Node_Id) is
6737 pragma Assert (N <= Nodes.Last);
6740 Set_Parent (N => Val, Val => N);
6744 end Set_Node1_With_Parent;
6746 procedure Set_Node2_With_Parent (N : Node_Id; Val : Node_Id) is
6748 pragma Assert (N <= Nodes.Last);
6751 Set_Parent (N => Val, Val => N);
6755 end Set_Node2_With_Parent;
6757 procedure Set_Node3_With_Parent (N : Node_Id; Val : Node_Id) is
6759 pragma Assert (N <= Nodes.Last);
6762 Set_Parent (N => Val, Val => N);
6766 end Set_Node3_With_Parent;
6768 procedure Set_Node4_With_Parent (N : Node_Id; Val : Node_Id) is
6770 pragma Assert (N <= Nodes.Last);
6773 Set_Parent (N => Val, Val => N);
6777 end Set_Node4_With_Parent;
6779 procedure Set_Node5_With_Parent (N : Node_Id; Val : Node_Id) is
6781 pragma Assert (N <= Nodes.Last);
6784 Set_Parent (N => Val, Val => N);
6788 end Set_Node5_With_Parent;
6790 procedure Set_List1_With_Parent (N : Node_Id; Val : List_Id) is
6792 pragma Assert (N <= Nodes.Last);
6793 if Val /= No_List and then Val /= Error_List then
6794 Set_Parent (Val, N);
6797 end Set_List1_With_Parent;
6799 procedure Set_List2_With_Parent (N : Node_Id; Val : List_Id) is
6801 pragma Assert (N <= Nodes.Last);
6802 if Val /= No_List and then Val /= Error_List then
6803 Set_Parent (Val, N);
6806 end Set_List2_With_Parent;
6808 procedure Set_List3_With_Parent (N : Node_Id; Val : List_Id) is
6810 pragma Assert (N <= Nodes.Last);
6811 if Val /= No_List and then Val /= Error_List then
6812 Set_Parent (Val, N);
6815 end Set_List3_With_Parent;
6817 procedure Set_List4_With_Parent (N : Node_Id; Val : List_Id) is
6819 pragma Assert (N <= Nodes.Last);
6820 if Val /= No_List and then Val /= Error_List then
6821 Set_Parent (Val, N);
6824 end Set_List4_With_Parent;
6826 procedure Set_List5_With_Parent (N : Node_Id; Val : List_Id) is
6828 pragma Assert (N <= Nodes.Last);
6829 if Val /= No_List and then Val /= Error_List then
6830 Set_Parent (Val, N);
6833 end Set_List5_With_Parent;
6835 end Unchecked_Access;
6843 Nodes.Locked := False;
6844 Orig_Nodes.Locked := False;