1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2004, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 2, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNAT; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
20 -- MA 02111-1307, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNAT was originally developed by the GNAT team at New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc. --
32 ------------------------------------------------------------------------------
34 pragma Style_Checks (All_Checks);
35 -- No subprogram ordering check, due to logical grouping
37 with Atree; use Atree;
41 use Atree.Unchecked_Access;
42 -- This package is one of the few packages which is allowed to make direct
43 -- references to tree nodes (since it is in the business of providing a
44 -- higher level of tree access which other clients are expected to use and
45 -- which implements checks).
47 use Atree_Private_Part;
48 -- The only reason that we ask for direct access to the private part of
49 -- the tree package is so that we can directly reference the Nkind field
50 -- of nodes table entries. We do this since it helps the efficiency of
51 -- the Sinfo debugging checks considerably (note that when we are checking
52 -- Nkind values, we don't need to check for a valid node reference, because
53 -- we will check that anyway when we reference the field).
55 NT : Nodes.Table_Ptr renames Nodes.Table;
56 -- A short hand abbreviation, useful for the debugging checks
58 ----------------------------
59 -- Field Access Functions --
60 ----------------------------
62 function ABE_Is_Certain
63 (N : Node_Id) return Boolean is
66 or else NT (N).Nkind = N_Formal_Package_Declaration
67 or else NT (N).Nkind = N_Function_Call
68 or else NT (N).Nkind = N_Function_Instantiation
69 or else NT (N).Nkind = N_Package_Instantiation
70 or else NT (N).Nkind = N_Procedure_Call_Statement
71 or else NT (N).Nkind = N_Procedure_Instantiation);
75 function Abort_Present
76 (N : Node_Id) return Boolean is
79 or else NT (N).Nkind = N_Requeue_Statement);
83 function Abortable_Part
84 (N : Node_Id) return Node_Id is
87 or else NT (N).Nkind = N_Asynchronous_Select);
91 function Abstract_Present
92 (N : Node_Id) return Boolean is
95 or else NT (N).Nkind = N_Derived_Type_Definition
96 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
97 or else NT (N).Nkind = N_Formal_Private_Type_Definition
98 or else NT (N).Nkind = N_Private_Extension_Declaration
99 or else NT (N).Nkind = N_Private_Type_Declaration
100 or else NT (N).Nkind = N_Record_Definition);
102 end Abstract_Present;
104 function Accept_Handler_Records
105 (N : Node_Id) return List_Id is
108 or else NT (N).Nkind = N_Accept_Alternative);
110 end Accept_Handler_Records;
112 function Accept_Statement
113 (N : Node_Id) return Node_Id is
116 or else NT (N).Nkind = N_Accept_Alternative);
118 end Accept_Statement;
120 function Access_Definition
121 (N : Node_Id) return Node_Id is
124 or else NT (N).Nkind = N_Component_Definition
125 or else NT (N).Nkind = N_Object_Renaming_Declaration);
127 end Access_Definition;
129 function Access_Types_To_Process
130 (N : Node_Id) return Elist_Id is
133 or else NT (N).Nkind = N_Freeze_Entity);
135 end Access_Types_To_Process;
138 (N : Node_Id) return List_Id is
141 or else NT (N).Nkind = N_And_Then
142 or else NT (N).Nkind = N_Compilation_Unit_Aux
143 or else NT (N).Nkind = N_Freeze_Entity
144 or else NT (N).Nkind = N_Or_Else);
148 function Activation_Chain_Entity
149 (N : Node_Id) return Node_Id is
152 or else NT (N).Nkind = N_Block_Statement
153 or else NT (N).Nkind = N_Entry_Body
154 or else NT (N).Nkind = N_Generic_Package_Declaration
155 or else NT (N).Nkind = N_Package_Declaration
156 or else NT (N).Nkind = N_Subprogram_Body
157 or else NT (N).Nkind = N_Task_Body);
159 end Activation_Chain_Entity;
161 function Acts_As_Spec
162 (N : Node_Id) return Boolean is
165 or else NT (N).Nkind = N_Compilation_Unit
166 or else NT (N).Nkind = N_Subprogram_Body);
170 function Aggregate_Bounds
171 (N : Node_Id) return Node_Id is
174 or else NT (N).Nkind = N_Aggregate);
176 end Aggregate_Bounds;
178 function Aliased_Present
179 (N : Node_Id) return Boolean is
182 or else NT (N).Nkind = N_Component_Definition
183 or else NT (N).Nkind = N_Object_Declaration);
188 (N : Node_Id) return Boolean is
191 or else NT (N).Nkind = N_Others_Choice);
196 (N : Node_Id) return Boolean is
199 or else NT (N).Nkind = N_Access_Definition
200 or else NT (N).Nkind = N_Access_To_Object_Definition);
204 function Alternatives
205 (N : Node_Id) return List_Id is
208 or else NT (N).Nkind = N_Case_Statement);
212 function Ancestor_Part
213 (N : Node_Id) return Node_Id is
216 or else NT (N).Nkind = N_Extension_Aggregate);
220 function Array_Aggregate
221 (N : Node_Id) return Node_Id is
224 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
228 function Assignment_OK
229 (N : Node_Id) return Boolean is
232 or else NT (N).Nkind = N_Object_Declaration
233 or else NT (N).Nkind in N_Subexpr);
237 function Associated_Node
238 (N : Node_Id) return Node_Id is
241 or else NT (N).Nkind in N_Has_Entity
242 or else NT (N).Nkind = N_Aggregate
243 or else NT (N).Nkind = N_Extension_Aggregate
244 or else NT (N).Nkind = N_Selected_Component);
249 (N : Node_Id) return Node_Id is
252 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
256 function Attribute_Name
257 (N : Node_Id) return Name_Id is
260 or else NT (N).Nkind = N_Attribute_Reference);
264 function Aux_Decls_Node
265 (N : Node_Id) return Node_Id is
268 or else NT (N).Nkind = N_Compilation_Unit);
272 function Backwards_OK
273 (N : Node_Id) return Boolean is
276 or else NT (N).Nkind = N_Assignment_Statement);
280 function Bad_Is_Detected
281 (N : Node_Id) return Boolean is
284 or else NT (N).Nkind = N_Subprogram_Body);
288 function Body_Required
289 (N : Node_Id) return Boolean is
292 or else NT (N).Nkind = N_Compilation_Unit);
296 function Body_To_Inline
297 (N : Node_Id) return Node_Id is
300 or else NT (N).Nkind = N_Subprogram_Declaration);
305 (N : Node_Id) return Boolean is
308 or else NT (N).Nkind = N_Component_Association
309 or else NT (N).Nkind = N_Formal_Package_Declaration
310 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
315 (N : Node_Id) return Boolean is
318 or else NT (N).Nkind = N_Return_Statement);
322 function Char_Literal_Value
323 (N : Node_Id) return Char_Code is
326 or else NT (N).Nkind = N_Character_Literal);
327 return Char_Code2 (N);
328 end Char_Literal_Value;
331 (N : Node_Id) return Name_Id is
334 or else NT (N).Nkind in N_Has_Chars);
338 function Check_Address_Alignment
339 (N : Node_Id) return Boolean is
342 or else NT (N).Nkind = N_Attribute_Definition_Clause);
344 end Check_Address_Alignment;
346 function Choice_Parameter
347 (N : Node_Id) return Node_Id is
350 or else NT (N).Nkind = N_Exception_Handler);
352 end Choice_Parameter;
355 (N : Node_Id) return List_Id is
358 or else NT (N).Nkind = N_Component_Association);
362 function Compile_Time_Known_Aggregate
363 (N : Node_Id) return Boolean is
366 or else NT (N).Nkind = N_Aggregate);
368 end Compile_Time_Known_Aggregate;
370 function Component_Associations
371 (N : Node_Id) return List_Id is
374 or else NT (N).Nkind = N_Aggregate
375 or else NT (N).Nkind = N_Extension_Aggregate);
377 end Component_Associations;
379 function Component_Clauses
380 (N : Node_Id) return List_Id is
383 or else NT (N).Nkind = N_Record_Representation_Clause);
385 end Component_Clauses;
387 function Component_Definition
388 (N : Node_Id) return Node_Id is
391 or else NT (N).Nkind = N_Component_Declaration
392 or else NT (N).Nkind = N_Constrained_Array_Definition
393 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
395 end Component_Definition;
397 function Component_Items
398 (N : Node_Id) return List_Id is
401 or else NT (N).Nkind = N_Component_List);
405 function Component_List
406 (N : Node_Id) return Node_Id is
409 or else NT (N).Nkind = N_Record_Definition
410 or else NT (N).Nkind = N_Variant);
414 function Component_Name
415 (N : Node_Id) return Node_Id is
418 or else NT (N).Nkind = N_Component_Clause);
423 (N : Node_Id) return Node_Id is
426 or else NT (N).Nkind = N_Accept_Alternative
427 or else NT (N).Nkind = N_Delay_Alternative
428 or else NT (N).Nkind = N_Elsif_Part
429 or else NT (N).Nkind = N_Entry_Body_Formal_Part
430 or else NT (N).Nkind = N_Exit_Statement
431 or else NT (N).Nkind = N_If_Statement
432 or else NT (N).Nkind = N_Iteration_Scheme
433 or else NT (N).Nkind = N_Raise_Constraint_Error
434 or else NT (N).Nkind = N_Raise_Program_Error
435 or else NT (N).Nkind = N_Raise_Storage_Error
436 or else NT (N).Nkind = N_Terminate_Alternative);
440 function Condition_Actions
441 (N : Node_Id) return List_Id is
444 or else NT (N).Nkind = N_Elsif_Part
445 or else NT (N).Nkind = N_Iteration_Scheme);
447 end Condition_Actions;
449 function Config_Pragmas
450 (N : Node_Id) return List_Id is
453 or else NT (N).Nkind = N_Compilation_Unit_Aux);
457 function Constant_Present
458 (N : Node_Id) return Boolean is
461 or else NT (N).Nkind = N_Access_Definition
462 or else NT (N).Nkind = N_Access_To_Object_Definition
463 or else NT (N).Nkind = N_Object_Declaration);
465 end Constant_Present;
468 (N : Node_Id) return Node_Id is
471 or else NT (N).Nkind = N_Subtype_Indication);
476 (N : Node_Id) return List_Id is
479 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
483 function Context_Installed
484 (N : Node_Id) return Boolean is
487 or else NT (N).Nkind = N_With_Clause);
489 end Context_Installed;
491 function Context_Items
492 (N : Node_Id) return List_Id is
495 or else NT (N).Nkind = N_Compilation_Unit);
499 function Controlling_Argument
500 (N : Node_Id) return Node_Id is
503 or else NT (N).Nkind = N_Function_Call
504 or else NT (N).Nkind = N_Procedure_Call_Statement);
506 end Controlling_Argument;
508 function Conversion_OK
509 (N : Node_Id) return Boolean is
512 or else NT (N).Nkind = N_Type_Conversion);
516 function Corresponding_Body
517 (N : Node_Id) return Node_Id is
520 or else NT (N).Nkind = N_Entry_Declaration
521 or else NT (N).Nkind = N_Generic_Package_Declaration
522 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
523 or else NT (N).Nkind = N_Package_Body_Stub
524 or else NT (N).Nkind = N_Package_Declaration
525 or else NT (N).Nkind = N_Protected_Body_Stub
526 or else NT (N).Nkind = N_Protected_Type_Declaration
527 or else NT (N).Nkind = N_Subprogram_Body_Stub
528 or else NT (N).Nkind = N_Subprogram_Declaration
529 or else NT (N).Nkind = N_Task_Body_Stub
530 or else NT (N).Nkind = N_Task_Type_Declaration);
532 end Corresponding_Body;
534 function Corresponding_Generic_Association
535 (N : Node_Id) return Node_Id is
538 or else NT (N).Nkind = N_Object_Declaration
539 or else NT (N).Nkind = N_Object_Renaming_Declaration);
541 end Corresponding_Generic_Association;
543 function Corresponding_Integer_Value
544 (N : Node_Id) return Uint is
547 or else NT (N).Nkind = N_Real_Literal);
549 end Corresponding_Integer_Value;
551 function Corresponding_Spec
552 (N : Node_Id) return Node_Id is
555 or else NT (N).Nkind = N_Package_Body
556 or else NT (N).Nkind = N_Protected_Body
557 or else NT (N).Nkind = N_Subprogram_Body
558 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
559 or else NT (N).Nkind = N_Task_Body
560 or else NT (N).Nkind = N_With_Clause);
562 end Corresponding_Spec;
564 function Corresponding_Stub
565 (N : Node_Id) return Node_Id is
568 or else NT (N).Nkind = N_Subunit);
570 end Corresponding_Stub;
572 function Dcheck_Function
573 (N : Node_Id) return Entity_Id is
576 or else NT (N).Nkind = N_Variant);
580 function Debug_Statement
581 (N : Node_Id) return Node_Id is
584 or else NT (N).Nkind = N_Pragma);
588 function Declarations
589 (N : Node_Id) return List_Id is
592 or else NT (N).Nkind = N_Accept_Statement
593 or else NT (N).Nkind = N_Block_Statement
594 or else NT (N).Nkind = N_Compilation_Unit_Aux
595 or else NT (N).Nkind = N_Entry_Body
596 or else NT (N).Nkind = N_Package_Body
597 or else NT (N).Nkind = N_Protected_Body
598 or else NT (N).Nkind = N_Subprogram_Body
599 or else NT (N).Nkind = N_Task_Body);
603 function Default_Expression
604 (N : Node_Id) return Node_Id is
607 or else NT (N).Nkind = N_Parameter_Specification);
609 end Default_Expression;
611 function Default_Name
612 (N : Node_Id) return Node_Id is
615 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
619 function Defining_Identifier
620 (N : Node_Id) return Entity_Id is
623 or else NT (N).Nkind = N_Component_Declaration
624 or else NT (N).Nkind = N_Defining_Program_Unit_Name
625 or else NT (N).Nkind = N_Discriminant_Specification
626 or else NT (N).Nkind = N_Entry_Body
627 or else NT (N).Nkind = N_Entry_Declaration
628 or else NT (N).Nkind = N_Entry_Index_Specification
629 or else NT (N).Nkind = N_Exception_Declaration
630 or else NT (N).Nkind = N_Exception_Renaming_Declaration
631 or else NT (N).Nkind = N_Formal_Object_Declaration
632 or else NT (N).Nkind = N_Formal_Package_Declaration
633 or else NT (N).Nkind = N_Formal_Type_Declaration
634 or else NT (N).Nkind = N_Full_Type_Declaration
635 or else NT (N).Nkind = N_Implicit_Label_Declaration
636 or else NT (N).Nkind = N_Incomplete_Type_Declaration
637 or else NT (N).Nkind = N_Loop_Parameter_Specification
638 or else NT (N).Nkind = N_Number_Declaration
639 or else NT (N).Nkind = N_Object_Declaration
640 or else NT (N).Nkind = N_Object_Renaming_Declaration
641 or else NT (N).Nkind = N_Package_Body_Stub
642 or else NT (N).Nkind = N_Parameter_Specification
643 or else NT (N).Nkind = N_Private_Extension_Declaration
644 or else NT (N).Nkind = N_Private_Type_Declaration
645 or else NT (N).Nkind = N_Protected_Body
646 or else NT (N).Nkind = N_Protected_Body_Stub
647 or else NT (N).Nkind = N_Protected_Type_Declaration
648 or else NT (N).Nkind = N_Single_Protected_Declaration
649 or else NT (N).Nkind = N_Single_Task_Declaration
650 or else NT (N).Nkind = N_Subtype_Declaration
651 or else NT (N).Nkind = N_Task_Body
652 or else NT (N).Nkind = N_Task_Body_Stub
653 or else NT (N).Nkind = N_Task_Type_Declaration);
655 end Defining_Identifier;
657 function Defining_Unit_Name
658 (N : Node_Id) return Node_Id is
661 or else NT (N).Nkind = N_Function_Instantiation
662 or else NT (N).Nkind = N_Function_Specification
663 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
664 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
665 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
666 or else NT (N).Nkind = N_Package_Body
667 or else NT (N).Nkind = N_Package_Instantiation
668 or else NT (N).Nkind = N_Package_Renaming_Declaration
669 or else NT (N).Nkind = N_Package_Specification
670 or else NT (N).Nkind = N_Procedure_Instantiation
671 or else NT (N).Nkind = N_Procedure_Specification);
673 end Defining_Unit_Name;
675 function Delay_Alternative
676 (N : Node_Id) return Node_Id is
679 or else NT (N).Nkind = N_Timed_Entry_Call);
681 end Delay_Alternative;
683 function Delay_Finalize_Attach
684 (N : Node_Id) return Boolean is
687 or else NT (N).Nkind = N_Object_Declaration);
689 end Delay_Finalize_Attach;
691 function Delay_Statement
692 (N : Node_Id) return Node_Id is
695 or else NT (N).Nkind = N_Delay_Alternative);
699 function Delta_Expression
700 (N : Node_Id) return Node_Id is
703 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
704 or else NT (N).Nkind = N_Delta_Constraint
705 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
707 end Delta_Expression;
709 function Digits_Expression
710 (N : Node_Id) return Node_Id is
713 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
714 or else NT (N).Nkind = N_Digits_Constraint
715 or else NT (N).Nkind = N_Floating_Point_Definition);
717 end Digits_Expression;
719 function Discr_Check_Funcs_Built
720 (N : Node_Id) return Boolean is
723 or else NT (N).Nkind = N_Full_Type_Declaration);
725 end Discr_Check_Funcs_Built;
727 function Discrete_Choices
728 (N : Node_Id) return List_Id is
731 or else NT (N).Nkind = N_Case_Statement_Alternative
732 or else NT (N).Nkind = N_Variant);
734 end Discrete_Choices;
736 function Discrete_Range
737 (N : Node_Id) return Node_Id is
740 or else NT (N).Nkind = N_Slice);
744 function Discrete_Subtype_Definition
745 (N : Node_Id) return Node_Id is
748 or else NT (N).Nkind = N_Entry_Declaration
749 or else NT (N).Nkind = N_Entry_Index_Specification
750 or else NT (N).Nkind = N_Loop_Parameter_Specification);
752 end Discrete_Subtype_Definition;
754 function Discrete_Subtype_Definitions
755 (N : Node_Id) return List_Id is
758 or else NT (N).Nkind = N_Constrained_Array_Definition);
760 end Discrete_Subtype_Definitions;
762 function Discriminant_Specifications
763 (N : Node_Id) return List_Id is
766 or else NT (N).Nkind = N_Formal_Type_Declaration
767 or else NT (N).Nkind = N_Full_Type_Declaration
768 or else NT (N).Nkind = N_Incomplete_Type_Declaration
769 or else NT (N).Nkind = N_Private_Extension_Declaration
770 or else NT (N).Nkind = N_Private_Type_Declaration
771 or else NT (N).Nkind = N_Protected_Type_Declaration
772 or else NT (N).Nkind = N_Task_Type_Declaration);
774 end Discriminant_Specifications;
776 function Discriminant_Type
777 (N : Node_Id) return Node_Id is
780 or else NT (N).Nkind = N_Discriminant_Specification);
782 end Discriminant_Type;
784 function Do_Accessibility_Check
785 (N : Node_Id) return Boolean is
788 or else NT (N).Nkind = N_Parameter_Specification);
790 end Do_Accessibility_Check;
792 function Do_Discriminant_Check
793 (N : Node_Id) return Boolean is
796 or else NT (N).Nkind = N_Selected_Component);
798 end Do_Discriminant_Check;
800 function Do_Division_Check
801 (N : Node_Id) return Boolean is
804 or else NT (N).Nkind = N_Op_Divide
805 or else NT (N).Nkind = N_Op_Mod
806 or else NT (N).Nkind = N_Op_Rem);
808 end Do_Division_Check;
810 function Do_Length_Check
811 (N : Node_Id) return Boolean is
814 or else NT (N).Nkind = N_Assignment_Statement
815 or else NT (N).Nkind = N_Op_And
816 or else NT (N).Nkind = N_Op_Or
817 or else NT (N).Nkind = N_Op_Xor
818 or else NT (N).Nkind = N_Type_Conversion);
822 function Do_Overflow_Check
823 (N : Node_Id) return Boolean is
826 or else NT (N).Nkind in N_Op
827 or else NT (N).Nkind = N_Attribute_Reference
828 or else NT (N).Nkind = N_Type_Conversion);
830 end Do_Overflow_Check;
832 function Do_Range_Check
833 (N : Node_Id) return Boolean is
836 or else NT (N).Nkind in N_Subexpr);
840 function Do_Storage_Check
841 (N : Node_Id) return Boolean is
844 or else NT (N).Nkind = N_Allocator
845 or else NT (N).Nkind = N_Subprogram_Body);
847 end Do_Storage_Check;
849 function Do_Tag_Check
850 (N : Node_Id) return Boolean is
853 or else NT (N).Nkind = N_Assignment_Statement
854 or else NT (N).Nkind = N_Function_Call
855 or else NT (N).Nkind = N_Procedure_Call_Statement
856 or else NT (N).Nkind = N_Return_Statement
857 or else NT (N).Nkind = N_Type_Conversion);
861 function Elaborate_All_Present
862 (N : Node_Id) return Boolean is
865 or else NT (N).Nkind = N_With_Clause);
867 end Elaborate_All_Present;
869 function Elaborate_Present
870 (N : Node_Id) return Boolean is
873 or else NT (N).Nkind = N_With_Clause);
875 end Elaborate_Present;
877 function Elaboration_Boolean
878 (N : Node_Id) return Node_Id is
881 or else NT (N).Nkind = N_Function_Specification
882 or else NT (N).Nkind = N_Procedure_Specification);
884 end Elaboration_Boolean;
886 function Else_Actions
887 (N : Node_Id) return List_Id is
890 or else NT (N).Nkind = N_Conditional_Expression);
894 function Else_Statements
895 (N : Node_Id) return List_Id is
898 or else NT (N).Nkind = N_Conditional_Entry_Call
899 or else NT (N).Nkind = N_If_Statement
900 or else NT (N).Nkind = N_Selective_Accept);
905 (N : Node_Id) return List_Id is
908 or else NT (N).Nkind = N_If_Statement);
912 function Enclosing_Variant
913 (N : Node_Id) return Node_Id is
916 or else NT (N).Nkind = N_Variant);
918 end Enclosing_Variant;
921 (N : Node_Id) return Node_Id is
924 or else NT (N).Nkind = N_Enumeration_Type_Definition
925 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
926 or else NT (N).Nkind = N_Loop_Statement
927 or else NT (N).Nkind = N_Package_Specification
928 or else NT (N).Nkind = N_Protected_Body
929 or else NT (N).Nkind = N_Protected_Definition
930 or else NT (N).Nkind = N_Record_Definition
931 or else NT (N).Nkind = N_Task_Definition);
936 (N : Node_Id) return Uint is
939 or else NT (N).Nkind = N_Case_Statement
940 or else NT (N).Nkind = N_If_Statement);
945 (N : Node_Id) return Node_Id is
948 or else NT (N).Nkind in N_Has_Entity
949 or else NT (N).Nkind = N_Freeze_Entity);
953 function Entity_Or_Associated_Node
954 (N : Node_Id) return Node_Id is
957 or else NT (N).Nkind in N_Has_Entity
958 or else NT (N).Nkind = N_Freeze_Entity);
960 end Entity_Or_Associated_Node;
962 function Entry_Body_Formal_Part
963 (N : Node_Id) return Node_Id is
966 or else NT (N).Nkind = N_Entry_Body);
968 end Entry_Body_Formal_Part;
970 function Entry_Call_Alternative
971 (N : Node_Id) return Node_Id is
974 or else NT (N).Nkind = N_Conditional_Entry_Call
975 or else NT (N).Nkind = N_Timed_Entry_Call);
977 end Entry_Call_Alternative;
979 function Entry_Call_Statement
980 (N : Node_Id) return Node_Id is
983 or else NT (N).Nkind = N_Entry_Call_Alternative);
985 end Entry_Call_Statement;
987 function Entry_Direct_Name
988 (N : Node_Id) return Node_Id is
991 or else NT (N).Nkind = N_Accept_Statement);
993 end Entry_Direct_Name;
996 (N : Node_Id) return Node_Id is
999 or else NT (N).Nkind = N_Accept_Statement);
1003 function Entry_Index_Specification
1004 (N : Node_Id) return Node_Id is
1006 pragma Assert (False
1007 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
1009 end Entry_Index_Specification;
1012 (N : Node_Id) return Node_Id is
1014 pragma Assert (False
1015 or else NT (N).Nkind in N_Has_Etype);
1019 function Exception_Choices
1020 (N : Node_Id) return List_Id is
1022 pragma Assert (False
1023 or else NT (N).Nkind = N_Exception_Handler);
1025 end Exception_Choices;
1027 function Exception_Handlers
1028 (N : Node_Id) return List_Id is
1030 pragma Assert (False
1031 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1033 end Exception_Handlers;
1035 function Exception_Junk
1036 (N : Node_Id) return Boolean is
1038 pragma Assert (False
1039 or else NT (N).Nkind = N_Goto_Statement
1040 or else NT (N).Nkind = N_Label
1041 or else NT (N).Nkind = N_Object_Declaration
1042 or else NT (N).Nkind = N_Subtype_Declaration);
1046 function Expansion_Delayed
1047 (N : Node_Id) return Boolean is
1049 pragma Assert (False
1050 or else NT (N).Nkind = N_Aggregate
1051 or else NT (N).Nkind = N_Extension_Aggregate);
1053 end Expansion_Delayed;
1055 function Explicit_Actual_Parameter
1056 (N : Node_Id) return Node_Id is
1058 pragma Assert (False
1059 or else NT (N).Nkind = N_Parameter_Association);
1061 end Explicit_Actual_Parameter;
1063 function Explicit_Generic_Actual_Parameter
1064 (N : Node_Id) return Node_Id is
1066 pragma Assert (False
1067 or else NT (N).Nkind = N_Generic_Association);
1069 end Explicit_Generic_Actual_Parameter;
1072 (N : Node_Id) return Node_Id is
1074 pragma Assert (False
1075 or else NT (N).Nkind = N_Allocator
1076 or else NT (N).Nkind = N_Assignment_Statement
1077 or else NT (N).Nkind = N_At_Clause
1078 or else NT (N).Nkind = N_Attribute_Definition_Clause
1079 or else NT (N).Nkind = N_Case_Statement
1080 or else NT (N).Nkind = N_Code_Statement
1081 or else NT (N).Nkind = N_Component_Association
1082 or else NT (N).Nkind = N_Component_Declaration
1083 or else NT (N).Nkind = N_Delay_Relative_Statement
1084 or else NT (N).Nkind = N_Delay_Until_Statement
1085 or else NT (N).Nkind = N_Discriminant_Association
1086 or else NT (N).Nkind = N_Discriminant_Specification
1087 or else NT (N).Nkind = N_Exception_Declaration
1088 or else NT (N).Nkind = N_Formal_Object_Declaration
1089 or else NT (N).Nkind = N_Free_Statement
1090 or else NT (N).Nkind = N_Mod_Clause
1091 or else NT (N).Nkind = N_Modular_Type_Definition
1092 or else NT (N).Nkind = N_Number_Declaration
1093 or else NT (N).Nkind = N_Object_Declaration
1094 or else NT (N).Nkind = N_Parameter_Specification
1095 or else NT (N).Nkind = N_Pragma_Argument_Association
1096 or else NT (N).Nkind = N_Qualified_Expression
1097 or else NT (N).Nkind = N_Return_Statement
1098 or else NT (N).Nkind = N_Type_Conversion
1099 or else NT (N).Nkind = N_Unchecked_Expression
1100 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1104 function Expressions
1105 (N : Node_Id) return List_Id is
1107 pragma Assert (False
1108 or else NT (N).Nkind = N_Aggregate
1109 or else NT (N).Nkind = N_Attribute_Reference
1110 or else NT (N).Nkind = N_Conditional_Expression
1111 or else NT (N).Nkind = N_Extension_Aggregate
1112 or else NT (N).Nkind = N_Indexed_Component);
1117 (N : Node_Id) return Node_Id is
1119 pragma Assert (False
1120 or else NT (N).Nkind = N_Component_Clause);
1124 function First_Inlined_Subprogram
1125 (N : Node_Id) return Entity_Id is
1127 pragma Assert (False
1128 or else NT (N).Nkind = N_Compilation_Unit);
1130 end First_Inlined_Subprogram;
1133 (N : Node_Id) return Boolean is
1135 pragma Assert (False
1136 or else NT (N).Nkind = N_With_Clause);
1140 function First_Named_Actual
1141 (N : Node_Id) return Node_Id is
1143 pragma Assert (False
1144 or else NT (N).Nkind = N_Entry_Call_Statement
1145 or else NT (N).Nkind = N_Function_Call
1146 or else NT (N).Nkind = N_Procedure_Call_Statement);
1148 end First_Named_Actual;
1150 function First_Real_Statement
1151 (N : Node_Id) return Node_Id is
1153 pragma Assert (False
1154 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1156 end First_Real_Statement;
1158 function First_Subtype_Link
1159 (N : Node_Id) return Entity_Id is
1161 pragma Assert (False
1162 or else NT (N).Nkind = N_Freeze_Entity);
1164 end First_Subtype_Link;
1166 function Float_Truncate
1167 (N : Node_Id) return Boolean is
1169 pragma Assert (False
1170 or else NT (N).Nkind = N_Type_Conversion);
1174 function Formal_Type_Definition
1175 (N : Node_Id) return Node_Id is
1177 pragma Assert (False
1178 or else NT (N).Nkind = N_Formal_Type_Declaration);
1180 end Formal_Type_Definition;
1182 function Forwards_OK
1183 (N : Node_Id) return Boolean is
1185 pragma Assert (False
1186 or else NT (N).Nkind = N_Assignment_Statement);
1190 function From_At_Mod
1191 (N : Node_Id) return Boolean is
1193 pragma Assert (False
1194 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1198 function From_Default
1199 (N : Node_Id) return Boolean is
1201 pragma Assert (False
1202 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1206 function Generic_Associations
1207 (N : Node_Id) return List_Id is
1209 pragma Assert (False
1210 or else NT (N).Nkind = N_Formal_Package_Declaration
1211 or else NT (N).Nkind = N_Function_Instantiation
1212 or else NT (N).Nkind = N_Package_Instantiation
1213 or else NT (N).Nkind = N_Procedure_Instantiation);
1215 end Generic_Associations;
1217 function Generic_Formal_Declarations
1218 (N : Node_Id) return List_Id is
1220 pragma Assert (False
1221 or else NT (N).Nkind = N_Generic_Package_Declaration
1222 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1224 end Generic_Formal_Declarations;
1226 function Generic_Parent
1227 (N : Node_Id) return Node_Id is
1229 pragma Assert (False
1230 or else NT (N).Nkind = N_Function_Specification
1231 or else NT (N).Nkind = N_Package_Specification
1232 or else NT (N).Nkind = N_Procedure_Specification);
1236 function Generic_Parent_Type
1237 (N : Node_Id) return Node_Id is
1239 pragma Assert (False
1240 or else NT (N).Nkind = N_Subtype_Declaration);
1242 end Generic_Parent_Type;
1244 function Handled_Statement_Sequence
1245 (N : Node_Id) return Node_Id is
1247 pragma Assert (False
1248 or else NT (N).Nkind = N_Accept_Statement
1249 or else NT (N).Nkind = N_Block_Statement
1250 or else NT (N).Nkind = N_Entry_Body
1251 or else NT (N).Nkind = N_Package_Body
1252 or else NT (N).Nkind = N_Subprogram_Body
1253 or else NT (N).Nkind = N_Task_Body);
1255 end Handled_Statement_Sequence;
1257 function Handler_List_Entry
1258 (N : Node_Id) return Node_Id is
1260 pragma Assert (False
1261 or else NT (N).Nkind = N_Object_Declaration);
1263 end Handler_List_Entry;
1265 function Has_Created_Identifier
1266 (N : Node_Id) return Boolean is
1268 pragma Assert (False
1269 or else NT (N).Nkind = N_Block_Statement
1270 or else NT (N).Nkind = N_Loop_Statement);
1272 end Has_Created_Identifier;
1274 function Has_Dynamic_Length_Check
1275 (N : Node_Id) return Boolean is
1278 end Has_Dynamic_Length_Check;
1280 function Has_Dynamic_Range_Check
1281 (N : Node_Id) return Boolean is
1284 end Has_Dynamic_Range_Check;
1286 function Has_No_Elaboration_Code
1287 (N : Node_Id) return Boolean is
1289 pragma Assert (False
1290 or else NT (N).Nkind = N_Compilation_Unit);
1292 end Has_No_Elaboration_Code;
1294 function Has_Priority_Pragma
1295 (N : Node_Id) return Boolean is
1297 pragma Assert (False
1298 or else NT (N).Nkind = N_Protected_Definition
1299 or else NT (N).Nkind = N_Subprogram_Body
1300 or else NT (N).Nkind = N_Task_Definition);
1302 end Has_Priority_Pragma;
1304 function Has_Private_View
1305 (N : Node_Id) return Boolean is
1307 pragma Assert (False
1308 or else NT (N).Nkind in N_Op
1309 or else NT (N).Nkind = N_Character_Literal
1310 or else NT (N).Nkind = N_Expanded_Name
1311 or else NT (N).Nkind = N_Identifier
1312 or else NT (N).Nkind = N_Operator_Symbol);
1314 end Has_Private_View;
1316 function Has_Storage_Size_Pragma
1317 (N : Node_Id) return Boolean is
1319 pragma Assert (False
1320 or else NT (N).Nkind = N_Task_Definition);
1322 end Has_Storage_Size_Pragma;
1324 function Has_Task_Info_Pragma
1325 (N : Node_Id) return Boolean is
1327 pragma Assert (False
1328 or else NT (N).Nkind = N_Task_Definition);
1330 end Has_Task_Info_Pragma;
1332 function Has_Task_Name_Pragma
1333 (N : Node_Id) return Boolean is
1335 pragma Assert (False
1336 or else NT (N).Nkind = N_Task_Definition);
1338 end Has_Task_Name_Pragma;
1340 function Has_Wide_Character
1341 (N : Node_Id) return Boolean is
1343 pragma Assert (False
1344 or else NT (N).Nkind = N_String_Literal);
1346 end Has_Wide_Character;
1348 function Hidden_By_Use_Clause
1349 (N : Node_Id) return Elist_Id is
1351 pragma Assert (False
1352 or else NT (N).Nkind = N_Use_Package_Clause
1353 or else NT (N).Nkind = N_Use_Type_Clause);
1355 end Hidden_By_Use_Clause;
1358 (N : Node_Id) return Node_Id is
1360 pragma Assert (False
1361 or else NT (N).Nkind = N_Range
1362 or else NT (N).Nkind = N_Real_Range_Specification
1363 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1368 (N : Node_Id) return Node_Id is
1370 pragma Assert (False
1371 or else NT (N).Nkind = N_At_Clause
1372 or else NT (N).Nkind = N_Block_Statement
1373 or else NT (N).Nkind = N_Designator
1374 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1375 or else NT (N).Nkind = N_Label
1376 or else NT (N).Nkind = N_Loop_Statement
1377 or else NT (N).Nkind = N_Record_Representation_Clause
1378 or else NT (N).Nkind = N_Subprogram_Info);
1382 function Implicit_With
1383 (N : Node_Id) return Boolean is
1385 pragma Assert (False
1386 or else NT (N).Nkind = N_With_Clause);
1391 (N : Node_Id) return Boolean is
1393 pragma Assert (False
1394 or else NT (N).Nkind = N_Formal_Object_Declaration
1395 or else NT (N).Nkind = N_Parameter_Specification);
1399 function Includes_Infinities
1400 (N : Node_Id) return Boolean is
1402 pragma Assert (False
1403 or else NT (N).Nkind = N_Range);
1405 end Includes_Infinities;
1407 function Instance_Spec
1408 (N : Node_Id) return Node_Id is
1410 pragma Assert (False
1411 or else NT (N).Nkind = N_Formal_Package_Declaration
1412 or else NT (N).Nkind = N_Function_Instantiation
1413 or else NT (N).Nkind = N_Package_Instantiation
1414 or else NT (N).Nkind = N_Procedure_Instantiation);
1419 (N : Node_Id) return Uint is
1421 pragma Assert (False
1422 or else NT (N).Nkind = N_Integer_Literal);
1426 function Is_Asynchronous_Call_Block
1427 (N : Node_Id) return Boolean is
1429 pragma Assert (False
1430 or else NT (N).Nkind = N_Block_Statement);
1432 end Is_Asynchronous_Call_Block;
1434 function Is_Component_Left_Opnd
1435 (N : Node_Id) return Boolean is
1437 pragma Assert (False
1438 or else NT (N).Nkind = N_Op_Concat);
1440 end Is_Component_Left_Opnd;
1442 function Is_Component_Right_Opnd
1443 (N : Node_Id) return Boolean is
1445 pragma Assert (False
1446 or else NT (N).Nkind = N_Op_Concat);
1448 end Is_Component_Right_Opnd;
1450 function Is_Controlling_Actual
1451 (N : Node_Id) return Boolean is
1453 pragma Assert (False
1454 or else NT (N).Nkind in N_Subexpr);
1456 end Is_Controlling_Actual;
1458 function Is_In_Discriminant_Check
1459 (N : Node_Id) return Boolean is
1461 pragma Assert (False
1462 or else NT (N).Nkind = N_Selected_Component);
1464 end Is_In_Discriminant_Check;
1466 function Is_Machine_Number
1467 (N : Node_Id) return Boolean is
1469 pragma Assert (False
1470 or else NT (N).Nkind = N_Real_Literal);
1472 end Is_Machine_Number;
1474 function Is_Null_Loop
1475 (N : Node_Id) return Boolean is
1477 pragma Assert (False
1478 or else NT (N).Nkind = N_Loop_Statement);
1482 function Is_Overloaded
1483 (N : Node_Id) return Boolean is
1485 pragma Assert (False
1486 or else NT (N).Nkind in N_Subexpr);
1490 function Is_Power_Of_2_For_Shift
1491 (N : Node_Id) return Boolean is
1493 pragma Assert (False
1494 or else NT (N).Nkind = N_Op_Expon);
1496 end Is_Power_Of_2_For_Shift;
1498 function Is_Protected_Subprogram_Body
1499 (N : Node_Id) return Boolean is
1501 pragma Assert (False
1502 or else NT (N).Nkind = N_Subprogram_Body);
1504 end Is_Protected_Subprogram_Body;
1506 function Is_Static_Expression
1507 (N : Node_Id) return Boolean is
1509 pragma Assert (False
1510 or else NT (N).Nkind in N_Subexpr);
1512 end Is_Static_Expression;
1514 function Is_Subprogram_Descriptor
1515 (N : Node_Id) return Boolean is
1517 pragma Assert (False
1518 or else NT (N).Nkind = N_Object_Declaration);
1520 end Is_Subprogram_Descriptor;
1522 function Is_Task_Allocation_Block
1523 (N : Node_Id) return Boolean is
1525 pragma Assert (False
1526 or else NT (N).Nkind = N_Block_Statement);
1528 end Is_Task_Allocation_Block;
1530 function Is_Task_Master
1531 (N : Node_Id) return Boolean is
1533 pragma Assert (False
1534 or else NT (N).Nkind = N_Block_Statement
1535 or else NT (N).Nkind = N_Subprogram_Body
1536 or else NT (N).Nkind = N_Task_Body);
1540 function Iteration_Scheme
1541 (N : Node_Id) return Node_Id is
1543 pragma Assert (False
1544 or else NT (N).Nkind = N_Loop_Statement);
1546 end Iteration_Scheme;
1549 (N : Node_Id) return Node_Id is
1551 pragma Assert (False
1552 or else NT (N).Nkind = N_Itype_Reference);
1556 function Kill_Range_Check
1557 (N : Node_Id) return Boolean is
1559 pragma Assert (False
1560 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1562 end Kill_Range_Check;
1564 function Label_Construct
1565 (N : Node_Id) return Node_Id is
1567 pragma Assert (False
1568 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1570 end Label_Construct;
1573 (N : Node_Id) return Node_Id is
1575 pragma Assert (False
1576 or else NT (N).Nkind = N_Component_Clause);
1581 (N : Node_Id) return Boolean is
1583 pragma Assert (False
1584 or else NT (N).Nkind = N_With_Clause);
1589 (N : Node_Id) return Node_Id is
1591 pragma Assert (False
1592 or else NT (N).Nkind = N_And_Then
1593 or else NT (N).Nkind = N_In
1594 or else NT (N).Nkind = N_Not_In
1595 or else NT (N).Nkind = N_Or_Else
1596 or else NT (N).Nkind in N_Binary_Op);
1600 function Library_Unit
1601 (N : Node_Id) return Node_Id is
1603 pragma Assert (False
1604 or else NT (N).Nkind = N_Compilation_Unit
1605 or else NT (N).Nkind = N_Package_Body_Stub
1606 or else NT (N).Nkind = N_Protected_Body_Stub
1607 or else NT (N).Nkind = N_Subprogram_Body_Stub
1608 or else NT (N).Nkind = N_Task_Body_Stub
1609 or else NT (N).Nkind = N_With_Clause);
1613 function Limited_View_Installed
1614 (N : Node_Id) return Boolean is
1616 pragma Assert (False
1617 or else NT (N).Nkind = N_Package_Specification
1618 or else NT (N).Nkind = N_With_Clause);
1620 end Limited_View_Installed;
1622 function Limited_Present
1623 (N : Node_Id) return Boolean is
1625 pragma Assert (False
1626 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1627 or else NT (N).Nkind = N_Private_Type_Declaration
1628 or else NT (N).Nkind = N_Record_Definition
1629 or else NT (N).Nkind = N_With_Clause);
1631 end Limited_Present;
1634 (N : Node_Id) return List_Id is
1636 pragma Assert (False
1637 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1641 function Loop_Actions
1642 (N : Node_Id) return List_Id is
1644 pragma Assert (False
1645 or else NT (N).Nkind = N_Component_Association);
1649 function Loop_Parameter_Specification
1650 (N : Node_Id) return Node_Id is
1652 pragma Assert (False
1653 or else NT (N).Nkind = N_Iteration_Scheme);
1655 end Loop_Parameter_Specification;
1658 (N : Node_Id) return Node_Id is
1660 pragma Assert (False
1661 or else NT (N).Nkind = N_Range
1662 or else NT (N).Nkind = N_Real_Range_Specification
1663 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1668 (N : Node_Id) return Node_Id is
1670 pragma Assert (False
1671 or else NT (N).Nkind = N_Record_Representation_Clause);
1676 (N : Node_Id) return Boolean is
1678 pragma Assert (False
1679 or else NT (N).Nkind = N_Component_Declaration
1680 or else NT (N).Nkind = N_Discriminant_Specification
1681 or else NT (N).Nkind = N_Exception_Declaration
1682 or else NT (N).Nkind = N_Formal_Object_Declaration
1683 or else NT (N).Nkind = N_Number_Declaration
1684 or else NT (N).Nkind = N_Object_Declaration
1685 or else NT (N).Nkind = N_Parameter_Specification);
1689 function Must_Be_Byte_Aligned
1690 (N : Node_Id) return Boolean is
1692 pragma Assert (False
1693 or else NT (N).Nkind = N_Attribute_Reference);
1695 end Must_Be_Byte_Aligned;
1697 function Must_Not_Freeze
1698 (N : Node_Id) return Boolean is
1700 pragma Assert (False
1701 or else NT (N).Nkind = N_Subtype_Indication
1702 or else NT (N).Nkind in N_Subexpr);
1704 end Must_Not_Freeze;
1707 (N : Node_Id) return Node_Id is
1709 pragma Assert (False
1710 or else NT (N).Nkind = N_Assignment_Statement
1711 or else NT (N).Nkind = N_Attribute_Definition_Clause
1712 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1713 or else NT (N).Nkind = N_Designator
1714 or else NT (N).Nkind = N_Entry_Call_Statement
1715 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1716 or else NT (N).Nkind = N_Exit_Statement
1717 or else NT (N).Nkind = N_Formal_Package_Declaration
1718 or else NT (N).Nkind = N_Function_Call
1719 or else NT (N).Nkind = N_Function_Instantiation
1720 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1721 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1722 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1723 or else NT (N).Nkind = N_Goto_Statement
1724 or else NT (N).Nkind = N_Object_Renaming_Declaration
1725 or else NT (N).Nkind = N_Package_Instantiation
1726 or else NT (N).Nkind = N_Package_Renaming_Declaration
1727 or else NT (N).Nkind = N_Procedure_Call_Statement
1728 or else NT (N).Nkind = N_Procedure_Instantiation
1729 or else NT (N).Nkind = N_Raise_Statement
1730 or else NT (N).Nkind = N_Requeue_Statement
1731 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1732 or else NT (N).Nkind = N_Subunit
1733 or else NT (N).Nkind = N_Variant_Part
1734 or else NT (N).Nkind = N_With_Clause
1735 or else NT (N).Nkind = N_With_Type_Clause);
1740 (N : Node_Id) return List_Id is
1742 pragma Assert (False
1743 or else NT (N).Nkind = N_Abort_Statement
1744 or else NT (N).Nkind = N_Use_Package_Clause);
1748 function Next_Entity
1749 (N : Node_Id) return Node_Id is
1751 pragma Assert (False
1752 or else NT (N).Nkind = N_Defining_Character_Literal
1753 or else NT (N).Nkind = N_Defining_Identifier
1754 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1758 function Next_Named_Actual
1759 (N : Node_Id) return Node_Id is
1761 pragma Assert (False
1762 or else NT (N).Nkind = N_Parameter_Association);
1764 end Next_Named_Actual;
1766 function Next_Rep_Item
1767 (N : Node_Id) return Node_Id is
1769 pragma Assert (False
1770 or else NT (N).Nkind = N_Attribute_Definition_Clause
1771 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1772 or else NT (N).Nkind = N_Pragma
1773 or else NT (N).Nkind = N_Record_Representation_Clause);
1777 function Next_Use_Clause
1778 (N : Node_Id) return Node_Id is
1780 pragma Assert (False
1781 or else NT (N).Nkind = N_Use_Package_Clause
1782 or else NT (N).Nkind = N_Use_Type_Clause);
1784 end Next_Use_Clause;
1786 function No_Ctrl_Actions
1787 (N : Node_Id) return Boolean is
1789 pragma Assert (False
1790 or else NT (N).Nkind = N_Assignment_Statement);
1792 end No_Ctrl_Actions;
1794 function No_Elaboration_Check
1795 (N : Node_Id) return Boolean is
1797 pragma Assert (False
1798 or else NT (N).Nkind = N_Function_Call
1799 or else NT (N).Nkind = N_Procedure_Call_Statement);
1801 end No_Elaboration_Check;
1803 function No_Entities_Ref_In_Spec
1804 (N : Node_Id) return Boolean is
1806 pragma Assert (False
1807 or else NT (N).Nkind = N_With_Clause);
1809 end No_Entities_Ref_In_Spec;
1811 function No_Initialization
1812 (N : Node_Id) return Boolean is
1814 pragma Assert (False
1815 or else NT (N).Nkind = N_Allocator
1816 or else NT (N).Nkind = N_Object_Declaration);
1818 end No_Initialization;
1820 function No_Truncation
1821 (N : Node_Id) return Boolean is
1823 pragma Assert (False
1824 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1828 function Null_Present
1829 (N : Node_Id) return Boolean is
1831 pragma Assert (False
1832 or else NT (N).Nkind = N_Component_List
1833 or else NT (N).Nkind = N_Record_Definition);
1837 function Null_Exclusion_Present
1838 (N : Node_Id) return Boolean is
1840 pragma Assert (False
1841 or else NT (N).Nkind = N_Access_Definition
1842 or else NT (N).Nkind = N_Access_Function_Definition
1843 or else NT (N).Nkind = N_Access_Procedure_Definition
1844 or else NT (N).Nkind = N_Access_To_Object_Definition
1845 or else NT (N).Nkind = N_Allocator
1846 or else NT (N).Nkind = N_Component_Definition
1847 or else NT (N).Nkind = N_Derived_Type_Definition
1848 or else NT (N).Nkind = N_Discriminant_Specification
1849 or else NT (N).Nkind = N_Object_Declaration
1850 or else NT (N).Nkind = N_Parameter_Specification
1851 or else NT (N).Nkind = N_Subtype_Declaration);
1853 end Null_Exclusion_Present;
1855 function Null_Record_Present
1856 (N : Node_Id) return Boolean is
1858 pragma Assert (False
1859 or else NT (N).Nkind = N_Aggregate
1860 or else NT (N).Nkind = N_Extension_Aggregate);
1862 end Null_Record_Present;
1864 function Object_Definition
1865 (N : Node_Id) return Node_Id is
1867 pragma Assert (False
1868 or else NT (N).Nkind = N_Object_Declaration);
1870 end Object_Definition;
1872 function OK_For_Stream
1873 (N : Node_Id) return Boolean is
1875 pragma Assert (False
1876 or else NT (N).Nkind = N_Attribute_Reference);
1880 function Original_Discriminant
1881 (N : Node_Id) return Node_Id is
1883 pragma Assert (False
1884 or else NT (N).Nkind = N_Identifier);
1886 end Original_Discriminant;
1888 function Original_Entity
1889 (N : Node_Id) return Entity_Id is
1891 pragma Assert (False
1892 or else NT (N).Nkind = N_Integer_Literal
1893 or else NT (N).Nkind = N_Real_Literal);
1895 end Original_Entity;
1897 function Others_Discrete_Choices
1898 (N : Node_Id) return List_Id is
1900 pragma Assert (False
1901 or else NT (N).Nkind = N_Others_Choice);
1903 end Others_Discrete_Choices;
1905 function Out_Present
1906 (N : Node_Id) return Boolean is
1908 pragma Assert (False
1909 or else NT (N).Nkind = N_Formal_Object_Declaration
1910 or else NT (N).Nkind = N_Parameter_Specification);
1914 function Parameter_Associations
1915 (N : Node_Id) return List_Id is
1917 pragma Assert (False
1918 or else NT (N).Nkind = N_Entry_Call_Statement
1919 or else NT (N).Nkind = N_Function_Call
1920 or else NT (N).Nkind = N_Procedure_Call_Statement);
1922 end Parameter_Associations;
1924 function Parameter_List_Truncated
1925 (N : Node_Id) return Boolean is
1927 pragma Assert (False
1928 or else NT (N).Nkind = N_Function_Call
1929 or else NT (N).Nkind = N_Procedure_Call_Statement);
1931 end Parameter_List_Truncated;
1933 function Parameter_Specifications
1934 (N : Node_Id) return List_Id is
1936 pragma Assert (False
1937 or else NT (N).Nkind = N_Accept_Statement
1938 or else NT (N).Nkind = N_Access_Function_Definition
1939 or else NT (N).Nkind = N_Access_Procedure_Definition
1940 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1941 or else NT (N).Nkind = N_Entry_Declaration
1942 or else NT (N).Nkind = N_Function_Specification
1943 or else NT (N).Nkind = N_Procedure_Specification);
1945 end Parameter_Specifications;
1947 function Parameter_Type
1948 (N : Node_Id) return Node_Id is
1950 pragma Assert (False
1951 or else NT (N).Nkind = N_Parameter_Specification);
1955 function Parent_Spec
1956 (N : Node_Id) return Node_Id is
1958 pragma Assert (False
1959 or else NT (N).Nkind = N_Function_Instantiation
1960 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1961 or else NT (N).Nkind = N_Generic_Package_Declaration
1962 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1963 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1964 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1965 or else NT (N).Nkind = N_Package_Declaration
1966 or else NT (N).Nkind = N_Package_Instantiation
1967 or else NT (N).Nkind = N_Package_Renaming_Declaration
1968 or else NT (N).Nkind = N_Procedure_Instantiation
1969 or else NT (N).Nkind = N_Subprogram_Declaration
1970 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1975 (N : Node_Id) return Node_Id is
1977 pragma Assert (False
1978 or else NT (N).Nkind = N_Component_Clause);
1982 function Pragma_Argument_Associations
1983 (N : Node_Id) return List_Id is
1985 pragma Assert (False
1986 or else NT (N).Nkind = N_Pragma);
1988 end Pragma_Argument_Associations;
1990 function Pragmas_After
1991 (N : Node_Id) return List_Id is
1993 pragma Assert (False
1994 or else NT (N).Nkind = N_Compilation_Unit_Aux
1995 or else NT (N).Nkind = N_Terminate_Alternative);
1999 function Pragmas_Before
2000 (N : Node_Id) return List_Id is
2002 pragma Assert (False
2003 or else NT (N).Nkind = N_Accept_Alternative
2004 or else NT (N).Nkind = N_Delay_Alternative
2005 or else NT (N).Nkind = N_Entry_Call_Alternative
2006 or else NT (N).Nkind = N_Mod_Clause
2007 or else NT (N).Nkind = N_Terminate_Alternative
2008 or else NT (N).Nkind = N_Triggering_Alternative);
2013 (N : Node_Id) return Node_Id is
2015 pragma Assert (False
2016 or else NT (N).Nkind = N_Attribute_Reference
2017 or else NT (N).Nkind = N_Expanded_Name
2018 or else NT (N).Nkind = N_Explicit_Dereference
2019 or else NT (N).Nkind = N_Indexed_Component
2020 or else NT (N).Nkind = N_Reference
2021 or else NT (N).Nkind = N_Selected_Component
2022 or else NT (N).Nkind = N_Slice);
2026 function Present_Expr
2027 (N : Node_Id) return Uint is
2029 pragma Assert (False
2030 or else NT (N).Nkind = N_Variant);
2035 (N : Node_Id) return Boolean is
2037 pragma Assert (False
2038 or else NT (N).Nkind = N_Component_Declaration
2039 or else NT (N).Nkind = N_Discriminant_Specification
2040 or else NT (N).Nkind = N_Exception_Declaration
2041 or else NT (N).Nkind = N_Formal_Object_Declaration
2042 or else NT (N).Nkind = N_Number_Declaration
2043 or else NT (N).Nkind = N_Object_Declaration
2044 or else NT (N).Nkind = N_Parameter_Specification);
2048 function Print_In_Hex
2049 (N : Node_Id) return Boolean is
2051 pragma Assert (False
2052 or else NT (N).Nkind = N_Integer_Literal);
2056 function Private_Declarations
2057 (N : Node_Id) return List_Id is
2059 pragma Assert (False
2060 or else NT (N).Nkind = N_Package_Specification
2061 or else NT (N).Nkind = N_Protected_Definition
2062 or else NT (N).Nkind = N_Task_Definition);
2064 end Private_Declarations;
2066 function Private_Present
2067 (N : Node_Id) return Boolean is
2069 pragma Assert (False
2070 or else NT (N).Nkind = N_Compilation_Unit
2071 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2072 or else NT (N).Nkind = N_With_Clause);
2074 end Private_Present;
2076 function Procedure_To_Call
2077 (N : Node_Id) return Node_Id is
2079 pragma Assert (False
2080 or else NT (N).Nkind = N_Allocator
2081 or else NT (N).Nkind = N_Free_Statement
2082 or else NT (N).Nkind = N_Return_Statement);
2084 end Procedure_To_Call;
2086 function Proper_Body
2087 (N : Node_Id) return Node_Id is
2089 pragma Assert (False
2090 or else NT (N).Nkind = N_Subunit);
2094 function Protected_Definition
2095 (N : Node_Id) return Node_Id is
2097 pragma Assert (False
2098 or else NT (N).Nkind = N_Protected_Type_Declaration
2099 or else NT (N).Nkind = N_Single_Protected_Declaration);
2101 end Protected_Definition;
2103 function Protected_Present
2104 (N : Node_Id) return Boolean is
2106 pragma Assert (False
2107 or else NT (N).Nkind = N_Access_Function_Definition
2108 or else NT (N).Nkind = N_Access_Procedure_Definition);
2110 end Protected_Present;
2112 function Raises_Constraint_Error
2113 (N : Node_Id) return Boolean is
2115 pragma Assert (False
2116 or else NT (N).Nkind in N_Subexpr);
2118 end Raises_Constraint_Error;
2120 function Range_Constraint
2121 (N : Node_Id) return Node_Id is
2123 pragma Assert (False
2124 or else NT (N).Nkind = N_Delta_Constraint
2125 or else NT (N).Nkind = N_Digits_Constraint);
2127 end Range_Constraint;
2129 function Range_Expression
2130 (N : Node_Id) return Node_Id is
2132 pragma Assert (False
2133 or else NT (N).Nkind = N_Range_Constraint);
2135 end Range_Expression;
2137 function Real_Range_Specification
2138 (N : Node_Id) return Node_Id is
2140 pragma Assert (False
2141 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2142 or else NT (N).Nkind = N_Floating_Point_Definition
2143 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2145 end Real_Range_Specification;
2148 (N : Node_Id) return Ureal is
2150 pragma Assert (False
2151 or else NT (N).Nkind = N_Real_Literal);
2156 (N : Node_Id) return Uint is
2158 pragma Assert (False
2159 or else NT (N).Nkind = N_Raise_Constraint_Error
2160 or else NT (N).Nkind = N_Raise_Program_Error
2161 or else NT (N).Nkind = N_Raise_Storage_Error);
2165 function Record_Extension_Part
2166 (N : Node_Id) return Node_Id is
2168 pragma Assert (False
2169 or else NT (N).Nkind = N_Derived_Type_Definition);
2171 end Record_Extension_Part;
2173 function Redundant_Use
2174 (N : Node_Id) return Boolean is
2176 pragma Assert (False
2177 or else NT (N).Nkind = N_Attribute_Reference
2178 or else NT (N).Nkind = N_Expanded_Name
2179 or else NT (N).Nkind = N_Identifier);
2183 function Return_Type
2184 (N : Node_Id) return Node_Id is
2186 pragma Assert (False
2187 or else NT (N).Nkind = N_Return_Statement);
2191 function Reverse_Present
2192 (N : Node_Id) return Boolean is
2194 pragma Assert (False
2195 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2197 end Reverse_Present;
2200 (N : Node_Id) return Node_Id is
2202 pragma Assert (False
2203 or else NT (N).Nkind in N_Op
2204 or else NT (N).Nkind = N_And_Then
2205 or else NT (N).Nkind = N_In
2206 or else NT (N).Nkind = N_Not_In
2207 or else NT (N).Nkind = N_Or_Else);
2211 function Rounded_Result
2212 (N : Node_Id) return Boolean is
2214 pragma Assert (False
2215 or else NT (N).Nkind = N_Op_Divide
2216 or else NT (N).Nkind = N_Op_Multiply
2217 or else NT (N).Nkind = N_Type_Conversion);
2222 (N : Node_Id) return Node_Id is
2224 pragma Assert (False
2225 or else NT (N).Nkind = N_Defining_Character_Literal
2226 or else NT (N).Nkind = N_Defining_Identifier
2227 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2231 function Select_Alternatives
2232 (N : Node_Id) return List_Id is
2234 pragma Assert (False
2235 or else NT (N).Nkind = N_Selective_Accept);
2237 end Select_Alternatives;
2239 function Selector_Name
2240 (N : Node_Id) return Node_Id is
2242 pragma Assert (False
2243 or else NT (N).Nkind = N_Expanded_Name
2244 or else NT (N).Nkind = N_Generic_Association
2245 or else NT (N).Nkind = N_Parameter_Association
2246 or else NT (N).Nkind = N_Selected_Component);
2250 function Selector_Names
2251 (N : Node_Id) return List_Id is
2253 pragma Assert (False
2254 or else NT (N).Nkind = N_Discriminant_Association);
2258 function Shift_Count_OK
2259 (N : Node_Id) return Boolean is
2261 pragma Assert (False
2262 or else NT (N).Nkind = N_Op_Rotate_Left
2263 or else NT (N).Nkind = N_Op_Rotate_Right
2264 or else NT (N).Nkind = N_Op_Shift_Left
2265 or else NT (N).Nkind = N_Op_Shift_Right
2266 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2270 function Source_Type
2271 (N : Node_Id) return Entity_Id is
2273 pragma Assert (False
2274 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2278 function Specification
2279 (N : Node_Id) return Node_Id is
2281 pragma Assert (False
2282 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2283 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2284 or else NT (N).Nkind = N_Generic_Package_Declaration
2285 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2286 or else NT (N).Nkind = N_Package_Declaration
2287 or else NT (N).Nkind = N_Subprogram_Body
2288 or else NT (N).Nkind = N_Subprogram_Body_Stub
2289 or else NT (N).Nkind = N_Subprogram_Declaration
2290 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2295 (N : Node_Id) return List_Id is
2297 pragma Assert (False
2298 or else NT (N).Nkind = N_Abortable_Part
2299 or else NT (N).Nkind = N_Accept_Alternative
2300 or else NT (N).Nkind = N_Case_Statement_Alternative
2301 or else NT (N).Nkind = N_Delay_Alternative
2302 or else NT (N).Nkind = N_Entry_Call_Alternative
2303 or else NT (N).Nkind = N_Exception_Handler
2304 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2305 or else NT (N).Nkind = N_Loop_Statement
2306 or else NT (N).Nkind = N_Triggering_Alternative);
2310 function Static_Processing_OK
2311 (N : Node_Id) return Boolean is
2313 pragma Assert (False
2314 or else NT (N).Nkind = N_Aggregate);
2316 end Static_Processing_OK;
2318 function Storage_Pool
2319 (N : Node_Id) return Node_Id is
2321 pragma Assert (False
2322 or else NT (N).Nkind = N_Allocator
2323 or else NT (N).Nkind = N_Free_Statement
2324 or else NT (N).Nkind = N_Return_Statement);
2329 (N : Node_Id) return String_Id is
2331 pragma Assert (False
2332 or else NT (N).Nkind = N_Operator_Symbol
2333 or else NT (N).Nkind = N_String_Literal);
2337 function Subtype_Indication
2338 (N : Node_Id) return Node_Id is
2340 pragma Assert (False
2341 or else NT (N).Nkind = N_Access_To_Object_Definition
2342 or else NT (N).Nkind = N_Component_Definition
2343 or else NT (N).Nkind = N_Derived_Type_Definition
2344 or else NT (N).Nkind = N_Private_Extension_Declaration
2345 or else NT (N).Nkind = N_Subtype_Declaration);
2347 end Subtype_Indication;
2349 function Subtype_Mark
2350 (N : Node_Id) return Node_Id is
2352 pragma Assert (False
2353 or else NT (N).Nkind = N_Access_Definition
2354 or else NT (N).Nkind = N_Access_Function_Definition
2355 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2356 or else NT (N).Nkind = N_Formal_Object_Declaration
2357 or else NT (N).Nkind = N_Function_Specification
2358 or else NT (N).Nkind = N_Object_Renaming_Declaration
2359 or else NT (N).Nkind = N_Qualified_Expression
2360 or else NT (N).Nkind = N_Subtype_Indication
2361 or else NT (N).Nkind = N_Type_Conversion
2362 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2366 function Subtype_Marks
2367 (N : Node_Id) return List_Id is
2369 pragma Assert (False
2370 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2371 or else NT (N).Nkind = N_Use_Type_Clause);
2375 function Tagged_Present
2376 (N : Node_Id) return Boolean is
2378 pragma Assert (False
2379 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2380 or else NT (N).Nkind = N_Private_Type_Declaration
2381 or else NT (N).Nkind = N_Record_Definition
2382 or else NT (N).Nkind = N_With_Type_Clause);
2386 function Target_Type
2387 (N : Node_Id) return Entity_Id is
2389 pragma Assert (False
2390 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2394 function Task_Body_Procedure
2395 (N : Node_Id) return Entity_Id is
2397 pragma Assert (False
2398 or else NT (N).Nkind = N_Task_Type_Declaration);
2400 end Task_Body_Procedure;
2402 function Task_Definition
2403 (N : Node_Id) return Node_Id is
2405 pragma Assert (False
2406 or else NT (N).Nkind = N_Single_Task_Declaration
2407 or else NT (N).Nkind = N_Task_Type_Declaration);
2409 end Task_Definition;
2411 function Then_Actions
2412 (N : Node_Id) return List_Id is
2414 pragma Assert (False
2415 or else NT (N).Nkind = N_Conditional_Expression);
2419 function Then_Statements
2420 (N : Node_Id) return List_Id is
2422 pragma Assert (False
2423 or else NT (N).Nkind = N_Elsif_Part
2424 or else NT (N).Nkind = N_If_Statement);
2426 end Then_Statements;
2428 function Treat_Fixed_As_Integer
2429 (N : Node_Id) return Boolean is
2431 pragma Assert (False
2432 or else NT (N).Nkind = N_Op_Divide
2433 or else NT (N).Nkind = N_Op_Mod
2434 or else NT (N).Nkind = N_Op_Multiply
2435 or else NT (N).Nkind = N_Op_Rem);
2437 end Treat_Fixed_As_Integer;
2439 function Triggering_Alternative
2440 (N : Node_Id) return Node_Id is
2442 pragma Assert (False
2443 or else NT (N).Nkind = N_Asynchronous_Select);
2445 end Triggering_Alternative;
2447 function Triggering_Statement
2448 (N : Node_Id) return Node_Id is
2450 pragma Assert (False
2451 or else NT (N).Nkind = N_Triggering_Alternative);
2453 end Triggering_Statement;
2456 (N : Node_Id) return Elist_Id is
2458 pragma Assert (False
2459 or else NT (N).Nkind = N_Freeze_Entity);
2463 function Type_Definition
2464 (N : Node_Id) return Node_Id is
2466 pragma Assert (False
2467 or else NT (N).Nkind = N_Full_Type_Declaration);
2469 end Type_Definition;
2472 (N : Node_Id) return Node_Id is
2474 pragma Assert (False
2475 or else NT (N).Nkind = N_Compilation_Unit);
2479 function Unknown_Discriminants_Present
2480 (N : Node_Id) return Boolean is
2482 pragma Assert (False
2483 or else NT (N).Nkind = N_Formal_Type_Declaration
2484 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2485 or else NT (N).Nkind = N_Private_Extension_Declaration
2486 or else NT (N).Nkind = N_Private_Type_Declaration);
2488 end Unknown_Discriminants_Present;
2490 function Unreferenced_In_Spec
2491 (N : Node_Id) return Boolean is
2493 pragma Assert (False
2494 or else NT (N).Nkind = N_With_Clause);
2496 end Unreferenced_In_Spec;
2498 function Variant_Part
2499 (N : Node_Id) return Node_Id is
2501 pragma Assert (False
2502 or else NT (N).Nkind = N_Component_List);
2507 (N : Node_Id) return List_Id is
2509 pragma Assert (False
2510 or else NT (N).Nkind = N_Variant_Part);
2514 function Visible_Declarations
2515 (N : Node_Id) return List_Id is
2517 pragma Assert (False
2518 or else NT (N).Nkind = N_Package_Specification
2519 or else NT (N).Nkind = N_Protected_Definition
2520 or else NT (N).Nkind = N_Task_Definition);
2522 end Visible_Declarations;
2524 function Was_Originally_Stub
2525 (N : Node_Id) return Boolean is
2527 pragma Assert (False
2528 or else NT (N).Nkind = N_Package_Body
2529 or else NT (N).Nkind = N_Protected_Body
2530 or else NT (N).Nkind = N_Subprogram_Body
2531 or else NT (N).Nkind = N_Task_Body);
2533 end Was_Originally_Stub;
2535 function Zero_Cost_Handling
2536 (N : Node_Id) return Boolean is
2538 pragma Assert (False
2539 or else NT (N).Nkind = N_Exception_Handler
2540 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2542 end Zero_Cost_Handling;
2544 --------------------------
2545 -- Field Set Procedures --
2546 --------------------------
2548 procedure Set_ABE_Is_Certain
2549 (N : Node_Id; Val : Boolean := True) is
2551 pragma Assert (False
2552 or else NT (N).Nkind = N_Formal_Package_Declaration
2553 or else NT (N).Nkind = N_Function_Call
2554 or else NT (N).Nkind = N_Function_Instantiation
2555 or else NT (N).Nkind = N_Package_Instantiation
2556 or else NT (N).Nkind = N_Procedure_Call_Statement
2557 or else NT (N).Nkind = N_Procedure_Instantiation);
2558 Set_Flag18 (N, Val);
2559 end Set_ABE_Is_Certain;
2561 procedure Set_Abort_Present
2562 (N : Node_Id; Val : Boolean := True) is
2564 pragma Assert (False
2565 or else NT (N).Nkind = N_Requeue_Statement);
2566 Set_Flag15 (N, Val);
2567 end Set_Abort_Present;
2569 procedure Set_Abortable_Part
2570 (N : Node_Id; Val : Node_Id) is
2572 pragma Assert (False
2573 or else NT (N).Nkind = N_Asynchronous_Select);
2574 Set_Node2_With_Parent (N, Val);
2575 end Set_Abortable_Part;
2577 procedure Set_Abstract_Present
2578 (N : Node_Id; Val : Boolean := True) is
2580 pragma Assert (False
2581 or else NT (N).Nkind = N_Derived_Type_Definition
2582 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2583 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2584 or else NT (N).Nkind = N_Private_Extension_Declaration
2585 or else NT (N).Nkind = N_Private_Type_Declaration
2586 or else NT (N).Nkind = N_Record_Definition);
2588 end Set_Abstract_Present;
2590 procedure Set_Accept_Handler_Records
2591 (N : Node_Id; Val : List_Id) is
2593 pragma Assert (False
2594 or else NT (N).Nkind = N_Accept_Alternative);
2595 Set_List5 (N, Val); -- semantic field, no parent set
2596 end Set_Accept_Handler_Records;
2598 procedure Set_Accept_Statement
2599 (N : Node_Id; Val : Node_Id) is
2601 pragma Assert (False
2602 or else NT (N).Nkind = N_Accept_Alternative);
2603 Set_Node2_With_Parent (N, Val);
2604 end Set_Accept_Statement;
2606 procedure Set_Access_Definition
2607 (N : Node_Id; Val : Node_Id) is
2609 pragma Assert (False
2610 or else NT (N).Nkind = N_Component_Definition
2611 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2612 Set_Node3_With_Parent (N, Val);
2613 end Set_Access_Definition;
2615 procedure Set_Access_Types_To_Process
2616 (N : Node_Id; Val : Elist_Id) is
2618 pragma Assert (False
2619 or else NT (N).Nkind = N_Freeze_Entity);
2620 Set_Elist2 (N, Val); -- semantic field, no parent set
2621 end Set_Access_Types_To_Process;
2623 procedure Set_Actions
2624 (N : Node_Id; Val : List_Id) is
2626 pragma Assert (False
2627 or else NT (N).Nkind = N_And_Then
2628 or else NT (N).Nkind = N_Compilation_Unit_Aux
2629 or else NT (N).Nkind = N_Freeze_Entity
2630 or else NT (N).Nkind = N_Or_Else);
2631 Set_List1_With_Parent (N, Val);
2634 procedure Set_Activation_Chain_Entity
2635 (N : Node_Id; Val : Node_Id) is
2637 pragma Assert (False
2638 or else NT (N).Nkind = N_Block_Statement
2639 or else NT (N).Nkind = N_Entry_Body
2640 or else NT (N).Nkind = N_Generic_Package_Declaration
2641 or else NT (N).Nkind = N_Package_Declaration
2642 or else NT (N).Nkind = N_Subprogram_Body
2643 or else NT (N).Nkind = N_Task_Body);
2644 Set_Node3 (N, Val); -- semantic field, no parent set
2645 end Set_Activation_Chain_Entity;
2647 procedure Set_Acts_As_Spec
2648 (N : Node_Id; Val : Boolean := True) is
2650 pragma Assert (False
2651 or else NT (N).Nkind = N_Compilation_Unit
2652 or else NT (N).Nkind = N_Subprogram_Body);
2654 end Set_Acts_As_Spec;
2656 procedure Set_Aggregate_Bounds
2657 (N : Node_Id; Val : Node_Id) is
2659 pragma Assert (False
2660 or else NT (N).Nkind = N_Aggregate);
2661 Set_Node3 (N, Val); -- semantic field, no parent set
2662 end Set_Aggregate_Bounds;
2664 procedure Set_Aliased_Present
2665 (N : Node_Id; Val : Boolean := True) is
2667 pragma Assert (False
2668 or else NT (N).Nkind = N_Component_Definition
2669 or else NT (N).Nkind = N_Object_Declaration);
2671 end Set_Aliased_Present;
2673 procedure Set_All_Others
2674 (N : Node_Id; Val : Boolean := True) is
2676 pragma Assert (False
2677 or else NT (N).Nkind = N_Others_Choice);
2678 Set_Flag11 (N, Val);
2681 procedure Set_All_Present
2682 (N : Node_Id; Val : Boolean := True) is
2684 pragma Assert (False
2685 or else NT (N).Nkind = N_Access_Definition
2686 or else NT (N).Nkind = N_Access_To_Object_Definition);
2687 Set_Flag15 (N, Val);
2688 end Set_All_Present;
2690 procedure Set_Alternatives
2691 (N : Node_Id; Val : List_Id) is
2693 pragma Assert (False
2694 or else NT (N).Nkind = N_Case_Statement);
2695 Set_List4_With_Parent (N, Val);
2696 end Set_Alternatives;
2698 procedure Set_Ancestor_Part
2699 (N : Node_Id; Val : Node_Id) is
2701 pragma Assert (False
2702 or else NT (N).Nkind = N_Extension_Aggregate);
2703 Set_Node3_With_Parent (N, Val);
2704 end Set_Ancestor_Part;
2706 procedure Set_Array_Aggregate
2707 (N : Node_Id; Val : Node_Id) is
2709 pragma Assert (False
2710 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2711 Set_Node3_With_Parent (N, Val);
2712 end Set_Array_Aggregate;
2714 procedure Set_Assignment_OK
2715 (N : Node_Id; Val : Boolean := True) is
2717 pragma Assert (False
2718 or else NT (N).Nkind = N_Object_Declaration
2719 or else NT (N).Nkind in N_Subexpr);
2720 Set_Flag15 (N, Val);
2721 end Set_Assignment_OK;
2723 procedure Set_Associated_Node
2724 (N : Node_Id; Val : Node_Id) is
2726 pragma Assert (False
2727 or else NT (N).Nkind in N_Has_Entity
2728 or else NT (N).Nkind = N_Aggregate
2729 or else NT (N).Nkind = N_Extension_Aggregate
2730 or else NT (N).Nkind = N_Selected_Component);
2731 Set_Node4 (N, Val); -- semantic field, no parent set
2732 end Set_Associated_Node;
2734 procedure Set_At_End_Proc
2735 (N : Node_Id; Val : Node_Id) is
2737 pragma Assert (False
2738 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2740 end Set_At_End_Proc;
2742 procedure Set_Attribute_Name
2743 (N : Node_Id; Val : Name_Id) is
2745 pragma Assert (False
2746 or else NT (N).Nkind = N_Attribute_Reference);
2748 end Set_Attribute_Name;
2750 procedure Set_Aux_Decls_Node
2751 (N : Node_Id; Val : Node_Id) is
2753 pragma Assert (False
2754 or else NT (N).Nkind = N_Compilation_Unit);
2755 Set_Node5_With_Parent (N, Val);
2756 end Set_Aux_Decls_Node;
2758 procedure Set_Backwards_OK
2759 (N : Node_Id; Val : Boolean := True) is
2761 pragma Assert (False
2762 or else NT (N).Nkind = N_Assignment_Statement);
2764 end Set_Backwards_OK;
2766 procedure Set_Bad_Is_Detected
2767 (N : Node_Id; Val : Boolean := True) is
2769 pragma Assert (False
2770 or else NT (N).Nkind = N_Subprogram_Body);
2771 Set_Flag15 (N, Val);
2772 end Set_Bad_Is_Detected;
2774 procedure Set_Body_Required
2775 (N : Node_Id; Val : Boolean := True) is
2777 pragma Assert (False
2778 or else NT (N).Nkind = N_Compilation_Unit);
2779 Set_Flag13 (N, Val);
2780 end Set_Body_Required;
2782 procedure Set_Body_To_Inline
2783 (N : Node_Id; Val : Node_Id) is
2785 pragma Assert (False
2786 or else NT (N).Nkind = N_Subprogram_Declaration);
2788 end Set_Body_To_Inline;
2790 procedure Set_Box_Present
2791 (N : Node_Id; Val : Boolean := True) is
2793 pragma Assert (False
2794 or else NT (N).Nkind = N_Component_Association
2795 or else NT (N).Nkind = N_Formal_Package_Declaration
2796 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2797 Set_Flag15 (N, Val);
2798 end Set_Box_Present;
2800 procedure Set_By_Ref
2801 (N : Node_Id; Val : Boolean := True) is
2803 pragma Assert (False
2804 or else NT (N).Nkind = N_Return_Statement);
2808 procedure Set_Char_Literal_Value
2809 (N : Node_Id; Val : Char_Code) is
2811 pragma Assert (False
2812 or else NT (N).Nkind = N_Character_Literal);
2813 Set_Char_Code2 (N, Val);
2814 end Set_Char_Literal_Value;
2817 (N : Node_Id; Val : Name_Id) is
2819 pragma Assert (False
2820 or else NT (N).Nkind in N_Has_Chars);
2824 procedure Set_Check_Address_Alignment
2825 (N : Node_Id; Val : Boolean := True) is
2827 pragma Assert (False
2828 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2829 Set_Flag11 (N, Val);
2830 end Set_Check_Address_Alignment;
2832 procedure Set_Choice_Parameter
2833 (N : Node_Id; Val : Node_Id) is
2835 pragma Assert (False
2836 or else NT (N).Nkind = N_Exception_Handler);
2837 Set_Node2_With_Parent (N, Val);
2838 end Set_Choice_Parameter;
2840 procedure Set_Choices
2841 (N : Node_Id; Val : List_Id) is
2843 pragma Assert (False
2844 or else NT (N).Nkind = N_Component_Association);
2845 Set_List1_With_Parent (N, Val);
2848 procedure Set_Compile_Time_Known_Aggregate
2849 (N : Node_Id; Val : Boolean := True) is
2851 pragma Assert (False
2852 or else NT (N).Nkind = N_Aggregate);
2853 Set_Flag18 (N, Val);
2854 end Set_Compile_Time_Known_Aggregate;
2856 procedure Set_Component_Associations
2857 (N : Node_Id; Val : List_Id) is
2859 pragma Assert (False
2860 or else NT (N).Nkind = N_Aggregate
2861 or else NT (N).Nkind = N_Extension_Aggregate);
2862 Set_List2_With_Parent (N, Val);
2863 end Set_Component_Associations;
2865 procedure Set_Component_Clauses
2866 (N : Node_Id; Val : List_Id) is
2868 pragma Assert (False
2869 or else NT (N).Nkind = N_Record_Representation_Clause);
2870 Set_List3_With_Parent (N, Val);
2871 end Set_Component_Clauses;
2873 procedure Set_Component_Definition
2874 (N : Node_Id; Val : Node_Id) is
2876 pragma Assert (False
2877 or else NT (N).Nkind = N_Component_Declaration
2878 or else NT (N).Nkind = N_Constrained_Array_Definition
2879 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2880 Set_Node4_With_Parent (N, Val);
2881 end Set_Component_Definition;
2883 procedure Set_Component_Items
2884 (N : Node_Id; Val : List_Id) is
2886 pragma Assert (False
2887 or else NT (N).Nkind = N_Component_List);
2888 Set_List3_With_Parent (N, Val);
2889 end Set_Component_Items;
2891 procedure Set_Component_List
2892 (N : Node_Id; Val : Node_Id) is
2894 pragma Assert (False
2895 or else NT (N).Nkind = N_Record_Definition
2896 or else NT (N).Nkind = N_Variant);
2897 Set_Node1_With_Parent (N, Val);
2898 end Set_Component_List;
2900 procedure Set_Component_Name
2901 (N : Node_Id; Val : Node_Id) is
2903 pragma Assert (False
2904 or else NT (N).Nkind = N_Component_Clause);
2905 Set_Node1_With_Parent (N, Val);
2906 end Set_Component_Name;
2908 procedure Set_Condition
2909 (N : Node_Id; Val : Node_Id) is
2911 pragma Assert (False
2912 or else NT (N).Nkind = N_Accept_Alternative
2913 or else NT (N).Nkind = N_Delay_Alternative
2914 or else NT (N).Nkind = N_Elsif_Part
2915 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2916 or else NT (N).Nkind = N_Exit_Statement
2917 or else NT (N).Nkind = N_If_Statement
2918 or else NT (N).Nkind = N_Iteration_Scheme
2919 or else NT (N).Nkind = N_Raise_Constraint_Error
2920 or else NT (N).Nkind = N_Raise_Program_Error
2921 or else NT (N).Nkind = N_Raise_Storage_Error
2922 or else NT (N).Nkind = N_Terminate_Alternative);
2923 Set_Node1_With_Parent (N, Val);
2926 procedure Set_Condition_Actions
2927 (N : Node_Id; Val : List_Id) is
2929 pragma Assert (False
2930 or else NT (N).Nkind = N_Elsif_Part
2931 or else NT (N).Nkind = N_Iteration_Scheme);
2932 Set_List3 (N, Val); -- semantic field, no parent set
2933 end Set_Condition_Actions;
2935 procedure Set_Config_Pragmas
2936 (N : Node_Id; Val : List_Id) is
2938 pragma Assert (False
2939 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2940 Set_List4_With_Parent (N, Val);
2941 end Set_Config_Pragmas;
2943 procedure Set_Constant_Present
2944 (N : Node_Id; Val : Boolean := True) is
2946 pragma Assert (False
2947 or else NT (N).Nkind = N_Access_Definition
2948 or else NT (N).Nkind = N_Access_To_Object_Definition
2949 or else NT (N).Nkind = N_Object_Declaration);
2950 Set_Flag17 (N, Val);
2951 end Set_Constant_Present;
2953 procedure Set_Constraint
2954 (N : Node_Id; Val : Node_Id) is
2956 pragma Assert (False
2957 or else NT (N).Nkind = N_Subtype_Indication);
2958 Set_Node3_With_Parent (N, Val);
2961 procedure Set_Constraints
2962 (N : Node_Id; Val : List_Id) is
2964 pragma Assert (False
2965 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2966 Set_List1_With_Parent (N, Val);
2967 end Set_Constraints;
2969 procedure Set_Context_Installed
2970 (N : Node_Id; Val : Boolean := True) is
2972 pragma Assert (False
2973 or else NT (N).Nkind = N_With_Clause);
2974 Set_Flag13 (N, Val);
2975 end Set_Context_Installed;
2977 procedure Set_Context_Items
2978 (N : Node_Id; Val : List_Id) is
2980 pragma Assert (False
2981 or else NT (N).Nkind = N_Compilation_Unit);
2982 Set_List1_With_Parent (N, Val);
2983 end Set_Context_Items;
2985 procedure Set_Controlling_Argument
2986 (N : Node_Id; Val : Node_Id) is
2988 pragma Assert (False
2989 or else NT (N).Nkind = N_Function_Call
2990 or else NT (N).Nkind = N_Procedure_Call_Statement);
2991 Set_Node1 (N, Val); -- semantic field, no parent set
2992 end Set_Controlling_Argument;
2994 procedure Set_Conversion_OK
2995 (N : Node_Id; Val : Boolean := True) is
2997 pragma Assert (False
2998 or else NT (N).Nkind = N_Type_Conversion);
2999 Set_Flag14 (N, Val);
3000 end Set_Conversion_OK;
3002 procedure Set_Corresponding_Body
3003 (N : Node_Id; Val : Node_Id) is
3005 pragma Assert (False
3006 or else NT (N).Nkind = N_Entry_Declaration
3007 or else NT (N).Nkind = N_Generic_Package_Declaration
3008 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
3009 or else NT (N).Nkind = N_Package_Body_Stub
3010 or else NT (N).Nkind = N_Package_Declaration
3011 or else NT (N).Nkind = N_Protected_Body_Stub
3012 or else NT (N).Nkind = N_Protected_Type_Declaration
3013 or else NT (N).Nkind = N_Subprogram_Body_Stub
3014 or else NT (N).Nkind = N_Subprogram_Declaration
3015 or else NT (N).Nkind = N_Task_Body_Stub
3016 or else NT (N).Nkind = N_Task_Type_Declaration);
3017 Set_Node5 (N, Val); -- semantic field, no parent set
3018 end Set_Corresponding_Body;
3020 procedure Set_Corresponding_Generic_Association
3021 (N : Node_Id; Val : Node_Id) is
3023 pragma Assert (False
3024 or else NT (N).Nkind = N_Object_Declaration
3025 or else NT (N).Nkind = N_Object_Renaming_Declaration);
3026 Set_Node5 (N, Val); -- semantic field, no parent set
3027 end Set_Corresponding_Generic_Association;
3028 procedure Set_Corresponding_Integer_Value
3029 (N : Node_Id; Val : Uint) is
3031 pragma Assert (False
3032 or else NT (N).Nkind = N_Real_Literal);
3033 Set_Uint4 (N, Val); -- semantic field, no parent set
3034 end Set_Corresponding_Integer_Value;
3036 procedure Set_Corresponding_Spec
3037 (N : Node_Id; Val : Node_Id) is
3039 pragma Assert (False
3040 or else NT (N).Nkind = N_Package_Body
3041 or else NT (N).Nkind = N_Protected_Body
3042 or else NT (N).Nkind = N_Subprogram_Body
3043 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
3044 or else NT (N).Nkind = N_Task_Body
3045 or else NT (N).Nkind = N_With_Clause);
3046 Set_Node5 (N, Val); -- semantic field, no parent set
3047 end Set_Corresponding_Spec;
3049 procedure Set_Corresponding_Stub
3050 (N : Node_Id; Val : Node_Id) is
3052 pragma Assert (False
3053 or else NT (N).Nkind = N_Subunit);
3055 end Set_Corresponding_Stub;
3057 procedure Set_Dcheck_Function
3058 (N : Node_Id; Val : Entity_Id) is
3060 pragma Assert (False
3061 or else NT (N).Nkind = N_Variant);
3062 Set_Node5 (N, Val); -- semantic field, no parent set
3063 end Set_Dcheck_Function;
3065 procedure Set_Debug_Statement
3066 (N : Node_Id; Val : Node_Id) is
3068 pragma Assert (False
3069 or else NT (N).Nkind = N_Pragma);
3070 Set_Node3_With_Parent (N, Val);
3071 end Set_Debug_Statement;
3073 procedure Set_Declarations
3074 (N : Node_Id; Val : List_Id) is
3076 pragma Assert (False
3077 or else NT (N).Nkind = N_Accept_Statement
3078 or else NT (N).Nkind = N_Block_Statement
3079 or else NT (N).Nkind = N_Compilation_Unit_Aux
3080 or else NT (N).Nkind = N_Entry_Body
3081 or else NT (N).Nkind = N_Package_Body
3082 or else NT (N).Nkind = N_Protected_Body
3083 or else NT (N).Nkind = N_Subprogram_Body
3084 or else NT (N).Nkind = N_Task_Body);
3085 Set_List2_With_Parent (N, Val);
3086 end Set_Declarations;
3088 procedure Set_Default_Expression
3089 (N : Node_Id; Val : Node_Id) is
3091 pragma Assert (False
3092 or else NT (N).Nkind = N_Parameter_Specification);
3093 Set_Node5 (N, Val); -- semantic field, no parent set
3094 end Set_Default_Expression;
3096 procedure Set_Default_Name
3097 (N : Node_Id; Val : Node_Id) is
3099 pragma Assert (False
3100 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3101 Set_Node2_With_Parent (N, Val);
3102 end Set_Default_Name;
3104 procedure Set_Defining_Identifier
3105 (N : Node_Id; Val : Entity_Id) is
3107 pragma Assert (False
3108 or else NT (N).Nkind = N_Component_Declaration
3109 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3110 or else NT (N).Nkind = N_Discriminant_Specification
3111 or else NT (N).Nkind = N_Entry_Body
3112 or else NT (N).Nkind = N_Entry_Declaration
3113 or else NT (N).Nkind = N_Entry_Index_Specification
3114 or else NT (N).Nkind = N_Exception_Declaration
3115 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3116 or else NT (N).Nkind = N_Formal_Object_Declaration
3117 or else NT (N).Nkind = N_Formal_Package_Declaration
3118 or else NT (N).Nkind = N_Formal_Type_Declaration
3119 or else NT (N).Nkind = N_Full_Type_Declaration
3120 or else NT (N).Nkind = N_Implicit_Label_Declaration
3121 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3122 or else NT (N).Nkind = N_Loop_Parameter_Specification
3123 or else NT (N).Nkind = N_Number_Declaration
3124 or else NT (N).Nkind = N_Object_Declaration
3125 or else NT (N).Nkind = N_Object_Renaming_Declaration
3126 or else NT (N).Nkind = N_Package_Body_Stub
3127 or else NT (N).Nkind = N_Parameter_Specification
3128 or else NT (N).Nkind = N_Private_Extension_Declaration
3129 or else NT (N).Nkind = N_Private_Type_Declaration
3130 or else NT (N).Nkind = N_Protected_Body
3131 or else NT (N).Nkind = N_Protected_Body_Stub
3132 or else NT (N).Nkind = N_Protected_Type_Declaration
3133 or else NT (N).Nkind = N_Single_Protected_Declaration
3134 or else NT (N).Nkind = N_Single_Task_Declaration
3135 or else NT (N).Nkind = N_Subtype_Declaration
3136 or else NT (N).Nkind = N_Task_Body
3137 or else NT (N).Nkind = N_Task_Body_Stub
3138 or else NT (N).Nkind = N_Task_Type_Declaration);
3139 Set_Node1_With_Parent (N, Val);
3140 end Set_Defining_Identifier;
3142 procedure Set_Defining_Unit_Name
3143 (N : Node_Id; Val : Node_Id) is
3145 pragma Assert (False
3146 or else NT (N).Nkind = N_Function_Instantiation
3147 or else NT (N).Nkind = N_Function_Specification
3148 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3149 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3150 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3151 or else NT (N).Nkind = N_Package_Body
3152 or else NT (N).Nkind = N_Package_Instantiation
3153 or else NT (N).Nkind = N_Package_Renaming_Declaration
3154 or else NT (N).Nkind = N_Package_Specification
3155 or else NT (N).Nkind = N_Procedure_Instantiation
3156 or else NT (N).Nkind = N_Procedure_Specification);
3157 Set_Node1_With_Parent (N, Val);
3158 end Set_Defining_Unit_Name;
3160 procedure Set_Delay_Alternative
3161 (N : Node_Id; Val : Node_Id) is
3163 pragma Assert (False
3164 or else NT (N).Nkind = N_Timed_Entry_Call);
3165 Set_Node4_With_Parent (N, Val);
3166 end Set_Delay_Alternative;
3168 procedure Set_Delay_Finalize_Attach
3169 (N : Node_Id; Val : Boolean := True) is
3171 pragma Assert (False
3172 or else NT (N).Nkind = N_Object_Declaration);
3173 Set_Flag14 (N, Val);
3174 end Set_Delay_Finalize_Attach;
3176 procedure Set_Delay_Statement
3177 (N : Node_Id; Val : Node_Id) is
3179 pragma Assert (False
3180 or else NT (N).Nkind = N_Delay_Alternative);
3181 Set_Node2_With_Parent (N, Val);
3182 end Set_Delay_Statement;
3184 procedure Set_Delta_Expression
3185 (N : Node_Id; Val : Node_Id) is
3187 pragma Assert (False
3188 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3189 or else NT (N).Nkind = N_Delta_Constraint
3190 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3191 Set_Node3_With_Parent (N, Val);
3192 end Set_Delta_Expression;
3194 procedure Set_Digits_Expression
3195 (N : Node_Id; Val : Node_Id) is
3197 pragma Assert (False
3198 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3199 or else NT (N).Nkind = N_Digits_Constraint
3200 or else NT (N).Nkind = N_Floating_Point_Definition);
3201 Set_Node2_With_Parent (N, Val);
3202 end Set_Digits_Expression;
3204 procedure Set_Discr_Check_Funcs_Built
3205 (N : Node_Id; Val : Boolean := True) is
3207 pragma Assert (False
3208 or else NT (N).Nkind = N_Full_Type_Declaration);
3209 Set_Flag11 (N, Val);
3210 end Set_Discr_Check_Funcs_Built;
3212 procedure Set_Discrete_Choices
3213 (N : Node_Id; Val : List_Id) is
3215 pragma Assert (False
3216 or else NT (N).Nkind = N_Case_Statement_Alternative
3217 or else NT (N).Nkind = N_Variant);
3218 Set_List4_With_Parent (N, Val);
3219 end Set_Discrete_Choices;
3221 procedure Set_Discrete_Range
3222 (N : Node_Id; Val : Node_Id) is
3224 pragma Assert (False
3225 or else NT (N).Nkind = N_Slice);
3226 Set_Node4_With_Parent (N, Val);
3227 end Set_Discrete_Range;
3229 procedure Set_Discrete_Subtype_Definition
3230 (N : Node_Id; Val : Node_Id) is
3232 pragma Assert (False
3233 or else NT (N).Nkind = N_Entry_Declaration
3234 or else NT (N).Nkind = N_Entry_Index_Specification
3235 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3236 Set_Node4_With_Parent (N, Val);
3237 end Set_Discrete_Subtype_Definition;
3239 procedure Set_Discrete_Subtype_Definitions
3240 (N : Node_Id; Val : List_Id) is
3242 pragma Assert (False
3243 or else NT (N).Nkind = N_Constrained_Array_Definition);
3244 Set_List2_With_Parent (N, Val);
3245 end Set_Discrete_Subtype_Definitions;
3247 procedure Set_Discriminant_Specifications
3248 (N : Node_Id; Val : List_Id) is
3250 pragma Assert (False
3251 or else NT (N).Nkind = N_Formal_Type_Declaration
3252 or else NT (N).Nkind = N_Full_Type_Declaration
3253 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3254 or else NT (N).Nkind = N_Private_Extension_Declaration
3255 or else NT (N).Nkind = N_Private_Type_Declaration
3256 or else NT (N).Nkind = N_Protected_Type_Declaration
3257 or else NT (N).Nkind = N_Task_Type_Declaration);
3258 Set_List4_With_Parent (N, Val);
3259 end Set_Discriminant_Specifications;
3261 procedure Set_Discriminant_Type
3262 (N : Node_Id; Val : Node_Id) is
3264 pragma Assert (False
3265 or else NT (N).Nkind = N_Discriminant_Specification);
3266 Set_Node5_With_Parent (N, Val);
3267 end Set_Discriminant_Type;
3269 procedure Set_Do_Accessibility_Check
3270 (N : Node_Id; Val : Boolean := True) is
3272 pragma Assert (False
3273 or else NT (N).Nkind = N_Parameter_Specification);
3274 Set_Flag13 (N, Val);
3275 end Set_Do_Accessibility_Check;
3277 procedure Set_Do_Discriminant_Check
3278 (N : Node_Id; Val : Boolean := True) is
3280 pragma Assert (False
3281 or else NT (N).Nkind = N_Selected_Component);
3282 Set_Flag13 (N, Val);
3283 end Set_Do_Discriminant_Check;
3285 procedure Set_Do_Division_Check
3286 (N : Node_Id; Val : Boolean := True) is
3288 pragma Assert (False
3289 or else NT (N).Nkind = N_Op_Divide
3290 or else NT (N).Nkind = N_Op_Mod
3291 or else NT (N).Nkind = N_Op_Rem);
3292 Set_Flag13 (N, Val);
3293 end Set_Do_Division_Check;
3295 procedure Set_Do_Length_Check
3296 (N : Node_Id; Val : Boolean := True) is
3298 pragma Assert (False
3299 or else NT (N).Nkind = N_Assignment_Statement
3300 or else NT (N).Nkind = N_Op_And
3301 or else NT (N).Nkind = N_Op_Or
3302 or else NT (N).Nkind = N_Op_Xor
3303 or else NT (N).Nkind = N_Type_Conversion);
3305 end Set_Do_Length_Check;
3307 procedure Set_Do_Overflow_Check
3308 (N : Node_Id; Val : Boolean := True) is
3310 pragma Assert (False
3311 or else NT (N).Nkind in N_Op
3312 or else NT (N).Nkind = N_Attribute_Reference
3313 or else NT (N).Nkind = N_Type_Conversion);
3314 Set_Flag17 (N, Val);
3315 end Set_Do_Overflow_Check;
3317 procedure Set_Do_Range_Check
3318 (N : Node_Id; Val : Boolean := True) is
3320 pragma Assert (False
3321 or else NT (N).Nkind in N_Subexpr);
3323 end Set_Do_Range_Check;
3325 procedure Set_Do_Storage_Check
3326 (N : Node_Id; Val : Boolean := True) is
3328 pragma Assert (False
3329 or else NT (N).Nkind = N_Allocator
3330 or else NT (N).Nkind = N_Subprogram_Body);
3331 Set_Flag17 (N, Val);
3332 end Set_Do_Storage_Check;
3334 procedure Set_Do_Tag_Check
3335 (N : Node_Id; Val : Boolean := True) is
3337 pragma Assert (False
3338 or else NT (N).Nkind = N_Assignment_Statement
3339 or else NT (N).Nkind = N_Function_Call
3340 or else NT (N).Nkind = N_Procedure_Call_Statement
3341 or else NT (N).Nkind = N_Return_Statement
3342 or else NT (N).Nkind = N_Type_Conversion);
3343 Set_Flag13 (N, Val);
3344 end Set_Do_Tag_Check;
3346 procedure Set_Elaborate_All_Present
3347 (N : Node_Id; Val : Boolean := True) is
3349 pragma Assert (False
3350 or else NT (N).Nkind = N_With_Clause);
3351 Set_Flag14 (N, Val);
3352 end Set_Elaborate_All_Present;
3354 procedure Set_Elaborate_Present
3355 (N : Node_Id; Val : Boolean := True) is
3357 pragma Assert (False
3358 or else NT (N).Nkind = N_With_Clause);
3360 end Set_Elaborate_Present;
3362 procedure Set_Elaboration_Boolean
3363 (N : Node_Id; Val : Node_Id) is
3365 pragma Assert (False
3366 or else NT (N).Nkind = N_Function_Specification
3367 or else NT (N).Nkind = N_Procedure_Specification);
3369 end Set_Elaboration_Boolean;
3371 procedure Set_Else_Actions
3372 (N : Node_Id; Val : List_Id) is
3374 pragma Assert (False
3375 or else NT (N).Nkind = N_Conditional_Expression);
3376 Set_List3 (N, Val); -- semantic field, no parent set
3377 end Set_Else_Actions;
3379 procedure Set_Else_Statements
3380 (N : Node_Id; Val : List_Id) is
3382 pragma Assert (False
3383 or else NT (N).Nkind = N_Conditional_Entry_Call
3384 or else NT (N).Nkind = N_If_Statement
3385 or else NT (N).Nkind = N_Selective_Accept);
3386 Set_List4_With_Parent (N, Val);
3387 end Set_Else_Statements;
3389 procedure Set_Elsif_Parts
3390 (N : Node_Id; Val : List_Id) is
3392 pragma Assert (False
3393 or else NT (N).Nkind = N_If_Statement);
3394 Set_List3_With_Parent (N, Val);
3395 end Set_Elsif_Parts;
3397 procedure Set_Enclosing_Variant
3398 (N : Node_Id; Val : Node_Id) is
3400 pragma Assert (False
3401 or else NT (N).Nkind = N_Variant);
3402 Set_Node2 (N, Val); -- semantic field, no parent set
3403 end Set_Enclosing_Variant;
3405 procedure Set_End_Label
3406 (N : Node_Id; Val : Node_Id) is
3408 pragma Assert (False
3409 or else NT (N).Nkind = N_Enumeration_Type_Definition
3410 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3411 or else NT (N).Nkind = N_Loop_Statement
3412 or else NT (N).Nkind = N_Package_Specification
3413 or else NT (N).Nkind = N_Protected_Body
3414 or else NT (N).Nkind = N_Protected_Definition
3415 or else NT (N).Nkind = N_Record_Definition
3416 or else NT (N).Nkind = N_Task_Definition);
3417 Set_Node4_With_Parent (N, Val);
3420 procedure Set_End_Span
3421 (N : Node_Id; Val : Uint) is
3423 pragma Assert (False
3424 or else NT (N).Nkind = N_Case_Statement
3425 or else NT (N).Nkind = N_If_Statement);
3429 procedure Set_Entity
3430 (N : Node_Id; Val : Node_Id) is
3432 pragma Assert (False
3433 or else NT (N).Nkind in N_Has_Entity
3434 or else NT (N).Nkind = N_Freeze_Entity);
3435 Set_Node4 (N, Val); -- semantic field, no parent set
3438 procedure Set_Entry_Body_Formal_Part
3439 (N : Node_Id; Val : Node_Id) is
3441 pragma Assert (False
3442 or else NT (N).Nkind = N_Entry_Body);
3443 Set_Node5_With_Parent (N, Val);
3444 end Set_Entry_Body_Formal_Part;
3446 procedure Set_Entry_Call_Alternative
3447 (N : Node_Id; Val : Node_Id) is
3449 pragma Assert (False
3450 or else NT (N).Nkind = N_Conditional_Entry_Call
3451 or else NT (N).Nkind = N_Timed_Entry_Call);
3452 Set_Node1_With_Parent (N, Val);
3453 end Set_Entry_Call_Alternative;
3455 procedure Set_Entry_Call_Statement
3456 (N : Node_Id; Val : Node_Id) is
3458 pragma Assert (False
3459 or else NT (N).Nkind = N_Entry_Call_Alternative);
3460 Set_Node1_With_Parent (N, Val);
3461 end Set_Entry_Call_Statement;
3463 procedure Set_Entry_Direct_Name
3464 (N : Node_Id; Val : Node_Id) is
3466 pragma Assert (False
3467 or else NT (N).Nkind = N_Accept_Statement);
3468 Set_Node1_With_Parent (N, Val);
3469 end Set_Entry_Direct_Name;
3471 procedure Set_Entry_Index
3472 (N : Node_Id; Val : Node_Id) is
3474 pragma Assert (False
3475 or else NT (N).Nkind = N_Accept_Statement);
3476 Set_Node5_With_Parent (N, Val);
3477 end Set_Entry_Index;
3479 procedure Set_Entry_Index_Specification
3480 (N : Node_Id; Val : Node_Id) is
3482 pragma Assert (False
3483 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3484 Set_Node4_With_Parent (N, Val);
3485 end Set_Entry_Index_Specification;
3488 (N : Node_Id; Val : Node_Id) is
3490 pragma Assert (False
3491 or else NT (N).Nkind in N_Has_Etype);
3492 Set_Node5 (N, Val); -- semantic field, no parent set
3495 procedure Set_Exception_Choices
3496 (N : Node_Id; Val : List_Id) is
3498 pragma Assert (False
3499 or else NT (N).Nkind = N_Exception_Handler);
3500 Set_List4_With_Parent (N, Val);
3501 end Set_Exception_Choices;
3503 procedure Set_Exception_Handlers
3504 (N : Node_Id; Val : List_Id) is
3506 pragma Assert (False
3507 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3508 Set_List5_With_Parent (N, Val);
3509 end Set_Exception_Handlers;
3511 procedure Set_Exception_Junk
3512 (N : Node_Id; Val : Boolean := True) is
3514 pragma Assert (False
3515 or else NT (N).Nkind = N_Goto_Statement
3516 or else NT (N).Nkind = N_Label
3517 or else NT (N).Nkind = N_Object_Declaration
3518 or else NT (N).Nkind = N_Subtype_Declaration);
3519 Set_Flag11 (N, Val);
3520 end Set_Exception_Junk;
3522 procedure Set_Expansion_Delayed
3523 (N : Node_Id; Val : Boolean := True) is
3525 pragma Assert (False
3526 or else NT (N).Nkind = N_Aggregate
3527 or else NT (N).Nkind = N_Extension_Aggregate);
3528 Set_Flag11 (N, Val);
3529 end Set_Expansion_Delayed;
3531 procedure Set_Explicit_Actual_Parameter
3532 (N : Node_Id; Val : Node_Id) is
3534 pragma Assert (False
3535 or else NT (N).Nkind = N_Parameter_Association);
3536 Set_Node3_With_Parent (N, Val);
3537 end Set_Explicit_Actual_Parameter;
3539 procedure Set_Explicit_Generic_Actual_Parameter
3540 (N : Node_Id; Val : Node_Id) is
3542 pragma Assert (False
3543 or else NT (N).Nkind = N_Generic_Association);
3544 Set_Node1_With_Parent (N, Val);
3545 end Set_Explicit_Generic_Actual_Parameter;
3547 procedure Set_Expression
3548 (N : Node_Id; Val : Node_Id) is
3550 pragma Assert (False
3551 or else NT (N).Nkind = N_Allocator
3552 or else NT (N).Nkind = N_Assignment_Statement
3553 or else NT (N).Nkind = N_At_Clause
3554 or else NT (N).Nkind = N_Attribute_Definition_Clause
3555 or else NT (N).Nkind = N_Case_Statement
3556 or else NT (N).Nkind = N_Code_Statement
3557 or else NT (N).Nkind = N_Component_Association
3558 or else NT (N).Nkind = N_Component_Declaration
3559 or else NT (N).Nkind = N_Delay_Relative_Statement
3560 or else NT (N).Nkind = N_Delay_Until_Statement
3561 or else NT (N).Nkind = N_Discriminant_Association
3562 or else NT (N).Nkind = N_Discriminant_Specification
3563 or else NT (N).Nkind = N_Exception_Declaration
3564 or else NT (N).Nkind = N_Formal_Object_Declaration
3565 or else NT (N).Nkind = N_Free_Statement
3566 or else NT (N).Nkind = N_Mod_Clause
3567 or else NT (N).Nkind = N_Modular_Type_Definition
3568 or else NT (N).Nkind = N_Number_Declaration
3569 or else NT (N).Nkind = N_Object_Declaration
3570 or else NT (N).Nkind = N_Parameter_Specification
3571 or else NT (N).Nkind = N_Pragma_Argument_Association
3572 or else NT (N).Nkind = N_Qualified_Expression
3573 or else NT (N).Nkind = N_Return_Statement
3574 or else NT (N).Nkind = N_Type_Conversion
3575 or else NT (N).Nkind = N_Unchecked_Expression
3576 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3577 Set_Node3_With_Parent (N, Val);
3580 procedure Set_Expressions
3581 (N : Node_Id; Val : List_Id) is
3583 pragma Assert (False
3584 or else NT (N).Nkind = N_Aggregate
3585 or else NT (N).Nkind = N_Attribute_Reference
3586 or else NT (N).Nkind = N_Conditional_Expression
3587 or else NT (N).Nkind = N_Extension_Aggregate
3588 or else NT (N).Nkind = N_Indexed_Component);
3589 Set_List1_With_Parent (N, Val);
3590 end Set_Expressions;
3592 procedure Set_First_Bit
3593 (N : Node_Id; Val : Node_Id) is
3595 pragma Assert (False
3596 or else NT (N).Nkind = N_Component_Clause);
3597 Set_Node3_With_Parent (N, Val);
3600 procedure Set_First_Inlined_Subprogram
3601 (N : Node_Id; Val : Entity_Id) is
3603 pragma Assert (False
3604 or else NT (N).Nkind = N_Compilation_Unit);
3605 Set_Node3 (N, Val); -- semantic field, no parent set
3606 end Set_First_Inlined_Subprogram;
3608 procedure Set_First_Name
3609 (N : Node_Id; Val : Boolean := True) is
3611 pragma Assert (False
3612 or else NT (N).Nkind = N_With_Clause);
3616 procedure Set_First_Named_Actual
3617 (N : Node_Id; Val : Node_Id) is
3619 pragma Assert (False
3620 or else NT (N).Nkind = N_Entry_Call_Statement
3621 or else NT (N).Nkind = N_Function_Call
3622 or else NT (N).Nkind = N_Procedure_Call_Statement);
3623 Set_Node4 (N, Val); -- semantic field, no parent set
3624 end Set_First_Named_Actual;
3626 procedure Set_First_Real_Statement
3627 (N : Node_Id; Val : Node_Id) is
3629 pragma Assert (False
3630 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3631 Set_Node2 (N, Val); -- semantic field, no parent set
3632 end Set_First_Real_Statement;
3634 procedure Set_First_Subtype_Link
3635 (N : Node_Id; Val : Entity_Id) is
3637 pragma Assert (False
3638 or else NT (N).Nkind = N_Freeze_Entity);
3639 Set_Node5 (N, Val); -- semantic field, no parent set
3640 end Set_First_Subtype_Link;
3642 procedure Set_Float_Truncate
3643 (N : Node_Id; Val : Boolean := True) is
3645 pragma Assert (False
3646 or else NT (N).Nkind = N_Type_Conversion);
3647 Set_Flag11 (N, Val);
3648 end Set_Float_Truncate;
3650 procedure Set_Formal_Type_Definition
3651 (N : Node_Id; Val : Node_Id) is
3653 pragma Assert (False
3654 or else NT (N).Nkind = N_Formal_Type_Declaration);
3655 Set_Node3_With_Parent (N, Val);
3656 end Set_Formal_Type_Definition;
3658 procedure Set_Forwards_OK
3659 (N : Node_Id; Val : Boolean := True) is
3661 pragma Assert (False
3662 or else NT (N).Nkind = N_Assignment_Statement);
3664 end Set_Forwards_OK;
3666 procedure Set_From_At_Mod
3667 (N : Node_Id; Val : Boolean := True) is
3669 pragma Assert (False
3670 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3672 end Set_From_At_Mod;
3674 procedure Set_From_Default
3675 (N : Node_Id; Val : Boolean := True) is
3677 pragma Assert (False
3678 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
3680 end Set_From_Default;
3682 procedure Set_Generic_Associations
3683 (N : Node_Id; Val : List_Id) is
3685 pragma Assert (False
3686 or else NT (N).Nkind = N_Formal_Package_Declaration
3687 or else NT (N).Nkind = N_Function_Instantiation
3688 or else NT (N).Nkind = N_Package_Instantiation
3689 or else NT (N).Nkind = N_Procedure_Instantiation);
3690 Set_List3_With_Parent (N, Val);
3691 end Set_Generic_Associations;
3693 procedure Set_Generic_Formal_Declarations
3694 (N : Node_Id; Val : List_Id) is
3696 pragma Assert (False
3697 or else NT (N).Nkind = N_Generic_Package_Declaration
3698 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3699 Set_List2_With_Parent (N, Val);
3700 end Set_Generic_Formal_Declarations;
3702 procedure Set_Generic_Parent
3703 (N : Node_Id; Val : Node_Id) is
3705 pragma Assert (False
3706 or else NT (N).Nkind = N_Function_Specification
3707 or else NT (N).Nkind = N_Package_Specification
3708 or else NT (N).Nkind = N_Procedure_Specification);
3710 end Set_Generic_Parent;
3712 procedure Set_Generic_Parent_Type
3713 (N : Node_Id; Val : Node_Id) is
3715 pragma Assert (False
3716 or else NT (N).Nkind = N_Subtype_Declaration);
3718 end Set_Generic_Parent_Type;
3720 procedure Set_Handled_Statement_Sequence
3721 (N : Node_Id; Val : Node_Id) is
3723 pragma Assert (False
3724 or else NT (N).Nkind = N_Accept_Statement
3725 or else NT (N).Nkind = N_Block_Statement
3726 or else NT (N).Nkind = N_Entry_Body
3727 or else NT (N).Nkind = N_Package_Body
3728 or else NT (N).Nkind = N_Subprogram_Body
3729 or else NT (N).Nkind = N_Task_Body);
3730 Set_Node4_With_Parent (N, Val);
3731 end Set_Handled_Statement_Sequence;
3733 procedure Set_Handler_List_Entry
3734 (N : Node_Id; Val : Node_Id) is
3736 pragma Assert (False
3737 or else NT (N).Nkind = N_Object_Declaration);
3739 end Set_Handler_List_Entry;
3741 procedure Set_Has_Created_Identifier
3742 (N : Node_Id; Val : Boolean := True) is
3744 pragma Assert (False
3745 or else NT (N).Nkind = N_Block_Statement
3746 or else NT (N).Nkind = N_Loop_Statement);
3747 Set_Flag15 (N, Val);
3748 end Set_Has_Created_Identifier;
3750 procedure Set_Has_Dynamic_Length_Check
3751 (N : Node_Id; Val : Boolean := True) is
3753 Set_Flag10 (N, Val);
3754 end Set_Has_Dynamic_Length_Check;
3756 procedure Set_Has_Dynamic_Range_Check
3757 (N : Node_Id; Val : Boolean := True) is
3759 Set_Flag12 (N, Val);
3760 end Set_Has_Dynamic_Range_Check;
3762 procedure Set_Has_No_Elaboration_Code
3763 (N : Node_Id; Val : Boolean := True) is
3765 pragma Assert (False
3766 or else NT (N).Nkind = N_Compilation_Unit);
3767 Set_Flag17 (N, Val);
3768 end Set_Has_No_Elaboration_Code;
3770 procedure Set_Has_Priority_Pragma
3771 (N : Node_Id; Val : Boolean := True) is
3773 pragma Assert (False
3774 or else NT (N).Nkind = N_Protected_Definition
3775 or else NT (N).Nkind = N_Subprogram_Body
3776 or else NT (N).Nkind = N_Task_Definition);
3778 end Set_Has_Priority_Pragma;
3780 procedure Set_Has_Private_View
3781 (N : Node_Id; Val : Boolean := True) is
3783 pragma Assert (False
3784 or else NT (N).Nkind in N_Op
3785 or else NT (N).Nkind = N_Character_Literal
3786 or else NT (N).Nkind = N_Expanded_Name
3787 or else NT (N).Nkind = N_Identifier
3788 or else NT (N).Nkind = N_Operator_Symbol);
3789 Set_Flag11 (N, Val);
3790 end Set_Has_Private_View;
3792 procedure Set_Has_Storage_Size_Pragma
3793 (N : Node_Id; Val : Boolean := True) is
3795 pragma Assert (False
3796 or else NT (N).Nkind = N_Task_Definition);
3798 end Set_Has_Storage_Size_Pragma;
3800 procedure Set_Has_Task_Info_Pragma
3801 (N : Node_Id; Val : Boolean := True) is
3803 pragma Assert (False
3804 or else NT (N).Nkind = N_Task_Definition);
3806 end Set_Has_Task_Info_Pragma;
3808 procedure Set_Has_Task_Name_Pragma
3809 (N : Node_Id; Val : Boolean := True) is
3811 pragma Assert (False
3812 or else NT (N).Nkind = N_Task_Definition);
3814 end Set_Has_Task_Name_Pragma;
3816 procedure Set_Has_Wide_Character
3817 (N : Node_Id; Val : Boolean := True) is
3819 pragma Assert (False
3820 or else NT (N).Nkind = N_String_Literal);
3821 Set_Flag11 (N, Val);
3822 end Set_Has_Wide_Character;
3824 procedure Set_Hidden_By_Use_Clause
3825 (N : Node_Id; Val : Elist_Id) is
3827 pragma Assert (False
3828 or else NT (N).Nkind = N_Use_Package_Clause
3829 or else NT (N).Nkind = N_Use_Type_Clause);
3830 Set_Elist4 (N, Val);
3831 end Set_Hidden_By_Use_Clause;
3833 procedure Set_High_Bound
3834 (N : Node_Id; Val : Node_Id) is
3836 pragma Assert (False
3837 or else NT (N).Nkind = N_Range
3838 or else NT (N).Nkind = N_Real_Range_Specification
3839 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3840 Set_Node2_With_Parent (N, Val);
3843 procedure Set_Identifier
3844 (N : Node_Id; Val : Node_Id) is
3846 pragma Assert (False
3847 or else NT (N).Nkind = N_At_Clause
3848 or else NT (N).Nkind = N_Block_Statement
3849 or else NT (N).Nkind = N_Designator
3850 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3851 or else NT (N).Nkind = N_Label
3852 or else NT (N).Nkind = N_Loop_Statement
3853 or else NT (N).Nkind = N_Record_Representation_Clause
3854 or else NT (N).Nkind = N_Subprogram_Info);
3855 Set_Node1_With_Parent (N, Val);
3858 procedure Set_Implicit_With
3859 (N : Node_Id; Val : Boolean := True) is
3861 pragma Assert (False
3862 or else NT (N).Nkind = N_With_Clause);
3863 Set_Flag16 (N, Val);
3864 end Set_Implicit_With;
3866 procedure Set_In_Present
3867 (N : Node_Id; Val : Boolean := True) is
3869 pragma Assert (False
3870 or else NT (N).Nkind = N_Formal_Object_Declaration
3871 or else NT (N).Nkind = N_Parameter_Specification);
3872 Set_Flag15 (N, Val);
3875 procedure Set_Includes_Infinities
3876 (N : Node_Id; Val : Boolean := True) is
3878 pragma Assert (False
3879 or else NT (N).Nkind = N_Range);
3880 Set_Flag11 (N, Val);
3881 end Set_Includes_Infinities;
3883 procedure Set_Instance_Spec
3884 (N : Node_Id; Val : Node_Id) is
3886 pragma Assert (False
3887 or else NT (N).Nkind = N_Formal_Package_Declaration
3888 or else NT (N).Nkind = N_Function_Instantiation
3889 or else NT (N).Nkind = N_Package_Instantiation
3890 or else NT (N).Nkind = N_Procedure_Instantiation);
3891 Set_Node5 (N, Val); -- semantic field, no Parent set
3892 end Set_Instance_Spec;
3894 procedure Set_Intval
3895 (N : Node_Id; Val : Uint) is
3897 pragma Assert (False
3898 or else NT (N).Nkind = N_Integer_Literal);
3902 procedure Set_Is_Asynchronous_Call_Block
3903 (N : Node_Id; Val : Boolean := True) is
3905 pragma Assert (False
3906 or else NT (N).Nkind = N_Block_Statement);
3908 end Set_Is_Asynchronous_Call_Block;
3910 procedure Set_Is_Component_Left_Opnd
3911 (N : Node_Id; Val : Boolean := True) is
3913 pragma Assert (False
3914 or else NT (N).Nkind = N_Op_Concat);
3915 Set_Flag13 (N, Val);
3916 end Set_Is_Component_Left_Opnd;
3918 procedure Set_Is_Component_Right_Opnd
3919 (N : Node_Id; Val : Boolean := True) is
3921 pragma Assert (False
3922 or else NT (N).Nkind = N_Op_Concat);
3923 Set_Flag14 (N, Val);
3924 end Set_Is_Component_Right_Opnd;
3926 procedure Set_Is_Controlling_Actual
3927 (N : Node_Id; Val : Boolean := True) is
3929 pragma Assert (False
3930 or else NT (N).Nkind in N_Subexpr);
3931 Set_Flag16 (N, Val);
3932 end Set_Is_Controlling_Actual;
3934 procedure Set_Is_In_Discriminant_Check
3935 (N : Node_Id; Val : Boolean := True) is
3937 pragma Assert (False
3938 or else NT (N).Nkind = N_Selected_Component);
3939 Set_Flag11 (N, Val);
3940 end Set_Is_In_Discriminant_Check;
3942 procedure Set_Is_Machine_Number
3943 (N : Node_Id; Val : Boolean := True) is
3945 pragma Assert (False
3946 or else NT (N).Nkind = N_Real_Literal);
3947 Set_Flag11 (N, Val);
3948 end Set_Is_Machine_Number;
3950 procedure Set_Is_Null_Loop
3951 (N : Node_Id; Val : Boolean := True) is
3953 pragma Assert (False
3954 or else NT (N).Nkind = N_Loop_Statement);
3955 Set_Flag16 (N, Val);
3956 end Set_Is_Null_Loop;
3958 procedure Set_Is_Overloaded
3959 (N : Node_Id; Val : Boolean := True) is
3961 pragma Assert (False
3962 or else NT (N).Nkind in N_Subexpr);
3964 end Set_Is_Overloaded;
3966 procedure Set_Is_Power_Of_2_For_Shift
3967 (N : Node_Id; Val : Boolean := True) is
3969 pragma Assert (False
3970 or else NT (N).Nkind = N_Op_Expon);
3971 Set_Flag13 (N, Val);
3972 end Set_Is_Power_Of_2_For_Shift;
3974 procedure Set_Is_Protected_Subprogram_Body
3975 (N : Node_Id; Val : Boolean := True) is
3977 pragma Assert (False
3978 or else NT (N).Nkind = N_Subprogram_Body);
3980 end Set_Is_Protected_Subprogram_Body;
3982 procedure Set_Is_Static_Expression
3983 (N : Node_Id; Val : Boolean := True) is
3985 pragma Assert (False
3986 or else NT (N).Nkind in N_Subexpr);
3988 end Set_Is_Static_Expression;
3990 procedure Set_Is_Subprogram_Descriptor
3991 (N : Node_Id; Val : Boolean := True) is
3993 pragma Assert (False
3994 or else NT (N).Nkind = N_Object_Declaration);
3995 Set_Flag16 (N, Val);
3996 end Set_Is_Subprogram_Descriptor;
3998 procedure Set_Is_Task_Allocation_Block
3999 (N : Node_Id; Val : Boolean := True) is
4001 pragma Assert (False
4002 or else NT (N).Nkind = N_Block_Statement);
4004 end Set_Is_Task_Allocation_Block;
4006 procedure Set_Is_Task_Master
4007 (N : Node_Id; Val : Boolean := True) is
4009 pragma Assert (False
4010 or else NT (N).Nkind = N_Block_Statement
4011 or else NT (N).Nkind = N_Subprogram_Body
4012 or else NT (N).Nkind = N_Task_Body);
4014 end Set_Is_Task_Master;
4016 procedure Set_Iteration_Scheme
4017 (N : Node_Id; Val : Node_Id) is
4019 pragma Assert (False
4020 or else NT (N).Nkind = N_Loop_Statement);
4021 Set_Node2_With_Parent (N, Val);
4022 end Set_Iteration_Scheme;
4025 (N : Node_Id; Val : Entity_Id) is
4027 pragma Assert (False
4028 or else NT (N).Nkind = N_Itype_Reference);
4029 Set_Node1 (N, Val); -- no parent, semantic field
4032 procedure Set_Kill_Range_Check
4033 (N : Node_Id; Val : Boolean := True) is
4035 pragma Assert (False
4036 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4037 Set_Flag11 (N, Val);
4038 end Set_Kill_Range_Check;
4040 procedure Set_Label_Construct
4041 (N : Node_Id; Val : Node_Id) is
4043 pragma Assert (False
4044 or else NT (N).Nkind = N_Implicit_Label_Declaration);
4045 Set_Node2 (N, Val); -- semantic field, no parent set
4046 end Set_Label_Construct;
4048 procedure Set_Last_Bit
4049 (N : Node_Id; Val : Node_Id) is
4051 pragma Assert (False
4052 or else NT (N).Nkind = N_Component_Clause);
4053 Set_Node4_With_Parent (N, Val);
4056 procedure Set_Last_Name
4057 (N : Node_Id; Val : Boolean := True) is
4059 pragma Assert (False
4060 or else NT (N).Nkind = N_With_Clause);
4064 procedure Set_Left_Opnd
4065 (N : Node_Id; Val : Node_Id) is
4067 pragma Assert (False
4068 or else NT (N).Nkind = N_And_Then
4069 or else NT (N).Nkind = N_In
4070 or else NT (N).Nkind = N_Not_In
4071 or else NT (N).Nkind = N_Or_Else
4072 or else NT (N).Nkind in N_Binary_Op);
4073 Set_Node2_With_Parent (N, Val);
4076 procedure Set_Library_Unit
4077 (N : Node_Id; Val : Node_Id) is
4079 pragma Assert (False
4080 or else NT (N).Nkind = N_Compilation_Unit
4081 or else NT (N).Nkind = N_Package_Body_Stub
4082 or else NT (N).Nkind = N_Protected_Body_Stub
4083 or else NT (N).Nkind = N_Subprogram_Body_Stub
4084 or else NT (N).Nkind = N_Task_Body_Stub
4085 or else NT (N).Nkind = N_With_Clause);
4086 Set_Node4 (N, Val); -- semantic field, no parent set
4087 end Set_Library_Unit;
4089 procedure Set_Limited_View_Installed
4090 (N : Node_Id; Val : Boolean := True) is
4092 pragma Assert (False
4093 or else NT (N).Nkind = N_Package_Specification
4094 or else NT (N).Nkind = N_With_Clause);
4095 Set_Flag18 (N, Val);
4096 end Set_Limited_View_Installed;
4098 procedure Set_Limited_Present
4099 (N : Node_Id; Val : Boolean := True) is
4101 pragma Assert (False
4102 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4103 or else NT (N).Nkind = N_Private_Type_Declaration
4104 or else NT (N).Nkind = N_Record_Definition
4105 or else NT (N).Nkind = N_With_Clause);
4106 Set_Flag17 (N, Val);
4107 end Set_Limited_Present;
4109 procedure Set_Literals
4110 (N : Node_Id; Val : List_Id) is
4112 pragma Assert (False
4113 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4114 Set_List1_With_Parent (N, Val);
4117 procedure Set_Loop_Actions
4118 (N : Node_Id; Val : List_Id) is
4120 pragma Assert (False
4121 or else NT (N).Nkind = N_Component_Association);
4122 Set_List2 (N, Val); -- semantic field, no parent set
4123 end Set_Loop_Actions;
4125 procedure Set_Loop_Parameter_Specification
4126 (N : Node_Id; Val : Node_Id) is
4128 pragma Assert (False
4129 or else NT (N).Nkind = N_Iteration_Scheme);
4130 Set_Node4_With_Parent (N, Val);
4131 end Set_Loop_Parameter_Specification;
4133 procedure Set_Low_Bound
4134 (N : Node_Id; Val : Node_Id) is
4136 pragma Assert (False
4137 or else NT (N).Nkind = N_Range
4138 or else NT (N).Nkind = N_Real_Range_Specification
4139 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4140 Set_Node1_With_Parent (N, Val);
4143 procedure Set_Mod_Clause
4144 (N : Node_Id; Val : Node_Id) is
4146 pragma Assert (False
4147 or else NT (N).Nkind = N_Record_Representation_Clause);
4148 Set_Node2_With_Parent (N, Val);
4151 procedure Set_More_Ids
4152 (N : Node_Id; Val : Boolean := True) is
4154 pragma Assert (False
4155 or else NT (N).Nkind = N_Component_Declaration
4156 or else NT (N).Nkind = N_Discriminant_Specification
4157 or else NT (N).Nkind = N_Exception_Declaration
4158 or else NT (N).Nkind = N_Formal_Object_Declaration
4159 or else NT (N).Nkind = N_Number_Declaration
4160 or else NT (N).Nkind = N_Object_Declaration
4161 or else NT (N).Nkind = N_Parameter_Specification);
4165 procedure Set_Must_Be_Byte_Aligned
4166 (N : Node_Id; Val : Boolean := True) is
4168 pragma Assert (False
4169 or else NT (N).Nkind = N_Attribute_Reference);
4170 Set_Flag14 (N, Val);
4171 end Set_Must_Be_Byte_Aligned;
4173 procedure Set_Must_Not_Freeze
4174 (N : Node_Id; Val : Boolean := True) is
4176 pragma Assert (False
4177 or else NT (N).Nkind = N_Subtype_Indication
4178 or else NT (N).Nkind in N_Subexpr);
4180 end Set_Must_Not_Freeze;
4183 (N : Node_Id; Val : Node_Id) is
4185 pragma Assert (False
4186 or else NT (N).Nkind = N_Assignment_Statement
4187 or else NT (N).Nkind = N_Attribute_Definition_Clause
4188 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4189 or else NT (N).Nkind = N_Designator
4190 or else NT (N).Nkind = N_Entry_Call_Statement
4191 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4192 or else NT (N).Nkind = N_Exit_Statement
4193 or else NT (N).Nkind = N_Formal_Package_Declaration
4194 or else NT (N).Nkind = N_Function_Call
4195 or else NT (N).Nkind = N_Function_Instantiation
4196 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4197 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4198 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4199 or else NT (N).Nkind = N_Goto_Statement
4200 or else NT (N).Nkind = N_Object_Renaming_Declaration
4201 or else NT (N).Nkind = N_Package_Instantiation
4202 or else NT (N).Nkind = N_Package_Renaming_Declaration
4203 or else NT (N).Nkind = N_Procedure_Call_Statement
4204 or else NT (N).Nkind = N_Procedure_Instantiation
4205 or else NT (N).Nkind = N_Raise_Statement
4206 or else NT (N).Nkind = N_Requeue_Statement
4207 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4208 or else NT (N).Nkind = N_Subunit
4209 or else NT (N).Nkind = N_Variant_Part
4210 or else NT (N).Nkind = N_With_Clause
4211 or else NT (N).Nkind = N_With_Type_Clause);
4212 Set_Node2_With_Parent (N, Val);
4216 (N : Node_Id; Val : List_Id) is
4218 pragma Assert (False
4219 or else NT (N).Nkind = N_Abort_Statement
4220 or else NT (N).Nkind = N_Use_Package_Clause);
4221 Set_List2_With_Parent (N, Val);
4224 procedure Set_Next_Entity
4225 (N : Node_Id; Val : Node_Id) is
4227 pragma Assert (False
4228 or else NT (N).Nkind = N_Defining_Character_Literal
4229 or else NT (N).Nkind = N_Defining_Identifier
4230 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4231 Set_Node2 (N, Val); -- semantic field, no parent set
4232 end Set_Next_Entity;
4234 procedure Set_Next_Named_Actual
4235 (N : Node_Id; Val : Node_Id) is
4237 pragma Assert (False
4238 or else NT (N).Nkind = N_Parameter_Association);
4239 Set_Node4 (N, Val); -- semantic field, no parent set
4240 end Set_Next_Named_Actual;
4242 procedure Set_Next_Rep_Item
4243 (N : Node_Id; Val : Node_Id) is
4245 pragma Assert (False
4246 or else NT (N).Nkind = N_Attribute_Definition_Clause
4247 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4248 or else NT (N).Nkind = N_Pragma
4249 or else NT (N).Nkind = N_Record_Representation_Clause);
4250 Set_Node4 (N, Val); -- semantic field, no parent set
4251 end Set_Next_Rep_Item;
4253 procedure Set_Next_Use_Clause
4254 (N : Node_Id; Val : Node_Id) is
4256 pragma Assert (False
4257 or else NT (N).Nkind = N_Use_Package_Clause
4258 or else NT (N).Nkind = N_Use_Type_Clause);
4259 Set_Node3 (N, Val); -- semantic field, no parent set
4260 end Set_Next_Use_Clause;
4262 procedure Set_No_Ctrl_Actions
4263 (N : Node_Id; Val : Boolean := True) is
4265 pragma Assert (False
4266 or else NT (N).Nkind = N_Assignment_Statement);
4268 end Set_No_Ctrl_Actions;
4270 procedure Set_No_Elaboration_Check
4271 (N : Node_Id; Val : Boolean := True) is
4273 pragma Assert (False
4274 or else NT (N).Nkind = N_Function_Call
4275 or else NT (N).Nkind = N_Procedure_Call_Statement);
4276 Set_Flag14 (N, Val);
4277 end Set_No_Elaboration_Check;
4279 procedure Set_No_Entities_Ref_In_Spec
4280 (N : Node_Id; Val : Boolean := True) is
4282 pragma Assert (False
4283 or else NT (N).Nkind = N_With_Clause);
4285 end Set_No_Entities_Ref_In_Spec;
4287 procedure Set_No_Initialization
4288 (N : Node_Id; Val : Boolean := True) is
4290 pragma Assert (False
4291 or else NT (N).Nkind = N_Allocator
4292 or else NT (N).Nkind = N_Object_Declaration);
4293 Set_Flag13 (N, Val);
4294 end Set_No_Initialization;
4296 procedure Set_No_Truncation
4297 (N : Node_Id; Val : Boolean := True) is
4299 pragma Assert (False
4300 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4301 Set_Flag17 (N, Val);
4302 end Set_No_Truncation;
4304 procedure Set_Null_Present
4305 (N : Node_Id; Val : Boolean := True) is
4307 pragma Assert (False
4308 or else NT (N).Nkind = N_Component_List
4309 or else NT (N).Nkind = N_Record_Definition);
4310 Set_Flag13 (N, Val);
4311 end Set_Null_Present;
4313 procedure Set_Null_Exclusion_Present
4314 (N : Node_Id; Val : Boolean := True) is
4316 pragma Assert (False
4317 or else NT (N).Nkind = N_Access_Definition
4318 or else NT (N).Nkind = N_Access_Function_Definition
4319 or else NT (N).Nkind = N_Access_Procedure_Definition
4320 or else NT (N).Nkind = N_Access_To_Object_Definition
4321 or else NT (N).Nkind = N_Allocator
4322 or else NT (N).Nkind = N_Component_Definition
4323 or else NT (N).Nkind = N_Derived_Type_Definition
4324 or else NT (N).Nkind = N_Discriminant_Specification
4325 or else NT (N).Nkind = N_Object_Declaration
4326 or else NT (N).Nkind = N_Parameter_Specification
4327 or else NT (N).Nkind = N_Subtype_Declaration);
4329 end Set_Null_Exclusion_Present;
4331 procedure Set_Null_Record_Present
4332 (N : Node_Id; Val : Boolean := True) is
4334 pragma Assert (False
4335 or else NT (N).Nkind = N_Aggregate
4336 or else NT (N).Nkind = N_Extension_Aggregate);
4337 Set_Flag17 (N, Val);
4338 end Set_Null_Record_Present;
4340 procedure Set_Object_Definition
4341 (N : Node_Id; Val : Node_Id) is
4343 pragma Assert (False
4344 or else NT (N).Nkind = N_Object_Declaration);
4345 Set_Node4_With_Parent (N, Val);
4346 end Set_Object_Definition;
4348 procedure Set_OK_For_Stream
4349 (N : Node_Id; Val : Boolean := True) is
4351 pragma Assert (False
4352 or else NT (N).Nkind = N_Attribute_Reference);
4354 end Set_OK_For_Stream;
4356 procedure Set_Original_Discriminant
4357 (N : Node_Id; Val : Node_Id) is
4359 pragma Assert (False
4360 or else NT (N).Nkind = N_Identifier);
4361 Set_Node2 (N, Val); -- semantic field, no parent set
4362 end Set_Original_Discriminant;
4364 procedure Set_Original_Entity
4365 (N : Node_Id; Val : Entity_Id) is
4367 pragma Assert (False
4368 or else NT (N).Nkind = N_Integer_Literal
4369 or else NT (N).Nkind = N_Real_Literal);
4370 Set_Node2 (N, Val); -- semantic field, no parent set
4371 end Set_Original_Entity;
4373 procedure Set_Others_Discrete_Choices
4374 (N : Node_Id; Val : List_Id) is
4376 pragma Assert (False
4377 or else NT (N).Nkind = N_Others_Choice);
4378 Set_List1_With_Parent (N, Val);
4379 end Set_Others_Discrete_Choices;
4381 procedure Set_Out_Present
4382 (N : Node_Id; Val : Boolean := True) is
4384 pragma Assert (False
4385 or else NT (N).Nkind = N_Formal_Object_Declaration
4386 or else NT (N).Nkind = N_Parameter_Specification);
4387 Set_Flag17 (N, Val);
4388 end Set_Out_Present;
4390 procedure Set_Parameter_Associations
4391 (N : Node_Id; Val : List_Id) is
4393 pragma Assert (False
4394 or else NT (N).Nkind = N_Entry_Call_Statement
4395 or else NT (N).Nkind = N_Function_Call
4396 or else NT (N).Nkind = N_Procedure_Call_Statement);
4397 Set_List3_With_Parent (N, Val);
4398 end Set_Parameter_Associations;
4400 procedure Set_Parameter_List_Truncated
4401 (N : Node_Id; Val : Boolean := True) is
4403 pragma Assert (False
4404 or else NT (N).Nkind = N_Function_Call
4405 or else NT (N).Nkind = N_Procedure_Call_Statement);
4406 Set_Flag17 (N, Val);
4407 end Set_Parameter_List_Truncated;
4409 procedure Set_Parameter_Specifications
4410 (N : Node_Id; Val : List_Id) is
4412 pragma Assert (False
4413 or else NT (N).Nkind = N_Accept_Statement
4414 or else NT (N).Nkind = N_Access_Function_Definition
4415 or else NT (N).Nkind = N_Access_Procedure_Definition
4416 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4417 or else NT (N).Nkind = N_Entry_Declaration
4418 or else NT (N).Nkind = N_Function_Specification
4419 or else NT (N).Nkind = N_Procedure_Specification);
4420 Set_List3_With_Parent (N, Val);
4421 end Set_Parameter_Specifications;
4423 procedure Set_Parameter_Type
4424 (N : Node_Id; Val : Node_Id) is
4426 pragma Assert (False
4427 or else NT (N).Nkind = N_Parameter_Specification);
4428 Set_Node2_With_Parent (N, Val);
4429 end Set_Parameter_Type;
4431 procedure Set_Parent_Spec
4432 (N : Node_Id; Val : Node_Id) is
4434 pragma Assert (False
4435 or else NT (N).Nkind = N_Function_Instantiation
4436 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4437 or else NT (N).Nkind = N_Generic_Package_Declaration
4438 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4439 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4440 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4441 or else NT (N).Nkind = N_Package_Declaration
4442 or else NT (N).Nkind = N_Package_Instantiation
4443 or else NT (N).Nkind = N_Package_Renaming_Declaration
4444 or else NT (N).Nkind = N_Procedure_Instantiation
4445 or else NT (N).Nkind = N_Subprogram_Declaration
4446 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4447 Set_Node4 (N, Val); -- semantic field, no parent set
4448 end Set_Parent_Spec;
4450 procedure Set_Position
4451 (N : Node_Id; Val : Node_Id) is
4453 pragma Assert (False
4454 or else NT (N).Nkind = N_Component_Clause);
4455 Set_Node2_With_Parent (N, Val);
4458 procedure Set_Pragma_Argument_Associations
4459 (N : Node_Id; Val : List_Id) is
4461 pragma Assert (False
4462 or else NT (N).Nkind = N_Pragma);
4463 Set_List2_With_Parent (N, Val);
4464 end Set_Pragma_Argument_Associations;
4466 procedure Set_Pragmas_After
4467 (N : Node_Id; Val : List_Id) is
4469 pragma Assert (False
4470 or else NT (N).Nkind = N_Compilation_Unit_Aux
4471 or else NT (N).Nkind = N_Terminate_Alternative);
4472 Set_List5_With_Parent (N, Val);
4473 end Set_Pragmas_After;
4475 procedure Set_Pragmas_Before
4476 (N : Node_Id; Val : List_Id) is
4478 pragma Assert (False
4479 or else NT (N).Nkind = N_Accept_Alternative
4480 or else NT (N).Nkind = N_Delay_Alternative
4481 or else NT (N).Nkind = N_Entry_Call_Alternative
4482 or else NT (N).Nkind = N_Mod_Clause
4483 or else NT (N).Nkind = N_Terminate_Alternative
4484 or else NT (N).Nkind = N_Triggering_Alternative);
4485 Set_List4_With_Parent (N, Val);
4486 end Set_Pragmas_Before;
4488 procedure Set_Prefix
4489 (N : Node_Id; Val : Node_Id) is
4491 pragma Assert (False
4492 or else NT (N).Nkind = N_Attribute_Reference
4493 or else NT (N).Nkind = N_Expanded_Name
4494 or else NT (N).Nkind = N_Explicit_Dereference
4495 or else NT (N).Nkind = N_Indexed_Component
4496 or else NT (N).Nkind = N_Reference
4497 or else NT (N).Nkind = N_Selected_Component
4498 or else NT (N).Nkind = N_Slice);
4499 Set_Node3_With_Parent (N, Val);
4502 procedure Set_Present_Expr
4503 (N : Node_Id; Val : Uint) is
4505 pragma Assert (False
4506 or else NT (N).Nkind = N_Variant);
4508 end Set_Present_Expr;
4510 procedure Set_Prev_Ids
4511 (N : Node_Id; Val : Boolean := True) is
4513 pragma Assert (False
4514 or else NT (N).Nkind = N_Component_Declaration
4515 or else NT (N).Nkind = N_Discriminant_Specification
4516 or else NT (N).Nkind = N_Exception_Declaration
4517 or else NT (N).Nkind = N_Formal_Object_Declaration
4518 or else NT (N).Nkind = N_Number_Declaration
4519 or else NT (N).Nkind = N_Object_Declaration
4520 or else NT (N).Nkind = N_Parameter_Specification);
4524 procedure Set_Print_In_Hex
4525 (N : Node_Id; Val : Boolean := True) is
4527 pragma Assert (False
4528 or else NT (N).Nkind = N_Integer_Literal);
4529 Set_Flag13 (N, Val);
4530 end Set_Print_In_Hex;
4532 procedure Set_Private_Declarations
4533 (N : Node_Id; Val : List_Id) is
4535 pragma Assert (False
4536 or else NT (N).Nkind = N_Package_Specification
4537 or else NT (N).Nkind = N_Protected_Definition
4538 or else NT (N).Nkind = N_Task_Definition);
4539 Set_List3_With_Parent (N, Val);
4540 end Set_Private_Declarations;
4542 procedure Set_Private_Present
4543 (N : Node_Id; Val : Boolean := True) is
4545 pragma Assert (False
4546 or else NT (N).Nkind = N_Compilation_Unit
4547 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4548 or else NT (N).Nkind = N_With_Clause);
4549 Set_Flag15 (N, Val);
4550 end Set_Private_Present;
4552 procedure Set_Procedure_To_Call
4553 (N : Node_Id; Val : Node_Id) is
4555 pragma Assert (False
4556 or else NT (N).Nkind = N_Allocator
4557 or else NT (N).Nkind = N_Free_Statement
4558 or else NT (N).Nkind = N_Return_Statement);
4559 Set_Node4 (N, Val); -- semantic field, no parent set
4560 end Set_Procedure_To_Call;
4562 procedure Set_Proper_Body
4563 (N : Node_Id; Val : Node_Id) is
4565 pragma Assert (False
4566 or else NT (N).Nkind = N_Subunit);
4567 Set_Node1_With_Parent (N, Val);
4568 end Set_Proper_Body;
4570 procedure Set_Protected_Definition
4571 (N : Node_Id; Val : Node_Id) is
4573 pragma Assert (False
4574 or else NT (N).Nkind = N_Protected_Type_Declaration
4575 or else NT (N).Nkind = N_Single_Protected_Declaration);
4576 Set_Node3_With_Parent (N, Val);
4577 end Set_Protected_Definition;
4579 procedure Set_Protected_Present
4580 (N : Node_Id; Val : Boolean := True) is
4582 pragma Assert (False
4583 or else NT (N).Nkind = N_Access_Function_Definition
4584 or else NT (N).Nkind = N_Access_Procedure_Definition);
4585 Set_Flag15 (N, Val);
4586 end Set_Protected_Present;
4588 procedure Set_Raises_Constraint_Error
4589 (N : Node_Id; Val : Boolean := True) is
4591 pragma Assert (False
4592 or else NT (N).Nkind in N_Subexpr);
4594 end Set_Raises_Constraint_Error;
4596 procedure Set_Range_Constraint
4597 (N : Node_Id; Val : Node_Id) is
4599 pragma Assert (False
4600 or else NT (N).Nkind = N_Delta_Constraint
4601 or else NT (N).Nkind = N_Digits_Constraint);
4602 Set_Node4_With_Parent (N, Val);
4603 end Set_Range_Constraint;
4605 procedure Set_Range_Expression
4606 (N : Node_Id; Val : Node_Id) is
4608 pragma Assert (False
4609 or else NT (N).Nkind = N_Range_Constraint);
4610 Set_Node4_With_Parent (N, Val);
4611 end Set_Range_Expression;
4613 procedure Set_Real_Range_Specification
4614 (N : Node_Id; Val : Node_Id) is
4616 pragma Assert (False
4617 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4618 or else NT (N).Nkind = N_Floating_Point_Definition
4619 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4620 Set_Node4_With_Parent (N, Val);
4621 end Set_Real_Range_Specification;
4623 procedure Set_Realval
4624 (N : Node_Id; Val : Ureal) is
4626 pragma Assert (False
4627 or else NT (N).Nkind = N_Real_Literal);
4628 Set_Ureal3 (N, Val);
4631 procedure Set_Reason
4632 (N : Node_Id; Val : Uint) is
4634 pragma Assert (False
4635 or else NT (N).Nkind = N_Raise_Constraint_Error
4636 or else NT (N).Nkind = N_Raise_Program_Error
4637 or else NT (N).Nkind = N_Raise_Storage_Error);
4641 procedure Set_Record_Extension_Part
4642 (N : Node_Id; Val : Node_Id) is
4644 pragma Assert (False
4645 or else NT (N).Nkind = N_Derived_Type_Definition);
4646 Set_Node3_With_Parent (N, Val);
4647 end Set_Record_Extension_Part;
4649 procedure Set_Redundant_Use
4650 (N : Node_Id; Val : Boolean := True) is
4652 pragma Assert (False
4653 or else NT (N).Nkind = N_Attribute_Reference
4654 or else NT (N).Nkind = N_Expanded_Name
4655 or else NT (N).Nkind = N_Identifier);
4656 Set_Flag13 (N, Val);
4657 end Set_Redundant_Use;
4659 procedure Set_Return_Type
4660 (N : Node_Id; Val : Node_Id) is
4662 pragma Assert (False
4663 or else NT (N).Nkind = N_Return_Statement);
4664 Set_Node2 (N, Val); -- semantic field, no parent set
4665 end Set_Return_Type;
4667 procedure Set_Reverse_Present
4668 (N : Node_Id; Val : Boolean := True) is
4670 pragma Assert (False
4671 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4672 Set_Flag15 (N, Val);
4673 end Set_Reverse_Present;
4675 procedure Set_Right_Opnd
4676 (N : Node_Id; Val : Node_Id) is
4678 pragma Assert (False
4679 or else NT (N).Nkind in N_Op
4680 or else NT (N).Nkind = N_And_Then
4681 or else NT (N).Nkind = N_In
4682 or else NT (N).Nkind = N_Not_In
4683 or else NT (N).Nkind = N_Or_Else);
4684 Set_Node3_With_Parent (N, Val);
4687 procedure Set_Rounded_Result
4688 (N : Node_Id; Val : Boolean := True) is
4690 pragma Assert (False
4691 or else NT (N).Nkind = N_Op_Divide
4692 or else NT (N).Nkind = N_Op_Multiply
4693 or else NT (N).Nkind = N_Type_Conversion);
4694 Set_Flag18 (N, Val);
4695 end Set_Rounded_Result;
4698 (N : Node_Id; Val : Node_Id) is
4700 pragma Assert (False
4701 or else NT (N).Nkind = N_Defining_Character_Literal
4702 or else NT (N).Nkind = N_Defining_Identifier
4703 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4704 Set_Node3 (N, Val); -- semantic field, no parent set
4707 procedure Set_Select_Alternatives
4708 (N : Node_Id; Val : List_Id) is
4710 pragma Assert (False
4711 or else NT (N).Nkind = N_Selective_Accept);
4712 Set_List1_With_Parent (N, Val);
4713 end Set_Select_Alternatives;
4715 procedure Set_Selector_Name
4716 (N : Node_Id; Val : Node_Id) is
4718 pragma Assert (False
4719 or else NT (N).Nkind = N_Expanded_Name
4720 or else NT (N).Nkind = N_Generic_Association
4721 or else NT (N).Nkind = N_Parameter_Association
4722 or else NT (N).Nkind = N_Selected_Component);
4723 Set_Node2_With_Parent (N, Val);
4724 end Set_Selector_Name;
4726 procedure Set_Selector_Names
4727 (N : Node_Id; Val : List_Id) is
4729 pragma Assert (False
4730 or else NT (N).Nkind = N_Discriminant_Association);
4731 Set_List1_With_Parent (N, Val);
4732 end Set_Selector_Names;
4734 procedure Set_Shift_Count_OK
4735 (N : Node_Id; Val : Boolean := True) is
4737 pragma Assert (False
4738 or else NT (N).Nkind = N_Op_Rotate_Left
4739 or else NT (N).Nkind = N_Op_Rotate_Right
4740 or else NT (N).Nkind = N_Op_Shift_Left
4741 or else NT (N).Nkind = N_Op_Shift_Right
4742 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4744 end Set_Shift_Count_OK;
4746 procedure Set_Source_Type
4747 (N : Node_Id; Val : Entity_Id) is
4749 pragma Assert (False
4750 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4751 Set_Node1 (N, Val); -- semantic field, no parent set
4752 end Set_Source_Type;
4754 procedure Set_Specification
4755 (N : Node_Id; Val : Node_Id) is
4757 pragma Assert (False
4758 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4759 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4760 or else NT (N).Nkind = N_Generic_Package_Declaration
4761 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4762 or else NT (N).Nkind = N_Package_Declaration
4763 or else NT (N).Nkind = N_Subprogram_Body
4764 or else NT (N).Nkind = N_Subprogram_Body_Stub
4765 or else NT (N).Nkind = N_Subprogram_Declaration
4766 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4767 Set_Node1_With_Parent (N, Val);
4768 end Set_Specification;
4770 procedure Set_Statements
4771 (N : Node_Id; Val : List_Id) is
4773 pragma Assert (False
4774 or else NT (N).Nkind = N_Abortable_Part
4775 or else NT (N).Nkind = N_Accept_Alternative
4776 or else NT (N).Nkind = N_Case_Statement_Alternative
4777 or else NT (N).Nkind = N_Delay_Alternative
4778 or else NT (N).Nkind = N_Entry_Call_Alternative
4779 or else NT (N).Nkind = N_Exception_Handler
4780 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4781 or else NT (N).Nkind = N_Loop_Statement
4782 or else NT (N).Nkind = N_Triggering_Alternative);
4783 Set_List3_With_Parent (N, Val);
4786 procedure Set_Static_Processing_OK
4787 (N : Node_Id; Val : Boolean) is
4789 pragma Assert (False
4790 or else NT (N).Nkind = N_Aggregate);
4792 end Set_Static_Processing_OK;
4794 procedure Set_Storage_Pool
4795 (N : Node_Id; Val : Node_Id) is
4797 pragma Assert (False
4798 or else NT (N).Nkind = N_Allocator
4799 or else NT (N).Nkind = N_Free_Statement
4800 or else NT (N).Nkind = N_Return_Statement);
4801 Set_Node1 (N, Val); -- semantic field, no parent set
4802 end Set_Storage_Pool;
4804 procedure Set_Strval
4805 (N : Node_Id; Val : String_Id) is
4807 pragma Assert (False
4808 or else NT (N).Nkind = N_Operator_Symbol
4809 or else NT (N).Nkind = N_String_Literal);
4813 procedure Set_Subtype_Indication
4814 (N : Node_Id; Val : Node_Id) is
4816 pragma Assert (False
4817 or else NT (N).Nkind = N_Access_To_Object_Definition
4818 or else NT (N).Nkind = N_Component_Definition
4819 or else NT (N).Nkind = N_Derived_Type_Definition
4820 or else NT (N).Nkind = N_Private_Extension_Declaration
4821 or else NT (N).Nkind = N_Subtype_Declaration);
4822 Set_Node5_With_Parent (N, Val);
4823 end Set_Subtype_Indication;
4825 procedure Set_Subtype_Mark
4826 (N : Node_Id; Val : Node_Id) is
4828 pragma Assert (False
4829 or else NT (N).Nkind = N_Access_Definition
4830 or else NT (N).Nkind = N_Access_Function_Definition
4831 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4832 or else NT (N).Nkind = N_Formal_Object_Declaration
4833 or else NT (N).Nkind = N_Function_Specification
4834 or else NT (N).Nkind = N_Object_Renaming_Declaration
4835 or else NT (N).Nkind = N_Qualified_Expression
4836 or else NT (N).Nkind = N_Subtype_Indication
4837 or else NT (N).Nkind = N_Type_Conversion
4838 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4839 Set_Node4_With_Parent (N, Val);
4840 end Set_Subtype_Mark;
4842 procedure Set_Subtype_Marks
4843 (N : Node_Id; Val : List_Id) is
4845 pragma Assert (False
4846 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4847 or else NT (N).Nkind = N_Use_Type_Clause);
4848 Set_List2_With_Parent (N, Val);
4849 end Set_Subtype_Marks;
4851 procedure Set_Tagged_Present
4852 (N : Node_Id; Val : Boolean := True) is
4854 pragma Assert (False
4855 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4856 or else NT (N).Nkind = N_Private_Type_Declaration
4857 or else NT (N).Nkind = N_Record_Definition
4858 or else NT (N).Nkind = N_With_Type_Clause);
4859 Set_Flag15 (N, Val);
4860 end Set_Tagged_Present;
4862 procedure Set_Target_Type
4863 (N : Node_Id; Val : Entity_Id) is
4865 pragma Assert (False
4866 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4867 Set_Node2 (N, Val); -- semantic field, no parent set
4868 end Set_Target_Type;
4870 procedure Set_Task_Body_Procedure
4871 (N : Node_Id; Val : Entity_Id) is
4873 pragma Assert (False
4874 or else NT (N).Nkind = N_Task_Type_Declaration);
4875 Set_Node2 (N, Val); -- semantic field, no parent set
4876 end Set_Task_Body_Procedure;
4878 procedure Set_Task_Definition
4879 (N : Node_Id; Val : Node_Id) is
4881 pragma Assert (False
4882 or else NT (N).Nkind = N_Single_Task_Declaration
4883 or else NT (N).Nkind = N_Task_Type_Declaration);
4884 Set_Node3_With_Parent (N, Val);
4885 end Set_Task_Definition;
4887 procedure Set_Then_Actions
4888 (N : Node_Id; Val : List_Id) is
4890 pragma Assert (False
4891 or else NT (N).Nkind = N_Conditional_Expression);
4892 Set_List2 (N, Val); -- semantic field, no parent set
4893 end Set_Then_Actions;
4895 procedure Set_Then_Statements
4896 (N : Node_Id; Val : List_Id) is
4898 pragma Assert (False
4899 or else NT (N).Nkind = N_Elsif_Part
4900 or else NT (N).Nkind = N_If_Statement);
4901 Set_List2_With_Parent (N, Val);
4902 end Set_Then_Statements;
4904 procedure Set_Treat_Fixed_As_Integer
4905 (N : Node_Id; Val : Boolean := True) is
4907 pragma Assert (False
4908 or else NT (N).Nkind = N_Op_Divide
4909 or else NT (N).Nkind = N_Op_Mod
4910 or else NT (N).Nkind = N_Op_Multiply
4911 or else NT (N).Nkind = N_Op_Rem);
4912 Set_Flag14 (N, Val);
4913 end Set_Treat_Fixed_As_Integer;
4915 procedure Set_Triggering_Alternative
4916 (N : Node_Id; Val : Node_Id) is
4918 pragma Assert (False
4919 or else NT (N).Nkind = N_Asynchronous_Select);
4920 Set_Node1_With_Parent (N, Val);
4921 end Set_Triggering_Alternative;
4923 procedure Set_Triggering_Statement
4924 (N : Node_Id; Val : Node_Id) is
4926 pragma Assert (False
4927 or else NT (N).Nkind = N_Triggering_Alternative);
4928 Set_Node1_With_Parent (N, Val);
4929 end Set_Triggering_Statement;
4931 procedure Set_TSS_Elist
4932 (N : Node_Id; Val : Elist_Id) is
4934 pragma Assert (False
4935 or else NT (N).Nkind = N_Freeze_Entity);
4936 Set_Elist3 (N, Val); -- semantic field, no parent set
4939 procedure Set_Type_Definition
4940 (N : Node_Id; Val : Node_Id) is
4942 pragma Assert (False
4943 or else NT (N).Nkind = N_Full_Type_Declaration);
4944 Set_Node3_With_Parent (N, Val);
4945 end Set_Type_Definition;
4948 (N : Node_Id; Val : Node_Id) is
4950 pragma Assert (False
4951 or else NT (N).Nkind = N_Compilation_Unit);
4952 Set_Node2_With_Parent (N, Val);
4955 procedure Set_Unknown_Discriminants_Present
4956 (N : Node_Id; Val : Boolean := True) is
4958 pragma Assert (False
4959 or else NT (N).Nkind = N_Formal_Type_Declaration
4960 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4961 or else NT (N).Nkind = N_Private_Extension_Declaration
4962 or else NT (N).Nkind = N_Private_Type_Declaration);
4963 Set_Flag13 (N, Val);
4964 end Set_Unknown_Discriminants_Present;
4966 procedure Set_Unreferenced_In_Spec
4967 (N : Node_Id; Val : Boolean := True) is
4969 pragma Assert (False
4970 or else NT (N).Nkind = N_With_Clause);
4972 end Set_Unreferenced_In_Spec;
4974 procedure Set_Variant_Part
4975 (N : Node_Id; Val : Node_Id) is
4977 pragma Assert (False
4978 or else NT (N).Nkind = N_Component_List);
4979 Set_Node4_With_Parent (N, Val);
4980 end Set_Variant_Part;
4982 procedure Set_Variants
4983 (N : Node_Id; Val : List_Id) is
4985 pragma Assert (False
4986 or else NT (N).Nkind = N_Variant_Part);
4987 Set_List1_With_Parent (N, Val);
4990 procedure Set_Visible_Declarations
4991 (N : Node_Id; Val : List_Id) is
4993 pragma Assert (False
4994 or else NT (N).Nkind = N_Package_Specification
4995 or else NT (N).Nkind = N_Protected_Definition
4996 or else NT (N).Nkind = N_Task_Definition);
4997 Set_List2_With_Parent (N, Val);
4998 end Set_Visible_Declarations;
5000 procedure Set_Was_Originally_Stub
5001 (N : Node_Id; Val : Boolean := True) is
5003 pragma Assert (False
5004 or else NT (N).Nkind = N_Package_Body
5005 or else NT (N).Nkind = N_Protected_Body
5006 or else NT (N).Nkind = N_Subprogram_Body
5007 or else NT (N).Nkind = N_Task_Body);
5008 Set_Flag13 (N, Val);
5009 end Set_Was_Originally_Stub;
5011 procedure Set_Zero_Cost_Handling
5012 (N : Node_Id; Val : Boolean := True) is
5014 pragma Assert (False
5015 or else NT (N).Nkind = N_Exception_Handler
5016 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
5018 end Set_Zero_Cost_Handling;
5020 -------------------------
5021 -- Iterator Procedures --
5022 -------------------------
5024 procedure Next_Entity (N : in out Node_Id) is
5026 N := Next_Entity (N);
5029 procedure Next_Named_Actual (N : in out Node_Id) is
5031 N := Next_Named_Actual (N);
5032 end Next_Named_Actual;
5034 procedure Next_Rep_Item (N : in out Node_Id) is
5036 N := Next_Rep_Item (N);
5039 procedure Next_Use_Clause (N : in out Node_Id) is
5041 N := Next_Use_Clause (N);
5042 end Next_Use_Clause;
5048 function End_Location (N : Node_Id) return Source_Ptr is
5049 L : constant Uint := End_Span (N);
5055 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
5059 ----------------------
5060 -- Set_End_Location --
5061 ----------------------
5063 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
5066 UI_From_Int (Int (S) - Int (Sloc (N))));
5067 end Set_End_Location;