1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2009, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks (All_Checks);
33 -- No subprogram ordering check, due to logical grouping
35 with Atree; use Atree;
39 use Atree.Unchecked_Access;
40 -- This package is one of the few packages which is allowed to make direct
41 -- references to tree nodes (since it is in the business of providing a
42 -- higher level of tree access which other clients are expected to use and
43 -- which implements checks).
45 use Atree_Private_Part;
46 -- The only reason that we ask for direct access to the private part of
47 -- the tree package is so that we can directly reference the Nkind field
48 -- of nodes table entries. We do this since it helps the efficiency of
49 -- the Sinfo debugging checks considerably (note that when we are checking
50 -- Nkind values, we don't need to check for a valid node reference, because
51 -- we will check that anyway when we reference the field).
53 NT : Nodes.Table_Ptr renames Nodes.Table;
54 -- A short hand abbreviation, useful for the debugging checks
56 ----------------------------
57 -- Field Access Functions --
58 ----------------------------
60 function ABE_Is_Certain
61 (N : Node_Id) return Boolean is
64 or else NT (N).Nkind = N_Formal_Package_Declaration
65 or else NT (N).Nkind = N_Function_Call
66 or else NT (N).Nkind = N_Function_Instantiation
67 or else NT (N).Nkind = N_Package_Instantiation
68 or else NT (N).Nkind = N_Procedure_Call_Statement
69 or else NT (N).Nkind = N_Procedure_Instantiation);
73 function Abort_Present
74 (N : Node_Id) return Boolean is
77 or else NT (N).Nkind = N_Requeue_Statement);
81 function Abortable_Part
82 (N : Node_Id) return Node_Id is
85 or else NT (N).Nkind = N_Asynchronous_Select);
89 function Abstract_Present
90 (N : Node_Id) return Boolean is
93 or else NT (N).Nkind = N_Derived_Type_Definition
94 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
95 or else NT (N).Nkind = N_Formal_Private_Type_Definition
96 or else NT (N).Nkind = N_Private_Extension_Declaration
97 or else NT (N).Nkind = N_Private_Type_Declaration
98 or else NT (N).Nkind = N_Record_Definition);
100 end Abstract_Present;
102 function Accept_Handler_Records
103 (N : Node_Id) return List_Id is
106 or else NT (N).Nkind = N_Accept_Alternative);
108 end Accept_Handler_Records;
110 function Accept_Statement
111 (N : Node_Id) return Node_Id is
114 or else NT (N).Nkind = N_Accept_Alternative);
116 end Accept_Statement;
118 function Access_Definition
119 (N : Node_Id) return Node_Id is
122 or else NT (N).Nkind = N_Component_Definition
123 or else NT (N).Nkind = N_Formal_Object_Declaration
124 or else NT (N).Nkind = N_Object_Renaming_Declaration);
126 end Access_Definition;
128 function Access_To_Subprogram_Definition
129 (N : Node_Id) return Node_Id is
132 or else NT (N).Nkind = N_Access_Definition);
134 end Access_To_Subprogram_Definition;
136 function Access_Types_To_Process
137 (N : Node_Id) return Elist_Id is
140 or else NT (N).Nkind = N_Freeze_Entity);
142 end Access_Types_To_Process;
145 (N : Node_Id) return List_Id is
148 or else NT (N).Nkind = N_And_Then
149 or else NT (N).Nkind = N_Compilation_Unit_Aux
150 or else NT (N).Nkind = N_Freeze_Entity
151 or else NT (N).Nkind = N_Or_Else);
155 function Activation_Chain_Entity
156 (N : Node_Id) return Node_Id is
159 or else NT (N).Nkind = N_Block_Statement
160 or else NT (N).Nkind = N_Entry_Body
161 or else NT (N).Nkind = N_Generic_Package_Declaration
162 or else NT (N).Nkind = N_Package_Declaration
163 or else NT (N).Nkind = N_Subprogram_Body
164 or else NT (N).Nkind = N_Task_Body);
166 end Activation_Chain_Entity;
168 function Acts_As_Spec
169 (N : Node_Id) return Boolean is
172 or else NT (N).Nkind = N_Compilation_Unit
173 or else NT (N).Nkind = N_Subprogram_Body);
177 function Actual_Designated_Subtype
178 (N : Node_Id) return Node_Id is
181 or else NT (N).Nkind = N_Explicit_Dereference
182 or else NT (N).Nkind = N_Free_Statement);
184 end Actual_Designated_Subtype;
186 function Address_Warning_Posted
187 (N : Node_Id) return Boolean is
190 or else NT (N).Nkind = N_Attribute_Definition_Clause);
192 end Address_Warning_Posted;
194 function Aggregate_Bounds
195 (N : Node_Id) return Node_Id is
198 or else NT (N).Nkind = N_Aggregate);
200 end Aggregate_Bounds;
202 function Aliased_Present
203 (N : Node_Id) return Boolean is
206 or else NT (N).Nkind = N_Component_Definition
207 or else NT (N).Nkind = N_Object_Declaration);
212 (N : Node_Id) return Boolean is
215 or else NT (N).Nkind = N_Others_Choice);
220 (N : Node_Id) return Boolean is
223 or else NT (N).Nkind = N_Access_Definition
224 or else NT (N).Nkind = N_Access_To_Object_Definition);
228 function Alternatives
229 (N : Node_Id) return List_Id is
232 or else NT (N).Nkind = N_Case_Statement);
236 function Ancestor_Part
237 (N : Node_Id) return Node_Id is
240 or else NT (N).Nkind = N_Extension_Aggregate);
244 function Array_Aggregate
245 (N : Node_Id) return Node_Id is
248 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
252 function Assignment_OK
253 (N : Node_Id) return Boolean is
256 or else NT (N).Nkind = N_Object_Declaration
257 or else NT (N).Nkind in N_Subexpr);
261 function Associated_Node
262 (N : Node_Id) return Node_Id is
265 or else NT (N).Nkind in N_Has_Entity
266 or else NT (N).Nkind = N_Aggregate
267 or else NT (N).Nkind = N_Extension_Aggregate
268 or else NT (N).Nkind = N_Selected_Component);
273 (N : Node_Id) return Node_Id is
276 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
280 function Attribute_Name
281 (N : Node_Id) return Name_Id is
284 or else NT (N).Nkind = N_Attribute_Reference);
288 function Aux_Decls_Node
289 (N : Node_Id) return Node_Id is
292 or else NT (N).Nkind = N_Compilation_Unit);
296 function Backwards_OK
297 (N : Node_Id) return Boolean is
300 or else NT (N).Nkind = N_Assignment_Statement);
304 function Bad_Is_Detected
305 (N : Node_Id) return Boolean is
308 or else NT (N).Nkind = N_Subprogram_Body);
312 function Body_Required
313 (N : Node_Id) return Boolean is
316 or else NT (N).Nkind = N_Compilation_Unit);
320 function Body_To_Inline
321 (N : Node_Id) return Node_Id is
324 or else NT (N).Nkind = N_Subprogram_Declaration);
329 (N : Node_Id) return Boolean is
332 or else NT (N).Nkind = N_Component_Association
333 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
334 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
335 or else NT (N).Nkind = N_Formal_Package_Declaration
336 or else NT (N).Nkind = N_Generic_Association);
341 (N : Node_Id) return Boolean is
344 or else NT (N).Nkind = N_Extended_Return_Statement
345 or else NT (N).Nkind = N_Return_Statement);
349 function Char_Literal_Value
350 (N : Node_Id) return Uint is
353 or else NT (N).Nkind = N_Character_Literal);
355 end Char_Literal_Value;
358 (N : Node_Id) return Name_Id is
361 or else NT (N).Nkind in N_Has_Chars);
365 function Check_Address_Alignment
366 (N : Node_Id) return Boolean is
369 or else NT (N).Nkind = N_Attribute_Definition_Clause);
371 end Check_Address_Alignment;
373 function Choice_Parameter
374 (N : Node_Id) return Node_Id is
377 or else NT (N).Nkind = N_Exception_Handler);
379 end Choice_Parameter;
382 (N : Node_Id) return List_Id is
385 or else NT (N).Nkind = N_Component_Association);
389 function Coextensions
390 (N : Node_Id) return Elist_Id is
393 or else NT (N).Nkind = N_Allocator);
397 function Comes_From_Extended_Return_Statement
398 (N : Node_Id) return Boolean is
401 or else NT (N).Nkind = N_Return_Statement);
403 end Comes_From_Extended_Return_Statement;
405 function Compile_Time_Known_Aggregate
406 (N : Node_Id) return Boolean is
409 or else NT (N).Nkind = N_Aggregate);
411 end Compile_Time_Known_Aggregate;
413 function Component_Associations
414 (N : Node_Id) return List_Id is
417 or else NT (N).Nkind = N_Aggregate
418 or else NT (N).Nkind = N_Extension_Aggregate);
420 end Component_Associations;
422 function Component_Clauses
423 (N : Node_Id) return List_Id is
426 or else NT (N).Nkind = N_Record_Representation_Clause);
428 end Component_Clauses;
430 function Component_Definition
431 (N : Node_Id) return Node_Id is
434 or else NT (N).Nkind = N_Component_Declaration
435 or else NT (N).Nkind = N_Constrained_Array_Definition
436 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
438 end Component_Definition;
440 function Component_Items
441 (N : Node_Id) return List_Id is
444 or else NT (N).Nkind = N_Component_List);
448 function Component_List
449 (N : Node_Id) return Node_Id is
452 or else NT (N).Nkind = N_Record_Definition
453 or else NT (N).Nkind = N_Variant);
457 function Component_Name
458 (N : Node_Id) return Node_Id is
461 or else NT (N).Nkind = N_Component_Clause);
466 (N : Node_Id) return Node_Id is
469 or else NT (N).Nkind = N_Accept_Alternative
470 or else NT (N).Nkind = N_Delay_Alternative
471 or else NT (N).Nkind = N_Elsif_Part
472 or else NT (N).Nkind = N_Entry_Body_Formal_Part
473 or else NT (N).Nkind = N_Exit_Statement
474 or else NT (N).Nkind = N_If_Statement
475 or else NT (N).Nkind = N_Iteration_Scheme
476 or else NT (N).Nkind = N_Raise_Constraint_Error
477 or else NT (N).Nkind = N_Raise_Program_Error
478 or else NT (N).Nkind = N_Raise_Storage_Error
479 or else NT (N).Nkind = N_Terminate_Alternative);
483 function Condition_Actions
484 (N : Node_Id) return List_Id is
487 or else NT (N).Nkind = N_Elsif_Part
488 or else NT (N).Nkind = N_Iteration_Scheme);
490 end Condition_Actions;
492 function Config_Pragmas
493 (N : Node_Id) return List_Id is
496 or else NT (N).Nkind = N_Compilation_Unit_Aux);
500 function Constant_Present
501 (N : Node_Id) return Boolean is
504 or else NT (N).Nkind = N_Access_Definition
505 or else NT (N).Nkind = N_Access_To_Object_Definition
506 or else NT (N).Nkind = N_Object_Declaration);
508 end Constant_Present;
511 (N : Node_Id) return Node_Id is
514 or else NT (N).Nkind = N_Subtype_Indication);
519 (N : Node_Id) return List_Id is
522 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
526 function Context_Installed
527 (N : Node_Id) return Boolean is
530 or else NT (N).Nkind = N_With_Clause);
532 end Context_Installed;
534 function Context_Items
535 (N : Node_Id) return List_Id is
538 or else NT (N).Nkind = N_Compilation_Unit);
542 function Controlling_Argument
543 (N : Node_Id) return Node_Id is
546 or else NT (N).Nkind = N_Function_Call
547 or else NT (N).Nkind = N_Procedure_Call_Statement);
549 end Controlling_Argument;
551 function Conversion_OK
552 (N : Node_Id) return Boolean is
555 or else NT (N).Nkind = N_Type_Conversion);
559 function Corresponding_Body
560 (N : Node_Id) return Node_Id is
563 or else NT (N).Nkind = N_Entry_Declaration
564 or else NT (N).Nkind = N_Generic_Package_Declaration
565 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
566 or else NT (N).Nkind = N_Package_Body_Stub
567 or else NT (N).Nkind = N_Package_Declaration
568 or else NT (N).Nkind = N_Protected_Body_Stub
569 or else NT (N).Nkind = N_Protected_Type_Declaration
570 or else NT (N).Nkind = N_Subprogram_Body_Stub
571 or else NT (N).Nkind = N_Subprogram_Declaration
572 or else NT (N).Nkind = N_Task_Body_Stub
573 or else NT (N).Nkind = N_Task_Type_Declaration);
575 end Corresponding_Body;
577 function Corresponding_Formal_Spec
578 (N : Node_Id) return Node_Id is
581 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
583 end Corresponding_Formal_Spec;
585 function Corresponding_Generic_Association
586 (N : Node_Id) return Node_Id is
589 or else NT (N).Nkind = N_Object_Declaration
590 or else NT (N).Nkind = N_Object_Renaming_Declaration);
592 end Corresponding_Generic_Association;
594 function Corresponding_Integer_Value
595 (N : Node_Id) return Uint is
598 or else NT (N).Nkind = N_Real_Literal);
600 end Corresponding_Integer_Value;
602 function Corresponding_Spec
603 (N : Node_Id) return Node_Id is
606 or else NT (N).Nkind = N_Package_Body
607 or else NT (N).Nkind = N_Protected_Body
608 or else NT (N).Nkind = N_Subprogram_Body
609 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
610 or else NT (N).Nkind = N_Task_Body
611 or else NT (N).Nkind = N_With_Clause);
613 end Corresponding_Spec;
615 function Corresponding_Stub
616 (N : Node_Id) return Node_Id is
619 or else NT (N).Nkind = N_Subunit);
621 end Corresponding_Stub;
623 function Dcheck_Function
624 (N : Node_Id) return Entity_Id is
627 or else NT (N).Nkind = N_Variant);
631 function Debug_Statement
632 (N : Node_Id) return Node_Id is
635 or else NT (N).Nkind = N_Pragma);
639 function Declarations
640 (N : Node_Id) return List_Id is
643 or else NT (N).Nkind = N_Accept_Statement
644 or else NT (N).Nkind = N_Block_Statement
645 or else NT (N).Nkind = N_Compilation_Unit_Aux
646 or else NT (N).Nkind = N_Entry_Body
647 or else NT (N).Nkind = N_Package_Body
648 or else NT (N).Nkind = N_Protected_Body
649 or else NT (N).Nkind = N_Subprogram_Body
650 or else NT (N).Nkind = N_Task_Body);
654 function Default_Expression
655 (N : Node_Id) return Node_Id is
658 or else NT (N).Nkind = N_Formal_Object_Declaration
659 or else NT (N).Nkind = N_Parameter_Specification);
661 end Default_Expression;
663 function Default_Name
664 (N : Node_Id) return Node_Id is
667 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
668 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
672 function Defining_Identifier
673 (N : Node_Id) return Entity_Id is
676 or else NT (N).Nkind = N_Component_Declaration
677 or else NT (N).Nkind = N_Defining_Program_Unit_Name
678 or else NT (N).Nkind = N_Discriminant_Specification
679 or else NT (N).Nkind = N_Entry_Body
680 or else NT (N).Nkind = N_Entry_Declaration
681 or else NT (N).Nkind = N_Entry_Index_Specification
682 or else NT (N).Nkind = N_Exception_Declaration
683 or else NT (N).Nkind = N_Exception_Renaming_Declaration
684 or else NT (N).Nkind = N_Formal_Object_Declaration
685 or else NT (N).Nkind = N_Formal_Package_Declaration
686 or else NT (N).Nkind = N_Formal_Type_Declaration
687 or else NT (N).Nkind = N_Full_Type_Declaration
688 or else NT (N).Nkind = N_Implicit_Label_Declaration
689 or else NT (N).Nkind = N_Incomplete_Type_Declaration
690 or else NT (N).Nkind = N_Loop_Parameter_Specification
691 or else NT (N).Nkind = N_Number_Declaration
692 or else NT (N).Nkind = N_Object_Declaration
693 or else NT (N).Nkind = N_Object_Renaming_Declaration
694 or else NT (N).Nkind = N_Package_Body_Stub
695 or else NT (N).Nkind = N_Parameter_Specification
696 or else NT (N).Nkind = N_Private_Extension_Declaration
697 or else NT (N).Nkind = N_Private_Type_Declaration
698 or else NT (N).Nkind = N_Protected_Body
699 or else NT (N).Nkind = N_Protected_Body_Stub
700 or else NT (N).Nkind = N_Protected_Type_Declaration
701 or else NT (N).Nkind = N_Single_Protected_Declaration
702 or else NT (N).Nkind = N_Single_Task_Declaration
703 or else NT (N).Nkind = N_Subtype_Declaration
704 or else NT (N).Nkind = N_Task_Body
705 or else NT (N).Nkind = N_Task_Body_Stub
706 or else NT (N).Nkind = N_Task_Type_Declaration);
708 end Defining_Identifier;
710 function Defining_Unit_Name
711 (N : Node_Id) return Node_Id is
714 or else NT (N).Nkind = N_Function_Instantiation
715 or else NT (N).Nkind = N_Function_Specification
716 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
717 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
718 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
719 or else NT (N).Nkind = N_Package_Body
720 or else NT (N).Nkind = N_Package_Instantiation
721 or else NT (N).Nkind = N_Package_Renaming_Declaration
722 or else NT (N).Nkind = N_Package_Specification
723 or else NT (N).Nkind = N_Procedure_Instantiation
724 or else NT (N).Nkind = N_Procedure_Specification);
726 end Defining_Unit_Name;
728 function Delay_Alternative
729 (N : Node_Id) return Node_Id is
732 or else NT (N).Nkind = N_Timed_Entry_Call);
734 end Delay_Alternative;
736 function Delay_Statement
737 (N : Node_Id) return Node_Id is
740 or else NT (N).Nkind = N_Delay_Alternative);
744 function Delta_Expression
745 (N : Node_Id) return Node_Id is
748 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
749 or else NT (N).Nkind = N_Delta_Constraint
750 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
752 end Delta_Expression;
754 function Digits_Expression
755 (N : Node_Id) return Node_Id is
758 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
759 or else NT (N).Nkind = N_Digits_Constraint
760 or else NT (N).Nkind = N_Floating_Point_Definition);
762 end Digits_Expression;
764 function Discr_Check_Funcs_Built
765 (N : Node_Id) return Boolean is
768 or else NT (N).Nkind = N_Full_Type_Declaration);
770 end Discr_Check_Funcs_Built;
772 function Discrete_Choices
773 (N : Node_Id) return List_Id is
776 or else NT (N).Nkind = N_Case_Statement_Alternative
777 or else NT (N).Nkind = N_Variant);
779 end Discrete_Choices;
781 function Discrete_Range
782 (N : Node_Id) return Node_Id is
785 or else NT (N).Nkind = N_Slice);
789 function Discrete_Subtype_Definition
790 (N : Node_Id) return Node_Id is
793 or else NT (N).Nkind = N_Entry_Declaration
794 or else NT (N).Nkind = N_Entry_Index_Specification
795 or else NT (N).Nkind = N_Loop_Parameter_Specification);
797 end Discrete_Subtype_Definition;
799 function Discrete_Subtype_Definitions
800 (N : Node_Id) return List_Id is
803 or else NT (N).Nkind = N_Constrained_Array_Definition);
805 end Discrete_Subtype_Definitions;
807 function Discriminant_Specifications
808 (N : Node_Id) return List_Id is
811 or else NT (N).Nkind = N_Formal_Type_Declaration
812 or else NT (N).Nkind = N_Full_Type_Declaration
813 or else NT (N).Nkind = N_Incomplete_Type_Declaration
814 or else NT (N).Nkind = N_Private_Extension_Declaration
815 or else NT (N).Nkind = N_Private_Type_Declaration
816 or else NT (N).Nkind = N_Protected_Type_Declaration
817 or else NT (N).Nkind = N_Task_Type_Declaration);
819 end Discriminant_Specifications;
821 function Discriminant_Type
822 (N : Node_Id) return Node_Id is
825 or else NT (N).Nkind = N_Discriminant_Specification);
827 end Discriminant_Type;
829 function Do_Accessibility_Check
830 (N : Node_Id) return Boolean is
833 or else NT (N).Nkind = N_Parameter_Specification);
835 end Do_Accessibility_Check;
837 function Do_Discriminant_Check
838 (N : Node_Id) return Boolean is
841 or else NT (N).Nkind = N_Selected_Component);
843 end Do_Discriminant_Check;
845 function Do_Division_Check
846 (N : Node_Id) return Boolean is
849 or else NT (N).Nkind = N_Op_Divide
850 or else NT (N).Nkind = N_Op_Mod
851 or else NT (N).Nkind = N_Op_Rem);
853 end Do_Division_Check;
855 function Do_Length_Check
856 (N : Node_Id) return Boolean is
859 or else NT (N).Nkind = N_Assignment_Statement
860 or else NT (N).Nkind = N_Op_And
861 or else NT (N).Nkind = N_Op_Or
862 or else NT (N).Nkind = N_Op_Xor
863 or else NT (N).Nkind = N_Type_Conversion);
867 function Do_Overflow_Check
868 (N : Node_Id) return Boolean is
871 or else NT (N).Nkind in N_Op
872 or else NT (N).Nkind = N_Attribute_Reference
873 or else NT (N).Nkind = N_Type_Conversion);
875 end Do_Overflow_Check;
877 function Do_Range_Check
878 (N : Node_Id) return Boolean is
881 or else NT (N).Nkind in N_Subexpr);
885 function Do_Storage_Check
886 (N : Node_Id) return Boolean is
889 or else NT (N).Nkind = N_Allocator
890 or else NT (N).Nkind = N_Subprogram_Body);
892 end Do_Storage_Check;
894 function Do_Tag_Check
895 (N : Node_Id) return Boolean is
898 or else NT (N).Nkind = N_Assignment_Statement
899 or else NT (N).Nkind = N_Extended_Return_Statement
900 or else NT (N).Nkind = N_Function_Call
901 or else NT (N).Nkind = N_Procedure_Call_Statement
902 or else NT (N).Nkind = N_Return_Statement
903 or else NT (N).Nkind = N_Type_Conversion);
907 function Elaborate_All_Desirable
908 (N : Node_Id) return Boolean is
911 or else NT (N).Nkind = N_With_Clause);
913 end Elaborate_All_Desirable;
915 function Elaborate_All_Present
916 (N : Node_Id) return Boolean is
919 or else NT (N).Nkind = N_With_Clause);
921 end Elaborate_All_Present;
923 function Elaborate_Desirable
924 (N : Node_Id) return Boolean is
927 or else NT (N).Nkind = N_With_Clause);
929 end Elaborate_Desirable;
931 function Elaborate_Present
932 (N : Node_Id) return Boolean is
935 or else NT (N).Nkind = N_With_Clause);
937 end Elaborate_Present;
939 function Elaboration_Boolean
940 (N : Node_Id) return Node_Id is
943 or else NT (N).Nkind = N_Function_Specification
944 or else NT (N).Nkind = N_Procedure_Specification);
946 end Elaboration_Boolean;
948 function Else_Actions
949 (N : Node_Id) return List_Id is
952 or else NT (N).Nkind = N_Conditional_Expression);
956 function Else_Statements
957 (N : Node_Id) return List_Id is
960 or else NT (N).Nkind = N_Conditional_Entry_Call
961 or else NT (N).Nkind = N_If_Statement
962 or else NT (N).Nkind = N_Selective_Accept);
967 (N : Node_Id) return List_Id is
970 or else NT (N).Nkind = N_If_Statement);
974 function Enclosing_Variant
975 (N : Node_Id) return Node_Id is
978 or else NT (N).Nkind = N_Variant);
980 end Enclosing_Variant;
983 (N : Node_Id) return Node_Id is
986 or else NT (N).Nkind = N_Enumeration_Type_Definition
987 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
988 or else NT (N).Nkind = N_Loop_Statement
989 or else NT (N).Nkind = N_Package_Specification
990 or else NT (N).Nkind = N_Protected_Body
991 or else NT (N).Nkind = N_Protected_Definition
992 or else NT (N).Nkind = N_Record_Definition
993 or else NT (N).Nkind = N_Task_Definition);
998 (N : Node_Id) return Uint is
1000 pragma Assert (False
1001 or else NT (N).Nkind = N_Case_Statement
1002 or else NT (N).Nkind = N_If_Statement);
1007 (N : Node_Id) return Node_Id is
1009 pragma Assert (False
1010 or else NT (N).Nkind in N_Has_Entity
1011 or else NT (N).Nkind = N_Freeze_Entity
1012 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1016 function Entity_Or_Associated_Node
1017 (N : Node_Id) return Node_Id is
1019 pragma Assert (False
1020 or else NT (N).Nkind in N_Has_Entity
1021 or else NT (N).Nkind = N_Freeze_Entity);
1023 end Entity_Or_Associated_Node;
1025 function Entry_Body_Formal_Part
1026 (N : Node_Id) return Node_Id is
1028 pragma Assert (False
1029 or else NT (N).Nkind = N_Entry_Body);
1031 end Entry_Body_Formal_Part;
1033 function Entry_Call_Alternative
1034 (N : Node_Id) return Node_Id is
1036 pragma Assert (False
1037 or else NT (N).Nkind = N_Conditional_Entry_Call
1038 or else NT (N).Nkind = N_Timed_Entry_Call);
1040 end Entry_Call_Alternative;
1042 function Entry_Call_Statement
1043 (N : Node_Id) return Node_Id is
1045 pragma Assert (False
1046 or else NT (N).Nkind = N_Entry_Call_Alternative);
1048 end Entry_Call_Statement;
1050 function Entry_Direct_Name
1051 (N : Node_Id) return Node_Id is
1053 pragma Assert (False
1054 or else NT (N).Nkind = N_Accept_Statement);
1056 end Entry_Direct_Name;
1058 function Entry_Index
1059 (N : Node_Id) return Node_Id is
1061 pragma Assert (False
1062 or else NT (N).Nkind = N_Accept_Statement);
1066 function Entry_Index_Specification
1067 (N : Node_Id) return Node_Id is
1069 pragma Assert (False
1070 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
1072 end Entry_Index_Specification;
1075 (N : Node_Id) return Node_Id is
1077 pragma Assert (False
1078 or else NT (N).Nkind in N_Has_Etype);
1082 function Exception_Choices
1083 (N : Node_Id) return List_Id is
1085 pragma Assert (False
1086 or else NT (N).Nkind = N_Exception_Handler);
1088 end Exception_Choices;
1090 function Exception_Handlers
1091 (N : Node_Id) return List_Id is
1093 pragma Assert (False
1094 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1096 end Exception_Handlers;
1098 function Exception_Junk
1099 (N : Node_Id) return Boolean is
1101 pragma Assert (False
1102 or else NT (N).Nkind = N_Block_Statement
1103 or else NT (N).Nkind = N_Goto_Statement
1104 or else NT (N).Nkind = N_Label
1105 or else NT (N).Nkind = N_Object_Declaration
1106 or else NT (N).Nkind = N_Subtype_Declaration);
1110 function Exception_Label
1111 (N : Node_Id) return Node_Id is
1113 pragma Assert (False
1114 or else NT (N).Nkind = N_Exception_Handler
1115 or else NT (N).Nkind = N_Push_Constraint_Error_Label
1116 or else NT (N).Nkind = N_Push_Program_Error_Label
1117 or else NT (N).Nkind = N_Push_Storage_Error_Label);
1119 end Exception_Label;
1121 function Expansion_Delayed
1122 (N : Node_Id) return Boolean is
1124 pragma Assert (False
1125 or else NT (N).Nkind = N_Aggregate
1126 or else NT (N).Nkind = N_Extension_Aggregate);
1128 end Expansion_Delayed;
1130 function Explicit_Actual_Parameter
1131 (N : Node_Id) return Node_Id is
1133 pragma Assert (False
1134 or else NT (N).Nkind = N_Parameter_Association);
1136 end Explicit_Actual_Parameter;
1138 function Explicit_Generic_Actual_Parameter
1139 (N : Node_Id) return Node_Id is
1141 pragma Assert (False
1142 or else NT (N).Nkind = N_Generic_Association);
1144 end Explicit_Generic_Actual_Parameter;
1147 (N : Node_Id) return Node_Id is
1149 pragma Assert (False
1150 or else NT (N).Nkind = N_Allocator
1151 or else NT (N).Nkind = N_Assignment_Statement
1152 or else NT (N).Nkind = N_At_Clause
1153 or else NT (N).Nkind = N_Attribute_Definition_Clause
1154 or else NT (N).Nkind = N_Case_Statement
1155 or else NT (N).Nkind = N_Code_Statement
1156 or else NT (N).Nkind = N_Component_Association
1157 or else NT (N).Nkind = N_Component_Declaration
1158 or else NT (N).Nkind = N_Delay_Relative_Statement
1159 or else NT (N).Nkind = N_Delay_Until_Statement
1160 or else NT (N).Nkind = N_Discriminant_Association
1161 or else NT (N).Nkind = N_Discriminant_Specification
1162 or else NT (N).Nkind = N_Exception_Declaration
1163 or else NT (N).Nkind = N_Free_Statement
1164 or else NT (N).Nkind = N_Mod_Clause
1165 or else NT (N).Nkind = N_Modular_Type_Definition
1166 or else NT (N).Nkind = N_Number_Declaration
1167 or else NT (N).Nkind = N_Object_Declaration
1168 or else NT (N).Nkind = N_Parameter_Specification
1169 or else NT (N).Nkind = N_Pragma_Argument_Association
1170 or else NT (N).Nkind = N_Qualified_Expression
1171 or else NT (N).Nkind = N_Raise_Statement
1172 or else NT (N).Nkind = N_Return_Statement
1173 or else NT (N).Nkind = N_Type_Conversion
1174 or else NT (N).Nkind = N_Unchecked_Expression
1175 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1179 function Expressions
1180 (N : Node_Id) return List_Id is
1182 pragma Assert (False
1183 or else NT (N).Nkind = N_Aggregate
1184 or else NT (N).Nkind = N_Attribute_Reference
1185 or else NT (N).Nkind = N_Conditional_Expression
1186 or else NT (N).Nkind = N_Extension_Aggregate
1187 or else NT (N).Nkind = N_Indexed_Component);
1192 (N : Node_Id) return Node_Id is
1194 pragma Assert (False
1195 or else NT (N).Nkind = N_Component_Clause);
1199 function First_Inlined_Subprogram
1200 (N : Node_Id) return Entity_Id is
1202 pragma Assert (False
1203 or else NT (N).Nkind = N_Compilation_Unit);
1205 end First_Inlined_Subprogram;
1208 (N : Node_Id) return Boolean is
1210 pragma Assert (False
1211 or else NT (N).Nkind = N_With_Clause);
1215 function First_Named_Actual
1216 (N : Node_Id) return Node_Id is
1218 pragma Assert (False
1219 or else NT (N).Nkind = N_Entry_Call_Statement
1220 or else NT (N).Nkind = N_Function_Call
1221 or else NT (N).Nkind = N_Procedure_Call_Statement);
1223 end First_Named_Actual;
1225 function First_Real_Statement
1226 (N : Node_Id) return Node_Id is
1228 pragma Assert (False
1229 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1231 end First_Real_Statement;
1233 function First_Subtype_Link
1234 (N : Node_Id) return Entity_Id is
1236 pragma Assert (False
1237 or else NT (N).Nkind = N_Freeze_Entity);
1239 end First_Subtype_Link;
1241 function Float_Truncate
1242 (N : Node_Id) return Boolean is
1244 pragma Assert (False
1245 or else NT (N).Nkind = N_Type_Conversion);
1249 function Formal_Type_Definition
1250 (N : Node_Id) return Node_Id is
1252 pragma Assert (False
1253 or else NT (N).Nkind = N_Formal_Type_Declaration);
1255 end Formal_Type_Definition;
1257 function Forwards_OK
1258 (N : Node_Id) return Boolean is
1260 pragma Assert (False
1261 or else NT (N).Nkind = N_Assignment_Statement);
1265 function From_At_End
1266 (N : Node_Id) return Boolean is
1268 pragma Assert (False
1269 or else NT (N).Nkind = N_Raise_Statement);
1273 function From_At_Mod
1274 (N : Node_Id) return Boolean is
1276 pragma Assert (False
1277 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1281 function From_Default
1282 (N : Node_Id) return Boolean is
1284 pragma Assert (False
1285 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1289 function Generic_Associations
1290 (N : Node_Id) return List_Id is
1292 pragma Assert (False
1293 or else NT (N).Nkind = N_Formal_Package_Declaration
1294 or else NT (N).Nkind = N_Function_Instantiation
1295 or else NT (N).Nkind = N_Package_Instantiation
1296 or else NT (N).Nkind = N_Procedure_Instantiation);
1298 end Generic_Associations;
1300 function Generic_Formal_Declarations
1301 (N : Node_Id) return List_Id is
1303 pragma Assert (False
1304 or else NT (N).Nkind = N_Generic_Package_Declaration
1305 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1307 end Generic_Formal_Declarations;
1309 function Generic_Parent
1310 (N : Node_Id) return Node_Id is
1312 pragma Assert (False
1313 or else NT (N).Nkind = N_Function_Specification
1314 or else NT (N).Nkind = N_Package_Specification
1315 or else NT (N).Nkind = N_Procedure_Specification);
1319 function Generic_Parent_Type
1320 (N : Node_Id) return Node_Id is
1322 pragma Assert (False
1323 or else NT (N).Nkind = N_Subtype_Declaration);
1325 end Generic_Parent_Type;
1327 function Handled_Statement_Sequence
1328 (N : Node_Id) return Node_Id is
1330 pragma Assert (False
1331 or else NT (N).Nkind = N_Accept_Statement
1332 or else NT (N).Nkind = N_Block_Statement
1333 or else NT (N).Nkind = N_Entry_Body
1334 or else NT (N).Nkind = N_Extended_Return_Statement
1335 or else NT (N).Nkind = N_Package_Body
1336 or else NT (N).Nkind = N_Subprogram_Body
1337 or else NT (N).Nkind = N_Task_Body);
1339 end Handled_Statement_Sequence;
1341 function Handler_List_Entry
1342 (N : Node_Id) return Node_Id is
1344 pragma Assert (False
1345 or else NT (N).Nkind = N_Object_Declaration);
1347 end Handler_List_Entry;
1349 function Has_Created_Identifier
1350 (N : Node_Id) return Boolean is
1352 pragma Assert (False
1353 or else NT (N).Nkind = N_Block_Statement
1354 or else NT (N).Nkind = N_Loop_Statement);
1356 end Has_Created_Identifier;
1358 function Has_Dynamic_Length_Check
1359 (N : Node_Id) return Boolean is
1362 end Has_Dynamic_Length_Check;
1364 function Has_Dynamic_Range_Check
1365 (N : Node_Id) return Boolean is
1368 end Has_Dynamic_Range_Check;
1370 function Has_Init_Expression
1371 (N : Node_Id) return Boolean is
1373 pragma Assert (False
1374 or else NT (N).Nkind = N_Object_Declaration);
1376 end Has_Init_Expression;
1378 function Has_Local_Raise
1379 (N : Node_Id) return Boolean is
1381 pragma Assert (False
1382 or else NT (N).Nkind = N_Exception_Handler);
1384 end Has_Local_Raise;
1386 function Has_No_Elaboration_Code
1387 (N : Node_Id) return Boolean is
1389 pragma Assert (False
1390 or else NT (N).Nkind = N_Compilation_Unit);
1392 end Has_No_Elaboration_Code;
1394 function Has_Priority_Pragma
1395 (N : Node_Id) return Boolean is
1397 pragma Assert (False
1398 or else NT (N).Nkind = N_Protected_Definition
1399 or else NT (N).Nkind = N_Subprogram_Body
1400 or else NT (N).Nkind = N_Task_Definition);
1402 end Has_Priority_Pragma;
1404 function Has_Private_View
1405 (N : Node_Id) return Boolean is
1407 pragma Assert (False
1408 or else NT (N).Nkind in N_Op
1409 or else NT (N).Nkind = N_Character_Literal
1410 or else NT (N).Nkind = N_Expanded_Name
1411 or else NT (N).Nkind = N_Identifier
1412 or else NT (N).Nkind = N_Operator_Symbol);
1414 end Has_Private_View;
1416 function Has_Relative_Deadline_Pragma
1417 (N : Node_Id) return Boolean is
1419 pragma Assert (False
1420 or else NT (N).Nkind = N_Subprogram_Body
1421 or else NT (N).Nkind = N_Task_Definition);
1423 end Has_Relative_Deadline_Pragma;
1425 function Has_Self_Reference
1426 (N : Node_Id) return Boolean is
1428 pragma Assert (False
1429 or else NT (N).Nkind = N_Aggregate
1430 or else NT (N).Nkind = N_Extension_Aggregate);
1432 end Has_Self_Reference;
1434 function Has_Storage_Size_Pragma
1435 (N : Node_Id) return Boolean is
1437 pragma Assert (False
1438 or else NT (N).Nkind = N_Task_Definition);
1440 end Has_Storage_Size_Pragma;
1442 function Has_Task_Info_Pragma
1443 (N : Node_Id) return Boolean is
1445 pragma Assert (False
1446 or else NT (N).Nkind = N_Task_Definition);
1448 end Has_Task_Info_Pragma;
1450 function Has_Task_Name_Pragma
1451 (N : Node_Id) return Boolean is
1453 pragma Assert (False
1454 or else NT (N).Nkind = N_Task_Definition);
1456 end Has_Task_Name_Pragma;
1458 function Has_Wide_Character
1459 (N : Node_Id) return Boolean is
1461 pragma Assert (False
1462 or else NT (N).Nkind = N_String_Literal);
1464 end Has_Wide_Character;
1466 function Hidden_By_Use_Clause
1467 (N : Node_Id) return Elist_Id is
1469 pragma Assert (False
1470 or else NT (N).Nkind = N_Use_Package_Clause
1471 or else NT (N).Nkind = N_Use_Type_Clause);
1473 end Hidden_By_Use_Clause;
1476 (N : Node_Id) return Node_Id is
1478 pragma Assert (False
1479 or else NT (N).Nkind = N_Range
1480 or else NT (N).Nkind = N_Real_Range_Specification
1481 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1486 (N : Node_Id) return Node_Id is
1488 pragma Assert (False
1489 or else NT (N).Nkind = N_At_Clause
1490 or else NT (N).Nkind = N_Block_Statement
1491 or else NT (N).Nkind = N_Designator
1492 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1493 or else NT (N).Nkind = N_Label
1494 or else NT (N).Nkind = N_Loop_Statement
1495 or else NT (N).Nkind = N_Record_Representation_Clause
1496 or else NT (N).Nkind = N_Subprogram_Info);
1500 function Implicit_With
1501 (N : Node_Id) return Boolean is
1503 pragma Assert (False
1504 or else NT (N).Nkind = N_With_Clause);
1508 function Interface_List
1509 (N : Node_Id) return List_Id is
1511 pragma Assert (False
1512 or else NT (N).Nkind = N_Derived_Type_Definition
1513 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
1514 or else NT (N).Nkind = N_Private_Extension_Declaration
1515 or else NT (N).Nkind = N_Protected_Type_Declaration
1516 or else NT (N).Nkind = N_Record_Definition
1517 or else NT (N).Nkind = N_Single_Protected_Declaration
1518 or else NT (N).Nkind = N_Single_Task_Declaration
1519 or else NT (N).Nkind = N_Task_Type_Declaration);
1523 function Interface_Present
1524 (N : Node_Id) return Boolean is
1526 pragma Assert (False
1527 or else NT (N).Nkind = N_Derived_Type_Definition
1528 or else NT (N).Nkind = N_Record_Definition);
1530 end Interface_Present;
1533 (N : Node_Id) return Boolean is
1535 pragma Assert (False
1536 or else NT (N).Nkind = N_Formal_Object_Declaration
1537 or else NT (N).Nkind = N_Parameter_Specification);
1541 function Includes_Infinities
1542 (N : Node_Id) return Boolean is
1544 pragma Assert (False
1545 or else NT (N).Nkind = N_Range);
1547 end Includes_Infinities;
1549 function Instance_Spec
1550 (N : Node_Id) return Node_Id is
1552 pragma Assert (False
1553 or else NT (N).Nkind = N_Formal_Package_Declaration
1554 or else NT (N).Nkind = N_Function_Instantiation
1555 or else NT (N).Nkind = N_Package_Instantiation
1556 or else NT (N).Nkind = N_Procedure_Instantiation);
1561 (N : Node_Id) return Uint is
1563 pragma Assert (False
1564 or else NT (N).Nkind = N_Integer_Literal);
1568 function Is_Asynchronous_Call_Block
1569 (N : Node_Id) return Boolean is
1571 pragma Assert (False
1572 or else NT (N).Nkind = N_Block_Statement);
1574 end Is_Asynchronous_Call_Block;
1576 function Is_Component_Left_Opnd
1577 (N : Node_Id) return Boolean is
1579 pragma Assert (False
1580 or else NT (N).Nkind = N_Op_Concat);
1582 end Is_Component_Left_Opnd;
1584 function Is_Component_Right_Opnd
1585 (N : Node_Id) return Boolean is
1587 pragma Assert (False
1588 or else NT (N).Nkind = N_Op_Concat);
1590 end Is_Component_Right_Opnd;
1592 function Is_Controlling_Actual
1593 (N : Node_Id) return Boolean is
1595 pragma Assert (False
1596 or else NT (N).Nkind in N_Subexpr);
1598 end Is_Controlling_Actual;
1600 function Is_Dynamic_Coextension
1601 (N : Node_Id) return Boolean is
1603 pragma Assert (False
1604 or else NT (N).Nkind = N_Allocator);
1606 end Is_Dynamic_Coextension;
1609 (N : Node_Id) return Boolean is
1611 pragma Assert (False
1612 or else NT (N).Nkind = N_Conditional_Expression);
1616 function Is_Entry_Barrier_Function
1617 (N : Node_Id) return Boolean is
1619 pragma Assert (False
1620 or else NT (N).Nkind = N_Subprogram_Body);
1622 end Is_Entry_Barrier_Function;
1624 function Is_Expanded_Build_In_Place_Call
1625 (N : Node_Id) return Boolean is
1627 pragma Assert (False
1628 or else NT (N).Nkind = N_Function_Call);
1630 end Is_Expanded_Build_In_Place_Call;
1632 function Is_Folded_In_Parser
1633 (N : Node_Id) return Boolean is
1635 pragma Assert (False
1636 or else NT (N).Nkind = N_String_Literal);
1638 end Is_Folded_In_Parser;
1640 function Is_In_Discriminant_Check
1641 (N : Node_Id) return Boolean is
1643 pragma Assert (False
1644 or else NT (N).Nkind = N_Selected_Component);
1646 end Is_In_Discriminant_Check;
1648 function Is_Machine_Number
1649 (N : Node_Id) return Boolean is
1651 pragma Assert (False
1652 or else NT (N).Nkind = N_Real_Literal);
1654 end Is_Machine_Number;
1656 function Is_Null_Loop
1657 (N : Node_Id) return Boolean is
1659 pragma Assert (False
1660 or else NT (N).Nkind = N_Loop_Statement);
1664 function Is_Overloaded
1665 (N : Node_Id) return Boolean is
1667 pragma Assert (False
1668 or else NT (N).Nkind in N_Subexpr);
1672 function Is_Power_Of_2_For_Shift
1673 (N : Node_Id) return Boolean is
1675 pragma Assert (False
1676 or else NT (N).Nkind = N_Op_Expon);
1678 end Is_Power_Of_2_For_Shift;
1680 function Is_Protected_Subprogram_Body
1681 (N : Node_Id) return Boolean is
1683 pragma Assert (False
1684 or else NT (N).Nkind = N_Subprogram_Body);
1686 end Is_Protected_Subprogram_Body;
1688 function Is_Static_Coextension
1689 (N : Node_Id) return Boolean is
1691 pragma Assert (False
1692 or else NT (N).Nkind = N_Allocator);
1694 end Is_Static_Coextension;
1696 function Is_Static_Expression
1697 (N : Node_Id) return Boolean is
1699 pragma Assert (False
1700 or else NT (N).Nkind in N_Subexpr);
1702 end Is_Static_Expression;
1704 function Is_Subprogram_Descriptor
1705 (N : Node_Id) return Boolean is
1707 pragma Assert (False
1708 or else NT (N).Nkind = N_Object_Declaration);
1710 end Is_Subprogram_Descriptor;
1712 function Is_Task_Allocation_Block
1713 (N : Node_Id) return Boolean is
1715 pragma Assert (False
1716 or else NT (N).Nkind = N_Block_Statement);
1718 end Is_Task_Allocation_Block;
1720 function Is_Task_Master
1721 (N : Node_Id) return Boolean is
1723 pragma Assert (False
1724 or else NT (N).Nkind = N_Block_Statement
1725 or else NT (N).Nkind = N_Subprogram_Body
1726 or else NT (N).Nkind = N_Task_Body);
1730 function Iteration_Scheme
1731 (N : Node_Id) return Node_Id is
1733 pragma Assert (False
1734 or else NT (N).Nkind = N_Loop_Statement);
1736 end Iteration_Scheme;
1739 (N : Node_Id) return Node_Id is
1741 pragma Assert (False
1742 or else NT (N).Nkind = N_Itype_Reference);
1746 function Kill_Range_Check
1747 (N : Node_Id) return Boolean is
1749 pragma Assert (False
1750 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1752 end Kill_Range_Check;
1754 function Label_Construct
1755 (N : Node_Id) return Node_Id is
1757 pragma Assert (False
1758 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1760 end Label_Construct;
1763 (N : Node_Id) return Node_Id is
1765 pragma Assert (False
1766 or else NT (N).Nkind = N_Component_Clause);
1771 (N : Node_Id) return Boolean is
1773 pragma Assert (False
1774 or else NT (N).Nkind = N_With_Clause);
1779 (N : Node_Id) return Node_Id is
1781 pragma Assert (False
1782 or else NT (N).Nkind = N_And_Then
1783 or else NT (N).Nkind = N_In
1784 or else NT (N).Nkind = N_Not_In
1785 or else NT (N).Nkind = N_Or_Else
1786 or else NT (N).Nkind in N_Binary_Op);
1790 function Library_Unit
1791 (N : Node_Id) return Node_Id is
1793 pragma Assert (False
1794 or else NT (N).Nkind = N_Compilation_Unit
1795 or else NT (N).Nkind = N_Package_Body_Stub
1796 or else NT (N).Nkind = N_Protected_Body_Stub
1797 or else NT (N).Nkind = N_Subprogram_Body_Stub
1798 or else NT (N).Nkind = N_Task_Body_Stub
1799 or else NT (N).Nkind = N_With_Clause);
1803 function Limited_View_Installed
1804 (N : Node_Id) return Boolean is
1806 pragma Assert (False
1807 or else NT (N).Nkind = N_Package_Specification
1808 or else NT (N).Nkind = N_With_Clause);
1810 end Limited_View_Installed;
1812 function Limited_Present
1813 (N : Node_Id) return Boolean is
1815 pragma Assert (False
1816 or else NT (N).Nkind = N_Derived_Type_Definition
1817 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
1818 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1819 or else NT (N).Nkind = N_Private_Extension_Declaration
1820 or else NT (N).Nkind = N_Private_Type_Declaration
1821 or else NT (N).Nkind = N_Record_Definition
1822 or else NT (N).Nkind = N_With_Clause);
1824 end Limited_Present;
1827 (N : Node_Id) return List_Id is
1829 pragma Assert (False
1830 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1834 function Local_Raise_Not_OK
1835 (N : Node_Id) return Boolean is
1837 pragma Assert (False
1838 or else NT (N).Nkind = N_Exception_Handler);
1840 end Local_Raise_Not_OK;
1842 function Local_Raise_Statements
1843 (N : Node_Id) return Elist_Id is
1845 pragma Assert (False
1846 or else NT (N).Nkind = N_Exception_Handler);
1848 end Local_Raise_Statements;
1850 function Loop_Actions
1851 (N : Node_Id) return List_Id is
1853 pragma Assert (False
1854 or else NT (N).Nkind = N_Component_Association);
1858 function Loop_Parameter_Specification
1859 (N : Node_Id) return Node_Id is
1861 pragma Assert (False
1862 or else NT (N).Nkind = N_Iteration_Scheme);
1864 end Loop_Parameter_Specification;
1867 (N : Node_Id) return Node_Id is
1869 pragma Assert (False
1870 or else NT (N).Nkind = N_Range
1871 or else NT (N).Nkind = N_Real_Range_Specification
1872 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1877 (N : Node_Id) return Node_Id is
1879 pragma Assert (False
1880 or else NT (N).Nkind = N_Record_Representation_Clause);
1885 (N : Node_Id) return Boolean is
1887 pragma Assert (False
1888 or else NT (N).Nkind = N_Component_Declaration
1889 or else NT (N).Nkind = N_Discriminant_Specification
1890 or else NT (N).Nkind = N_Exception_Declaration
1891 or else NT (N).Nkind = N_Formal_Object_Declaration
1892 or else NT (N).Nkind = N_Number_Declaration
1893 or else NT (N).Nkind = N_Object_Declaration
1894 or else NT (N).Nkind = N_Parameter_Specification);
1898 function Must_Be_Byte_Aligned
1899 (N : Node_Id) return Boolean is
1901 pragma Assert (False
1902 or else NT (N).Nkind = N_Attribute_Reference);
1904 end Must_Be_Byte_Aligned;
1906 function Must_Not_Freeze
1907 (N : Node_Id) return Boolean is
1909 pragma Assert (False
1910 or else NT (N).Nkind = N_Subtype_Indication
1911 or else NT (N).Nkind in N_Subexpr);
1913 end Must_Not_Freeze;
1915 function Must_Not_Override
1916 (N : Node_Id) return Boolean is
1918 pragma Assert (False
1919 or else NT (N).Nkind = N_Entry_Declaration
1920 or else NT (N).Nkind = N_Function_Instantiation
1921 or else NT (N).Nkind = N_Function_Specification
1922 or else NT (N).Nkind = N_Procedure_Instantiation
1923 or else NT (N).Nkind = N_Procedure_Specification);
1925 end Must_Not_Override;
1927 function Must_Override
1928 (N : Node_Id) return Boolean is
1930 pragma Assert (False
1931 or else NT (N).Nkind = N_Entry_Declaration
1932 or else NT (N).Nkind = N_Function_Instantiation
1933 or else NT (N).Nkind = N_Function_Specification
1934 or else NT (N).Nkind = N_Procedure_Instantiation
1935 or else NT (N).Nkind = N_Procedure_Specification);
1940 (N : Node_Id) return Node_Id is
1942 pragma Assert (False
1943 or else NT (N).Nkind = N_Assignment_Statement
1944 or else NT (N).Nkind = N_Attribute_Definition_Clause
1945 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1946 or else NT (N).Nkind = N_Designator
1947 or else NT (N).Nkind = N_Entry_Call_Statement
1948 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1949 or else NT (N).Nkind = N_Exit_Statement
1950 or else NT (N).Nkind = N_Formal_Package_Declaration
1951 or else NT (N).Nkind = N_Function_Call
1952 or else NT (N).Nkind = N_Function_Instantiation
1953 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1954 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1955 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1956 or else NT (N).Nkind = N_Goto_Statement
1957 or else NT (N).Nkind = N_Object_Renaming_Declaration
1958 or else NT (N).Nkind = N_Package_Instantiation
1959 or else NT (N).Nkind = N_Package_Renaming_Declaration
1960 or else NT (N).Nkind = N_Procedure_Call_Statement
1961 or else NT (N).Nkind = N_Procedure_Instantiation
1962 or else NT (N).Nkind = N_Raise_Statement
1963 or else NT (N).Nkind = N_Requeue_Statement
1964 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1965 or else NT (N).Nkind = N_Subunit
1966 or else NT (N).Nkind = N_Variant_Part
1967 or else NT (N).Nkind = N_With_Clause);
1972 (N : Node_Id) return List_Id is
1974 pragma Assert (False
1975 or else NT (N).Nkind = N_Abort_Statement
1976 or else NT (N).Nkind = N_Use_Package_Clause);
1980 function Next_Entity
1981 (N : Node_Id) return Node_Id is
1983 pragma Assert (False
1984 or else NT (N).Nkind = N_Defining_Character_Literal
1985 or else NT (N).Nkind = N_Defining_Identifier
1986 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1990 function Next_Implicit_With
1991 (N : Node_Id) return Node_Id is
1993 pragma Assert (False
1994 or else NT (N).Nkind = N_With_Clause);
1996 end Next_Implicit_With;
1998 function Next_Named_Actual
1999 (N : Node_Id) return Node_Id is
2001 pragma Assert (False
2002 or else NT (N).Nkind = N_Parameter_Association);
2004 end Next_Named_Actual;
2006 function Next_Pragma
2007 (N : Node_Id) return Node_Id is
2009 pragma Assert (False
2010 or else NT (N).Nkind = N_Pragma);
2014 function Next_Rep_Item
2015 (N : Node_Id) return Node_Id is
2017 pragma Assert (False
2018 or else NT (N).Nkind = N_Attribute_Definition_Clause
2019 or else NT (N).Nkind = N_Enumeration_Representation_Clause
2020 or else NT (N).Nkind = N_Pragma
2021 or else NT (N).Nkind = N_Record_Representation_Clause);
2025 function Next_Use_Clause
2026 (N : Node_Id) return Node_Id is
2028 pragma Assert (False
2029 or else NT (N).Nkind = N_Use_Package_Clause
2030 or else NT (N).Nkind = N_Use_Type_Clause);
2032 end Next_Use_Clause;
2034 function No_Ctrl_Actions
2035 (N : Node_Id) return Boolean is
2037 pragma Assert (False
2038 or else NT (N).Nkind = N_Assignment_Statement);
2040 end No_Ctrl_Actions;
2042 function No_Elaboration_Check
2043 (N : Node_Id) return Boolean is
2045 pragma Assert (False
2046 or else NT (N).Nkind = N_Function_Call
2047 or else NT (N).Nkind = N_Procedure_Call_Statement);
2049 end No_Elaboration_Check;
2051 function No_Entities_Ref_In_Spec
2052 (N : Node_Id) return Boolean is
2054 pragma Assert (False
2055 or else NT (N).Nkind = N_With_Clause);
2057 end No_Entities_Ref_In_Spec;
2059 function No_Initialization
2060 (N : Node_Id) return Boolean is
2062 pragma Assert (False
2063 or else NT (N).Nkind = N_Allocator
2064 or else NT (N).Nkind = N_Object_Declaration);
2066 end No_Initialization;
2068 function No_Truncation
2069 (N : Node_Id) return Boolean is
2071 pragma Assert (False
2072 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2076 function Null_Present
2077 (N : Node_Id) return Boolean is
2079 pragma Assert (False
2080 or else NT (N).Nkind = N_Component_List
2081 or else NT (N).Nkind = N_Procedure_Specification
2082 or else NT (N).Nkind = N_Record_Definition);
2086 function Null_Exclusion_Present
2087 (N : Node_Id) return Boolean is
2089 pragma Assert (False
2090 or else NT (N).Nkind = N_Access_Definition
2091 or else NT (N).Nkind = N_Access_Function_Definition
2092 or else NT (N).Nkind = N_Access_Procedure_Definition
2093 or else NT (N).Nkind = N_Access_To_Object_Definition
2094 or else NT (N).Nkind = N_Allocator
2095 or else NT (N).Nkind = N_Component_Definition
2096 or else NT (N).Nkind = N_Derived_Type_Definition
2097 or else NT (N).Nkind = N_Discriminant_Specification
2098 or else NT (N).Nkind = N_Formal_Object_Declaration
2099 or else NT (N).Nkind = N_Function_Specification
2100 or else NT (N).Nkind = N_Object_Declaration
2101 or else NT (N).Nkind = N_Object_Renaming_Declaration
2102 or else NT (N).Nkind = N_Parameter_Specification
2103 or else NT (N).Nkind = N_Subtype_Declaration);
2105 end Null_Exclusion_Present;
2107 function Null_Exclusion_In_Return_Present
2108 (N : Node_Id) return Boolean is
2110 pragma Assert (False
2111 or else NT (N).Nkind = N_Access_Function_Definition);
2113 end Null_Exclusion_In_Return_Present;
2115 function Null_Record_Present
2116 (N : Node_Id) return Boolean is
2118 pragma Assert (False
2119 or else NT (N).Nkind = N_Aggregate
2120 or else NT (N).Nkind = N_Extension_Aggregate);
2122 end Null_Record_Present;
2124 function Object_Definition
2125 (N : Node_Id) return Node_Id is
2127 pragma Assert (False
2128 or else NT (N).Nkind = N_Object_Declaration);
2130 end Object_Definition;
2132 function Original_Discriminant
2133 (N : Node_Id) return Node_Id is
2135 pragma Assert (False
2136 or else NT (N).Nkind = N_Identifier);
2138 end Original_Discriminant;
2140 function Original_Entity
2141 (N : Node_Id) return Entity_Id is
2143 pragma Assert (False
2144 or else NT (N).Nkind = N_Integer_Literal
2145 or else NT (N).Nkind = N_Real_Literal);
2147 end Original_Entity;
2149 function Others_Discrete_Choices
2150 (N : Node_Id) return List_Id is
2152 pragma Assert (False
2153 or else NT (N).Nkind = N_Others_Choice);
2155 end Others_Discrete_Choices;
2157 function Out_Present
2158 (N : Node_Id) return Boolean is
2160 pragma Assert (False
2161 or else NT (N).Nkind = N_Formal_Object_Declaration
2162 or else NT (N).Nkind = N_Parameter_Specification);
2166 function Parameter_Associations
2167 (N : Node_Id) return List_Id is
2169 pragma Assert (False
2170 or else NT (N).Nkind = N_Entry_Call_Statement
2171 or else NT (N).Nkind = N_Function_Call
2172 or else NT (N).Nkind = N_Procedure_Call_Statement);
2174 end Parameter_Associations;
2176 function Parameter_List_Truncated
2177 (N : Node_Id) return Boolean is
2179 pragma Assert (False
2180 or else NT (N).Nkind = N_Function_Call
2181 or else NT (N).Nkind = N_Procedure_Call_Statement);
2183 end Parameter_List_Truncated;
2185 function Parameter_Specifications
2186 (N : Node_Id) return List_Id is
2188 pragma Assert (False
2189 or else NT (N).Nkind = N_Accept_Statement
2190 or else NT (N).Nkind = N_Access_Function_Definition
2191 or else NT (N).Nkind = N_Access_Procedure_Definition
2192 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2193 or else NT (N).Nkind = N_Entry_Declaration
2194 or else NT (N).Nkind = N_Function_Specification
2195 or else NT (N).Nkind = N_Procedure_Specification);
2197 end Parameter_Specifications;
2199 function Parameter_Type
2200 (N : Node_Id) return Node_Id is
2202 pragma Assert (False
2203 or else NT (N).Nkind = N_Parameter_Specification);
2207 function Parent_Spec
2208 (N : Node_Id) return Node_Id is
2210 pragma Assert (False
2211 or else NT (N).Nkind = N_Function_Instantiation
2212 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
2213 or else NT (N).Nkind = N_Generic_Package_Declaration
2214 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
2215 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
2216 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2217 or else NT (N).Nkind = N_Package_Declaration
2218 or else NT (N).Nkind = N_Package_Instantiation
2219 or else NT (N).Nkind = N_Package_Renaming_Declaration
2220 or else NT (N).Nkind = N_Procedure_Instantiation
2221 or else NT (N).Nkind = N_Subprogram_Declaration
2222 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2226 function PPC_Enabled
2227 (N : Node_Id) return Boolean is
2229 pragma Assert (False
2230 or else NT (N).Nkind = N_Pragma);
2235 (N : Node_Id) return Node_Id is
2237 pragma Assert (False
2238 or else NT (N).Nkind = N_Component_Clause);
2242 function Pragma_Argument_Associations
2243 (N : Node_Id) return List_Id is
2245 pragma Assert (False
2246 or else NT (N).Nkind = N_Pragma);
2248 end Pragma_Argument_Associations;
2250 function Pragma_Identifier
2251 (N : Node_Id) return Node_Id is
2253 pragma Assert (False
2254 or else NT (N).Nkind = N_Pragma);
2256 end Pragma_Identifier;
2258 function Pragmas_After
2259 (N : Node_Id) return List_Id is
2261 pragma Assert (False
2262 or else NT (N).Nkind = N_Compilation_Unit_Aux
2263 or else NT (N).Nkind = N_Terminate_Alternative);
2267 function Pragmas_Before
2268 (N : Node_Id) return List_Id is
2270 pragma Assert (False
2271 or else NT (N).Nkind = N_Accept_Alternative
2272 or else NT (N).Nkind = N_Delay_Alternative
2273 or else NT (N).Nkind = N_Entry_Call_Alternative
2274 or else NT (N).Nkind = N_Mod_Clause
2275 or else NT (N).Nkind = N_Terminate_Alternative
2276 or else NT (N).Nkind = N_Triggering_Alternative);
2281 (N : Node_Id) return Node_Id is
2283 pragma Assert (False
2284 or else NT (N).Nkind = N_Attribute_Reference
2285 or else NT (N).Nkind = N_Expanded_Name
2286 or else NT (N).Nkind = N_Explicit_Dereference
2287 or else NT (N).Nkind = N_Indexed_Component
2288 or else NT (N).Nkind = N_Reference
2289 or else NT (N).Nkind = N_Selected_Component
2290 or else NT (N).Nkind = N_Slice);
2294 function Present_Expr
2295 (N : Node_Id) return Uint is
2297 pragma Assert (False
2298 or else NT (N).Nkind = N_Variant);
2303 (N : Node_Id) return Boolean is
2305 pragma Assert (False
2306 or else NT (N).Nkind = N_Component_Declaration
2307 or else NT (N).Nkind = N_Discriminant_Specification
2308 or else NT (N).Nkind = N_Exception_Declaration
2309 or else NT (N).Nkind = N_Formal_Object_Declaration
2310 or else NT (N).Nkind = N_Number_Declaration
2311 or else NT (N).Nkind = N_Object_Declaration
2312 or else NT (N).Nkind = N_Parameter_Specification);
2316 function Print_In_Hex
2317 (N : Node_Id) return Boolean is
2319 pragma Assert (False
2320 or else NT (N).Nkind = N_Integer_Literal);
2324 function Private_Declarations
2325 (N : Node_Id) return List_Id is
2327 pragma Assert (False
2328 or else NT (N).Nkind = N_Package_Specification
2329 or else NT (N).Nkind = N_Protected_Definition
2330 or else NT (N).Nkind = N_Task_Definition);
2332 end Private_Declarations;
2334 function Private_Present
2335 (N : Node_Id) return Boolean is
2337 pragma Assert (False
2338 or else NT (N).Nkind = N_Compilation_Unit
2339 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2340 or else NT (N).Nkind = N_With_Clause);
2342 end Private_Present;
2344 function Procedure_To_Call
2345 (N : Node_Id) return Node_Id is
2347 pragma Assert (False
2348 or else NT (N).Nkind = N_Allocator
2349 or else NT (N).Nkind = N_Extended_Return_Statement
2350 or else NT (N).Nkind = N_Free_Statement
2351 or else NT (N).Nkind = N_Return_Statement);
2353 end Procedure_To_Call;
2355 function Proper_Body
2356 (N : Node_Id) return Node_Id is
2358 pragma Assert (False
2359 or else NT (N).Nkind = N_Subunit);
2363 function Protected_Definition
2364 (N : Node_Id) return Node_Id is
2366 pragma Assert (False
2367 or else NT (N).Nkind = N_Protected_Type_Declaration
2368 or else NT (N).Nkind = N_Single_Protected_Declaration);
2370 end Protected_Definition;
2372 function Protected_Present
2373 (N : Node_Id) return Boolean is
2375 pragma Assert (False
2376 or else NT (N).Nkind = N_Access_Function_Definition
2377 or else NT (N).Nkind = N_Access_Procedure_Definition
2378 or else NT (N).Nkind = N_Derived_Type_Definition
2379 or else NT (N).Nkind = N_Record_Definition);
2381 end Protected_Present;
2383 function Raises_Constraint_Error
2384 (N : Node_Id) return Boolean is
2386 pragma Assert (False
2387 or else NT (N).Nkind in N_Subexpr);
2389 end Raises_Constraint_Error;
2391 function Range_Constraint
2392 (N : Node_Id) return Node_Id is
2394 pragma Assert (False
2395 or else NT (N).Nkind = N_Delta_Constraint
2396 or else NT (N).Nkind = N_Digits_Constraint);
2398 end Range_Constraint;
2400 function Range_Expression
2401 (N : Node_Id) return Node_Id is
2403 pragma Assert (False
2404 or else NT (N).Nkind = N_Range_Constraint);
2406 end Range_Expression;
2408 function Real_Range_Specification
2409 (N : Node_Id) return Node_Id is
2411 pragma Assert (False
2412 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2413 or else NT (N).Nkind = N_Floating_Point_Definition
2414 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2416 end Real_Range_Specification;
2419 (N : Node_Id) return Ureal is
2421 pragma Assert (False
2422 or else NT (N).Nkind = N_Real_Literal);
2427 (N : Node_Id) return Uint is
2429 pragma Assert (False
2430 or else NT (N).Nkind = N_Raise_Constraint_Error
2431 or else NT (N).Nkind = N_Raise_Program_Error
2432 or else NT (N).Nkind = N_Raise_Storage_Error);
2436 function Record_Extension_Part
2437 (N : Node_Id) return Node_Id is
2439 pragma Assert (False
2440 or else NT (N).Nkind = N_Derived_Type_Definition);
2442 end Record_Extension_Part;
2444 function Redundant_Use
2445 (N : Node_Id) return Boolean is
2447 pragma Assert (False
2448 or else NT (N).Nkind = N_Attribute_Reference
2449 or else NT (N).Nkind = N_Expanded_Name
2450 or else NT (N).Nkind = N_Identifier);
2454 function Renaming_Exception
2455 (N : Node_Id) return Node_Id is
2457 pragma Assert (False
2458 or else NT (N).Nkind = N_Exception_Declaration);
2460 end Renaming_Exception;
2462 function Result_Definition
2463 (N : Node_Id) return Node_Id is
2465 pragma Assert (False
2466 or else NT (N).Nkind = N_Access_Function_Definition
2467 or else NT (N).Nkind = N_Function_Specification);
2469 end Result_Definition;
2471 function Return_Object_Declarations
2472 (N : Node_Id) return List_Id is
2474 pragma Assert (False
2475 or else NT (N).Nkind = N_Extended_Return_Statement);
2477 end Return_Object_Declarations;
2479 function Return_Statement_Entity
2480 (N : Node_Id) return Node_Id is
2482 pragma Assert (False
2483 or else NT (N).Nkind = N_Extended_Return_Statement
2484 or else NT (N).Nkind = N_Return_Statement);
2486 end Return_Statement_Entity;
2488 function Reverse_Present
2489 (N : Node_Id) return Boolean is
2491 pragma Assert (False
2492 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2494 end Reverse_Present;
2497 (N : Node_Id) return Node_Id is
2499 pragma Assert (False
2500 or else NT (N).Nkind in N_Op
2501 or else NT (N).Nkind = N_And_Then
2502 or else NT (N).Nkind = N_In
2503 or else NT (N).Nkind = N_Not_In
2504 or else NT (N).Nkind = N_Or_Else);
2508 function Rounded_Result
2509 (N : Node_Id) return Boolean is
2511 pragma Assert (False
2512 or else NT (N).Nkind = N_Op_Divide
2513 or else NT (N).Nkind = N_Op_Multiply
2514 or else NT (N).Nkind = N_Type_Conversion);
2519 (N : Node_Id) return Node_Id is
2521 pragma Assert (False
2522 or else NT (N).Nkind = N_Defining_Character_Literal
2523 or else NT (N).Nkind = N_Defining_Identifier
2524 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2528 function Select_Alternatives
2529 (N : Node_Id) return List_Id is
2531 pragma Assert (False
2532 or else NT (N).Nkind = N_Selective_Accept);
2534 end Select_Alternatives;
2536 function Selector_Name
2537 (N : Node_Id) return Node_Id is
2539 pragma Assert (False
2540 or else NT (N).Nkind = N_Expanded_Name
2541 or else NT (N).Nkind = N_Generic_Association
2542 or else NT (N).Nkind = N_Parameter_Association
2543 or else NT (N).Nkind = N_Selected_Component);
2547 function Selector_Names
2548 (N : Node_Id) return List_Id is
2550 pragma Assert (False
2551 or else NT (N).Nkind = N_Discriminant_Association);
2555 function Shift_Count_OK
2556 (N : Node_Id) return Boolean is
2558 pragma Assert (False
2559 or else NT (N).Nkind = N_Op_Rotate_Left
2560 or else NT (N).Nkind = N_Op_Rotate_Right
2561 or else NT (N).Nkind = N_Op_Shift_Left
2562 or else NT (N).Nkind = N_Op_Shift_Right
2563 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2567 function Source_Type
2568 (N : Node_Id) return Entity_Id is
2570 pragma Assert (False
2571 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2575 function Specification
2576 (N : Node_Id) return Node_Id is
2578 pragma Assert (False
2579 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2580 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
2581 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
2582 or else NT (N).Nkind = N_Generic_Package_Declaration
2583 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2584 or else NT (N).Nkind = N_Package_Declaration
2585 or else NT (N).Nkind = N_Subprogram_Body
2586 or else NT (N).Nkind = N_Subprogram_Body_Stub
2587 or else NT (N).Nkind = N_Subprogram_Declaration
2588 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2593 (N : Node_Id) return List_Id is
2595 pragma Assert (False
2596 or else NT (N).Nkind = N_Abortable_Part
2597 or else NT (N).Nkind = N_Accept_Alternative
2598 or else NT (N).Nkind = N_Case_Statement_Alternative
2599 or else NT (N).Nkind = N_Delay_Alternative
2600 or else NT (N).Nkind = N_Entry_Call_Alternative
2601 or else NT (N).Nkind = N_Exception_Handler
2602 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2603 or else NT (N).Nkind = N_Loop_Statement
2604 or else NT (N).Nkind = N_Triggering_Alternative);
2608 function Static_Processing_OK
2609 (N : Node_Id) return Boolean is
2611 pragma Assert (False
2612 or else NT (N).Nkind = N_Aggregate);
2614 end Static_Processing_OK;
2616 function Storage_Pool
2617 (N : Node_Id) return Node_Id is
2619 pragma Assert (False
2620 or else NT (N).Nkind = N_Allocator
2621 or else NT (N).Nkind = N_Extended_Return_Statement
2622 or else NT (N).Nkind = N_Free_Statement
2623 or else NT (N).Nkind = N_Return_Statement);
2628 (N : Node_Id) return String_Id is
2630 pragma Assert (False
2631 or else NT (N).Nkind = N_Operator_Symbol
2632 or else NT (N).Nkind = N_String_Literal);
2636 function Subtype_Indication
2637 (N : Node_Id) return Node_Id is
2639 pragma Assert (False
2640 or else NT (N).Nkind = N_Access_To_Object_Definition
2641 or else NT (N).Nkind = N_Component_Definition
2642 or else NT (N).Nkind = N_Derived_Type_Definition
2643 or else NT (N).Nkind = N_Private_Extension_Declaration
2644 or else NT (N).Nkind = N_Subtype_Declaration);
2646 end Subtype_Indication;
2648 function Suppress_Loop_Warnings
2649 (N : Node_Id) return Boolean is
2651 pragma Assert (False
2652 or else NT (N).Nkind = N_Loop_Statement);
2654 end Suppress_Loop_Warnings;
2656 function Subtype_Mark
2657 (N : Node_Id) return Node_Id is
2659 pragma Assert (False
2660 or else NT (N).Nkind = N_Access_Definition
2661 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2662 or else NT (N).Nkind = N_Formal_Object_Declaration
2663 or else NT (N).Nkind = N_Object_Renaming_Declaration
2664 or else NT (N).Nkind = N_Qualified_Expression
2665 or else NT (N).Nkind = N_Subtype_Indication
2666 or else NT (N).Nkind = N_Type_Conversion
2667 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2671 function Subtype_Marks
2672 (N : Node_Id) return List_Id is
2674 pragma Assert (False
2675 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2676 or else NT (N).Nkind = N_Use_Type_Clause);
2680 function Synchronized_Present
2681 (N : Node_Id) return Boolean is
2683 pragma Assert (False
2684 or else NT (N).Nkind = N_Derived_Type_Definition
2685 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2686 or else NT (N).Nkind = N_Private_Extension_Declaration
2687 or else NT (N).Nkind = N_Record_Definition);
2689 end Synchronized_Present;
2691 function Tagged_Present
2692 (N : Node_Id) return Boolean is
2694 pragma Assert (False
2695 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2696 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2697 or else NT (N).Nkind = N_Private_Type_Declaration
2698 or else NT (N).Nkind = N_Record_Definition);
2702 function Target_Type
2703 (N : Node_Id) return Entity_Id is
2705 pragma Assert (False
2706 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2710 function Task_Definition
2711 (N : Node_Id) return Node_Id is
2713 pragma Assert (False
2714 or else NT (N).Nkind = N_Single_Task_Declaration
2715 or else NT (N).Nkind = N_Task_Type_Declaration);
2717 end Task_Definition;
2719 function Task_Present
2720 (N : Node_Id) return Boolean is
2722 pragma Assert (False
2723 or else NT (N).Nkind = N_Derived_Type_Definition
2724 or else NT (N).Nkind = N_Record_Definition);
2728 function Then_Actions
2729 (N : Node_Id) return List_Id is
2731 pragma Assert (False
2732 or else NT (N).Nkind = N_Conditional_Expression);
2736 function Then_Statements
2737 (N : Node_Id) return List_Id is
2739 pragma Assert (False
2740 or else NT (N).Nkind = N_Elsif_Part
2741 or else NT (N).Nkind = N_If_Statement);
2743 end Then_Statements;
2745 function Treat_Fixed_As_Integer
2746 (N : Node_Id) return Boolean is
2748 pragma Assert (False
2749 or else NT (N).Nkind = N_Op_Divide
2750 or else NT (N).Nkind = N_Op_Mod
2751 or else NT (N).Nkind = N_Op_Multiply
2752 or else NT (N).Nkind = N_Op_Rem);
2754 end Treat_Fixed_As_Integer;
2756 function Triggering_Alternative
2757 (N : Node_Id) return Node_Id is
2759 pragma Assert (False
2760 or else NT (N).Nkind = N_Asynchronous_Select);
2762 end Triggering_Alternative;
2764 function Triggering_Statement
2765 (N : Node_Id) return Node_Id is
2767 pragma Assert (False
2768 or else NT (N).Nkind = N_Triggering_Alternative);
2770 end Triggering_Statement;
2773 (N : Node_Id) return Elist_Id is
2775 pragma Assert (False
2776 or else NT (N).Nkind = N_Freeze_Entity);
2780 function Type_Definition
2781 (N : Node_Id) return Node_Id is
2783 pragma Assert (False
2784 or else NT (N).Nkind = N_Full_Type_Declaration);
2786 end Type_Definition;
2789 (N : Node_Id) return Node_Id is
2791 pragma Assert (False
2792 or else NT (N).Nkind = N_Compilation_Unit);
2796 function Unknown_Discriminants_Present
2797 (N : Node_Id) return Boolean is
2799 pragma Assert (False
2800 or else NT (N).Nkind = N_Formal_Type_Declaration
2801 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2802 or else NT (N).Nkind = N_Private_Extension_Declaration
2803 or else NT (N).Nkind = N_Private_Type_Declaration);
2805 end Unknown_Discriminants_Present;
2807 function Unreferenced_In_Spec
2808 (N : Node_Id) return Boolean is
2810 pragma Assert (False
2811 or else NT (N).Nkind = N_With_Clause);
2813 end Unreferenced_In_Spec;
2815 function Variant_Part
2816 (N : Node_Id) return Node_Id is
2818 pragma Assert (False
2819 or else NT (N).Nkind = N_Component_List);
2824 (N : Node_Id) return List_Id is
2826 pragma Assert (False
2827 or else NT (N).Nkind = N_Variant_Part);
2831 function Visible_Declarations
2832 (N : Node_Id) return List_Id is
2834 pragma Assert (False
2835 or else NT (N).Nkind = N_Package_Specification
2836 or else NT (N).Nkind = N_Protected_Definition
2837 or else NT (N).Nkind = N_Task_Definition);
2839 end Visible_Declarations;
2841 function Was_Originally_Stub
2842 (N : Node_Id) return Boolean is
2844 pragma Assert (False
2845 or else NT (N).Nkind = N_Package_Body
2846 or else NT (N).Nkind = N_Protected_Body
2847 or else NT (N).Nkind = N_Subprogram_Body
2848 or else NT (N).Nkind = N_Task_Body);
2850 end Was_Originally_Stub;
2852 function Zero_Cost_Handling
2853 (N : Node_Id) return Boolean is
2855 pragma Assert (False
2856 or else NT (N).Nkind = N_Exception_Handler
2857 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2859 end Zero_Cost_Handling;
2861 --------------------------
2862 -- Field Set Procedures --
2863 --------------------------
2865 procedure Set_ABE_Is_Certain
2866 (N : Node_Id; Val : Boolean := True) is
2868 pragma Assert (False
2869 or else NT (N).Nkind = N_Formal_Package_Declaration
2870 or else NT (N).Nkind = N_Function_Call
2871 or else NT (N).Nkind = N_Function_Instantiation
2872 or else NT (N).Nkind = N_Package_Instantiation
2873 or else NT (N).Nkind = N_Procedure_Call_Statement
2874 or else NT (N).Nkind = N_Procedure_Instantiation);
2875 Set_Flag18 (N, Val);
2876 end Set_ABE_Is_Certain;
2878 procedure Set_Abort_Present
2879 (N : Node_Id; Val : Boolean := True) is
2881 pragma Assert (False
2882 or else NT (N).Nkind = N_Requeue_Statement);
2883 Set_Flag15 (N, Val);
2884 end Set_Abort_Present;
2886 procedure Set_Abortable_Part
2887 (N : Node_Id; Val : Node_Id) is
2889 pragma Assert (False
2890 or else NT (N).Nkind = N_Asynchronous_Select);
2891 Set_Node2_With_Parent (N, Val);
2892 end Set_Abortable_Part;
2894 procedure Set_Abstract_Present
2895 (N : Node_Id; Val : Boolean := True) is
2897 pragma Assert (False
2898 or else NT (N).Nkind = N_Derived_Type_Definition
2899 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2900 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2901 or else NT (N).Nkind = N_Private_Extension_Declaration
2902 or else NT (N).Nkind = N_Private_Type_Declaration
2903 or else NT (N).Nkind = N_Record_Definition);
2905 end Set_Abstract_Present;
2907 procedure Set_Accept_Handler_Records
2908 (N : Node_Id; Val : List_Id) is
2910 pragma Assert (False
2911 or else NT (N).Nkind = N_Accept_Alternative);
2912 Set_List5 (N, Val); -- semantic field, no parent set
2913 end Set_Accept_Handler_Records;
2915 procedure Set_Accept_Statement
2916 (N : Node_Id; Val : Node_Id) is
2918 pragma Assert (False
2919 or else NT (N).Nkind = N_Accept_Alternative);
2920 Set_Node2_With_Parent (N, Val);
2921 end Set_Accept_Statement;
2923 procedure Set_Access_Definition
2924 (N : Node_Id; Val : Node_Id) is
2926 pragma Assert (False
2927 or else NT (N).Nkind = N_Component_Definition
2928 or else NT (N).Nkind = N_Formal_Object_Declaration
2929 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2930 Set_Node3_With_Parent (N, Val);
2931 end Set_Access_Definition;
2933 procedure Set_Access_To_Subprogram_Definition
2934 (N : Node_Id; Val : Node_Id) is
2936 pragma Assert (False
2937 or else NT (N).Nkind = N_Access_Definition);
2938 Set_Node3_With_Parent (N, Val);
2939 end Set_Access_To_Subprogram_Definition;
2941 procedure Set_Access_Types_To_Process
2942 (N : Node_Id; Val : Elist_Id) is
2944 pragma Assert (False
2945 or else NT (N).Nkind = N_Freeze_Entity);
2946 Set_Elist2 (N, Val); -- semantic field, no parent set
2947 end Set_Access_Types_To_Process;
2949 procedure Set_Actions
2950 (N : Node_Id; Val : List_Id) is
2952 pragma Assert (False
2953 or else NT (N).Nkind = N_And_Then
2954 or else NT (N).Nkind = N_Compilation_Unit_Aux
2955 or else NT (N).Nkind = N_Freeze_Entity
2956 or else NT (N).Nkind = N_Or_Else);
2957 Set_List1_With_Parent (N, Val);
2960 procedure Set_Activation_Chain_Entity
2961 (N : Node_Id; Val : Node_Id) is
2963 pragma Assert (False
2964 or else NT (N).Nkind = N_Block_Statement
2965 or else NT (N).Nkind = N_Entry_Body
2966 or else NT (N).Nkind = N_Generic_Package_Declaration
2967 or else NT (N).Nkind = N_Package_Declaration
2968 or else NT (N).Nkind = N_Subprogram_Body
2969 or else NT (N).Nkind = N_Task_Body);
2970 Set_Node3 (N, Val); -- semantic field, no parent set
2971 end Set_Activation_Chain_Entity;
2973 procedure Set_Acts_As_Spec
2974 (N : Node_Id; Val : Boolean := True) is
2976 pragma Assert (False
2977 or else NT (N).Nkind = N_Compilation_Unit
2978 or else NT (N).Nkind = N_Subprogram_Body);
2980 end Set_Acts_As_Spec;
2982 procedure Set_Actual_Designated_Subtype
2983 (N : Node_Id; Val : Node_Id) is
2985 pragma Assert (False
2986 or else NT (N).Nkind = N_Explicit_Dereference
2987 or else NT (N).Nkind = N_Free_Statement);
2989 end Set_Actual_Designated_Subtype;
2991 procedure Set_Address_Warning_Posted
2992 (N : Node_Id; Val : Boolean := True) is
2994 pragma Assert (False
2995 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2996 Set_Flag18 (N, Val);
2997 end Set_Address_Warning_Posted;
2999 procedure Set_Aggregate_Bounds
3000 (N : Node_Id; Val : Node_Id) is
3002 pragma Assert (False
3003 or else NT (N).Nkind = N_Aggregate);
3004 Set_Node3 (N, Val); -- semantic field, no parent set
3005 end Set_Aggregate_Bounds;
3007 procedure Set_Aliased_Present
3008 (N : Node_Id; Val : Boolean := True) is
3010 pragma Assert (False
3011 or else NT (N).Nkind = N_Component_Definition
3012 or else NT (N).Nkind = N_Object_Declaration);
3014 end Set_Aliased_Present;
3016 procedure Set_All_Others
3017 (N : Node_Id; Val : Boolean := True) is
3019 pragma Assert (False
3020 or else NT (N).Nkind = N_Others_Choice);
3021 Set_Flag11 (N, Val);
3024 procedure Set_All_Present
3025 (N : Node_Id; Val : Boolean := True) is
3027 pragma Assert (False
3028 or else NT (N).Nkind = N_Access_Definition
3029 or else NT (N).Nkind = N_Access_To_Object_Definition);
3030 Set_Flag15 (N, Val);
3031 end Set_All_Present;
3033 procedure Set_Alternatives
3034 (N : Node_Id; Val : List_Id) is
3036 pragma Assert (False
3037 or else NT (N).Nkind = N_Case_Statement);
3038 Set_List4_With_Parent (N, Val);
3039 end Set_Alternatives;
3041 procedure Set_Ancestor_Part
3042 (N : Node_Id; Val : Node_Id) is
3044 pragma Assert (False
3045 or else NT (N).Nkind = N_Extension_Aggregate);
3046 Set_Node3_With_Parent (N, Val);
3047 end Set_Ancestor_Part;
3049 procedure Set_Array_Aggregate
3050 (N : Node_Id; Val : Node_Id) is
3052 pragma Assert (False
3053 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
3054 Set_Node3_With_Parent (N, Val);
3055 end Set_Array_Aggregate;
3057 procedure Set_Assignment_OK
3058 (N : Node_Id; Val : Boolean := True) is
3060 pragma Assert (False
3061 or else NT (N).Nkind = N_Object_Declaration
3062 or else NT (N).Nkind in N_Subexpr);
3063 Set_Flag15 (N, Val);
3064 end Set_Assignment_OK;
3066 procedure Set_Associated_Node
3067 (N : Node_Id; Val : Node_Id) is
3069 pragma Assert (False
3070 or else NT (N).Nkind in N_Has_Entity
3071 or else NT (N).Nkind = N_Aggregate
3072 or else NT (N).Nkind = N_Extension_Aggregate
3073 or else NT (N).Nkind = N_Selected_Component);
3074 Set_Node4 (N, Val); -- semantic field, no parent set
3075 end Set_Associated_Node;
3077 procedure Set_At_End_Proc
3078 (N : Node_Id; Val : Node_Id) is
3080 pragma Assert (False
3081 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3083 end Set_At_End_Proc;
3085 procedure Set_Attribute_Name
3086 (N : Node_Id; Val : Name_Id) is
3088 pragma Assert (False
3089 or else NT (N).Nkind = N_Attribute_Reference);
3091 end Set_Attribute_Name;
3093 procedure Set_Aux_Decls_Node
3094 (N : Node_Id; Val : Node_Id) is
3096 pragma Assert (False
3097 or else NT (N).Nkind = N_Compilation_Unit);
3098 Set_Node5_With_Parent (N, Val);
3099 end Set_Aux_Decls_Node;
3101 procedure Set_Backwards_OK
3102 (N : Node_Id; Val : Boolean := True) is
3104 pragma Assert (False
3105 or else NT (N).Nkind = N_Assignment_Statement);
3107 end Set_Backwards_OK;
3109 procedure Set_Bad_Is_Detected
3110 (N : Node_Id; Val : Boolean := True) is
3112 pragma Assert (False
3113 or else NT (N).Nkind = N_Subprogram_Body);
3114 Set_Flag15 (N, Val);
3115 end Set_Bad_Is_Detected;
3117 procedure Set_Body_Required
3118 (N : Node_Id; Val : Boolean := True) is
3120 pragma Assert (False
3121 or else NT (N).Nkind = N_Compilation_Unit);
3122 Set_Flag13 (N, Val);
3123 end Set_Body_Required;
3125 procedure Set_Body_To_Inline
3126 (N : Node_Id; Val : Node_Id) is
3128 pragma Assert (False
3129 or else NT (N).Nkind = N_Subprogram_Declaration);
3131 end Set_Body_To_Inline;
3133 procedure Set_Box_Present
3134 (N : Node_Id; Val : Boolean := True) is
3136 pragma Assert (False
3137 or else NT (N).Nkind = N_Component_Association
3138 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
3139 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
3140 or else NT (N).Nkind = N_Formal_Package_Declaration
3141 or else NT (N).Nkind = N_Generic_Association);
3142 Set_Flag15 (N, Val);
3143 end Set_Box_Present;
3145 procedure Set_By_Ref
3146 (N : Node_Id; Val : Boolean := True) is
3148 pragma Assert (False
3149 or else NT (N).Nkind = N_Extended_Return_Statement
3150 or else NT (N).Nkind = N_Return_Statement);
3154 procedure Set_Char_Literal_Value
3155 (N : Node_Id; Val : Uint) is
3157 pragma Assert (False
3158 or else NT (N).Nkind = N_Character_Literal);
3160 end Set_Char_Literal_Value;
3163 (N : Node_Id; Val : Name_Id) is
3165 pragma Assert (False
3166 or else NT (N).Nkind in N_Has_Chars);
3170 procedure Set_Check_Address_Alignment
3171 (N : Node_Id; Val : Boolean := True) is
3173 pragma Assert (False
3174 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3175 Set_Flag11 (N, Val);
3176 end Set_Check_Address_Alignment;
3178 procedure Set_Choice_Parameter
3179 (N : Node_Id; Val : Node_Id) is
3181 pragma Assert (False
3182 or else NT (N).Nkind = N_Exception_Handler);
3183 Set_Node2_With_Parent (N, Val);
3184 end Set_Choice_Parameter;
3186 procedure Set_Choices
3187 (N : Node_Id; Val : List_Id) is
3189 pragma Assert (False
3190 or else NT (N).Nkind = N_Component_Association);
3191 Set_List1_With_Parent (N, Val);
3194 procedure Set_Coextensions
3195 (N : Node_Id; Val : Elist_Id) is
3197 pragma Assert (False
3198 or else NT (N).Nkind = N_Allocator);
3199 Set_Elist4 (N, Val);
3200 end Set_Coextensions;
3202 procedure Set_Comes_From_Extended_Return_Statement
3203 (N : Node_Id; Val : Boolean := True) is
3205 pragma Assert (False
3206 or else NT (N).Nkind = N_Return_Statement);
3207 Set_Flag18 (N, Val);
3208 end Set_Comes_From_Extended_Return_Statement;
3210 procedure Set_Compile_Time_Known_Aggregate
3211 (N : Node_Id; Val : Boolean := True) is
3213 pragma Assert (False
3214 or else NT (N).Nkind = N_Aggregate);
3215 Set_Flag18 (N, Val);
3216 end Set_Compile_Time_Known_Aggregate;
3218 procedure Set_Component_Associations
3219 (N : Node_Id; Val : List_Id) is
3221 pragma Assert (False
3222 or else NT (N).Nkind = N_Aggregate
3223 or else NT (N).Nkind = N_Extension_Aggregate);
3224 Set_List2_With_Parent (N, Val);
3225 end Set_Component_Associations;
3227 procedure Set_Component_Clauses
3228 (N : Node_Id; Val : List_Id) is
3230 pragma Assert (False
3231 or else NT (N).Nkind = N_Record_Representation_Clause);
3232 Set_List3_With_Parent (N, Val);
3233 end Set_Component_Clauses;
3235 procedure Set_Component_Definition
3236 (N : Node_Id; Val : Node_Id) is
3238 pragma Assert (False
3239 or else NT (N).Nkind = N_Component_Declaration
3240 or else NT (N).Nkind = N_Constrained_Array_Definition
3241 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
3242 Set_Node4_With_Parent (N, Val);
3243 end Set_Component_Definition;
3245 procedure Set_Component_Items
3246 (N : Node_Id; Val : List_Id) is
3248 pragma Assert (False
3249 or else NT (N).Nkind = N_Component_List);
3250 Set_List3_With_Parent (N, Val);
3251 end Set_Component_Items;
3253 procedure Set_Component_List
3254 (N : Node_Id; Val : Node_Id) is
3256 pragma Assert (False
3257 or else NT (N).Nkind = N_Record_Definition
3258 or else NT (N).Nkind = N_Variant);
3259 Set_Node1_With_Parent (N, Val);
3260 end Set_Component_List;
3262 procedure Set_Component_Name
3263 (N : Node_Id; Val : Node_Id) is
3265 pragma Assert (False
3266 or else NT (N).Nkind = N_Component_Clause);
3267 Set_Node1_With_Parent (N, Val);
3268 end Set_Component_Name;
3270 procedure Set_Condition
3271 (N : Node_Id; Val : Node_Id) is
3273 pragma Assert (False
3274 or else NT (N).Nkind = N_Accept_Alternative
3275 or else NT (N).Nkind = N_Delay_Alternative
3276 or else NT (N).Nkind = N_Elsif_Part
3277 or else NT (N).Nkind = N_Entry_Body_Formal_Part
3278 or else NT (N).Nkind = N_Exit_Statement
3279 or else NT (N).Nkind = N_If_Statement
3280 or else NT (N).Nkind = N_Iteration_Scheme
3281 or else NT (N).Nkind = N_Raise_Constraint_Error
3282 or else NT (N).Nkind = N_Raise_Program_Error
3283 or else NT (N).Nkind = N_Raise_Storage_Error
3284 or else NT (N).Nkind = N_Terminate_Alternative);
3285 Set_Node1_With_Parent (N, Val);
3288 procedure Set_Condition_Actions
3289 (N : Node_Id; Val : List_Id) is
3291 pragma Assert (False
3292 or else NT (N).Nkind = N_Elsif_Part
3293 or else NT (N).Nkind = N_Iteration_Scheme);
3294 Set_List3 (N, Val); -- semantic field, no parent set
3295 end Set_Condition_Actions;
3297 procedure Set_Config_Pragmas
3298 (N : Node_Id; Val : List_Id) is
3300 pragma Assert (False
3301 or else NT (N).Nkind = N_Compilation_Unit_Aux);
3302 Set_List4_With_Parent (N, Val);
3303 end Set_Config_Pragmas;
3305 procedure Set_Constant_Present
3306 (N : Node_Id; Val : Boolean := True) is
3308 pragma Assert (False
3309 or else NT (N).Nkind = N_Access_Definition
3310 or else NT (N).Nkind = N_Access_To_Object_Definition
3311 or else NT (N).Nkind = N_Object_Declaration);
3312 Set_Flag17 (N, Val);
3313 end Set_Constant_Present;
3315 procedure Set_Constraint
3316 (N : Node_Id; Val : Node_Id) is
3318 pragma Assert (False
3319 or else NT (N).Nkind = N_Subtype_Indication);
3320 Set_Node3_With_Parent (N, Val);
3323 procedure Set_Constraints
3324 (N : Node_Id; Val : List_Id) is
3326 pragma Assert (False
3327 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
3328 Set_List1_With_Parent (N, Val);
3329 end Set_Constraints;
3331 procedure Set_Context_Installed
3332 (N : Node_Id; Val : Boolean := True) is
3334 pragma Assert (False
3335 or else NT (N).Nkind = N_With_Clause);
3336 Set_Flag13 (N, Val);
3337 end Set_Context_Installed;
3339 procedure Set_Context_Items
3340 (N : Node_Id; Val : List_Id) is
3342 pragma Assert (False
3343 or else NT (N).Nkind = N_Compilation_Unit);
3344 Set_List1_With_Parent (N, Val);
3345 end Set_Context_Items;
3347 procedure Set_Controlling_Argument
3348 (N : Node_Id; Val : Node_Id) is
3350 pragma Assert (False
3351 or else NT (N).Nkind = N_Function_Call
3352 or else NT (N).Nkind = N_Procedure_Call_Statement);
3353 Set_Node1 (N, Val); -- semantic field, no parent set
3354 end Set_Controlling_Argument;
3356 procedure Set_Conversion_OK
3357 (N : Node_Id; Val : Boolean := True) is
3359 pragma Assert (False
3360 or else NT (N).Nkind = N_Type_Conversion);
3361 Set_Flag14 (N, Val);
3362 end Set_Conversion_OK;
3364 procedure Set_Corresponding_Body
3365 (N : Node_Id; Val : Node_Id) is
3367 pragma Assert (False
3368 or else NT (N).Nkind = N_Entry_Declaration
3369 or else NT (N).Nkind = N_Generic_Package_Declaration
3370 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
3371 or else NT (N).Nkind = N_Package_Body_Stub
3372 or else NT (N).Nkind = N_Package_Declaration
3373 or else NT (N).Nkind = N_Protected_Body_Stub
3374 or else NT (N).Nkind = N_Protected_Type_Declaration
3375 or else NT (N).Nkind = N_Subprogram_Body_Stub
3376 or else NT (N).Nkind = N_Subprogram_Declaration
3377 or else NT (N).Nkind = N_Task_Body_Stub
3378 or else NT (N).Nkind = N_Task_Type_Declaration);
3379 Set_Node5 (N, Val); -- semantic field, no parent set
3380 end Set_Corresponding_Body;
3382 procedure Set_Corresponding_Formal_Spec
3383 (N : Node_Id; Val : Node_Id) is
3385 pragma Assert (False
3386 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
3387 Set_Node3 (N, Val); -- semantic field, no parent set
3388 end Set_Corresponding_Formal_Spec;
3390 procedure Set_Corresponding_Generic_Association
3391 (N : Node_Id; Val : Node_Id) is
3393 pragma Assert (False
3394 or else NT (N).Nkind = N_Object_Declaration
3395 or else NT (N).Nkind = N_Object_Renaming_Declaration);
3396 Set_Node5 (N, Val); -- semantic field, no parent set
3397 end Set_Corresponding_Generic_Association;
3399 procedure Set_Corresponding_Integer_Value
3400 (N : Node_Id; Val : Uint) is
3402 pragma Assert (False
3403 or else NT (N).Nkind = N_Real_Literal);
3404 Set_Uint4 (N, Val); -- semantic field, no parent set
3405 end Set_Corresponding_Integer_Value;
3407 procedure Set_Corresponding_Spec
3408 (N : Node_Id; Val : Node_Id) is
3410 pragma Assert (False
3411 or else NT (N).Nkind = N_Package_Body
3412 or else NT (N).Nkind = N_Protected_Body
3413 or else NT (N).Nkind = N_Subprogram_Body
3414 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
3415 or else NT (N).Nkind = N_Task_Body
3416 or else NT (N).Nkind = N_With_Clause);
3417 Set_Node5 (N, Val); -- semantic field, no parent set
3418 end Set_Corresponding_Spec;
3420 procedure Set_Corresponding_Stub
3421 (N : Node_Id; Val : Node_Id) is
3423 pragma Assert (False
3424 or else NT (N).Nkind = N_Subunit);
3426 end Set_Corresponding_Stub;
3428 procedure Set_Dcheck_Function
3429 (N : Node_Id; Val : Entity_Id) is
3431 pragma Assert (False
3432 or else NT (N).Nkind = N_Variant);
3433 Set_Node5 (N, Val); -- semantic field, no parent set
3434 end Set_Dcheck_Function;
3436 procedure Set_Debug_Statement
3437 (N : Node_Id; Val : Node_Id) is
3439 pragma Assert (False
3440 or else NT (N).Nkind = N_Pragma);
3441 Set_Node3_With_Parent (N, Val);
3442 end Set_Debug_Statement;
3444 procedure Set_Declarations
3445 (N : Node_Id; Val : List_Id) is
3447 pragma Assert (False
3448 or else NT (N).Nkind = N_Accept_Statement
3449 or else NT (N).Nkind = N_Block_Statement
3450 or else NT (N).Nkind = N_Compilation_Unit_Aux
3451 or else NT (N).Nkind = N_Entry_Body
3452 or else NT (N).Nkind = N_Package_Body
3453 or else NT (N).Nkind = N_Protected_Body
3454 or else NT (N).Nkind = N_Subprogram_Body
3455 or else NT (N).Nkind = N_Task_Body);
3456 Set_List2_With_Parent (N, Val);
3457 end Set_Declarations;
3459 procedure Set_Default_Expression
3460 (N : Node_Id; Val : Node_Id) is
3462 pragma Assert (False
3463 or else NT (N).Nkind = N_Formal_Object_Declaration
3464 or else NT (N).Nkind = N_Parameter_Specification);
3465 Set_Node5 (N, Val); -- semantic field, no parent set
3466 end Set_Default_Expression;
3468 procedure Set_Default_Name
3469 (N : Node_Id; Val : Node_Id) is
3471 pragma Assert (False
3472 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
3473 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
3474 Set_Node2_With_Parent (N, Val);
3475 end Set_Default_Name;
3477 procedure Set_Defining_Identifier
3478 (N : Node_Id; Val : Entity_Id) is
3480 pragma Assert (False
3481 or else NT (N).Nkind = N_Component_Declaration
3482 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3483 or else NT (N).Nkind = N_Discriminant_Specification
3484 or else NT (N).Nkind = N_Entry_Body
3485 or else NT (N).Nkind = N_Entry_Declaration
3486 or else NT (N).Nkind = N_Entry_Index_Specification
3487 or else NT (N).Nkind = N_Exception_Declaration
3488 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3489 or else NT (N).Nkind = N_Formal_Object_Declaration
3490 or else NT (N).Nkind = N_Formal_Package_Declaration
3491 or else NT (N).Nkind = N_Formal_Type_Declaration
3492 or else NT (N).Nkind = N_Full_Type_Declaration
3493 or else NT (N).Nkind = N_Implicit_Label_Declaration
3494 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3495 or else NT (N).Nkind = N_Loop_Parameter_Specification
3496 or else NT (N).Nkind = N_Number_Declaration
3497 or else NT (N).Nkind = N_Object_Declaration
3498 or else NT (N).Nkind = N_Object_Renaming_Declaration
3499 or else NT (N).Nkind = N_Package_Body_Stub
3500 or else NT (N).Nkind = N_Parameter_Specification
3501 or else NT (N).Nkind = N_Private_Extension_Declaration
3502 or else NT (N).Nkind = N_Private_Type_Declaration
3503 or else NT (N).Nkind = N_Protected_Body
3504 or else NT (N).Nkind = N_Protected_Body_Stub
3505 or else NT (N).Nkind = N_Protected_Type_Declaration
3506 or else NT (N).Nkind = N_Single_Protected_Declaration
3507 or else NT (N).Nkind = N_Single_Task_Declaration
3508 or else NT (N).Nkind = N_Subtype_Declaration
3509 or else NT (N).Nkind = N_Task_Body
3510 or else NT (N).Nkind = N_Task_Body_Stub
3511 or else NT (N).Nkind = N_Task_Type_Declaration);
3512 Set_Node1_With_Parent (N, Val);
3513 end Set_Defining_Identifier;
3515 procedure Set_Defining_Unit_Name
3516 (N : Node_Id; Val : Node_Id) is
3518 pragma Assert (False
3519 or else NT (N).Nkind = N_Function_Instantiation
3520 or else NT (N).Nkind = N_Function_Specification
3521 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3522 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3523 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3524 or else NT (N).Nkind = N_Package_Body
3525 or else NT (N).Nkind = N_Package_Instantiation
3526 or else NT (N).Nkind = N_Package_Renaming_Declaration
3527 or else NT (N).Nkind = N_Package_Specification
3528 or else NT (N).Nkind = N_Procedure_Instantiation
3529 or else NT (N).Nkind = N_Procedure_Specification);
3530 Set_Node1_With_Parent (N, Val);
3531 end Set_Defining_Unit_Name;
3533 procedure Set_Delay_Alternative
3534 (N : Node_Id; Val : Node_Id) is
3536 pragma Assert (False
3537 or else NT (N).Nkind = N_Timed_Entry_Call);
3538 Set_Node4_With_Parent (N, Val);
3539 end Set_Delay_Alternative;
3541 procedure Set_Delay_Statement
3542 (N : Node_Id; Val : Node_Id) is
3544 pragma Assert (False
3545 or else NT (N).Nkind = N_Delay_Alternative);
3546 Set_Node2_With_Parent (N, Val);
3547 end Set_Delay_Statement;
3549 procedure Set_Delta_Expression
3550 (N : Node_Id; Val : Node_Id) is
3552 pragma Assert (False
3553 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3554 or else NT (N).Nkind = N_Delta_Constraint
3555 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3556 Set_Node3_With_Parent (N, Val);
3557 end Set_Delta_Expression;
3559 procedure Set_Digits_Expression
3560 (N : Node_Id; Val : Node_Id) is
3562 pragma Assert (False
3563 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3564 or else NT (N).Nkind = N_Digits_Constraint
3565 or else NT (N).Nkind = N_Floating_Point_Definition);
3566 Set_Node2_With_Parent (N, Val);
3567 end Set_Digits_Expression;
3569 procedure Set_Discr_Check_Funcs_Built
3570 (N : Node_Id; Val : Boolean := True) is
3572 pragma Assert (False
3573 or else NT (N).Nkind = N_Full_Type_Declaration);
3574 Set_Flag11 (N, Val);
3575 end Set_Discr_Check_Funcs_Built;
3577 procedure Set_Discrete_Choices
3578 (N : Node_Id; Val : List_Id) is
3580 pragma Assert (False
3581 or else NT (N).Nkind = N_Case_Statement_Alternative
3582 or else NT (N).Nkind = N_Variant);
3583 Set_List4_With_Parent (N, Val);
3584 end Set_Discrete_Choices;
3586 procedure Set_Discrete_Range
3587 (N : Node_Id; Val : Node_Id) is
3589 pragma Assert (False
3590 or else NT (N).Nkind = N_Slice);
3591 Set_Node4_With_Parent (N, Val);
3592 end Set_Discrete_Range;
3594 procedure Set_Discrete_Subtype_Definition
3595 (N : Node_Id; Val : Node_Id) is
3597 pragma Assert (False
3598 or else NT (N).Nkind = N_Entry_Declaration
3599 or else NT (N).Nkind = N_Entry_Index_Specification
3600 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3601 Set_Node4_With_Parent (N, Val);
3602 end Set_Discrete_Subtype_Definition;
3604 procedure Set_Discrete_Subtype_Definitions
3605 (N : Node_Id; Val : List_Id) is
3607 pragma Assert (False
3608 or else NT (N).Nkind = N_Constrained_Array_Definition);
3609 Set_List2_With_Parent (N, Val);
3610 end Set_Discrete_Subtype_Definitions;
3612 procedure Set_Discriminant_Specifications
3613 (N : Node_Id; Val : List_Id) is
3615 pragma Assert (False
3616 or else NT (N).Nkind = N_Formal_Type_Declaration
3617 or else NT (N).Nkind = N_Full_Type_Declaration
3618 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3619 or else NT (N).Nkind = N_Private_Extension_Declaration
3620 or else NT (N).Nkind = N_Private_Type_Declaration
3621 or else NT (N).Nkind = N_Protected_Type_Declaration
3622 or else NT (N).Nkind = N_Task_Type_Declaration);
3623 Set_List4_With_Parent (N, Val);
3624 end Set_Discriminant_Specifications;
3626 procedure Set_Discriminant_Type
3627 (N : Node_Id; Val : Node_Id) is
3629 pragma Assert (False
3630 or else NT (N).Nkind = N_Discriminant_Specification);
3631 Set_Node5_With_Parent (N, Val);
3632 end Set_Discriminant_Type;
3634 procedure Set_Do_Accessibility_Check
3635 (N : Node_Id; Val : Boolean := True) is
3637 pragma Assert (False
3638 or else NT (N).Nkind = N_Parameter_Specification);
3639 Set_Flag13 (N, Val);
3640 end Set_Do_Accessibility_Check;
3642 procedure Set_Do_Discriminant_Check
3643 (N : Node_Id; Val : Boolean := True) is
3645 pragma Assert (False
3646 or else NT (N).Nkind = N_Selected_Component);
3647 Set_Flag13 (N, Val);
3648 end Set_Do_Discriminant_Check;
3650 procedure Set_Do_Division_Check
3651 (N : Node_Id; Val : Boolean := True) is
3653 pragma Assert (False
3654 or else NT (N).Nkind = N_Op_Divide
3655 or else NT (N).Nkind = N_Op_Mod
3656 or else NT (N).Nkind = N_Op_Rem);
3657 Set_Flag13 (N, Val);
3658 end Set_Do_Division_Check;
3660 procedure Set_Do_Length_Check
3661 (N : Node_Id; Val : Boolean := True) is
3663 pragma Assert (False
3664 or else NT (N).Nkind = N_Assignment_Statement
3665 or else NT (N).Nkind = N_Op_And
3666 or else NT (N).Nkind = N_Op_Or
3667 or else NT (N).Nkind = N_Op_Xor
3668 or else NT (N).Nkind = N_Type_Conversion);
3670 end Set_Do_Length_Check;
3672 procedure Set_Do_Overflow_Check
3673 (N : Node_Id; Val : Boolean := True) is
3675 pragma Assert (False
3676 or else NT (N).Nkind in N_Op
3677 or else NT (N).Nkind = N_Attribute_Reference
3678 or else NT (N).Nkind = N_Type_Conversion);
3679 Set_Flag17 (N, Val);
3680 end Set_Do_Overflow_Check;
3682 procedure Set_Do_Range_Check
3683 (N : Node_Id; Val : Boolean := True) is
3685 pragma Assert (False
3686 or else NT (N).Nkind in N_Subexpr);
3688 end Set_Do_Range_Check;
3690 procedure Set_Do_Storage_Check
3691 (N : Node_Id; Val : Boolean := True) is
3693 pragma Assert (False
3694 or else NT (N).Nkind = N_Allocator
3695 or else NT (N).Nkind = N_Subprogram_Body);
3696 Set_Flag17 (N, Val);
3697 end Set_Do_Storage_Check;
3699 procedure Set_Do_Tag_Check
3700 (N : Node_Id; Val : Boolean := True) is
3702 pragma Assert (False
3703 or else NT (N).Nkind = N_Assignment_Statement
3704 or else NT (N).Nkind = N_Extended_Return_Statement
3705 or else NT (N).Nkind = N_Function_Call
3706 or else NT (N).Nkind = N_Procedure_Call_Statement
3707 or else NT (N).Nkind = N_Return_Statement
3708 or else NT (N).Nkind = N_Type_Conversion);
3709 Set_Flag13 (N, Val);
3710 end Set_Do_Tag_Check;
3712 procedure Set_Elaborate_All_Desirable
3713 (N : Node_Id; Val : Boolean := True) is
3715 pragma Assert (False
3716 or else NT (N).Nkind = N_With_Clause);
3718 end Set_Elaborate_All_Desirable;
3720 procedure Set_Elaborate_All_Present
3721 (N : Node_Id; Val : Boolean := True) is
3723 pragma Assert (False
3724 or else NT (N).Nkind = N_With_Clause);
3725 Set_Flag14 (N, Val);
3726 end Set_Elaborate_All_Present;
3728 procedure Set_Elaborate_Desirable
3729 (N : Node_Id; Val : Boolean := True) is
3731 pragma Assert (False
3732 or else NT (N).Nkind = N_With_Clause);
3733 Set_Flag11 (N, Val);
3734 end Set_Elaborate_Desirable;
3736 procedure Set_Elaborate_Present
3737 (N : Node_Id; Val : Boolean := True) is
3739 pragma Assert (False
3740 or else NT (N).Nkind = N_With_Clause);
3742 end Set_Elaborate_Present;
3744 procedure Set_Elaboration_Boolean
3745 (N : Node_Id; Val : Node_Id) is
3747 pragma Assert (False
3748 or else NT (N).Nkind = N_Function_Specification
3749 or else NT (N).Nkind = N_Procedure_Specification);
3751 end Set_Elaboration_Boolean;
3753 procedure Set_Else_Actions
3754 (N : Node_Id; Val : List_Id) is
3756 pragma Assert (False
3757 or else NT (N).Nkind = N_Conditional_Expression);
3758 Set_List3 (N, Val); -- semantic field, no parent set
3759 end Set_Else_Actions;
3761 procedure Set_Else_Statements
3762 (N : Node_Id; Val : List_Id) is
3764 pragma Assert (False
3765 or else NT (N).Nkind = N_Conditional_Entry_Call
3766 or else NT (N).Nkind = N_If_Statement
3767 or else NT (N).Nkind = N_Selective_Accept);
3768 Set_List4_With_Parent (N, Val);
3769 end Set_Else_Statements;
3771 procedure Set_Elsif_Parts
3772 (N : Node_Id; Val : List_Id) is
3774 pragma Assert (False
3775 or else NT (N).Nkind = N_If_Statement);
3776 Set_List3_With_Parent (N, Val);
3777 end Set_Elsif_Parts;
3779 procedure Set_Enclosing_Variant
3780 (N : Node_Id; Val : Node_Id) is
3782 pragma Assert (False
3783 or else NT (N).Nkind = N_Variant);
3784 Set_Node2 (N, Val); -- semantic field, no parent set
3785 end Set_Enclosing_Variant;
3787 procedure Set_End_Label
3788 (N : Node_Id; Val : Node_Id) is
3790 pragma Assert (False
3791 or else NT (N).Nkind = N_Enumeration_Type_Definition
3792 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3793 or else NT (N).Nkind = N_Loop_Statement
3794 or else NT (N).Nkind = N_Package_Specification
3795 or else NT (N).Nkind = N_Protected_Body
3796 or else NT (N).Nkind = N_Protected_Definition
3797 or else NT (N).Nkind = N_Record_Definition
3798 or else NT (N).Nkind = N_Task_Definition);
3799 Set_Node4_With_Parent (N, Val);
3802 procedure Set_End_Span
3803 (N : Node_Id; Val : Uint) is
3805 pragma Assert (False
3806 or else NT (N).Nkind = N_Case_Statement
3807 or else NT (N).Nkind = N_If_Statement);
3811 procedure Set_Entity
3812 (N : Node_Id; Val : Node_Id) is
3814 pragma Assert (False
3815 or else NT (N).Nkind in N_Has_Entity
3816 or else NT (N).Nkind = N_Freeze_Entity
3817 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3818 Set_Node4 (N, Val); -- semantic field, no parent set
3821 procedure Set_Entry_Body_Formal_Part
3822 (N : Node_Id; Val : Node_Id) is
3824 pragma Assert (False
3825 or else NT (N).Nkind = N_Entry_Body);
3826 Set_Node5_With_Parent (N, Val);
3827 end Set_Entry_Body_Formal_Part;
3829 procedure Set_Entry_Call_Alternative
3830 (N : Node_Id; Val : Node_Id) is
3832 pragma Assert (False
3833 or else NT (N).Nkind = N_Conditional_Entry_Call
3834 or else NT (N).Nkind = N_Timed_Entry_Call);
3835 Set_Node1_With_Parent (N, Val);
3836 end Set_Entry_Call_Alternative;
3838 procedure Set_Entry_Call_Statement
3839 (N : Node_Id; Val : Node_Id) is
3841 pragma Assert (False
3842 or else NT (N).Nkind = N_Entry_Call_Alternative);
3843 Set_Node1_With_Parent (N, Val);
3844 end Set_Entry_Call_Statement;
3846 procedure Set_Entry_Direct_Name
3847 (N : Node_Id; Val : Node_Id) is
3849 pragma Assert (False
3850 or else NT (N).Nkind = N_Accept_Statement);
3851 Set_Node1_With_Parent (N, Val);
3852 end Set_Entry_Direct_Name;
3854 procedure Set_Entry_Index
3855 (N : Node_Id; Val : Node_Id) is
3857 pragma Assert (False
3858 or else NT (N).Nkind = N_Accept_Statement);
3859 Set_Node5_With_Parent (N, Val);
3860 end Set_Entry_Index;
3862 procedure Set_Entry_Index_Specification
3863 (N : Node_Id; Val : Node_Id) is
3865 pragma Assert (False
3866 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3867 Set_Node4_With_Parent (N, Val);
3868 end Set_Entry_Index_Specification;
3871 (N : Node_Id; Val : Node_Id) is
3873 pragma Assert (False
3874 or else NT (N).Nkind in N_Has_Etype);
3875 Set_Node5 (N, Val); -- semantic field, no parent set
3878 procedure Set_Exception_Choices
3879 (N : Node_Id; Val : List_Id) is
3881 pragma Assert (False
3882 or else NT (N).Nkind = N_Exception_Handler);
3883 Set_List4_With_Parent (N, Val);
3884 end Set_Exception_Choices;
3886 procedure Set_Exception_Handlers
3887 (N : Node_Id; Val : List_Id) is
3889 pragma Assert (False
3890 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3891 Set_List5_With_Parent (N, Val);
3892 end Set_Exception_Handlers;
3894 procedure Set_Exception_Junk
3895 (N : Node_Id; Val : Boolean := True) is
3897 pragma Assert (False
3898 or else NT (N).Nkind = N_Block_Statement
3899 or else NT (N).Nkind = N_Goto_Statement
3900 or else NT (N).Nkind = N_Label
3901 or else NT (N).Nkind = N_Object_Declaration
3902 or else NT (N).Nkind = N_Subtype_Declaration);
3904 end Set_Exception_Junk;
3906 procedure Set_Exception_Label
3907 (N : Node_Id; Val : Node_Id) is
3909 pragma Assert (False
3910 or else NT (N).Nkind = N_Exception_Handler
3911 or else NT (N).Nkind = N_Push_Constraint_Error_Label
3912 or else NT (N).Nkind = N_Push_Program_Error_Label
3913 or else NT (N).Nkind = N_Push_Storage_Error_Label);
3914 Set_Node5 (N, Val); -- semantic field, no parent set
3915 end Set_Exception_Label;
3917 procedure Set_Expansion_Delayed
3918 (N : Node_Id; Val : Boolean := True) is
3920 pragma Assert (False
3921 or else NT (N).Nkind = N_Aggregate
3922 or else NT (N).Nkind = N_Extension_Aggregate);
3923 Set_Flag11 (N, Val);
3924 end Set_Expansion_Delayed;
3926 procedure Set_Explicit_Actual_Parameter
3927 (N : Node_Id; Val : Node_Id) is
3929 pragma Assert (False
3930 or else NT (N).Nkind = N_Parameter_Association);
3931 Set_Node3_With_Parent (N, Val);
3932 end Set_Explicit_Actual_Parameter;
3934 procedure Set_Explicit_Generic_Actual_Parameter
3935 (N : Node_Id; Val : Node_Id) is
3937 pragma Assert (False
3938 or else NT (N).Nkind = N_Generic_Association);
3939 Set_Node1_With_Parent (N, Val);
3940 end Set_Explicit_Generic_Actual_Parameter;
3942 procedure Set_Expression
3943 (N : Node_Id; Val : Node_Id) is
3945 pragma Assert (False
3946 or else NT (N).Nkind = N_Allocator
3947 or else NT (N).Nkind = N_Assignment_Statement
3948 or else NT (N).Nkind = N_At_Clause
3949 or else NT (N).Nkind = N_Attribute_Definition_Clause
3950 or else NT (N).Nkind = N_Case_Statement
3951 or else NT (N).Nkind = N_Code_Statement
3952 or else NT (N).Nkind = N_Component_Association
3953 or else NT (N).Nkind = N_Component_Declaration
3954 or else NT (N).Nkind = N_Delay_Relative_Statement
3955 or else NT (N).Nkind = N_Delay_Until_Statement
3956 or else NT (N).Nkind = N_Discriminant_Association
3957 or else NT (N).Nkind = N_Discriminant_Specification
3958 or else NT (N).Nkind = N_Exception_Declaration
3959 or else NT (N).Nkind = N_Free_Statement
3960 or else NT (N).Nkind = N_Mod_Clause
3961 or else NT (N).Nkind = N_Modular_Type_Definition
3962 or else NT (N).Nkind = N_Number_Declaration
3963 or else NT (N).Nkind = N_Object_Declaration
3964 or else NT (N).Nkind = N_Parameter_Specification
3965 or else NT (N).Nkind = N_Pragma_Argument_Association
3966 or else NT (N).Nkind = N_Qualified_Expression
3967 or else NT (N).Nkind = N_Raise_Statement
3968 or else NT (N).Nkind = N_Return_Statement
3969 or else NT (N).Nkind = N_Type_Conversion
3970 or else NT (N).Nkind = N_Unchecked_Expression
3971 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3972 Set_Node3_With_Parent (N, Val);
3975 procedure Set_Expressions
3976 (N : Node_Id; Val : List_Id) is
3978 pragma Assert (False
3979 or else NT (N).Nkind = N_Aggregate
3980 or else NT (N).Nkind = N_Attribute_Reference
3981 or else NT (N).Nkind = N_Conditional_Expression
3982 or else NT (N).Nkind = N_Extension_Aggregate
3983 or else NT (N).Nkind = N_Indexed_Component);
3984 Set_List1_With_Parent (N, Val);
3985 end Set_Expressions;
3987 procedure Set_First_Bit
3988 (N : Node_Id; Val : Node_Id) is
3990 pragma Assert (False
3991 or else NT (N).Nkind = N_Component_Clause);
3992 Set_Node3_With_Parent (N, Val);
3995 procedure Set_First_Inlined_Subprogram
3996 (N : Node_Id; Val : Entity_Id) is
3998 pragma Assert (False
3999 or else NT (N).Nkind = N_Compilation_Unit);
4000 Set_Node3 (N, Val); -- semantic field, no parent set
4001 end Set_First_Inlined_Subprogram;
4003 procedure Set_First_Name
4004 (N : Node_Id; Val : Boolean := True) is
4006 pragma Assert (False
4007 or else NT (N).Nkind = N_With_Clause);
4011 procedure Set_First_Named_Actual
4012 (N : Node_Id; Val : Node_Id) is
4014 pragma Assert (False
4015 or else NT (N).Nkind = N_Entry_Call_Statement
4016 or else NT (N).Nkind = N_Function_Call
4017 or else NT (N).Nkind = N_Procedure_Call_Statement);
4018 Set_Node4 (N, Val); -- semantic field, no parent set
4019 end Set_First_Named_Actual;
4021 procedure Set_First_Real_Statement
4022 (N : Node_Id; Val : Node_Id) is
4024 pragma Assert (False
4025 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4026 Set_Node2 (N, Val); -- semantic field, no parent set
4027 end Set_First_Real_Statement;
4029 procedure Set_First_Subtype_Link
4030 (N : Node_Id; Val : Entity_Id) is
4032 pragma Assert (False
4033 or else NT (N).Nkind = N_Freeze_Entity);
4034 Set_Node5 (N, Val); -- semantic field, no parent set
4035 end Set_First_Subtype_Link;
4037 procedure Set_Float_Truncate
4038 (N : Node_Id; Val : Boolean := True) is
4040 pragma Assert (False
4041 or else NT (N).Nkind = N_Type_Conversion);
4042 Set_Flag11 (N, Val);
4043 end Set_Float_Truncate;
4045 procedure Set_Formal_Type_Definition
4046 (N : Node_Id; Val : Node_Id) is
4048 pragma Assert (False
4049 or else NT (N).Nkind = N_Formal_Type_Declaration);
4050 Set_Node3_With_Parent (N, Val);
4051 end Set_Formal_Type_Definition;
4053 procedure Set_Forwards_OK
4054 (N : Node_Id; Val : Boolean := True) is
4056 pragma Assert (False
4057 or else NT (N).Nkind = N_Assignment_Statement);
4059 end Set_Forwards_OK;
4061 procedure Set_From_At_End
4062 (N : Node_Id; Val : Boolean := True) is
4064 pragma Assert (False
4065 or else NT (N).Nkind = N_Raise_Statement);
4067 end Set_From_At_End;
4069 procedure Set_From_At_Mod
4070 (N : Node_Id; Val : Boolean := True) is
4072 pragma Assert (False
4073 or else NT (N).Nkind = N_Attribute_Definition_Clause);
4075 end Set_From_At_Mod;
4077 procedure Set_From_Default
4078 (N : Node_Id; Val : Boolean := True) is
4080 pragma Assert (False
4081 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4083 end Set_From_Default;
4085 procedure Set_Generic_Associations
4086 (N : Node_Id; Val : List_Id) is
4088 pragma Assert (False
4089 or else NT (N).Nkind = N_Formal_Package_Declaration
4090 or else NT (N).Nkind = N_Function_Instantiation
4091 or else NT (N).Nkind = N_Package_Instantiation
4092 or else NT (N).Nkind = N_Procedure_Instantiation);
4093 Set_List3_With_Parent (N, Val);
4094 end Set_Generic_Associations;
4096 procedure Set_Generic_Formal_Declarations
4097 (N : Node_Id; Val : List_Id) is
4099 pragma Assert (False
4100 or else NT (N).Nkind = N_Generic_Package_Declaration
4101 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
4102 Set_List2_With_Parent (N, Val);
4103 end Set_Generic_Formal_Declarations;
4105 procedure Set_Generic_Parent
4106 (N : Node_Id; Val : Node_Id) is
4108 pragma Assert (False
4109 or else NT (N).Nkind = N_Function_Specification
4110 or else NT (N).Nkind = N_Package_Specification
4111 or else NT (N).Nkind = N_Procedure_Specification);
4113 end Set_Generic_Parent;
4115 procedure Set_Generic_Parent_Type
4116 (N : Node_Id; Val : Node_Id) is
4118 pragma Assert (False
4119 or else NT (N).Nkind = N_Subtype_Declaration);
4121 end Set_Generic_Parent_Type;
4123 procedure Set_Handled_Statement_Sequence
4124 (N : Node_Id; Val : Node_Id) is
4126 pragma Assert (False
4127 or else NT (N).Nkind = N_Accept_Statement
4128 or else NT (N).Nkind = N_Block_Statement
4129 or else NT (N).Nkind = N_Entry_Body
4130 or else NT (N).Nkind = N_Extended_Return_Statement
4131 or else NT (N).Nkind = N_Package_Body
4132 or else NT (N).Nkind = N_Subprogram_Body
4133 or else NT (N).Nkind = N_Task_Body);
4134 Set_Node4_With_Parent (N, Val);
4135 end Set_Handled_Statement_Sequence;
4137 procedure Set_Handler_List_Entry
4138 (N : Node_Id; Val : Node_Id) is
4140 pragma Assert (False
4141 or else NT (N).Nkind = N_Object_Declaration);
4143 end Set_Handler_List_Entry;
4145 procedure Set_Has_Created_Identifier
4146 (N : Node_Id; Val : Boolean := True) is
4148 pragma Assert (False
4149 or else NT (N).Nkind = N_Block_Statement
4150 or else NT (N).Nkind = N_Loop_Statement);
4151 Set_Flag15 (N, Val);
4152 end Set_Has_Created_Identifier;
4154 procedure Set_Has_Dynamic_Length_Check
4155 (N : Node_Id; Val : Boolean := True) is
4157 Set_Flag10 (N, Val);
4158 end Set_Has_Dynamic_Length_Check;
4160 procedure Set_Has_Dynamic_Range_Check
4161 (N : Node_Id; Val : Boolean := True) is
4163 Set_Flag12 (N, Val);
4164 end Set_Has_Dynamic_Range_Check;
4166 procedure Set_Has_Init_Expression
4167 (N : Node_Id; Val : Boolean := True) is
4169 pragma Assert (False
4170 or else NT (N).Nkind = N_Object_Declaration);
4171 Set_Flag14 (N, Val);
4172 end Set_Has_Init_Expression;
4174 procedure Set_Has_Local_Raise
4175 (N : Node_Id; Val : Boolean := True) is
4177 pragma Assert (False
4178 or else NT (N).Nkind = N_Exception_Handler);
4180 end Set_Has_Local_Raise;
4182 procedure Set_Has_No_Elaboration_Code
4183 (N : Node_Id; Val : Boolean := True) is
4185 pragma Assert (False
4186 or else NT (N).Nkind = N_Compilation_Unit);
4187 Set_Flag17 (N, Val);
4188 end Set_Has_No_Elaboration_Code;
4190 procedure Set_Has_Priority_Pragma
4191 (N : Node_Id; Val : Boolean := True) is
4193 pragma Assert (False
4194 or else NT (N).Nkind = N_Protected_Definition
4195 or else NT (N).Nkind = N_Subprogram_Body
4196 or else NT (N).Nkind = N_Task_Definition);
4198 end Set_Has_Priority_Pragma;
4200 procedure Set_Has_Private_View
4201 (N : Node_Id; Val : Boolean := True) is
4203 pragma Assert (False
4204 or else NT (N).Nkind in N_Op
4205 or else NT (N).Nkind = N_Character_Literal
4206 or else NT (N).Nkind = N_Expanded_Name
4207 or else NT (N).Nkind = N_Identifier
4208 or else NT (N).Nkind = N_Operator_Symbol);
4209 Set_Flag11 (N, Val);
4210 end Set_Has_Private_View;
4212 procedure Set_Has_Relative_Deadline_Pragma
4213 (N : Node_Id; Val : Boolean := True) is
4215 pragma Assert (False
4216 or else NT (N).Nkind = N_Subprogram_Body
4217 or else NT (N).Nkind = N_Task_Definition);
4219 end Set_Has_Relative_Deadline_Pragma;
4221 procedure Set_Has_Self_Reference
4222 (N : Node_Id; Val : Boolean := True) is
4224 pragma Assert (False
4225 or else NT (N).Nkind = N_Aggregate
4226 or else NT (N).Nkind = N_Extension_Aggregate);
4227 Set_Flag13 (N, Val);
4228 end Set_Has_Self_Reference;
4230 procedure Set_Has_Storage_Size_Pragma
4231 (N : Node_Id; Val : Boolean := True) is
4233 pragma Assert (False
4234 or else NT (N).Nkind = N_Task_Definition);
4236 end Set_Has_Storage_Size_Pragma;
4238 procedure Set_Has_Task_Info_Pragma
4239 (N : Node_Id; Val : Boolean := True) is
4241 pragma Assert (False
4242 or else NT (N).Nkind = N_Task_Definition);
4244 end Set_Has_Task_Info_Pragma;
4246 procedure Set_Has_Task_Name_Pragma
4247 (N : Node_Id; Val : Boolean := True) is
4249 pragma Assert (False
4250 or else NT (N).Nkind = N_Task_Definition);
4252 end Set_Has_Task_Name_Pragma;
4254 procedure Set_Has_Wide_Character
4255 (N : Node_Id; Val : Boolean := True) is
4257 pragma Assert (False
4258 or else NT (N).Nkind = N_String_Literal);
4259 Set_Flag11 (N, Val);
4260 end Set_Has_Wide_Character;
4262 procedure Set_Hidden_By_Use_Clause
4263 (N : Node_Id; Val : Elist_Id) is
4265 pragma Assert (False
4266 or else NT (N).Nkind = N_Use_Package_Clause
4267 or else NT (N).Nkind = N_Use_Type_Clause);
4268 Set_Elist4 (N, Val);
4269 end Set_Hidden_By_Use_Clause;
4271 procedure Set_High_Bound
4272 (N : Node_Id; Val : Node_Id) is
4274 pragma Assert (False
4275 or else NT (N).Nkind = N_Range
4276 or else NT (N).Nkind = N_Real_Range_Specification
4277 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4278 Set_Node2_With_Parent (N, Val);
4281 procedure Set_Identifier
4282 (N : Node_Id; Val : Node_Id) is
4284 pragma Assert (False
4285 or else NT (N).Nkind = N_At_Clause
4286 or else NT (N).Nkind = N_Block_Statement
4287 or else NT (N).Nkind = N_Designator
4288 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4289 or else NT (N).Nkind = N_Label
4290 or else NT (N).Nkind = N_Loop_Statement
4291 or else NT (N).Nkind = N_Record_Representation_Clause
4292 or else NT (N).Nkind = N_Subprogram_Info);
4293 Set_Node1_With_Parent (N, Val);
4296 procedure Set_Implicit_With
4297 (N : Node_Id; Val : Boolean := True) is
4299 pragma Assert (False
4300 or else NT (N).Nkind = N_With_Clause);
4301 Set_Flag16 (N, Val);
4302 end Set_Implicit_With;
4304 procedure Set_Interface_List
4305 (N : Node_Id; Val : List_Id) is
4307 pragma Assert (False
4308 or else NT (N).Nkind = N_Derived_Type_Definition
4309 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4310 or else NT (N).Nkind = N_Private_Extension_Declaration
4311 or else NT (N).Nkind = N_Protected_Type_Declaration
4312 or else NT (N).Nkind = N_Record_Definition
4313 or else NT (N).Nkind = N_Single_Protected_Declaration
4314 or else NT (N).Nkind = N_Single_Task_Declaration
4315 or else NT (N).Nkind = N_Task_Type_Declaration);
4316 Set_List2_With_Parent (N, Val);
4317 end Set_Interface_List;
4319 procedure Set_Interface_Present
4320 (N : Node_Id; Val : Boolean := True) is
4322 pragma Assert (False
4323 or else NT (N).Nkind = N_Derived_Type_Definition
4324 or else NT (N).Nkind = N_Record_Definition);
4325 Set_Flag16 (N, Val);
4326 end Set_Interface_Present;
4328 procedure Set_In_Present
4329 (N : Node_Id; Val : Boolean := True) is
4331 pragma Assert (False
4332 or else NT (N).Nkind = N_Formal_Object_Declaration
4333 or else NT (N).Nkind = N_Parameter_Specification);
4334 Set_Flag15 (N, Val);
4337 procedure Set_Includes_Infinities
4338 (N : Node_Id; Val : Boolean := True) is
4340 pragma Assert (False
4341 or else NT (N).Nkind = N_Range);
4342 Set_Flag11 (N, Val);
4343 end Set_Includes_Infinities;
4345 procedure Set_Instance_Spec
4346 (N : Node_Id; Val : Node_Id) is
4348 pragma Assert (False
4349 or else NT (N).Nkind = N_Formal_Package_Declaration
4350 or else NT (N).Nkind = N_Function_Instantiation
4351 or else NT (N).Nkind = N_Package_Instantiation
4352 or else NT (N).Nkind = N_Procedure_Instantiation);
4353 Set_Node5 (N, Val); -- semantic field, no Parent set
4354 end Set_Instance_Spec;
4356 procedure Set_Intval
4357 (N : Node_Id; Val : Uint) is
4359 pragma Assert (False
4360 or else NT (N).Nkind = N_Integer_Literal);
4364 procedure Set_Is_Asynchronous_Call_Block
4365 (N : Node_Id; Val : Boolean := True) is
4367 pragma Assert (False
4368 or else NT (N).Nkind = N_Block_Statement);
4370 end Set_Is_Asynchronous_Call_Block;
4372 procedure Set_Is_Component_Left_Opnd
4373 (N : Node_Id; Val : Boolean := True) is
4375 pragma Assert (False
4376 or else NT (N).Nkind = N_Op_Concat);
4377 Set_Flag13 (N, Val);
4378 end Set_Is_Component_Left_Opnd;
4380 procedure Set_Is_Component_Right_Opnd
4381 (N : Node_Id; Val : Boolean := True) is
4383 pragma Assert (False
4384 or else NT (N).Nkind = N_Op_Concat);
4385 Set_Flag14 (N, Val);
4386 end Set_Is_Component_Right_Opnd;
4388 procedure Set_Is_Controlling_Actual
4389 (N : Node_Id; Val : Boolean := True) is
4391 pragma Assert (False
4392 or else NT (N).Nkind in N_Subexpr);
4393 Set_Flag16 (N, Val);
4394 end Set_Is_Controlling_Actual;
4396 procedure Set_Is_Dynamic_Coextension
4397 (N : Node_Id; Val : Boolean := True) is
4399 pragma Assert (False
4400 or else NT (N).Nkind = N_Allocator);
4401 Set_Flag18 (N, Val);
4402 end Set_Is_Dynamic_Coextension;
4404 procedure Set_Is_Elsif
4405 (N : Node_Id; Val : Boolean := True) is
4407 pragma Assert (False
4408 or else NT (N).Nkind = N_Conditional_Expression);
4409 Set_Flag13 (N, Val);
4412 procedure Set_Is_Entry_Barrier_Function
4413 (N : Node_Id; Val : Boolean := True) is
4415 pragma Assert (False
4416 or else NT (N).Nkind = N_Subprogram_Body);
4418 end Set_Is_Entry_Barrier_Function;
4420 procedure Set_Is_Expanded_Build_In_Place_Call
4421 (N : Node_Id; Val : Boolean := True) is
4423 pragma Assert (False
4424 or else NT (N).Nkind = N_Function_Call);
4425 Set_Flag11 (N, Val);
4426 end Set_Is_Expanded_Build_In_Place_Call;
4428 procedure Set_Is_Folded_In_Parser
4429 (N : Node_Id; Val : Boolean := True) is
4431 pragma Assert (False
4432 or else NT (N).Nkind = N_String_Literal);
4434 end Set_Is_Folded_In_Parser;
4436 procedure Set_Is_In_Discriminant_Check
4437 (N : Node_Id; Val : Boolean := True) is
4439 pragma Assert (False
4440 or else NT (N).Nkind = N_Selected_Component);
4441 Set_Flag11 (N, Val);
4442 end Set_Is_In_Discriminant_Check;
4444 procedure Set_Is_Machine_Number
4445 (N : Node_Id; Val : Boolean := True) is
4447 pragma Assert (False
4448 or else NT (N).Nkind = N_Real_Literal);
4449 Set_Flag11 (N, Val);
4450 end Set_Is_Machine_Number;
4452 procedure Set_Is_Null_Loop
4453 (N : Node_Id; Val : Boolean := True) is
4455 pragma Assert (False
4456 or else NT (N).Nkind = N_Loop_Statement);
4457 Set_Flag16 (N, Val);
4458 end Set_Is_Null_Loop;
4460 procedure Set_Is_Overloaded
4461 (N : Node_Id; Val : Boolean := True) is
4463 pragma Assert (False
4464 or else NT (N).Nkind in N_Subexpr);
4466 end Set_Is_Overloaded;
4468 procedure Set_Is_Power_Of_2_For_Shift
4469 (N : Node_Id; Val : Boolean := True) is
4471 pragma Assert (False
4472 or else NT (N).Nkind = N_Op_Expon);
4473 Set_Flag13 (N, Val);
4474 end Set_Is_Power_Of_2_For_Shift;
4476 procedure Set_Is_Protected_Subprogram_Body
4477 (N : Node_Id; Val : Boolean := True) is
4479 pragma Assert (False
4480 or else NT (N).Nkind = N_Subprogram_Body);
4482 end Set_Is_Protected_Subprogram_Body;
4484 procedure Set_Is_Static_Coextension
4485 (N : Node_Id; Val : Boolean := True) is
4487 pragma Assert (False
4488 or else NT (N).Nkind = N_Allocator);
4489 Set_Flag14 (N, Val);
4490 end Set_Is_Static_Coextension;
4492 procedure Set_Is_Static_Expression
4493 (N : Node_Id; Val : Boolean := True) is
4495 pragma Assert (False
4496 or else NT (N).Nkind in N_Subexpr);
4498 end Set_Is_Static_Expression;
4500 procedure Set_Is_Subprogram_Descriptor
4501 (N : Node_Id; Val : Boolean := True) is
4503 pragma Assert (False
4504 or else NT (N).Nkind = N_Object_Declaration);
4505 Set_Flag16 (N, Val);
4506 end Set_Is_Subprogram_Descriptor;
4508 procedure Set_Is_Task_Allocation_Block
4509 (N : Node_Id; Val : Boolean := True) is
4511 pragma Assert (False
4512 or else NT (N).Nkind = N_Block_Statement);
4514 end Set_Is_Task_Allocation_Block;
4516 procedure Set_Is_Task_Master
4517 (N : Node_Id; Val : Boolean := True) is
4519 pragma Assert (False
4520 or else NT (N).Nkind = N_Block_Statement
4521 or else NT (N).Nkind = N_Subprogram_Body
4522 or else NT (N).Nkind = N_Task_Body);
4524 end Set_Is_Task_Master;
4526 procedure Set_Iteration_Scheme
4527 (N : Node_Id; Val : Node_Id) is
4529 pragma Assert (False
4530 or else NT (N).Nkind = N_Loop_Statement);
4531 Set_Node2_With_Parent (N, Val);
4532 end Set_Iteration_Scheme;
4535 (N : Node_Id; Val : Entity_Id) is
4537 pragma Assert (False
4538 or else NT (N).Nkind = N_Itype_Reference);
4539 Set_Node1 (N, Val); -- no parent, semantic field
4542 procedure Set_Kill_Range_Check
4543 (N : Node_Id; Val : Boolean := True) is
4545 pragma Assert (False
4546 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4547 Set_Flag11 (N, Val);
4548 end Set_Kill_Range_Check;
4550 procedure Set_Label_Construct
4551 (N : Node_Id; Val : Node_Id) is
4553 pragma Assert (False
4554 or else NT (N).Nkind = N_Implicit_Label_Declaration);
4555 Set_Node2 (N, Val); -- semantic field, no parent set
4556 end Set_Label_Construct;
4558 procedure Set_Last_Bit
4559 (N : Node_Id; Val : Node_Id) is
4561 pragma Assert (False
4562 or else NT (N).Nkind = N_Component_Clause);
4563 Set_Node4_With_Parent (N, Val);
4566 procedure Set_Last_Name
4567 (N : Node_Id; Val : Boolean := True) is
4569 pragma Assert (False
4570 or else NT (N).Nkind = N_With_Clause);
4574 procedure Set_Left_Opnd
4575 (N : Node_Id; Val : Node_Id) is
4577 pragma Assert (False
4578 or else NT (N).Nkind = N_And_Then
4579 or else NT (N).Nkind = N_In
4580 or else NT (N).Nkind = N_Not_In
4581 or else NT (N).Nkind = N_Or_Else
4582 or else NT (N).Nkind in N_Binary_Op);
4583 Set_Node2_With_Parent (N, Val);
4586 procedure Set_Library_Unit
4587 (N : Node_Id; Val : Node_Id) is
4589 pragma Assert (False
4590 or else NT (N).Nkind = N_Compilation_Unit
4591 or else NT (N).Nkind = N_Package_Body_Stub
4592 or else NT (N).Nkind = N_Protected_Body_Stub
4593 or else NT (N).Nkind = N_Subprogram_Body_Stub
4594 or else NT (N).Nkind = N_Task_Body_Stub
4595 or else NT (N).Nkind = N_With_Clause);
4596 Set_Node4 (N, Val); -- semantic field, no parent set
4597 end Set_Library_Unit;
4599 procedure Set_Limited_View_Installed
4600 (N : Node_Id; Val : Boolean := True) is
4602 pragma Assert (False
4603 or else NT (N).Nkind = N_Package_Specification
4604 or else NT (N).Nkind = N_With_Clause);
4605 Set_Flag18 (N, Val);
4606 end Set_Limited_View_Installed;
4608 procedure Set_Limited_Present
4609 (N : Node_Id; Val : Boolean := True) is
4611 pragma Assert (False
4612 or else NT (N).Nkind = N_Derived_Type_Definition
4613 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4614 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4615 or else NT (N).Nkind = N_Private_Extension_Declaration
4616 or else NT (N).Nkind = N_Private_Type_Declaration
4617 or else NT (N).Nkind = N_Record_Definition
4618 or else NT (N).Nkind = N_With_Clause);
4619 Set_Flag17 (N, Val);
4620 end Set_Limited_Present;
4622 procedure Set_Literals
4623 (N : Node_Id; Val : List_Id) is
4625 pragma Assert (False
4626 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4627 Set_List1_With_Parent (N, Val);
4630 procedure Set_Local_Raise_Not_OK
4631 (N : Node_Id; Val : Boolean := True) is
4633 pragma Assert (False
4634 or else NT (N).Nkind = N_Exception_Handler);
4636 end Set_Local_Raise_Not_OK;
4638 procedure Set_Local_Raise_Statements
4639 (N : Node_Id; Val : Elist_Id) is
4641 pragma Assert (False
4642 or else NT (N).Nkind = N_Exception_Handler);
4643 Set_Elist1 (N, Val);
4644 end Set_Local_Raise_Statements;
4646 procedure Set_Loop_Actions
4647 (N : Node_Id; Val : List_Id) is
4649 pragma Assert (False
4650 or else NT (N).Nkind = N_Component_Association);
4651 Set_List2 (N, Val); -- semantic field, no parent set
4652 end Set_Loop_Actions;
4654 procedure Set_Loop_Parameter_Specification
4655 (N : Node_Id; Val : Node_Id) is
4657 pragma Assert (False
4658 or else NT (N).Nkind = N_Iteration_Scheme);
4659 Set_Node4_With_Parent (N, Val);
4660 end Set_Loop_Parameter_Specification;
4662 procedure Set_Low_Bound
4663 (N : Node_Id; Val : Node_Id) is
4665 pragma Assert (False
4666 or else NT (N).Nkind = N_Range
4667 or else NT (N).Nkind = N_Real_Range_Specification
4668 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4669 Set_Node1_With_Parent (N, Val);
4672 procedure Set_Mod_Clause
4673 (N : Node_Id; Val : Node_Id) is
4675 pragma Assert (False
4676 or else NT (N).Nkind = N_Record_Representation_Clause);
4677 Set_Node2_With_Parent (N, Val);
4680 procedure Set_More_Ids
4681 (N : Node_Id; Val : Boolean := True) is
4683 pragma Assert (False
4684 or else NT (N).Nkind = N_Component_Declaration
4685 or else NT (N).Nkind = N_Discriminant_Specification
4686 or else NT (N).Nkind = N_Exception_Declaration
4687 or else NT (N).Nkind = N_Formal_Object_Declaration
4688 or else NT (N).Nkind = N_Number_Declaration
4689 or else NT (N).Nkind = N_Object_Declaration
4690 or else NT (N).Nkind = N_Parameter_Specification);
4694 procedure Set_Must_Be_Byte_Aligned
4695 (N : Node_Id; Val : Boolean := True) is
4697 pragma Assert (False
4698 or else NT (N).Nkind = N_Attribute_Reference);
4699 Set_Flag14 (N, Val);
4700 end Set_Must_Be_Byte_Aligned;
4702 procedure Set_Must_Not_Freeze
4703 (N : Node_Id; Val : Boolean := True) is
4705 pragma Assert (False
4706 or else NT (N).Nkind = N_Subtype_Indication
4707 or else NT (N).Nkind in N_Subexpr);
4709 end Set_Must_Not_Freeze;
4711 procedure Set_Must_Not_Override
4712 (N : Node_Id; Val : Boolean := True) is
4714 pragma Assert (False
4715 or else NT (N).Nkind = N_Entry_Declaration
4716 or else NT (N).Nkind = N_Function_Instantiation
4717 or else NT (N).Nkind = N_Function_Specification
4718 or else NT (N).Nkind = N_Procedure_Instantiation
4719 or else NT (N).Nkind = N_Procedure_Specification);
4720 Set_Flag15 (N, Val);
4721 end Set_Must_Not_Override;
4723 procedure Set_Must_Override
4724 (N : Node_Id; Val : Boolean := True) is
4726 pragma Assert (False
4727 or else NT (N).Nkind = N_Entry_Declaration
4728 or else NT (N).Nkind = N_Function_Instantiation
4729 or else NT (N).Nkind = N_Function_Specification
4730 or else NT (N).Nkind = N_Procedure_Instantiation
4731 or else NT (N).Nkind = N_Procedure_Specification);
4732 Set_Flag14 (N, Val);
4733 end Set_Must_Override;
4736 (N : Node_Id; Val : Node_Id) is
4738 pragma Assert (False
4739 or else NT (N).Nkind = N_Assignment_Statement
4740 or else NT (N).Nkind = N_Attribute_Definition_Clause
4741 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4742 or else NT (N).Nkind = N_Designator
4743 or else NT (N).Nkind = N_Entry_Call_Statement
4744 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4745 or else NT (N).Nkind = N_Exit_Statement
4746 or else NT (N).Nkind = N_Formal_Package_Declaration
4747 or else NT (N).Nkind = N_Function_Call
4748 or else NT (N).Nkind = N_Function_Instantiation
4749 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4750 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4751 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4752 or else NT (N).Nkind = N_Goto_Statement
4753 or else NT (N).Nkind = N_Object_Renaming_Declaration
4754 or else NT (N).Nkind = N_Package_Instantiation
4755 or else NT (N).Nkind = N_Package_Renaming_Declaration
4756 or else NT (N).Nkind = N_Procedure_Call_Statement
4757 or else NT (N).Nkind = N_Procedure_Instantiation
4758 or else NT (N).Nkind = N_Raise_Statement
4759 or else NT (N).Nkind = N_Requeue_Statement
4760 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4761 or else NT (N).Nkind = N_Subunit
4762 or else NT (N).Nkind = N_Variant_Part
4763 or else NT (N).Nkind = N_With_Clause);
4764 Set_Node2_With_Parent (N, Val);
4768 (N : Node_Id; Val : List_Id) is
4770 pragma Assert (False
4771 or else NT (N).Nkind = N_Abort_Statement
4772 or else NT (N).Nkind = N_Use_Package_Clause);
4773 Set_List2_With_Parent (N, Val);
4776 procedure Set_Next_Entity
4777 (N : Node_Id; Val : Node_Id) is
4779 pragma Assert (False
4780 or else NT (N).Nkind = N_Defining_Character_Literal
4781 or else NT (N).Nkind = N_Defining_Identifier
4782 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4783 Set_Node2 (N, Val); -- semantic field, no parent set
4784 end Set_Next_Entity;
4786 procedure Set_Next_Implicit_With
4787 (N : Node_Id; Val : Node_Id) is
4789 pragma Assert (False
4790 or else NT (N).Nkind = N_With_Clause);
4791 Set_Node3 (N, Val); -- semantic field, no parent set
4792 end Set_Next_Implicit_With;
4794 procedure Set_Next_Named_Actual
4795 (N : Node_Id; Val : Node_Id) is
4797 pragma Assert (False
4798 or else NT (N).Nkind = N_Parameter_Association);
4799 Set_Node4 (N, Val); -- semantic field, no parent set
4800 end Set_Next_Named_Actual;
4802 procedure Set_Next_Pragma
4803 (N : Node_Id; Val : Node_Id) is
4805 pragma Assert (False
4806 or else NT (N).Nkind = N_Pragma);
4807 Set_Node1 (N, Val); -- semantic field, no parent set
4808 end Set_Next_Pragma;
4810 procedure Set_Next_Rep_Item
4811 (N : Node_Id; Val : Node_Id) is
4813 pragma Assert (False
4814 or else NT (N).Nkind = N_Attribute_Definition_Clause
4815 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4816 or else NT (N).Nkind = N_Pragma
4817 or else NT (N).Nkind = N_Record_Representation_Clause);
4818 Set_Node5 (N, Val); -- semantic field, no parent set
4819 end Set_Next_Rep_Item;
4821 procedure Set_Next_Use_Clause
4822 (N : Node_Id; Val : Node_Id) is
4824 pragma Assert (False
4825 or else NT (N).Nkind = N_Use_Package_Clause
4826 or else NT (N).Nkind = N_Use_Type_Clause);
4827 Set_Node3 (N, Val); -- semantic field, no parent set
4828 end Set_Next_Use_Clause;
4830 procedure Set_No_Ctrl_Actions
4831 (N : Node_Id; Val : Boolean := True) is
4833 pragma Assert (False
4834 or else NT (N).Nkind = N_Assignment_Statement);
4836 end Set_No_Ctrl_Actions;
4838 procedure Set_No_Elaboration_Check
4839 (N : Node_Id; Val : Boolean := True) is
4841 pragma Assert (False
4842 or else NT (N).Nkind = N_Function_Call
4843 or else NT (N).Nkind = N_Procedure_Call_Statement);
4844 Set_Flag14 (N, Val);
4845 end Set_No_Elaboration_Check;
4847 procedure Set_No_Entities_Ref_In_Spec
4848 (N : Node_Id; Val : Boolean := True) is
4850 pragma Assert (False
4851 or else NT (N).Nkind = N_With_Clause);
4853 end Set_No_Entities_Ref_In_Spec;
4855 procedure Set_No_Initialization
4856 (N : Node_Id; Val : Boolean := True) is
4858 pragma Assert (False
4859 or else NT (N).Nkind = N_Allocator
4860 or else NT (N).Nkind = N_Object_Declaration);
4861 Set_Flag13 (N, Val);
4862 end Set_No_Initialization;
4864 procedure Set_No_Truncation
4865 (N : Node_Id; Val : Boolean := True) is
4867 pragma Assert (False
4868 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4869 Set_Flag17 (N, Val);
4870 end Set_No_Truncation;
4872 procedure Set_Null_Present
4873 (N : Node_Id; Val : Boolean := True) is
4875 pragma Assert (False
4876 or else NT (N).Nkind = N_Component_List
4877 or else NT (N).Nkind = N_Procedure_Specification
4878 or else NT (N).Nkind = N_Record_Definition);
4879 Set_Flag13 (N, Val);
4880 end Set_Null_Present;
4882 procedure Set_Null_Exclusion_Present
4883 (N : Node_Id; Val : Boolean := True) is
4885 pragma Assert (False
4886 or else NT (N).Nkind = N_Access_Definition
4887 or else NT (N).Nkind = N_Access_Function_Definition
4888 or else NT (N).Nkind = N_Access_Procedure_Definition
4889 or else NT (N).Nkind = N_Access_To_Object_Definition
4890 or else NT (N).Nkind = N_Allocator
4891 or else NT (N).Nkind = N_Component_Definition
4892 or else NT (N).Nkind = N_Derived_Type_Definition
4893 or else NT (N).Nkind = N_Discriminant_Specification
4894 or else NT (N).Nkind = N_Formal_Object_Declaration
4895 or else NT (N).Nkind = N_Function_Specification
4896 or else NT (N).Nkind = N_Object_Declaration
4897 or else NT (N).Nkind = N_Object_Renaming_Declaration
4898 or else NT (N).Nkind = N_Parameter_Specification
4899 or else NT (N).Nkind = N_Subtype_Declaration);
4900 Set_Flag11 (N, Val);
4901 end Set_Null_Exclusion_Present;
4903 procedure Set_Null_Exclusion_In_Return_Present
4904 (N : Node_Id; Val : Boolean := True) is
4906 pragma Assert (False
4907 or else NT (N).Nkind = N_Access_Function_Definition);
4908 Set_Flag14 (N, Val);
4909 end Set_Null_Exclusion_In_Return_Present;
4911 procedure Set_Null_Record_Present
4912 (N : Node_Id; Val : Boolean := True) is
4914 pragma Assert (False
4915 or else NT (N).Nkind = N_Aggregate
4916 or else NT (N).Nkind = N_Extension_Aggregate);
4917 Set_Flag17 (N, Val);
4918 end Set_Null_Record_Present;
4920 procedure Set_Object_Definition
4921 (N : Node_Id; Val : Node_Id) is
4923 pragma Assert (False
4924 or else NT (N).Nkind = N_Object_Declaration);
4925 Set_Node4_With_Parent (N, Val);
4926 end Set_Object_Definition;
4928 procedure Set_Original_Discriminant
4929 (N : Node_Id; Val : Node_Id) is
4931 pragma Assert (False
4932 or else NT (N).Nkind = N_Identifier);
4933 Set_Node2 (N, Val); -- semantic field, no parent set
4934 end Set_Original_Discriminant;
4936 procedure Set_Original_Entity
4937 (N : Node_Id; Val : Entity_Id) is
4939 pragma Assert (False
4940 or else NT (N).Nkind = N_Integer_Literal
4941 or else NT (N).Nkind = N_Real_Literal);
4942 Set_Node2 (N, Val); -- semantic field, no parent set
4943 end Set_Original_Entity;
4945 procedure Set_Others_Discrete_Choices
4946 (N : Node_Id; Val : List_Id) is
4948 pragma Assert (False
4949 or else NT (N).Nkind = N_Others_Choice);
4950 Set_List1_With_Parent (N, Val);
4951 end Set_Others_Discrete_Choices;
4953 procedure Set_Out_Present
4954 (N : Node_Id; Val : Boolean := True) is
4956 pragma Assert (False
4957 or else NT (N).Nkind = N_Formal_Object_Declaration
4958 or else NT (N).Nkind = N_Parameter_Specification);
4959 Set_Flag17 (N, Val);
4960 end Set_Out_Present;
4962 procedure Set_Parameter_Associations
4963 (N : Node_Id; Val : List_Id) is
4965 pragma Assert (False
4966 or else NT (N).Nkind = N_Entry_Call_Statement
4967 or else NT (N).Nkind = N_Function_Call
4968 or else NT (N).Nkind = N_Procedure_Call_Statement);
4969 Set_List3_With_Parent (N, Val);
4970 end Set_Parameter_Associations;
4972 procedure Set_Parameter_List_Truncated
4973 (N : Node_Id; Val : Boolean := True) is
4975 pragma Assert (False
4976 or else NT (N).Nkind = N_Function_Call
4977 or else NT (N).Nkind = N_Procedure_Call_Statement);
4978 Set_Flag17 (N, Val);
4979 end Set_Parameter_List_Truncated;
4981 procedure Set_Parameter_Specifications
4982 (N : Node_Id; Val : List_Id) is
4984 pragma Assert (False
4985 or else NT (N).Nkind = N_Accept_Statement
4986 or else NT (N).Nkind = N_Access_Function_Definition
4987 or else NT (N).Nkind = N_Access_Procedure_Definition
4988 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4989 or else NT (N).Nkind = N_Entry_Declaration
4990 or else NT (N).Nkind = N_Function_Specification
4991 or else NT (N).Nkind = N_Procedure_Specification);
4992 Set_List3_With_Parent (N, Val);
4993 end Set_Parameter_Specifications;
4995 procedure Set_Parameter_Type
4996 (N : Node_Id; Val : Node_Id) is
4998 pragma Assert (False
4999 or else NT (N).Nkind = N_Parameter_Specification);
5000 Set_Node2_With_Parent (N, Val);
5001 end Set_Parameter_Type;
5003 procedure Set_Parent_Spec
5004 (N : Node_Id; Val : Node_Id) is
5006 pragma Assert (False
5007 or else NT (N).Nkind = N_Function_Instantiation
5008 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
5009 or else NT (N).Nkind = N_Generic_Package_Declaration
5010 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
5011 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
5012 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
5013 or else NT (N).Nkind = N_Package_Declaration
5014 or else NT (N).Nkind = N_Package_Instantiation
5015 or else NT (N).Nkind = N_Package_Renaming_Declaration
5016 or else NT (N).Nkind = N_Procedure_Instantiation
5017 or else NT (N).Nkind = N_Subprogram_Declaration
5018 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
5019 Set_Node4 (N, Val); -- semantic field, no parent set
5020 end Set_Parent_Spec;
5022 procedure Set_PPC_Enabled
5023 (N : Node_Id; Val : Boolean := True) is
5025 pragma Assert (False
5026 or else NT (N).Nkind = N_Pragma);
5028 end Set_PPC_Enabled;
5030 procedure Set_Position
5031 (N : Node_Id; Val : Node_Id) is
5033 pragma Assert (False
5034 or else NT (N).Nkind = N_Component_Clause);
5035 Set_Node2_With_Parent (N, Val);
5038 procedure Set_Pragma_Argument_Associations
5039 (N : Node_Id; Val : List_Id) is
5041 pragma Assert (False
5042 or else NT (N).Nkind = N_Pragma);
5043 Set_List2_With_Parent (N, Val);
5044 end Set_Pragma_Argument_Associations;
5046 procedure Set_Pragma_Identifier
5047 (N : Node_Id; Val : Node_Id) is
5049 pragma Assert (False
5050 or else NT (N).Nkind = N_Pragma);
5051 Set_Node4_With_Parent (N, Val);
5052 end Set_Pragma_Identifier;
5054 procedure Set_Pragmas_After
5055 (N : Node_Id; Val : List_Id) is
5057 pragma Assert (False
5058 or else NT (N).Nkind = N_Compilation_Unit_Aux
5059 or else NT (N).Nkind = N_Terminate_Alternative);
5060 Set_List5_With_Parent (N, Val);
5061 end Set_Pragmas_After;
5063 procedure Set_Pragmas_Before
5064 (N : Node_Id; Val : List_Id) is
5066 pragma Assert (False
5067 or else NT (N).Nkind = N_Accept_Alternative
5068 or else NT (N).Nkind = N_Delay_Alternative
5069 or else NT (N).Nkind = N_Entry_Call_Alternative
5070 or else NT (N).Nkind = N_Mod_Clause
5071 or else NT (N).Nkind = N_Terminate_Alternative
5072 or else NT (N).Nkind = N_Triggering_Alternative);
5073 Set_List4_With_Parent (N, Val);
5074 end Set_Pragmas_Before;
5076 procedure Set_Prefix
5077 (N : Node_Id; Val : Node_Id) is
5079 pragma Assert (False
5080 or else NT (N).Nkind = N_Attribute_Reference
5081 or else NT (N).Nkind = N_Expanded_Name
5082 or else NT (N).Nkind = N_Explicit_Dereference
5083 or else NT (N).Nkind = N_Indexed_Component
5084 or else NT (N).Nkind = N_Reference
5085 or else NT (N).Nkind = N_Selected_Component
5086 or else NT (N).Nkind = N_Slice);
5087 Set_Node3_With_Parent (N, Val);
5090 procedure Set_Present_Expr
5091 (N : Node_Id; Val : Uint) is
5093 pragma Assert (False
5094 or else NT (N).Nkind = N_Variant);
5096 end Set_Present_Expr;
5098 procedure Set_Prev_Ids
5099 (N : Node_Id; Val : Boolean := True) is
5101 pragma Assert (False
5102 or else NT (N).Nkind = N_Component_Declaration
5103 or else NT (N).Nkind = N_Discriminant_Specification
5104 or else NT (N).Nkind = N_Exception_Declaration
5105 or else NT (N).Nkind = N_Formal_Object_Declaration
5106 or else NT (N).Nkind = N_Number_Declaration
5107 or else NT (N).Nkind = N_Object_Declaration
5108 or else NT (N).Nkind = N_Parameter_Specification);
5112 procedure Set_Print_In_Hex
5113 (N : Node_Id; Val : Boolean := True) is
5115 pragma Assert (False
5116 or else NT (N).Nkind = N_Integer_Literal);
5117 Set_Flag13 (N, Val);
5118 end Set_Print_In_Hex;
5120 procedure Set_Private_Declarations
5121 (N : Node_Id; Val : List_Id) is
5123 pragma Assert (False
5124 or else NT (N).Nkind = N_Package_Specification
5125 or else NT (N).Nkind = N_Protected_Definition
5126 or else NT (N).Nkind = N_Task_Definition);
5127 Set_List3_With_Parent (N, Val);
5128 end Set_Private_Declarations;
5130 procedure Set_Private_Present
5131 (N : Node_Id; Val : Boolean := True) is
5133 pragma Assert (False
5134 or else NT (N).Nkind = N_Compilation_Unit
5135 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5136 or else NT (N).Nkind = N_With_Clause);
5137 Set_Flag15 (N, Val);
5138 end Set_Private_Present;
5140 procedure Set_Procedure_To_Call
5141 (N : Node_Id; Val : Node_Id) is
5143 pragma Assert (False
5144 or else NT (N).Nkind = N_Allocator
5145 or else NT (N).Nkind = N_Extended_Return_Statement
5146 or else NT (N).Nkind = N_Free_Statement
5147 or else NT (N).Nkind = N_Return_Statement);
5148 Set_Node2 (N, Val); -- semantic field, no parent set
5149 end Set_Procedure_To_Call;
5151 procedure Set_Proper_Body
5152 (N : Node_Id; Val : Node_Id) is
5154 pragma Assert (False
5155 or else NT (N).Nkind = N_Subunit);
5156 Set_Node1_With_Parent (N, Val);
5157 end Set_Proper_Body;
5159 procedure Set_Protected_Definition
5160 (N : Node_Id; Val : Node_Id) is
5162 pragma Assert (False
5163 or else NT (N).Nkind = N_Protected_Type_Declaration
5164 or else NT (N).Nkind = N_Single_Protected_Declaration);
5165 Set_Node3_With_Parent (N, Val);
5166 end Set_Protected_Definition;
5168 procedure Set_Protected_Present
5169 (N : Node_Id; Val : Boolean := True) is
5171 pragma Assert (False
5172 or else NT (N).Nkind = N_Access_Function_Definition
5173 or else NT (N).Nkind = N_Access_Procedure_Definition
5174 or else NT (N).Nkind = N_Derived_Type_Definition
5175 or else NT (N).Nkind = N_Record_Definition);
5177 end Set_Protected_Present;
5179 procedure Set_Raises_Constraint_Error
5180 (N : Node_Id; Val : Boolean := True) is
5182 pragma Assert (False
5183 or else NT (N).Nkind in N_Subexpr);
5185 end Set_Raises_Constraint_Error;
5187 procedure Set_Range_Constraint
5188 (N : Node_Id; Val : Node_Id) is
5190 pragma Assert (False
5191 or else NT (N).Nkind = N_Delta_Constraint
5192 or else NT (N).Nkind = N_Digits_Constraint);
5193 Set_Node4_With_Parent (N, Val);
5194 end Set_Range_Constraint;
5196 procedure Set_Range_Expression
5197 (N : Node_Id; Val : Node_Id) is
5199 pragma Assert (False
5200 or else NT (N).Nkind = N_Range_Constraint);
5201 Set_Node4_With_Parent (N, Val);
5202 end Set_Range_Expression;
5204 procedure Set_Real_Range_Specification
5205 (N : Node_Id; Val : Node_Id) is
5207 pragma Assert (False
5208 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
5209 or else NT (N).Nkind = N_Floating_Point_Definition
5210 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
5211 Set_Node4_With_Parent (N, Val);
5212 end Set_Real_Range_Specification;
5214 procedure Set_Realval
5215 (N : Node_Id; Val : Ureal) is
5217 pragma Assert (False
5218 or else NT (N).Nkind = N_Real_Literal);
5219 Set_Ureal3 (N, Val);
5222 procedure Set_Reason
5223 (N : Node_Id; Val : Uint) is
5225 pragma Assert (False
5226 or else NT (N).Nkind = N_Raise_Constraint_Error
5227 or else NT (N).Nkind = N_Raise_Program_Error
5228 or else NT (N).Nkind = N_Raise_Storage_Error);
5232 procedure Set_Record_Extension_Part
5233 (N : Node_Id; Val : Node_Id) is
5235 pragma Assert (False
5236 or else NT (N).Nkind = N_Derived_Type_Definition);
5237 Set_Node3_With_Parent (N, Val);
5238 end Set_Record_Extension_Part;
5240 procedure Set_Redundant_Use
5241 (N : Node_Id; Val : Boolean := True) is
5243 pragma Assert (False
5244 or else NT (N).Nkind = N_Attribute_Reference
5245 or else NT (N).Nkind = N_Expanded_Name
5246 or else NT (N).Nkind = N_Identifier);
5247 Set_Flag13 (N, Val);
5248 end Set_Redundant_Use;
5250 procedure Set_Renaming_Exception
5251 (N : Node_Id; Val : Node_Id) is
5253 pragma Assert (False
5254 or else NT (N).Nkind = N_Exception_Declaration);
5256 end Set_Renaming_Exception;
5258 procedure Set_Result_Definition
5259 (N : Node_Id; Val : Node_Id) is
5261 pragma Assert (False
5262 or else NT (N).Nkind = N_Access_Function_Definition
5263 or else NT (N).Nkind = N_Function_Specification);
5264 Set_Node4_With_Parent (N, Val);
5265 end Set_Result_Definition;
5267 procedure Set_Return_Object_Declarations
5268 (N : Node_Id; Val : List_Id) is
5270 pragma Assert (False
5271 or else NT (N).Nkind = N_Extended_Return_Statement);
5272 Set_List3_With_Parent (N, Val);
5273 end Set_Return_Object_Declarations;
5275 procedure Set_Return_Statement_Entity
5276 (N : Node_Id; Val : Node_Id) is
5278 pragma Assert (False
5279 or else NT (N).Nkind = N_Extended_Return_Statement
5280 or else NT (N).Nkind = N_Return_Statement);
5281 Set_Node5 (N, Val); -- semantic field, no parent set
5282 end Set_Return_Statement_Entity;
5284 procedure Set_Reverse_Present
5285 (N : Node_Id; Val : Boolean := True) is
5287 pragma Assert (False
5288 or else NT (N).Nkind = N_Loop_Parameter_Specification);
5289 Set_Flag15 (N, Val);
5290 end Set_Reverse_Present;
5292 procedure Set_Right_Opnd
5293 (N : Node_Id; Val : Node_Id) is
5295 pragma Assert (False
5296 or else NT (N).Nkind in N_Op
5297 or else NT (N).Nkind = N_And_Then
5298 or else NT (N).Nkind = N_In
5299 or else NT (N).Nkind = N_Not_In
5300 or else NT (N).Nkind = N_Or_Else);
5301 Set_Node3_With_Parent (N, Val);
5304 procedure Set_Rounded_Result
5305 (N : Node_Id; Val : Boolean := True) is
5307 pragma Assert (False
5308 or else NT (N).Nkind = N_Op_Divide
5309 or else NT (N).Nkind = N_Op_Multiply
5310 or else NT (N).Nkind = N_Type_Conversion);
5311 Set_Flag18 (N, Val);
5312 end Set_Rounded_Result;
5315 (N : Node_Id; Val : Node_Id) is
5317 pragma Assert (False
5318 or else NT (N).Nkind = N_Defining_Character_Literal
5319 or else NT (N).Nkind = N_Defining_Identifier
5320 or else NT (N).Nkind = N_Defining_Operator_Symbol);
5321 Set_Node3 (N, Val); -- semantic field, no parent set
5324 procedure Set_Select_Alternatives
5325 (N : Node_Id; Val : List_Id) is
5327 pragma Assert (False
5328 or else NT (N).Nkind = N_Selective_Accept);
5329 Set_List1_With_Parent (N, Val);
5330 end Set_Select_Alternatives;
5332 procedure Set_Selector_Name
5333 (N : Node_Id; Val : Node_Id) is
5335 pragma Assert (False
5336 or else NT (N).Nkind = N_Expanded_Name
5337 or else NT (N).Nkind = N_Generic_Association
5338 or else NT (N).Nkind = N_Parameter_Association
5339 or else NT (N).Nkind = N_Selected_Component);
5340 Set_Node2_With_Parent (N, Val);
5341 end Set_Selector_Name;
5343 procedure Set_Selector_Names
5344 (N : Node_Id; Val : List_Id) is
5346 pragma Assert (False
5347 or else NT (N).Nkind = N_Discriminant_Association);
5348 Set_List1_With_Parent (N, Val);
5349 end Set_Selector_Names;
5351 procedure Set_Shift_Count_OK
5352 (N : Node_Id; Val : Boolean := True) is
5354 pragma Assert (False
5355 or else NT (N).Nkind = N_Op_Rotate_Left
5356 or else NT (N).Nkind = N_Op_Rotate_Right
5357 or else NT (N).Nkind = N_Op_Shift_Left
5358 or else NT (N).Nkind = N_Op_Shift_Right
5359 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
5361 end Set_Shift_Count_OK;
5363 procedure Set_Source_Type
5364 (N : Node_Id; Val : Entity_Id) is
5366 pragma Assert (False
5367 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
5368 Set_Node1 (N, Val); -- semantic field, no parent set
5369 end Set_Source_Type;
5371 procedure Set_Specification
5372 (N : Node_Id; Val : Node_Id) is
5374 pragma Assert (False
5375 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
5376 or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
5377 or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
5378 or else NT (N).Nkind = N_Generic_Package_Declaration
5379 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
5380 or else NT (N).Nkind = N_Package_Declaration
5381 or else NT (N).Nkind = N_Subprogram_Body
5382 or else NT (N).Nkind = N_Subprogram_Body_Stub
5383 or else NT (N).Nkind = N_Subprogram_Declaration
5384 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
5385 Set_Node1_With_Parent (N, Val);
5386 end Set_Specification;
5388 procedure Set_Statements
5389 (N : Node_Id; Val : List_Id) is
5391 pragma Assert (False
5392 or else NT (N).Nkind = N_Abortable_Part
5393 or else NT (N).Nkind = N_Accept_Alternative
5394 or else NT (N).Nkind = N_Case_Statement_Alternative
5395 or else NT (N).Nkind = N_Delay_Alternative
5396 or else NT (N).Nkind = N_Entry_Call_Alternative
5397 or else NT (N).Nkind = N_Exception_Handler
5398 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
5399 or else NT (N).Nkind = N_Loop_Statement
5400 or else NT (N).Nkind = N_Triggering_Alternative);
5401 Set_List3_With_Parent (N, Val);
5404 procedure Set_Static_Processing_OK
5405 (N : Node_Id; Val : Boolean) is
5407 pragma Assert (False
5408 or else NT (N).Nkind = N_Aggregate);
5410 end Set_Static_Processing_OK;
5412 procedure Set_Storage_Pool
5413 (N : Node_Id; Val : Node_Id) is
5415 pragma Assert (False
5416 or else NT (N).Nkind = N_Allocator
5417 or else NT (N).Nkind = N_Extended_Return_Statement
5418 or else NT (N).Nkind = N_Free_Statement
5419 or else NT (N).Nkind = N_Return_Statement);
5420 Set_Node1 (N, Val); -- semantic field, no parent set
5421 end Set_Storage_Pool;
5423 procedure Set_Strval
5424 (N : Node_Id; Val : String_Id) is
5426 pragma Assert (False
5427 or else NT (N).Nkind = N_Operator_Symbol
5428 or else NT (N).Nkind = N_String_Literal);
5432 procedure Set_Subtype_Indication
5433 (N : Node_Id; Val : Node_Id) is
5435 pragma Assert (False
5436 or else NT (N).Nkind = N_Access_To_Object_Definition
5437 or else NT (N).Nkind = N_Component_Definition
5438 or else NT (N).Nkind = N_Derived_Type_Definition
5439 or else NT (N).Nkind = N_Private_Extension_Declaration
5440 or else NT (N).Nkind = N_Subtype_Declaration);
5441 Set_Node5_With_Parent (N, Val);
5442 end Set_Subtype_Indication;
5444 procedure Set_Subtype_Mark
5445 (N : Node_Id; Val : Node_Id) is
5447 pragma Assert (False
5448 or else NT (N).Nkind = N_Access_Definition
5449 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5450 or else NT (N).Nkind = N_Formal_Object_Declaration
5451 or else NT (N).Nkind = N_Object_Renaming_Declaration
5452 or else NT (N).Nkind = N_Qualified_Expression
5453 or else NT (N).Nkind = N_Subtype_Indication
5454 or else NT (N).Nkind = N_Type_Conversion
5455 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
5456 Set_Node4_With_Parent (N, Val);
5457 end Set_Subtype_Mark;
5459 procedure Set_Subtype_Marks
5460 (N : Node_Id; Val : List_Id) is
5462 pragma Assert (False
5463 or else NT (N).Nkind = N_Unconstrained_Array_Definition
5464 or else NT (N).Nkind = N_Use_Type_Clause);
5465 Set_List2_With_Parent (N, Val);
5466 end Set_Subtype_Marks;
5468 procedure Set_Suppress_Loop_Warnings
5469 (N : Node_Id; Val : Boolean := True) is
5471 pragma Assert (False
5472 or else NT (N).Nkind = N_Loop_Statement);
5473 Set_Flag17 (N, Val);
5474 end Set_Suppress_Loop_Warnings;
5476 procedure Set_Synchronized_Present
5477 (N : Node_Id; Val : Boolean := True) is
5479 pragma Assert (False
5480 or else NT (N).Nkind = N_Derived_Type_Definition
5481 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5482 or else NT (N).Nkind = N_Private_Extension_Declaration
5483 or else NT (N).Nkind = N_Record_Definition);
5485 end Set_Synchronized_Present;
5487 procedure Set_Tagged_Present
5488 (N : Node_Id; Val : Boolean := True) is
5490 pragma Assert (False
5491 or else NT (N).Nkind = N_Formal_Private_Type_Definition
5492 or else NT (N).Nkind = N_Incomplete_Type_Declaration
5493 or else NT (N).Nkind = N_Private_Type_Declaration
5494 or else NT (N).Nkind = N_Record_Definition);
5495 Set_Flag15 (N, Val);
5496 end Set_Tagged_Present;
5498 procedure Set_Target_Type
5499 (N : Node_Id; Val : Entity_Id) is
5501 pragma Assert (False
5502 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
5503 Set_Node2 (N, Val); -- semantic field, no parent set
5504 end Set_Target_Type;
5506 procedure Set_Task_Definition
5507 (N : Node_Id; Val : Node_Id) is
5509 pragma Assert (False
5510 or else NT (N).Nkind = N_Single_Task_Declaration
5511 or else NT (N).Nkind = N_Task_Type_Declaration);
5512 Set_Node3_With_Parent (N, Val);
5513 end Set_Task_Definition;
5515 procedure Set_Task_Present
5516 (N : Node_Id; Val : Boolean := True) is
5518 pragma Assert (False
5519 or else NT (N).Nkind = N_Derived_Type_Definition
5520 or else NT (N).Nkind = N_Record_Definition);
5522 end Set_Task_Present;
5524 procedure Set_Then_Actions
5525 (N : Node_Id; Val : List_Id) is
5527 pragma Assert (False
5528 or else NT (N).Nkind = N_Conditional_Expression);
5529 Set_List2 (N, Val); -- semantic field, no parent set
5530 end Set_Then_Actions;
5532 procedure Set_Then_Statements
5533 (N : Node_Id; Val : List_Id) is
5535 pragma Assert (False
5536 or else NT (N).Nkind = N_Elsif_Part
5537 or else NT (N).Nkind = N_If_Statement);
5538 Set_List2_With_Parent (N, Val);
5539 end Set_Then_Statements;
5541 procedure Set_Treat_Fixed_As_Integer
5542 (N : Node_Id; Val : Boolean := True) is
5544 pragma Assert (False
5545 or else NT (N).Nkind = N_Op_Divide
5546 or else NT (N).Nkind = N_Op_Mod
5547 or else NT (N).Nkind = N_Op_Multiply
5548 or else NT (N).Nkind = N_Op_Rem);
5549 Set_Flag14 (N, Val);
5550 end Set_Treat_Fixed_As_Integer;
5552 procedure Set_Triggering_Alternative
5553 (N : Node_Id; Val : Node_Id) is
5555 pragma Assert (False
5556 or else NT (N).Nkind = N_Asynchronous_Select);
5557 Set_Node1_With_Parent (N, Val);
5558 end Set_Triggering_Alternative;
5560 procedure Set_Triggering_Statement
5561 (N : Node_Id; Val : Node_Id) is
5563 pragma Assert (False
5564 or else NT (N).Nkind = N_Triggering_Alternative);
5565 Set_Node1_With_Parent (N, Val);
5566 end Set_Triggering_Statement;
5568 procedure Set_TSS_Elist
5569 (N : Node_Id; Val : Elist_Id) is
5571 pragma Assert (False
5572 or else NT (N).Nkind = N_Freeze_Entity);
5573 Set_Elist3 (N, Val); -- semantic field, no parent set
5576 procedure Set_Type_Definition
5577 (N : Node_Id; Val : Node_Id) is
5579 pragma Assert (False
5580 or else NT (N).Nkind = N_Full_Type_Declaration);
5581 Set_Node3_With_Parent (N, Val);
5582 end Set_Type_Definition;
5585 (N : Node_Id; Val : Node_Id) is
5587 pragma Assert (False
5588 or else NT (N).Nkind = N_Compilation_Unit);
5589 Set_Node2_With_Parent (N, Val);
5592 procedure Set_Unknown_Discriminants_Present
5593 (N : Node_Id; Val : Boolean := True) is
5595 pragma Assert (False
5596 or else NT (N).Nkind = N_Formal_Type_Declaration
5597 or else NT (N).Nkind = N_Incomplete_Type_Declaration
5598 or else NT (N).Nkind = N_Private_Extension_Declaration
5599 or else NT (N).Nkind = N_Private_Type_Declaration);
5600 Set_Flag13 (N, Val);
5601 end Set_Unknown_Discriminants_Present;
5603 procedure Set_Unreferenced_In_Spec
5604 (N : Node_Id; Val : Boolean := True) is
5606 pragma Assert (False
5607 or else NT (N).Nkind = N_With_Clause);
5609 end Set_Unreferenced_In_Spec;
5611 procedure Set_Variant_Part
5612 (N : Node_Id; Val : Node_Id) is
5614 pragma Assert (False
5615 or else NT (N).Nkind = N_Component_List);
5616 Set_Node4_With_Parent (N, Val);
5617 end Set_Variant_Part;
5619 procedure Set_Variants
5620 (N : Node_Id; Val : List_Id) is
5622 pragma Assert (False
5623 or else NT (N).Nkind = N_Variant_Part);
5624 Set_List1_With_Parent (N, Val);
5627 procedure Set_Visible_Declarations
5628 (N : Node_Id; Val : List_Id) is
5630 pragma Assert (False
5631 or else NT (N).Nkind = N_Package_Specification
5632 or else NT (N).Nkind = N_Protected_Definition
5633 or else NT (N).Nkind = N_Task_Definition);
5634 Set_List2_With_Parent (N, Val);
5635 end Set_Visible_Declarations;
5637 procedure Set_Was_Originally_Stub
5638 (N : Node_Id; Val : Boolean := True) is
5640 pragma Assert (False
5641 or else NT (N).Nkind = N_Package_Body
5642 or else NT (N).Nkind = N_Protected_Body
5643 or else NT (N).Nkind = N_Subprogram_Body
5644 or else NT (N).Nkind = N_Task_Body);
5645 Set_Flag13 (N, Val);
5646 end Set_Was_Originally_Stub;
5648 procedure Set_Zero_Cost_Handling
5649 (N : Node_Id; Val : Boolean := True) is
5651 pragma Assert (False
5652 or else NT (N).Nkind = N_Exception_Handler
5653 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
5655 end Set_Zero_Cost_Handling;
5657 -------------------------
5658 -- Iterator Procedures --
5659 -------------------------
5661 procedure Next_Entity (N : in out Node_Id) is
5663 N := Next_Entity (N);
5666 procedure Next_Named_Actual (N : in out Node_Id) is
5668 N := Next_Named_Actual (N);
5669 end Next_Named_Actual;
5671 procedure Next_Rep_Item (N : in out Node_Id) is
5673 N := Next_Rep_Item (N);
5676 procedure Next_Use_Clause (N : in out Node_Id) is
5678 N := Next_Use_Clause (N);
5679 end Next_Use_Clause;
5685 function End_Location (N : Node_Id) return Source_Ptr is
5686 L : constant Uint := End_Span (N);
5691 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
5695 ----------------------
5696 -- Set_End_Location --
5697 ----------------------
5699 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
5702 UI_From_Int (Int (S) - Int (Sloc (N))));
5703 end Set_End_Location;
5712 V2 : Node_Kind) return Boolean
5715 return T = V1 or else
5723 V3 : Node_Kind) return Boolean
5726 return T = V1 or else
5736 V4 : Node_Kind) return Boolean
5739 return T = V1 or else
5751 V5 : Node_Kind) return Boolean
5754 return T = V1 or else
5768 V6 : Node_Kind) return Boolean
5771 return T = V1 or else
5787 V7 : Node_Kind) return Boolean
5790 return T = V1 or else
5808 V8 : Node_Kind) return Boolean
5811 return T = V1 or else
5825 function Pragma_Name (N : Node_Id) return Name_Id is
5827 return Chars (Pragma_Identifier (N));