[multiple changes]
[gcc.git] / gcc / ada / atree.adb
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT COMPILER COMPONENTS --
4 -- --
5 -- A T R E E --
6 -- --
7 -- B o d y --
8 -- --
9 -- Copyright (C) 1992-2013, Free Software Foundation, Inc. --
10 -- --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 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. --
17 -- --
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. --
21 -- --
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/>. --
26 -- --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
29 -- --
30 ------------------------------------------------------------------------------
31
32 pragma Style_Checks (All_Checks);
33 -- Turn off subprogram ordering check for this package
34
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.
38
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;
45
46 package body Atree is
47
48 Reporting_Proc : Report_Proc := null;
49 -- Record argument to last call to Set_Reporting_Proc
50
51 ---------------
52 -- Debugging --
53 ---------------
54
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:
57
58 -- One way is to set a conditional breakpoint on New_Node_Debugging_Output
59 -- (nickname "nnd"):
60 -- break nnd if n = 12345
61 -- and run gnat1 again from the beginning.
62
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:
65 -- ww := 12345
66 -- and set a breakpoint on New_Node_Breakpoint (nickname "nn"). Continue.
67
68 -- Either way, gnat1 will stop when node 12345 is created
69
70 -- The second method is much faster
71
72 -- Similarly, rr and rrd allow breaking on rewriting of a given node
73
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.
82
83 procedure nn;
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.
88
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.
94 --
95 -- If Node = Watch_Node, this prints out the new node and calls
96 -- New_Node_Breakpoint. Otherwise, does nothing.
97
98 procedure rr;
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.
103
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.
110 --
111 -- If Old_Node = Watch_Node, this prints out the old and new nodes and
112 -- calls Rewrite_Breakpoint. Otherwise, does nothing.
113
114 procedure Node_Debug_Output (Op : String; N : Node_Id);
115 -- Common code for nnd and rrd, writes Op followed by information about N
116
117 -----------------------------
118 -- Local Objects and Types --
119 -----------------------------
120
121 Node_Count : Nat;
122 -- Count allocated nodes for Num_Nodes function
123
124 use Unchecked_Access;
125 -- We are allowed to see these from within our own body!
126
127 use Atree_Private_Part;
128 -- We are also allowed to see our private data structures!
129
130 -- Functions used to store Entity_Kind value in Nkind field
131
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.
134
135 type Flag_Byte is record
136 Flag65 : Boolean;
137 Flag66 : Boolean;
138 Flag67 : Boolean;
139 Flag68 : Boolean;
140 Flag69 : Boolean;
141 Flag70 : Boolean;
142 Flag71 : Boolean;
143 Flag72 : Boolean;
144 end record;
145
146 pragma Pack (Flag_Byte);
147 for Flag_Byte'Size use 8;
148
149 type Flag_Byte_Ptr is access all Flag_Byte;
150 type Node_Kind_Ptr is access all Node_Kind;
151
152 function To_Flag_Byte is new
153 Unchecked_Conversion (Node_Kind, Flag_Byte);
154
155 function To_Flag_Byte_Ptr is new
156 Unchecked_Conversion (Node_Kind_Ptr, Flag_Byte_Ptr);
157
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.
160
161 type Flag_Byte2 is record
162 Flag239 : Boolean;
163 Flag240 : Boolean;
164 Flag241 : Boolean;
165 Flag242 : Boolean;
166 Flag243 : Boolean;
167 Flag244 : Boolean;
168 Flag245 : Boolean;
169 Flag246 : Boolean;
170 end record;
171
172 pragma Pack (Flag_Byte2);
173 for Flag_Byte2'Size use 8;
174
175 type Flag_Byte2_Ptr is access all Flag_Byte2;
176
177 function To_Flag_Byte2 is new
178 Unchecked_Conversion (Node_Kind, Flag_Byte2);
179
180 function To_Flag_Byte2_Ptr is new
181 Unchecked_Conversion (Node_Kind_Ptr, Flag_Byte2_Ptr);
182
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.
185
186 type Flag_Byte3 is record
187 Flag247 : Boolean;
188 Flag248 : Boolean;
189 Flag249 : Boolean;
190 Flag250 : Boolean;
191 Flag251 : Boolean;
192 Flag252 : Boolean;
193 Flag253 : Boolean;
194 Flag254 : Boolean;
195 end record;
196
197 pragma Pack (Flag_Byte3);
198 for Flag_Byte3'Size use 8;
199
200 type Flag_Byte3_Ptr is access all Flag_Byte3;
201
202 function To_Flag_Byte3 is new
203 Unchecked_Conversion (Node_Kind, Flag_Byte3);
204
205 function To_Flag_Byte3_Ptr is new
206 Unchecked_Conversion (Node_Kind_Ptr, Flag_Byte3_Ptr);
207
208 -- The following declarations are used to store flags 310-317 in the
209 -- Nkind field of the sixth component of an extended (entity) node.
210
211 type Flag_Byte4 is record
212 Flag310 : Boolean;
213 Flag311 : Boolean;
214 Flag312 : Boolean;
215 Flag313 : Boolean;
216 Flag314 : Boolean;
217 Flag315 : Boolean;
218 Flag316 : Boolean;
219 Flag317 : Boolean;
220 end record;
221
222 pragma Pack (Flag_Byte4);
223 for Flag_Byte4'Size use 8;
224
225 type Flag_Byte4_Ptr is access all Flag_Byte4;
226
227 function To_Flag_Byte4 is new
228 Unchecked_Conversion (Node_Kind, Flag_Byte4);
229
230 function To_Flag_Byte4_Ptr is new
231 Unchecked_Conversion (Node_Kind_Ptr, Flag_Byte4_Ptr);
232
233 -- The following declarations are used to store flags 73-96 and the
234 -- Convention field in the Field12 field of the third component of an
235 -- extended (Entity) node.
236
237 type Flag_Word is record
238 Flag73 : Boolean;
239 Flag74 : Boolean;
240 Flag75 : Boolean;
241 Flag76 : Boolean;
242 Flag77 : Boolean;
243 Flag78 : Boolean;
244 Flag79 : Boolean;
245 Flag80 : Boolean;
246
247 Flag81 : Boolean;
248 Flag82 : Boolean;
249 Flag83 : Boolean;
250 Flag84 : Boolean;
251 Flag85 : Boolean;
252 Flag86 : Boolean;
253 Flag87 : Boolean;
254 Flag88 : Boolean;
255
256 Flag89 : Boolean;
257 Flag90 : Boolean;
258 Flag91 : Boolean;
259 Flag92 : Boolean;
260 Flag93 : Boolean;
261 Flag94 : Boolean;
262 Flag95 : Boolean;
263 Flag96 : Boolean;
264
265 Convention : Convention_Id;
266 end record;
267
268 pragma Pack (Flag_Word);
269 for Flag_Word'Size use 32;
270 for Flag_Word'Alignment use 4;
271
272 type Flag_Word_Ptr is access all Flag_Word;
273 type Union_Id_Ptr is access all Union_Id;
274
275 function To_Flag_Word is new
276 Unchecked_Conversion (Union_Id, Flag_Word);
277
278 function To_Flag_Word_Ptr is new
279 Unchecked_Conversion (Union_Id_Ptr, Flag_Word_Ptr);
280
281 -- The following declarations are used to store flags 97-128 in the
282 -- Field12 field of the fourth component of an extended (entity) node.
283
284 type Flag_Word2 is record
285 Flag97 : Boolean;
286 Flag98 : Boolean;
287 Flag99 : Boolean;
288 Flag100 : Boolean;
289 Flag101 : Boolean;
290 Flag102 : Boolean;
291 Flag103 : Boolean;
292 Flag104 : Boolean;
293
294 Flag105 : Boolean;
295 Flag106 : Boolean;
296 Flag107 : Boolean;
297 Flag108 : Boolean;
298 Flag109 : Boolean;
299 Flag110 : Boolean;
300 Flag111 : Boolean;
301 Flag112 : Boolean;
302
303 Flag113 : Boolean;
304 Flag114 : Boolean;
305 Flag115 : Boolean;
306 Flag116 : Boolean;
307 Flag117 : Boolean;
308 Flag118 : Boolean;
309 Flag119 : Boolean;
310 Flag120 : Boolean;
311
312 Flag121 : Boolean;
313 Flag122 : Boolean;
314 Flag123 : Boolean;
315 Flag124 : Boolean;
316 Flag125 : Boolean;
317 Flag126 : Boolean;
318 Flag127 : Boolean;
319 Flag128 : Boolean;
320 end record;
321
322 pragma Pack (Flag_Word2);
323 for Flag_Word2'Size use 32;
324 for Flag_Word2'Alignment use 4;
325
326 type Flag_Word2_Ptr is access all Flag_Word2;
327
328 function To_Flag_Word2 is new
329 Unchecked_Conversion (Union_Id, Flag_Word2);
330
331 function To_Flag_Word2_Ptr is new
332 Unchecked_Conversion (Union_Id_Ptr, Flag_Word2_Ptr);
333
334 -- The following declarations are used to store flags 152-183 in the
335 -- Field11 field of the fourth component of an extended (entity) node.
336
337 type Flag_Word3 is record
338 Flag152 : Boolean;
339 Flag153 : Boolean;
340 Flag154 : Boolean;
341 Flag155 : Boolean;
342 Flag156 : Boolean;
343 Flag157 : Boolean;
344 Flag158 : Boolean;
345 Flag159 : Boolean;
346
347 Flag160 : Boolean;
348 Flag161 : Boolean;
349 Flag162 : Boolean;
350 Flag163 : Boolean;
351 Flag164 : Boolean;
352 Flag165 : Boolean;
353 Flag166 : Boolean;
354 Flag167 : Boolean;
355
356 Flag168 : Boolean;
357 Flag169 : Boolean;
358 Flag170 : Boolean;
359 Flag171 : Boolean;
360 Flag172 : Boolean;
361 Flag173 : Boolean;
362 Flag174 : Boolean;
363 Flag175 : Boolean;
364
365 Flag176 : Boolean;
366 Flag177 : Boolean;
367 Flag178 : Boolean;
368 Flag179 : Boolean;
369 Flag180 : Boolean;
370 Flag181 : Boolean;
371 Flag182 : Boolean;
372 Flag183 : Boolean;
373 end record;
374
375 pragma Pack (Flag_Word3);
376 for Flag_Word3'Size use 32;
377 for Flag_Word3'Alignment use 4;
378
379 type Flag_Word3_Ptr is access all Flag_Word3;
380
381 function To_Flag_Word3 is new
382 Unchecked_Conversion (Union_Id, Flag_Word3);
383
384 function To_Flag_Word3_Ptr is new
385 Unchecked_Conversion (Union_Id_Ptr, Flag_Word3_Ptr);
386
387 -- The following declarations are used to store flags 184-215 in the
388 -- Field12 field of the fifth component of an extended (entity) node.
389
390 type Flag_Word4 is record
391 Flag184 : Boolean;
392 Flag185 : Boolean;
393 Flag186 : Boolean;
394 Flag187 : Boolean;
395 Flag188 : Boolean;
396 Flag189 : Boolean;
397 Flag190 : Boolean;
398 Flag191 : Boolean;
399
400 Flag192 : Boolean;
401 Flag193 : Boolean;
402 Flag194 : Boolean;
403 Flag195 : Boolean;
404 Flag196 : Boolean;
405 Flag197 : Boolean;
406 Flag198 : Boolean;
407 Flag199 : Boolean;
408
409 Flag200 : Boolean;
410 Flag201 : Boolean;
411 Flag202 : Boolean;
412 Flag203 : Boolean;
413 Flag204 : Boolean;
414 Flag205 : Boolean;
415 Flag206 : Boolean;
416 Flag207 : Boolean;
417
418 Flag208 : Boolean;
419 Flag209 : Boolean;
420 Flag210 : Boolean;
421 Flag211 : Boolean;
422 Flag212 : Boolean;
423 Flag213 : Boolean;
424 Flag214 : Boolean;
425 Flag215 : Boolean;
426 end record;
427
428 pragma Pack (Flag_Word4);
429 for Flag_Word4'Size use 32;
430 for Flag_Word4'Alignment use 4;
431
432 type Flag_Word4_Ptr is access all Flag_Word4;
433
434 function To_Flag_Word4 is new
435 Unchecked_Conversion (Union_Id, Flag_Word4);
436
437 function To_Flag_Word4_Ptr is new
438 Unchecked_Conversion (Union_Id_Ptr, Flag_Word4_Ptr);
439
440 -- The following declarations are used to store flags 255-286 in the
441 -- Field12 field of the sixth component of an extended (entity) node.
442
443 type Flag_Word5 is record
444 Flag255 : Boolean;
445 Flag256 : Boolean;
446 Flag257 : Boolean;
447 Flag258 : Boolean;
448 Flag259 : Boolean;
449 Flag260 : Boolean;
450 Flag261 : Boolean;
451 Flag262 : Boolean;
452
453 Flag263 : Boolean;
454 Flag264 : Boolean;
455 Flag265 : Boolean;
456 Flag266 : Boolean;
457 Flag267 : Boolean;
458 Flag268 : Boolean;
459 Flag269 : Boolean;
460 Flag270 : Boolean;
461
462 Flag271 : Boolean;
463 Flag272 : Boolean;
464 Flag273 : Boolean;
465 Flag274 : Boolean;
466 Flag275 : Boolean;
467 Flag276 : Boolean;
468 Flag277 : Boolean;
469 Flag278 : Boolean;
470
471 Flag279 : Boolean;
472 Flag280 : Boolean;
473 Flag281 : Boolean;
474 Flag282 : Boolean;
475 Flag283 : Boolean;
476 Flag284 : Boolean;
477 Flag285 : Boolean;
478 Flag286 : Boolean;
479 end record;
480
481 pragma Pack (Flag_Word5);
482 for Flag_Word5'Size use 32;
483 for Flag_Word5'Alignment use 4;
484
485 type Flag_Word5_Ptr is access all Flag_Word5;
486
487 function To_Flag_Word5 is new
488 Unchecked_Conversion (Union_Id, Flag_Word5);
489
490 function To_Flag_Word5_Ptr is new
491 Unchecked_Conversion (Union_Id_Ptr, Flag_Word5_Ptr);
492
493 --------------------------------------------------
494 -- Implementation of Tree Substitution Routines --
495 --------------------------------------------------
496
497 -- A separate table keeps track of the mapping between rewritten nodes
498 -- and their corresponding original tree nodes. Rewrite makes an entry
499 -- in this table for use by Original_Node. By default, if no call is
500 -- Rewrite, the entry in this table points to the original unwritten node.
501
502 -- Note: eventually, this should be a field in the Node directly, but
503 -- for now we do not want to disturb the efficiency of a power of 2
504 -- for the node size
505
506 package Orig_Nodes is new Table.Table (
507 Table_Component_Type => Node_Id,
508 Table_Index_Type => Node_Id'Base,
509 Table_Low_Bound => First_Node_Id,
510 Table_Initial => Alloc.Orig_Nodes_Initial,
511 Table_Increment => Alloc.Orig_Nodes_Increment,
512 Table_Name => "Orig_Nodes");
513
514 --------------------------
515 -- Paren_Count Handling --
516 --------------------------
517
518 -- As noted in the spec, the paren count in a sub-expression node has
519 -- four possible values 0,1,2, and 3. The value 3 really means 3 or more,
520 -- and we use an auxiliary serially scanned table to record the actual
521 -- count. A serial search is fine, only pathological programs will use
522 -- entries in this table. Normal programs won't use it at all.
523
524 type Paren_Count_Entry is record
525 Nod : Node_Id;
526 -- The node to which this count applies
527
528 Count : Nat range 3 .. Nat'Last;
529 -- The count of parentheses, which will be in the indicated range
530 end record;
531
532 package Paren_Counts is new Table.Table (
533 Table_Component_Type => Paren_Count_Entry,
534 Table_Index_Type => Int,
535 Table_Low_Bound => 0,
536 Table_Initial => 10,
537 Table_Increment => 200,
538 Table_Name => "Paren_Counts");
539
540 -----------------------
541 -- Local Subprograms --
542 -----------------------
543
544 procedure Fix_Parents (Ref_Node, Fix_Node : Node_Id);
545 -- Fixup parent pointers for the syntactic children of Fix_Node after
546 -- a copy, setting them to Fix_Node when they pointed to Ref_Node.
547
548 function Allocate_Initialize_Node
549 (Src : Node_Id;
550 With_Extension : Boolean) return Node_Id;
551 -- Allocate a new node or node extension. If Src is not empty, the
552 -- information for the newly-allocated node is copied from it.
553
554 ------------------------------
555 -- Allocate_Initialize_Node --
556 ------------------------------
557
558 function Allocate_Initialize_Node
559 (Src : Node_Id;
560 With_Extension : Boolean) return Node_Id
561 is
562 New_Id : Node_Id;
563
564 begin
565 if Present (Src)
566 and then not Has_Extension (Src)
567 and then With_Extension
568 and then Src = Nodes.Last
569 then
570 New_Id := Src;
571 else
572 -- We are allocating a new node, or extending a node
573 -- other than Nodes.Last.
574
575 if Present (Src) then
576 Nodes.Append (Nodes.Table (Src));
577 else
578 Nodes.Append (Default_Node);
579 end if;
580
581 New_Id := Nodes.Last;
582 Orig_Nodes.Append (New_Id);
583 Node_Count := Node_Count + 1;
584 end if;
585
586 -- Specifically copy Paren_Count to deal with creating new table entry
587 -- if the parentheses count is at the maximum possible value already.
588
589 if Present (Src) and then Nkind (Src) in N_Subexpr then
590 Set_Paren_Count (New_Id, Paren_Count (Src));
591 end if;
592
593 -- Set extension nodes if required
594
595 if With_Extension then
596 if Present (Src) and then Has_Extension (Src) then
597 for J in 1 .. Num_Extension_Nodes loop
598 Nodes.Append (Nodes.Table (Src + Node_Id (J)));
599 end loop;
600 else
601 for J in 1 .. Num_Extension_Nodes loop
602 Nodes.Append (Default_Node_Extension);
603 end loop;
604 end if;
605 end if;
606
607 Orig_Nodes.Set_Last (Nodes.Last);
608 Allocate_List_Tables (Nodes.Last);
609
610 -- Invoke the reporting procedure (if available)
611
612 if Reporting_Proc /= null then
613 Reporting_Proc.all (Target => New_Id, Source => Src);
614 end if;
615
616 return New_Id;
617 end Allocate_Initialize_Node;
618
619 --------------
620 -- Analyzed --
621 --------------
622
623 function Analyzed (N : Node_Id) return Boolean is
624 begin
625 pragma Assert (N <= Nodes.Last);
626 return Nodes.Table (N).Analyzed;
627 end Analyzed;
628
629 --------------------------
630 -- Basic_Set_Convention --
631 --------------------------
632
633 procedure Basic_Set_Convention (E : Entity_Id; Val : Convention_Id) is
634 begin
635 pragma Assert (Nkind (E) in N_Entity);
636 To_Flag_Word_Ptr
637 (Union_Id_Ptr'
638 (Nodes.Table (E + 2).Field12'Unrestricted_Access)).Convention := Val;
639 end Basic_Set_Convention;
640
641 --------------------------
642 -- Check_Error_Detected --
643 --------------------------
644
645 procedure Check_Error_Detected is
646 begin
647 -- An anomaly has been detected which is assumed to be a consequence of
648 -- a previous serious error or configurable run time violation. Raise
649 -- an exception if no such error has been detected.
650
651 if Serious_Errors_Detected = 0
652 and then Configurable_Run_Time_Violations = 0
653 then
654 raise Program_Error;
655 end if;
656 end Check_Error_Detected;
657
658 -----------------
659 -- Change_Node --
660 -----------------
661
662 procedure Change_Node (N : Node_Id; New_Node_Kind : Node_Kind) is
663 Save_Sloc : constant Source_Ptr := Sloc (N);
664 Save_In_List : constant Boolean := Nodes.Table (N).In_List;
665 Save_Link : constant Union_Id := Nodes.Table (N).Link;
666 Save_CFS : constant Boolean := Nodes.Table (N).Comes_From_Source;
667 Save_Posted : constant Boolean := Nodes.Table (N).Error_Posted;
668 Par_Count : Nat := 0;
669
670 begin
671 if Nkind (N) in N_Subexpr then
672 Par_Count := Paren_Count (N);
673 end if;
674
675 Nodes.Table (N) := Default_Node;
676 Nodes.Table (N).Sloc := Save_Sloc;
677 Nodes.Table (N).In_List := Save_In_List;
678 Nodes.Table (N).Link := Save_Link;
679 Nodes.Table (N).Comes_From_Source := Save_CFS;
680 Nodes.Table (N).Nkind := New_Node_Kind;
681 Nodes.Table (N).Error_Posted := Save_Posted;
682
683 if New_Node_Kind in N_Subexpr then
684 Set_Paren_Count (N, Par_Count);
685 end if;
686 end Change_Node;
687
688 -----------------------
689 -- Comes_From_Source --
690 -----------------------
691
692 function Comes_From_Source (N : Node_Id) return Boolean is
693 begin
694 pragma Assert (N <= Nodes.Last);
695 return Nodes.Table (N).Comes_From_Source;
696 end Comes_From_Source;
697
698 ----------------
699 -- Convention --
700 ----------------
701
702 function Convention (E : Entity_Id) return Convention_Id is
703 begin
704 pragma Assert (Nkind (E) in N_Entity);
705 return To_Flag_Word (Nodes.Table (E + 2).Field12).Convention;
706 end Convention;
707
708 ---------------
709 -- Copy_Node --
710 ---------------
711
712 procedure Copy_Node (Source : Node_Id; Destination : Node_Id) is
713 Save_In_List : constant Boolean := Nodes.Table (Destination).In_List;
714 Save_Link : constant Union_Id := Nodes.Table (Destination).Link;
715
716 begin
717 Nodes.Table (Destination) := Nodes.Table (Source);
718 Nodes.Table (Destination).In_List := Save_In_List;
719 Nodes.Table (Destination).Link := Save_Link;
720
721 -- Specifically set Paren_Count to make sure auxiliary table entry
722 -- gets correctly made if the parentheses count is at the max value.
723
724 if Nkind (Destination) in N_Subexpr then
725 Set_Paren_Count (Destination, Paren_Count (Source));
726 end if;
727
728 -- Deal with copying extension nodes if present
729
730 if Has_Extension (Source) then
731 pragma Assert (Has_Extension (Destination));
732 Nodes.Table (Destination + 1) := Nodes.Table (Source + 1);
733 Nodes.Table (Destination + 2) := Nodes.Table (Source + 2);
734 Nodes.Table (Destination + 3) := Nodes.Table (Source + 3);
735 Nodes.Table (Destination + 4) := Nodes.Table (Source + 4);
736 Nodes.Table (Destination + 5) := Nodes.Table (Source + 5);
737
738 else
739 pragma Assert (not Has_Extension (Source));
740 null;
741 end if;
742 end Copy_Node;
743
744 ------------------------
745 -- Copy_Separate_List --
746 ------------------------
747
748 function Copy_Separate_List (Source : List_Id) return List_Id is
749 Result : constant List_Id := New_List;
750 Nod : Node_Id;
751
752 begin
753 Nod := First (Source);
754 while Present (Nod) loop
755 Append (Copy_Separate_Tree (Nod), Result);
756 Next (Nod);
757 end loop;
758
759 return Result;
760 end Copy_Separate_List;
761
762 ------------------------
763 -- Copy_Separate_Tree --
764 ------------------------
765
766 function Copy_Separate_Tree (Source : Node_Id) return Node_Id is
767 New_Id : Node_Id;
768
769 function Copy_Entity (E : Entity_Id) return Entity_Id;
770 -- Copy Entity, copying only the Ekind and Chars fields
771
772 function Copy_List (List : List_Id) return List_Id;
773 -- Copy list
774
775 function Possible_Copy (Field : Union_Id) return Union_Id;
776 -- Given a field, returns a copy of the node or list if its parent
777 -- is the current source node, and otherwise returns the input
778
779 -----------------
780 -- Copy_Entity --
781 -----------------
782
783 function Copy_Entity (E : Entity_Id) return Entity_Id is
784 New_Ent : Entity_Id;
785
786 begin
787 case N_Entity (Nkind (E)) is
788 when N_Defining_Identifier =>
789 New_Ent := New_Entity (N_Defining_Identifier, Sloc (E));
790
791 when N_Defining_Character_Literal =>
792 New_Ent := New_Entity (N_Defining_Character_Literal, Sloc (E));
793
794 when N_Defining_Operator_Symbol =>
795 New_Ent := New_Entity (N_Defining_Operator_Symbol, Sloc (E));
796 end case;
797
798 Set_Chars (New_Ent, Chars (E));
799 return New_Ent;
800 end Copy_Entity;
801
802 ---------------
803 -- Copy_List --
804 ---------------
805
806 function Copy_List (List : List_Id) return List_Id is
807 NL : List_Id;
808 E : Node_Id;
809
810 begin
811 if List = No_List then
812 return No_List;
813
814 else
815 NL := New_List;
816
817 E := First (List);
818 while Present (E) loop
819 if Has_Extension (E) then
820 Append (Copy_Entity (E), NL);
821 else
822 Append (Copy_Separate_Tree (E), NL);
823 end if;
824
825 Next (E);
826 end loop;
827
828 return NL;
829 end if;
830 end Copy_List;
831
832 -------------------
833 -- Possible_Copy --
834 -------------------
835
836 function Possible_Copy (Field : Union_Id) return Union_Id is
837 New_N : Union_Id;
838
839 begin
840 if Field in Node_Range then
841 New_N := Union_Id (Copy_Separate_Tree (Node_Id (Field)));
842
843 if Parent (Node_Id (Field)) = Source then
844 Set_Parent (Node_Id (New_N), New_Id);
845 end if;
846
847 return New_N;
848
849 elsif Field in List_Range then
850 New_N := Union_Id (Copy_List (List_Id (Field)));
851
852 if Parent (List_Id (Field)) = Source then
853 Set_Parent (List_Id (New_N), New_Id);
854 end if;
855
856 return New_N;
857
858 else
859 return Field;
860 end if;
861 end Possible_Copy;
862
863 -- Start of processing for Copy_Separate_Tree
864
865 begin
866 if Source <= Empty_Or_Error then
867 return Source;
868
869 elsif Has_Extension (Source) then
870 return Copy_Entity (Source);
871
872 else
873 New_Id := New_Copy (Source);
874
875 -- Recursively copy descendents
876
877 Set_Field1 (New_Id, Possible_Copy (Field1 (New_Id)));
878 Set_Field2 (New_Id, Possible_Copy (Field2 (New_Id)));
879 Set_Field3 (New_Id, Possible_Copy (Field3 (New_Id)));
880 Set_Field4 (New_Id, Possible_Copy (Field4 (New_Id)));
881 Set_Field5 (New_Id, Possible_Copy (Field5 (New_Id)));
882
883 -- Set Entity field to Empty to ensure that no entity references
884 -- are shared between the two, if the source is already analyzed.
885
886 if Nkind (New_Id) in N_Has_Entity
887 or else Nkind (New_Id) = N_Freeze_Entity
888 then
889 Set_Entity (New_Id, Empty);
890 end if;
891
892 -- All done, return copied node
893
894 return New_Id;
895 end if;
896 end Copy_Separate_Tree;
897
898 -----------
899 -- Ekind --
900 -----------
901
902 function Ekind (E : Entity_Id) return Entity_Kind is
903 begin
904 pragma Assert (Nkind (E) in N_Entity);
905 return N_To_E (Nodes.Table (E + 1).Nkind);
906 end Ekind;
907
908 --------------
909 -- Ekind_In --
910 --------------
911
912 function Ekind_In
913 (T : Entity_Kind;
914 V1 : Entity_Kind;
915 V2 : Entity_Kind) return Boolean
916 is
917 begin
918 return T = V1 or else
919 T = V2;
920 end Ekind_In;
921
922 function Ekind_In
923 (T : Entity_Kind;
924 V1 : Entity_Kind;
925 V2 : Entity_Kind;
926 V3 : Entity_Kind) return Boolean
927 is
928 begin
929 return T = V1 or else
930 T = V2 or else
931 T = V3;
932 end Ekind_In;
933
934 function Ekind_In
935 (T : Entity_Kind;
936 V1 : Entity_Kind;
937 V2 : Entity_Kind;
938 V3 : Entity_Kind;
939 V4 : Entity_Kind) return Boolean
940 is
941 begin
942 return T = V1 or else
943 T = V2 or else
944 T = V3 or else
945 T = V4;
946 end Ekind_In;
947
948 function Ekind_In
949 (T : Entity_Kind;
950 V1 : Entity_Kind;
951 V2 : Entity_Kind;
952 V3 : Entity_Kind;
953 V4 : Entity_Kind;
954 V5 : Entity_Kind) return Boolean
955 is
956 begin
957 return T = V1 or else
958 T = V2 or else
959 T = V3 or else
960 T = V4 or else
961 T = V5;
962 end Ekind_In;
963
964 function Ekind_In
965 (T : Entity_Kind;
966 V1 : Entity_Kind;
967 V2 : Entity_Kind;
968 V3 : Entity_Kind;
969 V4 : Entity_Kind;
970 V5 : Entity_Kind;
971 V6 : Entity_Kind) return Boolean
972 is
973 begin
974 return T = V1 or else
975 T = V2 or else
976 T = V3 or else
977 T = V4 or else
978 T = V5 or else
979 T = V6;
980 end Ekind_In;
981
982 function Ekind_In
983 (T : Entity_Kind;
984 V1 : Entity_Kind;
985 V2 : Entity_Kind;
986 V3 : Entity_Kind;
987 V4 : Entity_Kind;
988 V5 : Entity_Kind;
989 V6 : Entity_Kind;
990 V7 : Entity_Kind) return Boolean
991 is
992 begin
993 return T = V1 or else
994 T = V2 or else
995 T = V3 or else
996 T = V4 or else
997 T = V5 or else
998 T = V6 or else
999 T = V7;
1000 end Ekind_In;
1001
1002 function Ekind_In
1003 (E : Entity_Id;
1004 V1 : Entity_Kind;
1005 V2 : Entity_Kind) return Boolean
1006 is
1007 begin
1008 return Ekind_In (Ekind (E), V1, V2);
1009 end Ekind_In;
1010
1011 function Ekind_In
1012 (E : Entity_Id;
1013 V1 : Entity_Kind;
1014 V2 : Entity_Kind;
1015 V3 : Entity_Kind) return Boolean
1016 is
1017 begin
1018 return Ekind_In (Ekind (E), V1, V2, V3);
1019 end Ekind_In;
1020
1021 function Ekind_In
1022 (E : Entity_Id;
1023 V1 : Entity_Kind;
1024 V2 : Entity_Kind;
1025 V3 : Entity_Kind;
1026 V4 : Entity_Kind) return Boolean
1027 is
1028 begin
1029 return Ekind_In (Ekind (E), V1, V2, V3, V4);
1030 end Ekind_In;
1031
1032 function Ekind_In
1033 (E : Entity_Id;
1034 V1 : Entity_Kind;
1035 V2 : Entity_Kind;
1036 V3 : Entity_Kind;
1037 V4 : Entity_Kind;
1038 V5 : Entity_Kind) return Boolean
1039 is
1040 begin
1041 return Ekind_In (Ekind (E), V1, V2, V3, V4, V5);
1042 end Ekind_In;
1043
1044 function Ekind_In
1045 (E : Entity_Id;
1046 V1 : Entity_Kind;
1047 V2 : Entity_Kind;
1048 V3 : Entity_Kind;
1049 V4 : Entity_Kind;
1050 V5 : Entity_Kind;
1051 V6 : Entity_Kind) return Boolean
1052 is
1053 begin
1054 return Ekind_In (Ekind (E), V1, V2, V3, V4, V5, V6);
1055 end Ekind_In;
1056
1057 function Ekind_In
1058 (E : Entity_Id;
1059 V1 : Entity_Kind;
1060 V2 : Entity_Kind;
1061 V3 : Entity_Kind;
1062 V4 : Entity_Kind;
1063 V5 : Entity_Kind;
1064 V6 : Entity_Kind;
1065 V7 : Entity_Kind) return Boolean
1066 is
1067 begin
1068 return Ekind_In (Ekind (E), V1, V2, V3, V4, V5, V6, V7);
1069 end Ekind_In;
1070
1071 ------------------------
1072 -- Set_Reporting_Proc --
1073 ------------------------
1074
1075 procedure Set_Reporting_Proc (P : Report_Proc) is
1076 begin
1077 pragma Assert (Reporting_Proc = null);
1078 Reporting_Proc := P;
1079 end Set_Reporting_Proc;
1080
1081 ------------------
1082 -- Error_Posted --
1083 ------------------
1084
1085 function Error_Posted (N : Node_Id) return Boolean is
1086 begin
1087 pragma Assert (N <= Nodes.Last);
1088 return Nodes.Table (N).Error_Posted;
1089 end Error_Posted;
1090
1091 -----------------------
1092 -- Exchange_Entities --
1093 -----------------------
1094
1095 procedure Exchange_Entities (E1 : Entity_Id; E2 : Entity_Id) is
1096 Temp_Ent : Node_Record;
1097
1098 begin
1099 pragma Assert (Has_Extension (E1)
1100 and then Has_Extension (E2)
1101 and then not Nodes.Table (E1).In_List
1102 and then not Nodes.Table (E2).In_List);
1103
1104 -- Exchange the contents of the two entities
1105
1106 Temp_Ent := Nodes.Table (E1);
1107 Nodes.Table (E1) := Nodes.Table (E2);
1108 Nodes.Table (E2) := Temp_Ent;
1109
1110 Temp_Ent := Nodes.Table (E1 + 1);
1111 Nodes.Table (E1 + 1) := Nodes.Table (E2 + 1);
1112 Nodes.Table (E2 + 1) := Temp_Ent;
1113
1114 Temp_Ent := Nodes.Table (E1 + 2);
1115 Nodes.Table (E1 + 2) := Nodes.Table (E2 + 2);
1116 Nodes.Table (E2 + 2) := Temp_Ent;
1117
1118 Temp_Ent := Nodes.Table (E1 + 3);
1119 Nodes.Table (E1 + 3) := Nodes.Table (E2 + 3);
1120 Nodes.Table (E2 + 3) := Temp_Ent;
1121
1122 Temp_Ent := Nodes.Table (E1 + 4);
1123 Nodes.Table (E1 + 4) := Nodes.Table (E2 + 4);
1124 Nodes.Table (E2 + 4) := Temp_Ent;
1125
1126 Temp_Ent := Nodes.Table (E1 + 5);
1127 Nodes.Table (E1 + 5) := Nodes.Table (E2 + 5);
1128 Nodes.Table (E2 + 5) := Temp_Ent;
1129
1130 -- That exchange exchanged the parent pointers as well, which is what
1131 -- we want, but we need to patch up the defining identifier pointers
1132 -- in the parent nodes (the child pointers) to match this switch
1133 -- unless for Implicit types entities which have no parent, in which
1134 -- case we don't do anything otherwise we won't be able to revert back
1135 -- to the original situation.
1136
1137 -- Shouldn't this use Is_Itype instead of the Parent test
1138
1139 if Present (Parent (E1)) and then Present (Parent (E2)) then
1140 Set_Defining_Identifier (Parent (E1), E1);
1141 Set_Defining_Identifier (Parent (E2), E2);
1142 end if;
1143 end Exchange_Entities;
1144
1145 -----------------
1146 -- Extend_Node --
1147 -----------------
1148
1149 function Extend_Node (Node : Node_Id) return Entity_Id is
1150 Result : Entity_Id;
1151
1152 procedure Debug_Extend_Node;
1153 pragma Inline (Debug_Extend_Node);
1154 -- Debug routine for debug flag N
1155
1156 -----------------------
1157 -- Debug_Extend_Node --
1158 -----------------------
1159
1160 procedure Debug_Extend_Node is
1161 begin
1162 if Debug_Flag_N then
1163 Write_Str ("Extend node ");
1164 Write_Int (Int (Node));
1165
1166 if Result = Node then
1167 Write_Str (" in place");
1168 else
1169 Write_Str (" copied to ");
1170 Write_Int (Int (Result));
1171 end if;
1172
1173 -- Write_Eol;
1174 end if;
1175 end Debug_Extend_Node;
1176
1177 -- Start of processing for Extend_Node
1178
1179 begin
1180 pragma Assert (not (Has_Extension (Node)));
1181 Result := Allocate_Initialize_Node (Node, With_Extension => True);
1182 pragma Debug (Debug_Extend_Node);
1183 return Result;
1184 end Extend_Node;
1185
1186 -----------------
1187 -- Fix_Parents --
1188 -----------------
1189
1190 procedure Fix_Parents (Ref_Node, Fix_Node : Node_Id) is
1191
1192 procedure Fix_Parent (Field : Union_Id);
1193 -- Fixup one parent pointer. Field is checked to see if it points to
1194 -- a node, list, or element list that has a parent that points to
1195 -- Ref_Node. If so, the parent is reset to point to Fix_Node.
1196
1197 ----------------
1198 -- Fix_Parent --
1199 ----------------
1200
1201 procedure Fix_Parent (Field : Union_Id) is
1202 begin
1203 -- Fix parent of node that is referenced by Field. Note that we must
1204 -- exclude the case where the node is a member of a list, because in
1205 -- this case the parent is the parent of the list.
1206
1207 if Field in Node_Range
1208 and then Present (Node_Id (Field))
1209 and then not Nodes.Table (Node_Id (Field)).In_List
1210 and then Parent (Node_Id (Field)) = Ref_Node
1211 then
1212 Set_Parent (Node_Id (Field), Fix_Node);
1213
1214 -- Fix parent of list that is referenced by Field
1215
1216 elsif Field in List_Range
1217 and then Present (List_Id (Field))
1218 and then Parent (List_Id (Field)) = Ref_Node
1219 then
1220 Set_Parent (List_Id (Field), Fix_Node);
1221 end if;
1222 end Fix_Parent;
1223
1224 -- Start of processing for Fix_Parents
1225
1226 begin
1227 Fix_Parent (Field1 (Fix_Node));
1228 Fix_Parent (Field2 (Fix_Node));
1229 Fix_Parent (Field3 (Fix_Node));
1230 Fix_Parent (Field4 (Fix_Node));
1231 Fix_Parent (Field5 (Fix_Node));
1232 end Fix_Parents;
1233
1234 -----------------------------------
1235 -- Get_Comes_From_Source_Default --
1236 -----------------------------------
1237
1238 function Get_Comes_From_Source_Default return Boolean is
1239 begin
1240 return Default_Node.Comes_From_Source;
1241 end Get_Comes_From_Source_Default;
1242
1243 -----------------
1244 -- Has_Aspects --
1245 -----------------
1246
1247 function Has_Aspects (N : Node_Id) return Boolean is
1248 begin
1249 pragma Assert (N <= Nodes.Last);
1250 return Nodes.Table (N).Has_Aspects;
1251 end Has_Aspects;
1252
1253 -------------------
1254 -- Has_Extension --
1255 -------------------
1256
1257 function Has_Extension (N : Node_Id) return Boolean is
1258 begin
1259 return N < Nodes.Last and then Nodes.Table (N + 1).Is_Extension;
1260 end Has_Extension;
1261
1262 ----------------
1263 -- Initialize --
1264 ----------------
1265
1266 procedure Initialize is
1267 Dummy : Node_Id;
1268 pragma Warnings (Off, Dummy);
1269
1270 begin
1271 Node_Count := 0;
1272 Atree_Private_Part.Nodes.Init;
1273 Orig_Nodes.Init;
1274 Paren_Counts.Init;
1275
1276 -- Allocate Empty node
1277
1278 Dummy := New_Node (N_Empty, No_Location);
1279 Set_Name1 (Empty, No_Name);
1280
1281 -- Allocate Error node, and set Error_Posted, since we certainly
1282 -- only generate an Error node if we do post some kind of error!
1283
1284 Dummy := New_Node (N_Error, No_Location);
1285 Set_Name1 (Error, Error_Name);
1286 Set_Error_Posted (Error, True);
1287 end Initialize;
1288
1289 --------------------------
1290 -- Is_Rewrite_Insertion --
1291 --------------------------
1292
1293 function Is_Rewrite_Insertion (Node : Node_Id) return Boolean is
1294 begin
1295 return Nodes.Table (Node).Rewrite_Ins;
1296 end Is_Rewrite_Insertion;
1297
1298 -----------------------------
1299 -- Is_Rewrite_Substitution --
1300 -----------------------------
1301
1302 function Is_Rewrite_Substitution (Node : Node_Id) return Boolean is
1303 begin
1304 return Orig_Nodes.Table (Node) /= Node;
1305 end Is_Rewrite_Substitution;
1306
1307 ------------------
1308 -- Last_Node_Id --
1309 ------------------
1310
1311 function Last_Node_Id return Node_Id is
1312 begin
1313 return Nodes.Last;
1314 end Last_Node_Id;
1315
1316 ----------
1317 -- Lock --
1318 ----------
1319
1320 procedure Lock is
1321 begin
1322 Nodes.Locked := True;
1323 Orig_Nodes.Locked := True;
1324 Nodes.Release;
1325 Orig_Nodes.Release;
1326 end Lock;
1327
1328 ----------------------------
1329 -- Mark_Rewrite_Insertion --
1330 ----------------------------
1331
1332 procedure Mark_Rewrite_Insertion (New_Node : Node_Id) is
1333 begin
1334 Nodes.Table (New_Node).Rewrite_Ins := True;
1335 end Mark_Rewrite_Insertion;
1336
1337 --------------
1338 -- New_Copy --
1339 --------------
1340
1341 function New_Copy (Source : Node_Id) return Node_Id is
1342 New_Id : Node_Id := Source;
1343
1344 begin
1345 if Source > Empty_Or_Error then
1346 New_Id := Allocate_Initialize_Node (Source, Has_Extension (Source));
1347
1348 Nodes.Table (New_Id).Link := Empty_List_Or_Node;
1349 Nodes.Table (New_Id).In_List := False;
1350
1351 -- If the original is marked as a rewrite insertion, then unmark the
1352 -- copy, since we inserted the original, not the copy.
1353
1354 Nodes.Table (New_Id).Rewrite_Ins := False;
1355 pragma Debug (New_Node_Debugging_Output (New_Id));
1356
1357 -- Clear Is_Overloaded since we cannot have semantic interpretations
1358 -- of this new node.
1359
1360 if Nkind (Source) in N_Subexpr then
1361 Set_Is_Overloaded (New_Id, False);
1362 end if;
1363
1364 -- Always clear Has_Aspects, the caller must take care of copying
1365 -- aspects if this is required for the particular situation.
1366
1367 Set_Has_Aspects (New_Id, False);
1368 end if;
1369
1370 return New_Id;
1371 end New_Copy;
1372
1373 ----------------
1374 -- New_Entity --
1375 ----------------
1376
1377 function New_Entity
1378 (New_Node_Kind : Node_Kind;
1379 New_Sloc : Source_Ptr) return Entity_Id
1380 is
1381 Ent : Entity_Id;
1382
1383 begin
1384 pragma Assert (New_Node_Kind in N_Entity);
1385
1386 Ent := Allocate_Initialize_Node (Empty, With_Extension => True);
1387
1388 -- If this is a node with a real location and we are generating
1389 -- source nodes, then reset Current_Error_Node. This is useful
1390 -- if we bomb during parsing to get a error location for the bomb.
1391
1392 if Default_Node.Comes_From_Source and then New_Sloc > No_Location then
1393 Current_Error_Node := Ent;
1394 end if;
1395
1396 Nodes.Table (Ent).Nkind := New_Node_Kind;
1397 Nodes.Table (Ent).Sloc := New_Sloc;
1398 pragma Debug (New_Node_Debugging_Output (Ent));
1399
1400 return Ent;
1401 end New_Entity;
1402
1403 --------------
1404 -- New_Node --
1405 --------------
1406
1407 function New_Node
1408 (New_Node_Kind : Node_Kind;
1409 New_Sloc : Source_Ptr) return Node_Id
1410 is
1411 Nod : Node_Id;
1412
1413 begin
1414 pragma Assert (New_Node_Kind not in N_Entity);
1415 Nod := Allocate_Initialize_Node (Empty, With_Extension => False);
1416 Nodes.Table (Nod).Nkind := New_Node_Kind;
1417 Nodes.Table (Nod).Sloc := New_Sloc;
1418 pragma Debug (New_Node_Debugging_Output (Nod));
1419
1420 -- If this is a node with a real location and we are generating source
1421 -- nodes, then reset Current_Error_Node. This is useful if we bomb
1422 -- during parsing to get an error location for the bomb.
1423
1424 if Default_Node.Comes_From_Source and then New_Sloc > No_Location then
1425 Current_Error_Node := Nod;
1426 end if;
1427
1428 return Nod;
1429 end New_Node;
1430
1431 -------------------------
1432 -- New_Node_Breakpoint --
1433 -------------------------
1434
1435 procedure nn is
1436 begin
1437 Write_Str ("Watched node ");
1438 Write_Int (Int (Watch_Node));
1439 Write_Str (" created");
1440 Write_Eol;
1441 end nn;
1442
1443 -------------------------------
1444 -- New_Node_Debugging_Output --
1445 -------------------------------
1446
1447 procedure nnd (N : Node_Id) is
1448 Node_Is_Watched : constant Boolean := N = Watch_Node;
1449
1450 begin
1451 if Debug_Flag_N or else Node_Is_Watched then
1452 Node_Debug_Output ("Allocate", N);
1453
1454 if Node_Is_Watched then
1455 New_Node_Breakpoint;
1456 end if;
1457 end if;
1458 end nnd;
1459
1460 -----------
1461 -- Nkind --
1462 -----------
1463
1464 function Nkind (N : Node_Id) return Node_Kind is
1465 begin
1466 return Nodes.Table (N).Nkind;
1467 end Nkind;
1468
1469 --------------
1470 -- Nkind_In --
1471 --------------
1472
1473 function Nkind_In
1474 (N : Node_Id;
1475 V1 : Node_Kind;
1476 V2 : Node_Kind) return Boolean
1477 is
1478 begin
1479 return Nkind_In (Nkind (N), V1, V2);
1480 end Nkind_In;
1481
1482 function Nkind_In
1483 (N : Node_Id;
1484 V1 : Node_Kind;
1485 V2 : Node_Kind;
1486 V3 : Node_Kind) return Boolean
1487 is
1488 begin
1489 return Nkind_In (Nkind (N), V1, V2, V3);
1490 end Nkind_In;
1491
1492 function Nkind_In
1493 (N : Node_Id;
1494 V1 : Node_Kind;
1495 V2 : Node_Kind;
1496 V3 : Node_Kind;
1497 V4 : Node_Kind) return Boolean
1498 is
1499 begin
1500 return Nkind_In (Nkind (N), V1, V2, V3, V4);
1501 end Nkind_In;
1502
1503 function Nkind_In
1504 (N : Node_Id;
1505 V1 : Node_Kind;
1506 V2 : Node_Kind;
1507 V3 : Node_Kind;
1508 V4 : Node_Kind;
1509 V5 : Node_Kind) return Boolean
1510 is
1511 begin
1512 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5);
1513 end Nkind_In;
1514
1515 function Nkind_In
1516 (N : Node_Id;
1517 V1 : Node_Kind;
1518 V2 : Node_Kind;
1519 V3 : Node_Kind;
1520 V4 : Node_Kind;
1521 V5 : Node_Kind;
1522 V6 : Node_Kind) return Boolean
1523 is
1524 begin
1525 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6);
1526 end Nkind_In;
1527
1528 function Nkind_In
1529 (N : Node_Id;
1530 V1 : Node_Kind;
1531 V2 : Node_Kind;
1532 V3 : Node_Kind;
1533 V4 : Node_Kind;
1534 V5 : Node_Kind;
1535 V6 : Node_Kind;
1536 V7 : Node_Kind) return Boolean
1537 is
1538 begin
1539 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7);
1540 end Nkind_In;
1541
1542 function Nkind_In
1543 (N : Node_Id;
1544 V1 : Node_Kind;
1545 V2 : Node_Kind;
1546 V3 : Node_Kind;
1547 V4 : Node_Kind;
1548 V5 : Node_Kind;
1549 V6 : Node_Kind;
1550 V7 : Node_Kind;
1551 V8 : Node_Kind) return Boolean
1552 is
1553 begin
1554 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7, V8);
1555 end Nkind_In;
1556
1557 function Nkind_In
1558 (N : Node_Id;
1559 V1 : Node_Kind;
1560 V2 : Node_Kind;
1561 V3 : Node_Kind;
1562 V4 : Node_Kind;
1563 V5 : Node_Kind;
1564 V6 : Node_Kind;
1565 V7 : Node_Kind;
1566 V8 : Node_Kind;
1567 V9 : Node_Kind) return Boolean
1568 is
1569 begin
1570 return Nkind_In (Nkind (N), V1, V2, V3, V4, V5, V6, V7, V8, V9);
1571 end Nkind_In;
1572
1573 --------
1574 -- No --
1575 --------
1576
1577 function No (N : Node_Id) return Boolean is
1578 begin
1579 return N = Empty;
1580 end No;
1581
1582 -----------------------
1583 -- Node_Debug_Output --
1584 -----------------------
1585
1586 procedure Node_Debug_Output (Op : String; N : Node_Id) is
1587 begin
1588 Write_Str (Op);
1589
1590 if Nkind (N) in N_Entity then
1591 Write_Str (" entity");
1592 else
1593 Write_Str (" node");
1594 end if;
1595
1596 Write_Str (" Id = ");
1597 Write_Int (Int (N));
1598 Write_Str (" ");
1599 Write_Location (Sloc (N));
1600 Write_Str (" ");
1601 Write_Str (Node_Kind'Image (Nkind (N)));
1602 Write_Eol;
1603 end Node_Debug_Output;
1604
1605 -------------------
1606 -- Nodes_Address --
1607 -------------------
1608
1609 function Nodes_Address return System.Address is
1610 begin
1611 return Nodes.Table (First_Node_Id)'Address;
1612 end Nodes_Address;
1613
1614 ---------------
1615 -- Num_Nodes --
1616 ---------------
1617
1618 function Num_Nodes return Nat is
1619 begin
1620 return Node_Count;
1621 end Num_Nodes;
1622
1623 -------------------
1624 -- Original_Node --
1625 -------------------
1626
1627 function Original_Node (Node : Node_Id) return Node_Id is
1628 begin
1629 return Orig_Nodes.Table (Node);
1630 end Original_Node;
1631
1632 -----------------
1633 -- Paren_Count --
1634 -----------------
1635
1636 function Paren_Count (N : Node_Id) return Nat is
1637 C : Nat := 0;
1638
1639 begin
1640 pragma Assert (N <= Nodes.Last);
1641
1642 if Nodes.Table (N).Pflag1 then
1643 C := C + 1;
1644 end if;
1645
1646 if Nodes.Table (N).Pflag2 then
1647 C := C + 2;
1648 end if;
1649
1650 -- Value of 0,1,2 returned as is
1651
1652 if C <= 2 then
1653 return C;
1654
1655 -- Value of 3 means we search the table, and we must find an entry
1656
1657 else
1658 for J in Paren_Counts.First .. Paren_Counts.Last loop
1659 if N = Paren_Counts.Table (J).Nod then
1660 return Paren_Counts.Table (J).Count;
1661 end if;
1662 end loop;
1663
1664 raise Program_Error;
1665 end if;
1666 end Paren_Count;
1667
1668 ------------
1669 -- Parent --
1670 ------------
1671
1672 function Parent (N : Node_Id) return Node_Id is
1673 begin
1674 if Is_List_Member (N) then
1675 return Parent (List_Containing (N));
1676 else
1677 return Node_Id (Nodes.Table (N).Link);
1678 end if;
1679 end Parent;
1680
1681 -------------
1682 -- Present --
1683 -------------
1684
1685 function Present (N : Node_Id) return Boolean is
1686 begin
1687 return N /= Empty;
1688 end Present;
1689
1690 --------------------------------
1691 -- Preserve_Comes_From_Source --
1692 --------------------------------
1693
1694 procedure Preserve_Comes_From_Source (NewN, OldN : Node_Id) is
1695 begin
1696 Nodes.Table (NewN).Comes_From_Source :=
1697 Nodes.Table (OldN).Comes_From_Source;
1698 end Preserve_Comes_From_Source;
1699
1700 -------------------
1701 -- Relocate_Node --
1702 -------------------
1703
1704 function Relocate_Node (Source : Node_Id) return Node_Id is
1705 New_Node : Node_Id;
1706
1707 begin
1708 if No (Source) then
1709 return Empty;
1710 end if;
1711
1712 New_Node := New_Copy (Source);
1713 Fix_Parents (Ref_Node => Source, Fix_Node => New_Node);
1714
1715 -- We now set the parent of the new node to be the same as the
1716 -- parent of the source. Almost always this parent will be
1717 -- replaced by a new value when the relocated node is reattached
1718 -- to the tree, but by doing it now, we ensure that this node is
1719 -- not even temporarily disconnected from the tree. Note that this
1720 -- does not happen free, because in the list case, the parent does
1721 -- not get set.
1722
1723 Set_Parent (New_Node, Parent (Source));
1724
1725 -- If the node being relocated was a rewriting of some original
1726 -- node, then the relocated node has the same original node.
1727
1728 if Orig_Nodes.Table (Source) /= Source then
1729 Orig_Nodes.Table (New_Node) := Orig_Nodes.Table (Source);
1730 end if;
1731
1732 return New_Node;
1733 end Relocate_Node;
1734
1735 -------------
1736 -- Replace --
1737 -------------
1738
1739 procedure Replace (Old_Node, New_Node : Node_Id) is
1740 Old_Post : constant Boolean := Nodes.Table (Old_Node).Error_Posted;
1741 Old_HasA : constant Boolean := Nodes.Table (Old_Node).Has_Aspects;
1742 Old_CFS : constant Boolean := Nodes.Table (Old_Node).Comes_From_Source;
1743
1744 begin
1745 pragma Assert
1746 (not Has_Extension (Old_Node)
1747 and not Has_Extension (New_Node)
1748 and not Nodes.Table (New_Node).In_List);
1749
1750 -- Do copy, preserving link and in list status and required flags
1751
1752 Copy_Node (Source => New_Node, Destination => Old_Node);
1753 Nodes.Table (Old_Node).Comes_From_Source := Old_CFS;
1754 Nodes.Table (Old_Node).Error_Posted := Old_Post;
1755 Nodes.Table (Old_Node).Has_Aspects := Old_HasA;
1756
1757 -- Fix parents of substituted node, since it has changed identity
1758
1759 Fix_Parents (Ref_Node => New_Node, Fix_Node => Old_Node);
1760
1761 -- Since we are doing a replace, we assume that the original node
1762 -- is intended to become the new replaced node. The call would be
1763 -- to Rewrite if there were an intention to save the original node.
1764
1765 Orig_Nodes.Table (Old_Node) := Old_Node;
1766
1767 -- Invoke the reporting procedure (if available)
1768
1769 if Reporting_Proc /= null then
1770 Reporting_Proc.all (Target => Old_Node, Source => New_Node);
1771 end if;
1772 end Replace;
1773
1774 -------------
1775 -- Rewrite --
1776 -------------
1777
1778 procedure Rewrite (Old_Node, New_Node : Node_Id) is
1779 Old_Error_P : constant Boolean := Nodes.Table (Old_Node).Error_Posted;
1780 -- This field is always preserved in the new node
1781
1782 Old_Has_Aspects : constant Boolean := Nodes.Table (Old_Node).Has_Aspects;
1783 -- This field is always preserved in the new node
1784
1785 Old_Paren_Count : Nat;
1786 Old_Must_Not_Freeze : Boolean;
1787 -- These fields are preserved in the new node only if the new node
1788 -- and the old node are both subexpression nodes.
1789
1790 -- Note: it is a violation of abstraction levels for Must_Not_Freeze
1791 -- to be referenced like this. ???
1792
1793 Sav_Node : Node_Id;
1794
1795 begin
1796 pragma Assert
1797 (not Has_Extension (Old_Node)
1798 and not Has_Extension (New_Node)
1799 and not Nodes.Table (New_Node).In_List);
1800 pragma Debug (Rewrite_Debugging_Output (Old_Node, New_Node));
1801
1802 if Nkind (Old_Node) in N_Subexpr then
1803 Old_Paren_Count := Paren_Count (Old_Node);
1804 Old_Must_Not_Freeze := Must_Not_Freeze (Old_Node);
1805 else
1806 Old_Paren_Count := 0;
1807 Old_Must_Not_Freeze := False;
1808 end if;
1809
1810 -- Allocate a new node, to be used to preserve the original contents
1811 -- of the Old_Node, for possible later retrival by Original_Node and
1812 -- make an entry in the Orig_Nodes table. This is only done if we have
1813 -- not already rewritten the node, as indicated by an Orig_Nodes entry
1814 -- that does not reference the Old_Node.
1815
1816 if Orig_Nodes.Table (Old_Node) = Old_Node then
1817 Sav_Node := New_Copy (Old_Node);
1818 Orig_Nodes.Table (Sav_Node) := Sav_Node;
1819 Orig_Nodes.Table (Old_Node) := Sav_Node;
1820
1821 -- Both the old and new copies of the node will share the same list
1822 -- of aspect specifications if aspect specifications are present.
1823
1824 if Has_Aspects (Sav_Node) then
1825 Set_Has_Aspects (Sav_Node, False);
1826 Set_Aspect_Specifications
1827 (Sav_Node, Aspect_Specifications (Old_Node));
1828 end if;
1829 end if;
1830
1831 -- Copy substitute node into place, preserving old fields as required
1832
1833 Copy_Node (Source => New_Node, Destination => Old_Node);
1834 Nodes.Table (Old_Node).Error_Posted := Old_Error_P;
1835 Nodes.Table (Old_Node).Has_Aspects := Old_Has_Aspects;
1836
1837 if Nkind (New_Node) in N_Subexpr then
1838 Set_Paren_Count (Old_Node, Old_Paren_Count);
1839 Set_Must_Not_Freeze (Old_Node, Old_Must_Not_Freeze);
1840 end if;
1841
1842 Fix_Parents (Ref_Node => New_Node, Fix_Node => Old_Node);
1843
1844 -- Invoke the reporting procedure (if available)
1845
1846 if Reporting_Proc /= null then
1847 Reporting_Proc.all (Target => Old_Node, Source => New_Node);
1848 end if;
1849 end Rewrite;
1850
1851 -------------------------
1852 -- Rewrite_Breakpoint --
1853 -------------------------
1854
1855 procedure rr is
1856 begin
1857 Write_Str ("Watched node ");
1858 Write_Int (Int (Watch_Node));
1859 Write_Str (" rewritten");
1860 Write_Eol;
1861 end rr;
1862
1863 ------------------------------
1864 -- Rewrite_Debugging_Output --
1865 ------------------------------
1866
1867 procedure rrd (Old_Node, New_Node : Node_Id) is
1868 Node_Is_Watched : constant Boolean := Old_Node = Watch_Node;
1869
1870 begin
1871 if Debug_Flag_N or else Node_Is_Watched then
1872 Node_Debug_Output ("Rewrite", Old_Node);
1873 Node_Debug_Output ("into", New_Node);
1874
1875 if Node_Is_Watched then
1876 Rewrite_Breakpoint;
1877 end if;
1878 end if;
1879 end rrd;
1880
1881 ------------------
1882 -- Set_Analyzed --
1883 ------------------
1884
1885 procedure Set_Analyzed (N : Node_Id; Val : Boolean := True) is
1886 begin
1887 Nodes.Table (N).Analyzed := Val;
1888 end Set_Analyzed;
1889
1890 ---------------------------
1891 -- Set_Comes_From_Source --
1892 ---------------------------
1893
1894 procedure Set_Comes_From_Source (N : Node_Id; Val : Boolean) is
1895 begin
1896 pragma Assert (N <= Nodes.Last);
1897 Nodes.Table (N).Comes_From_Source := Val;
1898 end Set_Comes_From_Source;
1899
1900 -----------------------------------
1901 -- Set_Comes_From_Source_Default --
1902 -----------------------------------
1903
1904 procedure Set_Comes_From_Source_Default (Default : Boolean) is
1905 begin
1906 Default_Node.Comes_From_Source := Default;
1907 end Set_Comes_From_Source_Default;
1908
1909 ---------------
1910 -- Set_Ekind --
1911 ---------------
1912
1913 procedure Set_Ekind (E : Entity_Id; Val : Entity_Kind) is
1914 begin
1915 pragma Assert (Nkind (E) in N_Entity);
1916 Nodes.Table (E + 1).Nkind := E_To_N (Val);
1917 end Set_Ekind;
1918
1919 ----------------------
1920 -- Set_Error_Posted --
1921 ----------------------
1922
1923 procedure Set_Error_Posted (N : Node_Id; Val : Boolean := True) is
1924 begin
1925 Nodes.Table (N).Error_Posted := Val;
1926 end Set_Error_Posted;
1927
1928 ---------------------
1929 -- Set_Has_Aspects --
1930 ---------------------
1931
1932 procedure Set_Has_Aspects (N : Node_Id; Val : Boolean := True) is
1933 begin
1934 pragma Assert (N <= Nodes.Last);
1935 Nodes.Table (N).Has_Aspects := Val;
1936 end Set_Has_Aspects;
1937
1938 -----------------------
1939 -- Set_Original_Node --
1940 -----------------------
1941
1942 procedure Set_Original_Node (N : Node_Id; Val : Node_Id) is
1943 begin
1944 Orig_Nodes.Table (N) := Val;
1945 end Set_Original_Node;
1946
1947 ---------------------
1948 -- Set_Paren_Count --
1949 ---------------------
1950
1951 procedure Set_Paren_Count (N : Node_Id; Val : Nat) is
1952 begin
1953 pragma Assert (Nkind (N) in N_Subexpr);
1954
1955 -- Value of 0,1,2 stored as is
1956
1957 if Val <= 2 then
1958 Nodes.Table (N).Pflag1 := (Val mod 2 /= 0);
1959 Nodes.Table (N).Pflag2 := (Val = 2);
1960
1961 -- Value of 3 or greater stores 3 in node and makes table entry
1962
1963 else
1964 Nodes.Table (N).Pflag1 := True;
1965 Nodes.Table (N).Pflag2 := True;
1966
1967 for J in Paren_Counts.First .. Paren_Counts.Last loop
1968 if N = Paren_Counts.Table (J).Nod then
1969 Paren_Counts.Table (J).Count := Val;
1970 return;
1971 end if;
1972 end loop;
1973
1974 Paren_Counts.Append ((Nod => N, Count => Val));
1975 end if;
1976 end Set_Paren_Count;
1977
1978 ----------------
1979 -- Set_Parent --
1980 ----------------
1981
1982 procedure Set_Parent (N : Node_Id; Val : Node_Id) is
1983 begin
1984 pragma Assert (not Nodes.Table (N).In_List);
1985 Nodes.Table (N).Link := Union_Id (Val);
1986 end Set_Parent;
1987
1988 --------------
1989 -- Set_Sloc --
1990 --------------
1991
1992 procedure Set_Sloc (N : Node_Id; Val : Source_Ptr) is
1993 begin
1994 Nodes.Table (N).Sloc := Val;
1995 end Set_Sloc;
1996
1997 ----------
1998 -- Sloc --
1999 ----------
2000
2001 function Sloc (N : Node_Id) return Source_Ptr is
2002 begin
2003 return Nodes.Table (N).Sloc;
2004 end Sloc;
2005
2006 -------------------
2007 -- Traverse_Func --
2008 -------------------
2009
2010 function Traverse_Func (Node : Node_Id) return Traverse_Final_Result is
2011
2012 function Traverse_Field
2013 (Nod : Node_Id;
2014 Fld : Union_Id;
2015 FN : Field_Num) return Traverse_Final_Result;
2016 -- Fld is one of the fields of Nod. If the field points to syntactic
2017 -- node or list, then this node or list is traversed, and the result is
2018 -- the result of this traversal. Otherwise a value of True is returned
2019 -- with no processing. FN is the number of the field (1 .. 5).
2020
2021 --------------------
2022 -- Traverse_Field --
2023 --------------------
2024
2025 function Traverse_Field
2026 (Nod : Node_Id;
2027 Fld : Union_Id;
2028 FN : Field_Num) return Traverse_Final_Result
2029 is
2030 begin
2031 if Fld = Union_Id (Empty) then
2032 return OK;
2033
2034 -- Descendent is a node
2035
2036 elsif Fld in Node_Range then
2037
2038 -- Traverse descendent that is syntactic subtree node
2039
2040 if Is_Syntactic_Field (Nkind (Nod), FN) then
2041 return Traverse_Func (Node_Id (Fld));
2042
2043 -- Node that is not a syntactic subtree
2044
2045 else
2046 return OK;
2047 end if;
2048
2049 -- Descendent is a list
2050
2051 elsif Fld in List_Range then
2052
2053 -- Traverse descendent that is a syntactic subtree list
2054
2055 if Is_Syntactic_Field (Nkind (Nod), FN) then
2056 declare
2057 Elmt : Node_Id := First (List_Id (Fld));
2058
2059 begin
2060 while Present (Elmt) loop
2061 if Traverse_Func (Elmt) = Abandon then
2062 return Abandon;
2063 else
2064 Next (Elmt);
2065 end if;
2066 end loop;
2067
2068 return OK;
2069 end;
2070
2071 -- List that is not a syntactic subtree
2072
2073 else
2074 return OK;
2075 end if;
2076
2077 -- Field was not a node or a list
2078
2079 else
2080 return OK;
2081 end if;
2082 end Traverse_Field;
2083
2084 Cur_Node : Node_Id := Node;
2085
2086 -- Start of processing for Traverse_Func
2087
2088 begin
2089 -- We walk Field2 last, and if it is a node, we eliminate the tail
2090 -- recursion by jumping back to this label. This is because Field2 is
2091 -- where the Left_Opnd field of N_Op_Concat is stored, and in practice
2092 -- concatenations are sometimes deeply nested, as in X1&X2&...&XN. This
2093 -- trick prevents us from running out of memory in that case. We don't
2094 -- bother eliminating the tail recursion if Field2 is a list.
2095
2096 <<Tail_Recurse>>
2097
2098 case Process (Cur_Node) is
2099 when Abandon =>
2100 return Abandon;
2101
2102 when Skip =>
2103 return OK;
2104
2105 when OK =>
2106 null;
2107
2108 when OK_Orig =>
2109 Cur_Node := Original_Node (Cur_Node);
2110 end case;
2111
2112 if Traverse_Field (Cur_Node, Field1 (Cur_Node), 1) = Abandon
2113 or else -- skip Field2 here
2114 Traverse_Field (Cur_Node, Field3 (Cur_Node), 3) = Abandon
2115 or else
2116 Traverse_Field (Cur_Node, Field4 (Cur_Node), 4) = Abandon
2117 or else
2118 Traverse_Field (Cur_Node, Field5 (Cur_Node), 5) = Abandon
2119 then
2120 return Abandon;
2121 end if;
2122
2123 if Field2 (Cur_Node) not in Node_Range then
2124 return Traverse_Field (Cur_Node, Field2 (Cur_Node), 2);
2125
2126 elsif Is_Syntactic_Field (Nkind (Cur_Node), 2)
2127 and then Field2 (Cur_Node) /= Empty_List_Or_Node
2128 then
2129 -- Here is the tail recursion step, we reset Cur_Node and jump back
2130 -- to the start of the procedure, which has the same semantic effect
2131 -- as a call.
2132
2133 Cur_Node := Node_Id (Field2 (Cur_Node));
2134 goto Tail_Recurse;
2135 end if;
2136
2137 return OK;
2138 end Traverse_Func;
2139
2140 -------------------
2141 -- Traverse_Proc --
2142 -------------------
2143
2144 procedure Traverse_Proc (Node : Node_Id) is
2145 function Traverse is new Traverse_Func (Process);
2146 Discard : Traverse_Final_Result;
2147 pragma Warnings (Off, Discard);
2148 begin
2149 Discard := Traverse (Node);
2150 end Traverse_Proc;
2151
2152 ---------------
2153 -- Tree_Read --
2154 ---------------
2155
2156 procedure Tree_Read is
2157 begin
2158 Tree_Read_Int (Node_Count);
2159 Nodes.Tree_Read;
2160 Orig_Nodes.Tree_Read;
2161 Paren_Counts.Tree_Read;
2162 end Tree_Read;
2163
2164 ----------------
2165 -- Tree_Write --
2166 ----------------
2167
2168 procedure Tree_Write is
2169 begin
2170 Tree_Write_Int (Node_Count);
2171 Nodes.Tree_Write;
2172 Orig_Nodes.Tree_Write;
2173 Paren_Counts.Tree_Write;
2174 end Tree_Write;
2175
2176 ------------------------------
2177 -- Unchecked Access Package --
2178 ------------------------------
2179
2180 package body Unchecked_Access is
2181
2182 function Field1 (N : Node_Id) return Union_Id is
2183 begin
2184 pragma Assert (N <= Nodes.Last);
2185 return Nodes.Table (N).Field1;
2186 end Field1;
2187
2188 function Field2 (N : Node_Id) return Union_Id is
2189 begin
2190 pragma Assert (N <= Nodes.Last);
2191 return Nodes.Table (N).Field2;
2192 end Field2;
2193
2194 function Field3 (N : Node_Id) return Union_Id is
2195 begin
2196 pragma Assert (N <= Nodes.Last);
2197 return Nodes.Table (N).Field3;
2198 end Field3;
2199
2200 function Field4 (N : Node_Id) return Union_Id is
2201 begin
2202 pragma Assert (N <= Nodes.Last);
2203 return Nodes.Table (N).Field4;
2204 end Field4;
2205
2206 function Field5 (N : Node_Id) return Union_Id is
2207 begin
2208 pragma Assert (N <= Nodes.Last);
2209 return Nodes.Table (N).Field5;
2210 end Field5;
2211
2212 function Field6 (N : Node_Id) return Union_Id is
2213 begin
2214 pragma Assert (Nkind (N) in N_Entity);
2215 return Nodes.Table (N + 1).Field6;
2216 end Field6;
2217
2218 function Field7 (N : Node_Id) return Union_Id is
2219 begin
2220 pragma Assert (Nkind (N) in N_Entity);
2221 return Nodes.Table (N + 1).Field7;
2222 end Field7;
2223
2224 function Field8 (N : Node_Id) return Union_Id is
2225 begin
2226 pragma Assert (Nkind (N) in N_Entity);
2227 return Nodes.Table (N + 1).Field8;
2228 end Field8;
2229
2230 function Field9 (N : Node_Id) return Union_Id is
2231 begin
2232 pragma Assert (Nkind (N) in N_Entity);
2233 return Nodes.Table (N + 1).Field9;
2234 end Field9;
2235
2236 function Field10 (N : Node_Id) return Union_Id is
2237 begin
2238 pragma Assert (Nkind (N) in N_Entity);
2239 return Nodes.Table (N + 1).Field10;
2240 end Field10;
2241
2242 function Field11 (N : Node_Id) return Union_Id is
2243 begin
2244 pragma Assert (Nkind (N) in N_Entity);
2245 return Nodes.Table (N + 1).Field11;
2246 end Field11;
2247
2248 function Field12 (N : Node_Id) return Union_Id is
2249 begin
2250 pragma Assert (Nkind (N) in N_Entity);
2251 return Nodes.Table (N + 1).Field12;
2252 end Field12;
2253
2254 function Field13 (N : Node_Id) return Union_Id is
2255 begin
2256 pragma Assert (Nkind (N) in N_Entity);
2257 return Nodes.Table (N + 2).Field6;
2258 end Field13;
2259
2260 function Field14 (N : Node_Id) return Union_Id is
2261 begin
2262 pragma Assert (Nkind (N) in N_Entity);
2263 return Nodes.Table (N + 2).Field7;
2264 end Field14;
2265
2266 function Field15 (N : Node_Id) return Union_Id is
2267 begin
2268 pragma Assert (Nkind (N) in N_Entity);
2269 return Nodes.Table (N + 2).Field8;
2270 end Field15;
2271
2272 function Field16 (N : Node_Id) return Union_Id is
2273 begin
2274 pragma Assert (Nkind (N) in N_Entity);
2275 return Nodes.Table (N + 2).Field9;
2276 end Field16;
2277
2278 function Field17 (N : Node_Id) return Union_Id is
2279 begin
2280 pragma Assert (Nkind (N) in N_Entity);
2281 return Nodes.Table (N + 2).Field10;
2282 end Field17;
2283
2284 function Field18 (N : Node_Id) return Union_Id is
2285 begin
2286 pragma Assert (Nkind (N) in N_Entity);
2287 return Nodes.Table (N + 2).Field11;
2288 end Field18;
2289
2290 function Field19 (N : Node_Id) return Union_Id is
2291 begin
2292 pragma Assert (Nkind (N) in N_Entity);
2293 return Nodes.Table (N + 3).Field6;
2294 end Field19;
2295
2296 function Field20 (N : Node_Id) return Union_Id is
2297 begin
2298 pragma Assert (Nkind (N) in N_Entity);
2299 return Nodes.Table (N + 3).Field7;
2300 end Field20;
2301
2302 function Field21 (N : Node_Id) return Union_Id is
2303 begin
2304 pragma Assert (Nkind (N) in N_Entity);
2305 return Nodes.Table (N + 3).Field8;
2306 end Field21;
2307
2308 function Field22 (N : Node_Id) return Union_Id is
2309 begin
2310 pragma Assert (Nkind (N) in N_Entity);
2311 return Nodes.Table (N + 3).Field9;
2312 end Field22;
2313
2314 function Field23 (N : Node_Id) return Union_Id is
2315 begin
2316 pragma Assert (Nkind (N) in N_Entity);
2317 return Nodes.Table (N + 3).Field10;
2318 end Field23;
2319
2320 function Field24 (N : Node_Id) return Union_Id is
2321 begin
2322 pragma Assert (Nkind (N) in N_Entity);
2323 return Nodes.Table (N + 4).Field6;
2324 end Field24;
2325
2326 function Field25 (N : Node_Id) return Union_Id is
2327 begin
2328 pragma Assert (Nkind (N) in N_Entity);
2329 return Nodes.Table (N + 4).Field7;
2330 end Field25;
2331
2332 function Field26 (N : Node_Id) return Union_Id is
2333 begin
2334 pragma Assert (Nkind (N) in N_Entity);
2335 return Nodes.Table (N + 4).Field8;
2336 end Field26;
2337
2338 function Field27 (N : Node_Id) return Union_Id is
2339 begin
2340 pragma Assert (Nkind (N) in N_Entity);
2341 return Nodes.Table (N + 4).Field9;
2342 end Field27;
2343
2344 function Field28 (N : Node_Id) return Union_Id is
2345 begin
2346 pragma Assert (Nkind (N) in N_Entity);
2347 return Nodes.Table (N + 4).Field10;
2348 end Field28;
2349
2350 function Field29 (N : Node_Id) return Union_Id is
2351 begin
2352 pragma Assert (Nkind (N) in N_Entity);
2353 return Nodes.Table (N + 4).Field11;
2354 end Field29;
2355
2356 function Field30 (N : Node_Id) return Union_Id is
2357 begin
2358 pragma Assert (Nkind (N) in N_Entity);
2359 return Nodes.Table (N + 5).Field6;
2360 end Field30;
2361
2362 function Field31 (N : Node_Id) return Union_Id is
2363 begin
2364 pragma Assert (Nkind (N) in N_Entity);
2365 return Nodes.Table (N + 5).Field7;
2366 end Field31;
2367
2368 function Field32 (N : Node_Id) return Union_Id is
2369 begin
2370 pragma Assert (Nkind (N) in N_Entity);
2371 return Nodes.Table (N + 5).Field8;
2372 end Field32;
2373
2374 function Field33 (N : Node_Id) return Union_Id is
2375 begin
2376 pragma Assert (Nkind (N) in N_Entity);
2377 return Nodes.Table (N + 5).Field9;
2378 end Field33;
2379
2380 function Field34 (N : Node_Id) return Union_Id is
2381 begin
2382 pragma Assert (Nkind (N) in N_Entity);
2383 return Nodes.Table (N + 5).Field10;
2384 end Field34;
2385
2386 function Field35 (N : Node_Id) return Union_Id is
2387 begin
2388 pragma Assert (Nkind (N) in N_Entity);
2389 return Nodes.Table (N + 5).Field11;
2390 end Field35;
2391
2392 function Node1 (N : Node_Id) return Node_Id is
2393 begin
2394 pragma Assert (N <= Nodes.Last);
2395 return Node_Id (Nodes.Table (N).Field1);
2396 end Node1;
2397
2398 function Node2 (N : Node_Id) return Node_Id is
2399 begin
2400 pragma Assert (N <= Nodes.Last);
2401 return Node_Id (Nodes.Table (N).Field2);
2402 end Node2;
2403
2404 function Node3 (N : Node_Id) return Node_Id is
2405 begin
2406 pragma Assert (N <= Nodes.Last);
2407 return Node_Id (Nodes.Table (N).Field3);
2408 end Node3;
2409
2410 function Node4 (N : Node_Id) return Node_Id is
2411 begin
2412 pragma Assert (N <= Nodes.Last);
2413 return Node_Id (Nodes.Table (N).Field4);
2414 end Node4;
2415
2416 function Node5 (N : Node_Id) return Node_Id is
2417 begin
2418 pragma Assert (N <= Nodes.Last);
2419 return Node_Id (Nodes.Table (N).Field5);
2420 end Node5;
2421
2422 function Node6 (N : Node_Id) return Node_Id is
2423 begin
2424 pragma Assert (Nkind (N) in N_Entity);
2425 return Node_Id (Nodes.Table (N + 1).Field6);
2426 end Node6;
2427
2428 function Node7 (N : Node_Id) return Node_Id is
2429 begin
2430 pragma Assert (Nkind (N) in N_Entity);
2431 return Node_Id (Nodes.Table (N + 1).Field7);
2432 end Node7;
2433
2434 function Node8 (N : Node_Id) return Node_Id is
2435 begin
2436 pragma Assert (Nkind (N) in N_Entity);
2437 return Node_Id (Nodes.Table (N + 1).Field8);
2438 end Node8;
2439
2440 function Node9 (N : Node_Id) return Node_Id is
2441 begin
2442 pragma Assert (Nkind (N) in N_Entity);
2443 return Node_Id (Nodes.Table (N + 1).Field9);
2444 end Node9;
2445
2446 function Node10 (N : Node_Id) return Node_Id is
2447 begin
2448 pragma Assert (Nkind (N) in N_Entity);
2449 return Node_Id (Nodes.Table (N + 1).Field10);
2450 end Node10;
2451
2452 function Node11 (N : Node_Id) return Node_Id is
2453 begin
2454 pragma Assert (Nkind (N) in N_Entity);
2455 return Node_Id (Nodes.Table (N + 1).Field11);
2456 end Node11;
2457
2458 function Node12 (N : Node_Id) return Node_Id is
2459 begin
2460 pragma Assert (Nkind (N) in N_Entity);
2461 return Node_Id (Nodes.Table (N + 1).Field12);
2462 end Node12;
2463
2464 function Node13 (N : Node_Id) return Node_Id is
2465 begin
2466 pragma Assert (Nkind (N) in N_Entity);
2467 return Node_Id (Nodes.Table (N + 2).Field6);
2468 end Node13;
2469
2470 function Node14 (N : Node_Id) return Node_Id is
2471 begin
2472 pragma Assert (Nkind (N) in N_Entity);
2473 return Node_Id (Nodes.Table (N + 2).Field7);
2474 end Node14;
2475
2476 function Node15 (N : Node_Id) return Node_Id is
2477 begin
2478 pragma Assert (Nkind (N) in N_Entity);
2479 return Node_Id (Nodes.Table (N + 2).Field8);
2480 end Node15;
2481
2482 function Node16 (N : Node_Id) return Node_Id is
2483 begin
2484 pragma Assert (Nkind (N) in N_Entity);
2485 return Node_Id (Nodes.Table (N + 2).Field9);
2486 end Node16;
2487
2488 function Node17 (N : Node_Id) return Node_Id is
2489 begin
2490 pragma Assert (Nkind (N) in N_Entity);
2491 return Node_Id (Nodes.Table (N + 2).Field10);
2492 end Node17;
2493
2494 function Node18 (N : Node_Id) return Node_Id is
2495 begin
2496 pragma Assert (Nkind (N) in N_Entity);
2497 return Node_Id (Nodes.Table (N + 2).Field11);
2498 end Node18;
2499
2500 function Node19 (N : Node_Id) return Node_Id is
2501 begin
2502 pragma Assert (Nkind (N) in N_Entity);
2503 return Node_Id (Nodes.Table (N + 3).Field6);
2504 end Node19;
2505
2506 function Node20 (N : Node_Id) return Node_Id is
2507 begin
2508 pragma Assert (Nkind (N) in N_Entity);
2509 return Node_Id (Nodes.Table (N + 3).Field7);
2510 end Node20;
2511
2512 function Node21 (N : Node_Id) return Node_Id is
2513 begin
2514 pragma Assert (Nkind (N) in N_Entity);
2515 return Node_Id (Nodes.Table (N + 3).Field8);
2516 end Node21;
2517
2518 function Node22 (N : Node_Id) return Node_Id is
2519 begin
2520 pragma Assert (Nkind (N) in N_Entity);
2521 return Node_Id (Nodes.Table (N + 3).Field9);
2522 end Node22;
2523
2524 function Node23 (N : Node_Id) return Node_Id is
2525 begin
2526 pragma Assert (Nkind (N) in N_Entity);
2527 return Node_Id (Nodes.Table (N + 3).Field10);
2528 end Node23;
2529
2530 function Node24 (N : Node_Id) return Node_Id is
2531 begin
2532 pragma Assert (Nkind (N) in N_Entity);
2533 return Node_Id (Nodes.Table (N + 4).Field6);
2534 end Node24;
2535
2536 function Node25 (N : Node_Id) return Node_Id is
2537 begin
2538 pragma Assert (Nkind (N) in N_Entity);
2539 return Node_Id (Nodes.Table (N + 4).Field7);
2540 end Node25;
2541
2542 function Node26 (N : Node_Id) return Node_Id is
2543 begin
2544 pragma Assert (Nkind (N) in N_Entity);
2545 return Node_Id (Nodes.Table (N + 4).Field8);
2546 end Node26;
2547
2548 function Node27 (N : Node_Id) return Node_Id is
2549 begin
2550 pragma Assert (Nkind (N) in N_Entity);
2551 return Node_Id (Nodes.Table (N + 4).Field9);
2552 end Node27;
2553
2554 function Node28 (N : Node_Id) return Node_Id is
2555 begin
2556 pragma Assert (Nkind (N) in N_Entity);
2557 return Node_Id (Nodes.Table (N + 4).Field10);
2558 end Node28;
2559
2560 function Node29 (N : Node_Id) return Node_Id is
2561 begin
2562 pragma Assert (Nkind (N) in N_Entity);
2563 return Node_Id (Nodes.Table (N + 4).Field11);
2564 end Node29;
2565
2566 function Node30 (N : Node_Id) return Node_Id is
2567 begin
2568 pragma Assert (Nkind (N) in N_Entity);
2569 return Node_Id (Nodes.Table (N + 5).Field6);
2570 end Node30;
2571
2572 function Node31 (N : Node_Id) return Node_Id is
2573 begin
2574 pragma Assert (Nkind (N) in N_Entity);
2575 return Node_Id (Nodes.Table (N + 5).Field7);
2576 end Node31;
2577
2578 function Node32 (N : Node_Id) return Node_Id is
2579 begin
2580 pragma Assert (Nkind (N) in N_Entity);
2581 return Node_Id (Nodes.Table (N + 5).Field8);
2582 end Node32;
2583
2584 function List1 (N : Node_Id) return List_Id is
2585 begin
2586 pragma Assert (N <= Nodes.Last);
2587 return List_Id (Nodes.Table (N).Field1);
2588 end List1;
2589
2590 function List2 (N : Node_Id) return List_Id is
2591 begin
2592 pragma Assert (N <= Nodes.Last);
2593 return List_Id (Nodes.Table (N).Field2);
2594 end List2;
2595
2596 function List3 (N : Node_Id) return List_Id is
2597 begin
2598 pragma Assert (N <= Nodes.Last);
2599 return List_Id (Nodes.Table (N).Field3);
2600 end List3;
2601
2602 function List4 (N : Node_Id) return List_Id is
2603 begin
2604 pragma Assert (N <= Nodes.Last);
2605 return List_Id (Nodes.Table (N).Field4);
2606 end List4;
2607
2608 function List5 (N : Node_Id) return List_Id is
2609 begin
2610 pragma Assert (N <= Nodes.Last);
2611 return List_Id (Nodes.Table (N).Field5);
2612 end List5;
2613
2614 function List10 (N : Node_Id) return List_Id is
2615 begin
2616 pragma Assert (Nkind (N) in N_Entity);
2617 return List_Id (Nodes.Table (N + 1).Field10);
2618 end List10;
2619
2620 function List14 (N : Node_Id) return List_Id is
2621 begin
2622 pragma Assert (Nkind (N) in N_Entity);
2623 return List_Id (Nodes.Table (N + 2).Field7);
2624 end List14;
2625
2626 function List25 (N : Node_Id) return List_Id is
2627 begin
2628 pragma Assert (Nkind (N) in N_Entity);
2629 return List_Id (Nodes.Table (N + 4).Field7);
2630 end List25;
2631
2632 function Elist1 (N : Node_Id) return Elist_Id is
2633 pragma Assert (N <= Nodes.Last);
2634 Value : constant Union_Id := Nodes.Table (N).Field1;
2635 begin
2636 if Value = 0 then
2637 return No_Elist;
2638 else
2639 return Elist_Id (Value);
2640 end if;
2641 end Elist1;
2642
2643 function Elist2 (N : Node_Id) return Elist_Id is
2644 pragma Assert (N <= Nodes.Last);
2645 Value : constant Union_Id := Nodes.Table (N).Field2;
2646 begin
2647 if Value = 0 then
2648 return No_Elist;
2649 else
2650 return Elist_Id (Value);
2651 end if;
2652 end Elist2;
2653
2654 function Elist3 (N : Node_Id) return Elist_Id is
2655 pragma Assert (N <= Nodes.Last);
2656 Value : constant Union_Id := Nodes.Table (N).Field3;
2657 begin
2658 if Value = 0 then
2659 return No_Elist;
2660 else
2661 return Elist_Id (Value);
2662 end if;
2663 end Elist3;
2664
2665 function Elist4 (N : Node_Id) return Elist_Id is
2666 pragma Assert (N <= Nodes.Last);
2667 Value : constant Union_Id := Nodes.Table (N).Field4;
2668 begin
2669 if Value = 0 then
2670 return No_Elist;
2671 else
2672 return Elist_Id (Value);
2673 end if;
2674 end Elist4;
2675
2676 function Elist5 (N : Node_Id) return Elist_Id is
2677 pragma Assert (N <= Nodes.Last);
2678 Value : constant Union_Id := Nodes.Table (N).Field5;
2679 begin
2680 if Value = 0 then
2681 return No_Elist;
2682 else
2683 return Elist_Id (Value);
2684 end if;
2685 end Elist5;
2686
2687 function Elist8 (N : Node_Id) return Elist_Id is
2688 pragma Assert (Nkind (N) in N_Entity);
2689 Value : constant Union_Id := Nodes.Table (N + 1).Field8;
2690 begin
2691 if Value = 0 then
2692 return No_Elist;
2693 else
2694 return Elist_Id (Value);
2695 end if;
2696 end Elist8;
2697
2698 function Elist10 (N : Node_Id) return Elist_Id is
2699 pragma Assert (Nkind (N) in N_Entity);
2700 Value : constant Union_Id := Nodes.Table (N + 1).Field10;
2701 begin
2702 if Value = 0 then
2703 return No_Elist;
2704 else
2705 return Elist_Id (Value);
2706 end if;
2707 end Elist10;
2708
2709 function Elist13 (N : Node_Id) return Elist_Id is
2710 pragma Assert (Nkind (N) in N_Entity);
2711 Value : constant Union_Id := Nodes.Table (N + 2).Field6;
2712 begin
2713 if Value = 0 then
2714 return No_Elist;
2715 else
2716 return Elist_Id (Value);
2717 end if;
2718 end Elist13;
2719
2720 function Elist15 (N : Node_Id) return Elist_Id is
2721 pragma Assert (Nkind (N) in N_Entity);
2722 Value : constant Union_Id := Nodes.Table (N + 2).Field8;
2723 begin
2724 if Value = 0 then
2725 return No_Elist;
2726 else
2727 return Elist_Id (Value);
2728 end if;
2729 end Elist15;
2730
2731 function Elist16 (N : Node_Id) return Elist_Id is
2732 pragma Assert (Nkind (N) in N_Entity);
2733 Value : constant Union_Id := Nodes.Table (N + 2).Field9;
2734 begin
2735 if Value = 0 then
2736 return No_Elist;
2737 else
2738 return Elist_Id (Value);
2739 end if;
2740 end Elist16;
2741
2742 function Elist18 (N : Node_Id) return Elist_Id is
2743 pragma Assert (Nkind (N) in N_Entity);
2744 Value : constant Union_Id := Nodes.Table (N + 2).Field11;
2745 begin
2746 if Value = 0 then
2747 return No_Elist;
2748 else
2749 return Elist_Id (Value);
2750 end if;
2751 end Elist18;
2752
2753 function Elist21 (N : Node_Id) return Elist_Id is
2754 pragma Assert (Nkind (N) in N_Entity);
2755 Value : constant Union_Id := Nodes.Table (N + 3).Field8;
2756 begin
2757 if Value = 0 then
2758 return No_Elist;
2759 else
2760 return Elist_Id (Value);
2761 end if;
2762 end Elist21;
2763
2764 function Elist23 (N : Node_Id) return Elist_Id is
2765 pragma Assert (Nkind (N) in N_Entity);
2766 Value : constant Union_Id := Nodes.Table (N + 3).Field10;
2767 begin
2768 if Value = 0 then
2769 return No_Elist;
2770 else
2771 return Elist_Id (Value);
2772 end if;
2773 end Elist23;
2774
2775 function Elist24 (N : Node_Id) return Elist_Id is
2776 pragma Assert (Nkind (N) in N_Entity);
2777 Value : constant Union_Id := Nodes.Table (N + 4).Field6;
2778 begin
2779 if Value = 0 then
2780 return No_Elist;
2781 else
2782 return Elist_Id (Value);
2783 end if;
2784 end Elist24;
2785
2786 function Elist25 (N : Node_Id) return Elist_Id is
2787 pragma Assert (Nkind (N) in N_Entity);
2788 Value : constant Union_Id := Nodes.Table (N + 4).Field7;
2789 begin
2790 if Value = 0 then
2791 return No_Elist;
2792 else
2793 return Elist_Id (Value);
2794 end if;
2795 end Elist25;
2796
2797 function Elist26 (N : Node_Id) return Elist_Id is
2798 pragma Assert (Nkind (N) in N_Entity);
2799 Value : constant Union_Id := Nodes.Table (N + 4).Field8;
2800 begin
2801 if Value = 0 then
2802 return No_Elist;
2803 else
2804 return Elist_Id (Value);
2805 end if;
2806 end Elist26;
2807
2808 function Name1 (N : Node_Id) return Name_Id is
2809 begin
2810 pragma Assert (N <= Nodes.Last);
2811 return Name_Id (Nodes.Table (N).Field1);
2812 end Name1;
2813
2814 function Name2 (N : Node_Id) return Name_Id is
2815 begin
2816 pragma Assert (N <= Nodes.Last);
2817 return Name_Id (Nodes.Table (N).Field2);
2818 end Name2;
2819
2820 function Str3 (N : Node_Id) return String_Id is
2821 begin
2822 pragma Assert (N <= Nodes.Last);
2823 return String_Id (Nodes.Table (N).Field3);
2824 end Str3;
2825
2826 function Uint2 (N : Node_Id) return Uint is
2827 pragma Assert (N <= Nodes.Last);
2828 U : constant Union_Id := Nodes.Table (N).Field2;
2829 begin
2830 if U = 0 then
2831 return Uint_0;
2832 else
2833 return From_Union (U);
2834 end if;
2835 end Uint2;
2836
2837 function Uint3 (N : Node_Id) return Uint is
2838 pragma Assert (N <= Nodes.Last);
2839 U : constant Union_Id := Nodes.Table (N).Field3;
2840 begin
2841 if U = 0 then
2842 return Uint_0;
2843 else
2844 return From_Union (U);
2845 end if;
2846 end Uint3;
2847
2848 function Uint4 (N : Node_Id) return Uint is
2849 pragma Assert (N <= Nodes.Last);
2850 U : constant Union_Id := Nodes.Table (N).Field4;
2851 begin
2852 if U = 0 then
2853 return Uint_0;
2854 else
2855 return From_Union (U);
2856 end if;
2857 end Uint4;
2858
2859 function Uint5 (N : Node_Id) return Uint is
2860 pragma Assert (N <= Nodes.Last);
2861 U : constant Union_Id := Nodes.Table (N).Field5;
2862 begin
2863 if U = 0 then
2864 return Uint_0;
2865 else
2866 return From_Union (U);
2867 end if;
2868 end Uint5;
2869
2870 function Uint8 (N : Node_Id) return Uint is
2871 pragma Assert (Nkind (N) in N_Entity);
2872 U : constant Union_Id := Nodes.Table (N + 1).Field8;
2873 begin
2874 if U = 0 then
2875 return Uint_0;
2876 else
2877 return From_Union (U);
2878 end if;
2879 end Uint8;
2880
2881 function Uint9 (N : Node_Id) return Uint is
2882 pragma Assert (Nkind (N) in N_Entity);
2883 U : constant Union_Id := Nodes.Table (N + 1).Field9;
2884 begin
2885 if U = 0 then
2886 return Uint_0;
2887 else
2888 return From_Union (U);
2889 end if;
2890 end Uint9;
2891
2892 function Uint10 (N : Node_Id) return Uint is
2893 pragma Assert (Nkind (N) in N_Entity);
2894 U : constant Union_Id := Nodes.Table (N + 1).Field10;
2895 begin
2896 if U = 0 then
2897 return Uint_0;
2898 else
2899 return From_Union (U);
2900 end if;
2901 end Uint10;
2902
2903 function Uint11 (N : Node_Id) return Uint is
2904 pragma Assert (Nkind (N) in N_Entity);
2905 U : constant Union_Id := Nodes.Table (N + 1).Field11;
2906 begin
2907 if U = 0 then
2908 return Uint_0;
2909 else
2910 return From_Union (U);
2911 end if;
2912 end Uint11;
2913
2914 function Uint12 (N : Node_Id) return Uint is
2915 pragma Assert (Nkind (N) in N_Entity);
2916 U : constant Union_Id := Nodes.Table (N + 1).Field12;
2917 begin
2918 if U = 0 then
2919 return Uint_0;
2920 else
2921 return From_Union (U);
2922 end if;
2923 end Uint12;
2924
2925 function Uint13 (N : Node_Id) return Uint is
2926 pragma Assert (Nkind (N) in N_Entity);
2927 U : constant Union_Id := Nodes.Table (N + 2).Field6;
2928 begin
2929 if U = 0 then
2930 return Uint_0;
2931 else
2932 return From_Union (U);
2933 end if;
2934 end Uint13;
2935
2936 function Uint14 (N : Node_Id) return Uint is
2937 pragma Assert (Nkind (N) in N_Entity);
2938 U : constant Union_Id := Nodes.Table (N + 2).Field7;
2939 begin
2940 if U = 0 then
2941 return Uint_0;
2942 else
2943 return From_Union (U);
2944 end if;
2945 end Uint14;
2946
2947 function Uint15 (N : Node_Id) return Uint is
2948 pragma Assert (Nkind (N) in N_Entity);
2949 U : constant Union_Id := Nodes.Table (N + 2).Field8;
2950 begin
2951 if U = 0 then
2952 return Uint_0;
2953 else
2954 return From_Union (U);
2955 end if;
2956 end Uint15;
2957
2958 function Uint16 (N : Node_Id) return Uint is
2959 pragma Assert (Nkind (N) in N_Entity);
2960 U : constant Union_Id := Nodes.Table (N + 2).Field9;
2961 begin
2962 if U = 0 then
2963 return Uint_0;
2964 else
2965 return From_Union (U);
2966 end if;
2967 end Uint16;
2968
2969 function Uint17 (N : Node_Id) return Uint is
2970 pragma Assert (Nkind (N) in N_Entity);
2971 U : constant Union_Id := Nodes.Table (N + 2).Field10;
2972 begin
2973 if U = 0 then
2974 return Uint_0;
2975 else
2976 return From_Union (U);
2977 end if;
2978 end Uint17;
2979
2980 function Uint22 (N : Node_Id) return Uint is
2981 pragma Assert (Nkind (N) in N_Entity);
2982 U : constant Union_Id := Nodes.Table (N + 3).Field9;
2983 begin
2984 if U = 0 then
2985 return Uint_0;
2986 else
2987 return From_Union (U);
2988 end if;
2989 end Uint22;
2990
2991 function Ureal3 (N : Node_Id) return Ureal is
2992 begin
2993 pragma Assert (N <= Nodes.Last);
2994 return From_Union (Nodes.Table (N).Field3);
2995 end Ureal3;
2996
2997 function Ureal18 (N : Node_Id) return Ureal is
2998 begin
2999 pragma Assert (Nkind (N) in N_Entity);
3000 return From_Union (Nodes.Table (N + 2).Field11);
3001 end Ureal18;
3002
3003 function Ureal21 (N : Node_Id) return Ureal is
3004 begin
3005 pragma Assert (Nkind (N) in N_Entity);
3006 return From_Union (Nodes.Table (N + 3).Field8);
3007 end Ureal21;
3008
3009 function Flag4 (N : Node_Id) return Boolean is
3010 begin
3011 pragma Assert (N <= Nodes.Last);
3012 return Nodes.Table (N).Flag4;
3013 end Flag4;
3014
3015 function Flag5 (N : Node_Id) return Boolean is
3016 begin
3017 pragma Assert (N <= Nodes.Last);
3018 return Nodes.Table (N).Flag5;
3019 end Flag5;
3020
3021 function Flag6 (N : Node_Id) return Boolean is
3022 begin
3023 pragma Assert (N <= Nodes.Last);
3024 return Nodes.Table (N).Flag6;
3025 end Flag6;
3026
3027 function Flag7 (N : Node_Id) return Boolean is
3028 begin
3029 pragma Assert (N <= Nodes.Last);
3030 return Nodes.Table (N).Flag7;
3031 end Flag7;
3032
3033 function Flag8 (N : Node_Id) return Boolean is
3034 begin
3035 pragma Assert (N <= Nodes.Last);
3036 return Nodes.Table (N).Flag8;
3037 end Flag8;
3038
3039 function Flag9 (N : Node_Id) return Boolean is
3040 begin
3041 pragma Assert (N <= Nodes.Last);
3042 return Nodes.Table (N).Flag9;
3043 end Flag9;
3044
3045 function Flag10 (N : Node_Id) return Boolean is
3046 begin
3047 pragma Assert (N <= Nodes.Last);
3048 return Nodes.Table (N).Flag10;
3049 end Flag10;
3050
3051 function Flag11 (N : Node_Id) return Boolean is
3052 begin
3053 pragma Assert (N <= Nodes.Last);
3054 return Nodes.Table (N).Flag11;
3055 end Flag11;
3056
3057 function Flag12 (N : Node_Id) return Boolean is
3058 begin
3059 pragma Assert (N <= Nodes.Last);
3060 return Nodes.Table (N).Flag12;
3061 end Flag12;
3062
3063 function Flag13 (N : Node_Id) return Boolean is
3064 begin
3065 pragma Assert (N <= Nodes.Last);
3066 return Nodes.Table (N).Flag13;
3067 end Flag13;
3068
3069 function Flag14 (N : Node_Id) return Boolean is
3070 begin
3071 pragma Assert (N <= Nodes.Last);
3072 return Nodes.Table (N).Flag14;
3073 end Flag14;
3074
3075 function Flag15 (N : Node_Id) return Boolean is
3076 begin
3077 pragma Assert (N <= Nodes.Last);
3078 return Nodes.Table (N).Flag15;
3079 end Flag15;
3080
3081 function Flag16 (N : Node_Id) return Boolean is
3082 begin
3083 pragma Assert (N <= Nodes.Last);
3084 return Nodes.Table (N).Flag16;
3085 end Flag16;
3086
3087 function Flag17 (N : Node_Id) return Boolean is
3088 begin
3089 pragma Assert (N <= Nodes.Last);
3090 return Nodes.Table (N).Flag17;
3091 end Flag17;
3092
3093 function Flag18 (N : Node_Id) return Boolean is
3094 begin
3095 pragma Assert (N <= Nodes.Last);
3096 return Nodes.Table (N).Flag18;
3097 end Flag18;
3098
3099 function Flag19 (N : Node_Id) return Boolean is
3100 begin
3101 pragma Assert (Nkind (N) in N_Entity);
3102 return Nodes.Table (N + 1).In_List;
3103 end Flag19;
3104
3105 function Flag20 (N : Node_Id) return Boolean is
3106 begin
3107 pragma Assert (Nkind (N) in N_Entity);
3108 return Nodes.Table (N + 1).Has_Aspects;
3109 end Flag20;
3110
3111 function Flag21 (N : Node_Id) return Boolean is
3112 begin
3113 pragma Assert (Nkind (N) in N_Entity);
3114 return Nodes.Table (N + 1).Rewrite_Ins;
3115 end Flag21;
3116
3117 function Flag22 (N : Node_Id) return Boolean is
3118 begin
3119 pragma Assert (Nkind (N) in N_Entity);
3120 return Nodes.Table (N + 1).Analyzed;
3121 end Flag22;
3122
3123 function Flag23 (N : Node_Id) return Boolean is
3124 begin
3125 pragma Assert (Nkind (N) in N_Entity);
3126 return Nodes.Table (N + 1).Comes_From_Source;
3127 end Flag23;
3128
3129 function Flag24 (N : Node_Id) return Boolean is
3130 begin
3131 pragma Assert (Nkind (N) in N_Entity);
3132 return Nodes.Table (N + 1).Error_Posted;
3133 end Flag24;
3134
3135 function Flag25 (N : Node_Id) return Boolean is
3136 begin
3137 pragma Assert (Nkind (N) in N_Entity);
3138 return Nodes.Table (N + 1).Flag4;
3139 end Flag25;
3140
3141 function Flag26 (N : Node_Id) return Boolean is
3142 begin
3143 pragma Assert (Nkind (N) in N_Entity);
3144 return Nodes.Table (N + 1).Flag5;
3145 end Flag26;
3146
3147 function Flag27 (N : Node_Id) return Boolean is
3148 begin
3149 pragma Assert (Nkind (N) in N_Entity);
3150 return Nodes.Table (N + 1).Flag6;
3151 end Flag27;
3152
3153 function Flag28 (N : Node_Id) return Boolean is
3154 begin
3155 pragma Assert (Nkind (N) in N_Entity);
3156 return Nodes.Table (N + 1).Flag7;
3157 end Flag28;
3158
3159 function Flag29 (N : Node_Id) return Boolean is
3160 begin
3161 pragma Assert (Nkind (N) in N_Entity);
3162 return Nodes.Table (N + 1).Flag8;
3163 end Flag29;
3164
3165 function Flag30 (N : Node_Id) return Boolean is
3166 begin
3167 pragma Assert (Nkind (N) in N_Entity);
3168 return Nodes.Table (N + 1).Flag9;
3169 end Flag30;
3170
3171 function Flag31 (N : Node_Id) return Boolean is
3172 begin
3173 pragma Assert (Nkind (N) in N_Entity);
3174 return Nodes.Table (N + 1).Flag10;
3175 end Flag31;
3176
3177 function Flag32 (N : Node_Id) return Boolean is
3178 begin
3179 pragma Assert (Nkind (N) in N_Entity);
3180 return Nodes.Table (N + 1).Flag11;
3181 end Flag32;
3182
3183 function Flag33 (N : Node_Id) return Boolean is
3184 begin
3185 pragma Assert (Nkind (N) in N_Entity);
3186 return Nodes.Table (N + 1).Flag12;
3187 end Flag33;
3188
3189 function Flag34 (N : Node_Id) return Boolean is
3190 begin
3191 pragma Assert (Nkind (N) in N_Entity);
3192 return Nodes.Table (N + 1).Flag13;
3193 end Flag34;
3194
3195 function Flag35 (N : Node_Id) return Boolean is
3196 begin
3197 pragma Assert (Nkind (N) in N_Entity);
3198 return Nodes.Table (N + 1).Flag14;
3199 end Flag35;
3200
3201 function Flag36 (N : Node_Id) return Boolean is
3202 begin
3203 pragma Assert (Nkind (N) in N_Entity);
3204 return Nodes.Table (N + 1).Flag15;
3205 end Flag36;
3206
3207 function Flag37 (N : Node_Id) return Boolean is
3208 begin
3209 pragma Assert (Nkind (N) in N_Entity);
3210 return Nodes.Table (N + 1).Flag16;
3211 end Flag37;
3212
3213 function Flag38 (N : Node_Id) return Boolean is
3214 begin
3215 pragma Assert (Nkind (N) in N_Entity);
3216 return Nodes.Table (N + 1).Flag17;
3217 end Flag38;
3218
3219 function Flag39 (N : Node_Id) return Boolean is
3220 begin
3221 pragma Assert (Nkind (N) in N_Entity);
3222 return Nodes.Table (N + 1).Flag18;
3223 end Flag39;
3224
3225 function Flag40 (N : Node_Id) return Boolean is
3226 begin
3227 pragma Assert (Nkind (N) in N_Entity);
3228 return Nodes.Table (N + 2).In_List;
3229 end Flag40;
3230
3231 function Flag41 (N : Node_Id) return Boolean is
3232 begin
3233 pragma Assert (Nkind (N) in N_Entity);
3234 return Nodes.Table (N + 2).Has_Aspects;
3235 end Flag41;
3236
3237 function Flag42 (N : Node_Id) return Boolean is
3238 begin
3239 pragma Assert (Nkind (N) in N_Entity);
3240 return Nodes.Table (N + 2).Rewrite_Ins;
3241 end Flag42;
3242
3243 function Flag43 (N : Node_Id) return Boolean is
3244 begin
3245 pragma Assert (Nkind (N) in N_Entity);
3246 return Nodes.Table (N + 2).Analyzed;
3247 end Flag43;
3248
3249 function Flag44 (N : Node_Id) return Boolean is
3250 begin
3251 pragma Assert (Nkind (N) in N_Entity);
3252 return Nodes.Table (N + 2).Comes_From_Source;
3253 end Flag44;
3254
3255 function Flag45 (N : Node_Id) return Boolean is
3256 begin
3257 pragma Assert (Nkind (N) in N_Entity);
3258 return Nodes.Table (N + 2).Error_Posted;
3259 end Flag45;
3260
3261 function Flag46 (N : Node_Id) return Boolean is
3262 begin
3263 pragma Assert (Nkind (N) in N_Entity);
3264 return Nodes.Table (N + 2).Flag4;
3265 end Flag46;
3266
3267 function Flag47 (N : Node_Id) return Boolean is
3268 begin
3269 pragma Assert (Nkind (N) in N_Entity);
3270 return Nodes.Table (N + 2).Flag5;
3271 end Flag47;
3272
3273 function Flag48 (N : Node_Id) return Boolean is
3274 begin
3275 pragma Assert (Nkind (N) in N_Entity);
3276 return Nodes.Table (N + 2).Flag6;
3277 end Flag48;
3278
3279 function Flag49 (N : Node_Id) return Boolean is
3280 begin
3281 pragma Assert (Nkind (N) in N_Entity);
3282 return Nodes.Table (N + 2).Flag7;
3283 end Flag49;
3284
3285 function Flag50 (N : Node_Id) return Boolean is
3286 begin
3287 pragma Assert (Nkind (N) in N_Entity);
3288 return Nodes.Table (N + 2).Flag8;
3289 end Flag50;
3290
3291 function Flag51 (N : Node_Id) return Boolean is
3292 begin
3293 pragma Assert (Nkind (N) in N_Entity);
3294 return Nodes.Table (N + 2).Flag9;
3295 end Flag51;
3296
3297 function Flag52 (N : Node_Id) return Boolean is
3298 begin
3299 pragma Assert (Nkind (N) in N_Entity);
3300 return Nodes.Table (N + 2).Flag10;
3301 end Flag52;
3302
3303 function Flag53 (N : Node_Id) return Boolean is
3304 begin
3305 pragma Assert (Nkind (N) in N_Entity);
3306 return Nodes.Table (N + 2).Flag11;
3307 end Flag53;
3308
3309 function Flag54 (N : Node_Id) return Boolean is
3310 begin
3311 pragma Assert (Nkind (N) in N_Entity);
3312 return Nodes.Table (N + 2).Flag12;
3313 end Flag54;
3314
3315 function Flag55 (N : Node_Id) return Boolean is
3316 begin
3317 pragma Assert (Nkind (N) in N_Entity);
3318 return Nodes.Table (N + 2).Flag13;
3319 end Flag55;
3320
3321 function Flag56 (N : Node_Id) return Boolean is
3322 begin
3323 pragma Assert (Nkind (N) in N_Entity);
3324 return Nodes.Table (N + 2).Flag14;
3325 end Flag56;
3326
3327 function Flag57 (N : Node_Id) return Boolean is
3328 begin
3329 pragma Assert (Nkind (N) in N_Entity);
3330 return Nodes.Table (N + 2).Flag15;
3331 end Flag57;
3332
3333 function Flag58 (N : Node_Id) return Boolean is
3334 begin
3335 pragma Assert (Nkind (N) in N_Entity);
3336 return Nodes.Table (N + 2).Flag16;
3337 end Flag58;
3338
3339 function Flag59 (N : Node_Id) return Boolean is
3340 begin
3341 pragma Assert (Nkind (N) in N_Entity);
3342 return Nodes.Table (N + 2).Flag17;
3343 end Flag59;
3344
3345 function Flag60 (N : Node_Id) return Boolean is
3346 begin
3347 pragma Assert (Nkind (N) in N_Entity);
3348 return Nodes.Table (N + 2).Flag18;
3349 end Flag60;
3350
3351 function Flag61 (N : Node_Id) return Boolean is
3352 begin
3353 pragma Assert (Nkind (N) in N_Entity);
3354 return Nodes.Table (N + 1).Pflag1;
3355 end Flag61;
3356
3357 function Flag62 (N : Node_Id) return Boolean is
3358 begin
3359 pragma Assert (Nkind (N) in N_Entity);
3360 return Nodes.Table (N + 1).Pflag2;
3361 end Flag62;
3362
3363 function Flag63 (N : Node_Id) return Boolean is
3364 begin
3365 pragma Assert (Nkind (N) in N_Entity);
3366 return Nodes.Table (N + 2).Pflag1;
3367 end Flag63;
3368
3369 function Flag64 (N : Node_Id) return Boolean is
3370 begin
3371 pragma Assert (Nkind (N) in N_Entity);
3372 return Nodes.Table (N + 2).Pflag2;
3373 end Flag64;
3374
3375 function Flag65 (N : Node_Id) return Boolean is
3376 begin
3377 pragma Assert (Nkind (N) in N_Entity);
3378 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag65;
3379 end Flag65;
3380
3381 function Flag66 (N : Node_Id) return Boolean is
3382 begin
3383 pragma Assert (Nkind (N) in N_Entity);
3384 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag66;
3385 end Flag66;
3386
3387 function Flag67 (N : Node_Id) return Boolean is
3388 begin
3389 pragma Assert (Nkind (N) in N_Entity);
3390 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag67;
3391 end Flag67;
3392
3393 function Flag68 (N : Node_Id) return Boolean is
3394 begin
3395 pragma Assert (Nkind (N) in N_Entity);
3396 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag68;
3397 end Flag68;
3398
3399 function Flag69 (N : Node_Id) return Boolean is
3400 begin
3401 pragma Assert (Nkind (N) in N_Entity);
3402 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag69;
3403 end Flag69;
3404
3405 function Flag70 (N : Node_Id) return Boolean is
3406 begin
3407 pragma Assert (Nkind (N) in N_Entity);
3408 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag70;
3409 end Flag70;
3410
3411 function Flag71 (N : Node_Id) return Boolean is
3412 begin
3413 pragma Assert (Nkind (N) in N_Entity);
3414 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag71;
3415 end Flag71;
3416
3417 function Flag72 (N : Node_Id) return Boolean is
3418 begin
3419 pragma Assert (Nkind (N) in N_Entity);
3420 return To_Flag_Byte (Nodes.Table (N + 2).Nkind).Flag72;
3421 end Flag72;
3422
3423 function Flag73 (N : Node_Id) return Boolean is
3424 begin
3425 pragma Assert (Nkind (N) in N_Entity);
3426 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag73;
3427 end Flag73;
3428
3429 function Flag74 (N : Node_Id) return Boolean is
3430 begin
3431 pragma Assert (Nkind (N) in N_Entity);
3432 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag74;
3433 end Flag74;
3434
3435 function Flag75 (N : Node_Id) return Boolean is
3436 begin
3437 pragma Assert (Nkind (N) in N_Entity);
3438 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag75;
3439 end Flag75;
3440
3441 function Flag76 (N : Node_Id) return Boolean is
3442 begin
3443 pragma Assert (Nkind (N) in N_Entity);
3444 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag76;
3445 end Flag76;
3446
3447 function Flag77 (N : Node_Id) return Boolean is
3448 begin
3449 pragma Assert (Nkind (N) in N_Entity);
3450 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag77;
3451 end Flag77;
3452
3453 function Flag78 (N : Node_Id) return Boolean is
3454 begin
3455 pragma Assert (Nkind (N) in N_Entity);
3456 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag78;
3457 end Flag78;
3458
3459 function Flag79 (N : Node_Id) return Boolean is
3460 begin
3461 pragma Assert (Nkind (N) in N_Entity);
3462 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag79;
3463 end Flag79;
3464
3465 function Flag80 (N : Node_Id) return Boolean is
3466 begin
3467 pragma Assert (Nkind (N) in N_Entity);
3468 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag80;
3469 end Flag80;
3470
3471 function Flag81 (N : Node_Id) return Boolean is
3472 begin
3473 pragma Assert (Nkind (N) in N_Entity);
3474 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag81;
3475 end Flag81;
3476
3477 function Flag82 (N : Node_Id) return Boolean is
3478 begin
3479 pragma Assert (Nkind (N) in N_Entity);
3480 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag82;
3481 end Flag82;
3482
3483 function Flag83 (N : Node_Id) return Boolean is
3484 begin
3485 pragma Assert (Nkind (N) in N_Entity);
3486 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag83;
3487 end Flag83;
3488
3489 function Flag84 (N : Node_Id) return Boolean is
3490 begin
3491 pragma Assert (Nkind (N) in N_Entity);
3492 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag84;
3493 end Flag84;
3494
3495 function Flag85 (N : Node_Id) return Boolean is
3496 begin
3497 pragma Assert (Nkind (N) in N_Entity);
3498 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag85;
3499 end Flag85;
3500
3501 function Flag86 (N : Node_Id) return Boolean is
3502 begin
3503 pragma Assert (Nkind (N) in N_Entity);
3504 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag86;
3505 end Flag86;
3506
3507 function Flag87 (N : Node_Id) return Boolean is
3508 begin
3509 pragma Assert (Nkind (N) in N_Entity);
3510 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag87;
3511 end Flag87;
3512
3513 function Flag88 (N : Node_Id) return Boolean is
3514 begin
3515 pragma Assert (Nkind (N) in N_Entity);
3516 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag88;
3517 end Flag88;
3518
3519 function Flag89 (N : Node_Id) return Boolean is
3520 begin
3521 pragma Assert (Nkind (N) in N_Entity);
3522 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag89;
3523 end Flag89;
3524
3525 function Flag90 (N : Node_Id) return Boolean is
3526 begin
3527 pragma Assert (Nkind (N) in N_Entity);
3528 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag90;
3529 end Flag90;
3530
3531 function Flag91 (N : Node_Id) return Boolean is
3532 begin
3533 pragma Assert (Nkind (N) in N_Entity);
3534 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag91;
3535 end Flag91;
3536
3537 function Flag92 (N : Node_Id) return Boolean is
3538 begin
3539 pragma Assert (Nkind (N) in N_Entity);
3540 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag92;
3541 end Flag92;
3542
3543 function Flag93 (N : Node_Id) return Boolean is
3544 begin
3545 pragma Assert (Nkind (N) in N_Entity);
3546 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag93;
3547 end Flag93;
3548
3549 function Flag94 (N : Node_Id) return Boolean is
3550 begin
3551 pragma Assert (Nkind (N) in N_Entity);
3552 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag94;
3553 end Flag94;
3554
3555 function Flag95 (N : Node_Id) return Boolean is
3556 begin
3557 pragma Assert (Nkind (N) in N_Entity);
3558 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag95;
3559 end Flag95;
3560
3561 function Flag96 (N : Node_Id) return Boolean is
3562 begin
3563 pragma Assert (Nkind (N) in N_Entity);
3564 return To_Flag_Word (Nodes.Table (N + 2).Field12).Flag96;
3565 end Flag96;
3566
3567 function Flag97 (N : Node_Id) return Boolean is
3568 begin
3569 pragma Assert (Nkind (N) in N_Entity);
3570 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag97;
3571 end Flag97;
3572
3573 function Flag98 (N : Node_Id) return Boolean is
3574 begin
3575 pragma Assert (Nkind (N) in N_Entity);
3576 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag98;
3577 end Flag98;
3578
3579 function Flag99 (N : Node_Id) return Boolean is
3580 begin
3581 pragma Assert (Nkind (N) in N_Entity);
3582 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag99;
3583 end Flag99;
3584
3585 function Flag100 (N : Node_Id) return Boolean is
3586 begin
3587 pragma Assert (Nkind (N) in N_Entity);
3588 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag100;
3589 end Flag100;
3590
3591 function Flag101 (N : Node_Id) return Boolean is
3592 begin
3593 pragma Assert (Nkind (N) in N_Entity);
3594 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag101;
3595 end Flag101;
3596
3597 function Flag102 (N : Node_Id) return Boolean is
3598 begin
3599 pragma Assert (Nkind (N) in N_Entity);
3600 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag102;
3601 end Flag102;
3602
3603 function Flag103 (N : Node_Id) return Boolean is
3604 begin
3605 pragma Assert (Nkind (N) in N_Entity);
3606 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag103;
3607 end Flag103;
3608
3609 function Flag104 (N : Node_Id) return Boolean is
3610 begin
3611 pragma Assert (Nkind (N) in N_Entity);
3612 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag104;
3613 end Flag104;
3614
3615 function Flag105 (N : Node_Id) return Boolean is
3616 begin
3617 pragma Assert (Nkind (N) in N_Entity);
3618 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag105;
3619 end Flag105;
3620
3621 function Flag106 (N : Node_Id) return Boolean is
3622 begin
3623 pragma Assert (Nkind (N) in N_Entity);
3624 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag106;
3625 end Flag106;
3626
3627 function Flag107 (N : Node_Id) return Boolean is
3628 begin
3629 pragma Assert (Nkind (N) in N_Entity);
3630 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag107;
3631 end Flag107;
3632
3633 function Flag108 (N : Node_Id) return Boolean is
3634 begin
3635 pragma Assert (Nkind (N) in N_Entity);
3636 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag108;
3637 end Flag108;
3638
3639 function Flag109 (N : Node_Id) return Boolean is
3640 begin
3641 pragma Assert (Nkind (N) in N_Entity);
3642 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag109;
3643 end Flag109;
3644
3645 function Flag110 (N : Node_Id) return Boolean is
3646 begin
3647 pragma Assert (Nkind (N) in N_Entity);
3648 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag110;
3649 end Flag110;
3650
3651 function Flag111 (N : Node_Id) return Boolean is
3652 begin
3653 pragma Assert (Nkind (N) in N_Entity);
3654 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag111;
3655 end Flag111;
3656
3657 function Flag112 (N : Node_Id) return Boolean is
3658 begin
3659 pragma Assert (Nkind (N) in N_Entity);
3660 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag112;
3661 end Flag112;
3662
3663 function Flag113 (N : Node_Id) return Boolean is
3664 begin
3665 pragma Assert (Nkind (N) in N_Entity);
3666 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag113;
3667 end Flag113;
3668
3669 function Flag114 (N : Node_Id) return Boolean is
3670 begin
3671 pragma Assert (Nkind (N) in N_Entity);
3672 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag114;
3673 end Flag114;
3674
3675 function Flag115 (N : Node_Id) return Boolean is
3676 begin
3677 pragma Assert (Nkind (N) in N_Entity);
3678 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag115;
3679 end Flag115;
3680
3681 function Flag116 (N : Node_Id) return Boolean is
3682 begin
3683 pragma Assert (Nkind (N) in N_Entity);
3684 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag116;
3685 end Flag116;
3686
3687 function Flag117 (N : Node_Id) return Boolean is
3688 begin
3689 pragma Assert (Nkind (N) in N_Entity);
3690 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag117;
3691 end Flag117;
3692
3693 function Flag118 (N : Node_Id) return Boolean is
3694 begin
3695 pragma Assert (Nkind (N) in N_Entity);
3696 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag118;
3697 end Flag118;
3698
3699 function Flag119 (N : Node_Id) return Boolean is
3700 begin
3701 pragma Assert (Nkind (N) in N_Entity);
3702 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag119;
3703 end Flag119;
3704
3705 function Flag120 (N : Node_Id) return Boolean is
3706 begin
3707 pragma Assert (Nkind (N) in N_Entity);
3708 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag120;
3709 end Flag120;
3710
3711 function Flag121 (N : Node_Id) return Boolean is
3712 begin
3713 pragma Assert (Nkind (N) in N_Entity);
3714 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag121;
3715 end Flag121;
3716
3717 function Flag122 (N : Node_Id) return Boolean is
3718 begin
3719 pragma Assert (Nkind (N) in N_Entity);
3720 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag122;
3721 end Flag122;
3722
3723 function Flag123 (N : Node_Id) return Boolean is
3724 begin
3725 pragma Assert (Nkind (N) in N_Entity);
3726 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag123;
3727 end Flag123;
3728
3729 function Flag124 (N : Node_Id) return Boolean is
3730 begin
3731 pragma Assert (Nkind (N) in N_Entity);
3732 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag124;
3733 end Flag124;
3734
3735 function Flag125 (N : Node_Id) return Boolean is
3736 begin
3737 pragma Assert (Nkind (N) in N_Entity);
3738 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag125;
3739 end Flag125;
3740
3741 function Flag126 (N : Node_Id) return Boolean is
3742 begin
3743 pragma Assert (Nkind (N) in N_Entity);
3744 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag126;
3745 end Flag126;
3746
3747 function Flag127 (N : Node_Id) return Boolean is
3748 begin
3749 pragma Assert (Nkind (N) in N_Entity);
3750 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag127;
3751 end Flag127;
3752
3753 function Flag128 (N : Node_Id) return Boolean is
3754 begin
3755 pragma Assert (Nkind (N) in N_Entity);
3756 return To_Flag_Word2 (Nodes.Table (N + 3).Field12).Flag128;
3757 end Flag128;
3758
3759 function Flag129 (N : Node_Id) return Boolean is
3760 begin
3761 pragma Assert (Nkind (N) in N_Entity);
3762 return Nodes.Table (N + 3).In_List;
3763 end Flag129;
3764
3765 function Flag130 (N : Node_Id) return Boolean is
3766 begin
3767 pragma Assert (Nkind (N) in N_Entity);
3768 return Nodes.Table (N + 3).Has_Aspects;
3769 end Flag130;
3770
3771 function Flag131 (N : Node_Id) return Boolean is
3772 begin
3773 pragma Assert (Nkind (N) in N_Entity);
3774 return Nodes.Table (N + 3).Rewrite_Ins;
3775 end Flag131;
3776
3777 function Flag132 (N : Node_Id) return Boolean is
3778 begin
3779 pragma Assert (Nkind (N) in N_Entity);
3780 return Nodes.Table (N + 3).Analyzed;
3781 end Flag132;
3782
3783 function Flag133 (N : Node_Id) return Boolean is
3784 begin
3785 pragma Assert (Nkind (N) in N_Entity);
3786 return Nodes.Table (N + 3).Comes_From_Source;
3787 end Flag133;
3788
3789 function Flag134 (N : Node_Id) return Boolean is
3790 begin
3791 pragma Assert (Nkind (N) in N_Entity);
3792 return Nodes.Table (N + 3).Error_Posted;
3793 end Flag134;
3794
3795 function Flag135 (N : Node_Id) return Boolean is
3796 begin
3797 pragma Assert (Nkind (N) in N_Entity);
3798 return Nodes.Table (N + 3).Flag4;
3799 end Flag135;
3800
3801 function Flag136 (N : Node_Id) return Boolean is
3802 begin
3803 pragma Assert (Nkind (N) in N_Entity);
3804 return Nodes.Table (N + 3).Flag5;
3805 end Flag136;
3806
3807 function Flag137 (N : Node_Id) return Boolean is
3808 begin
3809 pragma Assert (Nkind (N) in N_Entity);
3810 return Nodes.Table (N + 3).Flag6;
3811 end Flag137;
3812
3813 function Flag138 (N : Node_Id) return Boolean is
3814 begin
3815 pragma Assert (Nkind (N) in N_Entity);
3816 return Nodes.Table (N + 3).Flag7;
3817 end Flag138;
3818
3819 function Flag139 (N : Node_Id) return Boolean is
3820 begin
3821 pragma Assert (Nkind (N) in N_Entity);
3822 return Nodes.Table (N + 3).Flag8;
3823 end Flag139;
3824
3825 function Flag140 (N : Node_Id) return Boolean is
3826 begin
3827 pragma Assert (Nkind (N) in N_Entity);
3828 return Nodes.Table (N + 3).Flag9;
3829 end Flag140;
3830
3831 function Flag141 (N : Node_Id) return Boolean is
3832 begin
3833 pragma Assert (Nkind (N) in N_Entity);
3834 return Nodes.Table (N + 3).Flag10;
3835 end Flag141;
3836
3837 function Flag142 (N : Node_Id) return Boolean is
3838 begin
3839 pragma Assert (Nkind (N) in N_Entity);
3840 return Nodes.Table (N + 3).Flag11;
3841 end Flag142;
3842
3843 function Flag143 (N : Node_Id) return Boolean is
3844 begin
3845 pragma Assert (Nkind (N) in N_Entity);
3846 return Nodes.Table (N + 3).Flag12;
3847 end Flag143;
3848
3849 function Flag144 (N : Node_Id) return Boolean is
3850 begin
3851 pragma Assert (Nkind (N) in N_Entity);
3852 return Nodes.Table (N + 3).Flag13;
3853 end Flag144;
3854
3855 function Flag145 (N : Node_Id) return Boolean is
3856 begin
3857 pragma Assert (Nkind (N) in N_Entity);
3858 return Nodes.Table (N + 3).Flag14;
3859 end Flag145;
3860
3861 function Flag146 (N : Node_Id) return Boolean is
3862 begin
3863 pragma Assert (Nkind (N) in N_Entity);
3864 return Nodes.Table (N + 3).Flag15;
3865 end Flag146;
3866
3867 function Flag147 (N : Node_Id) return Boolean is
3868 begin
3869 pragma Assert (Nkind (N) in N_Entity);
3870 return Nodes.Table (N + 3).Flag16;
3871 end Flag147;
3872
3873 function Flag148 (N : Node_Id) return Boolean is
3874 begin
3875 pragma Assert (Nkind (N) in N_Entity);
3876 return Nodes.Table (N + 3).Flag17;
3877 end Flag148;
3878
3879 function Flag149 (N : Node_Id) return Boolean is
3880 begin
3881 pragma Assert (Nkind (N) in N_Entity);
3882 return Nodes.Table (N + 3).Flag18;
3883 end Flag149;
3884
3885 function Flag150 (N : Node_Id) return Boolean is
3886 begin
3887 pragma Assert (Nkind (N) in N_Entity);
3888 return Nodes.Table (N + 3).Pflag1;
3889 end Flag150;
3890
3891 function Flag151 (N : Node_Id) return Boolean is
3892 begin
3893 pragma Assert (Nkind (N) in N_Entity);
3894 return Nodes.Table (N + 3).Pflag2;
3895 end Flag151;
3896
3897 function Flag152 (N : Node_Id) return Boolean is
3898 begin
3899 pragma Assert (Nkind (N) in N_Entity);
3900 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag152;
3901 end Flag152;
3902
3903 function Flag153 (N : Node_Id) return Boolean is
3904 begin
3905 pragma Assert (Nkind (N) in N_Entity);
3906 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag153;
3907 end Flag153;
3908
3909 function Flag154 (N : Node_Id) return Boolean is
3910 begin
3911 pragma Assert (Nkind (N) in N_Entity);
3912 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag154;
3913 end Flag154;
3914
3915 function Flag155 (N : Node_Id) return Boolean is
3916 begin
3917 pragma Assert (Nkind (N) in N_Entity);
3918 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag155;
3919 end Flag155;
3920
3921 function Flag156 (N : Node_Id) return Boolean is
3922 begin
3923 pragma Assert (Nkind (N) in N_Entity);
3924 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag156;
3925 end Flag156;
3926
3927 function Flag157 (N : Node_Id) return Boolean is
3928 begin
3929 pragma Assert (Nkind (N) in N_Entity);
3930 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag157;
3931 end Flag157;
3932
3933 function Flag158 (N : Node_Id) return Boolean is
3934 begin
3935 pragma Assert (Nkind (N) in N_Entity);
3936 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag158;
3937 end Flag158;
3938
3939 function Flag159 (N : Node_Id) return Boolean is
3940 begin
3941 pragma Assert (Nkind (N) in N_Entity);
3942 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag159;
3943 end Flag159;
3944
3945 function Flag160 (N : Node_Id) return Boolean is
3946 begin
3947 pragma Assert (Nkind (N) in N_Entity);
3948 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag160;
3949 end Flag160;
3950
3951 function Flag161 (N : Node_Id) return Boolean is
3952 begin
3953 pragma Assert (Nkind (N) in N_Entity);
3954 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag161;
3955 end Flag161;
3956
3957 function Flag162 (N : Node_Id) return Boolean is
3958 begin
3959 pragma Assert (Nkind (N) in N_Entity);
3960 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag162;
3961 end Flag162;
3962
3963 function Flag163 (N : Node_Id) return Boolean is
3964 begin
3965 pragma Assert (Nkind (N) in N_Entity);
3966 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag163;
3967 end Flag163;
3968
3969 function Flag164 (N : Node_Id) return Boolean is
3970 begin
3971 pragma Assert (Nkind (N) in N_Entity);
3972 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag164;
3973 end Flag164;
3974
3975 function Flag165 (N : Node_Id) return Boolean is
3976 begin
3977 pragma Assert (Nkind (N) in N_Entity);
3978 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag165;
3979 end Flag165;
3980
3981 function Flag166 (N : Node_Id) return Boolean is
3982 begin
3983 pragma Assert (Nkind (N) in N_Entity);
3984 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag166;
3985 end Flag166;
3986
3987 function Flag167 (N : Node_Id) return Boolean is
3988 begin
3989 pragma Assert (Nkind (N) in N_Entity);
3990 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag167;
3991 end Flag167;
3992
3993 function Flag168 (N : Node_Id) return Boolean is
3994 begin
3995 pragma Assert (Nkind (N) in N_Entity);
3996 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag168;
3997 end Flag168;
3998
3999 function Flag169 (N : Node_Id) return Boolean is
4000 begin
4001 pragma Assert (Nkind (N) in N_Entity);
4002 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag169;
4003 end Flag169;
4004
4005 function Flag170 (N : Node_Id) return Boolean is
4006 begin
4007 pragma Assert (Nkind (N) in N_Entity);
4008 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag170;
4009 end Flag170;
4010
4011 function Flag171 (N : Node_Id) return Boolean is
4012 begin
4013 pragma Assert (Nkind (N) in N_Entity);
4014 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag171;
4015 end Flag171;
4016
4017 function Flag172 (N : Node_Id) return Boolean is
4018 begin
4019 pragma Assert (Nkind (N) in N_Entity);
4020 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag172;
4021 end Flag172;
4022
4023 function Flag173 (N : Node_Id) return Boolean is
4024 begin
4025 pragma Assert (Nkind (N) in N_Entity);
4026 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag173;
4027 end Flag173;
4028
4029 function Flag174 (N : Node_Id) return Boolean is
4030 begin
4031 pragma Assert (Nkind (N) in N_Entity);
4032 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag174;
4033 end Flag174;
4034
4035 function Flag175 (N : Node_Id) return Boolean is
4036 begin
4037 pragma Assert (Nkind (N) in N_Entity);
4038 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag175;
4039 end Flag175;
4040
4041 function Flag176 (N : Node_Id) return Boolean is
4042 begin
4043 pragma Assert (Nkind (N) in N_Entity);
4044 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag176;
4045 end Flag176;
4046
4047 function Flag177 (N : Node_Id) return Boolean is
4048 begin
4049 pragma Assert (Nkind (N) in N_Entity);
4050 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag177;
4051 end Flag177;
4052
4053 function Flag178 (N : Node_Id) return Boolean is
4054 begin
4055 pragma Assert (Nkind (N) in N_Entity);
4056 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag178;
4057 end Flag178;
4058
4059 function Flag179 (N : Node_Id) return Boolean is
4060 begin
4061 pragma Assert (Nkind (N) in N_Entity);
4062 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag179;
4063 end Flag179;
4064
4065 function Flag180 (N : Node_Id) return Boolean is
4066 begin
4067 pragma Assert (Nkind (N) in N_Entity);
4068 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag180;
4069 end Flag180;
4070
4071 function Flag181 (N : Node_Id) return Boolean is
4072 begin
4073 pragma Assert (Nkind (N) in N_Entity);
4074 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag181;
4075 end Flag181;
4076
4077 function Flag182 (N : Node_Id) return Boolean is
4078 begin
4079 pragma Assert (Nkind (N) in N_Entity);
4080 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag182;
4081 end Flag182;
4082
4083 function Flag183 (N : Node_Id) return Boolean is
4084 begin
4085 pragma Assert (Nkind (N) in N_Entity);
4086 return To_Flag_Word3 (Nodes.Table (N + 3).Field11).Flag183;
4087 end Flag183;
4088
4089 function Flag184 (N : Node_Id) return Boolean is
4090 begin
4091 pragma Assert (Nkind (N) in N_Entity);
4092 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag184;
4093 end Flag184;
4094
4095 function Flag185 (N : Node_Id) return Boolean is
4096 begin
4097 pragma Assert (Nkind (N) in N_Entity);
4098 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag185;
4099 end Flag185;
4100
4101 function Flag186 (N : Node_Id) return Boolean is
4102 begin
4103 pragma Assert (Nkind (N) in N_Entity);
4104 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag186;
4105 end Flag186;
4106
4107 function Flag187 (N : Node_Id) return Boolean is
4108 begin
4109 pragma Assert (Nkind (N) in N_Entity);
4110 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag187;
4111 end Flag187;
4112
4113 function Flag188 (N : Node_Id) return Boolean is
4114 begin
4115 pragma Assert (Nkind (N) in N_Entity);
4116 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag188;
4117 end Flag188;
4118
4119 function Flag189 (N : Node_Id) return Boolean is
4120 begin
4121 pragma Assert (Nkind (N) in N_Entity);
4122 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag189;
4123 end Flag189;
4124
4125 function Flag190 (N : Node_Id) return Boolean is
4126 begin
4127 pragma Assert (Nkind (N) in N_Entity);
4128 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag190;
4129 end Flag190;
4130
4131 function Flag191 (N : Node_Id) return Boolean is
4132 begin
4133 pragma Assert (Nkind (N) in N_Entity);
4134 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag191;
4135 end Flag191;
4136
4137 function Flag192 (N : Node_Id) return Boolean is
4138 begin
4139 pragma Assert (Nkind (N) in N_Entity);
4140 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag192;
4141 end Flag192;
4142
4143 function Flag193 (N : Node_Id) return Boolean is
4144 begin
4145 pragma Assert (Nkind (N) in N_Entity);
4146 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag193;
4147 end Flag193;
4148
4149 function Flag194 (N : Node_Id) return Boolean is
4150 begin
4151 pragma Assert (Nkind (N) in N_Entity);
4152 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag194;
4153 end Flag194;
4154
4155 function Flag195 (N : Node_Id) return Boolean is
4156 begin
4157 pragma Assert (Nkind (N) in N_Entity);
4158 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag195;
4159 end Flag195;
4160
4161 function Flag196 (N : Node_Id) return Boolean is
4162 begin
4163 pragma Assert (Nkind (N) in N_Entity);
4164 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag196;
4165 end Flag196;
4166
4167 function Flag197 (N : Node_Id) return Boolean is
4168 begin
4169 pragma Assert (Nkind (N) in N_Entity);
4170 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag197;
4171 end Flag197;
4172
4173 function Flag198 (N : Node_Id) return Boolean is
4174 begin
4175 pragma Assert (Nkind (N) in N_Entity);
4176 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag198;
4177 end Flag198;
4178
4179 function Flag199 (N : Node_Id) return Boolean is
4180 begin
4181 pragma Assert (Nkind (N) in N_Entity);
4182 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag199;
4183 end Flag199;
4184
4185 function Flag200 (N : Node_Id) return Boolean is
4186 begin
4187 pragma Assert (Nkind (N) in N_Entity);
4188 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag200;
4189 end Flag200;
4190
4191 function Flag201 (N : Node_Id) return Boolean is
4192 begin
4193 pragma Assert (Nkind (N) in N_Entity);
4194 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag201;
4195 end Flag201;
4196
4197 function Flag202 (N : Node_Id) return Boolean is
4198 begin
4199 pragma Assert (Nkind (N) in N_Entity);
4200 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag202;
4201 end Flag202;
4202
4203 function Flag203 (N : Node_Id) return Boolean is
4204 begin
4205 pragma Assert (Nkind (N) in N_Entity);
4206 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag203;
4207 end Flag203;
4208
4209 function Flag204 (N : Node_Id) return Boolean is
4210 begin
4211 pragma Assert (Nkind (N) in N_Entity);
4212 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag204;
4213 end Flag204;
4214
4215 function Flag205 (N : Node_Id) return Boolean is
4216 begin
4217 pragma Assert (Nkind (N) in N_Entity);
4218 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag205;
4219 end Flag205;
4220
4221 function Flag206 (N : Node_Id) return Boolean is
4222 begin
4223 pragma Assert (Nkind (N) in N_Entity);
4224 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag206;
4225 end Flag206;
4226
4227 function Flag207 (N : Node_Id) return Boolean is
4228 begin
4229 pragma Assert (Nkind (N) in N_Entity);
4230 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag207;
4231 end Flag207;
4232
4233 function Flag208 (N : Node_Id) return Boolean is
4234 begin
4235 pragma Assert (Nkind (N) in N_Entity);
4236 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag208;
4237 end Flag208;
4238
4239 function Flag209 (N : Node_Id) return Boolean is
4240 begin
4241 pragma Assert (Nkind (N) in N_Entity);
4242 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag209;
4243 end Flag209;
4244
4245 function Flag210 (N : Node_Id) return Boolean is
4246 begin
4247 pragma Assert (Nkind (N) in N_Entity);
4248 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag210;
4249 end Flag210;
4250
4251 function Flag211 (N : Node_Id) return Boolean is
4252 begin
4253 pragma Assert (Nkind (N) in N_Entity);
4254 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag211;
4255 end Flag211;
4256
4257 function Flag212 (N : Node_Id) return Boolean is
4258 begin
4259 pragma Assert (Nkind (N) in N_Entity);
4260 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag212;
4261 end Flag212;
4262
4263 function Flag213 (N : Node_Id) return Boolean is
4264 begin
4265 pragma Assert (Nkind (N) in N_Entity);
4266 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag213;
4267 end Flag213;
4268
4269 function Flag214 (N : Node_Id) return Boolean is
4270 begin
4271 pragma Assert (Nkind (N) in N_Entity);
4272 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag214;
4273 end Flag214;
4274
4275 function Flag215 (N : Node_Id) return Boolean is
4276 begin
4277 pragma Assert (Nkind (N) in N_Entity);
4278 return To_Flag_Word4 (Nodes.Table (N + 4).Field12).Flag215;
4279 end Flag215;
4280
4281 function Flag216 (N : Node_Id) return Boolean is
4282 begin
4283 pragma Assert (Nkind (N) in N_Entity);
4284 return Nodes.Table (N + 4).In_List;
4285 end Flag216;
4286
4287 function Flag217 (N : Node_Id) return Boolean is
4288 begin
4289 pragma Assert (Nkind (N) in N_Entity);
4290 return Nodes.Table (N + 4).Has_Aspects;
4291 end Flag217;
4292
4293 function Flag218 (N : Node_Id) return Boolean is
4294 begin
4295 pragma Assert (Nkind (N) in N_Entity);
4296 return Nodes.Table (N + 4).Rewrite_Ins;
4297 end Flag218;
4298
4299 function Flag219 (N : Node_Id) return Boolean is
4300 begin
4301 pragma Assert (Nkind (N) in N_Entity);
4302 return Nodes.Table (N + 4).Analyzed;
4303 end Flag219;
4304
4305 function Flag220 (N : Node_Id) return Boolean is
4306 begin
4307 pragma Assert (Nkind (N) in N_Entity);
4308 return Nodes.Table (N + 4).Comes_From_Source;
4309 end Flag220;
4310
4311 function Flag221 (N : Node_Id) return Boolean is
4312 begin
4313 pragma Assert (Nkind (N) in N_Entity);
4314 return Nodes.Table (N + 4).Error_Posted;
4315 end Flag221;
4316
4317 function Flag222 (N : Node_Id) return Boolean is
4318 begin
4319 pragma Assert (Nkind (N) in N_Entity);
4320 return Nodes.Table (N + 4).Flag4;
4321 end Flag222;
4322
4323 function Flag223 (N : Node_Id) return Boolean is
4324 begin
4325 pragma Assert (Nkind (N) in N_Entity);
4326 return Nodes.Table (N + 4).Flag5;
4327 end Flag223;
4328
4329 function Flag224 (N : Node_Id) return Boolean is
4330 begin
4331 pragma Assert (Nkind (N) in N_Entity);
4332 return Nodes.Table (N + 4).Flag6;
4333 end Flag224;
4334
4335 function Flag225 (N : Node_Id) return Boolean is
4336 begin
4337 pragma Assert (Nkind (N) in N_Entity);
4338 return Nodes.Table (N + 4).Flag7;
4339 end Flag225;
4340
4341 function Flag226 (N : Node_Id) return Boolean is
4342 begin
4343 pragma Assert (Nkind (N) in N_Entity);
4344 return Nodes.Table (N + 4).Flag8;
4345 end Flag226;
4346
4347 function Flag227 (N : Node_Id) return Boolean is
4348 begin
4349 pragma Assert (Nkind (N) in N_Entity);
4350 return Nodes.Table (N + 4).Flag9;
4351 end Flag227;
4352
4353 function Flag228 (N : Node_Id) return Boolean is
4354 begin
4355 pragma Assert (Nkind (N) in N_Entity);
4356 return Nodes.Table (N + 4).Flag10;
4357 end Flag228;
4358
4359 function Flag229 (N : Node_Id) return Boolean is
4360 begin
4361 pragma Assert (Nkind (N) in N_Entity);
4362 return Nodes.Table (N + 4).Flag11;
4363 end Flag229;
4364
4365 function Flag230 (N : Node_Id) return Boolean is
4366 begin
4367 pragma Assert (Nkind (N) in N_Entity);
4368 return Nodes.Table (N + 4).Flag12;
4369 end Flag230;
4370
4371 function Flag231 (N : Node_Id) return Boolean is
4372 begin
4373 pragma Assert (Nkind (N) in N_Entity);
4374 return Nodes.Table (N + 4).Flag13;
4375 end Flag231;
4376
4377 function Flag232 (N : Node_Id) return Boolean is
4378 begin
4379 pragma Assert (Nkind (N) in N_Entity);
4380 return Nodes.Table (N + 4).Flag14;
4381 end Flag232;
4382
4383 function Flag233 (N : Node_Id) return Boolean is
4384 begin
4385 pragma Assert (Nkind (N) in N_Entity);
4386 return Nodes.Table (N + 4).Flag15;
4387 end Flag233;
4388
4389 function Flag234 (N : Node_Id) return Boolean is
4390 begin
4391 pragma Assert (Nkind (N) in N_Entity);
4392 return Nodes.Table (N + 4).Flag16;
4393 end Flag234;
4394
4395 function Flag235 (N : Node_Id) return Boolean is
4396 begin
4397 pragma Assert (Nkind (N) in N_Entity);
4398 return Nodes.Table (N + 4).Flag17;
4399 end Flag235;
4400
4401 function Flag236 (N : Node_Id) return Boolean is
4402 begin
4403 pragma Assert (Nkind (N) in N_Entity);
4404 return Nodes.Table (N + 4).Flag18;
4405 end Flag236;
4406
4407 function Flag237 (N : Node_Id) return Boolean is
4408 begin
4409 pragma Assert (Nkind (N) in N_Entity);
4410 return Nodes.Table (N + 4).Pflag1;
4411 end Flag237;
4412
4413 function Flag238 (N : Node_Id) return Boolean is
4414 begin
4415 pragma Assert (Nkind (N) in N_Entity);
4416 return Nodes.Table (N + 4).Pflag2;
4417 end Flag238;
4418
4419 function Flag239 (N : Node_Id) return Boolean is
4420 begin
4421 pragma Assert (Nkind (N) in N_Entity);
4422 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag239;
4423 end Flag239;
4424
4425 function Flag240 (N : Node_Id) return Boolean is
4426 begin
4427 pragma Assert (Nkind (N) in N_Entity);
4428 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag240;
4429 end Flag240;
4430
4431 function Flag241 (N : Node_Id) return Boolean is
4432 begin
4433 pragma Assert (Nkind (N) in N_Entity);
4434 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag241;
4435 end Flag241;
4436
4437 function Flag242 (N : Node_Id) return Boolean is
4438 begin
4439 pragma Assert (Nkind (N) in N_Entity);
4440 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag242;
4441 end Flag242;
4442
4443 function Flag243 (N : Node_Id) return Boolean is
4444 begin
4445 pragma Assert (Nkind (N) in N_Entity);
4446 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag243;
4447 end Flag243;
4448
4449 function Flag244 (N : Node_Id) return Boolean is
4450 begin
4451 pragma Assert (Nkind (N) in N_Entity);
4452 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag244;
4453 end Flag244;
4454
4455 function Flag245 (N : Node_Id) return Boolean is
4456 begin
4457 pragma Assert (Nkind (N) in N_Entity);
4458 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag245;
4459 end Flag245;
4460
4461 function Flag246 (N : Node_Id) return Boolean is
4462 begin
4463 pragma Assert (Nkind (N) in N_Entity);
4464 return To_Flag_Byte2 (Nodes.Table (N + 3).Nkind).Flag246;
4465 end Flag246;
4466
4467 function Flag247 (N : Node_Id) return Boolean is
4468 begin
4469 pragma Assert (Nkind (N) in N_Entity);
4470 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag247;
4471 end Flag247;
4472
4473 function Flag248 (N : Node_Id) return Boolean is
4474 begin
4475 pragma Assert (Nkind (N) in N_Entity);
4476 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag248;
4477 end Flag248;
4478
4479 function Flag249 (N : Node_Id) return Boolean is
4480 begin
4481 pragma Assert (Nkind (N) in N_Entity);
4482 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag249;
4483 end Flag249;
4484
4485 function Flag250 (N : Node_Id) return Boolean is
4486 begin
4487 pragma Assert (Nkind (N) in N_Entity);
4488 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag250;
4489 end Flag250;
4490
4491 function Flag251 (N : Node_Id) return Boolean is
4492 begin
4493 pragma Assert (Nkind (N) in N_Entity);
4494 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag251;
4495 end Flag251;
4496
4497 function Flag252 (N : Node_Id) return Boolean is
4498 begin
4499 pragma Assert (Nkind (N) in N_Entity);
4500 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag252;
4501 end Flag252;
4502
4503 function Flag253 (N : Node_Id) return Boolean is
4504 begin
4505 pragma Assert (Nkind (N) in N_Entity);
4506 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag253;
4507 end Flag253;
4508
4509 function Flag254 (N : Node_Id) return Boolean is
4510 begin
4511 pragma Assert (Nkind (N) in N_Entity);
4512 return To_Flag_Byte3 (Nodes.Table (N + 4).Nkind).Flag254;
4513 end Flag254;
4514
4515 function Flag255 (N : Node_Id) return Boolean is
4516 begin
4517 pragma Assert (Nkind (N) in N_Entity);
4518 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag255;
4519 end Flag255;
4520
4521 function Flag256 (N : Node_Id) return Boolean is
4522 begin
4523 pragma Assert (Nkind (N) in N_Entity);
4524 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag256;
4525 end Flag256;
4526
4527 function Flag257 (N : Node_Id) return Boolean is
4528 begin
4529 pragma Assert (Nkind (N) in N_Entity);
4530 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag257;
4531 end Flag257;
4532
4533 function Flag258 (N : Node_Id) return Boolean is
4534 begin
4535 pragma Assert (Nkind (N) in N_Entity);
4536 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag258;
4537 end Flag258;
4538
4539 function Flag259 (N : Node_Id) return Boolean is
4540 begin
4541 pragma Assert (Nkind (N) in N_Entity);
4542 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag259;
4543 end Flag259;
4544
4545 function Flag260 (N : Node_Id) return Boolean is
4546 begin
4547 pragma Assert (Nkind (N) in N_Entity);
4548 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag260;
4549 end Flag260;
4550
4551 function Flag261 (N : Node_Id) return Boolean is
4552 begin
4553 pragma Assert (Nkind (N) in N_Entity);
4554 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag261;
4555 end Flag261;
4556
4557 function Flag262 (N : Node_Id) return Boolean is
4558 begin
4559 pragma Assert (Nkind (N) in N_Entity);
4560 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag262;
4561 end Flag262;
4562
4563 function Flag263 (N : Node_Id) return Boolean is
4564 begin
4565 pragma Assert (Nkind (N) in N_Entity);
4566 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag263;
4567 end Flag263;
4568
4569 function Flag264 (N : Node_Id) return Boolean is
4570 begin
4571 pragma Assert (Nkind (N) in N_Entity);
4572 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag264;
4573 end Flag264;
4574
4575 function Flag265 (N : Node_Id) return Boolean is
4576 begin
4577 pragma Assert (Nkind (N) in N_Entity);
4578 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag265;
4579 end Flag265;
4580
4581 function Flag266 (N : Node_Id) return Boolean is
4582 begin
4583 pragma Assert (Nkind (N) in N_Entity);
4584 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag266;
4585 end Flag266;
4586
4587 function Flag267 (N : Node_Id) return Boolean is
4588 begin
4589 pragma Assert (Nkind (N) in N_Entity);
4590 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag267;
4591 end Flag267;
4592
4593 function Flag268 (N : Node_Id) return Boolean is
4594 begin
4595 pragma Assert (Nkind (N) in N_Entity);
4596 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag268;
4597 end Flag268;
4598
4599 function Flag269 (N : Node_Id) return Boolean is
4600 begin
4601 pragma Assert (Nkind (N) in N_Entity);
4602 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag269;
4603 end Flag269;
4604
4605 function Flag270 (N : Node_Id) return Boolean is
4606 begin
4607 pragma Assert (Nkind (N) in N_Entity);
4608 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag270;
4609 end Flag270;
4610
4611 function Flag271 (N : Node_Id) return Boolean is
4612 begin
4613 pragma Assert (Nkind (N) in N_Entity);
4614 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag271;
4615 end Flag271;
4616
4617 function Flag272 (N : Node_Id) return Boolean is
4618 begin
4619 pragma Assert (Nkind (N) in N_Entity);
4620 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag272;
4621 end Flag272;
4622
4623 function Flag273 (N : Node_Id) return Boolean is
4624 begin
4625 pragma Assert (Nkind (N) in N_Entity);
4626 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag273;
4627 end Flag273;
4628
4629 function Flag274 (N : Node_Id) return Boolean is
4630 begin
4631 pragma Assert (Nkind (N) in N_Entity);
4632 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag274;
4633 end Flag274;
4634
4635 function Flag275 (N : Node_Id) return Boolean is
4636 begin
4637 pragma Assert (Nkind (N) in N_Entity);
4638 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag275;
4639 end Flag275;
4640
4641 function Flag276 (N : Node_Id) return Boolean is
4642 begin
4643 pragma Assert (Nkind (N) in N_Entity);
4644 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag276;
4645 end Flag276;
4646
4647 function Flag277 (N : Node_Id) return Boolean is
4648 begin
4649 pragma Assert (Nkind (N) in N_Entity);
4650 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag277;
4651 end Flag277;
4652
4653 function Flag278 (N : Node_Id) return Boolean is
4654 begin
4655 pragma Assert (Nkind (N) in N_Entity);
4656 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag278;
4657 end Flag278;
4658
4659 function Flag279 (N : Node_Id) return Boolean is
4660 begin
4661 pragma Assert (Nkind (N) in N_Entity);
4662 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag279;
4663 end Flag279;
4664
4665 function Flag280 (N : Node_Id) return Boolean is
4666 begin
4667 pragma Assert (Nkind (N) in N_Entity);
4668 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag280;
4669 end Flag280;
4670
4671 function Flag281 (N : Node_Id) return Boolean is
4672 begin
4673 pragma Assert (Nkind (N) in N_Entity);
4674 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag281;
4675 end Flag281;
4676
4677 function Flag282 (N : Node_Id) return Boolean is
4678 begin
4679 pragma Assert (Nkind (N) in N_Entity);
4680 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag282;
4681 end Flag282;
4682
4683 function Flag283 (N : Node_Id) return Boolean is
4684 begin
4685 pragma Assert (Nkind (N) in N_Entity);
4686 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag283;
4687 end Flag283;
4688
4689 function Flag284 (N : Node_Id) return Boolean is
4690 begin
4691 pragma Assert (Nkind (N) in N_Entity);
4692 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag284;
4693 end Flag284;
4694
4695 function Flag285 (N : Node_Id) return Boolean is
4696 begin
4697 pragma Assert (Nkind (N) in N_Entity);
4698 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag285;
4699 end Flag285;
4700
4701 function Flag286 (N : Node_Id) return Boolean is
4702 begin
4703 pragma Assert (Nkind (N) in N_Entity);
4704 return To_Flag_Word5 (Nodes.Table (N + 5).Field12).Flag286;
4705 end Flag286;
4706
4707 function Flag287 (N : Node_Id) return Boolean is
4708 begin
4709 pragma Assert (Nkind (N) in N_Entity);
4710 return Nodes.Table (N + 5).In_List;
4711 end Flag287;
4712
4713 function Flag288 (N : Node_Id) return Boolean is
4714 begin
4715 pragma Assert (Nkind (N) in N_Entity);
4716 return Nodes.Table (N + 5).Has_Aspects;
4717 end Flag288;
4718
4719 function Flag289 (N : Node_Id) return Boolean is
4720 begin
4721 pragma Assert (Nkind (N) in N_Entity);
4722 return Nodes.Table (N + 5).Rewrite_Ins;
4723 end Flag289;
4724
4725 function Flag290 (N : Node_Id) return Boolean is
4726 begin
4727 pragma Assert (Nkind (N) in N_Entity);
4728 return Nodes.Table (N + 5).Analyzed;
4729 end Flag290;
4730
4731 function Flag291 (N : Node_Id) return Boolean is
4732 begin
4733 pragma Assert (Nkind (N) in N_Entity);
4734 return Nodes.Table (N + 5).Comes_From_Source;
4735 end Flag291;
4736
4737 function Flag292 (N : Node_Id) return Boolean is
4738 begin
4739 pragma Assert (Nkind (N) in N_Entity);
4740 return Nodes.Table (N + 5).Error_Posted;
4741 end Flag292;
4742
4743 function Flag293 (N : Node_Id) return Boolean is
4744 begin
4745 pragma Assert (Nkind (N) in N_Entity);
4746 return Nodes.Table (N + 5).Flag4;
4747 end Flag293;
4748
4749 function Flag294 (N : Node_Id) return Boolean is
4750 begin
4751 pragma Assert (Nkind (N) in N_Entity);
4752 return Nodes.Table (N + 5).Flag5;
4753 end Flag294;
4754
4755 function Flag295 (N : Node_Id) return Boolean is
4756 begin
4757 pragma Assert (Nkind (N) in N_Entity);
4758 return Nodes.Table (N + 5).Flag6;
4759 end Flag295;
4760
4761 function Flag296 (N : Node_Id) return Boolean is
4762 begin
4763 pragma Assert (Nkind (N) in N_Entity);
4764 return Nodes.Table (N + 5).Flag7;
4765 end Flag296;
4766
4767 function Flag297 (N : Node_Id) return Boolean is
4768 begin
4769 pragma Assert (Nkind (N) in N_Entity);
4770 return Nodes.Table (N + 5).Flag8;
4771 end Flag297;
4772
4773 function Flag298 (N : Node_Id) return Boolean is
4774 begin
4775 pragma Assert (Nkind (N) in N_Entity);
4776 return Nodes.Table (N + 5).Flag9;
4777 end Flag298;
4778
4779 function Flag299 (N : Node_Id) return Boolean is
4780 begin
4781 pragma Assert (Nkind (N) in N_Entity);
4782 return Nodes.Table (N + 5).Flag10;
4783 end Flag299;
4784
4785 function Flag300 (N : Node_Id) return Boolean is
4786 begin
4787 pragma Assert (Nkind (N) in N_Entity);
4788 return Nodes.Table (N + 5).Flag11;
4789 end Flag300;
4790
4791 function Flag301 (N : Node_Id) return Boolean is
4792 begin
4793 pragma Assert (Nkind (N) in N_Entity);
4794 return Nodes.Table (N + 5).Flag12;
4795 end Flag301;
4796
4797 function Flag302 (N : Node_Id) return Boolean is
4798 begin
4799 pragma Assert (Nkind (N) in N_Entity);
4800 return Nodes.Table (N + 5).Flag13;
4801 end Flag302;
4802
4803 function Flag303 (N : Node_Id) return Boolean is
4804 begin
4805 pragma Assert (Nkind (N) in N_Entity);
4806 return Nodes.Table (N + 5).Flag14;
4807 end Flag303;
4808
4809 function Flag304 (N : Node_Id) return Boolean is
4810 begin
4811 pragma Assert (Nkind (N) in N_Entity);
4812 return Nodes.Table (N + 5).Flag15;
4813 end Flag304;
4814
4815 function Flag305 (N : Node_Id) return Boolean is
4816 begin
4817 pragma Assert (Nkind (N) in N_Entity);
4818 return Nodes.Table (N + 5).Flag16;
4819 end Flag305;
4820
4821 function Flag306 (N : Node_Id) return Boolean is
4822 begin
4823 pragma Assert (Nkind (N) in N_Entity);
4824 return Nodes.Table (N + 5).Flag17;
4825 end Flag306;
4826
4827 function Flag307 (N : Node_Id) return Boolean is
4828 begin
4829 pragma Assert (Nkind (N) in N_Entity);
4830 return Nodes.Table (N + 5).Flag18;
4831 end Flag307;
4832
4833 function Flag308 (N : Node_Id) return Boolean is
4834 begin
4835 pragma Assert (Nkind (N) in N_Entity);
4836 return Nodes.Table (N + 5).Pflag1;
4837 end Flag308;
4838
4839 function Flag309 (N : Node_Id) return Boolean is
4840 begin
4841 pragma Assert (Nkind (N) in N_Entity);
4842 return Nodes.Table (N + 5).Pflag2;
4843 end Flag309;
4844
4845 function Flag310 (N : Node_Id) return Boolean is
4846 begin
4847 pragma Assert (Nkind (N) in N_Entity);
4848 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag310;
4849 end Flag310;
4850
4851 function Flag311 (N : Node_Id) return Boolean is
4852 begin
4853 pragma Assert (Nkind (N) in N_Entity);
4854 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag311;
4855 end Flag311;
4856
4857 function Flag312 (N : Node_Id) return Boolean is
4858 begin
4859 pragma Assert (Nkind (N) in N_Entity);
4860 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag312;
4861 end Flag312;
4862
4863 function Flag313 (N : Node_Id) return Boolean is
4864 begin
4865 pragma Assert (Nkind (N) in N_Entity);
4866 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag313;
4867 end Flag313;
4868
4869 function Flag314 (N : Node_Id) return Boolean is
4870 begin
4871 pragma Assert (Nkind (N) in N_Entity);
4872 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag314;
4873 end Flag314;
4874
4875 function Flag315 (N : Node_Id) return Boolean is
4876 begin
4877 pragma Assert (Nkind (N) in N_Entity);
4878 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag315;
4879 end Flag315;
4880
4881 function Flag316 (N : Node_Id) return Boolean is
4882 begin
4883 pragma Assert (Nkind (N) in N_Entity);
4884 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag316;
4885 end Flag316;
4886
4887 function Flag317 (N : Node_Id) return Boolean is
4888 begin
4889 pragma Assert (Nkind (N) in N_Entity);
4890 return To_Flag_Byte4 (Nodes.Table (N + 5).Nkind).Flag317;
4891 end Flag317;
4892
4893 procedure Set_Nkind (N : Node_Id; Val : Node_Kind) is
4894 begin
4895 pragma Assert (N <= Nodes.Last);
4896 Nodes.Table (N).Nkind := Val;
4897 end Set_Nkind;
4898
4899 procedure Set_Field1 (N : Node_Id; Val : Union_Id) is
4900 begin
4901 pragma Assert (N <= Nodes.Last);
4902 Nodes.Table (N).Field1 := Val;
4903 end Set_Field1;
4904
4905 procedure Set_Field2 (N : Node_Id; Val : Union_Id) is
4906 begin
4907 pragma Assert (N <= Nodes.Last);
4908 Nodes.Table (N).Field2 := Val;
4909 end Set_Field2;
4910
4911 procedure Set_Field3 (N : Node_Id; Val : Union_Id) is
4912 begin
4913 pragma Assert (N <= Nodes.Last);
4914 Nodes.Table (N).Field3 := Val;
4915 end Set_Field3;
4916
4917 procedure Set_Field4 (N : Node_Id; Val : Union_Id) is
4918 begin
4919 pragma Assert (N <= Nodes.Last);
4920 Nodes.Table (N).Field4 := Val;
4921 end Set_Field4;
4922
4923 procedure Set_Field5 (N : Node_Id; Val : Union_Id) is
4924 begin
4925 pragma Assert (N <= Nodes.Last);
4926 Nodes.Table (N).Field5 := Val;
4927 end Set_Field5;
4928
4929 procedure Set_Field6 (N : Node_Id; Val : Union_Id) is
4930 begin
4931 pragma Assert (Nkind (N) in N_Entity);
4932 Nodes.Table (N + 1).Field6 := Val;
4933 end Set_Field6;
4934
4935 procedure Set_Field7 (N : Node_Id; Val : Union_Id) is
4936 begin
4937 pragma Assert (Nkind (N) in N_Entity);
4938 Nodes.Table (N + 1).Field7 := Val;
4939 end Set_Field7;
4940
4941 procedure Set_Field8 (N : Node_Id; Val : Union_Id) is
4942 begin
4943 pragma Assert (Nkind (N) in N_Entity);
4944 Nodes.Table (N + 1).Field8 := Val;
4945 end Set_Field8;
4946
4947 procedure Set_Field9 (N : Node_Id; Val : Union_Id) is
4948 begin
4949 pragma Assert (Nkind (N) in N_Entity);
4950 Nodes.Table (N + 1).Field9 := Val;
4951 end Set_Field9;
4952
4953 procedure Set_Field10 (N : Node_Id; Val : Union_Id) is
4954 begin
4955 pragma Assert (Nkind (N) in N_Entity);
4956 Nodes.Table (N + 1).Field10 := Val;
4957 end Set_Field10;
4958
4959 procedure Set_Field11 (N : Node_Id; Val : Union_Id) is
4960 begin
4961 pragma Assert (Nkind (N) in N_Entity);
4962 Nodes.Table (N + 1).Field11 := Val;
4963 end Set_Field11;
4964
4965 procedure Set_Field12 (N : Node_Id; Val : Union_Id) is
4966 begin
4967 pragma Assert (Nkind (N) in N_Entity);
4968 Nodes.Table (N + 1).Field12 := Val;
4969 end Set_Field12;
4970
4971 procedure Set_Field13 (N : Node_Id; Val : Union_Id) is
4972 begin
4973 pragma Assert (Nkind (N) in N_Entity);
4974 Nodes.Table (N + 2).Field6 := Val;
4975 end Set_Field13;
4976
4977 procedure Set_Field14 (N : Node_Id; Val : Union_Id) is
4978 begin
4979 pragma Assert (Nkind (N) in N_Entity);
4980 Nodes.Table (N + 2).Field7 := Val;
4981 end Set_Field14;
4982
4983 procedure Set_Field15 (N : Node_Id; Val : Union_Id) is
4984 begin
4985 pragma Assert (Nkind (N) in N_Entity);
4986 Nodes.Table (N + 2).Field8 := Val;
4987 end Set_Field15;
4988
4989 procedure Set_Field16 (N : Node_Id; Val : Union_Id) is
4990 begin
4991 pragma Assert (Nkind (N) in N_Entity);
4992 Nodes.Table (N + 2).Field9 := Val;
4993 end Set_Field16;
4994
4995 procedure Set_Field17 (N : Node_Id; Val : Union_Id) is
4996 begin
4997 pragma Assert (Nkind (N) in N_Entity);
4998 Nodes.Table (N + 2).Field10 := Val;
4999 end Set_Field17;
5000
5001 procedure Set_Field18 (N : Node_Id; Val : Union_Id) is
5002 begin
5003 pragma Assert (Nkind (N) in N_Entity);
5004 Nodes.Table (N + 2).Field11 := Val;
5005 end Set_Field18;
5006
5007 procedure Set_Field19 (N : Node_Id; Val : Union_Id) is
5008 begin
5009 pragma Assert (Nkind (N) in N_Entity);
5010 Nodes.Table (N + 3).Field6 := Val;
5011 end Set_Field19;
5012
5013 procedure Set_Field20 (N : Node_Id; Val : Union_Id) is
5014 begin
5015 pragma Assert (Nkind (N) in N_Entity);
5016 Nodes.Table (N + 3).Field7 := Val;
5017 end Set_Field20;
5018
5019 procedure Set_Field21 (N : Node_Id; Val : Union_Id) is
5020 begin
5021 pragma Assert (Nkind (N) in N_Entity);
5022 Nodes.Table (N + 3).Field8 := Val;
5023 end Set_Field21;
5024
5025 procedure Set_Field22 (N : Node_Id; Val : Union_Id) is
5026 begin
5027 pragma Assert (Nkind (N) in N_Entity);
5028 Nodes.Table (N + 3).Field9 := Val;
5029 end Set_Field22;
5030
5031 procedure Set_Field23 (N : Node_Id; Val : Union_Id) is
5032 begin
5033 pragma Assert (Nkind (N) in N_Entity);
5034 Nodes.Table (N + 3).Field10 := Val;
5035 end Set_Field23;
5036
5037 procedure Set_Field24 (N : Node_Id; Val : Union_Id) is
5038 begin
5039 pragma Assert (Nkind (N) in N_Entity);
5040 Nodes.Table (N + 4).Field6 := Val;
5041 end Set_Field24;
5042
5043 procedure Set_Field25 (N : Node_Id; Val : Union_Id) is
5044 begin
5045 pragma Assert (Nkind (N) in N_Entity);
5046 Nodes.Table (N + 4).Field7 := Val;
5047 end Set_Field25;
5048
5049 procedure Set_Field26 (N : Node_Id; Val : Union_Id) is
5050 begin
5051 pragma Assert (Nkind (N) in N_Entity);
5052 Nodes.Table (N + 4).Field8 := Val;
5053 end Set_Field26;
5054
5055 procedure Set_Field27 (N : Node_Id; Val : Union_Id) is
5056 begin
5057 pragma Assert (Nkind (N) in N_Entity);
5058 Nodes.Table (N + 4).Field9 := Val;
5059 end Set_Field27;
5060
5061 procedure Set_Field28 (N : Node_Id; Val : Union_Id) is
5062 begin
5063 pragma Assert (Nkind (N) in N_Entity);
5064 Nodes.Table (N + 4).Field10 := Val;
5065 end Set_Field28;
5066
5067 procedure Set_Field29 (N : Node_Id; Val : Union_Id) is
5068 begin
5069 pragma Assert (Nkind (N) in N_Entity);
5070 Nodes.Table (N + 4).Field11 := Val;
5071 end Set_Field29;
5072
5073 procedure Set_Field30 (N : Node_Id; Val : Union_Id) is
5074 begin
5075 pragma Assert (Nkind (N) in N_Entity);
5076 Nodes.Table (N + 5).Field6 := Val;
5077 end Set_Field30;
5078
5079 procedure Set_Field31 (N : Node_Id; Val : Union_Id) is
5080 begin
5081 pragma Assert (Nkind (N) in N_Entity);
5082 Nodes.Table (N + 5).Field7 := Val;
5083 end Set_Field31;
5084
5085 procedure Set_Field32 (N : Node_Id; Val : Union_Id) is
5086 begin
5087 pragma Assert (Nkind (N) in N_Entity);
5088 Nodes.Table (N + 5).Field8 := Val;
5089 end Set_Field32;
5090
5091 procedure Set_Field33 (N : Node_Id; Val : Union_Id) is
5092 begin
5093 pragma Assert (Nkind (N) in N_Entity);
5094 Nodes.Table (N + 5).Field9 := Val;
5095 end Set_Field33;
5096
5097 procedure Set_Field34 (N : Node_Id; Val : Union_Id) is
5098 begin
5099 pragma Assert (Nkind (N) in N_Entity);
5100 Nodes.Table (N + 5).Field10 := Val;
5101 end Set_Field34;
5102
5103 procedure Set_Field35 (N : Node_Id; Val : Union_Id) is
5104 begin
5105 pragma Assert (Nkind (N) in N_Entity);
5106 Nodes.Table (N + 5).Field11 := Val;
5107 end Set_Field35;
5108
5109 procedure Set_Node1 (N : Node_Id; Val : Node_Id) is
5110 begin
5111 pragma Assert (N <= Nodes.Last);
5112 Nodes.Table (N).Field1 := Union_Id (Val);
5113 end Set_Node1;
5114
5115 procedure Set_Node2 (N : Node_Id; Val : Node_Id) is
5116 begin
5117 pragma Assert (N <= Nodes.Last);
5118 Nodes.Table (N).Field2 := Union_Id (Val);
5119 end Set_Node2;
5120
5121 procedure Set_Node3 (N : Node_Id; Val : Node_Id) is
5122 begin
5123 pragma Assert (N <= Nodes.Last);
5124 Nodes.Table (N).Field3 := Union_Id (Val);
5125 end Set_Node3;
5126
5127 procedure Set_Node4 (N : Node_Id; Val : Node_Id) is
5128 begin
5129 pragma Assert (N <= Nodes.Last);
5130 Nodes.Table (N).Field4 := Union_Id (Val);
5131 end Set_Node4;
5132
5133 procedure Set_Node5 (N : Node_Id; Val : Node_Id) is
5134 begin
5135 pragma Assert (N <= Nodes.Last);
5136 Nodes.Table (N).Field5 := Union_Id (Val);
5137 end Set_Node5;
5138
5139 procedure Set_Node6 (N : Node_Id; Val : Node_Id) is
5140 begin
5141 pragma Assert (Nkind (N) in N_Entity);
5142 Nodes.Table (N + 1).Field6 := Union_Id (Val);
5143 end Set_Node6;
5144
5145 procedure Set_Node7 (N : Node_Id; Val : Node_Id) is
5146 begin
5147 pragma Assert (Nkind (N) in N_Entity);
5148 Nodes.Table (N + 1).Field7 := Union_Id (Val);
5149 end Set_Node7;
5150
5151 procedure Set_Node8 (N : Node_Id; Val : Node_Id) is
5152 begin
5153 pragma Assert (Nkind (N) in N_Entity);
5154 Nodes.Table (N + 1).Field8 := Union_Id (Val);
5155 end Set_Node8;
5156
5157 procedure Set_Node9 (N : Node_Id; Val : Node_Id) is
5158 begin
5159 pragma Assert (Nkind (N) in N_Entity);
5160 Nodes.Table (N + 1).Field9 := Union_Id (Val);
5161 end Set_Node9;
5162
5163 procedure Set_Node10 (N : Node_Id; Val : Node_Id) is
5164 begin
5165 pragma Assert (Nkind (N) in N_Entity);
5166 Nodes.Table (N + 1).Field10 := Union_Id (Val);
5167 end Set_Node10;
5168
5169 procedure Set_Node11 (N : Node_Id; Val : Node_Id) is
5170 begin
5171 pragma Assert (Nkind (N) in N_Entity);
5172 Nodes.Table (N + 1).Field11 := Union_Id (Val);
5173 end Set_Node11;
5174
5175 procedure Set_Node12 (N : Node_Id; Val : Node_Id) is
5176 begin
5177 pragma Assert (Nkind (N) in N_Entity);
5178 Nodes.Table (N + 1).Field12 := Union_Id (Val);
5179 end Set_Node12;
5180
5181 procedure Set_Node13 (N : Node_Id; Val : Node_Id) is
5182 begin
5183 pragma Assert (Nkind (N) in N_Entity);
5184 Nodes.Table (N + 2).Field6 := Union_Id (Val);
5185 end Set_Node13;
5186
5187 procedure Set_Node14 (N : Node_Id; Val : Node_Id) is
5188 begin
5189 pragma Assert (Nkind (N) in N_Entity);
5190 Nodes.Table (N + 2).Field7 := Union_Id (Val);
5191 end Set_Node14;
5192
5193 procedure Set_Node15 (N : Node_Id; Val : Node_Id) is
5194 begin
5195 pragma Assert (Nkind (N) in N_Entity);
5196 Nodes.Table (N + 2).Field8 := Union_Id (Val);
5197 end Set_Node15;
5198
5199 procedure Set_Node16 (N : Node_Id; Val : Node_Id) is
5200 begin
5201 pragma Assert (Nkind (N) in N_Entity);
5202 Nodes.Table (N + 2).Field9 := Union_Id (Val);
5203 end Set_Node16;
5204
5205 procedure Set_Node17 (N : Node_Id; Val : Node_Id) is
5206 begin
5207 pragma Assert (Nkind (N) in N_Entity);
5208 Nodes.Table (N + 2).Field10 := Union_Id (Val);
5209 end Set_Node17;
5210
5211 procedure Set_Node18 (N : Node_Id; Val : Node_Id) is
5212 begin
5213 pragma Assert (Nkind (N) in N_Entity);
5214 Nodes.Table (N + 2).Field11 := Union_Id (Val);
5215 end Set_Node18;
5216
5217 procedure Set_Node19 (N : Node_Id; Val : Node_Id) is
5218 begin
5219 pragma Assert (Nkind (N) in N_Entity);
5220 Nodes.Table (N + 3).Field6 := Union_Id (Val);
5221 end Set_Node19;
5222
5223 procedure Set_Node20 (N : Node_Id; Val : Node_Id) is
5224 begin
5225 pragma Assert (Nkind (N) in N_Entity);
5226 Nodes.Table (N + 3).Field7 := Union_Id (Val);
5227 end Set_Node20;
5228
5229 procedure Set_Node21 (N : Node_Id; Val : Node_Id) is
5230 begin
5231 pragma Assert (Nkind (N) in N_Entity);
5232 Nodes.Table (N + 3).Field8 := Union_Id (Val);
5233 end Set_Node21;
5234
5235 procedure Set_Node22 (N : Node_Id; Val : Node_Id) is
5236 begin
5237 pragma Assert (Nkind (N) in N_Entity);
5238 Nodes.Table (N + 3).Field9 := Union_Id (Val);
5239 end Set_Node22;
5240
5241 procedure Set_Node23 (N : Node_Id; Val : Node_Id) is
5242 begin
5243 pragma Assert (Nkind (N) in N_Entity);
5244 Nodes.Table (N + 3).Field10 := Union_Id (Val);
5245 end Set_Node23;
5246
5247 procedure Set_Node24 (N : Node_Id; Val : Node_Id) is
5248 begin
5249 pragma Assert (Nkind (N) in N_Entity);
5250 Nodes.Table (N + 4).Field6 := Union_Id (Val);
5251 end Set_Node24;
5252
5253 procedure Set_Node25 (N : Node_Id; Val : Node_Id) is
5254 begin
5255 pragma Assert (Nkind (N) in N_Entity);
5256 Nodes.Table (N + 4).Field7 := Union_Id (Val);
5257 end Set_Node25;
5258
5259 procedure Set_Node26 (N : Node_Id; Val : Node_Id) is
5260 begin
5261 pragma Assert (Nkind (N) in N_Entity);
5262 Nodes.Table (N + 4).Field8 := Union_Id (Val);
5263 end Set_Node26;
5264
5265 procedure Set_Node27 (N : Node_Id; Val : Node_Id) is
5266 begin
5267 pragma Assert (Nkind (N) in N_Entity);
5268 Nodes.Table (N + 4).Field9 := Union_Id (Val);
5269 end Set_Node27;
5270
5271 procedure Set_Node28 (N : Node_Id; Val : Node_Id) is
5272 begin
5273 pragma Assert (Nkind (N) in N_Entity);
5274 Nodes.Table (N + 4).Field10 := Union_Id (Val);
5275 end Set_Node28;
5276
5277 procedure Set_Node29 (N : Node_Id; Val : Node_Id) is
5278 begin
5279 pragma Assert (Nkind (N) in N_Entity);
5280 Nodes.Table (N + 4).Field11 := Union_Id (Val);
5281 end Set_Node29;
5282
5283 procedure Set_Node30 (N : Node_Id; Val : Node_Id) is
5284 begin
5285 pragma Assert (Nkind (N) in N_Entity);
5286 Nodes.Table (N + 5).Field6 := Union_Id (Val);
5287 end Set_Node30;
5288
5289 procedure Set_Node31 (N : Node_Id; Val : Node_Id) is
5290 begin
5291 pragma Assert (Nkind (N) in N_Entity);
5292 Nodes.Table (N + 5).Field7 := Union_Id (Val);
5293 end Set_Node31;
5294
5295 procedure Set_Node32 (N : Node_Id; Val : Node_Id) is
5296 begin
5297 pragma Assert (Nkind (N) in N_Entity);
5298 Nodes.Table (N + 5).Field8 := Union_Id (Val);
5299 end Set_Node32;
5300
5301 procedure Set_List1 (N : Node_Id; Val : List_Id) is
5302 begin
5303 pragma Assert (N <= Nodes.Last);
5304 Nodes.Table (N).Field1 := Union_Id (Val);
5305 end Set_List1;
5306
5307 procedure Set_List2 (N : Node_Id; Val : List_Id) is
5308 begin
5309 pragma Assert (N <= Nodes.Last);
5310 Nodes.Table (N).Field2 := Union_Id (Val);
5311 end Set_List2;
5312
5313 procedure Set_List3 (N : Node_Id; Val : List_Id) is
5314 begin
5315 pragma Assert (N <= Nodes.Last);
5316 Nodes.Table (N).Field3 := Union_Id (Val);
5317 end Set_List3;
5318
5319 procedure Set_List4 (N : Node_Id; Val : List_Id) is
5320 begin
5321 pragma Assert (N <= Nodes.Last);
5322 Nodes.Table (N).Field4 := Union_Id (Val);
5323 end Set_List4;
5324
5325 procedure Set_List5 (N : Node_Id; Val : List_Id) is
5326 begin
5327 pragma Assert (N <= Nodes.Last);
5328 Nodes.Table (N).Field5 := Union_Id (Val);
5329 end Set_List5;
5330
5331 procedure Set_List10 (N : Node_Id; Val : List_Id) is
5332 begin
5333 pragma Assert (Nkind (N) in N_Entity);
5334 Nodes.Table (N + 1).Field10 := Union_Id (Val);
5335 end Set_List10;
5336
5337 procedure Set_List14 (N : Node_Id; Val : List_Id) is
5338 begin
5339 pragma Assert (Nkind (N) in N_Entity);
5340 Nodes.Table (N + 2).Field7 := Union_Id (Val);
5341 end Set_List14;
5342
5343 procedure Set_List25 (N : Node_Id; Val : List_Id) is
5344 begin
5345 pragma Assert (Nkind (N) in N_Entity);
5346 Nodes.Table (N + 4).Field7 := Union_Id (Val);
5347 end Set_List25;
5348
5349 procedure Set_Elist1 (N : Node_Id; Val : Elist_Id) is
5350 begin
5351 Nodes.Table (N).Field1 := Union_Id (Val);
5352 end Set_Elist1;
5353
5354 procedure Set_Elist2 (N : Node_Id; Val : Elist_Id) is
5355 begin
5356 Nodes.Table (N).Field2 := Union_Id (Val);
5357 end Set_Elist2;
5358
5359 procedure Set_Elist3 (N : Node_Id; Val : Elist_Id) is
5360 begin
5361 Nodes.Table (N).Field3 := Union_Id (Val);
5362 end Set_Elist3;
5363
5364 procedure Set_Elist4 (N : Node_Id; Val : Elist_Id) is
5365 begin
5366 Nodes.Table (N).Field4 := Union_Id (Val);
5367 end Set_Elist4;
5368
5369 procedure Set_Elist5 (N : Node_Id; Val : Elist_Id) is
5370 begin
5371 Nodes.Table (N).Field5 := Union_Id (Val);
5372 end Set_Elist5;
5373
5374 procedure Set_Elist8 (N : Node_Id; Val : Elist_Id) is
5375 begin
5376 pragma Assert (Nkind (N) in N_Entity);
5377 Nodes.Table (N + 1).Field8 := Union_Id (Val);
5378 end Set_Elist8;
5379
5380 procedure Set_Elist10 (N : Node_Id; Val : Elist_Id) is
5381 begin
5382 pragma Assert (Nkind (N) in N_Entity);
5383 Nodes.Table (N + 1).Field10 := Union_Id (Val);
5384 end Set_Elist10;
5385
5386 procedure Set_Elist13 (N : Node_Id; Val : Elist_Id) is
5387 begin
5388 pragma Assert (Nkind (N) in N_Entity);
5389 Nodes.Table (N + 2).Field6 := Union_Id (Val);
5390 end Set_Elist13;
5391
5392 procedure Set_Elist15 (N : Node_Id; Val : Elist_Id) is
5393 begin
5394 pragma Assert (Nkind (N) in N_Entity);
5395 Nodes.Table (N + 2).Field8 := Union_Id (Val);
5396 end Set_Elist15;
5397
5398 procedure Set_Elist16 (N : Node_Id; Val : Elist_Id) is
5399 begin
5400 pragma Assert (Nkind (N) in N_Entity);
5401 Nodes.Table (N + 2).Field9 := Union_Id (Val);
5402 end Set_Elist16;
5403
5404 procedure Set_Elist18 (N : Node_Id; Val : Elist_Id) is
5405 begin
5406 pragma Assert (Nkind (N) in N_Entity);
5407 Nodes.Table (N + 2).Field11 := Union_Id (Val);
5408 end Set_Elist18;
5409
5410 procedure Set_Elist21 (N : Node_Id; Val : Elist_Id) is
5411 begin
5412 pragma Assert (Nkind (N) in N_Entity);
5413 Nodes.Table (N + 3).Field8 := Union_Id (Val);
5414 end Set_Elist21;
5415
5416 procedure Set_Elist23 (N : Node_Id; Val : Elist_Id) is
5417 begin
5418 pragma Assert (Nkind (N) in N_Entity);
5419 Nodes.Table (N + 3).Field10 := Union_Id (Val);
5420 end Set_Elist23;
5421
5422 procedure Set_Elist24 (N : Node_Id; Val : Elist_Id) is
5423 begin
5424 pragma Assert (Nkind (N) in N_Entity);
5425 Nodes.Table (N + 4).Field6 := Union_Id (Val);
5426 end Set_Elist24;
5427
5428 procedure Set_Elist25 (N : Node_Id; Val : Elist_Id) is
5429 begin
5430 pragma Assert (Nkind (N) in N_Entity);
5431 Nodes.Table (N + 4).Field7 := Union_Id (Val);
5432 end Set_Elist25;
5433
5434 procedure Set_Elist26 (N : Node_Id; Val : Elist_Id) is
5435 begin
5436 pragma Assert (Nkind (N) in N_Entity);
5437 Nodes.Table (N + 4).Field8 := Union_Id (Val);
5438 end Set_Elist26;
5439
5440 procedure Set_Name1 (N : Node_Id; Val : Name_Id) is
5441 begin
5442 pragma Assert (N <= Nodes.Last);
5443 Nodes.Table (N).Field1 := Union_Id (Val);
5444 end Set_Name1;
5445
5446 procedure Set_Name2 (N : Node_Id; Val : Name_Id) is
5447 begin
5448 pragma Assert (N <= Nodes.Last);
5449 Nodes.Table (N).Field2 := Union_Id (Val);
5450 end Set_Name2;
5451
5452 procedure Set_Str3 (N : Node_Id; Val : String_Id) is
5453 begin
5454 pragma Assert (N <= Nodes.Last);
5455 Nodes.Table (N).Field3 := Union_Id (Val);
5456 end Set_Str3;
5457
5458 procedure Set_Uint2 (N : Node_Id; Val : Uint) is
5459 begin
5460 pragma Assert (N <= Nodes.Last);
5461 Nodes.Table (N).Field2 := To_Union (Val);
5462 end Set_Uint2;
5463
5464 procedure Set_Uint3 (N : Node_Id; Val : Uint) is
5465 begin
5466 pragma Assert (N <= Nodes.Last);
5467 Nodes.Table (N).Field3 := To_Union (Val);
5468 end Set_Uint3;
5469
5470 procedure Set_Uint4 (N : Node_Id; Val : Uint) is
5471 begin
5472 pragma Assert (N <= Nodes.Last);
5473 Nodes.Table (N).Field4 := To_Union (Val);
5474 end Set_Uint4;
5475
5476 procedure Set_Uint5 (N : Node_Id; Val : Uint) is
5477 begin
5478 pragma Assert (N <= Nodes.Last);
5479 Nodes.Table (N).Field5 := To_Union (Val);
5480 end Set_Uint5;
5481
5482 procedure Set_Uint8 (N : Node_Id; Val : Uint) is
5483 begin
5484 pragma Assert (Nkind (N) in N_Entity);
5485 Nodes.Table (N + 1).Field8 := To_Union (Val);
5486 end Set_Uint8;
5487
5488 procedure Set_Uint9 (N : Node_Id; Val : Uint) is
5489 begin
5490 pragma Assert (Nkind (N) in N_Entity);
5491 Nodes.Table (N + 1).Field9 := To_Union (Val);
5492 end Set_Uint9;
5493
5494 procedure Set_Uint10 (N : Node_Id; Val : Uint) is
5495 begin
5496 pragma Assert (Nkind (N) in N_Entity);
5497 Nodes.Table (N + 1).Field10 := To_Union (Val);
5498 end Set_Uint10;
5499
5500 procedure Set_Uint11 (N : Node_Id; Val : Uint) is
5501 begin
5502 pragma Assert (Nkind (N) in N_Entity);
5503 Nodes.Table (N + 1).Field11 := To_Union (Val);
5504 end Set_Uint11;
5505
5506 procedure Set_Uint12 (N : Node_Id; Val : Uint) is
5507 begin
5508 pragma Assert (Nkind (N) in N_Entity);
5509 Nodes.Table (N + 1).Field12 := To_Union (Val);
5510 end Set_Uint12;
5511
5512 procedure Set_Uint13 (N : Node_Id; Val : Uint) is
5513 begin
5514 pragma Assert (Nkind (N) in N_Entity);
5515 Nodes.Table (N + 2).Field6 := To_Union (Val);
5516 end Set_Uint13;
5517
5518 procedure Set_Uint14 (N : Node_Id; Val : Uint) is
5519 begin
5520 pragma Assert (Nkind (N) in N_Entity);
5521 Nodes.Table (N + 2).Field7 := To_Union (Val);
5522 end Set_Uint14;
5523
5524 procedure Set_Uint15 (N : Node_Id; Val : Uint) is
5525 begin
5526 pragma Assert (Nkind (N) in N_Entity);
5527 Nodes.Table (N + 2).Field8 := To_Union (Val);
5528 end Set_Uint15;
5529
5530 procedure Set_Uint16 (N : Node_Id; Val : Uint) is
5531 begin
5532 pragma Assert (Nkind (N) in N_Entity);
5533 Nodes.Table (N + 2).Field9 := To_Union (Val);
5534 end Set_Uint16;
5535
5536 procedure Set_Uint17 (N : Node_Id; Val : Uint) is
5537 begin
5538 pragma Assert (Nkind (N) in N_Entity);
5539 Nodes.Table (N + 2).Field10 := To_Union (Val);
5540 end Set_Uint17;
5541
5542 procedure Set_Uint22 (N : Node_Id; Val : Uint) is
5543 begin
5544 pragma Assert (Nkind (N) in N_Entity);
5545 Nodes.Table (N + 3).Field9 := To_Union (Val);
5546 end Set_Uint22;
5547
5548 procedure Set_Ureal3 (N : Node_Id; Val : Ureal) is
5549 begin
5550 pragma Assert (N <= Nodes.Last);
5551 Nodes.Table (N).Field3 := To_Union (Val);
5552 end Set_Ureal3;
5553
5554 procedure Set_Ureal18 (N : Node_Id; Val : Ureal) is
5555 begin
5556 pragma Assert (Nkind (N) in N_Entity);
5557 Nodes.Table (N + 2).Field11 := To_Union (Val);
5558 end Set_Ureal18;
5559
5560 procedure Set_Ureal21 (N : Node_Id; Val : Ureal) is
5561 begin
5562 pragma Assert (Nkind (N) in N_Entity);
5563 Nodes.Table (N + 3).Field8 := To_Union (Val);
5564 end Set_Ureal21;
5565
5566 procedure Set_Flag4 (N : Node_Id; Val : Boolean) is
5567 begin
5568 pragma Assert (N <= Nodes.Last);
5569 Nodes.Table (N).Flag4 := Val;
5570 end Set_Flag4;
5571
5572 procedure Set_Flag5 (N : Node_Id; Val : Boolean) is
5573 begin
5574 pragma Assert (N <= Nodes.Last);
5575 Nodes.Table (N).Flag5 := Val;
5576 end Set_Flag5;
5577
5578 procedure Set_Flag6 (N : Node_Id; Val : Boolean) is
5579 begin
5580 pragma Assert (N <= Nodes.Last);
5581 Nodes.Table (N).Flag6 := Val;
5582 end Set_Flag6;
5583
5584 procedure Set_Flag7 (N : Node_Id; Val : Boolean) is
5585 begin
5586 pragma Assert (N <= Nodes.Last);
5587 Nodes.Table (N).Flag7 := Val;
5588 end Set_Flag7;
5589
5590 procedure Set_Flag8 (N : Node_Id; Val : Boolean) is
5591 begin
5592 pragma Assert (N <= Nodes.Last);
5593 Nodes.Table (N).Flag8 := Val;
5594 end Set_Flag8;
5595
5596 procedure Set_Flag9 (N : Node_Id; Val : Boolean) is
5597 begin
5598 pragma Assert (N <= Nodes.Last);
5599 Nodes.Table (N).Flag9 := Val;
5600 end Set_Flag9;
5601
5602 procedure Set_Flag10 (N : Node_Id; Val : Boolean) is
5603 begin
5604 pragma Assert (N <= Nodes.Last);
5605 Nodes.Table (N).Flag10 := Val;
5606 end Set_Flag10;
5607
5608 procedure Set_Flag11 (N : Node_Id; Val : Boolean) is
5609 begin
5610 pragma Assert (N <= Nodes.Last);
5611 Nodes.Table (N).Flag11 := Val;
5612 end Set_Flag11;
5613
5614 procedure Set_Flag12 (N : Node_Id; Val : Boolean) is
5615 begin
5616 pragma Assert (N <= Nodes.Last);
5617 Nodes.Table (N).Flag12 := Val;
5618 end Set_Flag12;
5619
5620 procedure Set_Flag13 (N : Node_Id; Val : Boolean) is
5621 begin
5622 pragma Assert (N <= Nodes.Last);
5623 Nodes.Table (N).Flag13 := Val;
5624 end Set_Flag13;
5625
5626 procedure Set_Flag14 (N : Node_Id; Val : Boolean) is
5627 begin
5628 pragma Assert (N <= Nodes.Last);
5629 Nodes.Table (N).Flag14 := Val;
5630 end Set_Flag14;
5631
5632 procedure Set_Flag15 (N : Node_Id; Val : Boolean) is
5633 begin
5634 pragma Assert (N <= Nodes.Last);
5635 Nodes.Table (N).Flag15 := Val;
5636 end Set_Flag15;
5637
5638 procedure Set_Flag16 (N : Node_Id; Val : Boolean) is
5639 begin
5640 pragma Assert (N <= Nodes.Last);
5641 Nodes.Table (N).Flag16 := Val;
5642 end Set_Flag16;
5643
5644 procedure Set_Flag17 (N : Node_Id; Val : Boolean) is
5645 begin
5646 pragma Assert (N <= Nodes.Last);
5647 Nodes.Table (N).Flag17 := Val;
5648 end Set_Flag17;
5649
5650 procedure Set_Flag18 (N : Node_Id; Val : Boolean) is
5651 begin
5652 pragma Assert (N <= Nodes.Last);
5653 Nodes.Table (N).Flag18 := Val;
5654 end Set_Flag18;
5655
5656 procedure Set_Flag19 (N : Node_Id; Val : Boolean) is
5657 begin
5658 pragma Assert (Nkind (N) in N_Entity);
5659 Nodes.Table (N + 1).In_List := Val;
5660 end Set_Flag19;
5661
5662 procedure Set_Flag20 (N : Node_Id; Val : Boolean) is
5663 begin
5664 pragma Assert (Nkind (N) in N_Entity);
5665 Nodes.Table (N + 1).Has_Aspects := Val;
5666 end Set_Flag20;
5667
5668 procedure Set_Flag21 (N : Node_Id; Val : Boolean) is
5669 begin
5670 pragma Assert (Nkind (N) in N_Entity);
5671 Nodes.Table (N + 1).Rewrite_Ins := Val;
5672 end Set_Flag21;
5673
5674 procedure Set_Flag22 (N : Node_Id; Val : Boolean) is
5675 begin
5676 pragma Assert (Nkind (N) in N_Entity);
5677 Nodes.Table (N + 1).Analyzed := Val;
5678 end Set_Flag22;
5679
5680 procedure Set_Flag23 (N : Node_Id; Val : Boolean) is
5681 begin
5682 pragma Assert (Nkind (N) in N_Entity);
5683 Nodes.Table (N + 1).Comes_From_Source := Val;
5684 end Set_Flag23;
5685
5686 procedure Set_Flag24 (N : Node_Id; Val : Boolean) is
5687 begin
5688 pragma Assert (Nkind (N) in N_Entity);
5689 Nodes.Table (N + 1).Error_Posted := Val;
5690 end Set_Flag24;
5691
5692 procedure Set_Flag25 (N : Node_Id; Val : Boolean) is
5693 begin
5694 pragma Assert (Nkind (N) in N_Entity);
5695 Nodes.Table (N + 1).Flag4 := Val;
5696 end Set_Flag25;
5697
5698 procedure Set_Flag26 (N : Node_Id; Val : Boolean) is
5699 begin
5700 pragma Assert (Nkind (N) in N_Entity);
5701 Nodes.Table (N + 1).Flag5 := Val;
5702 end Set_Flag26;
5703
5704 procedure Set_Flag27 (N : Node_Id; Val : Boolean) is
5705 begin
5706 pragma Assert (Nkind (N) in N_Entity);
5707 Nodes.Table (N + 1).Flag6 := Val;
5708 end Set_Flag27;
5709
5710 procedure Set_Flag28 (N : Node_Id; Val : Boolean) is
5711 begin
5712 pragma Assert (Nkind (N) in N_Entity);
5713 Nodes.Table (N + 1).Flag7 := Val;
5714 end Set_Flag28;
5715
5716 procedure Set_Flag29 (N : Node_Id; Val : Boolean) is
5717 begin
5718 pragma Assert (Nkind (N) in N_Entity);
5719 Nodes.Table (N + 1).Flag8 := Val;
5720 end Set_Flag29;
5721
5722 procedure Set_Flag30 (N : Node_Id; Val : Boolean) is
5723 begin
5724 pragma Assert (Nkind (N) in N_Entity);
5725 Nodes.Table (N + 1).Flag9 := Val;
5726 end Set_Flag30;
5727
5728 procedure Set_Flag31 (N : Node_Id; Val : Boolean) is
5729 begin
5730 pragma Assert (Nkind (N) in N_Entity);
5731 Nodes.Table (N + 1).Flag10 := Val;
5732 end Set_Flag31;
5733
5734 procedure Set_Flag32 (N : Node_Id; Val : Boolean) is
5735 begin
5736 pragma Assert (Nkind (N) in N_Entity);
5737 Nodes.Table (N + 1).Flag11 := Val;
5738 end Set_Flag32;
5739
5740 procedure Set_Flag33 (N : Node_Id; Val : Boolean) is
5741 begin
5742 pragma Assert (Nkind (N) in N_Entity);
5743 Nodes.Table (N + 1).Flag12 := Val;
5744 end Set_Flag33;
5745
5746 procedure Set_Flag34 (N : Node_Id; Val : Boolean) is
5747 begin
5748 pragma Assert (Nkind (N) in N_Entity);
5749 Nodes.Table (N + 1).Flag13 := Val;
5750 end Set_Flag34;
5751
5752 procedure Set_Flag35 (N : Node_Id; Val : Boolean) is
5753 begin
5754 pragma Assert (Nkind (N) in N_Entity);
5755 Nodes.Table (N + 1).Flag14 := Val;
5756 end Set_Flag35;
5757
5758 procedure Set_Flag36 (N : Node_Id; Val : Boolean) is
5759 begin
5760 pragma Assert (Nkind (N) in N_Entity);
5761 Nodes.Table (N + 1).Flag15 := Val;
5762 end Set_Flag36;
5763
5764 procedure Set_Flag37 (N : Node_Id; Val : Boolean) is
5765 begin
5766 pragma Assert (Nkind (N) in N_Entity);
5767 Nodes.Table (N + 1).Flag16 := Val;
5768 end Set_Flag37;
5769
5770 procedure Set_Flag38 (N : Node_Id; Val : Boolean) is
5771 begin
5772 pragma Assert (Nkind (N) in N_Entity);
5773 Nodes.Table (N + 1).Flag17 := Val;
5774 end Set_Flag38;
5775
5776 procedure Set_Flag39 (N : Node_Id; Val : Boolean) is
5777 begin
5778 pragma Assert (Nkind (N) in N_Entity);
5779 Nodes.Table (N + 1).Flag18 := Val;
5780 end Set_Flag39;
5781
5782 procedure Set_Flag40 (N : Node_Id; Val : Boolean) is
5783 begin
5784 pragma Assert (Nkind (N) in N_Entity);
5785 Nodes.Table (N + 2).In_List := Val;
5786 end Set_Flag40;
5787
5788 procedure Set_Flag41 (N : Node_Id; Val : Boolean) is
5789 begin
5790 pragma Assert (Nkind (N) in N_Entity);
5791 Nodes.Table (N + 2).Has_Aspects := Val;
5792 end Set_Flag41;
5793
5794 procedure Set_Flag42 (N : Node_Id; Val : Boolean) is
5795 begin
5796 pragma Assert (Nkind (N) in N_Entity);
5797 Nodes.Table (N + 2).Rewrite_Ins := Val;
5798 end Set_Flag42;
5799
5800 procedure Set_Flag43 (N : Node_Id; Val : Boolean) is
5801 begin
5802 pragma Assert (Nkind (N) in N_Entity);
5803 Nodes.Table (N + 2).Analyzed := Val;
5804 end Set_Flag43;
5805
5806 procedure Set_Flag44 (N : Node_Id; Val : Boolean) is
5807 begin
5808 pragma Assert (Nkind (N) in N_Entity);
5809 Nodes.Table (N + 2).Comes_From_Source := Val;
5810 end Set_Flag44;
5811
5812 procedure Set_Flag45 (N : Node_Id; Val : Boolean) is
5813 begin
5814 pragma Assert (Nkind (N) in N_Entity);
5815 Nodes.Table (N + 2).Error_Posted := Val;
5816 end Set_Flag45;
5817
5818 procedure Set_Flag46 (N : Node_Id; Val : Boolean) is
5819 begin
5820 pragma Assert (Nkind (N) in N_Entity);
5821 Nodes.Table (N + 2).Flag4 := Val;
5822 end Set_Flag46;
5823
5824 procedure Set_Flag47 (N : Node_Id; Val : Boolean) is
5825 begin
5826 pragma Assert (Nkind (N) in N_Entity);
5827 Nodes.Table (N + 2).Flag5 := Val;
5828 end Set_Flag47;
5829
5830 procedure Set_Flag48 (N : Node_Id; Val : Boolean) is
5831 begin
5832 pragma Assert (Nkind (N) in N_Entity);
5833 Nodes.Table (N + 2).Flag6 := Val;
5834 end Set_Flag48;
5835
5836 procedure Set_Flag49 (N : Node_Id; Val : Boolean) is
5837 begin
5838 pragma Assert (Nkind (N) in N_Entity);
5839 Nodes.Table (N + 2).Flag7 := Val;
5840 end Set_Flag49;
5841
5842 procedure Set_Flag50 (N : Node_Id; Val : Boolean) is
5843 begin
5844 pragma Assert (Nkind (N) in N_Entity);
5845 Nodes.Table (N + 2).Flag8 := Val;
5846 end Set_Flag50;
5847
5848 procedure Set_Flag51 (N : Node_Id; Val : Boolean) is
5849 begin
5850 pragma Assert (Nkind (N) in N_Entity);
5851 Nodes.Table (N + 2).Flag9 := Val;
5852 end Set_Flag51;
5853
5854 procedure Set_Flag52 (N : Node_Id; Val : Boolean) is
5855 begin
5856 pragma Assert (Nkind (N) in N_Entity);
5857 Nodes.Table (N + 2).Flag10 := Val;
5858 end Set_Flag52;
5859
5860 procedure Set_Flag53 (N : Node_Id; Val : Boolean) is
5861 begin
5862 pragma Assert (Nkind (N) in N_Entity);
5863 Nodes.Table (N + 2).Flag11 := Val;
5864 end Set_Flag53;
5865
5866 procedure Set_Flag54 (N : Node_Id; Val : Boolean) is
5867 begin
5868 pragma Assert (Nkind (N) in N_Entity);
5869 Nodes.Table (N + 2).Flag12 := Val;
5870 end Set_Flag54;
5871
5872 procedure Set_Flag55 (N : Node_Id; Val : Boolean) is
5873 begin
5874 pragma Assert (Nkind (N) in N_Entity);
5875 Nodes.Table (N + 2).Flag13 := Val;
5876 end Set_Flag55;
5877
5878 procedure Set_Flag56 (N : Node_Id; Val : Boolean) is
5879 begin
5880 pragma Assert (Nkind (N) in N_Entity);
5881 Nodes.Table (N + 2).Flag14 := Val;
5882 end Set_Flag56;
5883
5884 procedure Set_Flag57 (N : Node_Id; Val : Boolean) is
5885 begin
5886 pragma Assert (Nkind (N) in N_Entity);
5887 Nodes.Table (N + 2).Flag15 := Val;
5888 end Set_Flag57;
5889
5890 procedure Set_Flag58 (N : Node_Id; Val : Boolean) is
5891 begin
5892 pragma Assert (Nkind (N) in N_Entity);
5893 Nodes.Table (N + 2).Flag16 := Val;
5894 end Set_Flag58;
5895
5896 procedure Set_Flag59 (N : Node_Id; Val : Boolean) is
5897 begin
5898 pragma Assert (Nkind (N) in N_Entity);
5899 Nodes.Table (N + 2).Flag17 := Val;
5900 end Set_Flag59;
5901
5902 procedure Set_Flag60 (N : Node_Id; Val : Boolean) is
5903 begin
5904 pragma Assert (Nkind (N) in N_Entity);
5905 Nodes.Table (N + 2).Flag18 := Val;
5906 end Set_Flag60;
5907
5908 procedure Set_Flag61 (N : Node_Id; Val : Boolean) is
5909 begin
5910 pragma Assert (Nkind (N) in N_Entity);
5911 Nodes.Table (N + 1).Pflag1 := Val;
5912 end Set_Flag61;
5913
5914 procedure Set_Flag62 (N : Node_Id; Val : Boolean) is
5915 begin
5916 pragma Assert (Nkind (N) in N_Entity);
5917 Nodes.Table (N + 1).Pflag2 := Val;
5918 end Set_Flag62;
5919
5920 procedure Set_Flag63 (N : Node_Id; Val : Boolean) is
5921 begin
5922 pragma Assert (Nkind (N) in N_Entity);
5923 Nodes.Table (N + 2).Pflag1 := Val;
5924 end Set_Flag63;
5925
5926 procedure Set_Flag64 (N : Node_Id; Val : Boolean) is
5927 begin
5928 pragma Assert (Nkind (N) in N_Entity);
5929 Nodes.Table (N + 2).Pflag2 := Val;
5930 end Set_Flag64;
5931
5932 procedure Set_Flag65 (N : Node_Id; Val : Boolean) is
5933 begin
5934 pragma Assert (Nkind (N) in N_Entity);
5935 To_Flag_Byte_Ptr
5936 (Node_Kind_Ptr'
5937 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag65 := Val;
5938 end Set_Flag65;
5939
5940 procedure Set_Flag66 (N : Node_Id; Val : Boolean) is
5941 begin
5942 pragma Assert (Nkind (N) in N_Entity);
5943 To_Flag_Byte_Ptr
5944 (Node_Kind_Ptr'
5945 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag66 := Val;
5946 end Set_Flag66;
5947
5948 procedure Set_Flag67 (N : Node_Id; Val : Boolean) is
5949 begin
5950 pragma Assert (Nkind (N) in N_Entity);
5951 To_Flag_Byte_Ptr
5952 (Node_Kind_Ptr'
5953 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag67 := Val;
5954 end Set_Flag67;
5955
5956 procedure Set_Flag68 (N : Node_Id; Val : Boolean) is
5957 begin
5958 pragma Assert (Nkind (N) in N_Entity);
5959 To_Flag_Byte_Ptr
5960 (Node_Kind_Ptr'
5961 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag68 := Val;
5962 end Set_Flag68;
5963
5964 procedure Set_Flag69 (N : Node_Id; Val : Boolean) is
5965 begin
5966 pragma Assert (Nkind (N) in N_Entity);
5967 To_Flag_Byte_Ptr
5968 (Node_Kind_Ptr'
5969 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag69 := Val;
5970 end Set_Flag69;
5971
5972 procedure Set_Flag70 (N : Node_Id; Val : Boolean) is
5973 begin
5974 pragma Assert (Nkind (N) in N_Entity);
5975 To_Flag_Byte_Ptr
5976 (Node_Kind_Ptr'
5977 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag70 := Val;
5978 end Set_Flag70;
5979
5980 procedure Set_Flag71 (N : Node_Id; Val : Boolean) is
5981 begin
5982 pragma Assert (Nkind (N) in N_Entity);
5983 To_Flag_Byte_Ptr
5984 (Node_Kind_Ptr'
5985 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag71 := Val;
5986 end Set_Flag71;
5987
5988 procedure Set_Flag72 (N : Node_Id; Val : Boolean) is
5989 begin
5990 pragma Assert (Nkind (N) in N_Entity);
5991 To_Flag_Byte_Ptr
5992 (Node_Kind_Ptr'
5993 (Nodes.Table (N + 2).Nkind'Unrestricted_Access)).Flag72 := Val;
5994 end Set_Flag72;
5995
5996 procedure Set_Flag73 (N : Node_Id; Val : Boolean) is
5997 begin
5998 pragma Assert (Nkind (N) in N_Entity);
5999 To_Flag_Word_Ptr
6000 (Union_Id_Ptr'
6001 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag73 := Val;
6002 end Set_Flag73;
6003
6004 procedure Set_Flag74 (N : Node_Id; Val : Boolean) is
6005 begin
6006 pragma Assert (Nkind (N) in N_Entity);
6007 To_Flag_Word_Ptr
6008 (Union_Id_Ptr'
6009 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag74 := Val;
6010 end Set_Flag74;
6011
6012 procedure Set_Flag75 (N : Node_Id; Val : Boolean) is
6013 begin
6014 pragma Assert (Nkind (N) in N_Entity);
6015 To_Flag_Word_Ptr
6016 (Union_Id_Ptr'
6017 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag75 := Val;
6018 end Set_Flag75;
6019
6020 procedure Set_Flag76 (N : Node_Id; Val : Boolean) is
6021 begin
6022 pragma Assert (Nkind (N) in N_Entity);
6023 To_Flag_Word_Ptr
6024 (Union_Id_Ptr'
6025 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag76 := Val;
6026 end Set_Flag76;
6027
6028 procedure Set_Flag77 (N : Node_Id; Val : Boolean) is
6029 begin
6030 pragma Assert (Nkind (N) in N_Entity);
6031 To_Flag_Word_Ptr
6032 (Union_Id_Ptr'
6033 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag77 := Val;
6034 end Set_Flag77;
6035
6036 procedure Set_Flag78 (N : Node_Id; Val : Boolean) is
6037 begin
6038 pragma Assert (Nkind (N) in N_Entity);
6039 To_Flag_Word_Ptr
6040 (Union_Id_Ptr'
6041 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag78 := Val;
6042 end Set_Flag78;
6043
6044 procedure Set_Flag79 (N : Node_Id; Val : Boolean) is
6045 begin
6046 pragma Assert (Nkind (N) in N_Entity);
6047 To_Flag_Word_Ptr
6048 (Union_Id_Ptr'
6049 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag79 := Val;
6050 end Set_Flag79;
6051
6052 procedure Set_Flag80 (N : Node_Id; Val : Boolean) is
6053 begin
6054 pragma Assert (Nkind (N) in N_Entity);
6055 To_Flag_Word_Ptr
6056 (Union_Id_Ptr'
6057 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag80 := Val;
6058 end Set_Flag80;
6059
6060 procedure Set_Flag81 (N : Node_Id; Val : Boolean) is
6061 begin
6062 pragma Assert (Nkind (N) in N_Entity);
6063 To_Flag_Word_Ptr
6064 (Union_Id_Ptr'
6065 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag81 := Val;
6066 end Set_Flag81;
6067
6068 procedure Set_Flag82 (N : Node_Id; Val : Boolean) is
6069 begin
6070 pragma Assert (Nkind (N) in N_Entity);
6071 To_Flag_Word_Ptr
6072 (Union_Id_Ptr'
6073 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag82 := Val;
6074 end Set_Flag82;
6075
6076 procedure Set_Flag83 (N : Node_Id; Val : Boolean) is
6077 begin
6078 pragma Assert (Nkind (N) in N_Entity);
6079 To_Flag_Word_Ptr
6080 (Union_Id_Ptr'
6081 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag83 := Val;
6082 end Set_Flag83;
6083
6084 procedure Set_Flag84 (N : Node_Id; Val : Boolean) is
6085 begin
6086 pragma Assert (Nkind (N) in N_Entity);
6087 To_Flag_Word_Ptr
6088 (Union_Id_Ptr'
6089 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag84 := Val;
6090 end Set_Flag84;
6091
6092 procedure Set_Flag85 (N : Node_Id; Val : Boolean) is
6093 begin
6094 pragma Assert (Nkind (N) in N_Entity);
6095 To_Flag_Word_Ptr
6096 (Union_Id_Ptr'
6097 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag85 := Val;
6098 end Set_Flag85;
6099
6100 procedure Set_Flag86 (N : Node_Id; Val : Boolean) is
6101 begin
6102 pragma Assert (Nkind (N) in N_Entity);
6103 To_Flag_Word_Ptr
6104 (Union_Id_Ptr'
6105 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag86 := Val;
6106 end Set_Flag86;
6107
6108 procedure Set_Flag87 (N : Node_Id; Val : Boolean) is
6109 begin
6110 pragma Assert (Nkind (N) in N_Entity);
6111 To_Flag_Word_Ptr
6112 (Union_Id_Ptr'
6113 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag87 := Val;
6114 end Set_Flag87;
6115
6116 procedure Set_Flag88 (N : Node_Id; Val : Boolean) is
6117 begin
6118 pragma Assert (Nkind (N) in N_Entity);
6119 To_Flag_Word_Ptr
6120 (Union_Id_Ptr'
6121 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag88 := Val;
6122 end Set_Flag88;
6123
6124 procedure Set_Flag89 (N : Node_Id; Val : Boolean) is
6125 begin
6126 pragma Assert (Nkind (N) in N_Entity);
6127 To_Flag_Word_Ptr
6128 (Union_Id_Ptr'
6129 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag89 := Val;
6130 end Set_Flag89;
6131
6132 procedure Set_Flag90 (N : Node_Id; Val : Boolean) is
6133 begin
6134 pragma Assert (Nkind (N) in N_Entity);
6135 To_Flag_Word_Ptr
6136 (Union_Id_Ptr'
6137 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag90 := Val;
6138 end Set_Flag90;
6139
6140 procedure Set_Flag91 (N : Node_Id; Val : Boolean) is
6141 begin
6142 pragma Assert (Nkind (N) in N_Entity);
6143 To_Flag_Word_Ptr
6144 (Union_Id_Ptr'
6145 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag91 := Val;
6146 end Set_Flag91;
6147
6148 procedure Set_Flag92 (N : Node_Id; Val : Boolean) is
6149 begin
6150 pragma Assert (Nkind (N) in N_Entity);
6151 To_Flag_Word_Ptr
6152 (Union_Id_Ptr'
6153 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag92 := Val;
6154 end Set_Flag92;
6155
6156 procedure Set_Flag93 (N : Node_Id; Val : Boolean) is
6157 begin
6158 pragma Assert (Nkind (N) in N_Entity);
6159 To_Flag_Word_Ptr
6160 (Union_Id_Ptr'
6161 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag93 := Val;
6162 end Set_Flag93;
6163
6164 procedure Set_Flag94 (N : Node_Id; Val : Boolean) is
6165 begin
6166 pragma Assert (Nkind (N) in N_Entity);
6167 To_Flag_Word_Ptr
6168 (Union_Id_Ptr'
6169 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag94 := Val;
6170 end Set_Flag94;
6171
6172 procedure Set_Flag95 (N : Node_Id; Val : Boolean) is
6173 begin
6174 pragma Assert (Nkind (N) in N_Entity);
6175 To_Flag_Word_Ptr
6176 (Union_Id_Ptr'
6177 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag95 := Val;
6178 end Set_Flag95;
6179
6180 procedure Set_Flag96 (N : Node_Id; Val : Boolean) is
6181 begin
6182 pragma Assert (Nkind (N) in N_Entity);
6183 To_Flag_Word_Ptr
6184 (Union_Id_Ptr'
6185 (Nodes.Table (N + 2).Field12'Unrestricted_Access)).Flag96 := Val;
6186 end Set_Flag96;
6187
6188 procedure Set_Flag97 (N : Node_Id; Val : Boolean) is
6189 begin
6190 pragma Assert (Nkind (N) in N_Entity);
6191 To_Flag_Word2_Ptr
6192 (Union_Id_Ptr'
6193 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag97 := Val;
6194 end Set_Flag97;
6195
6196 procedure Set_Flag98 (N : Node_Id; Val : Boolean) is
6197 begin
6198 pragma Assert (Nkind (N) in N_Entity);
6199 To_Flag_Word2_Ptr
6200 (Union_Id_Ptr'
6201 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag98 := Val;
6202 end Set_Flag98;
6203
6204 procedure Set_Flag99 (N : Node_Id; Val : Boolean) is
6205 begin
6206 pragma Assert (Nkind (N) in N_Entity);
6207 To_Flag_Word2_Ptr
6208 (Union_Id_Ptr'
6209 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag99 := Val;
6210 end Set_Flag99;
6211
6212 procedure Set_Flag100 (N : Node_Id; Val : Boolean) is
6213 begin
6214 pragma Assert (Nkind (N) in N_Entity);
6215 To_Flag_Word2_Ptr
6216 (Union_Id_Ptr'
6217 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag100 := Val;
6218 end Set_Flag100;
6219
6220 procedure Set_Flag101 (N : Node_Id; Val : Boolean) is
6221 begin
6222 pragma Assert (Nkind (N) in N_Entity);
6223 To_Flag_Word2_Ptr
6224 (Union_Id_Ptr'
6225 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag101 := Val;
6226 end Set_Flag101;
6227
6228 procedure Set_Flag102 (N : Node_Id; Val : Boolean) is
6229 begin
6230 pragma Assert (Nkind (N) in N_Entity);
6231 To_Flag_Word2_Ptr
6232 (Union_Id_Ptr'
6233 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag102 := Val;
6234 end Set_Flag102;
6235
6236 procedure Set_Flag103 (N : Node_Id; Val : Boolean) is
6237 begin
6238 pragma Assert (Nkind (N) in N_Entity);
6239 To_Flag_Word2_Ptr
6240 (Union_Id_Ptr'
6241 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag103 := Val;
6242 end Set_Flag103;
6243
6244 procedure Set_Flag104 (N : Node_Id; Val : Boolean) is
6245 begin
6246 pragma Assert (Nkind (N) in N_Entity);
6247 To_Flag_Word2_Ptr
6248 (Union_Id_Ptr'
6249 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag104 := Val;
6250 end Set_Flag104;
6251
6252 procedure Set_Flag105 (N : Node_Id; Val : Boolean) is
6253 begin
6254 pragma Assert (Nkind (N) in N_Entity);
6255 To_Flag_Word2_Ptr
6256 (Union_Id_Ptr'
6257 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag105 := Val;
6258 end Set_Flag105;
6259
6260 procedure Set_Flag106 (N : Node_Id; Val : Boolean) is
6261 begin
6262 pragma Assert (Nkind (N) in N_Entity);
6263 To_Flag_Word2_Ptr
6264 (Union_Id_Ptr'
6265 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag106 := Val;
6266 end Set_Flag106;
6267
6268 procedure Set_Flag107 (N : Node_Id; Val : Boolean) is
6269 begin
6270 pragma Assert (Nkind (N) in N_Entity);
6271 To_Flag_Word2_Ptr
6272 (Union_Id_Ptr'
6273 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag107 := Val;
6274 end Set_Flag107;
6275
6276 procedure Set_Flag108 (N : Node_Id; Val : Boolean) is
6277 begin
6278 pragma Assert (Nkind (N) in N_Entity);
6279 To_Flag_Word2_Ptr
6280 (Union_Id_Ptr'
6281 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag108 := Val;
6282 end Set_Flag108;
6283
6284 procedure Set_Flag109 (N : Node_Id; Val : Boolean) is
6285 begin
6286 pragma Assert (Nkind (N) in N_Entity);
6287 To_Flag_Word2_Ptr
6288 (Union_Id_Ptr'
6289 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag109 := Val;
6290 end Set_Flag109;
6291
6292 procedure Set_Flag110 (N : Node_Id; Val : Boolean) is
6293 begin
6294 pragma Assert (Nkind (N) in N_Entity);
6295 To_Flag_Word2_Ptr
6296 (Union_Id_Ptr'
6297 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag110 := Val;
6298 end Set_Flag110;
6299
6300 procedure Set_Flag111 (N : Node_Id; Val : Boolean) is
6301 begin
6302 pragma Assert (Nkind (N) in N_Entity);
6303 To_Flag_Word2_Ptr
6304 (Union_Id_Ptr'
6305 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag111 := Val;
6306 end Set_Flag111;
6307
6308 procedure Set_Flag112 (N : Node_Id; Val : Boolean) is
6309 begin
6310 pragma Assert (Nkind (N) in N_Entity);
6311 To_Flag_Word2_Ptr
6312 (Union_Id_Ptr'
6313 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag112 := Val;
6314 end Set_Flag112;
6315
6316 procedure Set_Flag113 (N : Node_Id; Val : Boolean) is
6317 begin
6318 pragma Assert (Nkind (N) in N_Entity);
6319 To_Flag_Word2_Ptr
6320 (Union_Id_Ptr'
6321 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag113 := Val;
6322 end Set_Flag113;
6323
6324 procedure Set_Flag114 (N : Node_Id; Val : Boolean) is
6325 begin
6326 pragma Assert (Nkind (N) in N_Entity);
6327 To_Flag_Word2_Ptr
6328 (Union_Id_Ptr'
6329 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag114 := Val;
6330 end Set_Flag114;
6331
6332 procedure Set_Flag115 (N : Node_Id; Val : Boolean) is
6333 begin
6334 pragma Assert (Nkind (N) in N_Entity);
6335 To_Flag_Word2_Ptr
6336 (Union_Id_Ptr'
6337 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag115 := Val;
6338 end Set_Flag115;
6339
6340 procedure Set_Flag116 (N : Node_Id; Val : Boolean) is
6341 begin
6342 pragma Assert (Nkind (N) in N_Entity);
6343 To_Flag_Word2_Ptr
6344 (Union_Id_Ptr'
6345 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag116 := Val;
6346 end Set_Flag116;
6347
6348 procedure Set_Flag117 (N : Node_Id; Val : Boolean) is
6349 begin
6350 pragma Assert (Nkind (N) in N_Entity);
6351 To_Flag_Word2_Ptr
6352 (Union_Id_Ptr'
6353 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag117 := Val;
6354 end Set_Flag117;
6355
6356 procedure Set_Flag118 (N : Node_Id; Val : Boolean) is
6357 begin
6358 pragma Assert (Nkind (N) in N_Entity);
6359 To_Flag_Word2_Ptr
6360 (Union_Id_Ptr'
6361 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag118 := Val;
6362 end Set_Flag118;
6363
6364 procedure Set_Flag119 (N : Node_Id; Val : Boolean) is
6365 begin
6366 pragma Assert (Nkind (N) in N_Entity);
6367 To_Flag_Word2_Ptr
6368 (Union_Id_Ptr'
6369 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag119 := Val;
6370 end Set_Flag119;
6371
6372 procedure Set_Flag120 (N : Node_Id; Val : Boolean) is
6373 begin
6374 pragma Assert (Nkind (N) in N_Entity);
6375 To_Flag_Word2_Ptr
6376 (Union_Id_Ptr'
6377 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag120 := Val;
6378 end Set_Flag120;
6379
6380 procedure Set_Flag121 (N : Node_Id; Val : Boolean) is
6381 begin
6382 pragma Assert (Nkind (N) in N_Entity);
6383 To_Flag_Word2_Ptr
6384 (Union_Id_Ptr'
6385 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag121 := Val;
6386 end Set_Flag121;
6387
6388 procedure Set_Flag122 (N : Node_Id; Val : Boolean) is
6389 begin
6390 pragma Assert (Nkind (N) in N_Entity);
6391 To_Flag_Word2_Ptr
6392 (Union_Id_Ptr'
6393 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag122 := Val;
6394 end Set_Flag122;
6395
6396 procedure Set_Flag123 (N : Node_Id; Val : Boolean) is
6397 begin
6398 pragma Assert (Nkind (N) in N_Entity);
6399 To_Flag_Word2_Ptr
6400 (Union_Id_Ptr'
6401 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag123 := Val;
6402 end Set_Flag123;
6403
6404 procedure Set_Flag124 (N : Node_Id; Val : Boolean) is
6405 begin
6406 pragma Assert (Nkind (N) in N_Entity);
6407 To_Flag_Word2_Ptr
6408 (Union_Id_Ptr'
6409 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag124 := Val;
6410 end Set_Flag124;
6411
6412 procedure Set_Flag125 (N : Node_Id; Val : Boolean) is
6413 begin
6414 pragma Assert (Nkind (N) in N_Entity);
6415 To_Flag_Word2_Ptr
6416 (Union_Id_Ptr'
6417 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag125 := Val;
6418 end Set_Flag125;
6419
6420 procedure Set_Flag126 (N : Node_Id; Val : Boolean) is
6421 begin
6422 pragma Assert (Nkind (N) in N_Entity);
6423 To_Flag_Word2_Ptr
6424 (Union_Id_Ptr'
6425 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag126 := Val;
6426 end Set_Flag126;
6427
6428 procedure Set_Flag127 (N : Node_Id; Val : Boolean) is
6429 begin
6430 pragma Assert (Nkind (N) in N_Entity);
6431 To_Flag_Word2_Ptr
6432 (Union_Id_Ptr'
6433 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag127 := Val;
6434 end Set_Flag127;
6435
6436 procedure Set_Flag128 (N : Node_Id; Val : Boolean) is
6437 begin
6438 pragma Assert (Nkind (N) in N_Entity);
6439 To_Flag_Word2_Ptr
6440 (Union_Id_Ptr'
6441 (Nodes.Table (N + 3).Field12'Unrestricted_Access)).Flag128 := Val;
6442 end Set_Flag128;
6443
6444 procedure Set_Flag129 (N : Node_Id; Val : Boolean) is
6445 begin
6446 pragma Assert (Nkind (N) in N_Entity);
6447 Nodes.Table (N + 3).In_List := Val;
6448 end Set_Flag129;
6449
6450 procedure Set_Flag130 (N : Node_Id; Val : Boolean) is
6451 begin
6452 pragma Assert (Nkind (N) in N_Entity);
6453 Nodes.Table (N + 3).Has_Aspects := Val;
6454 end Set_Flag130;
6455
6456 procedure Set_Flag131 (N : Node_Id; Val : Boolean) is
6457 begin
6458 pragma Assert (Nkind (N) in N_Entity);
6459 Nodes.Table (N + 3).Rewrite_Ins := Val;
6460 end Set_Flag131;
6461
6462 procedure Set_Flag132 (N : Node_Id; Val : Boolean) is
6463 begin
6464 pragma Assert (Nkind (N) in N_Entity);
6465 Nodes.Table (N + 3).Analyzed := Val;
6466 end Set_Flag132;
6467
6468 procedure Set_Flag133 (N : Node_Id; Val : Boolean) is
6469 begin
6470 pragma Assert (Nkind (N) in N_Entity);
6471 Nodes.Table (N + 3).Comes_From_Source := Val;
6472 end Set_Flag133;
6473
6474 procedure Set_Flag134 (N : Node_Id; Val : Boolean) is
6475 begin
6476 pragma Assert (Nkind (N) in N_Entity);
6477 Nodes.Table (N + 3).Error_Posted := Val;
6478 end Set_Flag134;
6479
6480 procedure Set_Flag135 (N : Node_Id; Val : Boolean) is
6481 begin
6482 pragma Assert (Nkind (N) in N_Entity);
6483 Nodes.Table (N + 3).Flag4 := Val;
6484 end Set_Flag135;
6485
6486 procedure Set_Flag136 (N : Node_Id; Val : Boolean) is
6487 begin
6488 pragma Assert (Nkind (N) in N_Entity);
6489 Nodes.Table (N + 3).Flag5 := Val;
6490 end Set_Flag136;
6491
6492 procedure Set_Flag137 (N : Node_Id; Val : Boolean) is
6493 begin
6494 pragma Assert (Nkind (N) in N_Entity);
6495 Nodes.Table (N + 3).Flag6 := Val;
6496 end Set_Flag137;
6497
6498 procedure Set_Flag138 (N : Node_Id; Val : Boolean) is
6499 begin
6500 pragma Assert (Nkind (N) in N_Entity);
6501 Nodes.Table (N + 3).Flag7 := Val;
6502 end Set_Flag138;
6503
6504 procedure Set_Flag139 (N : Node_Id; Val : Boolean) is
6505 begin
6506 pragma Assert (Nkind (N) in N_Entity);
6507 Nodes.Table (N + 3).Flag8 := Val;
6508 end Set_Flag139;
6509
6510 procedure Set_Flag140 (N : Node_Id; Val : Boolean) is
6511 begin
6512 pragma Assert (Nkind (N) in N_Entity);
6513 Nodes.Table (N + 3).Flag9 := Val;
6514 end Set_Flag140;
6515
6516 procedure Set_Flag141 (N : Node_Id; Val : Boolean) is
6517 begin
6518 pragma Assert (Nkind (N) in N_Entity);
6519 Nodes.Table (N + 3).Flag10 := Val;
6520 end Set_Flag141;
6521
6522 procedure Set_Flag142 (N : Node_Id; Val : Boolean) is
6523 begin
6524 pragma Assert (Nkind (N) in N_Entity);
6525 Nodes.Table (N + 3).Flag11 := Val;
6526 end Set_Flag142;
6527
6528 procedure Set_Flag143 (N : Node_Id; Val : Boolean) is
6529 begin
6530 pragma Assert (Nkind (N) in N_Entity);
6531 Nodes.Table (N + 3).Flag12 := Val;
6532 end Set_Flag143;
6533
6534 procedure Set_Flag144 (N : Node_Id; Val : Boolean) is
6535 begin
6536 pragma Assert (Nkind (N) in N_Entity);
6537 Nodes.Table (N + 3).Flag13 := Val;
6538 end Set_Flag144;
6539
6540 procedure Set_Flag145 (N : Node_Id; Val : Boolean) is
6541 begin
6542 pragma Assert (Nkind (N) in N_Entity);
6543 Nodes.Table (N + 3).Flag14 := Val;
6544 end Set_Flag145;
6545
6546 procedure Set_Flag146 (N : Node_Id; Val : Boolean) is
6547 begin
6548 pragma Assert (Nkind (N) in N_Entity);
6549 Nodes.Table (N + 3).Flag15 := Val;
6550 end Set_Flag146;
6551
6552 procedure Set_Flag147 (N : Node_Id; Val : Boolean) is
6553 begin
6554 pragma Assert (Nkind (N) in N_Entity);
6555 Nodes.Table (N + 3).Flag16 := Val;
6556 end Set_Flag147;
6557
6558 procedure Set_Flag148 (N : Node_Id; Val : Boolean) is
6559 begin
6560 pragma Assert (Nkind (N) in N_Entity);
6561 Nodes.Table (N + 3).Flag17 := Val;
6562 end Set_Flag148;
6563
6564 procedure Set_Flag149 (N : Node_Id; Val : Boolean) is
6565 begin
6566 pragma Assert (Nkind (N) in N_Entity);
6567 Nodes.Table (N + 3).Flag18 := Val;
6568 end Set_Flag149;
6569
6570 procedure Set_Flag150 (N : Node_Id; Val : Boolean) is
6571 begin
6572 pragma Assert (Nkind (N) in N_Entity);
6573 Nodes.Table (N + 3).Pflag1 := Val;
6574 end Set_Flag150;
6575
6576 procedure Set_Flag151 (N : Node_Id; Val : Boolean) is
6577 begin
6578 pragma Assert (Nkind (N) in N_Entity);
6579 Nodes.Table (N + 3).Pflag2 := Val;
6580 end Set_Flag151;
6581
6582 procedure Set_Flag152 (N : Node_Id; Val : Boolean) is
6583 begin
6584 pragma Assert (Nkind (N) in N_Entity);
6585 To_Flag_Word3_Ptr
6586 (Union_Id_Ptr'
6587 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag152 := Val;
6588 end Set_Flag152;
6589
6590 procedure Set_Flag153 (N : Node_Id; Val : Boolean) is
6591 begin
6592 pragma Assert (Nkind (N) in N_Entity);
6593 To_Flag_Word3_Ptr
6594 (Union_Id_Ptr'
6595 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag153 := Val;
6596 end Set_Flag153;
6597
6598 procedure Set_Flag154 (N : Node_Id; Val : Boolean) is
6599 begin
6600 pragma Assert (Nkind (N) in N_Entity);
6601 To_Flag_Word3_Ptr
6602 (Union_Id_Ptr'
6603 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag154 := Val;
6604 end Set_Flag154;
6605
6606 procedure Set_Flag155 (N : Node_Id; Val : Boolean) is
6607 begin
6608 pragma Assert (Nkind (N) in N_Entity);
6609 To_Flag_Word3_Ptr
6610 (Union_Id_Ptr'
6611 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag155 := Val;
6612 end Set_Flag155;
6613
6614 procedure Set_Flag156 (N : Node_Id; Val : Boolean) is
6615 begin
6616 pragma Assert (Nkind (N) in N_Entity);
6617 To_Flag_Word3_Ptr
6618 (Union_Id_Ptr'
6619 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag156 := Val;
6620 end Set_Flag156;
6621
6622 procedure Set_Flag157 (N : Node_Id; Val : Boolean) is
6623 begin
6624 pragma Assert (Nkind (N) in N_Entity);
6625 To_Flag_Word3_Ptr
6626 (Union_Id_Ptr'
6627 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag157 := Val;
6628 end Set_Flag157;
6629
6630 procedure Set_Flag158 (N : Node_Id; Val : Boolean) is
6631 begin
6632 pragma Assert (Nkind (N) in N_Entity);
6633 To_Flag_Word3_Ptr
6634 (Union_Id_Ptr'
6635 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag158 := Val;
6636 end Set_Flag158;
6637
6638 procedure Set_Flag159 (N : Node_Id; Val : Boolean) is
6639 begin
6640 pragma Assert (Nkind (N) in N_Entity);
6641 To_Flag_Word3_Ptr
6642 (Union_Id_Ptr'
6643 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag159 := Val;
6644 end Set_Flag159;
6645
6646 procedure Set_Flag160 (N : Node_Id; Val : Boolean) is
6647 begin
6648 pragma Assert (Nkind (N) in N_Entity);
6649 To_Flag_Word3_Ptr
6650 (Union_Id_Ptr'
6651 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag160 := Val;
6652 end Set_Flag160;
6653
6654 procedure Set_Flag161 (N : Node_Id; Val : Boolean) is
6655 begin
6656 pragma Assert (Nkind (N) in N_Entity);
6657 To_Flag_Word3_Ptr
6658 (Union_Id_Ptr'
6659 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag161 := Val;
6660 end Set_Flag161;
6661
6662 procedure Set_Flag162 (N : Node_Id; Val : Boolean) is
6663 begin
6664 pragma Assert (Nkind (N) in N_Entity);
6665 To_Flag_Word3_Ptr
6666 (Union_Id_Ptr'
6667 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag162 := Val;
6668 end Set_Flag162;
6669
6670 procedure Set_Flag163 (N : Node_Id; Val : Boolean) is
6671 begin
6672 pragma Assert (Nkind (N) in N_Entity);
6673 To_Flag_Word3_Ptr
6674 (Union_Id_Ptr'
6675 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag163 := Val;
6676 end Set_Flag163;
6677
6678 procedure Set_Flag164 (N : Node_Id; Val : Boolean) is
6679 begin
6680 pragma Assert (Nkind (N) in N_Entity);
6681 To_Flag_Word3_Ptr
6682 (Union_Id_Ptr'
6683 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag164 := Val;
6684 end Set_Flag164;
6685
6686 procedure Set_Flag165 (N : Node_Id; Val : Boolean) is
6687 begin
6688 pragma Assert (Nkind (N) in N_Entity);
6689 To_Flag_Word3_Ptr
6690 (Union_Id_Ptr'
6691 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag165 := Val;
6692 end Set_Flag165;
6693
6694 procedure Set_Flag166 (N : Node_Id; Val : Boolean) is
6695 begin
6696 pragma Assert (Nkind (N) in N_Entity);
6697 To_Flag_Word3_Ptr
6698 (Union_Id_Ptr'
6699 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag166 := Val;
6700 end Set_Flag166;
6701
6702 procedure Set_Flag167 (N : Node_Id; Val : Boolean) is
6703 begin
6704 pragma Assert (Nkind (N) in N_Entity);
6705 To_Flag_Word3_Ptr
6706 (Union_Id_Ptr'
6707 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag167 := Val;
6708 end Set_Flag167;
6709
6710 procedure Set_Flag168 (N : Node_Id; Val : Boolean) is
6711 begin
6712 pragma Assert (Nkind (N) in N_Entity);
6713 To_Flag_Word3_Ptr
6714 (Union_Id_Ptr'
6715 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag168 := Val;
6716 end Set_Flag168;
6717
6718 procedure Set_Flag169 (N : Node_Id; Val : Boolean) is
6719 begin
6720 pragma Assert (Nkind (N) in N_Entity);
6721 To_Flag_Word3_Ptr
6722 (Union_Id_Ptr'
6723 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag169 := Val;
6724 end Set_Flag169;
6725
6726 procedure Set_Flag170 (N : Node_Id; Val : Boolean) is
6727 begin
6728 pragma Assert (Nkind (N) in N_Entity);
6729 To_Flag_Word3_Ptr
6730 (Union_Id_Ptr'
6731 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag170 := Val;
6732 end Set_Flag170;
6733
6734 procedure Set_Flag171 (N : Node_Id; Val : Boolean) is
6735 begin
6736 pragma Assert (Nkind (N) in N_Entity);
6737 To_Flag_Word3_Ptr
6738 (Union_Id_Ptr'
6739 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag171 := Val;
6740 end Set_Flag171;
6741
6742 procedure Set_Flag172 (N : Node_Id; Val : Boolean) is
6743 begin
6744 pragma Assert (Nkind (N) in N_Entity);
6745 To_Flag_Word3_Ptr
6746 (Union_Id_Ptr'
6747 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag172 := Val;
6748 end Set_Flag172;
6749
6750 procedure Set_Flag173 (N : Node_Id; Val : Boolean) is
6751 begin
6752 pragma Assert (Nkind (N) in N_Entity);
6753 To_Flag_Word3_Ptr
6754 (Union_Id_Ptr'
6755 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag173 := Val;
6756 end Set_Flag173;
6757
6758 procedure Set_Flag174 (N : Node_Id; Val : Boolean) is
6759 begin
6760 pragma Assert (Nkind (N) in N_Entity);
6761 To_Flag_Word3_Ptr
6762 (Union_Id_Ptr'
6763 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag174 := Val;
6764 end Set_Flag174;
6765
6766 procedure Set_Flag175 (N : Node_Id; Val : Boolean) is
6767 begin
6768 pragma Assert (Nkind (N) in N_Entity);
6769 To_Flag_Word3_Ptr
6770 (Union_Id_Ptr'
6771 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag175 := Val;
6772 end Set_Flag175;
6773
6774 procedure Set_Flag176 (N : Node_Id; Val : Boolean) is
6775 begin
6776 pragma Assert (Nkind (N) in N_Entity);
6777 To_Flag_Word3_Ptr
6778 (Union_Id_Ptr'
6779 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag176 := Val;
6780 end Set_Flag176;
6781
6782 procedure Set_Flag177 (N : Node_Id; Val : Boolean) is
6783 begin
6784 pragma Assert (Nkind (N) in N_Entity);
6785 To_Flag_Word3_Ptr
6786 (Union_Id_Ptr'
6787 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag177 := Val;
6788 end Set_Flag177;
6789
6790 procedure Set_Flag178 (N : Node_Id; Val : Boolean) is
6791 begin
6792 pragma Assert (Nkind (N) in N_Entity);
6793 To_Flag_Word3_Ptr
6794 (Union_Id_Ptr'
6795 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag178 := Val;
6796 end Set_Flag178;
6797
6798 procedure Set_Flag179 (N : Node_Id; Val : Boolean) is
6799 begin
6800 pragma Assert (Nkind (N) in N_Entity);
6801 To_Flag_Word3_Ptr
6802 (Union_Id_Ptr'
6803 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag179 := Val;
6804 end Set_Flag179;
6805
6806 procedure Set_Flag180 (N : Node_Id; Val : Boolean) is
6807 begin
6808 pragma Assert (Nkind (N) in N_Entity);
6809 To_Flag_Word3_Ptr
6810 (Union_Id_Ptr'
6811 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag180 := Val;
6812 end Set_Flag180;
6813
6814 procedure Set_Flag181 (N : Node_Id; Val : Boolean) is
6815 begin
6816 pragma Assert (Nkind (N) in N_Entity);
6817 To_Flag_Word3_Ptr
6818 (Union_Id_Ptr'
6819 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag181 := Val;
6820 end Set_Flag181;
6821
6822 procedure Set_Flag182 (N : Node_Id; Val : Boolean) is
6823 begin
6824 pragma Assert (Nkind (N) in N_Entity);
6825 To_Flag_Word3_Ptr
6826 (Union_Id_Ptr'
6827 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag182 := Val;
6828 end Set_Flag182;
6829
6830 procedure Set_Flag183 (N : Node_Id; Val : Boolean) is
6831 begin
6832 pragma Assert (Nkind (N) in N_Entity);
6833 To_Flag_Word3_Ptr
6834 (Union_Id_Ptr'
6835 (Nodes.Table (N + 3).Field11'Unrestricted_Access)).Flag183 := Val;
6836 end Set_Flag183;
6837
6838 procedure Set_Flag184 (N : Node_Id; Val : Boolean) is
6839 begin
6840 pragma Assert (Nkind (N) in N_Entity);
6841 To_Flag_Word4_Ptr
6842 (Union_Id_Ptr'
6843 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag184 := Val;
6844 end Set_Flag184;
6845
6846 procedure Set_Flag185 (N : Node_Id; Val : Boolean) is
6847 begin
6848 pragma Assert (Nkind (N) in N_Entity);
6849 To_Flag_Word4_Ptr
6850 (Union_Id_Ptr'
6851 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag185 := Val;
6852 end Set_Flag185;
6853
6854 procedure Set_Flag186 (N : Node_Id; Val : Boolean) is
6855 begin
6856 pragma Assert (Nkind (N) in N_Entity);
6857 To_Flag_Word4_Ptr
6858 (Union_Id_Ptr'
6859 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag186 := Val;
6860 end Set_Flag186;
6861
6862 procedure Set_Flag187 (N : Node_Id; Val : Boolean) is
6863 begin
6864 pragma Assert (Nkind (N) in N_Entity);
6865 To_Flag_Word4_Ptr
6866 (Union_Id_Ptr'
6867 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag187 := Val;
6868 end Set_Flag187;
6869
6870 procedure Set_Flag188 (N : Node_Id; Val : Boolean) is
6871 begin
6872 pragma Assert (Nkind (N) in N_Entity);
6873 To_Flag_Word4_Ptr
6874 (Union_Id_Ptr'
6875 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag188 := Val;
6876 end Set_Flag188;
6877
6878 procedure Set_Flag189 (N : Node_Id; Val : Boolean) is
6879 begin
6880 pragma Assert (Nkind (N) in N_Entity);
6881 To_Flag_Word4_Ptr
6882 (Union_Id_Ptr'
6883 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag189 := Val;
6884 end Set_Flag189;
6885
6886 procedure Set_Flag190 (N : Node_Id; Val : Boolean) is
6887 begin
6888 pragma Assert (Nkind (N) in N_Entity);
6889 To_Flag_Word4_Ptr
6890 (Union_Id_Ptr'
6891 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag190 := Val;
6892 end Set_Flag190;
6893
6894 procedure Set_Flag191 (N : Node_Id; Val : Boolean) is
6895 begin
6896 pragma Assert (Nkind (N) in N_Entity);
6897 To_Flag_Word4_Ptr
6898 (Union_Id_Ptr'
6899 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag191 := Val;
6900 end Set_Flag191;
6901
6902 procedure Set_Flag192 (N : Node_Id; Val : Boolean) is
6903 begin
6904 pragma Assert (Nkind (N) in N_Entity);
6905 To_Flag_Word4_Ptr
6906 (Union_Id_Ptr'
6907 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag192 := Val;
6908 end Set_Flag192;
6909
6910 procedure Set_Flag193 (N : Node_Id; Val : Boolean) is
6911 begin
6912 pragma Assert (Nkind (N) in N_Entity);
6913 To_Flag_Word4_Ptr
6914 (Union_Id_Ptr'
6915 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag193 := Val;
6916 end Set_Flag193;
6917
6918 procedure Set_Flag194 (N : Node_Id; Val : Boolean) is
6919 begin
6920 pragma Assert (Nkind (N) in N_Entity);
6921 To_Flag_Word4_Ptr
6922 (Union_Id_Ptr'
6923 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag194 := Val;
6924 end Set_Flag194;
6925
6926 procedure Set_Flag195 (N : Node_Id; Val : Boolean) is
6927 begin
6928 pragma Assert (Nkind (N) in N_Entity);
6929 To_Flag_Word4_Ptr
6930 (Union_Id_Ptr'
6931 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag195 := Val;
6932 end Set_Flag195;
6933
6934 procedure Set_Flag196 (N : Node_Id; Val : Boolean) is
6935 begin
6936 pragma Assert (Nkind (N) in N_Entity);
6937 To_Flag_Word4_Ptr
6938 (Union_Id_Ptr'
6939 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag196 := Val;
6940 end Set_Flag196;
6941
6942 procedure Set_Flag197 (N : Node_Id; Val : Boolean) is
6943 begin
6944 pragma Assert (Nkind (N) in N_Entity);
6945 To_Flag_Word4_Ptr
6946 (Union_Id_Ptr'
6947 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag197 := Val;
6948 end Set_Flag197;
6949
6950 procedure Set_Flag198 (N : Node_Id; Val : Boolean) is
6951 begin
6952 pragma Assert (Nkind (N) in N_Entity);
6953 To_Flag_Word4_Ptr
6954 (Union_Id_Ptr'
6955 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag198 := Val;
6956 end Set_Flag198;
6957
6958 procedure Set_Flag199 (N : Node_Id; Val : Boolean) is
6959 begin
6960 pragma Assert (Nkind (N) in N_Entity);
6961 To_Flag_Word4_Ptr
6962 (Union_Id_Ptr'
6963 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag199 := Val;
6964 end Set_Flag199;
6965
6966 procedure Set_Flag200 (N : Node_Id; Val : Boolean) is
6967 begin
6968 pragma Assert (Nkind (N) in N_Entity);
6969 To_Flag_Word4_Ptr
6970 (Union_Id_Ptr'
6971 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag200 := Val;
6972 end Set_Flag200;
6973
6974 procedure Set_Flag201 (N : Node_Id; Val : Boolean) is
6975 begin
6976 pragma Assert (Nkind (N) in N_Entity);
6977 To_Flag_Word4_Ptr
6978 (Union_Id_Ptr'
6979 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag201 := Val;
6980 end Set_Flag201;
6981
6982 procedure Set_Flag202 (N : Node_Id; Val : Boolean) is
6983 begin
6984 pragma Assert (Nkind (N) in N_Entity);
6985 To_Flag_Word4_Ptr
6986 (Union_Id_Ptr'
6987 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag202 := Val;
6988 end Set_Flag202;
6989
6990 procedure Set_Flag203 (N : Node_Id; Val : Boolean) is
6991 begin
6992 pragma Assert (Nkind (N) in N_Entity);
6993 To_Flag_Word4_Ptr
6994 (Union_Id_Ptr'
6995 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag203 := Val;
6996 end Set_Flag203;
6997
6998 procedure Set_Flag204 (N : Node_Id; Val : Boolean) is
6999 begin
7000 pragma Assert (Nkind (N) in N_Entity);
7001 To_Flag_Word4_Ptr
7002 (Union_Id_Ptr'
7003 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag204 := Val;
7004 end Set_Flag204;
7005
7006 procedure Set_Flag205 (N : Node_Id; Val : Boolean) is
7007 begin
7008 pragma Assert (Nkind (N) in N_Entity);
7009 To_Flag_Word4_Ptr
7010 (Union_Id_Ptr'
7011 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag205 := Val;
7012 end Set_Flag205;
7013
7014 procedure Set_Flag206 (N : Node_Id; Val : Boolean) is
7015 begin
7016 pragma Assert (Nkind (N) in N_Entity);
7017 To_Flag_Word4_Ptr
7018 (Union_Id_Ptr'
7019 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag206 := Val;
7020 end Set_Flag206;
7021
7022 procedure Set_Flag207 (N : Node_Id; Val : Boolean) is
7023 begin
7024 pragma Assert (Nkind (N) in N_Entity);
7025 To_Flag_Word4_Ptr
7026 (Union_Id_Ptr'
7027 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag207 := Val;
7028 end Set_Flag207;
7029
7030 procedure Set_Flag208 (N : Node_Id; Val : Boolean) is
7031 begin
7032 pragma Assert (Nkind (N) in N_Entity);
7033 To_Flag_Word4_Ptr
7034 (Union_Id_Ptr'
7035 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag208 := Val;
7036 end Set_Flag208;
7037
7038 procedure Set_Flag209 (N : Node_Id; Val : Boolean) is
7039 begin
7040 pragma Assert (Nkind (N) in N_Entity);
7041 To_Flag_Word4_Ptr
7042 (Union_Id_Ptr'
7043 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag209 := Val;
7044 end Set_Flag209;
7045
7046 procedure Set_Flag210 (N : Node_Id; Val : Boolean) is
7047 begin
7048 pragma Assert (Nkind (N) in N_Entity);
7049 To_Flag_Word4_Ptr
7050 (Union_Id_Ptr'
7051 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag210 := Val;
7052 end Set_Flag210;
7053
7054 procedure Set_Flag211 (N : Node_Id; Val : Boolean) is
7055 begin
7056 pragma Assert (Nkind (N) in N_Entity);
7057 To_Flag_Word4_Ptr
7058 (Union_Id_Ptr'
7059 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag211 := Val;
7060 end Set_Flag211;
7061
7062 procedure Set_Flag212 (N : Node_Id; Val : Boolean) is
7063 begin
7064 pragma Assert (Nkind (N) in N_Entity);
7065 To_Flag_Word4_Ptr
7066 (Union_Id_Ptr'
7067 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag212 := Val;
7068 end Set_Flag212;
7069
7070 procedure Set_Flag213 (N : Node_Id; Val : Boolean) is
7071 begin
7072 pragma Assert (Nkind (N) in N_Entity);
7073 To_Flag_Word4_Ptr
7074 (Union_Id_Ptr'
7075 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag213 := Val;
7076 end Set_Flag213;
7077
7078 procedure Set_Flag214 (N : Node_Id; Val : Boolean) is
7079 begin
7080 pragma Assert (Nkind (N) in N_Entity);
7081 To_Flag_Word4_Ptr
7082 (Union_Id_Ptr'
7083 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag214 := Val;
7084 end Set_Flag214;
7085
7086 procedure Set_Flag215 (N : Node_Id; Val : Boolean) is
7087 begin
7088 pragma Assert (Nkind (N) in N_Entity);
7089 To_Flag_Word4_Ptr
7090 (Union_Id_Ptr'
7091 (Nodes.Table (N + 4).Field12'Unrestricted_Access)).Flag215 := Val;
7092 end Set_Flag215;
7093
7094 procedure Set_Flag216 (N : Node_Id; Val : Boolean) is
7095 begin
7096 pragma Assert (Nkind (N) in N_Entity);
7097 Nodes.Table (N + 4).In_List := Val;
7098 end Set_Flag216;
7099
7100 procedure Set_Flag217 (N : Node_Id; Val : Boolean) is
7101 begin
7102 pragma Assert (Nkind (N) in N_Entity);
7103 Nodes.Table (N + 4).Has_Aspects := Val;
7104 end Set_Flag217;
7105
7106 procedure Set_Flag218 (N : Node_Id; Val : Boolean) is
7107 begin
7108 pragma Assert (Nkind (N) in N_Entity);
7109 Nodes.Table (N + 4).Rewrite_Ins := Val;
7110 end Set_Flag218;
7111
7112 procedure Set_Flag219 (N : Node_Id; Val : Boolean) is
7113 begin
7114 pragma Assert (Nkind (N) in N_Entity);
7115 Nodes.Table (N + 4).Analyzed := Val;
7116 end Set_Flag219;
7117
7118 procedure Set_Flag220 (N : Node_Id; Val : Boolean) is
7119 begin
7120 pragma Assert (Nkind (N) in N_Entity);
7121 Nodes.Table (N + 4).Comes_From_Source := Val;
7122 end Set_Flag220;
7123
7124 procedure Set_Flag221 (N : Node_Id; Val : Boolean) is
7125 begin
7126 pragma Assert (Nkind (N) in N_Entity);
7127 Nodes.Table (N + 4).Error_Posted := Val;
7128 end Set_Flag221;
7129
7130 procedure Set_Flag222 (N : Node_Id; Val : Boolean) is
7131 begin
7132 pragma Assert (Nkind (N) in N_Entity);
7133 Nodes.Table (N + 4).Flag4 := Val;
7134 end Set_Flag222;
7135
7136 procedure Set_Flag223 (N : Node_Id; Val : Boolean) is
7137 begin
7138 pragma Assert (Nkind (N) in N_Entity);
7139 Nodes.Table (N + 4).Flag5 := Val;
7140 end Set_Flag223;
7141
7142 procedure Set_Flag224 (N : Node_Id; Val : Boolean) is
7143 begin
7144 pragma Assert (Nkind (N) in N_Entity);
7145 Nodes.Table (N + 4).Flag6 := Val;
7146 end Set_Flag224;
7147
7148 procedure Set_Flag225 (N : Node_Id; Val : Boolean) is
7149 begin
7150 pragma Assert (Nkind (N) in N_Entity);
7151 Nodes.Table (N + 4).Flag7 := Val;
7152 end Set_Flag225;
7153
7154 procedure Set_Flag226 (N : Node_Id; Val : Boolean) is
7155 begin
7156 pragma Assert (Nkind (N) in N_Entity);
7157 Nodes.Table (N + 4).Flag8 := Val;
7158 end Set_Flag226;
7159
7160 procedure Set_Flag227 (N : Node_Id; Val : Boolean) is
7161 begin
7162 pragma Assert (Nkind (N) in N_Entity);
7163 Nodes.Table (N + 4).Flag9 := Val;
7164 end Set_Flag227;
7165
7166 procedure Set_Flag228 (N : Node_Id; Val : Boolean) is
7167 begin
7168 pragma Assert (Nkind (N) in N_Entity);
7169 Nodes.Table (N + 4).Flag10 := Val;
7170 end Set_Flag228;
7171
7172 procedure Set_Flag229 (N : Node_Id; Val : Boolean) is
7173 begin
7174 pragma Assert (Nkind (N) in N_Entity);
7175 Nodes.Table (N + 4).Flag11 := Val;
7176 end Set_Flag229;
7177
7178 procedure Set_Flag230 (N : Node_Id; Val : Boolean) is
7179 begin
7180 pragma Assert (Nkind (N) in N_Entity);
7181 Nodes.Table (N + 4).Flag12 := Val;
7182 end Set_Flag230;
7183
7184 procedure Set_Flag231 (N : Node_Id; Val : Boolean) is
7185 begin
7186 pragma Assert (Nkind (N) in N_Entity);
7187 Nodes.Table (N + 4).Flag13 := Val;
7188 end Set_Flag231;
7189
7190 procedure Set_Flag232 (N : Node_Id; Val : Boolean) is
7191 begin
7192 pragma Assert (Nkind (N) in N_Entity);
7193 Nodes.Table (N + 4).Flag14 := Val;
7194 end Set_Flag232;
7195
7196 procedure Set_Flag233 (N : Node_Id; Val : Boolean) is
7197 begin
7198 pragma Assert (Nkind (N) in N_Entity);
7199 Nodes.Table (N + 4).Flag15 := Val;
7200 end Set_Flag233;
7201
7202 procedure Set_Flag234 (N : Node_Id; Val : Boolean) is
7203 begin
7204 pragma Assert (Nkind (N) in N_Entity);
7205 Nodes.Table (N + 4).Flag16 := Val;
7206 end Set_Flag234;
7207
7208 procedure Set_Flag235 (N : Node_Id; Val : Boolean) is
7209 begin
7210 pragma Assert (Nkind (N) in N_Entity);
7211 Nodes.Table (N + 4).Flag17 := Val;
7212 end Set_Flag235;
7213
7214 procedure Set_Flag236 (N : Node_Id; Val : Boolean) is
7215 begin
7216 pragma Assert (Nkind (N) in N_Entity);
7217 Nodes.Table (N + 4).Flag18 := Val;
7218 end Set_Flag236;
7219
7220 procedure Set_Flag237 (N : Node_Id; Val : Boolean) is
7221 begin
7222 pragma Assert (Nkind (N) in N_Entity);
7223 Nodes.Table (N + 4).Pflag1 := Val;
7224 end Set_Flag237;
7225
7226 procedure Set_Flag238 (N : Node_Id; Val : Boolean) is
7227 begin
7228 pragma Assert (Nkind (N) in N_Entity);
7229 Nodes.Table (N + 4).Pflag2 := Val;
7230 end Set_Flag238;
7231
7232 procedure Set_Flag239 (N : Node_Id; Val : Boolean) is
7233 begin
7234 pragma Assert (Nkind (N) in N_Entity);
7235 To_Flag_Byte2_Ptr
7236 (Node_Kind_Ptr'
7237 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag239 := Val;
7238 end Set_Flag239;
7239
7240 procedure Set_Flag240 (N : Node_Id; Val : Boolean) is
7241 begin
7242 pragma Assert (Nkind (N) in N_Entity);
7243 To_Flag_Byte2_Ptr
7244 (Node_Kind_Ptr'
7245 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag240 := Val;
7246 end Set_Flag240;
7247
7248 procedure Set_Flag241 (N : Node_Id; Val : Boolean) is
7249 begin
7250 pragma Assert (Nkind (N) in N_Entity);
7251 To_Flag_Byte2_Ptr
7252 (Node_Kind_Ptr'
7253 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag241 := Val;
7254 end Set_Flag241;
7255
7256 procedure Set_Flag242 (N : Node_Id; Val : Boolean) is
7257 begin
7258 pragma Assert (Nkind (N) in N_Entity);
7259 To_Flag_Byte2_Ptr
7260 (Node_Kind_Ptr'
7261 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag242 := Val;
7262 end Set_Flag242;
7263
7264 procedure Set_Flag243 (N : Node_Id; Val : Boolean) is
7265 begin
7266 pragma Assert (Nkind (N) in N_Entity);
7267 To_Flag_Byte2_Ptr
7268 (Node_Kind_Ptr'
7269 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag243 := Val;
7270 end Set_Flag243;
7271
7272 procedure Set_Flag244 (N : Node_Id; Val : Boolean) is
7273 begin
7274 pragma Assert (Nkind (N) in N_Entity);
7275 To_Flag_Byte2_Ptr
7276 (Node_Kind_Ptr'
7277 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag244 := Val;
7278 end Set_Flag244;
7279
7280 procedure Set_Flag245 (N : Node_Id; Val : Boolean) is
7281 begin
7282 pragma Assert (Nkind (N) in N_Entity);
7283 To_Flag_Byte2_Ptr
7284 (Node_Kind_Ptr'
7285 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag245 := Val;
7286 end Set_Flag245;
7287
7288 procedure Set_Flag246 (N : Node_Id; Val : Boolean) is
7289 begin
7290 pragma Assert (Nkind (N) in N_Entity);
7291 To_Flag_Byte2_Ptr
7292 (Node_Kind_Ptr'
7293 (Nodes.Table (N + 3).Nkind'Unrestricted_Access)).Flag246 := Val;
7294 end Set_Flag246;
7295
7296 procedure Set_Flag247 (N : Node_Id; Val : Boolean) is
7297 begin
7298 pragma Assert (Nkind (N) in N_Entity);
7299 To_Flag_Byte3_Ptr
7300 (Node_Kind_Ptr'
7301 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag247 := Val;
7302 end Set_Flag247;
7303
7304 procedure Set_Flag248 (N : Node_Id; Val : Boolean) is
7305 begin
7306 pragma Assert (Nkind (N) in N_Entity);
7307 To_Flag_Byte3_Ptr
7308 (Node_Kind_Ptr'
7309 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag248 := Val;
7310 end Set_Flag248;
7311
7312 procedure Set_Flag249 (N : Node_Id; Val : Boolean) is
7313 begin
7314 pragma Assert (Nkind (N) in N_Entity);
7315 To_Flag_Byte3_Ptr
7316 (Node_Kind_Ptr'
7317 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag249 := Val;
7318 end Set_Flag249;
7319
7320 procedure Set_Flag250 (N : Node_Id; Val : Boolean) is
7321 begin
7322 pragma Assert (Nkind (N) in N_Entity);
7323 To_Flag_Byte3_Ptr
7324 (Node_Kind_Ptr'
7325 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag250 := Val;
7326 end Set_Flag250;
7327
7328 procedure Set_Flag251 (N : Node_Id; Val : Boolean) is
7329 begin
7330 pragma Assert (Nkind (N) in N_Entity);
7331 To_Flag_Byte3_Ptr
7332 (Node_Kind_Ptr'
7333 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag251 := Val;
7334 end Set_Flag251;
7335
7336 procedure Set_Flag252 (N : Node_Id; Val : Boolean) is
7337 begin
7338 pragma Assert (Nkind (N) in N_Entity);
7339 To_Flag_Byte3_Ptr
7340 (Node_Kind_Ptr'
7341 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag252 := Val;
7342 end Set_Flag252;
7343
7344 procedure Set_Flag253 (N : Node_Id; Val : Boolean) is
7345 begin
7346 pragma Assert (Nkind (N) in N_Entity);
7347 To_Flag_Byte3_Ptr
7348 (Node_Kind_Ptr'
7349 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag253 := Val;
7350 end Set_Flag253;
7351
7352 procedure Set_Flag254 (N : Node_Id; Val : Boolean) is
7353 begin
7354 pragma Assert (Nkind (N) in N_Entity);
7355 To_Flag_Byte3_Ptr
7356 (Node_Kind_Ptr'
7357 (Nodes.Table (N + 4).Nkind'Unrestricted_Access)).Flag254 := Val;
7358 end Set_Flag254;
7359
7360 procedure Set_Flag255 (N : Node_Id; Val : Boolean) is
7361 begin
7362 pragma Assert (Nkind (N) in N_Entity);
7363 To_Flag_Word5_Ptr
7364 (Union_Id_Ptr'
7365 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag255 := Val;
7366 end Set_Flag255;
7367
7368 procedure Set_Flag256 (N : Node_Id; Val : Boolean) is
7369 begin
7370 pragma Assert (Nkind (N) in N_Entity);
7371 To_Flag_Word5_Ptr
7372 (Union_Id_Ptr'
7373 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag256 := Val;
7374 end Set_Flag256;
7375
7376 procedure Set_Flag257 (N : Node_Id; Val : Boolean) is
7377 begin
7378 pragma Assert (Nkind (N) in N_Entity);
7379 To_Flag_Word5_Ptr
7380 (Union_Id_Ptr'
7381 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag257 := Val;
7382 end Set_Flag257;
7383
7384 procedure Set_Flag258 (N : Node_Id; Val : Boolean) is
7385 begin
7386 pragma Assert (Nkind (N) in N_Entity);
7387 To_Flag_Word5_Ptr
7388 (Union_Id_Ptr'
7389 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag258 := Val;
7390 end Set_Flag258;
7391
7392 procedure Set_Flag259 (N : Node_Id; Val : Boolean) is
7393 begin
7394 pragma Assert (Nkind (N) in N_Entity);
7395 To_Flag_Word5_Ptr
7396 (Union_Id_Ptr'
7397 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag259 := Val;
7398 end Set_Flag259;
7399
7400 procedure Set_Flag260 (N : Node_Id; Val : Boolean) is
7401 begin
7402 pragma Assert (Nkind (N) in N_Entity);
7403 To_Flag_Word5_Ptr
7404 (Union_Id_Ptr'
7405 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag260 := Val;
7406 end Set_Flag260;
7407
7408 procedure Set_Flag261 (N : Node_Id; Val : Boolean) is
7409 begin
7410 pragma Assert (Nkind (N) in N_Entity);
7411 To_Flag_Word5_Ptr
7412 (Union_Id_Ptr'
7413 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag261 := Val;
7414 end Set_Flag261;
7415
7416 procedure Set_Flag262 (N : Node_Id; Val : Boolean) is
7417 begin
7418 pragma Assert (Nkind (N) in N_Entity);
7419 To_Flag_Word5_Ptr
7420 (Union_Id_Ptr'
7421 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag262 := Val;
7422 end Set_Flag262;
7423
7424 procedure Set_Flag263 (N : Node_Id; Val : Boolean) is
7425 begin
7426 pragma Assert (Nkind (N) in N_Entity);
7427 To_Flag_Word5_Ptr
7428 (Union_Id_Ptr'
7429 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag263 := Val;
7430 end Set_Flag263;
7431
7432 procedure Set_Flag264 (N : Node_Id; Val : Boolean) is
7433 begin
7434 pragma Assert (Nkind (N) in N_Entity);
7435 To_Flag_Word5_Ptr
7436 (Union_Id_Ptr'
7437 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag264 := Val;
7438 end Set_Flag264;
7439
7440 procedure Set_Flag265 (N : Node_Id; Val : Boolean) is
7441 begin
7442 pragma Assert (Nkind (N) in N_Entity);
7443 To_Flag_Word5_Ptr
7444 (Union_Id_Ptr'
7445 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag265 := Val;
7446 end Set_Flag265;
7447
7448 procedure Set_Flag266 (N : Node_Id; Val : Boolean) is
7449 begin
7450 pragma Assert (Nkind (N) in N_Entity);
7451 To_Flag_Word5_Ptr
7452 (Union_Id_Ptr'
7453 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag266 := Val;
7454 end Set_Flag266;
7455
7456 procedure Set_Flag267 (N : Node_Id; Val : Boolean) is
7457 begin
7458 pragma Assert (Nkind (N) in N_Entity);
7459 To_Flag_Word5_Ptr
7460 (Union_Id_Ptr'
7461 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag267 := Val;
7462 end Set_Flag267;
7463
7464 procedure Set_Flag268 (N : Node_Id; Val : Boolean) is
7465 begin
7466 pragma Assert (Nkind (N) in N_Entity);
7467 To_Flag_Word5_Ptr
7468 (Union_Id_Ptr'
7469 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag268 := Val;
7470 end Set_Flag268;
7471
7472 procedure Set_Flag269 (N : Node_Id; Val : Boolean) is
7473 begin
7474 pragma Assert (Nkind (N) in N_Entity);
7475 To_Flag_Word5_Ptr
7476 (Union_Id_Ptr'
7477 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag269 := Val;
7478 end Set_Flag269;
7479
7480 procedure Set_Flag270 (N : Node_Id; Val : Boolean) is
7481 begin
7482 pragma Assert (Nkind (N) in N_Entity);
7483 To_Flag_Word5_Ptr
7484 (Union_Id_Ptr'
7485 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag270 := Val;
7486 end Set_Flag270;
7487
7488 procedure Set_Flag271 (N : Node_Id; Val : Boolean) is
7489 begin
7490 pragma Assert (Nkind (N) in N_Entity);
7491 To_Flag_Word5_Ptr
7492 (Union_Id_Ptr'
7493 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag271 := Val;
7494 end Set_Flag271;
7495
7496 procedure Set_Flag272 (N : Node_Id; Val : Boolean) is
7497 begin
7498 pragma Assert (Nkind (N) in N_Entity);
7499 To_Flag_Word5_Ptr
7500 (Union_Id_Ptr'
7501 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag272 := Val;
7502 end Set_Flag272;
7503
7504 procedure Set_Flag273 (N : Node_Id; Val : Boolean) is
7505 begin
7506 pragma Assert (Nkind (N) in N_Entity);
7507 To_Flag_Word5_Ptr
7508 (Union_Id_Ptr'
7509 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag273 := Val;
7510 end Set_Flag273;
7511
7512 procedure Set_Flag274 (N : Node_Id; Val : Boolean) is
7513 begin
7514 pragma Assert (Nkind (N) in N_Entity);
7515 To_Flag_Word5_Ptr
7516 (Union_Id_Ptr'
7517 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag274 := Val;
7518 end Set_Flag274;
7519
7520 procedure Set_Flag275 (N : Node_Id; Val : Boolean) is
7521 begin
7522 pragma Assert (Nkind (N) in N_Entity);
7523 To_Flag_Word5_Ptr
7524 (Union_Id_Ptr'
7525 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag275 := Val;
7526 end Set_Flag275;
7527
7528 procedure Set_Flag276 (N : Node_Id; Val : Boolean) is
7529 begin
7530 pragma Assert (Nkind (N) in N_Entity);
7531 To_Flag_Word5_Ptr
7532 (Union_Id_Ptr'
7533 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag276 := Val;
7534 end Set_Flag276;
7535
7536 procedure Set_Flag277 (N : Node_Id; Val : Boolean) is
7537 begin
7538 pragma Assert (Nkind (N) in N_Entity);
7539 To_Flag_Word5_Ptr
7540 (Union_Id_Ptr'
7541 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag277 := Val;
7542 end Set_Flag277;
7543
7544 procedure Set_Flag278 (N : Node_Id; Val : Boolean) is
7545 begin
7546 pragma Assert (Nkind (N) in N_Entity);
7547 To_Flag_Word5_Ptr
7548 (Union_Id_Ptr'
7549 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag278 := Val;
7550 end Set_Flag278;
7551
7552 procedure Set_Flag279 (N : Node_Id; Val : Boolean) is
7553 begin
7554 pragma Assert (Nkind (N) in N_Entity);
7555 To_Flag_Word5_Ptr
7556 (Union_Id_Ptr'
7557 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag279 := Val;
7558 end Set_Flag279;
7559
7560 procedure Set_Flag280 (N : Node_Id; Val : Boolean) is
7561 begin
7562 pragma Assert (Nkind (N) in N_Entity);
7563 To_Flag_Word5_Ptr
7564 (Union_Id_Ptr'
7565 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag280 := Val;
7566 end Set_Flag280;
7567
7568 procedure Set_Flag281 (N : Node_Id; Val : Boolean) is
7569 begin
7570 pragma Assert (Nkind (N) in N_Entity);
7571 To_Flag_Word5_Ptr
7572 (Union_Id_Ptr'
7573 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag281 := Val;
7574 end Set_Flag281;
7575
7576 procedure Set_Flag282 (N : Node_Id; Val : Boolean) is
7577 begin
7578 pragma Assert (Nkind (N) in N_Entity);
7579 To_Flag_Word5_Ptr
7580 (Union_Id_Ptr'
7581 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag282 := Val;
7582 end Set_Flag282;
7583
7584 procedure Set_Flag283 (N : Node_Id; Val : Boolean) is
7585 begin
7586 pragma Assert (Nkind (N) in N_Entity);
7587 To_Flag_Word5_Ptr
7588 (Union_Id_Ptr'
7589 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag283 := Val;
7590 end Set_Flag283;
7591
7592 procedure Set_Flag284 (N : Node_Id; Val : Boolean) is
7593 begin
7594 pragma Assert (Nkind (N) in N_Entity);
7595 To_Flag_Word5_Ptr
7596 (Union_Id_Ptr'
7597 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag284 := Val;
7598 end Set_Flag284;
7599
7600 procedure Set_Flag285 (N : Node_Id; Val : Boolean) is
7601 begin
7602 pragma Assert (Nkind (N) in N_Entity);
7603 To_Flag_Word5_Ptr
7604 (Union_Id_Ptr'
7605 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag285 := Val;
7606 end Set_Flag285;
7607
7608 procedure Set_Flag286 (N : Node_Id; Val : Boolean) is
7609 begin
7610 pragma Assert (Nkind (N) in N_Entity);
7611 To_Flag_Word5_Ptr
7612 (Union_Id_Ptr'
7613 (Nodes.Table (N + 5).Field12'Unrestricted_Access)).Flag286 := Val;
7614 end Set_Flag286;
7615
7616 procedure Set_Flag287 (N : Node_Id; Val : Boolean) is
7617 begin
7618 pragma Assert (Nkind (N) in N_Entity);
7619 Nodes.Table (N + 5).In_List := Val;
7620 end Set_Flag287;
7621
7622 procedure Set_Flag288 (N : Node_Id; Val : Boolean) is
7623 begin
7624 pragma Assert (Nkind (N) in N_Entity);
7625 Nodes.Table (N + 5).Has_Aspects := Val;
7626 end Set_Flag288;
7627
7628 procedure Set_Flag289 (N : Node_Id; Val : Boolean) is
7629 begin
7630 pragma Assert (Nkind (N) in N_Entity);
7631 Nodes.Table (N + 5).Rewrite_Ins := Val;
7632 end Set_Flag289;
7633
7634 procedure Set_Flag290 (N : Node_Id; Val : Boolean) is
7635 begin
7636 pragma Assert (Nkind (N) in N_Entity);
7637 Nodes.Table (N + 5).Analyzed := Val;
7638 end Set_Flag290;
7639
7640 procedure Set_Flag291 (N : Node_Id; Val : Boolean) is
7641 begin
7642 pragma Assert (Nkind (N) in N_Entity);
7643 Nodes.Table (N + 5).Comes_From_Source := Val;
7644 end Set_Flag291;
7645
7646 procedure Set_Flag292 (N : Node_Id; Val : Boolean) is
7647 begin
7648 pragma Assert (Nkind (N) in N_Entity);
7649 Nodes.Table (N + 5).Error_Posted := Val;
7650 end Set_Flag292;
7651
7652 procedure Set_Flag293 (N : Node_Id; Val : Boolean) is
7653 begin
7654 pragma Assert (Nkind (N) in N_Entity);
7655 Nodes.Table (N + 5).Flag4 := Val;
7656 end Set_Flag293;
7657
7658 procedure Set_Flag294 (N : Node_Id; Val : Boolean) is
7659 begin
7660 pragma Assert (Nkind (N) in N_Entity);
7661 Nodes.Table (N + 5).Flag5 := Val;
7662 end Set_Flag294;
7663
7664 procedure Set_Flag295 (N : Node_Id; Val : Boolean) is
7665 begin
7666 pragma Assert (Nkind (N) in N_Entity);
7667 Nodes.Table (N + 5).Flag6 := Val;
7668 end Set_Flag295;
7669
7670 procedure Set_Flag296 (N : Node_Id; Val : Boolean) is
7671 begin
7672 pragma Assert (Nkind (N) in N_Entity);
7673 Nodes.Table (N + 5).Flag7 := Val;
7674 end Set_Flag296;
7675
7676 procedure Set_Flag297 (N : Node_Id; Val : Boolean) is
7677 begin
7678 pragma Assert (Nkind (N) in N_Entity);
7679 Nodes.Table (N + 5).Flag8 := Val;
7680 end Set_Flag297;
7681
7682 procedure Set_Flag298 (N : Node_Id; Val : Boolean) is
7683 begin
7684 pragma Assert (Nkind (N) in N_Entity);
7685 Nodes.Table (N + 5).Flag9 := Val;
7686 end Set_Flag298;
7687
7688 procedure Set_Flag299 (N : Node_Id; Val : Boolean) is
7689 begin
7690 pragma Assert (Nkind (N) in N_Entity);
7691 Nodes.Table (N + 5).Flag10 := Val;
7692 end Set_Flag299;
7693
7694 procedure Set_Flag300 (N : Node_Id; Val : Boolean) is
7695 begin
7696 pragma Assert (Nkind (N) in N_Entity);
7697 Nodes.Table (N + 5).Flag11 := Val;
7698 end Set_Flag300;
7699
7700 procedure Set_Flag301 (N : Node_Id; Val : Boolean) is
7701 begin
7702 pragma Assert (Nkind (N) in N_Entity);
7703 Nodes.Table (N + 5).Flag12 := Val;
7704 end Set_Flag301;
7705
7706 procedure Set_Flag302 (N : Node_Id; Val : Boolean) is
7707 begin
7708 pragma Assert (Nkind (N) in N_Entity);
7709 Nodes.Table (N + 5).Flag13 := Val;
7710 end Set_Flag302;
7711
7712 procedure Set_Flag303 (N : Node_Id; Val : Boolean) is
7713 begin
7714 pragma Assert (Nkind (N) in N_Entity);
7715 Nodes.Table (N + 5).Flag14 := Val;
7716 end Set_Flag303;
7717
7718 procedure Set_Flag304 (N : Node_Id; Val : Boolean) is
7719 begin
7720 pragma Assert (Nkind (N) in N_Entity);
7721 Nodes.Table (N + 5).Flag15 := Val;
7722 end Set_Flag304;
7723
7724 procedure Set_Flag305 (N : Node_Id; Val : Boolean) is
7725 begin
7726 pragma Assert (Nkind (N) in N_Entity);
7727 Nodes.Table (N + 5).Flag16 := Val;
7728 end Set_Flag305;
7729
7730 procedure Set_Flag306 (N : Node_Id; Val : Boolean) is
7731 begin
7732 pragma Assert (Nkind (N) in N_Entity);
7733 Nodes.Table (N + 5).Flag17 := Val;
7734 end Set_Flag306;
7735
7736 procedure Set_Flag307 (N : Node_Id; Val : Boolean) is
7737 begin
7738 pragma Assert (Nkind (N) in N_Entity);
7739 Nodes.Table (N + 5).Flag18 := Val;
7740 end Set_Flag307;
7741
7742 procedure Set_Flag308 (N : Node_Id; Val : Boolean) is
7743 begin
7744 pragma Assert (Nkind (N) in N_Entity);
7745 Nodes.Table (N + 5).Pflag1 := Val;
7746 end Set_Flag308;
7747
7748 procedure Set_Flag309 (N : Node_Id; Val : Boolean) is
7749 begin
7750 pragma Assert (Nkind (N) in N_Entity);
7751 Nodes.Table (N + 5).Pflag2 := Val;
7752 end Set_Flag309;
7753
7754 procedure Set_Flag310 (N : Node_Id; Val : Boolean) is
7755 begin
7756 pragma Assert (Nkind (N) in N_Entity);
7757 To_Flag_Byte4_Ptr
7758 (Node_Kind_Ptr'
7759 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag310 := Val;
7760 end Set_Flag310;
7761
7762 procedure Set_Flag311 (N : Node_Id; Val : Boolean) is
7763 begin
7764 pragma Assert (Nkind (N) in N_Entity);
7765 To_Flag_Byte4_Ptr
7766 (Node_Kind_Ptr'
7767 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag311 := Val;
7768 end Set_Flag311;
7769
7770 procedure Set_Flag312 (N : Node_Id; Val : Boolean) is
7771 begin
7772 pragma Assert (Nkind (N) in N_Entity);
7773 To_Flag_Byte4_Ptr
7774 (Node_Kind_Ptr'
7775 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag312 := Val;
7776 end Set_Flag312;
7777
7778 procedure Set_Flag313 (N : Node_Id; Val : Boolean) is
7779 begin
7780 pragma Assert (Nkind (N) in N_Entity);
7781 To_Flag_Byte4_Ptr
7782 (Node_Kind_Ptr'
7783 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag313 := Val;
7784 end Set_Flag313;
7785
7786 procedure Set_Flag314 (N : Node_Id; Val : Boolean) is
7787 begin
7788 pragma Assert (Nkind (N) in N_Entity);
7789 To_Flag_Byte4_Ptr
7790 (Node_Kind_Ptr'
7791 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag314 := Val;
7792 end Set_Flag314;
7793
7794 procedure Set_Flag315 (N : Node_Id; Val : Boolean) is
7795 begin
7796 pragma Assert (Nkind (N) in N_Entity);
7797 To_Flag_Byte4_Ptr
7798 (Node_Kind_Ptr'
7799 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag315 := Val;
7800 end Set_Flag315;
7801
7802 procedure Set_Flag316 (N : Node_Id; Val : Boolean) is
7803 begin
7804 pragma Assert (Nkind (N) in N_Entity);
7805 To_Flag_Byte4_Ptr
7806 (Node_Kind_Ptr'
7807 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag316 := Val;
7808 end Set_Flag316;
7809
7810 procedure Set_Flag317 (N : Node_Id; Val : Boolean) is
7811 begin
7812 pragma Assert (Nkind (N) in N_Entity);
7813 To_Flag_Byte4_Ptr
7814 (Node_Kind_Ptr'
7815 (Nodes.Table (N + 5).Nkind'Unrestricted_Access)).Flag317 := Val;
7816 end Set_Flag317;
7817
7818 procedure Set_Node1_With_Parent (N : Node_Id; Val : Node_Id) is
7819 begin
7820 pragma Assert (N <= Nodes.Last);
7821
7822 if Val > Error then
7823 Set_Parent (N => Val, Val => N);
7824 end if;
7825
7826 Set_Node1 (N, Val);
7827 end Set_Node1_With_Parent;
7828
7829 procedure Set_Node2_With_Parent (N : Node_Id; Val : Node_Id) is
7830 begin
7831 pragma Assert (N <= Nodes.Last);
7832
7833 if Val > Error then
7834 Set_Parent (N => Val, Val => N);
7835 end if;
7836
7837 Set_Node2 (N, Val);
7838 end Set_Node2_With_Parent;
7839
7840 procedure Set_Node3_With_Parent (N : Node_Id; Val : Node_Id) is
7841 begin
7842 pragma Assert (N <= Nodes.Last);
7843
7844 if Val > Error then
7845 Set_Parent (N => Val, Val => N);
7846 end if;
7847
7848 Set_Node3 (N, Val);
7849 end Set_Node3_With_Parent;
7850
7851 procedure Set_Node4_With_Parent (N : Node_Id; Val : Node_Id) is
7852 begin
7853 pragma Assert (N <= Nodes.Last);
7854
7855 if Val > Error then
7856 Set_Parent (N => Val, Val => N);
7857 end if;
7858
7859 Set_Node4 (N, Val);
7860 end Set_Node4_With_Parent;
7861
7862 procedure Set_Node5_With_Parent (N : Node_Id; Val : Node_Id) is
7863 begin
7864 pragma Assert (N <= Nodes.Last);
7865
7866 if Val > Error then
7867 Set_Parent (N => Val, Val => N);
7868 end if;
7869
7870 Set_Node5 (N, Val);
7871 end Set_Node5_With_Parent;
7872
7873 procedure Set_List1_With_Parent (N : Node_Id; Val : List_Id) is
7874 begin
7875 pragma Assert (N <= Nodes.Last);
7876 if Val /= No_List and then Val /= Error_List then
7877 Set_Parent (Val, N);
7878 end if;
7879 Set_List1 (N, Val);
7880 end Set_List1_With_Parent;
7881
7882 procedure Set_List2_With_Parent (N : Node_Id; Val : List_Id) is
7883 begin
7884 pragma Assert (N <= Nodes.Last);
7885 if Val /= No_List and then Val /= Error_List then
7886 Set_Parent (Val, N);
7887 end if;
7888 Set_List2 (N, Val);
7889 end Set_List2_With_Parent;
7890
7891 procedure Set_List3_With_Parent (N : Node_Id; Val : List_Id) is
7892 begin
7893 pragma Assert (N <= Nodes.Last);
7894 if Val /= No_List and then Val /= Error_List then
7895 Set_Parent (Val, N);
7896 end if;
7897 Set_List3 (N, Val);
7898 end Set_List3_With_Parent;
7899
7900 procedure Set_List4_With_Parent (N : Node_Id; Val : List_Id) is
7901 begin
7902 pragma Assert (N <= Nodes.Last);
7903 if Val /= No_List and then Val /= Error_List then
7904 Set_Parent (Val, N);
7905 end if;
7906 Set_List4 (N, Val);
7907 end Set_List4_With_Parent;
7908
7909 procedure Set_List5_With_Parent (N : Node_Id; Val : List_Id) is
7910 begin
7911 pragma Assert (N <= Nodes.Last);
7912 if Val /= No_List and then Val /= Error_List then
7913 Set_Parent (Val, N);
7914 end if;
7915 Set_List5 (N, Val);
7916 end Set_List5_With_Parent;
7917
7918 end Unchecked_Access;
7919
7920 ------------
7921 -- Unlock --
7922 ------------
7923
7924 procedure Unlock is
7925 begin
7926 Nodes.Locked := False;
7927 Orig_Nodes.Locked := False;
7928 end Unlock;
7929
7930 end Atree;