1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2008, 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, 51 Franklin Street, Fifth Floor, --
20 -- Boston, MA 02110-1301, 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_Formal_Object_Declaration
126 or else NT (N).Nkind = N_Object_Renaming_Declaration);
128 end Access_Definition;
130 function Access_To_Subprogram_Definition
131 (N : Node_Id) return Node_Id is
134 or else NT (N).Nkind = N_Access_Definition);
136 end Access_To_Subprogram_Definition;
138 function Access_Types_To_Process
139 (N : Node_Id) return Elist_Id is
142 or else NT (N).Nkind = N_Freeze_Entity);
144 end Access_Types_To_Process;
147 (N : Node_Id) return List_Id is
150 or else NT (N).Nkind = N_And_Then
151 or else NT (N).Nkind = N_Compilation_Unit_Aux
152 or else NT (N).Nkind = N_Freeze_Entity
153 or else NT (N).Nkind = N_Or_Else);
157 function Activation_Chain_Entity
158 (N : Node_Id) return Node_Id is
161 or else NT (N).Nkind = N_Block_Statement
162 or else NT (N).Nkind = N_Entry_Body
163 or else NT (N).Nkind = N_Generic_Package_Declaration
164 or else NT (N).Nkind = N_Package_Declaration
165 or else NT (N).Nkind = N_Subprogram_Body
166 or else NT (N).Nkind = N_Task_Body);
168 end Activation_Chain_Entity;
170 function Acts_As_Spec
171 (N : Node_Id) return Boolean is
174 or else NT (N).Nkind = N_Compilation_Unit
175 or else NT (N).Nkind = N_Subprogram_Body);
179 function Actual_Designated_Subtype
180 (N : Node_Id) return Node_Id is
183 or else NT (N).Nkind = N_Explicit_Dereference
184 or else NT (N).Nkind = N_Free_Statement);
186 end Actual_Designated_Subtype;
188 function Address_Warning_Posted
189 (N : Node_Id) return Boolean is
192 or else NT (N).Nkind = N_Attribute_Definition_Clause);
194 end Address_Warning_Posted;
196 function Aggregate_Bounds
197 (N : Node_Id) return Node_Id is
200 or else NT (N).Nkind = N_Aggregate);
202 end Aggregate_Bounds;
204 function Aliased_Present
205 (N : Node_Id) return Boolean is
208 or else NT (N).Nkind = N_Component_Definition
209 or else NT (N).Nkind = N_Object_Declaration);
214 (N : Node_Id) return Boolean is
217 or else NT (N).Nkind = N_Others_Choice);
222 (N : Node_Id) return Boolean is
225 or else NT (N).Nkind = N_Access_Definition
226 or else NT (N).Nkind = N_Access_To_Object_Definition);
230 function Alternatives
231 (N : Node_Id) return List_Id is
234 or else NT (N).Nkind = N_Case_Statement);
238 function Ancestor_Part
239 (N : Node_Id) return Node_Id is
242 or else NT (N).Nkind = N_Extension_Aggregate);
246 function Array_Aggregate
247 (N : Node_Id) return Node_Id is
250 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
254 function Assignment_OK
255 (N : Node_Id) return Boolean is
258 or else NT (N).Nkind = N_Object_Declaration
259 or else NT (N).Nkind in N_Subexpr);
263 function Associated_Node
264 (N : Node_Id) return Node_Id is
267 or else NT (N).Nkind in N_Has_Entity
268 or else NT (N).Nkind = N_Aggregate
269 or else NT (N).Nkind = N_Extension_Aggregate
270 or else NT (N).Nkind = N_Selected_Component);
275 (N : Node_Id) return Node_Id is
278 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
282 function Attribute_Name
283 (N : Node_Id) return Name_Id is
286 or else NT (N).Nkind = N_Attribute_Reference);
290 function Aux_Decls_Node
291 (N : Node_Id) return Node_Id is
294 or else NT (N).Nkind = N_Compilation_Unit);
298 function Backwards_OK
299 (N : Node_Id) return Boolean is
302 or else NT (N).Nkind = N_Assignment_Statement);
306 function Bad_Is_Detected
307 (N : Node_Id) return Boolean is
310 or else NT (N).Nkind = N_Subprogram_Body);
314 function Body_Required
315 (N : Node_Id) return Boolean is
318 or else NT (N).Nkind = N_Compilation_Unit);
322 function Body_To_Inline
323 (N : Node_Id) return Node_Id is
326 or else NT (N).Nkind = N_Subprogram_Declaration);
331 (N : Node_Id) return Boolean is
334 or else NT (N).Nkind = N_Component_Association
335 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
336 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
337 or else NT (N).Nkind = N_Formal_Package_Declaration
338 or else NT (N).Nkind = N_Generic_Association);
343 (N : Node_Id) return Boolean is
346 or else NT (N).Nkind = N_Extended_Return_Statement
347 or else NT (N).Nkind = N_Return_Statement);
351 function Char_Literal_Value
352 (N : Node_Id) return Uint is
355 or else NT (N).Nkind = N_Character_Literal);
357 end Char_Literal_Value;
360 (N : Node_Id) return Name_Id is
363 or else NT (N).Nkind in N_Has_Chars);
367 function Check_Address_Alignment
368 (N : Node_Id) return Boolean is
371 or else NT (N).Nkind = N_Attribute_Definition_Clause);
373 end Check_Address_Alignment;
375 function Choice_Parameter
376 (N : Node_Id) return Node_Id is
379 or else NT (N).Nkind = N_Exception_Handler);
381 end Choice_Parameter;
384 (N : Node_Id) return List_Id is
387 or else NT (N).Nkind = N_Component_Association);
391 function Coextensions
392 (N : Node_Id) return Elist_Id is
395 or else NT (N).Nkind = N_Allocator);
399 function Comes_From_Extended_Return_Statement
400 (N : Node_Id) return Boolean is
403 or else NT (N).Nkind = N_Return_Statement);
405 end Comes_From_Extended_Return_Statement;
407 function Compile_Time_Known_Aggregate
408 (N : Node_Id) return Boolean is
411 or else NT (N).Nkind = N_Aggregate);
413 end Compile_Time_Known_Aggregate;
415 function Component_Associations
416 (N : Node_Id) return List_Id is
419 or else NT (N).Nkind = N_Aggregate
420 or else NT (N).Nkind = N_Extension_Aggregate);
422 end Component_Associations;
424 function Component_Clauses
425 (N : Node_Id) return List_Id is
428 or else NT (N).Nkind = N_Record_Representation_Clause);
430 end Component_Clauses;
432 function Component_Definition
433 (N : Node_Id) return Node_Id is
436 or else NT (N).Nkind = N_Component_Declaration
437 or else NT (N).Nkind = N_Constrained_Array_Definition
438 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
440 end Component_Definition;
442 function Component_Items
443 (N : Node_Id) return List_Id is
446 or else NT (N).Nkind = N_Component_List);
450 function Component_List
451 (N : Node_Id) return Node_Id is
454 or else NT (N).Nkind = N_Record_Definition
455 or else NT (N).Nkind = N_Variant);
459 function Component_Name
460 (N : Node_Id) return Node_Id is
463 or else NT (N).Nkind = N_Component_Clause);
468 (N : Node_Id) return Node_Id is
471 or else NT (N).Nkind = N_Accept_Alternative
472 or else NT (N).Nkind = N_Delay_Alternative
473 or else NT (N).Nkind = N_Elsif_Part
474 or else NT (N).Nkind = N_Entry_Body_Formal_Part
475 or else NT (N).Nkind = N_Exit_Statement
476 or else NT (N).Nkind = N_If_Statement
477 or else NT (N).Nkind = N_Iteration_Scheme
478 or else NT (N).Nkind = N_Raise_Constraint_Error
479 or else NT (N).Nkind = N_Raise_Program_Error
480 or else NT (N).Nkind = N_Raise_Storage_Error
481 or else NT (N).Nkind = N_Terminate_Alternative);
485 function Condition_Actions
486 (N : Node_Id) return List_Id is
489 or else NT (N).Nkind = N_Elsif_Part
490 or else NT (N).Nkind = N_Iteration_Scheme);
492 end Condition_Actions;
494 function Config_Pragmas
495 (N : Node_Id) return List_Id is
498 or else NT (N).Nkind = N_Compilation_Unit_Aux);
502 function Constant_Present
503 (N : Node_Id) return Boolean is
506 or else NT (N).Nkind = N_Access_Definition
507 or else NT (N).Nkind = N_Access_To_Object_Definition
508 or else NT (N).Nkind = N_Object_Declaration);
510 end Constant_Present;
513 (N : Node_Id) return Node_Id is
516 or else NT (N).Nkind = N_Subtype_Indication);
521 (N : Node_Id) return List_Id is
524 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
528 function Context_Installed
529 (N : Node_Id) return Boolean is
532 or else NT (N).Nkind = N_With_Clause);
534 end Context_Installed;
536 function Context_Items
537 (N : Node_Id) return List_Id is
540 or else NT (N).Nkind = N_Compilation_Unit);
544 function Controlling_Argument
545 (N : Node_Id) return Node_Id is
548 or else NT (N).Nkind = N_Function_Call
549 or else NT (N).Nkind = N_Procedure_Call_Statement);
551 end Controlling_Argument;
553 function Conversion_OK
554 (N : Node_Id) return Boolean is
557 or else NT (N).Nkind = N_Type_Conversion);
561 function Corresponding_Body
562 (N : Node_Id) return Node_Id is
565 or else NT (N).Nkind = N_Entry_Declaration
566 or else NT (N).Nkind = N_Generic_Package_Declaration
567 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
568 or else NT (N).Nkind = N_Package_Body_Stub
569 or else NT (N).Nkind = N_Package_Declaration
570 or else NT (N).Nkind = N_Protected_Body_Stub
571 or else NT (N).Nkind = N_Protected_Type_Declaration
572 or else NT (N).Nkind = N_Subprogram_Body_Stub
573 or else NT (N).Nkind = N_Subprogram_Declaration
574 or else NT (N).Nkind = N_Task_Body_Stub
575 or else NT (N).Nkind = N_Task_Type_Declaration);
577 end Corresponding_Body;
579 function Corresponding_Formal_Spec
580 (N : Node_Id) return Node_Id is
583 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
585 end Corresponding_Formal_Spec;
587 function Corresponding_Generic_Association
588 (N : Node_Id) return Node_Id is
591 or else NT (N).Nkind = N_Object_Declaration
592 or else NT (N).Nkind = N_Object_Renaming_Declaration);
594 end Corresponding_Generic_Association;
596 function Corresponding_Integer_Value
597 (N : Node_Id) return Uint is
600 or else NT (N).Nkind = N_Real_Literal);
602 end Corresponding_Integer_Value;
604 function Corresponding_Spec
605 (N : Node_Id) return Node_Id is
608 or else NT (N).Nkind = N_Package_Body
609 or else NT (N).Nkind = N_Protected_Body
610 or else NT (N).Nkind = N_Subprogram_Body
611 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
612 or else NT (N).Nkind = N_Task_Body
613 or else NT (N).Nkind = N_With_Clause);
615 end Corresponding_Spec;
617 function Corresponding_Stub
618 (N : Node_Id) return Node_Id is
621 or else NT (N).Nkind = N_Subunit);
623 end Corresponding_Stub;
625 function Dcheck_Function
626 (N : Node_Id) return Entity_Id is
629 or else NT (N).Nkind = N_Variant);
633 function Debug_Statement
634 (N : Node_Id) return Node_Id is
637 or else NT (N).Nkind = N_Pragma);
641 function Declarations
642 (N : Node_Id) return List_Id is
645 or else NT (N).Nkind = N_Accept_Statement
646 or else NT (N).Nkind = N_Block_Statement
647 or else NT (N).Nkind = N_Compilation_Unit_Aux
648 or else NT (N).Nkind = N_Entry_Body
649 or else NT (N).Nkind = N_Package_Body
650 or else NT (N).Nkind = N_Protected_Body
651 or else NT (N).Nkind = N_Subprogram_Body
652 or else NT (N).Nkind = N_Task_Body);
656 function Default_Expression
657 (N : Node_Id) return Node_Id is
660 or else NT (N).Nkind = N_Formal_Object_Declaration
661 or else NT (N).Nkind = N_Parameter_Specification);
663 end Default_Expression;
665 function Default_Name
666 (N : Node_Id) return Node_Id is
669 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
670 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
674 function Defining_Identifier
675 (N : Node_Id) return Entity_Id is
678 or else NT (N).Nkind = N_Component_Declaration
679 or else NT (N).Nkind = N_Defining_Program_Unit_Name
680 or else NT (N).Nkind = N_Discriminant_Specification
681 or else NT (N).Nkind = N_Entry_Body
682 or else NT (N).Nkind = N_Entry_Declaration
683 or else NT (N).Nkind = N_Entry_Index_Specification
684 or else NT (N).Nkind = N_Exception_Declaration
685 or else NT (N).Nkind = N_Exception_Renaming_Declaration
686 or else NT (N).Nkind = N_Formal_Object_Declaration
687 or else NT (N).Nkind = N_Formal_Package_Declaration
688 or else NT (N).Nkind = N_Formal_Type_Declaration
689 or else NT (N).Nkind = N_Full_Type_Declaration
690 or else NT (N).Nkind = N_Implicit_Label_Declaration
691 or else NT (N).Nkind = N_Incomplete_Type_Declaration
692 or else NT (N).Nkind = N_Loop_Parameter_Specification
693 or else NT (N).Nkind = N_Number_Declaration
694 or else NT (N).Nkind = N_Object_Declaration
695 or else NT (N).Nkind = N_Object_Renaming_Declaration
696 or else NT (N).Nkind = N_Package_Body_Stub
697 or else NT (N).Nkind = N_Parameter_Specification
698 or else NT (N).Nkind = N_Private_Extension_Declaration
699 or else NT (N).Nkind = N_Private_Type_Declaration
700 or else NT (N).Nkind = N_Protected_Body
701 or else NT (N).Nkind = N_Protected_Body_Stub
702 or else NT (N).Nkind = N_Protected_Type_Declaration
703 or else NT (N).Nkind = N_Single_Protected_Declaration
704 or else NT (N).Nkind = N_Single_Task_Declaration
705 or else NT (N).Nkind = N_Subtype_Declaration
706 or else NT (N).Nkind = N_Task_Body
707 or else NT (N).Nkind = N_Task_Body_Stub
708 or else NT (N).Nkind = N_Task_Type_Declaration);
710 end Defining_Identifier;
712 function Defining_Unit_Name
713 (N : Node_Id) return Node_Id is
716 or else NT (N).Nkind = N_Function_Instantiation
717 or else NT (N).Nkind = N_Function_Specification
718 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
719 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
720 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
721 or else NT (N).Nkind = N_Package_Body
722 or else NT (N).Nkind = N_Package_Instantiation
723 or else NT (N).Nkind = N_Package_Renaming_Declaration
724 or else NT (N).Nkind = N_Package_Specification
725 or else NT (N).Nkind = N_Procedure_Instantiation
726 or else NT (N).Nkind = N_Procedure_Specification);
728 end Defining_Unit_Name;
730 function Delay_Alternative
731 (N : Node_Id) return Node_Id is
734 or else NT (N).Nkind = N_Timed_Entry_Call);
736 end Delay_Alternative;
738 function Delay_Statement
739 (N : Node_Id) return Node_Id is
742 or else NT (N).Nkind = N_Delay_Alternative);
746 function Delta_Expression
747 (N : Node_Id) return Node_Id is
750 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
751 or else NT (N).Nkind = N_Delta_Constraint
752 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
754 end Delta_Expression;
756 function Digits_Expression
757 (N : Node_Id) return Node_Id is
760 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
761 or else NT (N).Nkind = N_Digits_Constraint
762 or else NT (N).Nkind = N_Floating_Point_Definition);
764 end Digits_Expression;
766 function Discr_Check_Funcs_Built
767 (N : Node_Id) return Boolean is
770 or else NT (N).Nkind = N_Full_Type_Declaration);
772 end Discr_Check_Funcs_Built;
774 function Discrete_Choices
775 (N : Node_Id) return List_Id is
778 or else NT (N).Nkind = N_Case_Statement_Alternative
779 or else NT (N).Nkind = N_Variant);
781 end Discrete_Choices;
783 function Discrete_Range
784 (N : Node_Id) return Node_Id is
787 or else NT (N).Nkind = N_Slice);
791 function Discrete_Subtype_Definition
792 (N : Node_Id) return Node_Id is
795 or else NT (N).Nkind = N_Entry_Declaration
796 or else NT (N).Nkind = N_Entry_Index_Specification
797 or else NT (N).Nkind = N_Loop_Parameter_Specification);
799 end Discrete_Subtype_Definition;
801 function Discrete_Subtype_Definitions
802 (N : Node_Id) return List_Id is
805 or else NT (N).Nkind = N_Constrained_Array_Definition);
807 end Discrete_Subtype_Definitions;
809 function Discriminant_Specifications
810 (N : Node_Id) return List_Id is
813 or else NT (N).Nkind = N_Formal_Type_Declaration
814 or else NT (N).Nkind = N_Full_Type_Declaration
815 or else NT (N).Nkind = N_Incomplete_Type_Declaration
816 or else NT (N).Nkind = N_Private_Extension_Declaration
817 or else NT (N).Nkind = N_Private_Type_Declaration
818 or else NT (N).Nkind = N_Protected_Type_Declaration
819 or else NT (N).Nkind = N_Task_Type_Declaration);
821 end Discriminant_Specifications;
823 function Discriminant_Type
824 (N : Node_Id) return Node_Id is
827 or else NT (N).Nkind = N_Discriminant_Specification);
829 end Discriminant_Type;
831 function Do_Accessibility_Check
832 (N : Node_Id) return Boolean is
835 or else NT (N).Nkind = N_Parameter_Specification);
837 end Do_Accessibility_Check;
839 function Do_Discriminant_Check
840 (N : Node_Id) return Boolean is
843 or else NT (N).Nkind = N_Selected_Component);
845 end Do_Discriminant_Check;
847 function Do_Division_Check
848 (N : Node_Id) return Boolean is
851 or else NT (N).Nkind = N_Op_Divide
852 or else NT (N).Nkind = N_Op_Mod
853 or else NT (N).Nkind = N_Op_Rem);
855 end Do_Division_Check;
857 function Do_Length_Check
858 (N : Node_Id) return Boolean is
861 or else NT (N).Nkind = N_Assignment_Statement
862 or else NT (N).Nkind = N_Op_And
863 or else NT (N).Nkind = N_Op_Or
864 or else NT (N).Nkind = N_Op_Xor
865 or else NT (N).Nkind = N_Type_Conversion);
869 function Do_Overflow_Check
870 (N : Node_Id) return Boolean is
873 or else NT (N).Nkind in N_Op
874 or else NT (N).Nkind = N_Attribute_Reference
875 or else NT (N).Nkind = N_Type_Conversion);
877 end Do_Overflow_Check;
879 function Do_Range_Check
880 (N : Node_Id) return Boolean is
883 or else NT (N).Nkind in N_Subexpr);
887 function Do_Storage_Check
888 (N : Node_Id) return Boolean is
891 or else NT (N).Nkind = N_Allocator
892 or else NT (N).Nkind = N_Subprogram_Body);
894 end Do_Storage_Check;
896 function Do_Tag_Check
897 (N : Node_Id) return Boolean is
900 or else NT (N).Nkind = N_Assignment_Statement
901 or else NT (N).Nkind = N_Extended_Return_Statement
902 or else NT (N).Nkind = N_Function_Call
903 or else NT (N).Nkind = N_Procedure_Call_Statement
904 or else NT (N).Nkind = N_Return_Statement
905 or else NT (N).Nkind = N_Type_Conversion);
909 function Elaborate_All_Desirable
910 (N : Node_Id) return Boolean is
913 or else NT (N).Nkind = N_With_Clause);
915 end Elaborate_All_Desirable;
917 function Elaborate_All_Present
918 (N : Node_Id) return Boolean is
921 or else NT (N).Nkind = N_With_Clause);
923 end Elaborate_All_Present;
925 function Elaborate_Desirable
926 (N : Node_Id) return Boolean is
929 or else NT (N).Nkind = N_With_Clause);
931 end Elaborate_Desirable;
933 function Elaborate_Present
934 (N : Node_Id) return Boolean is
937 or else NT (N).Nkind = N_With_Clause);
939 end Elaborate_Present;
941 function Elaboration_Boolean
942 (N : Node_Id) return Node_Id is
945 or else NT (N).Nkind = N_Function_Specification
946 or else NT (N).Nkind = N_Procedure_Specification);
948 end Elaboration_Boolean;
950 function Else_Actions
951 (N : Node_Id) return List_Id is
954 or else NT (N).Nkind = N_Conditional_Expression);
958 function Else_Statements
959 (N : Node_Id) return List_Id is
962 or else NT (N).Nkind = N_Conditional_Entry_Call
963 or else NT (N).Nkind = N_If_Statement
964 or else NT (N).Nkind = N_Selective_Accept);
969 (N : Node_Id) return List_Id is
972 or else NT (N).Nkind = N_If_Statement);
976 function Enclosing_Variant
977 (N : Node_Id) return Node_Id is
980 or else NT (N).Nkind = N_Variant);
982 end Enclosing_Variant;
985 (N : Node_Id) return Node_Id is
988 or else NT (N).Nkind = N_Enumeration_Type_Definition
989 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
990 or else NT (N).Nkind = N_Loop_Statement
991 or else NT (N).Nkind = N_Package_Specification
992 or else NT (N).Nkind = N_Protected_Body
993 or else NT (N).Nkind = N_Protected_Definition
994 or else NT (N).Nkind = N_Record_Definition
995 or else NT (N).Nkind = N_Task_Definition);
1000 (N : Node_Id) return Uint is
1002 pragma Assert (False
1003 or else NT (N).Nkind = N_Case_Statement
1004 or else NT (N).Nkind = N_If_Statement);
1009 (N : Node_Id) return Node_Id is
1011 pragma Assert (False
1012 or else NT (N).Nkind in N_Has_Entity
1013 or else NT (N).Nkind = N_Freeze_Entity
1014 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1018 function Entity_Or_Associated_Node
1019 (N : Node_Id) return Node_Id is
1021 pragma Assert (False
1022 or else NT (N).Nkind in N_Has_Entity
1023 or else NT (N).Nkind = N_Freeze_Entity);
1025 end Entity_Or_Associated_Node;
1027 function Entry_Body_Formal_Part
1028 (N : Node_Id) return Node_Id is
1030 pragma Assert (False
1031 or else NT (N).Nkind = N_Entry_Body);
1033 end Entry_Body_Formal_Part;
1035 function Entry_Call_Alternative
1036 (N : Node_Id) return Node_Id is
1038 pragma Assert (False
1039 or else NT (N).Nkind = N_Conditional_Entry_Call
1040 or else NT (N).Nkind = N_Timed_Entry_Call);
1042 end Entry_Call_Alternative;
1044 function Entry_Call_Statement
1045 (N : Node_Id) return Node_Id is
1047 pragma Assert (False
1048 or else NT (N).Nkind = N_Entry_Call_Alternative);
1050 end Entry_Call_Statement;
1052 function Entry_Direct_Name
1053 (N : Node_Id) return Node_Id is
1055 pragma Assert (False
1056 or else NT (N).Nkind = N_Accept_Statement);
1058 end Entry_Direct_Name;
1060 function Entry_Index
1061 (N : Node_Id) return Node_Id is
1063 pragma Assert (False
1064 or else NT (N).Nkind = N_Accept_Statement);
1068 function Entry_Index_Specification
1069 (N : Node_Id) return Node_Id is
1071 pragma Assert (False
1072 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
1074 end Entry_Index_Specification;
1077 (N : Node_Id) return Node_Id is
1079 pragma Assert (False
1080 or else NT (N).Nkind in N_Has_Etype);
1084 function Exception_Choices
1085 (N : Node_Id) return List_Id is
1087 pragma Assert (False
1088 or else NT (N).Nkind = N_Exception_Handler);
1090 end Exception_Choices;
1092 function Exception_Handlers
1093 (N : Node_Id) return List_Id is
1095 pragma Assert (False
1096 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1098 end Exception_Handlers;
1100 function Exception_Junk
1101 (N : Node_Id) return Boolean is
1103 pragma Assert (False
1104 or else NT (N).Nkind = N_Block_Statement
1105 or else NT (N).Nkind = N_Goto_Statement
1106 or else NT (N).Nkind = N_Label
1107 or else NT (N).Nkind = N_Object_Declaration
1108 or else NT (N).Nkind = N_Subtype_Declaration);
1112 function Exception_Label
1113 (N : Node_Id) return Node_Id is
1115 pragma Assert (False
1116 or else NT (N).Nkind = N_Exception_Handler
1117 or else NT (N).Nkind = N_Push_Constraint_Error_Label
1118 or else NT (N).Nkind = N_Push_Program_Error_Label
1119 or else NT (N).Nkind = N_Push_Storage_Error_Label);
1121 end Exception_Label;
1123 function Expansion_Delayed
1124 (N : Node_Id) return Boolean is
1126 pragma Assert (False
1127 or else NT (N).Nkind = N_Aggregate
1128 or else NT (N).Nkind = N_Extension_Aggregate);
1130 end Expansion_Delayed;
1132 function Explicit_Actual_Parameter
1133 (N : Node_Id) return Node_Id is
1135 pragma Assert (False
1136 or else NT (N).Nkind = N_Parameter_Association);
1138 end Explicit_Actual_Parameter;
1140 function Explicit_Generic_Actual_Parameter
1141 (N : Node_Id) return Node_Id is
1143 pragma Assert (False
1144 or else NT (N).Nkind = N_Generic_Association);
1146 end Explicit_Generic_Actual_Parameter;
1149 (N : Node_Id) return Node_Id is
1151 pragma Assert (False
1152 or else NT (N).Nkind = N_Allocator
1153 or else NT (N).Nkind = N_Assignment_Statement
1154 or else NT (N).Nkind = N_At_Clause
1155 or else NT (N).Nkind = N_Attribute_Definition_Clause
1156 or else NT (N).Nkind = N_Case_Statement
1157 or else NT (N).Nkind = N_Code_Statement
1158 or else NT (N).Nkind = N_Component_Association
1159 or else NT (N).Nkind = N_Component_Declaration
1160 or else NT (N).Nkind = N_Delay_Relative_Statement
1161 or else NT (N).Nkind = N_Delay_Until_Statement
1162 or else NT (N).Nkind = N_Discriminant_Association
1163 or else NT (N).Nkind = N_Discriminant_Specification
1164 or else NT (N).Nkind = N_Exception_Declaration
1165 or else NT (N).Nkind = N_Free_Statement
1166 or else NT (N).Nkind = N_Mod_Clause
1167 or else NT (N).Nkind = N_Modular_Type_Definition
1168 or else NT (N).Nkind = N_Number_Declaration
1169 or else NT (N).Nkind = N_Object_Declaration
1170 or else NT (N).Nkind = N_Parameter_Specification
1171 or else NT (N).Nkind = N_Pragma_Argument_Association
1172 or else NT (N).Nkind = N_Qualified_Expression
1173 or else NT (N).Nkind = N_Raise_Statement
1174 or else NT (N).Nkind = N_Return_Statement
1175 or else NT (N).Nkind = N_Type_Conversion
1176 or else NT (N).Nkind = N_Unchecked_Expression
1177 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1181 function Expressions
1182 (N : Node_Id) return List_Id is
1184 pragma Assert (False
1185 or else NT (N).Nkind = N_Aggregate
1186 or else NT (N).Nkind = N_Attribute_Reference
1187 or else NT (N).Nkind = N_Conditional_Expression
1188 or else NT (N).Nkind = N_Extension_Aggregate
1189 or else NT (N).Nkind = N_Indexed_Component);
1194 (N : Node_Id) return Node_Id is
1196 pragma Assert (False
1197 or else NT (N).Nkind = N_Component_Clause);
1201 function First_Inlined_Subprogram
1202 (N : Node_Id) return Entity_Id is
1204 pragma Assert (False
1205 or else NT (N).Nkind = N_Compilation_Unit);
1207 end First_Inlined_Subprogram;
1210 (N : Node_Id) return Boolean is
1212 pragma Assert (False
1213 or else NT (N).Nkind = N_With_Clause);
1217 function First_Named_Actual
1218 (N : Node_Id) return Node_Id is
1220 pragma Assert (False
1221 or else NT (N).Nkind = N_Entry_Call_Statement
1222 or else NT (N).Nkind = N_Function_Call
1223 or else NT (N).Nkind = N_Procedure_Call_Statement);
1225 end First_Named_Actual;
1227 function First_Real_Statement
1228 (N : Node_Id) return Node_Id is
1230 pragma Assert (False
1231 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1233 end First_Real_Statement;
1235 function First_Subtype_Link
1236 (N : Node_Id) return Entity_Id is
1238 pragma Assert (False
1239 or else NT (N).Nkind = N_Freeze_Entity);
1241 end First_Subtype_Link;
1243 function Float_Truncate
1244 (N : Node_Id) return Boolean is
1246 pragma Assert (False
1247 or else NT (N).Nkind = N_Type_Conversion);
1251 function Formal_Type_Definition
1252 (N : Node_Id) return Node_Id is
1254 pragma Assert (False
1255 or else NT (N).Nkind = N_Formal_Type_Declaration);
1257 end Formal_Type_Definition;
1259 function Forwards_OK
1260 (N : Node_Id) return Boolean is
1262 pragma Assert (False
1263 or else NT (N).Nkind = N_Assignment_Statement);
1267 function From_At_End
1268 (N : Node_Id) return Boolean is
1270 pragma Assert (False
1271 or else NT (N).Nkind = N_Raise_Statement);
1275 function From_At_Mod
1276 (N : Node_Id) return Boolean is
1278 pragma Assert (False
1279 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1283 function From_Default
1284 (N : Node_Id) return Boolean is
1286 pragma Assert (False
1287 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1291 function Generic_Associations
1292 (N : Node_Id) return List_Id is
1294 pragma Assert (False
1295 or else NT (N).Nkind = N_Formal_Package_Declaration
1296 or else NT (N).Nkind = N_Function_Instantiation
1297 or else NT (N).Nkind = N_Package_Instantiation
1298 or else NT (N).Nkind = N_Procedure_Instantiation);
1300 end Generic_Associations;
1302 function Generic_Formal_Declarations
1303 (N : Node_Id) return List_Id is
1305 pragma Assert (False
1306 or else NT (N).Nkind = N_Generic_Package_Declaration
1307 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1309 end Generic_Formal_Declarations;
1311 function Generic_Parent
1312 (N : Node_Id) return Node_Id is
1314 pragma Assert (False
1315 or else NT (N).Nkind = N_Function_Specification
1316 or else NT (N).Nkind = N_Package_Specification
1317 or else NT (N).Nkind = N_Procedure_Specification);
1321 function Generic_Parent_Type
1322 (N : Node_Id) return Node_Id is
1324 pragma Assert (False
1325 or else NT (N).Nkind = N_Subtype_Declaration);
1327 end Generic_Parent_Type;
1329 function Handled_Statement_Sequence
1330 (N : Node_Id) return Node_Id is
1332 pragma Assert (False
1333 or else NT (N).Nkind = N_Accept_Statement
1334 or else NT (N).Nkind = N_Block_Statement
1335 or else NT (N).Nkind = N_Entry_Body
1336 or else NT (N).Nkind = N_Extended_Return_Statement
1337 or else NT (N).Nkind = N_Package_Body
1338 or else NT (N).Nkind = N_Subprogram_Body
1339 or else NT (N).Nkind = N_Task_Body);
1341 end Handled_Statement_Sequence;
1343 function Handler_List_Entry
1344 (N : Node_Id) return Node_Id is
1346 pragma Assert (False
1347 or else NT (N).Nkind = N_Object_Declaration);
1349 end Handler_List_Entry;
1351 function Has_Created_Identifier
1352 (N : Node_Id) return Boolean is
1354 pragma Assert (False
1355 or else NT (N).Nkind = N_Block_Statement
1356 or else NT (N).Nkind = N_Loop_Statement);
1358 end Has_Created_Identifier;
1360 function Has_Dynamic_Length_Check
1361 (N : Node_Id) return Boolean is
1364 end Has_Dynamic_Length_Check;
1366 function Has_Dynamic_Range_Check
1367 (N : Node_Id) return Boolean is
1370 end Has_Dynamic_Range_Check;
1372 function Has_Init_Expression
1373 (N : Node_Id) return Boolean is
1375 pragma Assert (False
1376 or else NT (N).Nkind = N_Object_Declaration);
1378 end Has_Init_Expression;
1380 function Has_Local_Raise
1381 (N : Node_Id) return Boolean is
1383 pragma Assert (False
1384 or else NT (N).Nkind = N_Exception_Handler);
1386 end Has_Local_Raise;
1388 function Has_No_Elaboration_Code
1389 (N : Node_Id) return Boolean is
1391 pragma Assert (False
1392 or else NT (N).Nkind = N_Compilation_Unit);
1394 end Has_No_Elaboration_Code;
1396 function Has_Priority_Pragma
1397 (N : Node_Id) return Boolean is
1399 pragma Assert (False
1400 or else NT (N).Nkind = N_Protected_Definition
1401 or else NT (N).Nkind = N_Subprogram_Body
1402 or else NT (N).Nkind = N_Task_Definition);
1404 end Has_Priority_Pragma;
1406 function Has_Private_View
1407 (N : Node_Id) return Boolean is
1409 pragma Assert (False
1410 or else NT (N).Nkind in N_Op
1411 or else NT (N).Nkind = N_Character_Literal
1412 or else NT (N).Nkind = N_Expanded_Name
1413 or else NT (N).Nkind = N_Identifier
1414 or else NT (N).Nkind = N_Operator_Symbol);
1416 end Has_Private_View;
1418 function Has_Relative_Deadline_Pragma
1419 (N : Node_Id) return Boolean is
1421 pragma Assert (False
1422 or else NT (N).Nkind = N_Subprogram_Body
1423 or else NT (N).Nkind = N_Task_Definition);
1425 end Has_Relative_Deadline_Pragma;
1427 function Has_Self_Reference
1428 (N : Node_Id) return Boolean is
1430 pragma Assert (False
1431 or else NT (N).Nkind = N_Aggregate
1432 or else NT (N).Nkind = N_Extension_Aggregate);
1434 end Has_Self_Reference;
1436 function Has_Storage_Size_Pragma
1437 (N : Node_Id) return Boolean is
1439 pragma Assert (False
1440 or else NT (N).Nkind = N_Task_Definition);
1442 end Has_Storage_Size_Pragma;
1444 function Has_Task_Info_Pragma
1445 (N : Node_Id) return Boolean is
1447 pragma Assert (False
1448 or else NT (N).Nkind = N_Task_Definition);
1450 end Has_Task_Info_Pragma;
1452 function Has_Task_Name_Pragma
1453 (N : Node_Id) return Boolean is
1455 pragma Assert (False
1456 or else NT (N).Nkind = N_Task_Definition);
1458 end Has_Task_Name_Pragma;
1460 function Has_Wide_Character
1461 (N : Node_Id) return Boolean is
1463 pragma Assert (False
1464 or else NT (N).Nkind = N_String_Literal);
1466 end Has_Wide_Character;
1468 function Hidden_By_Use_Clause
1469 (N : Node_Id) return Elist_Id is
1471 pragma Assert (False
1472 or else NT (N).Nkind = N_Use_Package_Clause
1473 or else NT (N).Nkind = N_Use_Type_Clause);
1475 end Hidden_By_Use_Clause;
1478 (N : Node_Id) return Node_Id is
1480 pragma Assert (False
1481 or else NT (N).Nkind = N_Range
1482 or else NT (N).Nkind = N_Real_Range_Specification
1483 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1488 (N : Node_Id) return Node_Id is
1490 pragma Assert (False
1491 or else NT (N).Nkind = N_At_Clause
1492 or else NT (N).Nkind = N_Block_Statement
1493 or else NT (N).Nkind = N_Designator
1494 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1495 or else NT (N).Nkind = N_Label
1496 or else NT (N).Nkind = N_Loop_Statement
1497 or else NT (N).Nkind = N_Record_Representation_Clause
1498 or else NT (N).Nkind = N_Subprogram_Info);
1502 function Implicit_With
1503 (N : Node_Id) return Boolean is
1505 pragma Assert (False
1506 or else NT (N).Nkind = N_With_Clause);
1510 function Interface_List
1511 (N : Node_Id) return List_Id is
1513 pragma Assert (False
1514 or else NT (N).Nkind = N_Derived_Type_Definition
1515 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
1516 or else NT (N).Nkind = N_Private_Extension_Declaration
1517 or else NT (N).Nkind = N_Protected_Type_Declaration
1518 or else NT (N).Nkind = N_Record_Definition
1519 or else NT (N).Nkind = N_Single_Protected_Declaration
1520 or else NT (N).Nkind = N_Single_Task_Declaration
1521 or else NT (N).Nkind = N_Task_Type_Declaration);
1525 function Interface_Present
1526 (N : Node_Id) return Boolean is
1528 pragma Assert (False
1529 or else NT (N).Nkind = N_Derived_Type_Definition
1530 or else NT (N).Nkind = N_Record_Definition);
1532 end Interface_Present;
1535 (N : Node_Id) return Boolean is
1537 pragma Assert (False
1538 or else NT (N).Nkind = N_Formal_Object_Declaration
1539 or else NT (N).Nkind = N_Parameter_Specification);
1543 function Includes_Infinities
1544 (N : Node_Id) return Boolean is
1546 pragma Assert (False
1547 or else NT (N).Nkind = N_Range);
1549 end Includes_Infinities;
1551 function Instance_Spec
1552 (N : Node_Id) return Node_Id is
1554 pragma Assert (False
1555 or else NT (N).Nkind = N_Formal_Package_Declaration
1556 or else NT (N).Nkind = N_Function_Instantiation
1557 or else NT (N).Nkind = N_Package_Instantiation
1558 or else NT (N).Nkind = N_Procedure_Instantiation);
1563 (N : Node_Id) return Uint is
1565 pragma Assert (False
1566 or else NT (N).Nkind = N_Integer_Literal);
1570 function Is_Asynchronous_Call_Block
1571 (N : Node_Id) return Boolean is
1573 pragma Assert (False
1574 or else NT (N).Nkind = N_Block_Statement);
1576 end Is_Asynchronous_Call_Block;
1578 function Is_Component_Left_Opnd
1579 (N : Node_Id) return Boolean is
1581 pragma Assert (False
1582 or else NT (N).Nkind = N_Op_Concat);
1584 end Is_Component_Left_Opnd;
1586 function Is_Component_Right_Opnd
1587 (N : Node_Id) return Boolean is
1589 pragma Assert (False
1590 or else NT (N).Nkind = N_Op_Concat);
1592 end Is_Component_Right_Opnd;
1594 function Is_Controlling_Actual
1595 (N : Node_Id) return Boolean is
1597 pragma Assert (False
1598 or else NT (N).Nkind in N_Subexpr);
1600 end Is_Controlling_Actual;
1602 function Is_Dynamic_Coextension
1603 (N : Node_Id) return Boolean is
1605 pragma Assert (False
1606 or else NT (N).Nkind = N_Allocator);
1608 end Is_Dynamic_Coextension;
1610 function Is_Entry_Barrier_Function
1611 (N : Node_Id) return Boolean is
1613 pragma Assert (False
1614 or else NT (N).Nkind = N_Subprogram_Body);
1616 end Is_Entry_Barrier_Function;
1618 function Is_Expanded_Build_In_Place_Call
1619 (N : Node_Id) return Boolean is
1621 pragma Assert (False
1622 or else NT (N).Nkind = N_Function_Call);
1624 end Is_Expanded_Build_In_Place_Call;
1626 function Is_Folded_In_Parser
1627 (N : Node_Id) return Boolean is
1629 pragma Assert (False
1630 or else NT (N).Nkind = N_String_Literal);
1632 end Is_Folded_In_Parser;
1634 function Is_In_Discriminant_Check
1635 (N : Node_Id) return Boolean is
1637 pragma Assert (False
1638 or else NT (N).Nkind = N_Selected_Component);
1640 end Is_In_Discriminant_Check;
1642 function Is_Machine_Number
1643 (N : Node_Id) return Boolean is
1645 pragma Assert (False
1646 or else NT (N).Nkind = N_Real_Literal);
1648 end Is_Machine_Number;
1650 function Is_Null_Loop
1651 (N : Node_Id) return Boolean is
1653 pragma Assert (False
1654 or else NT (N).Nkind = N_Loop_Statement);
1658 function Is_Overloaded
1659 (N : Node_Id) return Boolean is
1661 pragma Assert (False
1662 or else NT (N).Nkind in N_Subexpr);
1666 function Is_Power_Of_2_For_Shift
1667 (N : Node_Id) return Boolean is
1669 pragma Assert (False
1670 or else NT (N).Nkind = N_Op_Expon);
1672 end Is_Power_Of_2_For_Shift;
1674 function Is_Protected_Subprogram_Body
1675 (N : Node_Id) return Boolean is
1677 pragma Assert (False
1678 or else NT (N).Nkind = N_Subprogram_Body);
1680 end Is_Protected_Subprogram_Body;
1682 function Is_Static_Coextension
1683 (N : Node_Id) return Boolean is
1685 pragma Assert (False
1686 or else NT (N).Nkind = N_Allocator);
1688 end Is_Static_Coextension;
1690 function Is_Static_Expression
1691 (N : Node_Id) return Boolean is
1693 pragma Assert (False
1694 or else NT (N).Nkind in N_Subexpr);
1696 end Is_Static_Expression;
1698 function Is_Subprogram_Descriptor
1699 (N : Node_Id) return Boolean is
1701 pragma Assert (False
1702 or else NT (N).Nkind = N_Object_Declaration);
1704 end Is_Subprogram_Descriptor;
1706 function Is_Task_Allocation_Block
1707 (N : Node_Id) return Boolean is
1709 pragma Assert (False
1710 or else NT (N).Nkind = N_Block_Statement);
1712 end Is_Task_Allocation_Block;
1714 function Is_Task_Master
1715 (N : Node_Id) return Boolean is
1717 pragma Assert (False
1718 or else NT (N).Nkind = N_Block_Statement
1719 or else NT (N).Nkind = N_Subprogram_Body
1720 or else NT (N).Nkind = N_Task_Body);
1724 function Iteration_Scheme
1725 (N : Node_Id) return Node_Id is
1727 pragma Assert (False
1728 or else NT (N).Nkind = N_Loop_Statement);
1730 end Iteration_Scheme;
1733 (N : Node_Id) return Node_Id is
1735 pragma Assert (False
1736 or else NT (N).Nkind = N_Itype_Reference);
1740 function Kill_Range_Check
1741 (N : Node_Id) return Boolean is
1743 pragma Assert (False
1744 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1746 end Kill_Range_Check;
1748 function Label_Construct
1749 (N : Node_Id) return Node_Id is
1751 pragma Assert (False
1752 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1754 end Label_Construct;
1757 (N : Node_Id) return Node_Id is
1759 pragma Assert (False
1760 or else NT (N).Nkind = N_Component_Clause);
1765 (N : Node_Id) return Boolean is
1767 pragma Assert (False
1768 or else NT (N).Nkind = N_With_Clause);
1773 (N : Node_Id) return Node_Id is
1775 pragma Assert (False
1776 or else NT (N).Nkind = N_And_Then
1777 or else NT (N).Nkind = N_In
1778 or else NT (N).Nkind = N_Not_In
1779 or else NT (N).Nkind = N_Or_Else
1780 or else NT (N).Nkind in N_Binary_Op);
1784 function Library_Unit
1785 (N : Node_Id) return Node_Id is
1787 pragma Assert (False
1788 or else NT (N).Nkind = N_Compilation_Unit
1789 or else NT (N).Nkind = N_Package_Body_Stub
1790 or else NT (N).Nkind = N_Protected_Body_Stub
1791 or else NT (N).Nkind = N_Subprogram_Body_Stub
1792 or else NT (N).Nkind = N_Task_Body_Stub
1793 or else NT (N).Nkind = N_With_Clause);
1797 function Limited_View_Installed
1798 (N : Node_Id) return Boolean is
1800 pragma Assert (False
1801 or else NT (N).Nkind = N_Package_Specification
1802 or else NT (N).Nkind = N_With_Clause);
1804 end Limited_View_Installed;
1806 function Limited_Present
1807 (N : Node_Id) return Boolean is
1809 pragma Assert (False
1810 or else NT (N).Nkind = N_Derived_Type_Definition
1811 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
1812 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1813 or else NT (N).Nkind = N_Private_Extension_Declaration
1814 or else NT (N).Nkind = N_Private_Type_Declaration
1815 or else NT (N).Nkind = N_Record_Definition
1816 or else NT (N).Nkind = N_With_Clause);
1818 end Limited_Present;
1821 (N : Node_Id) return List_Id is
1823 pragma Assert (False
1824 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1828 function Local_Raise_Not_OK
1829 (N : Node_Id) return Boolean is
1831 pragma Assert (False
1832 or else NT (N).Nkind = N_Exception_Handler);
1834 end Local_Raise_Not_OK;
1836 function Local_Raise_Statements
1837 (N : Node_Id) return Elist_Id is
1839 pragma Assert (False
1840 or else NT (N).Nkind = N_Exception_Handler);
1842 end Local_Raise_Statements;
1844 function Loop_Actions
1845 (N : Node_Id) return List_Id is
1847 pragma Assert (False
1848 or else NT (N).Nkind = N_Component_Association);
1852 function Loop_Parameter_Specification
1853 (N : Node_Id) return Node_Id is
1855 pragma Assert (False
1856 or else NT (N).Nkind = N_Iteration_Scheme);
1858 end Loop_Parameter_Specification;
1861 (N : Node_Id) return Node_Id is
1863 pragma Assert (False
1864 or else NT (N).Nkind = N_Range
1865 or else NT (N).Nkind = N_Real_Range_Specification
1866 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1871 (N : Node_Id) return Node_Id is
1873 pragma Assert (False
1874 or else NT (N).Nkind = N_Record_Representation_Clause);
1879 (N : Node_Id) return Boolean is
1881 pragma Assert (False
1882 or else NT (N).Nkind = N_Component_Declaration
1883 or else NT (N).Nkind = N_Discriminant_Specification
1884 or else NT (N).Nkind = N_Exception_Declaration
1885 or else NT (N).Nkind = N_Formal_Object_Declaration
1886 or else NT (N).Nkind = N_Number_Declaration
1887 or else NT (N).Nkind = N_Object_Declaration
1888 or else NT (N).Nkind = N_Parameter_Specification);
1892 function Must_Be_Byte_Aligned
1893 (N : Node_Id) return Boolean is
1895 pragma Assert (False
1896 or else NT (N).Nkind = N_Attribute_Reference);
1898 end Must_Be_Byte_Aligned;
1900 function Must_Not_Freeze
1901 (N : Node_Id) return Boolean is
1903 pragma Assert (False
1904 or else NT (N).Nkind = N_Subtype_Indication
1905 or else NT (N).Nkind in N_Subexpr);
1907 end Must_Not_Freeze;
1909 function Must_Not_Override
1910 (N : Node_Id) return Boolean is
1912 pragma Assert (False
1913 or else NT (N).Nkind = N_Entry_Declaration
1914 or else NT (N).Nkind = N_Function_Instantiation
1915 or else NT (N).Nkind = N_Function_Specification
1916 or else NT (N).Nkind = N_Procedure_Instantiation
1917 or else NT (N).Nkind = N_Procedure_Specification);
1919 end Must_Not_Override;
1921 function Must_Override
1922 (N : Node_Id) return Boolean is
1924 pragma Assert (False
1925 or else NT (N).Nkind = N_Entry_Declaration
1926 or else NT (N).Nkind = N_Function_Instantiation
1927 or else NT (N).Nkind = N_Function_Specification
1928 or else NT (N).Nkind = N_Procedure_Instantiation
1929 or else NT (N).Nkind = N_Procedure_Specification);
1934 (N : Node_Id) return Node_Id is
1936 pragma Assert (False
1937 or else NT (N).Nkind = N_Assignment_Statement
1938 or else NT (N).Nkind = N_Attribute_Definition_Clause
1939 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1940 or else NT (N).Nkind = N_Designator
1941 or else NT (N).Nkind = N_Entry_Call_Statement
1942 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1943 or else NT (N).Nkind = N_Exit_Statement
1944 or else NT (N).Nkind = N_Formal_Package_Declaration
1945 or else NT (N).Nkind = N_Function_Call
1946 or else NT (N).Nkind = N_Function_Instantiation
1947 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1948 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1949 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1950 or else NT (N).Nkind = N_Goto_Statement
1951 or else NT (N).Nkind = N_Object_Renaming_Declaration
1952 or else NT (N).Nkind = N_Package_Instantiation
1953 or else NT (N).Nkind = N_Package_Renaming_Declaration
1954 or else NT (N).Nkind = N_Procedure_Call_Statement
1955 or else NT (N).Nkind = N_Procedure_Instantiation
1956 or else NT (N).Nkind = N_Raise_Statement
1957 or else NT (N).Nkind = N_Requeue_Statement
1958 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1959 or else NT (N).Nkind = N_Subunit
1960 or else NT (N).Nkind = N_Variant_Part
1961 or else NT (N).Nkind = N_With_Clause);
1966 (N : Node_Id) return List_Id is
1968 pragma Assert (False
1969 or else NT (N).Nkind = N_Abort_Statement
1970 or else NT (N).Nkind = N_Use_Package_Clause);
1974 function Next_Entity
1975 (N : Node_Id) return Node_Id is
1977 pragma Assert (False
1978 or else NT (N).Nkind = N_Defining_Character_Literal
1979 or else NT (N).Nkind = N_Defining_Identifier
1980 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1984 function Next_Named_Actual
1985 (N : Node_Id) return Node_Id is
1987 pragma Assert (False
1988 or else NT (N).Nkind = N_Parameter_Association);
1990 end Next_Named_Actual;
1992 function Next_Pragma
1993 (N : Node_Id) return Node_Id is
1995 pragma Assert (False
1996 or else NT (N).Nkind = N_Pragma);
2000 function Next_Rep_Item
2001 (N : Node_Id) return Node_Id is
2003 pragma Assert (False
2004 or else NT (N).Nkind = N_Attribute_Definition_Clause
2005 or else NT (N).Nkind = N_Enumeration_Representation_Clause
2006 or else NT (N).Nkind = N_Pragma
2007 or else NT (N).Nkind = N_Record_Representation_Clause);
2011 function Next_Use_Clause
2012 (N : Node_Id) return Node_Id is
2014 pragma Assert (False
2015 or else NT (N).Nkind = N_Use_Package_Clause
2016 or else NT (N).Nkind = N_Use_Type_Clause);
2018 end Next_Use_Clause;
2020 function No_Ctrl_Actions
2021 (N : Node_Id) return Boolean is
2023 pragma Assert (False
2024 or else NT (N).Nkind = N_Assignment_Statement);
2026 end No_Ctrl_Actions;
2028 function No_Elaboration_Check
2029 (N : Node_Id) return Boolean is
2031 pragma Assert (False
2032 or else NT (N).Nkind = N_Function_Call
2033 or else NT (N).Nkind = N_Procedure_Call_Statement);
2035 end No_Elaboration_Check;
2037 function No_Entities_Ref_In_Spec
2038 (N : Node_Id) return Boolean is
2040 pragma Assert (False
2041 or else NT (N).Nkind = N_With_Clause);
2043 end No_Entities_Ref_In_Spec;
2045 function No_Initialization
2046 (N : Node_Id) return Boolean is
2048 pragma Assert (False
2049 or else NT (N).Nkind = N_Allocator
2050 or else NT (N).Nkind = N_Object_Declaration);
2052 end No_Initialization;
2054 function No_Truncation
2055 (N : Node_Id) return Boolean is
2057 pragma Assert (False
2058 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2062 function Null_Present
2063 (N : Node_Id) return Boolean is
2065 pragma Assert (False
2066 or else NT (N).Nkind = N_Component_List
2067 or else NT (N).Nkind = N_Procedure_Specification
2068 or else NT (N).Nkind = N_Record_Definition);
2072 function Null_Exclusion_Present
2073 (N : Node_Id) return Boolean is
2075 pragma Assert (False
2076 or else NT (N).Nkind = N_Access_Definition
2077 or else NT (N).Nkind = N_Access_Function_Definition
2078 or else NT (N).Nkind = N_Access_Procedure_Definition
2079 or else NT (N).Nkind = N_Access_To_Object_Definition
2080 or else NT (N).Nkind = N_Allocator
2081 or else NT (N).Nkind = N_Component_Definition
2082 or else NT (N).Nkind = N_Derived_Type_Definition
2083 or else NT (N).Nkind = N_Discriminant_Specification
2084 or else NT (N).Nkind = N_Formal_Object_Declaration
2085 or else NT (N).Nkind = N_Function_Specification
2086 or else NT (N).Nkind = N_Object_Declaration
2087 or else NT (N).Nkind = N_Object_Renaming_Declaration
2088 or else NT (N).Nkind = N_Parameter_Specification
2089 or else NT (N).Nkind = N_Subtype_Declaration);
2091 end Null_Exclusion_Present;
2093 function Null_Record_Present
2094 (N : Node_Id) return Boolean is
2096 pragma Assert (False
2097 or else NT (N).Nkind = N_Aggregate
2098 or else NT (N).Nkind = N_Extension_Aggregate);
2100 end Null_Record_Present;
2102 function Object_Definition
2103 (N : Node_Id) return Node_Id is
2105 pragma Assert (False
2106 or else NT (N).Nkind = N_Object_Declaration);
2108 end Object_Definition;
2110 function Original_Discriminant
2111 (N : Node_Id) return Node_Id is
2113 pragma Assert (False
2114 or else NT (N).Nkind = N_Identifier);
2116 end Original_Discriminant;
2118 function Original_Entity
2119 (N : Node_Id) return Entity_Id is
2121 pragma Assert (False
2122 or else NT (N).Nkind = N_Integer_Literal
2123 or else NT (N).Nkind = N_Real_Literal);
2125 end Original_Entity;
2127 function Others_Discrete_Choices
2128 (N : Node_Id) return List_Id is
2130 pragma Assert (False
2131 or else NT (N).Nkind = N_Others_Choice);
2133 end Others_Discrete_Choices;
2135 function Out_Present
2136 (N : Node_Id) return Boolean is
2138 pragma Assert (False
2139 or else NT (N).Nkind = N_Formal_Object_Declaration
2140 or else NT (N).Nkind = N_Parameter_Specification);
2144 function Parameter_Associations
2145 (N : Node_Id) return List_Id is
2147 pragma Assert (False
2148 or else NT (N).Nkind = N_Entry_Call_Statement
2149 or else NT (N).Nkind = N_Function_Call
2150 or else NT (N).Nkind = N_Procedure_Call_Statement);
2152 end Parameter_Associations;
2154 function Parameter_List_Truncated
2155 (N : Node_Id) return Boolean is
2157 pragma Assert (False
2158 or else NT (N).Nkind = N_Function_Call
2159 or else NT (N).Nkind = N_Procedure_Call_Statement);
2161 end Parameter_List_Truncated;
2163 function Parameter_Specifications
2164 (N : Node_Id) return List_Id is
2166 pragma Assert (False
2167 or else NT (N).Nkind = N_Accept_Statement
2168 or else NT (N).Nkind = N_Access_Function_Definition
2169 or else NT (N).Nkind = N_Access_Procedure_Definition
2170 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2171 or else NT (N).Nkind = N_Entry_Declaration
2172 or else NT (N).Nkind = N_Function_Specification
2173 or else NT (N).Nkind = N_Procedure_Specification);
2175 end Parameter_Specifications;
2177 function Parameter_Type
2178 (N : Node_Id) return Node_Id is
2180 pragma Assert (False
2181 or else NT (N).Nkind = N_Parameter_Specification);
2185 function Parent_Spec
2186 (N : Node_Id) return Node_Id is
2188 pragma Assert (False
2189 or else NT (N).Nkind = N_Function_Instantiation
2190 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
2191 or else NT (N).Nkind = N_Generic_Package_Declaration
2192 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
2193 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
2194 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2195 or else NT (N).Nkind = N_Package_Declaration
2196 or else NT (N).Nkind = N_Package_Instantiation
2197 or else NT (N).Nkind = N_Package_Renaming_Declaration
2198 or else NT (N).Nkind = N_Procedure_Instantiation
2199 or else NT (N).Nkind = N_Subprogram_Declaration
2200 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2204 function PPC_Enabled
2205 (N : Node_Id) return Boolean is
2207 pragma Assert (False
2208 or else NT (N).Nkind = N_Pragma);
2213 (N : Node_Id) return Node_Id is
2215 pragma Assert (False
2216 or else NT (N).Nkind = N_Component_Clause);
2220 function Pragma_Argument_Associations
2221 (N : Node_Id) return List_Id is
2223 pragma Assert (False
2224 or else NT (N).Nkind = N_Pragma);
2226 end Pragma_Argument_Associations;
2228 function Pragma_Identifier
2229 (N : Node_Id) return Node_Id is
2231 pragma Assert (False
2232 or else NT (N).Nkind = N_Pragma);
2234 end Pragma_Identifier;
2236 function Pragmas_After
2237 (N : Node_Id) return List_Id is
2239 pragma Assert (False
2240 or else NT (N).Nkind = N_Compilation_Unit_Aux
2241 or else NT (N).Nkind = N_Terminate_Alternative);
2245 function Pragmas_Before
2246 (N : Node_Id) return List_Id is
2248 pragma Assert (False
2249 or else NT (N).Nkind = N_Accept_Alternative
2250 or else NT (N).Nkind = N_Delay_Alternative
2251 or else NT (N).Nkind = N_Entry_Call_Alternative
2252 or else NT (N).Nkind = N_Mod_Clause
2253 or else NT (N).Nkind = N_Terminate_Alternative
2254 or else NT (N).Nkind = N_Triggering_Alternative);
2259 (N : Node_Id) return Node_Id is
2261 pragma Assert (False
2262 or else NT (N).Nkind = N_Attribute_Reference
2263 or else NT (N).Nkind = N_Expanded_Name
2264 or else NT (N).Nkind = N_Explicit_Dereference
2265 or else NT (N).Nkind = N_Indexed_Component
2266 or else NT (N).Nkind = N_Reference
2267 or else NT (N).Nkind = N_Selected_Component
2268 or else NT (N).Nkind = N_Slice);
2272 function Present_Expr
2273 (N : Node_Id) return Uint is
2275 pragma Assert (False
2276 or else NT (N).Nkind = N_Variant);
2281 (N : Node_Id) return Boolean is
2283 pragma Assert (False
2284 or else NT (N).Nkind = N_Component_Declaration
2285 or else NT (N).Nkind = N_Discriminant_Specification
2286 or else NT (N).Nkind = N_Exception_Declaration
2287 or else NT (N).Nkind = N_Formal_Object_Declaration
2288 or else NT (N).Nkind = N_Number_Declaration
2289 or else NT (N).Nkind = N_Object_Declaration
2290 or else NT (N).Nkind = N_Parameter_Specification);
2294 function Print_In_Hex
2295 (N : Node_Id) return Boolean is
2297 pragma Assert (False
2298 or else NT (N).Nkind = N_Integer_Literal);
2302 function Private_Declarations
2303 (N : Node_Id) return List_Id is
2305 pragma Assert (False
2306 or else NT (N).Nkind = N_Package_Specification
2307 or else NT (N).Nkind = N_Protected_Definition
2308 or else NT (N).Nkind = N_Task_Definition);
2310 end Private_Declarations;
2312 function Private_Present
2313 (N : Node_Id) return Boolean is
2315 pragma Assert (False
2316 or else NT (N).Nkind = N_Compilation_Unit
2317 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2318 or else NT (N).Nkind = N_With_Clause);
2320 end Private_Present;
2322 function Procedure_To_Call
2323 (N : Node_Id) return Node_Id is
2325 pragma Assert (False
2326 or else NT (N).Nkind = N_Allocator
2327 or else NT (N).Nkind = N_Extended_Return_Statement
2328 or else NT (N).Nkind = N_Free_Statement
2329 or else NT (N).Nkind = N_Return_Statement);
2331 end Procedure_To_Call;
2333 function Proper_Body
2334 (N : Node_Id) return Node_Id is
2336 pragma Assert (False
2337 or else NT (N).Nkind = N_Subunit);
2341 function Protected_Definition
2342 (N : Node_Id) return Node_Id is
2344 pragma Assert (False
2345 or else NT (N).Nkind = N_Protected_Type_Declaration
2346 or else NT (N).Nkind = N_Single_Protected_Declaration);
2348 end Protected_Definition;
2350 function Protected_Present
2351 (N : Node_Id) return Boolean is
2353 pragma Assert (False
2354 or else NT (N).Nkind = N_Access_Function_Definition
2355 or else NT (N).Nkind = N_Access_Procedure_Definition
2356 or else NT (N).Nkind = N_Derived_Type_Definition
2357 or else NT (N).Nkind = N_Record_Definition);
2359 end Protected_Present;
2361 function Raises_Constraint_Error
2362 (N : Node_Id) return Boolean is
2364 pragma Assert (False
2365 or else NT (N).Nkind in N_Subexpr);
2367 end Raises_Constraint_Error;
2369 function Range_Constraint
2370 (N : Node_Id) return Node_Id is
2372 pragma Assert (False
2373 or else NT (N).Nkind = N_Delta_Constraint
2374 or else NT (N).Nkind = N_Digits_Constraint);
2376 end Range_Constraint;
2378 function Range_Expression
2379 (N : Node_Id) return Node_Id is
2381 pragma Assert (False
2382 or else NT (N).Nkind = N_Range_Constraint);
2384 end Range_Expression;
2386 function Real_Range_Specification
2387 (N : Node_Id) return Node_Id is
2389 pragma Assert (False
2390 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2391 or else NT (N).Nkind = N_Floating_Point_Definition
2392 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2394 end Real_Range_Specification;
2397 (N : Node_Id) return Ureal is
2399 pragma Assert (False
2400 or else NT (N).Nkind = N_Real_Literal);
2405 (N : Node_Id) return Uint is
2407 pragma Assert (False
2408 or else NT (N).Nkind = N_Raise_Constraint_Error
2409 or else NT (N).Nkind = N_Raise_Program_Error
2410 or else NT (N).Nkind = N_Raise_Storage_Error);
2414 function Record_Extension_Part
2415 (N : Node_Id) return Node_Id is
2417 pragma Assert (False
2418 or else NT (N).Nkind = N_Derived_Type_Definition);
2420 end Record_Extension_Part;
2422 function Redundant_Use
2423 (N : Node_Id) return Boolean is
2425 pragma Assert (False
2426 or else NT (N).Nkind = N_Attribute_Reference
2427 or else NT (N).Nkind = N_Expanded_Name
2428 or else NT (N).Nkind = N_Identifier);
2432 function Renaming_Exception
2433 (N : Node_Id) return Node_Id is
2435 pragma Assert (False
2436 or else NT (N).Nkind = N_Exception_Declaration);
2438 end Renaming_Exception;
2440 function Result_Definition
2441 (N : Node_Id) return Node_Id is
2443 pragma Assert (False
2444 or else NT (N).Nkind = N_Access_Function_Definition
2445 or else NT (N).Nkind = N_Function_Specification);
2447 end Result_Definition;
2449 function Return_Object_Declarations
2450 (N : Node_Id) return List_Id is
2452 pragma Assert (False
2453 or else NT (N).Nkind = N_Extended_Return_Statement);
2455 end Return_Object_Declarations;
2457 function Return_Statement_Entity
2458 (N : Node_Id) return Node_Id is
2460 pragma Assert (False
2461 or else NT (N).Nkind = N_Extended_Return_Statement
2462 or else NT (N).Nkind = N_Return_Statement);
2464 end Return_Statement_Entity;
2466 function Reverse_Present
2467 (N : Node_Id) return Boolean is
2469 pragma Assert (False
2470 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2472 end Reverse_Present;
2475 (N : Node_Id) return Node_Id is
2477 pragma Assert (False
2478 or else NT (N).Nkind in N_Op
2479 or else NT (N).Nkind = N_And_Then
2480 or else NT (N).Nkind = N_In
2481 or else NT (N).Nkind = N_Not_In
2482 or else NT (N).Nkind = N_Or_Else);
2486 function Rounded_Result
2487 (N : Node_Id) return Boolean is
2489 pragma Assert (False
2490 or else NT (N).Nkind = N_Op_Divide
2491 or else NT (N).Nkind = N_Op_Multiply
2492 or else NT (N).Nkind = N_Type_Conversion);
2497 (N : Node_Id) return Node_Id is
2499 pragma Assert (False
2500 or else NT (N).Nkind = N_Defining_Character_Literal
2501 or else NT (N).Nkind = N_Defining_Identifier
2502 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2506 function Select_Alternatives
2507 (N : Node_Id) return List_Id is
2509 pragma Assert (False
2510 or else NT (N).Nkind = N_Selective_Accept);
2512 end Select_Alternatives;
2514 function Selector_Name
2515 (N : Node_Id) return Node_Id is
2517 pragma Assert (False
2518 or else NT (N).Nkind = N_Expanded_Name
2519 or else NT (N).Nkind = N_Generic_Association
2520 or else NT (N).Nkind = N_Parameter_Association
2521 or else NT (N).Nkind = N_Selected_Component);
2525 function Selector_Names
2526 (N : Node_Id) return List_Id is
2528 pragma Assert (False
2529 or else NT (N).Nkind = N_Discriminant_Association);
2533 function Shift_Count_OK
2534 (N : Node_Id) return Boolean is
2536 pragma Assert (False
2537 or else NT (N).Nkind = N_Op_Rotate_Left
2538 or else NT (N).Nkind = N_Op_Rotate_Right
2539 or else NT (N).Nkind = N_Op_Shift_Left
2540 or else NT (N).Nkind = N_Op_Shift_Right
2541 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2545 function Source_Type
2546 (N : Node_Id) return Entity_Id is
2548 pragma Assert (False
2549 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2553 function Specification
2554 (N : Node_Id) return Node_Id is
2556 pragma Assert (False
2557 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2558 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
2559 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
2560 or else NT (N).Nkind = N_Generic_Package_Declaration
2561 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2562 or else NT (N).Nkind = N_Package_Declaration
2563 or else NT (N).Nkind = N_Subprogram_Body
2564 or else NT (N).Nkind = N_Subprogram_Body_Stub
2565 or else NT (N).Nkind = N_Subprogram_Declaration
2566 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2571 (N : Node_Id) return List_Id is
2573 pragma Assert (False
2574 or else NT (N).Nkind = N_Abortable_Part
2575 or else NT (N).Nkind = N_Accept_Alternative
2576 or else NT (N).Nkind = N_Case_Statement_Alternative
2577 or else NT (N).Nkind = N_Delay_Alternative
2578 or else NT (N).Nkind = N_Entry_Call_Alternative
2579 or else NT (N).Nkind = N_Exception_Handler
2580 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2581 or else NT (N).Nkind = N_Loop_Statement
2582 or else NT (N).Nkind = N_Triggering_Alternative);
2586 function Static_Processing_OK
2587 (N : Node_Id) return Boolean is
2589 pragma Assert (False
2590 or else NT (N).Nkind = N_Aggregate);
2592 end Static_Processing_OK;
2594 function Storage_Pool
2595 (N : Node_Id) return Node_Id is
2597 pragma Assert (False
2598 or else NT (N).Nkind = N_Allocator
2599 or else NT (N).Nkind = N_Extended_Return_Statement
2600 or else NT (N).Nkind = N_Free_Statement
2601 or else NT (N).Nkind = N_Return_Statement);
2606 (N : Node_Id) return String_Id is
2608 pragma Assert (False
2609 or else NT (N).Nkind = N_Operator_Symbol
2610 or else NT (N).Nkind = N_String_Literal);
2614 function Subtype_Indication
2615 (N : Node_Id) return Node_Id is
2617 pragma Assert (False
2618 or else NT (N).Nkind = N_Access_To_Object_Definition
2619 or else NT (N).Nkind = N_Component_Definition
2620 or else NT (N).Nkind = N_Derived_Type_Definition
2621 or else NT (N).Nkind = N_Private_Extension_Declaration
2622 or else NT (N).Nkind = N_Subtype_Declaration);
2624 end Subtype_Indication;
2626 function Subtype_Mark
2627 (N : Node_Id) return Node_Id is
2629 pragma Assert (False
2630 or else NT (N).Nkind = N_Access_Definition
2631 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2632 or else NT (N).Nkind = N_Formal_Object_Declaration
2633 or else NT (N).Nkind = N_Object_Renaming_Declaration
2634 or else NT (N).Nkind = N_Qualified_Expression
2635 or else NT (N).Nkind = N_Subtype_Indication
2636 or else NT (N).Nkind = N_Type_Conversion
2637 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2641 function Subtype_Marks
2642 (N : Node_Id) return List_Id is
2644 pragma Assert (False
2645 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2646 or else NT (N).Nkind = N_Use_Type_Clause);
2650 function Synchronized_Present
2651 (N : Node_Id) return Boolean is
2653 pragma Assert (False
2654 or else NT (N).Nkind = N_Derived_Type_Definition
2655 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2656 or else NT (N).Nkind = N_Private_Extension_Declaration
2657 or else NT (N).Nkind = N_Record_Definition);
2659 end Synchronized_Present;
2661 function Tagged_Present
2662 (N : Node_Id) return Boolean is
2664 pragma Assert (False
2665 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2666 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2667 or else NT (N).Nkind = N_Private_Type_Declaration
2668 or else NT (N).Nkind = N_Record_Definition);
2672 function Target_Type
2673 (N : Node_Id) return Entity_Id is
2675 pragma Assert (False
2676 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2680 function Task_Definition
2681 (N : Node_Id) return Node_Id is
2683 pragma Assert (False
2684 or else NT (N).Nkind = N_Single_Task_Declaration
2685 or else NT (N).Nkind = N_Task_Type_Declaration);
2687 end Task_Definition;
2689 function Task_Present
2690 (N : Node_Id) return Boolean is
2692 pragma Assert (False
2693 or else NT (N).Nkind = N_Derived_Type_Definition
2694 or else NT (N).Nkind = N_Record_Definition);
2698 function Then_Actions
2699 (N : Node_Id) return List_Id is
2701 pragma Assert (False
2702 or else NT (N).Nkind = N_Conditional_Expression);
2706 function Then_Statements
2707 (N : Node_Id) return List_Id is
2709 pragma Assert (False
2710 or else NT (N).Nkind = N_Elsif_Part
2711 or else NT (N).Nkind = N_If_Statement);
2713 end Then_Statements;
2715 function Treat_Fixed_As_Integer
2716 (N : Node_Id) return Boolean is
2718 pragma Assert (False
2719 or else NT (N).Nkind = N_Op_Divide
2720 or else NT (N).Nkind = N_Op_Mod
2721 or else NT (N).Nkind = N_Op_Multiply
2722 or else NT (N).Nkind = N_Op_Rem);
2724 end Treat_Fixed_As_Integer;
2726 function Triggering_Alternative
2727 (N : Node_Id) return Node_Id is
2729 pragma Assert (False
2730 or else NT (N).Nkind = N_Asynchronous_Select);
2732 end Triggering_Alternative;
2734 function Triggering_Statement
2735 (N : Node_Id) return Node_Id is
2737 pragma Assert (False
2738 or else NT (N).Nkind = N_Triggering_Alternative);
2740 end Triggering_Statement;
2743 (N : Node_Id) return Elist_Id is
2745 pragma Assert (False
2746 or else NT (N).Nkind = N_Freeze_Entity);
2750 function Type_Definition
2751 (N : Node_Id) return Node_Id is
2753 pragma Assert (False
2754 or else NT (N).Nkind = N_Full_Type_Declaration);
2756 end Type_Definition;
2759 (N : Node_Id) return Node_Id is
2761 pragma Assert (False
2762 or else NT (N).Nkind = N_Compilation_Unit);
2766 function Unknown_Discriminants_Present
2767 (N : Node_Id) return Boolean is
2769 pragma Assert (False
2770 or else NT (N).Nkind = N_Formal_Type_Declaration
2771 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2772 or else NT (N).Nkind = N_Private_Extension_Declaration
2773 or else NT (N).Nkind = N_Private_Type_Declaration);
2775 end Unknown_Discriminants_Present;
2777 function Unreferenced_In_Spec
2778 (N : Node_Id) return Boolean is
2780 pragma Assert (False
2781 or else NT (N).Nkind = N_With_Clause);
2783 end Unreferenced_In_Spec;
2785 function Variant_Part
2786 (N : Node_Id) return Node_Id is
2788 pragma Assert (False
2789 or else NT (N).Nkind = N_Component_List);
2794 (N : Node_Id) return List_Id is
2796 pragma Assert (False
2797 or else NT (N).Nkind = N_Variant_Part);
2801 function Visible_Declarations
2802 (N : Node_Id) return List_Id is
2804 pragma Assert (False
2805 or else NT (N).Nkind = N_Package_Specification
2806 or else NT (N).Nkind = N_Protected_Definition
2807 or else NT (N).Nkind = N_Task_Definition);
2809 end Visible_Declarations;
2811 function Was_Originally_Stub
2812 (N : Node_Id) return Boolean is
2814 pragma Assert (False
2815 or else NT (N).Nkind = N_Package_Body
2816 or else NT (N).Nkind = N_Protected_Body
2817 or else NT (N).Nkind = N_Subprogram_Body
2818 or else NT (N).Nkind = N_Task_Body);
2820 end Was_Originally_Stub;
2822 function Zero_Cost_Handling
2823 (N : Node_Id) return Boolean is
2825 pragma Assert (False
2826 or else NT (N).Nkind = N_Exception_Handler
2827 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2829 end Zero_Cost_Handling;
2831 --------------------------
2832 -- Field Set Procedures --
2833 --------------------------
2835 procedure Set_ABE_Is_Certain
2836 (N : Node_Id; Val : Boolean := True) is
2838 pragma Assert (False
2839 or else NT (N).Nkind = N_Formal_Package_Declaration
2840 or else NT (N).Nkind = N_Function_Call
2841 or else NT (N).Nkind = N_Function_Instantiation
2842 or else NT (N).Nkind = N_Package_Instantiation
2843 or else NT (N).Nkind = N_Procedure_Call_Statement
2844 or else NT (N).Nkind = N_Procedure_Instantiation);
2845 Set_Flag18 (N, Val);
2846 end Set_ABE_Is_Certain;
2848 procedure Set_Abort_Present
2849 (N : Node_Id; Val : Boolean := True) is
2851 pragma Assert (False
2852 or else NT (N).Nkind = N_Requeue_Statement);
2853 Set_Flag15 (N, Val);
2854 end Set_Abort_Present;
2856 procedure Set_Abortable_Part
2857 (N : Node_Id; Val : Node_Id) is
2859 pragma Assert (False
2860 or else NT (N).Nkind = N_Asynchronous_Select);
2861 Set_Node2_With_Parent (N, Val);
2862 end Set_Abortable_Part;
2864 procedure Set_Abstract_Present
2865 (N : Node_Id; Val : Boolean := True) is
2867 pragma Assert (False
2868 or else NT (N).Nkind = N_Derived_Type_Definition
2869 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2870 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2871 or else NT (N).Nkind = N_Private_Extension_Declaration
2872 or else NT (N).Nkind = N_Private_Type_Declaration
2873 or else NT (N).Nkind = N_Record_Definition);
2875 end Set_Abstract_Present;
2877 procedure Set_Accept_Handler_Records
2878 (N : Node_Id; Val : List_Id) is
2880 pragma Assert (False
2881 or else NT (N).Nkind = N_Accept_Alternative);
2882 Set_List5 (N, Val); -- semantic field, no parent set
2883 end Set_Accept_Handler_Records;
2885 procedure Set_Accept_Statement
2886 (N : Node_Id; Val : Node_Id) is
2888 pragma Assert (False
2889 or else NT (N).Nkind = N_Accept_Alternative);
2890 Set_Node2_With_Parent (N, Val);
2891 end Set_Accept_Statement;
2893 procedure Set_Access_Definition
2894 (N : Node_Id; Val : Node_Id) is
2896 pragma Assert (False
2897 or else NT (N).Nkind = N_Component_Definition
2898 or else NT (N).Nkind = N_Formal_Object_Declaration
2899 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2900 Set_Node3_With_Parent (N, Val);
2901 end Set_Access_Definition;
2903 procedure Set_Access_To_Subprogram_Definition
2904 (N : Node_Id; Val : Node_Id) is
2906 pragma Assert (False
2907 or else NT (N).Nkind = N_Access_Definition);
2908 Set_Node3_With_Parent (N, Val);
2909 end Set_Access_To_Subprogram_Definition;
2911 procedure Set_Access_Types_To_Process
2912 (N : Node_Id; Val : Elist_Id) is
2914 pragma Assert (False
2915 or else NT (N).Nkind = N_Freeze_Entity);
2916 Set_Elist2 (N, Val); -- semantic field, no parent set
2917 end Set_Access_Types_To_Process;
2919 procedure Set_Actions
2920 (N : Node_Id; Val : List_Id) is
2922 pragma Assert (False
2923 or else NT (N).Nkind = N_And_Then
2924 or else NT (N).Nkind = N_Compilation_Unit_Aux
2925 or else NT (N).Nkind = N_Freeze_Entity
2926 or else NT (N).Nkind = N_Or_Else);
2927 Set_List1_With_Parent (N, Val);
2930 procedure Set_Activation_Chain_Entity
2931 (N : Node_Id; Val : Node_Id) is
2933 pragma Assert (False
2934 or else NT (N).Nkind = N_Block_Statement
2935 or else NT (N).Nkind = N_Entry_Body
2936 or else NT (N).Nkind = N_Generic_Package_Declaration
2937 or else NT (N).Nkind = N_Package_Declaration
2938 or else NT (N).Nkind = N_Subprogram_Body
2939 or else NT (N).Nkind = N_Task_Body);
2940 Set_Node3 (N, Val); -- semantic field, no parent set
2941 end Set_Activation_Chain_Entity;
2943 procedure Set_Acts_As_Spec
2944 (N : Node_Id; Val : Boolean := True) is
2946 pragma Assert (False
2947 or else NT (N).Nkind = N_Compilation_Unit
2948 or else NT (N).Nkind = N_Subprogram_Body);
2950 end Set_Acts_As_Spec;
2952 procedure Set_Actual_Designated_Subtype
2953 (N : Node_Id; Val : Node_Id) is
2955 pragma Assert (False
2956 or else NT (N).Nkind = N_Explicit_Dereference
2957 or else NT (N).Nkind = N_Free_Statement);
2959 end Set_Actual_Designated_Subtype;
2961 procedure Set_Address_Warning_Posted
2962 (N : Node_Id; Val : Boolean := True) is
2964 pragma Assert (False
2965 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2966 Set_Flag18 (N, Val);
2967 end Set_Address_Warning_Posted;
2969 procedure Set_Aggregate_Bounds
2970 (N : Node_Id; Val : Node_Id) is
2972 pragma Assert (False
2973 or else NT (N).Nkind = N_Aggregate);
2974 Set_Node3 (N, Val); -- semantic field, no parent set
2975 end Set_Aggregate_Bounds;
2977 procedure Set_Aliased_Present
2978 (N : Node_Id; Val : Boolean := True) is
2980 pragma Assert (False
2981 or else NT (N).Nkind = N_Component_Definition
2982 or else NT (N).Nkind = N_Object_Declaration);
2984 end Set_Aliased_Present;
2986 procedure Set_All_Others
2987 (N : Node_Id; Val : Boolean := True) is
2989 pragma Assert (False
2990 or else NT (N).Nkind = N_Others_Choice);
2991 Set_Flag11 (N, Val);
2994 procedure Set_All_Present
2995 (N : Node_Id; Val : Boolean := True) is
2997 pragma Assert (False
2998 or else NT (N).Nkind = N_Access_Definition
2999 or else NT (N).Nkind = N_Access_To_Object_Definition);
3000 Set_Flag15 (N, Val);
3001 end Set_All_Present;
3003 procedure Set_Alternatives
3004 (N : Node_Id; Val : List_Id) is
3006 pragma Assert (False
3007 or else NT (N).Nkind = N_Case_Statement);
3008 Set_List4_With_Parent (N, Val);
3009 end Set_Alternatives;
3011 procedure Set_Ancestor_Part
3012 (N : Node_Id; Val : Node_Id) is
3014 pragma Assert (False
3015 or else NT (N).Nkind = N_Extension_Aggregate);
3016 Set_Node3_With_Parent (N, Val);
3017 end Set_Ancestor_Part;
3019 procedure Set_Array_Aggregate
3020 (N : Node_Id; Val : Node_Id) is
3022 pragma Assert (False
3023 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
3024 Set_Node3_With_Parent (N, Val);
3025 end Set_Array_Aggregate;
3027 procedure Set_Assignment_OK
3028 (N : Node_Id; Val : Boolean := True) is
3030 pragma Assert (False
3031 or else NT (N).Nkind = N_Object_Declaration
3032 or else NT (N).Nkind in N_Subexpr);
3033 Set_Flag15 (N, Val);
3034 end Set_Assignment_OK;
3036 procedure Set_Associated_Node
3037 (N : Node_Id; Val : Node_Id) is
3039 pragma Assert (False
3040 or else NT (N).Nkind in N_Has_Entity
3041 or else NT (N).Nkind = N_Aggregate
3042 or else NT (N).Nkind = N_Extension_Aggregate
3043 or else NT (N).Nkind = N_Selected_Component);
3044 Set_Node4 (N, Val); -- semantic field, no parent set
3045 end Set_Associated_Node;
3047 procedure Set_At_End_Proc
3048 (N : Node_Id; Val : Node_Id) is
3050 pragma Assert (False
3051 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3053 end Set_At_End_Proc;
3055 procedure Set_Attribute_Name
3056 (N : Node_Id; Val : Name_Id) is
3058 pragma Assert (False
3059 or else NT (N).Nkind = N_Attribute_Reference);
3061 end Set_Attribute_Name;
3063 procedure Set_Aux_Decls_Node
3064 (N : Node_Id; Val : Node_Id) is
3066 pragma Assert (False
3067 or else NT (N).Nkind = N_Compilation_Unit);
3068 Set_Node5_With_Parent (N, Val);
3069 end Set_Aux_Decls_Node;
3071 procedure Set_Backwards_OK
3072 (N : Node_Id; Val : Boolean := True) is
3074 pragma Assert (False
3075 or else NT (N).Nkind = N_Assignment_Statement);
3077 end Set_Backwards_OK;
3079 procedure Set_Bad_Is_Detected
3080 (N : Node_Id; Val : Boolean := True) is
3082 pragma Assert (False
3083 or else NT (N).Nkind = N_Subprogram_Body);
3084 Set_Flag15 (N, Val);
3085 end Set_Bad_Is_Detected;
3087 procedure Set_Body_Required
3088 (N : Node_Id; Val : Boolean := True) is
3090 pragma Assert (False
3091 or else NT (N).Nkind = N_Compilation_Unit);
3092 Set_Flag13 (N, Val);
3093 end Set_Body_Required;
3095 procedure Set_Body_To_Inline
3096 (N : Node_Id; Val : Node_Id) is
3098 pragma Assert (False
3099 or else NT (N).Nkind = N_Subprogram_Declaration);
3101 end Set_Body_To_Inline;
3103 procedure Set_Box_Present
3104 (N : Node_Id; Val : Boolean := True) is
3106 pragma Assert (False
3107 or else NT (N).Nkind = N_Component_Association
3108 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
3109 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
3110 or else NT (N).Nkind = N_Formal_Package_Declaration
3111 or else NT (N).Nkind = N_Generic_Association);
3112 Set_Flag15 (N, Val);
3113 end Set_Box_Present;
3115 procedure Set_By_Ref
3116 (N : Node_Id; Val : Boolean := True) is
3118 pragma Assert (False
3119 or else NT (N).Nkind = N_Extended_Return_Statement
3120 or else NT (N).Nkind = N_Return_Statement);
3124 procedure Set_Char_Literal_Value
3125 (N : Node_Id; Val : Uint) is
3127 pragma Assert (False
3128 or else NT (N).Nkind = N_Character_Literal);
3130 end Set_Char_Literal_Value;
3133 (N : Node_Id; Val : Name_Id) is
3135 pragma Assert (False
3136 or else NT (N).Nkind in N_Has_Chars);
3140 procedure Set_Check_Address_Alignment
3141 (N : Node_Id; Val : Boolean := True) is
3143 pragma Assert (False
3144 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3145 Set_Flag11 (N, Val);
3146 end Set_Check_Address_Alignment;
3148 procedure Set_Choice_Parameter
3149 (N : Node_Id; Val : Node_Id) is
3151 pragma Assert (False
3152 or else NT (N).Nkind = N_Exception_Handler);
3153 Set_Node2_With_Parent (N, Val);
3154 end Set_Choice_Parameter;
3156 procedure Set_Choices
3157 (N : Node_Id; Val : List_Id) is
3159 pragma Assert (False
3160 or else NT (N).Nkind = N_Component_Association);
3161 Set_List1_With_Parent (N, Val);
3164 procedure Set_Coextensions
3165 (N : Node_Id; Val : Elist_Id) is
3167 pragma Assert (False
3168 or else NT (N).Nkind = N_Allocator);
3169 Set_Elist4 (N, Val);
3170 end Set_Coextensions;
3172 procedure Set_Comes_From_Extended_Return_Statement
3173 (N : Node_Id; Val : Boolean := True) is
3175 pragma Assert (False
3176 or else NT (N).Nkind = N_Return_Statement);
3177 Set_Flag18 (N, Val);
3178 end Set_Comes_From_Extended_Return_Statement;
3180 procedure Set_Compile_Time_Known_Aggregate
3181 (N : Node_Id; Val : Boolean := True) is
3183 pragma Assert (False
3184 or else NT (N).Nkind = N_Aggregate);
3185 Set_Flag18 (N, Val);
3186 end Set_Compile_Time_Known_Aggregate;
3188 procedure Set_Component_Associations
3189 (N : Node_Id; Val : List_Id) is
3191 pragma Assert (False
3192 or else NT (N).Nkind = N_Aggregate
3193 or else NT (N).Nkind = N_Extension_Aggregate);
3194 Set_List2_With_Parent (N, Val);
3195 end Set_Component_Associations;
3197 procedure Set_Component_Clauses
3198 (N : Node_Id; Val : List_Id) is
3200 pragma Assert (False
3201 or else NT (N).Nkind = N_Record_Representation_Clause);
3202 Set_List3_With_Parent (N, Val);
3203 end Set_Component_Clauses;
3205 procedure Set_Component_Definition
3206 (N : Node_Id; Val : Node_Id) is
3208 pragma Assert (False
3209 or else NT (N).Nkind = N_Component_Declaration
3210 or else NT (N).Nkind = N_Constrained_Array_Definition
3211 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
3212 Set_Node4_With_Parent (N, Val);
3213 end Set_Component_Definition;
3215 procedure Set_Component_Items
3216 (N : Node_Id; Val : List_Id) is
3218 pragma Assert (False
3219 or else NT (N).Nkind = N_Component_List);
3220 Set_List3_With_Parent (N, Val);
3221 end Set_Component_Items;
3223 procedure Set_Component_List
3224 (N : Node_Id; Val : Node_Id) is
3226 pragma Assert (False
3227 or else NT (N).Nkind = N_Record_Definition
3228 or else NT (N).Nkind = N_Variant);
3229 Set_Node1_With_Parent (N, Val);
3230 end Set_Component_List;
3232 procedure Set_Component_Name
3233 (N : Node_Id; Val : Node_Id) is
3235 pragma Assert (False
3236 or else NT (N).Nkind = N_Component_Clause);
3237 Set_Node1_With_Parent (N, Val);
3238 end Set_Component_Name;
3240 procedure Set_Condition
3241 (N : Node_Id; Val : Node_Id) is
3243 pragma Assert (False
3244 or else NT (N).Nkind = N_Accept_Alternative
3245 or else NT (N).Nkind = N_Delay_Alternative
3246 or else NT (N).Nkind = N_Elsif_Part
3247 or else NT (N).Nkind = N_Entry_Body_Formal_Part
3248 or else NT (N).Nkind = N_Exit_Statement
3249 or else NT (N).Nkind = N_If_Statement
3250 or else NT (N).Nkind = N_Iteration_Scheme
3251 or else NT (N).Nkind = N_Raise_Constraint_Error
3252 or else NT (N).Nkind = N_Raise_Program_Error
3253 or else NT (N).Nkind = N_Raise_Storage_Error
3254 or else NT (N).Nkind = N_Terminate_Alternative);
3255 Set_Node1_With_Parent (N, Val);
3258 procedure Set_Condition_Actions
3259 (N : Node_Id; Val : List_Id) is
3261 pragma Assert (False
3262 or else NT (N).Nkind = N_Elsif_Part
3263 or else NT (N).Nkind = N_Iteration_Scheme);
3264 Set_List3 (N, Val); -- semantic field, no parent set
3265 end Set_Condition_Actions;
3267 procedure Set_Config_Pragmas
3268 (N : Node_Id; Val : List_Id) is
3270 pragma Assert (False
3271 or else NT (N).Nkind = N_Compilation_Unit_Aux);
3272 Set_List4_With_Parent (N, Val);
3273 end Set_Config_Pragmas;
3275 procedure Set_Constant_Present
3276 (N : Node_Id; Val : Boolean := True) is
3278 pragma Assert (False
3279 or else NT (N).Nkind = N_Access_Definition
3280 or else NT (N).Nkind = N_Access_To_Object_Definition
3281 or else NT (N).Nkind = N_Object_Declaration);
3282 Set_Flag17 (N, Val);
3283 end Set_Constant_Present;
3285 procedure Set_Constraint
3286 (N : Node_Id; Val : Node_Id) is
3288 pragma Assert (False
3289 or else NT (N).Nkind = N_Subtype_Indication);
3290 Set_Node3_With_Parent (N, Val);
3293 procedure Set_Constraints
3294 (N : Node_Id; Val : List_Id) is
3296 pragma Assert (False
3297 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
3298 Set_List1_With_Parent (N, Val);
3299 end Set_Constraints;
3301 procedure Set_Context_Installed
3302 (N : Node_Id; Val : Boolean := True) is
3304 pragma Assert (False
3305 or else NT (N).Nkind = N_With_Clause);
3306 Set_Flag13 (N, Val);
3307 end Set_Context_Installed;
3309 procedure Set_Context_Items
3310 (N : Node_Id; Val : List_Id) is
3312 pragma Assert (False
3313 or else NT (N).Nkind = N_Compilation_Unit);
3314 Set_List1_With_Parent (N, Val);
3315 end Set_Context_Items;
3317 procedure Set_Controlling_Argument
3318 (N : Node_Id; Val : Node_Id) is
3320 pragma Assert (False
3321 or else NT (N).Nkind = N_Function_Call
3322 or else NT (N).Nkind = N_Procedure_Call_Statement);
3323 Set_Node1 (N, Val); -- semantic field, no parent set
3324 end Set_Controlling_Argument;
3326 procedure Set_Conversion_OK
3327 (N : Node_Id; Val : Boolean := True) is
3329 pragma Assert (False
3330 or else NT (N).Nkind = N_Type_Conversion);
3331 Set_Flag14 (N, Val);
3332 end Set_Conversion_OK;
3334 procedure Set_Corresponding_Body
3335 (N : Node_Id; Val : Node_Id) is
3337 pragma Assert (False
3338 or else NT (N).Nkind = N_Entry_Declaration
3339 or else NT (N).Nkind = N_Generic_Package_Declaration
3340 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
3341 or else NT (N).Nkind = N_Package_Body_Stub
3342 or else NT (N).Nkind = N_Package_Declaration
3343 or else NT (N).Nkind = N_Protected_Body_Stub
3344 or else NT (N).Nkind = N_Protected_Type_Declaration
3345 or else NT (N).Nkind = N_Subprogram_Body_Stub
3346 or else NT (N).Nkind = N_Subprogram_Declaration
3347 or else NT (N).Nkind = N_Task_Body_Stub
3348 or else NT (N).Nkind = N_Task_Type_Declaration);
3349 Set_Node5 (N, Val); -- semantic field, no parent set
3350 end Set_Corresponding_Body;
3352 procedure Set_Corresponding_Formal_Spec
3353 (N : Node_Id; Val : Node_Id) is
3355 pragma Assert (False
3356 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
3357 Set_Node3 (N, Val); -- semantic field, no parent set
3358 end Set_Corresponding_Formal_Spec;
3360 procedure Set_Corresponding_Generic_Association
3361 (N : Node_Id; Val : Node_Id) is
3363 pragma Assert (False
3364 or else NT (N).Nkind = N_Object_Declaration
3365 or else NT (N).Nkind = N_Object_Renaming_Declaration);
3366 Set_Node5 (N, Val); -- semantic field, no parent set
3367 end Set_Corresponding_Generic_Association;
3369 procedure Set_Corresponding_Integer_Value
3370 (N : Node_Id; Val : Uint) is
3372 pragma Assert (False
3373 or else NT (N).Nkind = N_Real_Literal);
3374 Set_Uint4 (N, Val); -- semantic field, no parent set
3375 end Set_Corresponding_Integer_Value;
3377 procedure Set_Corresponding_Spec
3378 (N : Node_Id; Val : Node_Id) is
3380 pragma Assert (False
3381 or else NT (N).Nkind = N_Package_Body
3382 or else NT (N).Nkind = N_Protected_Body
3383 or else NT (N).Nkind = N_Subprogram_Body
3384 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
3385 or else NT (N).Nkind = N_Task_Body
3386 or else NT (N).Nkind = N_With_Clause);
3387 Set_Node5 (N, Val); -- semantic field, no parent set
3388 end Set_Corresponding_Spec;
3390 procedure Set_Corresponding_Stub
3391 (N : Node_Id; Val : Node_Id) is
3393 pragma Assert (False
3394 or else NT (N).Nkind = N_Subunit);
3396 end Set_Corresponding_Stub;
3398 procedure Set_Dcheck_Function
3399 (N : Node_Id; Val : Entity_Id) is
3401 pragma Assert (False
3402 or else NT (N).Nkind = N_Variant);
3403 Set_Node5 (N, Val); -- semantic field, no parent set
3404 end Set_Dcheck_Function;
3406 procedure Set_Debug_Statement
3407 (N : Node_Id; Val : Node_Id) is
3409 pragma Assert (False
3410 or else NT (N).Nkind = N_Pragma);
3411 Set_Node3_With_Parent (N, Val);
3412 end Set_Debug_Statement;
3414 procedure Set_Declarations
3415 (N : Node_Id; Val : List_Id) is
3417 pragma Assert (False
3418 or else NT (N).Nkind = N_Accept_Statement
3419 or else NT (N).Nkind = N_Block_Statement
3420 or else NT (N).Nkind = N_Compilation_Unit_Aux
3421 or else NT (N).Nkind = N_Entry_Body
3422 or else NT (N).Nkind = N_Package_Body
3423 or else NT (N).Nkind = N_Protected_Body
3424 or else NT (N).Nkind = N_Subprogram_Body
3425 or else NT (N).Nkind = N_Task_Body);
3426 Set_List2_With_Parent (N, Val);
3427 end Set_Declarations;
3429 procedure Set_Default_Expression
3430 (N : Node_Id; Val : Node_Id) is
3432 pragma Assert (False
3433 or else NT (N).Nkind = N_Formal_Object_Declaration
3434 or else NT (N).Nkind = N_Parameter_Specification);
3435 Set_Node5 (N, Val); -- semantic field, no parent set
3436 end Set_Default_Expression;
3438 procedure Set_Default_Name
3439 (N : Node_Id; Val : Node_Id) is
3441 pragma Assert (False
3442 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
3443 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
3444 Set_Node2_With_Parent (N, Val);
3445 end Set_Default_Name;
3447 procedure Set_Defining_Identifier
3448 (N : Node_Id; Val : Entity_Id) is
3450 pragma Assert (False
3451 or else NT (N).Nkind = N_Component_Declaration
3452 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3453 or else NT (N).Nkind = N_Discriminant_Specification
3454 or else NT (N).Nkind = N_Entry_Body
3455 or else NT (N).Nkind = N_Entry_Declaration
3456 or else NT (N).Nkind = N_Entry_Index_Specification
3457 or else NT (N).Nkind = N_Exception_Declaration
3458 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3459 or else NT (N).Nkind = N_Formal_Object_Declaration
3460 or else NT (N).Nkind = N_Formal_Package_Declaration
3461 or else NT (N).Nkind = N_Formal_Type_Declaration
3462 or else NT (N).Nkind = N_Full_Type_Declaration
3463 or else NT (N).Nkind = N_Implicit_Label_Declaration
3464 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3465 or else NT (N).Nkind = N_Loop_Parameter_Specification
3466 or else NT (N).Nkind = N_Number_Declaration
3467 or else NT (N).Nkind = N_Object_Declaration
3468 or else NT (N).Nkind = N_Object_Renaming_Declaration
3469 or else NT (N).Nkind = N_Package_Body_Stub
3470 or else NT (N).Nkind = N_Parameter_Specification
3471 or else NT (N).Nkind = N_Private_Extension_Declaration
3472 or else NT (N).Nkind = N_Private_Type_Declaration
3473 or else NT (N).Nkind = N_Protected_Body
3474 or else NT (N).Nkind = N_Protected_Body_Stub
3475 or else NT (N).Nkind = N_Protected_Type_Declaration
3476 or else NT (N).Nkind = N_Single_Protected_Declaration
3477 or else NT (N).Nkind = N_Single_Task_Declaration
3478 or else NT (N).Nkind = N_Subtype_Declaration
3479 or else NT (N).Nkind = N_Task_Body
3480 or else NT (N).Nkind = N_Task_Body_Stub
3481 or else NT (N).Nkind = N_Task_Type_Declaration);
3482 Set_Node1_With_Parent (N, Val);
3483 end Set_Defining_Identifier;
3485 procedure Set_Defining_Unit_Name
3486 (N : Node_Id; Val : Node_Id) is
3488 pragma Assert (False
3489 or else NT (N).Nkind = N_Function_Instantiation
3490 or else NT (N).Nkind = N_Function_Specification
3491 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3492 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3493 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3494 or else NT (N).Nkind = N_Package_Body
3495 or else NT (N).Nkind = N_Package_Instantiation
3496 or else NT (N).Nkind = N_Package_Renaming_Declaration
3497 or else NT (N).Nkind = N_Package_Specification
3498 or else NT (N).Nkind = N_Procedure_Instantiation
3499 or else NT (N).Nkind = N_Procedure_Specification);
3500 Set_Node1_With_Parent (N, Val);
3501 end Set_Defining_Unit_Name;
3503 procedure Set_Delay_Alternative
3504 (N : Node_Id; Val : Node_Id) is
3506 pragma Assert (False
3507 or else NT (N).Nkind = N_Timed_Entry_Call);
3508 Set_Node4_With_Parent (N, Val);
3509 end Set_Delay_Alternative;
3511 procedure Set_Delay_Statement
3512 (N : Node_Id; Val : Node_Id) is
3514 pragma Assert (False
3515 or else NT (N).Nkind = N_Delay_Alternative);
3516 Set_Node2_With_Parent (N, Val);
3517 end Set_Delay_Statement;
3519 procedure Set_Delta_Expression
3520 (N : Node_Id; Val : Node_Id) is
3522 pragma Assert (False
3523 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3524 or else NT (N).Nkind = N_Delta_Constraint
3525 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3526 Set_Node3_With_Parent (N, Val);
3527 end Set_Delta_Expression;
3529 procedure Set_Digits_Expression
3530 (N : Node_Id; Val : Node_Id) is
3532 pragma Assert (False
3533 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3534 or else NT (N).Nkind = N_Digits_Constraint
3535 or else NT (N).Nkind = N_Floating_Point_Definition);
3536 Set_Node2_With_Parent (N, Val);
3537 end Set_Digits_Expression;
3539 procedure Set_Discr_Check_Funcs_Built
3540 (N : Node_Id; Val : Boolean := True) is
3542 pragma Assert (False
3543 or else NT (N).Nkind = N_Full_Type_Declaration);
3544 Set_Flag11 (N, Val);
3545 end Set_Discr_Check_Funcs_Built;
3547 procedure Set_Discrete_Choices
3548 (N : Node_Id; Val : List_Id) is
3550 pragma Assert (False
3551 or else NT (N).Nkind = N_Case_Statement_Alternative
3552 or else NT (N).Nkind = N_Variant);
3553 Set_List4_With_Parent (N, Val);
3554 end Set_Discrete_Choices;
3556 procedure Set_Discrete_Range
3557 (N : Node_Id; Val : Node_Id) is
3559 pragma Assert (False
3560 or else NT (N).Nkind = N_Slice);
3561 Set_Node4_With_Parent (N, Val);
3562 end Set_Discrete_Range;
3564 procedure Set_Discrete_Subtype_Definition
3565 (N : Node_Id; Val : Node_Id) is
3567 pragma Assert (False
3568 or else NT (N).Nkind = N_Entry_Declaration
3569 or else NT (N).Nkind = N_Entry_Index_Specification
3570 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3571 Set_Node4_With_Parent (N, Val);
3572 end Set_Discrete_Subtype_Definition;
3574 procedure Set_Discrete_Subtype_Definitions
3575 (N : Node_Id; Val : List_Id) is
3577 pragma Assert (False
3578 or else NT (N).Nkind = N_Constrained_Array_Definition);
3579 Set_List2_With_Parent (N, Val);
3580 end Set_Discrete_Subtype_Definitions;
3582 procedure Set_Discriminant_Specifications
3583 (N : Node_Id; Val : List_Id) is
3585 pragma Assert (False
3586 or else NT (N).Nkind = N_Formal_Type_Declaration
3587 or else NT (N).Nkind = N_Full_Type_Declaration
3588 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3589 or else NT (N).Nkind = N_Private_Extension_Declaration
3590 or else NT (N).Nkind = N_Private_Type_Declaration
3591 or else NT (N).Nkind = N_Protected_Type_Declaration
3592 or else NT (N).Nkind = N_Task_Type_Declaration);
3593 Set_List4_With_Parent (N, Val);
3594 end Set_Discriminant_Specifications;
3596 procedure Set_Discriminant_Type
3597 (N : Node_Id; Val : Node_Id) is
3599 pragma Assert (False
3600 or else NT (N).Nkind = N_Discriminant_Specification);
3601 Set_Node5_With_Parent (N, Val);
3602 end Set_Discriminant_Type;
3604 procedure Set_Do_Accessibility_Check
3605 (N : Node_Id; Val : Boolean := True) is
3607 pragma Assert (False
3608 or else NT (N).Nkind = N_Parameter_Specification);
3609 Set_Flag13 (N, Val);
3610 end Set_Do_Accessibility_Check;
3612 procedure Set_Do_Discriminant_Check
3613 (N : Node_Id; Val : Boolean := True) is
3615 pragma Assert (False
3616 or else NT (N).Nkind = N_Selected_Component);
3617 Set_Flag13 (N, Val);
3618 end Set_Do_Discriminant_Check;
3620 procedure Set_Do_Division_Check
3621 (N : Node_Id; Val : Boolean := True) is
3623 pragma Assert (False
3624 or else NT (N).Nkind = N_Op_Divide
3625 or else NT (N).Nkind = N_Op_Mod
3626 or else NT (N).Nkind = N_Op_Rem);
3627 Set_Flag13 (N, Val);
3628 end Set_Do_Division_Check;
3630 procedure Set_Do_Length_Check
3631 (N : Node_Id; Val : Boolean := True) is
3633 pragma Assert (False
3634 or else NT (N).Nkind = N_Assignment_Statement
3635 or else NT (N).Nkind = N_Op_And
3636 or else NT (N).Nkind = N_Op_Or
3637 or else NT (N).Nkind = N_Op_Xor
3638 or else NT (N).Nkind = N_Type_Conversion);
3640 end Set_Do_Length_Check;
3642 procedure Set_Do_Overflow_Check
3643 (N : Node_Id; Val : Boolean := True) is
3645 pragma Assert (False
3646 or else NT (N).Nkind in N_Op
3647 or else NT (N).Nkind = N_Attribute_Reference
3648 or else NT (N).Nkind = N_Type_Conversion);
3649 Set_Flag17 (N, Val);
3650 end Set_Do_Overflow_Check;
3652 procedure Set_Do_Range_Check
3653 (N : Node_Id; Val : Boolean := True) is
3655 pragma Assert (False
3656 or else NT (N).Nkind in N_Subexpr);
3658 end Set_Do_Range_Check;
3660 procedure Set_Do_Storage_Check
3661 (N : Node_Id; Val : Boolean := True) is
3663 pragma Assert (False
3664 or else NT (N).Nkind = N_Allocator
3665 or else NT (N).Nkind = N_Subprogram_Body);
3666 Set_Flag17 (N, Val);
3667 end Set_Do_Storage_Check;
3669 procedure Set_Do_Tag_Check
3670 (N : Node_Id; Val : Boolean := True) is
3672 pragma Assert (False
3673 or else NT (N).Nkind = N_Assignment_Statement
3674 or else NT (N).Nkind = N_Extended_Return_Statement
3675 or else NT (N).Nkind = N_Function_Call
3676 or else NT (N).Nkind = N_Procedure_Call_Statement
3677 or else NT (N).Nkind = N_Return_Statement
3678 or else NT (N).Nkind = N_Type_Conversion);
3679 Set_Flag13 (N, Val);
3680 end Set_Do_Tag_Check;
3682 procedure Set_Elaborate_All_Desirable
3683 (N : Node_Id; Val : Boolean := True) is
3685 pragma Assert (False
3686 or else NT (N).Nkind = N_With_Clause);
3688 end Set_Elaborate_All_Desirable;
3690 procedure Set_Elaborate_All_Present
3691 (N : Node_Id; Val : Boolean := True) is
3693 pragma Assert (False
3694 or else NT (N).Nkind = N_With_Clause);
3695 Set_Flag14 (N, Val);
3696 end Set_Elaborate_All_Present;
3698 procedure Set_Elaborate_Desirable
3699 (N : Node_Id; Val : Boolean := True) is
3701 pragma Assert (False
3702 or else NT (N).Nkind = N_With_Clause);
3703 Set_Flag11 (N, Val);
3704 end Set_Elaborate_Desirable;
3706 procedure Set_Elaborate_Present
3707 (N : Node_Id; Val : Boolean := True) is
3709 pragma Assert (False
3710 or else NT (N).Nkind = N_With_Clause);
3712 end Set_Elaborate_Present;
3714 procedure Set_Elaboration_Boolean
3715 (N : Node_Id; Val : Node_Id) is
3717 pragma Assert (False
3718 or else NT (N).Nkind = N_Function_Specification
3719 or else NT (N).Nkind = N_Procedure_Specification);
3721 end Set_Elaboration_Boolean;
3723 procedure Set_Else_Actions
3724 (N : Node_Id; Val : List_Id) is
3726 pragma Assert (False
3727 or else NT (N).Nkind = N_Conditional_Expression);
3728 Set_List3 (N, Val); -- semantic field, no parent set
3729 end Set_Else_Actions;
3731 procedure Set_Else_Statements
3732 (N : Node_Id; Val : List_Id) is
3734 pragma Assert (False
3735 or else NT (N).Nkind = N_Conditional_Entry_Call
3736 or else NT (N).Nkind = N_If_Statement
3737 or else NT (N).Nkind = N_Selective_Accept);
3738 Set_List4_With_Parent (N, Val);
3739 end Set_Else_Statements;
3741 procedure Set_Elsif_Parts
3742 (N : Node_Id; Val : List_Id) is
3744 pragma Assert (False
3745 or else NT (N).Nkind = N_If_Statement);
3746 Set_List3_With_Parent (N, Val);
3747 end Set_Elsif_Parts;
3749 procedure Set_Enclosing_Variant
3750 (N : Node_Id; Val : Node_Id) is
3752 pragma Assert (False
3753 or else NT (N).Nkind = N_Variant);
3754 Set_Node2 (N, Val); -- semantic field, no parent set
3755 end Set_Enclosing_Variant;
3757 procedure Set_End_Label
3758 (N : Node_Id; Val : Node_Id) is
3760 pragma Assert (False
3761 or else NT (N).Nkind = N_Enumeration_Type_Definition
3762 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3763 or else NT (N).Nkind = N_Loop_Statement
3764 or else NT (N).Nkind = N_Package_Specification
3765 or else NT (N).Nkind = N_Protected_Body
3766 or else NT (N).Nkind = N_Protected_Definition
3767 or else NT (N).Nkind = N_Record_Definition
3768 or else NT (N).Nkind = N_Task_Definition);
3769 Set_Node4_With_Parent (N, Val);
3772 procedure Set_End_Span
3773 (N : Node_Id; Val : Uint) is
3775 pragma Assert (False
3776 or else NT (N).Nkind = N_Case_Statement
3777 or else NT (N).Nkind = N_If_Statement);
3781 procedure Set_Entity
3782 (N : Node_Id; Val : Node_Id) is
3784 pragma Assert (False
3785 or else NT (N).Nkind in N_Has_Entity
3786 or else NT (N).Nkind = N_Freeze_Entity
3787 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3788 Set_Node4 (N, Val); -- semantic field, no parent set
3791 procedure Set_Entry_Body_Formal_Part
3792 (N : Node_Id; Val : Node_Id) is
3794 pragma Assert (False
3795 or else NT (N).Nkind = N_Entry_Body);
3796 Set_Node5_With_Parent (N, Val);
3797 end Set_Entry_Body_Formal_Part;
3799 procedure Set_Entry_Call_Alternative
3800 (N : Node_Id; Val : Node_Id) is
3802 pragma Assert (False
3803 or else NT (N).Nkind = N_Conditional_Entry_Call
3804 or else NT (N).Nkind = N_Timed_Entry_Call);
3805 Set_Node1_With_Parent (N, Val);
3806 end Set_Entry_Call_Alternative;
3808 procedure Set_Entry_Call_Statement
3809 (N : Node_Id; Val : Node_Id) is
3811 pragma Assert (False
3812 or else NT (N).Nkind = N_Entry_Call_Alternative);
3813 Set_Node1_With_Parent (N, Val);
3814 end Set_Entry_Call_Statement;
3816 procedure Set_Entry_Direct_Name
3817 (N : Node_Id; Val : Node_Id) is
3819 pragma Assert (False
3820 or else NT (N).Nkind = N_Accept_Statement);
3821 Set_Node1_With_Parent (N, Val);
3822 end Set_Entry_Direct_Name;
3824 procedure Set_Entry_Index
3825 (N : Node_Id; Val : Node_Id) is
3827 pragma Assert (False
3828 or else NT (N).Nkind = N_Accept_Statement);
3829 Set_Node5_With_Parent (N, Val);
3830 end Set_Entry_Index;
3832 procedure Set_Entry_Index_Specification
3833 (N : Node_Id; Val : Node_Id) is
3835 pragma Assert (False
3836 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3837 Set_Node4_With_Parent (N, Val);
3838 end Set_Entry_Index_Specification;
3841 (N : Node_Id; Val : Node_Id) is
3843 pragma Assert (False
3844 or else NT (N).Nkind in N_Has_Etype);
3845 Set_Node5 (N, Val); -- semantic field, no parent set
3848 procedure Set_Exception_Choices
3849 (N : Node_Id; Val : List_Id) is
3851 pragma Assert (False
3852 or else NT (N).Nkind = N_Exception_Handler);
3853 Set_List4_With_Parent (N, Val);
3854 end Set_Exception_Choices;
3856 procedure Set_Exception_Handlers
3857 (N : Node_Id; Val : List_Id) is
3859 pragma Assert (False
3860 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3861 Set_List5_With_Parent (N, Val);
3862 end Set_Exception_Handlers;
3864 procedure Set_Exception_Junk
3865 (N : Node_Id; Val : Boolean := True) is
3867 pragma Assert (False
3868 or else NT (N).Nkind = N_Block_Statement
3869 or else NT (N).Nkind = N_Goto_Statement
3870 or else NT (N).Nkind = N_Label
3871 or else NT (N).Nkind = N_Object_Declaration
3872 or else NT (N).Nkind = N_Subtype_Declaration);
3874 end Set_Exception_Junk;
3876 procedure Set_Exception_Label
3877 (N : Node_Id; Val : Node_Id) is
3879 pragma Assert (False
3880 or else NT (N).Nkind = N_Exception_Handler
3881 or else NT (N).Nkind = N_Push_Constraint_Error_Label
3882 or else NT (N).Nkind = N_Push_Program_Error_Label
3883 or else NT (N).Nkind = N_Push_Storage_Error_Label);
3884 Set_Node5 (N, Val); -- semantic field, no parent set
3885 end Set_Exception_Label;
3887 procedure Set_Expansion_Delayed
3888 (N : Node_Id; Val : Boolean := True) is
3890 pragma Assert (False
3891 or else NT (N).Nkind = N_Aggregate
3892 or else NT (N).Nkind = N_Extension_Aggregate);
3893 Set_Flag11 (N, Val);
3894 end Set_Expansion_Delayed;
3896 procedure Set_Explicit_Actual_Parameter
3897 (N : Node_Id; Val : Node_Id) is
3899 pragma Assert (False
3900 or else NT (N).Nkind = N_Parameter_Association);
3901 Set_Node3_With_Parent (N, Val);
3902 end Set_Explicit_Actual_Parameter;
3904 procedure Set_Explicit_Generic_Actual_Parameter
3905 (N : Node_Id; Val : Node_Id) is
3907 pragma Assert (False
3908 or else NT (N).Nkind = N_Generic_Association);
3909 Set_Node1_With_Parent (N, Val);
3910 end Set_Explicit_Generic_Actual_Parameter;
3912 procedure Set_Expression
3913 (N : Node_Id; Val : Node_Id) is
3915 pragma Assert (False
3916 or else NT (N).Nkind = N_Allocator
3917 or else NT (N).Nkind = N_Assignment_Statement
3918 or else NT (N).Nkind = N_At_Clause
3919 or else NT (N).Nkind = N_Attribute_Definition_Clause
3920 or else NT (N).Nkind = N_Case_Statement
3921 or else NT (N).Nkind = N_Code_Statement
3922 or else NT (N).Nkind = N_Component_Association
3923 or else NT (N).Nkind = N_Component_Declaration
3924 or else NT (N).Nkind = N_Delay_Relative_Statement
3925 or else NT (N).Nkind = N_Delay_Until_Statement
3926 or else NT (N).Nkind = N_Discriminant_Association
3927 or else NT (N).Nkind = N_Discriminant_Specification
3928 or else NT (N).Nkind = N_Exception_Declaration
3929 or else NT (N).Nkind = N_Free_Statement
3930 or else NT (N).Nkind = N_Mod_Clause
3931 or else NT (N).Nkind = N_Modular_Type_Definition
3932 or else NT (N).Nkind = N_Number_Declaration
3933 or else NT (N).Nkind = N_Object_Declaration
3934 or else NT (N).Nkind = N_Parameter_Specification
3935 or else NT (N).Nkind = N_Pragma_Argument_Association
3936 or else NT (N).Nkind = N_Qualified_Expression
3937 or else NT (N).Nkind = N_Raise_Statement
3938 or else NT (N).Nkind = N_Return_Statement
3939 or else NT (N).Nkind = N_Type_Conversion
3940 or else NT (N).Nkind = N_Unchecked_Expression
3941 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3942 Set_Node3_With_Parent (N, Val);
3945 procedure Set_Expressions
3946 (N : Node_Id; Val : List_Id) is
3948 pragma Assert (False
3949 or else NT (N).Nkind = N_Aggregate
3950 or else NT (N).Nkind = N_Attribute_Reference
3951 or else NT (N).Nkind = N_Conditional_Expression
3952 or else NT (N).Nkind = N_Extension_Aggregate
3953 or else NT (N).Nkind = N_Indexed_Component);
3954 Set_List1_With_Parent (N, Val);
3955 end Set_Expressions;
3957 procedure Set_First_Bit
3958 (N : Node_Id; Val : Node_Id) is
3960 pragma Assert (False
3961 or else NT (N).Nkind = N_Component_Clause);
3962 Set_Node3_With_Parent (N, Val);
3965 procedure Set_First_Inlined_Subprogram
3966 (N : Node_Id; Val : Entity_Id) is
3968 pragma Assert (False
3969 or else NT (N).Nkind = N_Compilation_Unit);
3970 Set_Node3 (N, Val); -- semantic field, no parent set
3971 end Set_First_Inlined_Subprogram;
3973 procedure Set_First_Name
3974 (N : Node_Id; Val : Boolean := True) is
3976 pragma Assert (False
3977 or else NT (N).Nkind = N_With_Clause);
3981 procedure Set_First_Named_Actual
3982 (N : Node_Id; Val : Node_Id) is
3984 pragma Assert (False
3985 or else NT (N).Nkind = N_Entry_Call_Statement
3986 or else NT (N).Nkind = N_Function_Call
3987 or else NT (N).Nkind = N_Procedure_Call_Statement);
3988 Set_Node4 (N, Val); -- semantic field, no parent set
3989 end Set_First_Named_Actual;
3991 procedure Set_First_Real_Statement
3992 (N : Node_Id; Val : Node_Id) is
3994 pragma Assert (False
3995 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3996 Set_Node2 (N, Val); -- semantic field, no parent set
3997 end Set_First_Real_Statement;
3999 procedure Set_First_Subtype_Link
4000 (N : Node_Id; Val : Entity_Id) is
4002 pragma Assert (False
4003 or else NT (N).Nkind = N_Freeze_Entity);
4004 Set_Node5 (N, Val); -- semantic field, no parent set
4005 end Set_First_Subtype_Link;
4007 procedure Set_Float_Truncate
4008 (N : Node_Id; Val : Boolean := True) is
4010 pragma Assert (False
4011 or else NT (N).Nkind = N_Type_Conversion);
4012 Set_Flag11 (N, Val);
4013 end Set_Float_Truncate;
4015 procedure Set_Formal_Type_Definition
4016 (N : Node_Id; Val : Node_Id) is
4018 pragma Assert (False
4019 or else NT (N).Nkind = N_Formal_Type_Declaration);
4020 Set_Node3_With_Parent (N, Val);
4021 end Set_Formal_Type_Definition;
4023 procedure Set_Forwards_OK
4024 (N : Node_Id; Val : Boolean := True) is
4026 pragma Assert (False
4027 or else NT (N).Nkind = N_Assignment_Statement);
4029 end Set_Forwards_OK;
4031 procedure Set_From_At_End
4032 (N : Node_Id; Val : Boolean := True) is
4034 pragma Assert (False
4035 or else NT (N).Nkind = N_Raise_Statement);
4037 end Set_From_At_End;
4039 procedure Set_From_At_Mod
4040 (N : Node_Id; Val : Boolean := True) is
4042 pragma Assert (False
4043 or else NT (N).Nkind = N_Attribute_Definition_Clause);
4045 end Set_From_At_Mod;
4047 procedure Set_From_Default
4048 (N : Node_Id; Val : Boolean := True) is
4050 pragma Assert (False
4051 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4053 end Set_From_Default;
4055 procedure Set_Generic_Associations
4056 (N : Node_Id; Val : List_Id) is
4058 pragma Assert (False
4059 or else NT (N).Nkind = N_Formal_Package_Declaration
4060 or else NT (N).Nkind = N_Function_Instantiation
4061 or else NT (N).Nkind = N_Package_Instantiation
4062 or else NT (N).Nkind = N_Procedure_Instantiation);
4063 Set_List3_With_Parent (N, Val);
4064 end Set_Generic_Associations;
4066 procedure Set_Generic_Formal_Declarations
4067 (N : Node_Id; Val : List_Id) is
4069 pragma Assert (False
4070 or else NT (N).Nkind = N_Generic_Package_Declaration
4071 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
4072 Set_List2_With_Parent (N, Val);
4073 end Set_Generic_Formal_Declarations;
4075 procedure Set_Generic_Parent
4076 (N : Node_Id; Val : Node_Id) is
4078 pragma Assert (False
4079 or else NT (N).Nkind = N_Function_Specification
4080 or else NT (N).Nkind = N_Package_Specification
4081 or else NT (N).Nkind = N_Procedure_Specification);
4083 end Set_Generic_Parent;
4085 procedure Set_Generic_Parent_Type
4086 (N : Node_Id; Val : Node_Id) is
4088 pragma Assert (False
4089 or else NT (N).Nkind = N_Subtype_Declaration);
4091 end Set_Generic_Parent_Type;
4093 procedure Set_Handled_Statement_Sequence
4094 (N : Node_Id; Val : Node_Id) is
4096 pragma Assert (False
4097 or else NT (N).Nkind = N_Accept_Statement
4098 or else NT (N).Nkind = N_Block_Statement
4099 or else NT (N).Nkind = N_Entry_Body
4100 or else NT (N).Nkind = N_Extended_Return_Statement
4101 or else NT (N).Nkind = N_Package_Body
4102 or else NT (N).Nkind = N_Subprogram_Body
4103 or else NT (N).Nkind = N_Task_Body);
4104 Set_Node4_With_Parent (N, Val);
4105 end Set_Handled_Statement_Sequence;
4107 procedure Set_Handler_List_Entry
4108 (N : Node_Id; Val : Node_Id) is
4110 pragma Assert (False
4111 or else NT (N).Nkind = N_Object_Declaration);
4113 end Set_Handler_List_Entry;
4115 procedure Set_Has_Created_Identifier
4116 (N : Node_Id; Val : Boolean := True) is
4118 pragma Assert (False
4119 or else NT (N).Nkind = N_Block_Statement
4120 or else NT (N).Nkind = N_Loop_Statement);
4121 Set_Flag15 (N, Val);
4122 end Set_Has_Created_Identifier;
4124 procedure Set_Has_Dynamic_Length_Check
4125 (N : Node_Id; Val : Boolean := True) is
4127 Set_Flag10 (N, Val);
4128 end Set_Has_Dynamic_Length_Check;
4130 procedure Set_Has_Dynamic_Range_Check
4131 (N : Node_Id; Val : Boolean := True) is
4133 Set_Flag12 (N, Val);
4134 end Set_Has_Dynamic_Range_Check;
4136 procedure Set_Has_Init_Expression
4137 (N : Node_Id; Val : Boolean := True) is
4139 pragma Assert (False
4140 or else NT (N).Nkind = N_Object_Declaration);
4141 Set_Flag14 (N, Val);
4142 end Set_Has_Init_Expression;
4144 procedure Set_Has_Local_Raise
4145 (N : Node_Id; Val : Boolean := True) is
4147 pragma Assert (False
4148 or else NT (N).Nkind = N_Exception_Handler);
4150 end Set_Has_Local_Raise;
4152 procedure Set_Has_No_Elaboration_Code
4153 (N : Node_Id; Val : Boolean := True) is
4155 pragma Assert (False
4156 or else NT (N).Nkind = N_Compilation_Unit);
4157 Set_Flag17 (N, Val);
4158 end Set_Has_No_Elaboration_Code;
4160 procedure Set_Has_Priority_Pragma
4161 (N : Node_Id; Val : Boolean := True) is
4163 pragma Assert (False
4164 or else NT (N).Nkind = N_Protected_Definition
4165 or else NT (N).Nkind = N_Subprogram_Body
4166 or else NT (N).Nkind = N_Task_Definition);
4168 end Set_Has_Priority_Pragma;
4170 procedure Set_Has_Private_View
4171 (N : Node_Id; Val : Boolean := True) is
4173 pragma Assert (False
4174 or else NT (N).Nkind in N_Op
4175 or else NT (N).Nkind = N_Character_Literal
4176 or else NT (N).Nkind = N_Expanded_Name
4177 or else NT (N).Nkind = N_Identifier
4178 or else NT (N).Nkind = N_Operator_Symbol);
4179 Set_Flag11 (N, Val);
4180 end Set_Has_Private_View;
4182 procedure Set_Has_Relative_Deadline_Pragma
4183 (N : Node_Id; Val : Boolean := True) is
4185 pragma Assert (False
4186 or else NT (N).Nkind = N_Subprogram_Body
4187 or else NT (N).Nkind = N_Task_Definition);
4189 end Set_Has_Relative_Deadline_Pragma;
4191 procedure Set_Has_Self_Reference
4192 (N : Node_Id; Val : Boolean := True) is
4194 pragma Assert (False
4195 or else NT (N).Nkind = N_Aggregate
4196 or else NT (N).Nkind = N_Extension_Aggregate);
4197 Set_Flag13 (N, Val);
4198 end Set_Has_Self_Reference;
4200 procedure Set_Has_Storage_Size_Pragma
4201 (N : Node_Id; Val : Boolean := True) is
4203 pragma Assert (False
4204 or else NT (N).Nkind = N_Task_Definition);
4206 end Set_Has_Storage_Size_Pragma;
4208 procedure Set_Has_Task_Info_Pragma
4209 (N : Node_Id; Val : Boolean := True) is
4211 pragma Assert (False
4212 or else NT (N).Nkind = N_Task_Definition);
4214 end Set_Has_Task_Info_Pragma;
4216 procedure Set_Has_Task_Name_Pragma
4217 (N : Node_Id; Val : Boolean := True) is
4219 pragma Assert (False
4220 or else NT (N).Nkind = N_Task_Definition);
4222 end Set_Has_Task_Name_Pragma;
4224 procedure Set_Has_Wide_Character
4225 (N : Node_Id; Val : Boolean := True) is
4227 pragma Assert (False
4228 or else NT (N).Nkind = N_String_Literal);
4229 Set_Flag11 (N, Val);
4230 end Set_Has_Wide_Character;
4232 procedure Set_Hidden_By_Use_Clause
4233 (N : Node_Id; Val : Elist_Id) is
4235 pragma Assert (False
4236 or else NT (N).Nkind = N_Use_Package_Clause
4237 or else NT (N).Nkind = N_Use_Type_Clause);
4238 Set_Elist4 (N, Val);
4239 end Set_Hidden_By_Use_Clause;
4241 procedure Set_High_Bound
4242 (N : Node_Id; Val : Node_Id) is
4244 pragma Assert (False
4245 or else NT (N).Nkind = N_Range
4246 or else NT (N).Nkind = N_Real_Range_Specification
4247 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4248 Set_Node2_With_Parent (N, Val);
4251 procedure Set_Identifier
4252 (N : Node_Id; Val : Node_Id) is
4254 pragma Assert (False
4255 or else NT (N).Nkind = N_At_Clause
4256 or else NT (N).Nkind = N_Block_Statement
4257 or else NT (N).Nkind = N_Designator
4258 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4259 or else NT (N).Nkind = N_Label
4260 or else NT (N).Nkind = N_Loop_Statement
4261 or else NT (N).Nkind = N_Record_Representation_Clause
4262 or else NT (N).Nkind = N_Subprogram_Info);
4263 Set_Node1_With_Parent (N, Val);
4266 procedure Set_Implicit_With
4267 (N : Node_Id; Val : Boolean := True) is
4269 pragma Assert (False
4270 or else NT (N).Nkind = N_With_Clause);
4271 Set_Flag16 (N, Val);
4272 end Set_Implicit_With;
4274 procedure Set_Interface_List
4275 (N : Node_Id; Val : List_Id) is
4277 pragma Assert (False
4278 or else NT (N).Nkind = N_Derived_Type_Definition
4279 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4280 or else NT (N).Nkind = N_Private_Extension_Declaration
4281 or else NT (N).Nkind = N_Protected_Type_Declaration
4282 or else NT (N).Nkind = N_Record_Definition
4283 or else NT (N).Nkind = N_Single_Protected_Declaration
4284 or else NT (N).Nkind = N_Single_Task_Declaration
4285 or else NT (N).Nkind = N_Task_Type_Declaration);
4286 Set_List2_With_Parent (N, Val);
4287 end Set_Interface_List;
4289 procedure Set_Interface_Present
4290 (N : Node_Id; Val : Boolean := True) is
4292 pragma Assert (False
4293 or else NT (N).Nkind = N_Derived_Type_Definition
4294 or else NT (N).Nkind = N_Record_Definition);
4295 Set_Flag16 (N, Val);
4296 end Set_Interface_Present;
4298 procedure Set_In_Present
4299 (N : Node_Id; Val : Boolean := True) is
4301 pragma Assert (False
4302 or else NT (N).Nkind = N_Formal_Object_Declaration
4303 or else NT (N).Nkind = N_Parameter_Specification);
4304 Set_Flag15 (N, Val);
4307 procedure Set_Includes_Infinities
4308 (N : Node_Id; Val : Boolean := True) is
4310 pragma Assert (False
4311 or else NT (N).Nkind = N_Range);
4312 Set_Flag11 (N, Val);
4313 end Set_Includes_Infinities;
4315 procedure Set_Instance_Spec
4316 (N : Node_Id; Val : Node_Id) is
4318 pragma Assert (False
4319 or else NT (N).Nkind = N_Formal_Package_Declaration
4320 or else NT (N).Nkind = N_Function_Instantiation
4321 or else NT (N).Nkind = N_Package_Instantiation
4322 or else NT (N).Nkind = N_Procedure_Instantiation);
4323 Set_Node5 (N, Val); -- semantic field, no Parent set
4324 end Set_Instance_Spec;
4326 procedure Set_Intval
4327 (N : Node_Id; Val : Uint) is
4329 pragma Assert (False
4330 or else NT (N).Nkind = N_Integer_Literal);
4334 procedure Set_Is_Asynchronous_Call_Block
4335 (N : Node_Id; Val : Boolean := True) is
4337 pragma Assert (False
4338 or else NT (N).Nkind = N_Block_Statement);
4340 end Set_Is_Asynchronous_Call_Block;
4342 procedure Set_Is_Component_Left_Opnd
4343 (N : Node_Id; Val : Boolean := True) is
4345 pragma Assert (False
4346 or else NT (N).Nkind = N_Op_Concat);
4347 Set_Flag13 (N, Val);
4348 end Set_Is_Component_Left_Opnd;
4350 procedure Set_Is_Component_Right_Opnd
4351 (N : Node_Id; Val : Boolean := True) is
4353 pragma Assert (False
4354 or else NT (N).Nkind = N_Op_Concat);
4355 Set_Flag14 (N, Val);
4356 end Set_Is_Component_Right_Opnd;
4358 procedure Set_Is_Controlling_Actual
4359 (N : Node_Id; Val : Boolean := True) is
4361 pragma Assert (False
4362 or else NT (N).Nkind in N_Subexpr);
4363 Set_Flag16 (N, Val);
4364 end Set_Is_Controlling_Actual;
4366 procedure Set_Is_Dynamic_Coextension
4367 (N : Node_Id; Val : Boolean := True) is
4369 pragma Assert (False
4370 or else NT (N).Nkind = N_Allocator);
4371 Set_Flag18 (N, Val);
4372 end Set_Is_Dynamic_Coextension;
4374 procedure Set_Is_Entry_Barrier_Function
4375 (N : Node_Id; Val : Boolean := True) is
4377 pragma Assert (False
4378 or else NT (N).Nkind = N_Subprogram_Body);
4380 end Set_Is_Entry_Barrier_Function;
4382 procedure Set_Is_Expanded_Build_In_Place_Call
4383 (N : Node_Id; Val : Boolean := True) is
4385 pragma Assert (False
4386 or else NT (N).Nkind = N_Function_Call);
4387 Set_Flag11 (N, Val);
4388 end Set_Is_Expanded_Build_In_Place_Call;
4390 procedure Set_Is_Folded_In_Parser
4391 (N : Node_Id; Val : Boolean := True) is
4393 pragma Assert (False
4394 or else NT (N).Nkind = N_String_Literal);
4396 end Set_Is_Folded_In_Parser;
4398 procedure Set_Is_In_Discriminant_Check
4399 (N : Node_Id; Val : Boolean := True) is
4401 pragma Assert (False
4402 or else NT (N).Nkind = N_Selected_Component);
4403 Set_Flag11 (N, Val);
4404 end Set_Is_In_Discriminant_Check;
4406 procedure Set_Is_Machine_Number
4407 (N : Node_Id; Val : Boolean := True) is
4409 pragma Assert (False
4410 or else NT (N).Nkind = N_Real_Literal);
4411 Set_Flag11 (N, Val);
4412 end Set_Is_Machine_Number;
4414 procedure Set_Is_Null_Loop
4415 (N : Node_Id; Val : Boolean := True) is
4417 pragma Assert (False
4418 or else NT (N).Nkind = N_Loop_Statement);
4419 Set_Flag16 (N, Val);
4420 end Set_Is_Null_Loop;
4422 procedure Set_Is_Overloaded
4423 (N : Node_Id; Val : Boolean := True) is
4425 pragma Assert (False
4426 or else NT (N).Nkind in N_Subexpr);
4428 end Set_Is_Overloaded;
4430 procedure Set_Is_Power_Of_2_For_Shift
4431 (N : Node_Id; Val : Boolean := True) is
4433 pragma Assert (False
4434 or else NT (N).Nkind = N_Op_Expon);
4435 Set_Flag13 (N, Val);
4436 end Set_Is_Power_Of_2_For_Shift;
4438 procedure Set_Is_Protected_Subprogram_Body
4439 (N : Node_Id; Val : Boolean := True) is
4441 pragma Assert (False
4442 or else NT (N).Nkind = N_Subprogram_Body);
4444 end Set_Is_Protected_Subprogram_Body;
4446 procedure Set_Is_Static_Coextension
4447 (N : Node_Id; Val : Boolean := True) is
4449 pragma Assert (False
4450 or else NT (N).Nkind = N_Allocator);
4451 Set_Flag14 (N, Val);
4452 end Set_Is_Static_Coextension;
4454 procedure Set_Is_Static_Expression
4455 (N : Node_Id; Val : Boolean := True) is
4457 pragma Assert (False
4458 or else NT (N).Nkind in N_Subexpr);
4460 end Set_Is_Static_Expression;
4462 procedure Set_Is_Subprogram_Descriptor
4463 (N : Node_Id; Val : Boolean := True) is
4465 pragma Assert (False
4466 or else NT (N).Nkind = N_Object_Declaration);
4467 Set_Flag16 (N, Val);
4468 end Set_Is_Subprogram_Descriptor;
4470 procedure Set_Is_Task_Allocation_Block
4471 (N : Node_Id; Val : Boolean := True) is
4473 pragma Assert (False
4474 or else NT (N).Nkind = N_Block_Statement);
4476 end Set_Is_Task_Allocation_Block;
4478 procedure Set_Is_Task_Master
4479 (N : Node_Id; Val : Boolean := True) is
4481 pragma Assert (False
4482 or else NT (N).Nkind = N_Block_Statement
4483 or else NT (N).Nkind = N_Subprogram_Body
4484 or else NT (N).Nkind = N_Task_Body);
4486 end Set_Is_Task_Master;
4488 procedure Set_Iteration_Scheme
4489 (N : Node_Id; Val : Node_Id) is
4491 pragma Assert (False
4492 or else NT (N).Nkind = N_Loop_Statement);
4493 Set_Node2_With_Parent (N, Val);
4494 end Set_Iteration_Scheme;
4497 (N : Node_Id; Val : Entity_Id) is
4499 pragma Assert (False
4500 or else NT (N).Nkind = N_Itype_Reference);
4501 Set_Node1 (N, Val); -- no parent, semantic field
4504 procedure Set_Kill_Range_Check
4505 (N : Node_Id; Val : Boolean := True) is
4507 pragma Assert (False
4508 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4509 Set_Flag11 (N, Val);
4510 end Set_Kill_Range_Check;
4512 procedure Set_Label_Construct
4513 (N : Node_Id; Val : Node_Id) is
4515 pragma Assert (False
4516 or else NT (N).Nkind = N_Implicit_Label_Declaration);
4517 Set_Node2 (N, Val); -- semantic field, no parent set
4518 end Set_Label_Construct;
4520 procedure Set_Last_Bit
4521 (N : Node_Id; Val : Node_Id) is
4523 pragma Assert (False
4524 or else NT (N).Nkind = N_Component_Clause);
4525 Set_Node4_With_Parent (N, Val);
4528 procedure Set_Last_Name
4529 (N : Node_Id; Val : Boolean := True) is
4531 pragma Assert (False
4532 or else NT (N).Nkind = N_With_Clause);
4536 procedure Set_Left_Opnd
4537 (N : Node_Id; Val : Node_Id) is
4539 pragma Assert (False
4540 or else NT (N).Nkind = N_And_Then
4541 or else NT (N).Nkind = N_In
4542 or else NT (N).Nkind = N_Not_In
4543 or else NT (N).Nkind = N_Or_Else
4544 or else NT (N).Nkind in N_Binary_Op);
4545 Set_Node2_With_Parent (N, Val);
4548 procedure Set_Library_Unit
4549 (N : Node_Id; Val : Node_Id) is
4551 pragma Assert (False
4552 or else NT (N).Nkind = N_Compilation_Unit
4553 or else NT (N).Nkind = N_Package_Body_Stub
4554 or else NT (N).Nkind = N_Protected_Body_Stub
4555 or else NT (N).Nkind = N_Subprogram_Body_Stub
4556 or else NT (N).Nkind = N_Task_Body_Stub
4557 or else NT (N).Nkind = N_With_Clause);
4558 Set_Node4 (N, Val); -- semantic field, no parent set
4559 end Set_Library_Unit;
4561 procedure Set_Limited_View_Installed
4562 (N : Node_Id; Val : Boolean := True) is
4564 pragma Assert (False
4565 or else NT (N).Nkind = N_Package_Specification
4566 or else NT (N).Nkind = N_With_Clause);
4567 Set_Flag18 (N, Val);
4568 end Set_Limited_View_Installed;
4570 procedure Set_Limited_Present
4571 (N : Node_Id; Val : Boolean := True) is
4573 pragma Assert (False
4574 or else NT (N).Nkind = N_Derived_Type_Definition
4575 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4576 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4577 or else NT (N).Nkind = N_Private_Extension_Declaration
4578 or else NT (N).Nkind = N_Private_Type_Declaration
4579 or else NT (N).Nkind = N_Record_Definition
4580 or else NT (N).Nkind = N_With_Clause);
4581 Set_Flag17 (N, Val);
4582 end Set_Limited_Present;
4584 procedure Set_Literals
4585 (N : Node_Id; Val : List_Id) is
4587 pragma Assert (False
4588 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4589 Set_List1_With_Parent (N, Val);
4592 procedure Set_Local_Raise_Not_OK
4593 (N : Node_Id; Val : Boolean := True) is
4595 pragma Assert (False
4596 or else NT (N).Nkind = N_Exception_Handler);
4598 end Set_Local_Raise_Not_OK;
4600 procedure Set_Local_Raise_Statements
4601 (N : Node_Id; Val : Elist_Id) is
4603 pragma Assert (False
4604 or else NT (N).Nkind = N_Exception_Handler);
4605 Set_Elist1 (N, Val);
4606 end Set_Local_Raise_Statements;
4608 procedure Set_Loop_Actions
4609 (N : Node_Id; Val : List_Id) is
4611 pragma Assert (False
4612 or else NT (N).Nkind = N_Component_Association);
4613 Set_List2 (N, Val); -- semantic field, no parent set
4614 end Set_Loop_Actions;
4616 procedure Set_Loop_Parameter_Specification
4617 (N : Node_Id; Val : Node_Id) is
4619 pragma Assert (False
4620 or else NT (N).Nkind = N_Iteration_Scheme);
4621 Set_Node4_With_Parent (N, Val);
4622 end Set_Loop_Parameter_Specification;
4624 procedure Set_Low_Bound
4625 (N : Node_Id; Val : Node_Id) is
4627 pragma Assert (False
4628 or else NT (N).Nkind = N_Range
4629 or else NT (N).Nkind = N_Real_Range_Specification
4630 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4631 Set_Node1_With_Parent (N, Val);
4634 procedure Set_Mod_Clause
4635 (N : Node_Id; Val : Node_Id) is
4637 pragma Assert (False
4638 or else NT (N).Nkind = N_Record_Representation_Clause);
4639 Set_Node2_With_Parent (N, Val);
4642 procedure Set_More_Ids
4643 (N : Node_Id; Val : Boolean := True) is
4645 pragma Assert (False
4646 or else NT (N).Nkind = N_Component_Declaration
4647 or else NT (N).Nkind = N_Discriminant_Specification
4648 or else NT (N).Nkind = N_Exception_Declaration
4649 or else NT (N).Nkind = N_Formal_Object_Declaration
4650 or else NT (N).Nkind = N_Number_Declaration
4651 or else NT (N).Nkind = N_Object_Declaration
4652 or else NT (N).Nkind = N_Parameter_Specification);
4656 procedure Set_Must_Be_Byte_Aligned
4657 (N : Node_Id; Val : Boolean := True) is
4659 pragma Assert (False
4660 or else NT (N).Nkind = N_Attribute_Reference);
4661 Set_Flag14 (N, Val);
4662 end Set_Must_Be_Byte_Aligned;
4664 procedure Set_Must_Not_Freeze
4665 (N : Node_Id; Val : Boolean := True) is
4667 pragma Assert (False
4668 or else NT (N).Nkind = N_Subtype_Indication
4669 or else NT (N).Nkind in N_Subexpr);
4671 end Set_Must_Not_Freeze;
4673 procedure Set_Must_Not_Override
4674 (N : Node_Id; Val : Boolean := True) is
4676 pragma Assert (False
4677 or else NT (N).Nkind = N_Entry_Declaration
4678 or else NT (N).Nkind = N_Function_Instantiation
4679 or else NT (N).Nkind = N_Function_Specification
4680 or else NT (N).Nkind = N_Procedure_Instantiation
4681 or else NT (N).Nkind = N_Procedure_Specification);
4682 Set_Flag15 (N, Val);
4683 end Set_Must_Not_Override;
4685 procedure Set_Must_Override
4686 (N : Node_Id; Val : Boolean := True) is
4688 pragma Assert (False
4689 or else NT (N).Nkind = N_Entry_Declaration
4690 or else NT (N).Nkind = N_Function_Instantiation
4691 or else NT (N).Nkind = N_Function_Specification
4692 or else NT (N).Nkind = N_Procedure_Instantiation
4693 or else NT (N).Nkind = N_Procedure_Specification);
4694 Set_Flag14 (N, Val);
4695 end Set_Must_Override;
4698 (N : Node_Id; Val : Node_Id) is
4700 pragma Assert (False
4701 or else NT (N).Nkind = N_Assignment_Statement
4702 or else NT (N).Nkind = N_Attribute_Definition_Clause
4703 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4704 or else NT (N).Nkind = N_Designator
4705 or else NT (N).Nkind = N_Entry_Call_Statement
4706 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4707 or else NT (N).Nkind = N_Exit_Statement
4708 or else NT (N).Nkind = N_Formal_Package_Declaration
4709 or else NT (N).Nkind = N_Function_Call
4710 or else NT (N).Nkind = N_Function_Instantiation
4711 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4712 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4713 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4714 or else NT (N).Nkind = N_Goto_Statement
4715 or else NT (N).Nkind = N_Object_Renaming_Declaration
4716 or else NT (N).Nkind = N_Package_Instantiation
4717 or else NT (N).Nkind = N_Package_Renaming_Declaration
4718 or else NT (N).Nkind = N_Procedure_Call_Statement
4719 or else NT (N).Nkind = N_Procedure_Instantiation
4720 or else NT (N).Nkind = N_Raise_Statement
4721 or else NT (N).Nkind = N_Requeue_Statement
4722 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4723 or else NT (N).Nkind = N_Subunit
4724 or else NT (N).Nkind = N_Variant_Part
4725 or else NT (N).Nkind = N_With_Clause);
4726 Set_Node2_With_Parent (N, Val);
4730 (N : Node_Id; Val : List_Id) is
4732 pragma Assert (False
4733 or else NT (N).Nkind = N_Abort_Statement
4734 or else NT (N).Nkind = N_Use_Package_Clause);
4735 Set_List2_With_Parent (N, Val);
4738 procedure Set_Next_Entity
4739 (N : Node_Id; Val : Node_Id) is
4741 pragma Assert (False
4742 or else NT (N).Nkind = N_Defining_Character_Literal
4743 or else NT (N).Nkind = N_Defining_Identifier
4744 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4745 Set_Node2 (N, Val); -- semantic field, no parent set
4746 end Set_Next_Entity;
4748 procedure Set_Next_Named_Actual
4749 (N : Node_Id; Val : Node_Id) is
4751 pragma Assert (False
4752 or else NT (N).Nkind = N_Parameter_Association);
4753 Set_Node4 (N, Val); -- semantic field, no parent set
4754 end Set_Next_Named_Actual;
4756 procedure Set_Next_Pragma
4757 (N : Node_Id; Val : Node_Id) is
4759 pragma Assert (False
4760 or else NT (N).Nkind = N_Pragma);
4761 Set_Node1 (N, Val); -- semantic field, no parent set
4762 end Set_Next_Pragma;
4764 procedure Set_Next_Rep_Item
4765 (N : Node_Id; Val : Node_Id) is
4767 pragma Assert (False
4768 or else NT (N).Nkind = N_Attribute_Definition_Clause
4769 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4770 or else NT (N).Nkind = N_Pragma
4771 or else NT (N).Nkind = N_Record_Representation_Clause);
4772 Set_Node5 (N, Val); -- semantic field, no parent set
4773 end Set_Next_Rep_Item;
4775 procedure Set_Next_Use_Clause
4776 (N : Node_Id; Val : Node_Id) is
4778 pragma Assert (False
4779 or else NT (N).Nkind = N_Use_Package_Clause
4780 or else NT (N).Nkind = N_Use_Type_Clause);
4781 Set_Node3 (N, Val); -- semantic field, no parent set
4782 end Set_Next_Use_Clause;
4784 procedure Set_No_Ctrl_Actions
4785 (N : Node_Id; Val : Boolean := True) is
4787 pragma Assert (False
4788 or else NT (N).Nkind = N_Assignment_Statement);
4790 end Set_No_Ctrl_Actions;
4792 procedure Set_No_Elaboration_Check
4793 (N : Node_Id; Val : Boolean := True) is
4795 pragma Assert (False
4796 or else NT (N).Nkind = N_Function_Call
4797 or else NT (N).Nkind = N_Procedure_Call_Statement);
4798 Set_Flag14 (N, Val);
4799 end Set_No_Elaboration_Check;
4801 procedure Set_No_Entities_Ref_In_Spec
4802 (N : Node_Id; Val : Boolean := True) is
4804 pragma Assert (False
4805 or else NT (N).Nkind = N_With_Clause);
4807 end Set_No_Entities_Ref_In_Spec;
4809 procedure Set_No_Initialization
4810 (N : Node_Id; Val : Boolean := True) is
4812 pragma Assert (False
4813 or else NT (N).Nkind = N_Allocator
4814 or else NT (N).Nkind = N_Object_Declaration);
4815 Set_Flag13 (N, Val);
4816 end Set_No_Initialization;
4818 procedure Set_No_Truncation
4819 (N : Node_Id; Val : Boolean := True) is
4821 pragma Assert (False
4822 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4823 Set_Flag17 (N, Val);
4824 end Set_No_Truncation;
4826 procedure Set_Null_Present
4827 (N : Node_Id; Val : Boolean := True) is
4829 pragma Assert (False
4830 or else NT (N).Nkind = N_Component_List
4831 or else NT (N).Nkind = N_Procedure_Specification
4832 or else NT (N).Nkind = N_Record_Definition);
4833 Set_Flag13 (N, Val);
4834 end Set_Null_Present;
4836 procedure Set_Null_Exclusion_Present
4837 (N : Node_Id; Val : Boolean := True) is
4839 pragma Assert (False
4840 or else NT (N).Nkind = N_Access_Definition
4841 or else NT (N).Nkind = N_Access_Function_Definition
4842 or else NT (N).Nkind = N_Access_Procedure_Definition
4843 or else NT (N).Nkind = N_Access_To_Object_Definition
4844 or else NT (N).Nkind = N_Allocator
4845 or else NT (N).Nkind = N_Component_Definition
4846 or else NT (N).Nkind = N_Derived_Type_Definition
4847 or else NT (N).Nkind = N_Discriminant_Specification
4848 or else NT (N).Nkind = N_Formal_Object_Declaration
4849 or else NT (N).Nkind = N_Function_Specification
4850 or else NT (N).Nkind = N_Object_Declaration
4851 or else NT (N).Nkind = N_Object_Renaming_Declaration
4852 or else NT (N).Nkind = N_Parameter_Specification
4853 or else NT (N).Nkind = N_Subtype_Declaration);
4854 Set_Flag11 (N, Val);
4855 end Set_Null_Exclusion_Present;
4857 procedure Set_Null_Record_Present
4858 (N : Node_Id; Val : Boolean := True) is
4860 pragma Assert (False
4861 or else NT (N).Nkind = N_Aggregate
4862 or else NT (N).Nkind = N_Extension_Aggregate);
4863 Set_Flag17 (N, Val);
4864 end Set_Null_Record_Present;
4866 procedure Set_Object_Definition
4867 (N : Node_Id; Val : Node_Id) is
4869 pragma Assert (False
4870 or else NT (N).Nkind = N_Object_Declaration);
4871 Set_Node4_With_Parent (N, Val);
4872 end Set_Object_Definition;
4874 procedure Set_Original_Discriminant
4875 (N : Node_Id; Val : Node_Id) is
4877 pragma Assert (False
4878 or else NT (N).Nkind = N_Identifier);
4879 Set_Node2 (N, Val); -- semantic field, no parent set
4880 end Set_Original_Discriminant;
4882 procedure Set_Original_Entity
4883 (N : Node_Id; Val : Entity_Id) is
4885 pragma Assert (False
4886 or else NT (N).Nkind = N_Integer_Literal
4887 or else NT (N).Nkind = N_Real_Literal);
4888 Set_Node2 (N, Val); -- semantic field, no parent set
4889 end Set_Original_Entity;
4891 procedure Set_Others_Discrete_Choices
4892 (N : Node_Id; Val : List_Id) is
4894 pragma Assert (False
4895 or else NT (N).Nkind = N_Others_Choice);
4896 Set_List1_With_Parent (N, Val);
4897 end Set_Others_Discrete_Choices;
4899 procedure Set_Out_Present
4900 (N : Node_Id; Val : Boolean := True) is
4902 pragma Assert (False
4903 or else NT (N).Nkind = N_Formal_Object_Declaration
4904 or else NT (N).Nkind = N_Parameter_Specification);
4905 Set_Flag17 (N, Val);
4906 end Set_Out_Present;
4908 procedure Set_Parameter_Associations
4909 (N : Node_Id; Val : List_Id) is
4911 pragma Assert (False
4912 or else NT (N).Nkind = N_Entry_Call_Statement
4913 or else NT (N).Nkind = N_Function_Call
4914 or else NT (N).Nkind = N_Procedure_Call_Statement);
4915 Set_List3_With_Parent (N, Val);
4916 end Set_Parameter_Associations;
4918 procedure Set_Parameter_List_Truncated
4919 (N : Node_Id; Val : Boolean := True) is
4921 pragma Assert (False
4922 or else NT (N).Nkind = N_Function_Call
4923 or else NT (N).Nkind = N_Procedure_Call_Statement);
4924 Set_Flag17 (N, Val);
4925 end Set_Parameter_List_Truncated;
4927 procedure Set_Parameter_Specifications
4928 (N : Node_Id; Val : List_Id) is
4930 pragma Assert (False
4931 or else NT (N).Nkind = N_Accept_Statement
4932 or else NT (N).Nkind = N_Access_Function_Definition
4933 or else NT (N).Nkind = N_Access_Procedure_Definition
4934 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4935 or else NT (N).Nkind = N_Entry_Declaration
4936 or else NT (N).Nkind = N_Function_Specification
4937 or else NT (N).Nkind = N_Procedure_Specification);
4938 Set_List3_With_Parent (N, Val);
4939 end Set_Parameter_Specifications;
4941 procedure Set_Parameter_Type
4942 (N : Node_Id; Val : Node_Id) is
4944 pragma Assert (False
4945 or else NT (N).Nkind = N_Parameter_Specification);
4946 Set_Node2_With_Parent (N, Val);
4947 end Set_Parameter_Type;
4949 procedure Set_Parent_Spec
4950 (N : Node_Id; Val : Node_Id) is
4952 pragma Assert (False
4953 or else NT (N).Nkind = N_Function_Instantiation
4954 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4955 or else NT (N).Nkind = N_Generic_Package_Declaration
4956 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4957 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4958 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4959 or else NT (N).Nkind = N_Package_Declaration
4960 or else NT (N).Nkind = N_Package_Instantiation
4961 or else NT (N).Nkind = N_Package_Renaming_Declaration
4962 or else NT (N).Nkind = N_Procedure_Instantiation
4963 or else NT (N).Nkind = N_Subprogram_Declaration
4964 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4965 Set_Node4 (N, Val); -- semantic field, no parent set
4966 end Set_Parent_Spec;
4968 procedure Set_PPC_Enabled
4969 (N : Node_Id; Val : Boolean := True) is
4971 pragma Assert (False
4972 or else NT (N).Nkind = N_Pragma);
4974 end Set_PPC_Enabled;
4976 procedure Set_Position
4977 (N : Node_Id; Val : Node_Id) is
4979 pragma Assert (False
4980 or else NT (N).Nkind = N_Component_Clause);
4981 Set_Node2_With_Parent (N, Val);
4984 procedure Set_Pragma_Argument_Associations
4985 (N : Node_Id; Val : List_Id) is
4987 pragma Assert (False
4988 or else NT (N).Nkind = N_Pragma);
4989 Set_List2_With_Parent (N, Val);
4990 end Set_Pragma_Argument_Associations;
4992 procedure Set_Pragma_Identifier
4993 (N : Node_Id; Val : Node_Id) is
4995 pragma Assert (False
4996 or else NT (N).Nkind = N_Pragma);
4997 Set_Node4_With_Parent (N, Val);
4998 end Set_Pragma_Identifier;
5000 procedure Set_Pragmas_After
5001 (N : Node_Id; Val : List_Id) is
5003 pragma Assert (False
5004 or else NT (N).Nkind = N_Compilation_Unit_Aux
5005 or else NT (N).Nkind = N_Terminate_Alternative);
5006 Set_List5_With_Parent (N, Val);
5007 end Set_Pragmas_After;
5009 procedure Set_Pragmas_Before
5010 (N : Node_Id; Val : List_Id) is
5012 pragma Assert (False
5013 or else NT (N).Nkind = N_Accept_Alternative
5014 or else NT (N).Nkind = N_Delay_Alternative
5015 or else NT (N).Nkind = N_Entry_Call_Alternative
5016 or else NT (N).Nkind = N_Mod_Clause
5017 or else NT (N).Nkind = N_Terminate_Alternative
5018 or else NT (N).Nkind = N_Triggering_Alternative);
5019 Set_List4_With_Parent (N, Val);
5020 end Set_Pragmas_Before;
5022 procedure Set_Prefix
5023 (N : Node_Id; Val : Node_Id) is
5025 pragma Assert (False
5026 or else NT (N).Nkind = N_Attribute_Reference
5027 or else NT (N).Nkind = N_Expanded_Name
5028 or else NT (N).Nkind = N_Explicit_Dereference
5029 or else NT (N).Nkind = N_Indexed_Component
5030 or else NT (N).Nkind = N_Reference
5031 or else NT (N).Nkind = N_Selected_Component
5032 or else NT (N).Nkind = N_Slice);
5033 Set_Node3_With_Parent (N, Val);
5036 procedure Set_Present_Expr
5037 (N : Node_Id; Val : Uint) is
5039 pragma Assert (False
5040 or else NT (N).Nkind = N_Variant);
5042 end Set_Present_Expr;
5044 procedure Set_Prev_Ids
5045 (N : Node_Id; Val : Boolean := True) is
5047 pragma Assert (False
5048 or else NT (N).Nkind = N_Component_Declaration
5049 or else NT (N).Nkind = N_Discriminant_Specification
5050 or else NT (N).Nkind = N_Exception_Declaration
5051 or else NT (N).Nkind = N_Formal_Object_Declaration
5052 or else NT (N).Nkind = N_Number_Declaration
5053 or else NT (N).Nkind = N_Object_Declaration
5054 or else NT (N).Nkind = N_Parameter_Specification);
5058 procedure Set_Print_In_Hex
5059 (N : Node_Id; Val : Boolean := True) is
5061 pragma Assert (False
5062 or else NT (N).Nkind = N_Integer_Literal);
5063 Set_Flag13 (N, Val);
5064 end Set_Print_In_Hex;
5066 procedure Set_Private_Declarations
5067 (N : Node_Id; Val : List_Id) is
5069 pragma Assert (False
5070 or else NT (N).Nkind = N_Package_Specification
5071 or else NT (N).Nkind = N_Protected_Definition
5072 or else NT (N).Nkind = N_Task_Definition);
5073 Set_List3_With_Parent (N, Val);
5074 end Set_Private_Declarations;
5076 procedure Set_Private_Present
5077 (N : Node_Id; Val : Boolean := True) is
5079 pragma Assert (False
5080 or else NT (N).Nkind = N_Compilation_Unit
5081 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5082 or else NT (N).Nkind = N_With_Clause);
5083 Set_Flag15 (N, Val);
5084 end Set_Private_Present;
5086 procedure Set_Procedure_To_Call
5087 (N : Node_Id; Val : Node_Id) is
5089 pragma Assert (False
5090 or else NT (N).Nkind = N_Allocator
5091 or else NT (N).Nkind = N_Extended_Return_Statement
5092 or else NT (N).Nkind = N_Free_Statement
5093 or else NT (N).Nkind = N_Return_Statement);
5094 Set_Node2 (N, Val); -- semantic field, no parent set
5095 end Set_Procedure_To_Call;
5097 procedure Set_Proper_Body
5098 (N : Node_Id; Val : Node_Id) is
5100 pragma Assert (False
5101 or else NT (N).Nkind = N_Subunit);
5102 Set_Node1_With_Parent (N, Val);
5103 end Set_Proper_Body;
5105 procedure Set_Protected_Definition
5106 (N : Node_Id; Val : Node_Id) is
5108 pragma Assert (False
5109 or else NT (N).Nkind = N_Protected_Type_Declaration
5110 or else NT (N).Nkind = N_Single_Protected_Declaration);
5111 Set_Node3_With_Parent (N, Val);
5112 end Set_Protected_Definition;
5114 procedure Set_Protected_Present
5115 (N : Node_Id; Val : Boolean := True) is
5117 pragma Assert (False
5118 or else NT (N).Nkind = N_Access_Function_Definition
5119 or else NT (N).Nkind = N_Access_Procedure_Definition
5120 or else NT (N).Nkind = N_Derived_Type_Definition
5121 or else NT (N).Nkind = N_Record_Definition);
5123 end Set_Protected_Present;
5125 procedure Set_Raises_Constraint_Error
5126 (N : Node_Id; Val : Boolean := True) is
5128 pragma Assert (False
5129 or else NT (N).Nkind in N_Subexpr);
5131 end Set_Raises_Constraint_Error;
5133 procedure Set_Range_Constraint
5134 (N : Node_Id; Val : Node_Id) is
5136 pragma Assert (False
5137 or else NT (N).Nkind = N_Delta_Constraint
5138 or else NT (N).Nkind = N_Digits_Constraint);
5139 Set_Node4_With_Parent (N, Val);
5140 end Set_Range_Constraint;
5142 procedure Set_Range_Expression
5143 (N : Node_Id; Val : Node_Id) is
5145 pragma Assert (False
5146 or else NT (N).Nkind = N_Range_Constraint);
5147 Set_Node4_With_Parent (N, Val);
5148 end Set_Range_Expression;
5150 procedure Set_Real_Range_Specification
5151 (N : Node_Id; Val : Node_Id) is
5153 pragma Assert (False
5154 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
5155 or else NT (N).Nkind = N_Floating_Point_Definition
5156 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
5157 Set_Node4_With_Parent (N, Val);
5158 end Set_Real_Range_Specification;
5160 procedure Set_Realval
5161 (N : Node_Id; Val : Ureal) is
5163 pragma Assert (False
5164 or else NT (N).Nkind = N_Real_Literal);
5165 Set_Ureal3 (N, Val);
5168 procedure Set_Reason
5169 (N : Node_Id; Val : Uint) is
5171 pragma Assert (False
5172 or else NT (N).Nkind = N_Raise_Constraint_Error
5173 or else NT (N).Nkind = N_Raise_Program_Error
5174 or else NT (N).Nkind = N_Raise_Storage_Error);
5178 procedure Set_Record_Extension_Part
5179 (N : Node_Id; Val : Node_Id) is
5181 pragma Assert (False
5182 or else NT (N).Nkind = N_Derived_Type_Definition);
5183 Set_Node3_With_Parent (N, Val);
5184 end Set_Record_Extension_Part;
5186 procedure Set_Redundant_Use
5187 (N : Node_Id; Val : Boolean := True) is
5189 pragma Assert (False
5190 or else NT (N).Nkind = N_Attribute_Reference
5191 or else NT (N).Nkind = N_Expanded_Name
5192 or else NT (N).Nkind = N_Identifier);
5193 Set_Flag13 (N, Val);
5194 end Set_Redundant_Use;
5196 procedure Set_Renaming_Exception
5197 (N : Node_Id; Val : Node_Id) is
5199 pragma Assert (False
5200 or else NT (N).Nkind = N_Exception_Declaration);
5202 end Set_Renaming_Exception;
5204 procedure Set_Result_Definition
5205 (N : Node_Id; Val : Node_Id) is
5207 pragma Assert (False
5208 or else NT (N).Nkind = N_Access_Function_Definition
5209 or else NT (N).Nkind = N_Function_Specification);
5210 Set_Node4_With_Parent (N, Val);
5211 end Set_Result_Definition;
5213 procedure Set_Return_Object_Declarations
5214 (N : Node_Id; Val : List_Id) is
5216 pragma Assert (False
5217 or else NT (N).Nkind = N_Extended_Return_Statement);
5218 Set_List3_With_Parent (N, Val);
5219 end Set_Return_Object_Declarations;
5221 procedure Set_Return_Statement_Entity
5222 (N : Node_Id; Val : Node_Id) is
5224 pragma Assert (False
5225 or else NT (N).Nkind = N_Extended_Return_Statement
5226 or else NT (N).Nkind = N_Return_Statement);
5227 Set_Node5 (N, Val); -- semantic field, no parent set
5228 end Set_Return_Statement_Entity;
5230 procedure Set_Reverse_Present
5231 (N : Node_Id; Val : Boolean := True) is
5233 pragma Assert (False
5234 or else NT (N).Nkind = N_Loop_Parameter_Specification);
5235 Set_Flag15 (N, Val);
5236 end Set_Reverse_Present;
5238 procedure Set_Right_Opnd
5239 (N : Node_Id; Val : Node_Id) is
5241 pragma Assert (False
5242 or else NT (N).Nkind in N_Op
5243 or else NT (N).Nkind = N_And_Then
5244 or else NT (N).Nkind = N_In
5245 or else NT (N).Nkind = N_Not_In
5246 or else NT (N).Nkind = N_Or_Else);
5247 Set_Node3_With_Parent (N, Val);
5250 procedure Set_Rounded_Result
5251 (N : Node_Id; Val : Boolean := True) is
5253 pragma Assert (False
5254 or else NT (N).Nkind = N_Op_Divide
5255 or else NT (N).Nkind = N_Op_Multiply
5256 or else NT (N).Nkind = N_Type_Conversion);
5257 Set_Flag18 (N, Val);
5258 end Set_Rounded_Result;
5261 (N : Node_Id; Val : Node_Id) is
5263 pragma Assert (False
5264 or else NT (N).Nkind = N_Defining_Character_Literal
5265 or else NT (N).Nkind = N_Defining_Identifier
5266 or else NT (N).Nkind = N_Defining_Operator_Symbol);
5267 Set_Node3 (N, Val); -- semantic field, no parent set
5270 procedure Set_Select_Alternatives
5271 (N : Node_Id; Val : List_Id) is
5273 pragma Assert (False
5274 or else NT (N).Nkind = N_Selective_Accept);
5275 Set_List1_With_Parent (N, Val);
5276 end Set_Select_Alternatives;
5278 procedure Set_Selector_Name
5279 (N : Node_Id; Val : Node_Id) is
5281 pragma Assert (False
5282 or else NT (N).Nkind = N_Expanded_Name
5283 or else NT (N).Nkind = N_Generic_Association
5284 or else NT (N).Nkind = N_Parameter_Association
5285 or else NT (N).Nkind = N_Selected_Component);
5286 Set_Node2_With_Parent (N, Val);
5287 end Set_Selector_Name;
5289 procedure Set_Selector_Names
5290 (N : Node_Id; Val : List_Id) is
5292 pragma Assert (False
5293 or else NT (N).Nkind = N_Discriminant_Association);
5294 Set_List1_With_Parent (N, Val);
5295 end Set_Selector_Names;
5297 procedure Set_Shift_Count_OK
5298 (N : Node_Id; Val : Boolean := True) is
5300 pragma Assert (False
5301 or else NT (N).Nkind = N_Op_Rotate_Left
5302 or else NT (N).Nkind = N_Op_Rotate_Right
5303 or else NT (N).Nkind = N_Op_Shift_Left
5304 or else NT (N).Nkind = N_Op_Shift_Right
5305 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
5307 end Set_Shift_Count_OK;
5309 procedure Set_Source_Type
5310 (N : Node_Id; Val : Entity_Id) is
5312 pragma Assert (False
5313 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
5314 Set_Node1 (N, Val); -- semantic field, no parent set
5315 end Set_Source_Type;
5317 procedure Set_Specification
5318 (N : Node_Id; Val : Node_Id) is
5320 pragma Assert (False
5321 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
5322 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
5323 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
5324 or else NT (N).Nkind = N_Generic_Package_Declaration
5325 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
5326 or else NT (N).Nkind = N_Package_Declaration
5327 or else NT (N).Nkind = N_Subprogram_Body
5328 or else NT (N).Nkind = N_Subprogram_Body_Stub
5329 or else NT (N).Nkind = N_Subprogram_Declaration
5330 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
5331 Set_Node1_With_Parent (N, Val);
5332 end Set_Specification;
5334 procedure Set_Statements
5335 (N : Node_Id; Val : List_Id) is
5337 pragma Assert (False
5338 or else NT (N).Nkind = N_Abortable_Part
5339 or else NT (N).Nkind = N_Accept_Alternative
5340 or else NT (N).Nkind = N_Case_Statement_Alternative
5341 or else NT (N).Nkind = N_Delay_Alternative
5342 or else NT (N).Nkind = N_Entry_Call_Alternative
5343 or else NT (N).Nkind = N_Exception_Handler
5344 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
5345 or else NT (N).Nkind = N_Loop_Statement
5346 or else NT (N).Nkind = N_Triggering_Alternative);
5347 Set_List3_With_Parent (N, Val);
5350 procedure Set_Static_Processing_OK
5351 (N : Node_Id; Val : Boolean) is
5353 pragma Assert (False
5354 or else NT (N).Nkind = N_Aggregate);
5356 end Set_Static_Processing_OK;
5358 procedure Set_Storage_Pool
5359 (N : Node_Id; Val : Node_Id) is
5361 pragma Assert (False
5362 or else NT (N).Nkind = N_Allocator
5363 or else NT (N).Nkind = N_Extended_Return_Statement
5364 or else NT (N).Nkind = N_Free_Statement
5365 or else NT (N).Nkind = N_Return_Statement);
5366 Set_Node1 (N, Val); -- semantic field, no parent set
5367 end Set_Storage_Pool;
5369 procedure Set_Strval
5370 (N : Node_Id; Val : String_Id) is
5372 pragma Assert (False
5373 or else NT (N).Nkind = N_Operator_Symbol
5374 or else NT (N).Nkind = N_String_Literal);
5378 procedure Set_Subtype_Indication
5379 (N : Node_Id; Val : Node_Id) is
5381 pragma Assert (False
5382 or else NT (N).Nkind = N_Access_To_Object_Definition
5383 or else NT (N).Nkind = N_Component_Definition
5384 or else NT (N).Nkind = N_Derived_Type_Definition
5385 or else NT (N).Nkind = N_Private_Extension_Declaration
5386 or else NT (N).Nkind = N_Subtype_Declaration);
5387 Set_Node5_With_Parent (N, Val);
5388 end Set_Subtype_Indication;
5390 procedure Set_Subtype_Mark
5391 (N : Node_Id; Val : Node_Id) is
5393 pragma Assert (False
5394 or else NT (N).Nkind = N_Access_Definition
5395 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5396 or else NT (N).Nkind = N_Formal_Object_Declaration
5397 or else NT (N).Nkind = N_Object_Renaming_Declaration
5398 or else NT (N).Nkind = N_Qualified_Expression
5399 or else NT (N).Nkind = N_Subtype_Indication
5400 or else NT (N).Nkind = N_Type_Conversion
5401 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
5402 Set_Node4_With_Parent (N, Val);
5403 end Set_Subtype_Mark;
5405 procedure Set_Subtype_Marks
5406 (N : Node_Id; Val : List_Id) is
5408 pragma Assert (False
5409 or else NT (N).Nkind = N_Unconstrained_Array_Definition
5410 or else NT (N).Nkind = N_Use_Type_Clause);
5411 Set_List2_With_Parent (N, Val);
5412 end Set_Subtype_Marks;
5414 procedure Set_Synchronized_Present
5415 (N : Node_Id; Val : Boolean := True) is
5417 pragma Assert (False
5418 or else NT (N).Nkind = N_Derived_Type_Definition
5419 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5420 or else NT (N).Nkind = N_Private_Extension_Declaration
5421 or else NT (N).Nkind = N_Record_Definition);
5423 end Set_Synchronized_Present;
5425 procedure Set_Tagged_Present
5426 (N : Node_Id; Val : Boolean := True) is
5428 pragma Assert (False
5429 or else NT (N).Nkind = N_Formal_Private_Type_Definition
5430 or else NT (N).Nkind = N_Incomplete_Type_Declaration
5431 or else NT (N).Nkind = N_Private_Type_Declaration
5432 or else NT (N).Nkind = N_Record_Definition);
5433 Set_Flag15 (N, Val);
5434 end Set_Tagged_Present;
5436 procedure Set_Target_Type
5437 (N : Node_Id; Val : Entity_Id) is
5439 pragma Assert (False
5440 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
5441 Set_Node2 (N, Val); -- semantic field, no parent set
5442 end Set_Target_Type;
5444 procedure Set_Task_Definition
5445 (N : Node_Id; Val : Node_Id) is
5447 pragma Assert (False
5448 or else NT (N).Nkind = N_Single_Task_Declaration
5449 or else NT (N).Nkind = N_Task_Type_Declaration);
5450 Set_Node3_With_Parent (N, Val);
5451 end Set_Task_Definition;
5453 procedure Set_Task_Present
5454 (N : Node_Id; Val : Boolean := True) is
5456 pragma Assert (False
5457 or else NT (N).Nkind = N_Derived_Type_Definition
5458 or else NT (N).Nkind = N_Record_Definition);
5460 end Set_Task_Present;
5462 procedure Set_Then_Actions
5463 (N : Node_Id; Val : List_Id) is
5465 pragma Assert (False
5466 or else NT (N).Nkind = N_Conditional_Expression);
5467 Set_List2 (N, Val); -- semantic field, no parent set
5468 end Set_Then_Actions;
5470 procedure Set_Then_Statements
5471 (N : Node_Id; Val : List_Id) is
5473 pragma Assert (False
5474 or else NT (N).Nkind = N_Elsif_Part
5475 or else NT (N).Nkind = N_If_Statement);
5476 Set_List2_With_Parent (N, Val);
5477 end Set_Then_Statements;
5479 procedure Set_Treat_Fixed_As_Integer
5480 (N : Node_Id; Val : Boolean := True) is
5482 pragma Assert (False
5483 or else NT (N).Nkind = N_Op_Divide
5484 or else NT (N).Nkind = N_Op_Mod
5485 or else NT (N).Nkind = N_Op_Multiply
5486 or else NT (N).Nkind = N_Op_Rem);
5487 Set_Flag14 (N, Val);
5488 end Set_Treat_Fixed_As_Integer;
5490 procedure Set_Triggering_Alternative
5491 (N : Node_Id; Val : Node_Id) is
5493 pragma Assert (False
5494 or else NT (N).Nkind = N_Asynchronous_Select);
5495 Set_Node1_With_Parent (N, Val);
5496 end Set_Triggering_Alternative;
5498 procedure Set_Triggering_Statement
5499 (N : Node_Id; Val : Node_Id) is
5501 pragma Assert (False
5502 or else NT (N).Nkind = N_Triggering_Alternative);
5503 Set_Node1_With_Parent (N, Val);
5504 end Set_Triggering_Statement;
5506 procedure Set_TSS_Elist
5507 (N : Node_Id; Val : Elist_Id) is
5509 pragma Assert (False
5510 or else NT (N).Nkind = N_Freeze_Entity);
5511 Set_Elist3 (N, Val); -- semantic field, no parent set
5514 procedure Set_Type_Definition
5515 (N : Node_Id; Val : Node_Id) is
5517 pragma Assert (False
5518 or else NT (N).Nkind = N_Full_Type_Declaration);
5519 Set_Node3_With_Parent (N, Val);
5520 end Set_Type_Definition;
5523 (N : Node_Id; Val : Node_Id) is
5525 pragma Assert (False
5526 or else NT (N).Nkind = N_Compilation_Unit);
5527 Set_Node2_With_Parent (N, Val);
5530 procedure Set_Unknown_Discriminants_Present
5531 (N : Node_Id; Val : Boolean := True) is
5533 pragma Assert (False
5534 or else NT (N).Nkind = N_Formal_Type_Declaration
5535 or else NT (N).Nkind = N_Incomplete_Type_Declaration
5536 or else NT (N).Nkind = N_Private_Extension_Declaration
5537 or else NT (N).Nkind = N_Private_Type_Declaration);
5538 Set_Flag13 (N, Val);
5539 end Set_Unknown_Discriminants_Present;
5541 procedure Set_Unreferenced_In_Spec
5542 (N : Node_Id; Val : Boolean := True) is
5544 pragma Assert (False
5545 or else NT (N).Nkind = N_With_Clause);
5547 end Set_Unreferenced_In_Spec;
5549 procedure Set_Variant_Part
5550 (N : Node_Id; Val : Node_Id) is
5552 pragma Assert (False
5553 or else NT (N).Nkind = N_Component_List);
5554 Set_Node4_With_Parent (N, Val);
5555 end Set_Variant_Part;
5557 procedure Set_Variants
5558 (N : Node_Id; Val : List_Id) is
5560 pragma Assert (False
5561 or else NT (N).Nkind = N_Variant_Part);
5562 Set_List1_With_Parent (N, Val);
5565 procedure Set_Visible_Declarations
5566 (N : Node_Id; Val : List_Id) is
5568 pragma Assert (False
5569 or else NT (N).Nkind = N_Package_Specification
5570 or else NT (N).Nkind = N_Protected_Definition
5571 or else NT (N).Nkind = N_Task_Definition);
5572 Set_List2_With_Parent (N, Val);
5573 end Set_Visible_Declarations;
5575 procedure Set_Was_Originally_Stub
5576 (N : Node_Id; Val : Boolean := True) is
5578 pragma Assert (False
5579 or else NT (N).Nkind = N_Package_Body
5580 or else NT (N).Nkind = N_Protected_Body
5581 or else NT (N).Nkind = N_Subprogram_Body
5582 or else NT (N).Nkind = N_Task_Body);
5583 Set_Flag13 (N, Val);
5584 end Set_Was_Originally_Stub;
5586 procedure Set_Zero_Cost_Handling
5587 (N : Node_Id; Val : Boolean := True) is
5589 pragma Assert (False
5590 or else NT (N).Nkind = N_Exception_Handler
5591 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
5593 end Set_Zero_Cost_Handling;
5595 -------------------------
5596 -- Iterator Procedures --
5597 -------------------------
5599 procedure Next_Entity (N : in out Node_Id) is
5601 N := Next_Entity (N);
5604 procedure Next_Named_Actual (N : in out Node_Id) is
5606 N := Next_Named_Actual (N);
5607 end Next_Named_Actual;
5609 procedure Next_Rep_Item (N : in out Node_Id) is
5611 N := Next_Rep_Item (N);
5614 procedure Next_Use_Clause (N : in out Node_Id) is
5616 N := Next_Use_Clause (N);
5617 end Next_Use_Clause;
5623 function End_Location (N : Node_Id) return Source_Ptr is
5624 L : constant Uint := End_Span (N);
5629 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
5633 ----------------------
5634 -- Set_End_Location --
5635 ----------------------
5637 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
5640 UI_From_Int (Int (S) - Int (Sloc (N))));
5641 end Set_End_Location;
5650 V2 : Node_Kind) return Boolean
5653 return T = V1 or else
5661 V3 : Node_Kind) return Boolean
5664 return T = V1 or else
5674 V4 : Node_Kind) return Boolean
5677 return T = V1 or else
5689 V5 : Node_Kind) return Boolean
5692 return T = V1 or else
5706 V6 : Node_Kind) return Boolean
5709 return T = V1 or else
5725 V7 : Node_Kind) return Boolean
5728 return T = V1 or else
5746 V8 : Node_Kind) return Boolean
5749 return T = V1 or else
5763 function Pragma_Name (N : Node_Id) return Name_Id is
5765 return Chars (Pragma_Identifier (N));