1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2003, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 2, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNAT; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
20 -- MA 02111-1307, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNAT was originally developed by the GNAT team at New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc. --
32 ------------------------------------------------------------------------------
34 pragma Style_Checks (All_Checks);
35 -- No subprogram ordering check, due to logical grouping
37 with Atree; use Atree;
41 use Atree.Unchecked_Access;
42 -- This package is one of the few packages which is allowed to make direct
43 -- references to tree nodes (since it is in the business of providing a
44 -- higher level of tree access which other clients are expected to use and
45 -- which implements checks).
47 use Atree_Private_Part;
48 -- The only reason that we ask for direct access to the private part of
49 -- the tree package is so that we can directly reference the Nkind field
50 -- of nodes table entries. We do this since it helps the efficiency of
51 -- the Sinfo debugging checks considerably (note that when we are checking
52 -- Nkind values, we don't need to check for a valid node reference, because
53 -- we will check that anyway when we reference the field).
55 NT : Nodes.Table_Ptr renames Nodes.Table;
56 -- A short hand abbreviation, useful for the debugging checks
58 ----------------------------
59 -- Field Access Functions --
60 ----------------------------
62 function ABE_Is_Certain
63 (N : Node_Id) return Boolean is
66 or else NT (N).Nkind = N_Formal_Package_Declaration
67 or else NT (N).Nkind = N_Function_Call
68 or else NT (N).Nkind = N_Function_Instantiation
69 or else NT (N).Nkind = N_Package_Instantiation
70 or else NT (N).Nkind = N_Procedure_Call_Statement
71 or else NT (N).Nkind = N_Procedure_Instantiation);
75 function Abort_Present
76 (N : Node_Id) return Boolean is
79 or else NT (N).Nkind = N_Requeue_Statement);
83 function Abortable_Part
84 (N : Node_Id) return Node_Id is
87 or else NT (N).Nkind = N_Asynchronous_Select);
91 function Abstract_Present
92 (N : Node_Id) return Boolean is
95 or else NT (N).Nkind = N_Derived_Type_Definition
96 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
97 or else NT (N).Nkind = N_Formal_Private_Type_Definition
98 or else NT (N).Nkind = N_Private_Extension_Declaration
99 or else NT (N).Nkind = N_Private_Type_Declaration
100 or else NT (N).Nkind = N_Record_Definition);
102 end Abstract_Present;
104 function Accept_Handler_Records
105 (N : Node_Id) return List_Id is
108 or else NT (N).Nkind = N_Accept_Alternative);
110 end Accept_Handler_Records;
112 function Accept_Statement
113 (N : Node_Id) return Node_Id is
116 or else NT (N).Nkind = N_Accept_Alternative);
118 end Accept_Statement;
120 function Access_Types_To_Process
121 (N : Node_Id) return Elist_Id is
124 or else NT (N).Nkind = N_Freeze_Entity);
126 end Access_Types_To_Process;
129 (N : Node_Id) return List_Id is
132 or else NT (N).Nkind = N_And_Then
133 or else NT (N).Nkind = N_Compilation_Unit_Aux
134 or else NT (N).Nkind = N_Freeze_Entity
135 or else NT (N).Nkind = N_Or_Else);
139 function Activation_Chain_Entity
140 (N : Node_Id) return Node_Id is
143 or else NT (N).Nkind = N_Block_Statement
144 or else NT (N).Nkind = N_Entry_Body
145 or else NT (N).Nkind = N_Generic_Package_Declaration
146 or else NT (N).Nkind = N_Package_Declaration
147 or else NT (N).Nkind = N_Subprogram_Body
148 or else NT (N).Nkind = N_Task_Body);
150 end Activation_Chain_Entity;
152 function Acts_As_Spec
153 (N : Node_Id) return Boolean is
156 or else NT (N).Nkind = N_Compilation_Unit
157 or else NT (N).Nkind = N_Subprogram_Body);
161 function Aggregate_Bounds
162 (N : Node_Id) return Node_Id is
165 or else NT (N).Nkind = N_Aggregate);
167 end Aggregate_Bounds;
169 function Aliased_Present
170 (N : Node_Id) return Boolean is
173 or else NT (N).Nkind = N_Component_Declaration
174 or else NT (N).Nkind = N_Constrained_Array_Definition
175 or else NT (N).Nkind = N_Object_Declaration
176 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
181 (N : Node_Id) return Boolean is
184 or else NT (N).Nkind = N_Others_Choice);
189 (N : Node_Id) return Boolean is
192 or else NT (N).Nkind = N_Access_To_Object_Definition);
196 function Alternatives
197 (N : Node_Id) return List_Id is
200 or else NT (N).Nkind = N_Case_Statement);
204 function Ancestor_Part
205 (N : Node_Id) return Node_Id is
208 or else NT (N).Nkind = N_Extension_Aggregate);
212 function Array_Aggregate
213 (N : Node_Id) return Node_Id is
216 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
220 function Assignment_OK
221 (N : Node_Id) return Boolean is
224 or else NT (N).Nkind = N_Object_Declaration
225 or else NT (N).Nkind in N_Subexpr);
229 function Associated_Node
230 (N : Node_Id) return Node_Id is
233 or else NT (N).Nkind in N_Has_Entity
234 or else NT (N).Nkind = N_Aggregate
235 or else NT (N).Nkind = N_Extension_Aggregate
236 or else NT (N).Nkind = N_Selected_Component);
241 (N : Node_Id) return Node_Id is
244 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
248 function Attribute_Name
249 (N : Node_Id) return Name_Id is
252 or else NT (N).Nkind = N_Attribute_Reference);
256 function Aux_Decls_Node
257 (N : Node_Id) return Node_Id is
260 or else NT (N).Nkind = N_Compilation_Unit);
264 function Backwards_OK
265 (N : Node_Id) return Boolean is
268 or else NT (N).Nkind = N_Assignment_Statement);
272 function Bad_Is_Detected
273 (N : Node_Id) return Boolean is
276 or else NT (N).Nkind = N_Subprogram_Body);
280 function Body_Required
281 (N : Node_Id) return Boolean is
284 or else NT (N).Nkind = N_Compilation_Unit);
288 function Body_To_Inline
289 (N : Node_Id) return Node_Id is
292 or else NT (N).Nkind = N_Subprogram_Declaration);
297 (N : Node_Id) return Boolean is
300 or else NT (N).Nkind = N_Component_Association
301 or else NT (N).Nkind = N_Formal_Package_Declaration
302 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
307 (N : Node_Id) return Boolean is
310 or else NT (N).Nkind = N_Return_Statement);
314 function Char_Literal_Value
315 (N : Node_Id) return Char_Code is
318 or else NT (N).Nkind = N_Character_Literal);
319 return Char_Code2 (N);
320 end Char_Literal_Value;
323 (N : Node_Id) return Name_Id is
326 or else NT (N).Nkind in N_Has_Chars);
330 function Check_Address_Alignment
331 (N : Node_Id) return Boolean is
334 or else NT (N).Nkind = N_Attribute_Definition_Clause);
336 end Check_Address_Alignment;
338 function Choice_Parameter
339 (N : Node_Id) return Node_Id is
342 or else NT (N).Nkind = N_Exception_Handler);
344 end Choice_Parameter;
347 (N : Node_Id) return List_Id is
350 or else NT (N).Nkind = N_Component_Association);
354 function Compile_Time_Known_Aggregate
355 (N : Node_Id) return Boolean is
358 or else NT (N).Nkind = N_Aggregate);
360 end Compile_Time_Known_Aggregate;
362 function Component_Associations
363 (N : Node_Id) return List_Id is
366 or else NT (N).Nkind = N_Aggregate
367 or else NT (N).Nkind = N_Extension_Aggregate);
369 end Component_Associations;
371 function Component_Clauses
372 (N : Node_Id) return List_Id is
375 or else NT (N).Nkind = N_Record_Representation_Clause);
377 end Component_Clauses;
379 function Component_Items
380 (N : Node_Id) return List_Id is
383 or else NT (N).Nkind = N_Component_List);
387 function Component_List
388 (N : Node_Id) return Node_Id is
391 or else NT (N).Nkind = N_Record_Definition
392 or else NT (N).Nkind = N_Variant);
396 function Component_Name
397 (N : Node_Id) return Node_Id is
400 or else NT (N).Nkind = N_Component_Clause);
405 (N : Node_Id) return Node_Id is
408 or else NT (N).Nkind = N_Accept_Alternative
409 or else NT (N).Nkind = N_Delay_Alternative
410 or else NT (N).Nkind = N_Elsif_Part
411 or else NT (N).Nkind = N_Entry_Body_Formal_Part
412 or else NT (N).Nkind = N_Exit_Statement
413 or else NT (N).Nkind = N_If_Statement
414 or else NT (N).Nkind = N_Iteration_Scheme
415 or else NT (N).Nkind = N_Raise_Constraint_Error
416 or else NT (N).Nkind = N_Raise_Program_Error
417 or else NT (N).Nkind = N_Raise_Storage_Error
418 or else NT (N).Nkind = N_Terminate_Alternative);
422 function Condition_Actions
423 (N : Node_Id) return List_Id is
426 or else NT (N).Nkind = N_Elsif_Part
427 or else NT (N).Nkind = N_Iteration_Scheme);
429 end Condition_Actions;
431 function Config_Pragmas
432 (N : Node_Id) return List_Id is
435 or else NT (N).Nkind = N_Compilation_Unit_Aux);
439 function Constant_Present
440 (N : Node_Id) return Boolean is
443 or else NT (N).Nkind = N_Access_To_Object_Definition
444 or else NT (N).Nkind = N_Object_Declaration);
446 end Constant_Present;
449 (N : Node_Id) return Node_Id is
452 or else NT (N).Nkind = N_Subtype_Indication);
457 (N : Node_Id) return List_Id is
460 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
464 function Context_Installed
465 (N : Node_Id) return Boolean is
468 or else NT (N).Nkind = N_With_Clause);
470 end Context_Installed;
472 function Context_Items
473 (N : Node_Id) return List_Id is
476 or else NT (N).Nkind = N_Compilation_Unit);
480 function Controlling_Argument
481 (N : Node_Id) return Node_Id is
484 or else NT (N).Nkind = N_Function_Call
485 or else NT (N).Nkind = N_Procedure_Call_Statement);
487 end Controlling_Argument;
489 function Conversion_OK
490 (N : Node_Id) return Boolean is
493 or else NT (N).Nkind = N_Type_Conversion);
497 function Corresponding_Body
498 (N : Node_Id) return Node_Id is
501 or else NT (N).Nkind = N_Entry_Declaration
502 or else NT (N).Nkind = N_Generic_Package_Declaration
503 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
504 or else NT (N).Nkind = N_Package_Body_Stub
505 or else NT (N).Nkind = N_Package_Declaration
506 or else NT (N).Nkind = N_Protected_Body_Stub
507 or else NT (N).Nkind = N_Protected_Type_Declaration
508 or else NT (N).Nkind = N_Subprogram_Body_Stub
509 or else NT (N).Nkind = N_Subprogram_Declaration
510 or else NT (N).Nkind = N_Task_Body_Stub
511 or else NT (N).Nkind = N_Task_Type_Declaration);
513 end Corresponding_Body;
515 function Corresponding_Generic_Association
516 (N : Node_Id) return Node_Id is
519 or else NT (N).Nkind = N_Object_Declaration
520 or else NT (N).Nkind = N_Object_Renaming_Declaration);
522 end Corresponding_Generic_Association;
524 function Corresponding_Integer_Value
525 (N : Node_Id) return Uint is
528 or else NT (N).Nkind = N_Real_Literal);
530 end Corresponding_Integer_Value;
532 function Corresponding_Spec
533 (N : Node_Id) return Node_Id is
536 or else NT (N).Nkind = N_Package_Body
537 or else NT (N).Nkind = N_Protected_Body
538 or else NT (N).Nkind = N_Subprogram_Body
539 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
540 or else NT (N).Nkind = N_Task_Body
541 or else NT (N).Nkind = N_With_Clause);
543 end Corresponding_Spec;
545 function Corresponding_Stub
546 (N : Node_Id) return Node_Id is
549 or else NT (N).Nkind = N_Subunit);
551 end Corresponding_Stub;
553 function Dcheck_Function
554 (N : Node_Id) return Entity_Id is
557 or else NT (N).Nkind = N_Variant);
561 function Debug_Statement
562 (N : Node_Id) return Node_Id is
565 or else NT (N).Nkind = N_Pragma);
569 function Declarations
570 (N : Node_Id) return List_Id is
573 or else NT (N).Nkind = N_Accept_Statement
574 or else NT (N).Nkind = N_Block_Statement
575 or else NT (N).Nkind = N_Compilation_Unit_Aux
576 or else NT (N).Nkind = N_Entry_Body
577 or else NT (N).Nkind = N_Package_Body
578 or else NT (N).Nkind = N_Protected_Body
579 or else NT (N).Nkind = N_Subprogram_Body
580 or else NT (N).Nkind = N_Task_Body);
584 function Default_Expression
585 (N : Node_Id) return Node_Id is
588 or else NT (N).Nkind = N_Parameter_Specification);
590 end Default_Expression;
592 function Default_Name
593 (N : Node_Id) return Node_Id is
596 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
600 function Defining_Identifier
601 (N : Node_Id) return Entity_Id is
604 or else NT (N).Nkind = N_Component_Declaration
605 or else NT (N).Nkind = N_Defining_Program_Unit_Name
606 or else NT (N).Nkind = N_Discriminant_Specification
607 or else NT (N).Nkind = N_Entry_Body
608 or else NT (N).Nkind = N_Entry_Declaration
609 or else NT (N).Nkind = N_Entry_Index_Specification
610 or else NT (N).Nkind = N_Exception_Declaration
611 or else NT (N).Nkind = N_Exception_Renaming_Declaration
612 or else NT (N).Nkind = N_Formal_Object_Declaration
613 or else NT (N).Nkind = N_Formal_Package_Declaration
614 or else NT (N).Nkind = N_Formal_Type_Declaration
615 or else NT (N).Nkind = N_Full_Type_Declaration
616 or else NT (N).Nkind = N_Implicit_Label_Declaration
617 or else NT (N).Nkind = N_Incomplete_Type_Declaration
618 or else NT (N).Nkind = N_Loop_Parameter_Specification
619 or else NT (N).Nkind = N_Number_Declaration
620 or else NT (N).Nkind = N_Object_Declaration
621 or else NT (N).Nkind = N_Object_Renaming_Declaration
622 or else NT (N).Nkind = N_Package_Body_Stub
623 or else NT (N).Nkind = N_Parameter_Specification
624 or else NT (N).Nkind = N_Private_Extension_Declaration
625 or else NT (N).Nkind = N_Private_Type_Declaration
626 or else NT (N).Nkind = N_Protected_Body
627 or else NT (N).Nkind = N_Protected_Body_Stub
628 or else NT (N).Nkind = N_Protected_Type_Declaration
629 or else NT (N).Nkind = N_Single_Protected_Declaration
630 or else NT (N).Nkind = N_Single_Task_Declaration
631 or else NT (N).Nkind = N_Subtype_Declaration
632 or else NT (N).Nkind = N_Task_Body
633 or else NT (N).Nkind = N_Task_Body_Stub
634 or else NT (N).Nkind = N_Task_Type_Declaration);
636 end Defining_Identifier;
638 function Defining_Unit_Name
639 (N : Node_Id) return Node_Id is
642 or else NT (N).Nkind = N_Function_Instantiation
643 or else NT (N).Nkind = N_Function_Specification
644 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
645 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
646 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
647 or else NT (N).Nkind = N_Package_Body
648 or else NT (N).Nkind = N_Package_Instantiation
649 or else NT (N).Nkind = N_Package_Renaming_Declaration
650 or else NT (N).Nkind = N_Package_Specification
651 or else NT (N).Nkind = N_Procedure_Instantiation
652 or else NT (N).Nkind = N_Procedure_Specification);
654 end Defining_Unit_Name;
656 function Delay_Alternative
657 (N : Node_Id) return Node_Id is
660 or else NT (N).Nkind = N_Timed_Entry_Call);
662 end Delay_Alternative;
664 function Delay_Finalize_Attach
665 (N : Node_Id) return Boolean is
668 or else NT (N).Nkind = N_Object_Declaration);
670 end Delay_Finalize_Attach;
672 function Delay_Statement
673 (N : Node_Id) return Node_Id is
676 or else NT (N).Nkind = N_Delay_Alternative);
680 function Delta_Expression
681 (N : Node_Id) return Node_Id is
684 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
685 or else NT (N).Nkind = N_Delta_Constraint
686 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
688 end Delta_Expression;
690 function Digits_Expression
691 (N : Node_Id) return Node_Id is
694 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
695 or else NT (N).Nkind = N_Digits_Constraint
696 or else NT (N).Nkind = N_Floating_Point_Definition);
698 end Digits_Expression;
700 function Discr_Check_Funcs_Built
701 (N : Node_Id) return Boolean is
704 or else NT (N).Nkind = N_Full_Type_Declaration);
706 end Discr_Check_Funcs_Built;
708 function Discrete_Choices
709 (N : Node_Id) return List_Id is
712 or else NT (N).Nkind = N_Case_Statement_Alternative
713 or else NT (N).Nkind = N_Variant);
715 end Discrete_Choices;
717 function Discrete_Range
718 (N : Node_Id) return Node_Id is
721 or else NT (N).Nkind = N_Slice);
725 function Discrete_Subtype_Definition
726 (N : Node_Id) return Node_Id is
729 or else NT (N).Nkind = N_Entry_Declaration
730 or else NT (N).Nkind = N_Entry_Index_Specification
731 or else NT (N).Nkind = N_Loop_Parameter_Specification);
733 end Discrete_Subtype_Definition;
735 function Discrete_Subtype_Definitions
736 (N : Node_Id) return List_Id is
739 or else NT (N).Nkind = N_Constrained_Array_Definition);
741 end Discrete_Subtype_Definitions;
743 function Discriminant_Specifications
744 (N : Node_Id) return List_Id is
747 or else NT (N).Nkind = N_Formal_Type_Declaration
748 or else NT (N).Nkind = N_Full_Type_Declaration
749 or else NT (N).Nkind = N_Incomplete_Type_Declaration
750 or else NT (N).Nkind = N_Private_Extension_Declaration
751 or else NT (N).Nkind = N_Private_Type_Declaration
752 or else NT (N).Nkind = N_Protected_Type_Declaration
753 or else NT (N).Nkind = N_Task_Type_Declaration);
755 end Discriminant_Specifications;
757 function Discriminant_Type
758 (N : Node_Id) return Node_Id is
761 or else NT (N).Nkind = N_Discriminant_Specification);
763 end Discriminant_Type;
765 function Do_Accessibility_Check
766 (N : Node_Id) return Boolean is
769 or else NT (N).Nkind = N_Parameter_Specification);
771 end Do_Accessibility_Check;
773 function Do_Discriminant_Check
774 (N : Node_Id) return Boolean is
777 or else NT (N).Nkind = N_Selected_Component);
779 end Do_Discriminant_Check;
781 function Do_Division_Check
782 (N : Node_Id) return Boolean is
785 or else NT (N).Nkind = N_Op_Divide
786 or else NT (N).Nkind = N_Op_Mod
787 or else NT (N).Nkind = N_Op_Rem);
789 end Do_Division_Check;
791 function Do_Length_Check
792 (N : Node_Id) return Boolean is
795 or else NT (N).Nkind = N_Assignment_Statement
796 or else NT (N).Nkind = N_Op_And
797 or else NT (N).Nkind = N_Op_Or
798 or else NT (N).Nkind = N_Op_Xor
799 or else NT (N).Nkind = N_Type_Conversion);
803 function Do_Overflow_Check
804 (N : Node_Id) return Boolean is
807 or else NT (N).Nkind in N_Op
808 or else NT (N).Nkind = N_Attribute_Reference
809 or else NT (N).Nkind = N_Type_Conversion);
811 end Do_Overflow_Check;
813 function Do_Range_Check
814 (N : Node_Id) return Boolean is
817 or else NT (N).Nkind in N_Subexpr);
821 function Do_Storage_Check
822 (N : Node_Id) return Boolean is
825 or else NT (N).Nkind = N_Allocator
826 or else NT (N).Nkind = N_Subprogram_Body);
828 end Do_Storage_Check;
830 function Do_Tag_Check
831 (N : Node_Id) return Boolean is
834 or else NT (N).Nkind = N_Assignment_Statement
835 or else NT (N).Nkind = N_Function_Call
836 or else NT (N).Nkind = N_Procedure_Call_Statement
837 or else NT (N).Nkind = N_Return_Statement
838 or else NT (N).Nkind = N_Type_Conversion);
842 function Elaborate_All_Present
843 (N : Node_Id) return Boolean is
846 or else NT (N).Nkind = N_With_Clause);
848 end Elaborate_All_Present;
850 function Elaborate_Present
851 (N : Node_Id) return Boolean is
854 or else NT (N).Nkind = N_With_Clause);
856 end Elaborate_Present;
858 function Elaboration_Boolean
859 (N : Node_Id) return Node_Id is
862 or else NT (N).Nkind = N_Function_Specification
863 or else NT (N).Nkind = N_Procedure_Specification);
865 end Elaboration_Boolean;
867 function Else_Actions
868 (N : Node_Id) return List_Id is
871 or else NT (N).Nkind = N_Conditional_Expression);
875 function Else_Statements
876 (N : Node_Id) return List_Id is
879 or else NT (N).Nkind = N_Conditional_Entry_Call
880 or else NT (N).Nkind = N_If_Statement
881 or else NT (N).Nkind = N_Selective_Accept);
886 (N : Node_Id) return List_Id is
889 or else NT (N).Nkind = N_If_Statement);
893 function Enclosing_Variant
894 (N : Node_Id) return Node_Id is
897 or else NT (N).Nkind = N_Variant);
899 end Enclosing_Variant;
902 (N : Node_Id) return Node_Id is
905 or else NT (N).Nkind = N_Enumeration_Type_Definition
906 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
907 or else NT (N).Nkind = N_Loop_Statement
908 or else NT (N).Nkind = N_Package_Specification
909 or else NT (N).Nkind = N_Protected_Body
910 or else NT (N).Nkind = N_Protected_Definition
911 or else NT (N).Nkind = N_Record_Definition
912 or else NT (N).Nkind = N_Task_Definition);
917 (N : Node_Id) return Uint is
920 or else NT (N).Nkind = N_Case_Statement
921 or else NT (N).Nkind = N_If_Statement);
926 (N : Node_Id) return Node_Id is
929 or else NT (N).Nkind in N_Has_Entity
930 or else NT (N).Nkind = N_Freeze_Entity);
934 function Entity_Or_Associated_Node
935 (N : Node_Id) return Node_Id is
938 or else NT (N).Nkind in N_Has_Entity
939 or else NT (N).Nkind = N_Freeze_Entity);
941 end Entity_Or_Associated_Node;
943 function Entry_Body_Formal_Part
944 (N : Node_Id) return Node_Id is
947 or else NT (N).Nkind = N_Entry_Body);
949 end Entry_Body_Formal_Part;
951 function Entry_Call_Alternative
952 (N : Node_Id) return Node_Id is
955 or else NT (N).Nkind = N_Conditional_Entry_Call
956 or else NT (N).Nkind = N_Timed_Entry_Call);
958 end Entry_Call_Alternative;
960 function Entry_Call_Statement
961 (N : Node_Id) return Node_Id is
964 or else NT (N).Nkind = N_Entry_Call_Alternative);
966 end Entry_Call_Statement;
968 function Entry_Direct_Name
969 (N : Node_Id) return Node_Id is
972 or else NT (N).Nkind = N_Accept_Statement);
974 end Entry_Direct_Name;
977 (N : Node_Id) return Node_Id is
980 or else NT (N).Nkind = N_Accept_Statement);
984 function Entry_Index_Specification
985 (N : Node_Id) return Node_Id is
988 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
990 end Entry_Index_Specification;
993 (N : Node_Id) return Node_Id is
996 or else NT (N).Nkind in N_Has_Etype);
1000 function Exception_Choices
1001 (N : Node_Id) return List_Id is
1003 pragma Assert (False
1004 or else NT (N).Nkind = N_Exception_Handler);
1006 end Exception_Choices;
1008 function Exception_Handlers
1009 (N : Node_Id) return List_Id is
1011 pragma Assert (False
1012 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1014 end Exception_Handlers;
1016 function Exception_Junk
1017 (N : Node_Id) return Boolean is
1019 pragma Assert (False
1020 or else NT (N).Nkind = N_Goto_Statement
1021 or else NT (N).Nkind = N_Label
1022 or else NT (N).Nkind = N_Object_Declaration
1023 or else NT (N).Nkind = N_Subtype_Declaration);
1027 function Expansion_Delayed
1028 (N : Node_Id) return Boolean is
1030 pragma Assert (False
1031 or else NT (N).Nkind = N_Aggregate
1032 or else NT (N).Nkind = N_Extension_Aggregate);
1034 end Expansion_Delayed;
1036 function Explicit_Actual_Parameter
1037 (N : Node_Id) return Node_Id is
1039 pragma Assert (False
1040 or else NT (N).Nkind = N_Parameter_Association);
1042 end Explicit_Actual_Parameter;
1044 function Explicit_Generic_Actual_Parameter
1045 (N : Node_Id) return Node_Id is
1047 pragma Assert (False
1048 or else NT (N).Nkind = N_Generic_Association);
1050 end Explicit_Generic_Actual_Parameter;
1053 (N : Node_Id) return Node_Id is
1055 pragma Assert (False
1056 or else NT (N).Nkind = N_Allocator
1057 or else NT (N).Nkind = N_Assignment_Statement
1058 or else NT (N).Nkind = N_At_Clause
1059 or else NT (N).Nkind = N_Attribute_Definition_Clause
1060 or else NT (N).Nkind = N_Case_Statement
1061 or else NT (N).Nkind = N_Code_Statement
1062 or else NT (N).Nkind = N_Component_Association
1063 or else NT (N).Nkind = N_Component_Declaration
1064 or else NT (N).Nkind = N_Delay_Relative_Statement
1065 or else NT (N).Nkind = N_Delay_Until_Statement
1066 or else NT (N).Nkind = N_Discriminant_Association
1067 or else NT (N).Nkind = N_Discriminant_Specification
1068 or else NT (N).Nkind = N_Exception_Declaration
1069 or else NT (N).Nkind = N_Formal_Object_Declaration
1070 or else NT (N).Nkind = N_Free_Statement
1071 or else NT (N).Nkind = N_Mod_Clause
1072 or else NT (N).Nkind = N_Modular_Type_Definition
1073 or else NT (N).Nkind = N_Number_Declaration
1074 or else NT (N).Nkind = N_Object_Declaration
1075 or else NT (N).Nkind = N_Parameter_Specification
1076 or else NT (N).Nkind = N_Pragma_Argument_Association
1077 or else NT (N).Nkind = N_Qualified_Expression
1078 or else NT (N).Nkind = N_Return_Statement
1079 or else NT (N).Nkind = N_Type_Conversion
1080 or else NT (N).Nkind = N_Unchecked_Expression
1081 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1085 function Expressions
1086 (N : Node_Id) return List_Id is
1088 pragma Assert (False
1089 or else NT (N).Nkind = N_Aggregate
1090 or else NT (N).Nkind = N_Attribute_Reference
1091 or else NT (N).Nkind = N_Conditional_Expression
1092 or else NT (N).Nkind = N_Extension_Aggregate
1093 or else NT (N).Nkind = N_Indexed_Component);
1098 (N : Node_Id) return Node_Id is
1100 pragma Assert (False
1101 or else NT (N).Nkind = N_Component_Clause);
1105 function First_Inlined_Subprogram
1106 (N : Node_Id) return Entity_Id is
1108 pragma Assert (False
1109 or else NT (N).Nkind = N_Compilation_Unit);
1111 end First_Inlined_Subprogram;
1114 (N : Node_Id) return Boolean is
1116 pragma Assert (False
1117 or else NT (N).Nkind = N_With_Clause);
1121 function First_Named_Actual
1122 (N : Node_Id) return Node_Id is
1124 pragma Assert (False
1125 or else NT (N).Nkind = N_Entry_Call_Statement
1126 or else NT (N).Nkind = N_Function_Call
1127 or else NT (N).Nkind = N_Procedure_Call_Statement);
1129 end First_Named_Actual;
1131 function First_Real_Statement
1132 (N : Node_Id) return Node_Id is
1134 pragma Assert (False
1135 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1137 end First_Real_Statement;
1139 function First_Subtype_Link
1140 (N : Node_Id) return Entity_Id is
1142 pragma Assert (False
1143 or else NT (N).Nkind = N_Freeze_Entity);
1145 end First_Subtype_Link;
1147 function Float_Truncate
1148 (N : Node_Id) return Boolean is
1150 pragma Assert (False
1151 or else NT (N).Nkind = N_Type_Conversion);
1155 function Formal_Type_Definition
1156 (N : Node_Id) return Node_Id is
1158 pragma Assert (False
1159 or else NT (N).Nkind = N_Formal_Type_Declaration);
1161 end Formal_Type_Definition;
1163 function Forwards_OK
1164 (N : Node_Id) return Boolean is
1166 pragma Assert (False
1167 or else NT (N).Nkind = N_Assignment_Statement);
1171 function From_At_Mod
1172 (N : Node_Id) return Boolean is
1174 pragma Assert (False
1175 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1179 function Generic_Associations
1180 (N : Node_Id) return List_Id is
1182 pragma Assert (False
1183 or else NT (N).Nkind = N_Formal_Package_Declaration
1184 or else NT (N).Nkind = N_Function_Instantiation
1185 or else NT (N).Nkind = N_Package_Instantiation
1186 or else NT (N).Nkind = N_Procedure_Instantiation);
1188 end Generic_Associations;
1190 function Generic_Formal_Declarations
1191 (N : Node_Id) return List_Id is
1193 pragma Assert (False
1194 or else NT (N).Nkind = N_Generic_Package_Declaration
1195 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1197 end Generic_Formal_Declarations;
1199 function Generic_Parent
1200 (N : Node_Id) return Node_Id is
1202 pragma Assert (False
1203 or else NT (N).Nkind = N_Function_Specification
1204 or else NT (N).Nkind = N_Package_Specification
1205 or else NT (N).Nkind = N_Procedure_Specification);
1209 function Generic_Parent_Type
1210 (N : Node_Id) return Node_Id is
1212 pragma Assert (False
1213 or else NT (N).Nkind = N_Subtype_Declaration);
1215 end Generic_Parent_Type;
1217 function Handled_Statement_Sequence
1218 (N : Node_Id) return Node_Id is
1220 pragma Assert (False
1221 or else NT (N).Nkind = N_Accept_Statement
1222 or else NT (N).Nkind = N_Block_Statement
1223 or else NT (N).Nkind = N_Entry_Body
1224 or else NT (N).Nkind = N_Package_Body
1225 or else NT (N).Nkind = N_Subprogram_Body
1226 or else NT (N).Nkind = N_Task_Body);
1228 end Handled_Statement_Sequence;
1230 function Handler_List_Entry
1231 (N : Node_Id) return Node_Id is
1233 pragma Assert (False
1234 or else NT (N).Nkind = N_Object_Declaration);
1236 end Handler_List_Entry;
1238 function Has_Created_Identifier
1239 (N : Node_Id) return Boolean is
1241 pragma Assert (False
1242 or else NT (N).Nkind = N_Block_Statement
1243 or else NT (N).Nkind = N_Loop_Statement);
1245 end Has_Created_Identifier;
1247 function Has_Dynamic_Length_Check
1248 (N : Node_Id) return Boolean is
1251 end Has_Dynamic_Length_Check;
1253 function Has_Dynamic_Range_Check
1254 (N : Node_Id) return Boolean is
1257 end Has_Dynamic_Range_Check;
1259 function Has_No_Elaboration_Code
1260 (N : Node_Id) return Boolean is
1262 pragma Assert (False
1263 or else NT (N).Nkind = N_Compilation_Unit);
1265 end Has_No_Elaboration_Code;
1267 function Has_Priority_Pragma
1268 (N : Node_Id) return Boolean is
1270 pragma Assert (False
1271 or else NT (N).Nkind = N_Protected_Definition
1272 or else NT (N).Nkind = N_Subprogram_Body
1273 or else NT (N).Nkind = N_Task_Definition);
1275 end Has_Priority_Pragma;
1277 function Has_Private_View
1278 (N : Node_Id) return Boolean is
1280 pragma Assert (False
1281 or else NT (N).Nkind in N_Op
1282 or else NT (N).Nkind = N_Character_Literal
1283 or else NT (N).Nkind = N_Expanded_Name
1284 or else NT (N).Nkind = N_Identifier
1285 or else NT (N).Nkind = N_Operator_Symbol);
1287 end Has_Private_View;
1289 function Has_Storage_Size_Pragma
1290 (N : Node_Id) return Boolean is
1292 pragma Assert (False
1293 or else NT (N).Nkind = N_Task_Definition);
1295 end Has_Storage_Size_Pragma;
1297 function Has_Task_Info_Pragma
1298 (N : Node_Id) return Boolean is
1300 pragma Assert (False
1301 or else NT (N).Nkind = N_Task_Definition);
1303 end Has_Task_Info_Pragma;
1305 function Has_Task_Name_Pragma
1306 (N : Node_Id) return Boolean is
1308 pragma Assert (False
1309 or else NT (N).Nkind = N_Task_Definition);
1311 end Has_Task_Name_Pragma;
1313 function Has_Wide_Character
1314 (N : Node_Id) return Boolean is
1316 pragma Assert (False
1317 or else NT (N).Nkind = N_String_Literal);
1319 end Has_Wide_Character;
1321 function Hidden_By_Use_Clause
1322 (N : Node_Id) return Elist_Id is
1324 pragma Assert (False
1325 or else NT (N).Nkind = N_Use_Package_Clause
1326 or else NT (N).Nkind = N_Use_Type_Clause);
1328 end Hidden_By_Use_Clause;
1331 (N : Node_Id) return Node_Id is
1333 pragma Assert (False
1334 or else NT (N).Nkind = N_Range
1335 or else NT (N).Nkind = N_Real_Range_Specification
1336 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1341 (N : Node_Id) return Node_Id is
1343 pragma Assert (False
1344 or else NT (N).Nkind = N_At_Clause
1345 or else NT (N).Nkind = N_Block_Statement
1346 or else NT (N).Nkind = N_Designator
1347 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1348 or else NT (N).Nkind = N_Label
1349 or else NT (N).Nkind = N_Loop_Statement
1350 or else NT (N).Nkind = N_Record_Representation_Clause
1351 or else NT (N).Nkind = N_Subprogram_Info);
1355 function Implicit_With
1356 (N : Node_Id) return Boolean is
1358 pragma Assert (False
1359 or else NT (N).Nkind = N_With_Clause);
1364 (N : Node_Id) return Boolean is
1366 pragma Assert (False
1367 or else NT (N).Nkind = N_Formal_Object_Declaration
1368 or else NT (N).Nkind = N_Parameter_Specification);
1372 function Includes_Infinities
1373 (N : Node_Id) return Boolean is
1375 pragma Assert (False
1376 or else NT (N).Nkind = N_Range);
1378 end Includes_Infinities;
1380 function Instance_Spec
1381 (N : Node_Id) return Node_Id is
1383 pragma Assert (False
1384 or else NT (N).Nkind = N_Formal_Package_Declaration
1385 or else NT (N).Nkind = N_Function_Instantiation
1386 or else NT (N).Nkind = N_Package_Instantiation
1387 or else NT (N).Nkind = N_Procedure_Instantiation);
1392 (N : Node_Id) return Uint is
1394 pragma Assert (False
1395 or else NT (N).Nkind = N_Integer_Literal);
1399 function Is_Asynchronous_Call_Block
1400 (N : Node_Id) return Boolean is
1402 pragma Assert (False
1403 or else NT (N).Nkind = N_Block_Statement);
1405 end Is_Asynchronous_Call_Block;
1407 function Is_Component_Left_Opnd
1408 (N : Node_Id) return Boolean is
1410 pragma Assert (False
1411 or else NT (N).Nkind = N_Op_Concat);
1413 end Is_Component_Left_Opnd;
1415 function Is_Component_Right_Opnd
1416 (N : Node_Id) return Boolean is
1418 pragma Assert (False
1419 or else NT (N).Nkind = N_Op_Concat);
1421 end Is_Component_Right_Opnd;
1423 function Is_Controlling_Actual
1424 (N : Node_Id) return Boolean is
1426 pragma Assert (False
1427 or else NT (N).Nkind in N_Subexpr);
1429 end Is_Controlling_Actual;
1431 function Is_In_Discriminant_Check
1432 (N : Node_Id) return Boolean is
1434 pragma Assert (False
1435 or else NT (N).Nkind = N_Selected_Component);
1437 end Is_In_Discriminant_Check;
1439 function Is_Machine_Number
1440 (N : Node_Id) return Boolean is
1442 pragma Assert (False
1443 or else NT (N).Nkind = N_Real_Literal);
1445 end Is_Machine_Number;
1447 function Is_Null_Loop
1448 (N : Node_Id) return Boolean is
1450 pragma Assert (False
1451 or else NT (N).Nkind = N_Loop_Statement);
1455 function Is_Overloaded
1456 (N : Node_Id) return Boolean is
1458 pragma Assert (False
1459 or else NT (N).Nkind in N_Subexpr);
1463 function Is_Power_Of_2_For_Shift
1464 (N : Node_Id) return Boolean is
1466 pragma Assert (False
1467 or else NT (N).Nkind = N_Op_Expon);
1469 end Is_Power_Of_2_For_Shift;
1471 function Is_Protected_Subprogram_Body
1472 (N : Node_Id) return Boolean is
1474 pragma Assert (False
1475 or else NT (N).Nkind = N_Subprogram_Body);
1477 end Is_Protected_Subprogram_Body;
1479 function Is_Static_Expression
1480 (N : Node_Id) return Boolean is
1482 pragma Assert (False
1483 or else NT (N).Nkind in N_Subexpr);
1485 end Is_Static_Expression;
1487 function Is_Subprogram_Descriptor
1488 (N : Node_Id) return Boolean is
1490 pragma Assert (False
1491 or else NT (N).Nkind = N_Object_Declaration);
1493 end Is_Subprogram_Descriptor;
1495 function Is_Task_Allocation_Block
1496 (N : Node_Id) return Boolean is
1498 pragma Assert (False
1499 or else NT (N).Nkind = N_Block_Statement);
1501 end Is_Task_Allocation_Block;
1503 function Is_Task_Master
1504 (N : Node_Id) return Boolean is
1506 pragma Assert (False
1507 or else NT (N).Nkind = N_Block_Statement
1508 or else NT (N).Nkind = N_Subprogram_Body
1509 or else NT (N).Nkind = N_Task_Body);
1513 function Iteration_Scheme
1514 (N : Node_Id) return Node_Id is
1516 pragma Assert (False
1517 or else NT (N).Nkind = N_Loop_Statement);
1519 end Iteration_Scheme;
1522 (N : Node_Id) return Node_Id is
1524 pragma Assert (False
1525 or else NT (N).Nkind = N_Itype_Reference);
1529 function Kill_Range_Check
1530 (N : Node_Id) return Boolean is
1532 pragma Assert (False
1533 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1535 end Kill_Range_Check;
1537 function Label_Construct
1538 (N : Node_Id) return Node_Id is
1540 pragma Assert (False
1541 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1543 end Label_Construct;
1546 (N : Node_Id) return Node_Id is
1548 pragma Assert (False
1549 or else NT (N).Nkind = N_Component_Clause);
1554 (N : Node_Id) return Boolean is
1556 pragma Assert (False
1557 or else NT (N).Nkind = N_With_Clause);
1562 (N : Node_Id) return Node_Id is
1564 pragma Assert (False
1565 or else NT (N).Nkind = N_And_Then
1566 or else NT (N).Nkind = N_In
1567 or else NT (N).Nkind = N_Not_In
1568 or else NT (N).Nkind = N_Or_Else
1569 or else NT (N).Nkind in N_Binary_Op);
1573 function Library_Unit
1574 (N : Node_Id) return Node_Id is
1576 pragma Assert (False
1577 or else NT (N).Nkind = N_Compilation_Unit
1578 or else NT (N).Nkind = N_Package_Body_Stub
1579 or else NT (N).Nkind = N_Protected_Body_Stub
1580 or else NT (N).Nkind = N_Subprogram_Body_Stub
1581 or else NT (N).Nkind = N_Task_Body_Stub
1582 or else NT (N).Nkind = N_With_Clause);
1586 function Limited_View_Installed
1587 (N : Node_Id) return Boolean is
1589 pragma Assert (False
1590 or else NT (N).Nkind = N_Package_Specification
1591 or else NT (N).Nkind = N_With_Clause);
1593 end Limited_View_Installed;
1595 function Limited_Present
1596 (N : Node_Id) return Boolean is
1598 pragma Assert (False
1599 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1600 or else NT (N).Nkind = N_Private_Type_Declaration
1601 or else NT (N).Nkind = N_Record_Definition
1602 or else NT (N).Nkind = N_With_Clause);
1604 end Limited_Present;
1607 (N : Node_Id) return List_Id is
1609 pragma Assert (False
1610 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1614 function Loop_Actions
1615 (N : Node_Id) return List_Id is
1617 pragma Assert (False
1618 or else NT (N).Nkind = N_Component_Association);
1622 function Loop_Parameter_Specification
1623 (N : Node_Id) return Node_Id is
1625 pragma Assert (False
1626 or else NT (N).Nkind = N_Iteration_Scheme);
1628 end Loop_Parameter_Specification;
1631 (N : Node_Id) return Node_Id is
1633 pragma Assert (False
1634 or else NT (N).Nkind = N_Range
1635 or else NT (N).Nkind = N_Real_Range_Specification
1636 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1641 (N : Node_Id) return Node_Id is
1643 pragma Assert (False
1644 or else NT (N).Nkind = N_Record_Representation_Clause);
1649 (N : Node_Id) return Boolean is
1651 pragma Assert (False
1652 or else NT (N).Nkind = N_Component_Declaration
1653 or else NT (N).Nkind = N_Discriminant_Specification
1654 or else NT (N).Nkind = N_Exception_Declaration
1655 or else NT (N).Nkind = N_Formal_Object_Declaration
1656 or else NT (N).Nkind = N_Number_Declaration
1657 or else NT (N).Nkind = N_Object_Declaration
1658 or else NT (N).Nkind = N_Parameter_Specification);
1662 function Must_Be_Byte_Aligned
1663 (N : Node_Id) return Boolean is
1665 pragma Assert (False
1666 or else NT (N).Nkind = N_Attribute_Reference);
1668 end Must_Be_Byte_Aligned;
1670 function Must_Not_Freeze
1671 (N : Node_Id) return Boolean is
1673 pragma Assert (False
1674 or else NT (N).Nkind = N_Subtype_Indication
1675 or else NT (N).Nkind in N_Subexpr);
1677 end Must_Not_Freeze;
1680 (N : Node_Id) return Node_Id is
1682 pragma Assert (False
1683 or else NT (N).Nkind = N_Assignment_Statement
1684 or else NT (N).Nkind = N_Attribute_Definition_Clause
1685 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1686 or else NT (N).Nkind = N_Designator
1687 or else NT (N).Nkind = N_Entry_Call_Statement
1688 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1689 or else NT (N).Nkind = N_Exit_Statement
1690 or else NT (N).Nkind = N_Formal_Package_Declaration
1691 or else NT (N).Nkind = N_Function_Call
1692 or else NT (N).Nkind = N_Function_Instantiation
1693 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1694 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1695 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1696 or else NT (N).Nkind = N_Goto_Statement
1697 or else NT (N).Nkind = N_Object_Renaming_Declaration
1698 or else NT (N).Nkind = N_Package_Instantiation
1699 or else NT (N).Nkind = N_Package_Renaming_Declaration
1700 or else NT (N).Nkind = N_Procedure_Call_Statement
1701 or else NT (N).Nkind = N_Procedure_Instantiation
1702 or else NT (N).Nkind = N_Raise_Statement
1703 or else NT (N).Nkind = N_Requeue_Statement
1704 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1705 or else NT (N).Nkind = N_Subunit
1706 or else NT (N).Nkind = N_Variant_Part
1707 or else NT (N).Nkind = N_With_Clause
1708 or else NT (N).Nkind = N_With_Type_Clause);
1713 (N : Node_Id) return List_Id is
1715 pragma Assert (False
1716 or else NT (N).Nkind = N_Abort_Statement
1717 or else NT (N).Nkind = N_Use_Package_Clause);
1721 function Next_Entity
1722 (N : Node_Id) return Node_Id is
1724 pragma Assert (False
1725 or else NT (N).Nkind = N_Defining_Character_Literal
1726 or else NT (N).Nkind = N_Defining_Identifier
1727 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1731 function Next_Named_Actual
1732 (N : Node_Id) return Node_Id is
1734 pragma Assert (False
1735 or else NT (N).Nkind = N_Parameter_Association);
1737 end Next_Named_Actual;
1739 function Next_Rep_Item
1740 (N : Node_Id) return Node_Id is
1742 pragma Assert (False
1743 or else NT (N).Nkind = N_Attribute_Definition_Clause
1744 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1745 or else NT (N).Nkind = N_Pragma
1746 or else NT (N).Nkind = N_Record_Representation_Clause);
1750 function Next_Use_Clause
1751 (N : Node_Id) return Node_Id is
1753 pragma Assert (False
1754 or else NT (N).Nkind = N_Use_Package_Clause
1755 or else NT (N).Nkind = N_Use_Type_Clause);
1757 end Next_Use_Clause;
1759 function No_Ctrl_Actions
1760 (N : Node_Id) return Boolean is
1762 pragma Assert (False
1763 or else NT (N).Nkind = N_Assignment_Statement);
1765 end No_Ctrl_Actions;
1767 function No_Entities_Ref_In_Spec
1768 (N : Node_Id) return Boolean is
1770 pragma Assert (False
1771 or else NT (N).Nkind = N_With_Clause);
1773 end No_Entities_Ref_In_Spec;
1775 function No_Initialization
1776 (N : Node_Id) return Boolean is
1778 pragma Assert (False
1779 or else NT (N).Nkind = N_Allocator
1780 or else NT (N).Nkind = N_Object_Declaration);
1782 end No_Initialization;
1784 function No_Truncation
1785 (N : Node_Id) return Boolean is
1787 pragma Assert (False
1788 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1792 function Null_Present
1793 (N : Node_Id) return Boolean is
1795 pragma Assert (False
1796 or else NT (N).Nkind = N_Component_List
1797 or else NT (N).Nkind = N_Record_Definition);
1801 function Null_Record_Present
1802 (N : Node_Id) return Boolean is
1804 pragma Assert (False
1805 or else NT (N).Nkind = N_Aggregate
1806 or else NT (N).Nkind = N_Extension_Aggregate);
1808 end Null_Record_Present;
1810 function Object_Definition
1811 (N : Node_Id) return Node_Id is
1813 pragma Assert (False
1814 or else NT (N).Nkind = N_Object_Declaration);
1816 end Object_Definition;
1818 function OK_For_Stream
1819 (N : Node_Id) return Boolean is
1821 pragma Assert (False
1822 or else NT (N).Nkind = N_Attribute_Reference);
1826 function Original_Discriminant
1827 (N : Node_Id) return Node_Id is
1829 pragma Assert (False
1830 or else NT (N).Nkind = N_Identifier);
1832 end Original_Discriminant;
1834 function Original_Entity
1835 (N : Node_Id) return Entity_Id is
1837 pragma Assert (False
1838 or else NT (N).Nkind = N_Integer_Literal
1839 or else NT (N).Nkind = N_Real_Literal);
1841 end Original_Entity;
1843 function Others_Discrete_Choices
1844 (N : Node_Id) return List_Id is
1846 pragma Assert (False
1847 or else NT (N).Nkind = N_Others_Choice);
1849 end Others_Discrete_Choices;
1851 function Out_Present
1852 (N : Node_Id) return Boolean is
1854 pragma Assert (False
1855 or else NT (N).Nkind = N_Formal_Object_Declaration
1856 or else NT (N).Nkind = N_Parameter_Specification);
1860 function Parameter_Associations
1861 (N : Node_Id) return List_Id is
1863 pragma Assert (False
1864 or else NT (N).Nkind = N_Entry_Call_Statement
1865 or else NT (N).Nkind = N_Function_Call
1866 or else NT (N).Nkind = N_Procedure_Call_Statement);
1868 end Parameter_Associations;
1870 function Parameter_List_Truncated
1871 (N : Node_Id) return Boolean is
1873 pragma Assert (False
1874 or else NT (N).Nkind = N_Function_Call
1875 or else NT (N).Nkind = N_Procedure_Call_Statement);
1877 end Parameter_List_Truncated;
1879 function Parameter_Specifications
1880 (N : Node_Id) return List_Id is
1882 pragma Assert (False
1883 or else NT (N).Nkind = N_Accept_Statement
1884 or else NT (N).Nkind = N_Access_Function_Definition
1885 or else NT (N).Nkind = N_Access_Procedure_Definition
1886 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1887 or else NT (N).Nkind = N_Entry_Declaration
1888 or else NT (N).Nkind = N_Function_Specification
1889 or else NT (N).Nkind = N_Procedure_Specification);
1891 end Parameter_Specifications;
1893 function Parameter_Type
1894 (N : Node_Id) return Node_Id is
1896 pragma Assert (False
1897 or else NT (N).Nkind = N_Parameter_Specification);
1901 function Parent_Spec
1902 (N : Node_Id) return Node_Id is
1904 pragma Assert (False
1905 or else NT (N).Nkind = N_Function_Instantiation
1906 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1907 or else NT (N).Nkind = N_Generic_Package_Declaration
1908 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1909 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1910 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1911 or else NT (N).Nkind = N_Package_Declaration
1912 or else NT (N).Nkind = N_Package_Instantiation
1913 or else NT (N).Nkind = N_Package_Renaming_Declaration
1914 or else NT (N).Nkind = N_Procedure_Instantiation
1915 or else NT (N).Nkind = N_Subprogram_Declaration
1916 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1921 (N : Node_Id) return Node_Id is
1923 pragma Assert (False
1924 or else NT (N).Nkind = N_Component_Clause);
1928 function Pragma_Argument_Associations
1929 (N : Node_Id) return List_Id is
1931 pragma Assert (False
1932 or else NT (N).Nkind = N_Pragma);
1934 end Pragma_Argument_Associations;
1936 function Pragmas_After
1937 (N : Node_Id) return List_Id is
1939 pragma Assert (False
1940 or else NT (N).Nkind = N_Compilation_Unit_Aux
1941 or else NT (N).Nkind = N_Terminate_Alternative);
1945 function Pragmas_Before
1946 (N : Node_Id) return List_Id is
1948 pragma Assert (False
1949 or else NT (N).Nkind = N_Accept_Alternative
1950 or else NT (N).Nkind = N_Delay_Alternative
1951 or else NT (N).Nkind = N_Entry_Call_Alternative
1952 or else NT (N).Nkind = N_Mod_Clause
1953 or else NT (N).Nkind = N_Terminate_Alternative
1954 or else NT (N).Nkind = N_Triggering_Alternative);
1959 (N : Node_Id) return Node_Id is
1961 pragma Assert (False
1962 or else NT (N).Nkind = N_Attribute_Reference
1963 or else NT (N).Nkind = N_Expanded_Name
1964 or else NT (N).Nkind = N_Explicit_Dereference
1965 or else NT (N).Nkind = N_Indexed_Component
1966 or else NT (N).Nkind = N_Reference
1967 or else NT (N).Nkind = N_Selected_Component
1968 or else NT (N).Nkind = N_Slice);
1972 function Present_Expr
1973 (N : Node_Id) return Uint is
1975 pragma Assert (False
1976 or else NT (N).Nkind = N_Variant);
1981 (N : Node_Id) return Boolean is
1983 pragma Assert (False
1984 or else NT (N).Nkind = N_Component_Declaration
1985 or else NT (N).Nkind = N_Discriminant_Specification
1986 or else NT (N).Nkind = N_Exception_Declaration
1987 or else NT (N).Nkind = N_Formal_Object_Declaration
1988 or else NT (N).Nkind = N_Number_Declaration
1989 or else NT (N).Nkind = N_Object_Declaration
1990 or else NT (N).Nkind = N_Parameter_Specification);
1994 function Print_In_Hex
1995 (N : Node_Id) return Boolean is
1997 pragma Assert (False
1998 or else NT (N).Nkind = N_Integer_Literal);
2002 function Private_Declarations
2003 (N : Node_Id) return List_Id is
2005 pragma Assert (False
2006 or else NT (N).Nkind = N_Package_Specification
2007 or else NT (N).Nkind = N_Protected_Definition
2008 or else NT (N).Nkind = N_Task_Definition);
2010 end Private_Declarations;
2012 function Private_Present
2013 (N : Node_Id) return Boolean is
2015 pragma Assert (False
2016 or else NT (N).Nkind = N_Compilation_Unit
2017 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
2019 end Private_Present;
2021 function Procedure_To_Call
2022 (N : Node_Id) return Node_Id is
2024 pragma Assert (False
2025 or else NT (N).Nkind = N_Allocator
2026 or else NT (N).Nkind = N_Free_Statement
2027 or else NT (N).Nkind = N_Return_Statement);
2029 end Procedure_To_Call;
2031 function Proper_Body
2032 (N : Node_Id) return Node_Id is
2034 pragma Assert (False
2035 or else NT (N).Nkind = N_Subunit);
2039 function Protected_Definition
2040 (N : Node_Id) return Node_Id is
2042 pragma Assert (False
2043 or else NT (N).Nkind = N_Protected_Type_Declaration
2044 or else NT (N).Nkind = N_Single_Protected_Declaration);
2046 end Protected_Definition;
2048 function Protected_Present
2049 (N : Node_Id) return Boolean is
2051 pragma Assert (False
2052 or else NT (N).Nkind = N_Access_Function_Definition
2053 or else NT (N).Nkind = N_Access_Procedure_Definition);
2055 end Protected_Present;
2057 function Raises_Constraint_Error
2058 (N : Node_Id) return Boolean is
2060 pragma Assert (False
2061 or else NT (N).Nkind in N_Subexpr);
2063 end Raises_Constraint_Error;
2065 function Range_Constraint
2066 (N : Node_Id) return Node_Id is
2068 pragma Assert (False
2069 or else NT (N).Nkind = N_Delta_Constraint
2070 or else NT (N).Nkind = N_Digits_Constraint);
2072 end Range_Constraint;
2074 function Range_Expression
2075 (N : Node_Id) return Node_Id is
2077 pragma Assert (False
2078 or else NT (N).Nkind = N_Range_Constraint);
2080 end Range_Expression;
2082 function Real_Range_Specification
2083 (N : Node_Id) return Node_Id is
2085 pragma Assert (False
2086 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2087 or else NT (N).Nkind = N_Floating_Point_Definition
2088 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2090 end Real_Range_Specification;
2093 (N : Node_Id) return Ureal is
2095 pragma Assert (False
2096 or else NT (N).Nkind = N_Real_Literal);
2101 (N : Node_Id) return Uint is
2103 pragma Assert (False
2104 or else NT (N).Nkind = N_Raise_Constraint_Error
2105 or else NT (N).Nkind = N_Raise_Program_Error
2106 or else NT (N).Nkind = N_Raise_Storage_Error);
2110 function Record_Extension_Part
2111 (N : Node_Id) return Node_Id is
2113 pragma Assert (False
2114 or else NT (N).Nkind = N_Derived_Type_Definition);
2116 end Record_Extension_Part;
2118 function Redundant_Use
2119 (N : Node_Id) return Boolean is
2121 pragma Assert (False
2122 or else NT (N).Nkind = N_Attribute_Reference
2123 or else NT (N).Nkind = N_Expanded_Name
2124 or else NT (N).Nkind = N_Identifier);
2128 function Return_Type
2129 (N : Node_Id) return Node_Id is
2131 pragma Assert (False
2132 or else NT (N).Nkind = N_Return_Statement);
2136 function Reverse_Present
2137 (N : Node_Id) return Boolean is
2139 pragma Assert (False
2140 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2142 end Reverse_Present;
2145 (N : Node_Id) return Node_Id is
2147 pragma Assert (False
2148 or else NT (N).Nkind in N_Op
2149 or else NT (N).Nkind = N_And_Then
2150 or else NT (N).Nkind = N_In
2151 or else NT (N).Nkind = N_Not_In
2152 or else NT (N).Nkind = N_Or_Else);
2156 function Rounded_Result
2157 (N : Node_Id) return Boolean is
2159 pragma Assert (False
2160 or else NT (N).Nkind = N_Op_Divide
2161 or else NT (N).Nkind = N_Op_Multiply
2162 or else NT (N).Nkind = N_Type_Conversion);
2167 (N : Node_Id) return Node_Id is
2169 pragma Assert (False
2170 or else NT (N).Nkind = N_Defining_Character_Literal
2171 or else NT (N).Nkind = N_Defining_Identifier
2172 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2176 function Select_Alternatives
2177 (N : Node_Id) return List_Id is
2179 pragma Assert (False
2180 or else NT (N).Nkind = N_Selective_Accept);
2182 end Select_Alternatives;
2184 function Selector_Name
2185 (N : Node_Id) return Node_Id is
2187 pragma Assert (False
2188 or else NT (N).Nkind = N_Expanded_Name
2189 or else NT (N).Nkind = N_Generic_Association
2190 or else NT (N).Nkind = N_Parameter_Association
2191 or else NT (N).Nkind = N_Selected_Component);
2195 function Selector_Names
2196 (N : Node_Id) return List_Id is
2198 pragma Assert (False
2199 or else NT (N).Nkind = N_Discriminant_Association);
2203 function Shift_Count_OK
2204 (N : Node_Id) return Boolean is
2206 pragma Assert (False
2207 or else NT (N).Nkind = N_Op_Rotate_Left
2208 or else NT (N).Nkind = N_Op_Rotate_Right
2209 or else NT (N).Nkind = N_Op_Shift_Left
2210 or else NT (N).Nkind = N_Op_Shift_Right
2211 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2215 function Source_Type
2216 (N : Node_Id) return Entity_Id is
2218 pragma Assert (False
2219 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2223 function Specification
2224 (N : Node_Id) return Node_Id is
2226 pragma Assert (False
2227 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2228 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2229 or else NT (N).Nkind = N_Generic_Package_Declaration
2230 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2231 or else NT (N).Nkind = N_Package_Declaration
2232 or else NT (N).Nkind = N_Subprogram_Body
2233 or else NT (N).Nkind = N_Subprogram_Body_Stub
2234 or else NT (N).Nkind = N_Subprogram_Declaration
2235 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2240 (N : Node_Id) return List_Id is
2242 pragma Assert (False
2243 or else NT (N).Nkind = N_Abortable_Part
2244 or else NT (N).Nkind = N_Accept_Alternative
2245 or else NT (N).Nkind = N_Case_Statement_Alternative
2246 or else NT (N).Nkind = N_Delay_Alternative
2247 or else NT (N).Nkind = N_Entry_Call_Alternative
2248 or else NT (N).Nkind = N_Exception_Handler
2249 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2250 or else NT (N).Nkind = N_Loop_Statement
2251 or else NT (N).Nkind = N_Triggering_Alternative);
2255 function Static_Processing_OK
2256 (N : Node_Id) return Boolean is
2258 pragma Assert (False
2259 or else NT (N).Nkind = N_Aggregate);
2261 end Static_Processing_OK;
2263 function Storage_Pool
2264 (N : Node_Id) return Node_Id is
2266 pragma Assert (False
2267 or else NT (N).Nkind = N_Allocator
2268 or else NT (N).Nkind = N_Free_Statement
2269 or else NT (N).Nkind = N_Return_Statement);
2274 (N : Node_Id) return String_Id is
2276 pragma Assert (False
2277 or else NT (N).Nkind = N_Operator_Symbol
2278 or else NT (N).Nkind = N_String_Literal);
2282 function Subtype_Indication
2283 (N : Node_Id) return Node_Id is
2285 pragma Assert (False
2286 or else NT (N).Nkind = N_Access_To_Object_Definition
2287 or else NT (N).Nkind = N_Component_Declaration
2288 or else NT (N).Nkind = N_Constrained_Array_Definition
2289 or else NT (N).Nkind = N_Derived_Type_Definition
2290 or else NT (N).Nkind = N_Private_Extension_Declaration
2291 or else NT (N).Nkind = N_Subtype_Declaration
2292 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2294 end Subtype_Indication;
2296 function Subtype_Mark
2297 (N : Node_Id) return Node_Id is
2299 pragma Assert (False
2300 or else NT (N).Nkind = N_Access_Definition
2301 or else NT (N).Nkind = N_Access_Function_Definition
2302 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2303 or else NT (N).Nkind = N_Formal_Object_Declaration
2304 or else NT (N).Nkind = N_Function_Specification
2305 or else NT (N).Nkind = N_Object_Renaming_Declaration
2306 or else NT (N).Nkind = N_Qualified_Expression
2307 or else NT (N).Nkind = N_Subtype_Indication
2308 or else NT (N).Nkind = N_Type_Conversion
2309 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2313 function Subtype_Marks
2314 (N : Node_Id) return List_Id is
2316 pragma Assert (False
2317 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2318 or else NT (N).Nkind = N_Use_Type_Clause);
2322 function Tagged_Present
2323 (N : Node_Id) return Boolean is
2325 pragma Assert (False
2326 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2327 or else NT (N).Nkind = N_Private_Type_Declaration
2328 or else NT (N).Nkind = N_Record_Definition
2329 or else NT (N).Nkind = N_With_Type_Clause);
2333 function Target_Type
2334 (N : Node_Id) return Entity_Id is
2336 pragma Assert (False
2337 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2341 function Task_Body_Procedure
2342 (N : Node_Id) return Entity_Id is
2344 pragma Assert (False
2345 or else NT (N).Nkind = N_Task_Type_Declaration);
2347 end Task_Body_Procedure;
2349 function Task_Definition
2350 (N : Node_Id) return Node_Id is
2352 pragma Assert (False
2353 or else NT (N).Nkind = N_Single_Task_Declaration
2354 or else NT (N).Nkind = N_Task_Type_Declaration);
2356 end Task_Definition;
2358 function Then_Actions
2359 (N : Node_Id) return List_Id is
2361 pragma Assert (False
2362 or else NT (N).Nkind = N_Conditional_Expression);
2366 function Then_Statements
2367 (N : Node_Id) return List_Id is
2369 pragma Assert (False
2370 or else NT (N).Nkind = N_Elsif_Part
2371 or else NT (N).Nkind = N_If_Statement);
2373 end Then_Statements;
2375 function Treat_Fixed_As_Integer
2376 (N : Node_Id) return Boolean is
2378 pragma Assert (False
2379 or else NT (N).Nkind = N_Op_Divide
2380 or else NT (N).Nkind = N_Op_Mod
2381 or else NT (N).Nkind = N_Op_Multiply
2382 or else NT (N).Nkind = N_Op_Rem);
2384 end Treat_Fixed_As_Integer;
2386 function Triggering_Alternative
2387 (N : Node_Id) return Node_Id is
2389 pragma Assert (False
2390 or else NT (N).Nkind = N_Asynchronous_Select);
2392 end Triggering_Alternative;
2394 function Triggering_Statement
2395 (N : Node_Id) return Node_Id is
2397 pragma Assert (False
2398 or else NT (N).Nkind = N_Triggering_Alternative);
2400 end Triggering_Statement;
2403 (N : Node_Id) return Elist_Id is
2405 pragma Assert (False
2406 or else NT (N).Nkind = N_Freeze_Entity);
2410 function Type_Definition
2411 (N : Node_Id) return Node_Id is
2413 pragma Assert (False
2414 or else NT (N).Nkind = N_Full_Type_Declaration);
2416 end Type_Definition;
2419 (N : Node_Id) return Node_Id is
2421 pragma Assert (False
2422 or else NT (N).Nkind = N_Compilation_Unit);
2426 function Unknown_Discriminants_Present
2427 (N : Node_Id) return Boolean is
2429 pragma Assert (False
2430 or else NT (N).Nkind = N_Formal_Type_Declaration
2431 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2432 or else NT (N).Nkind = N_Private_Extension_Declaration
2433 or else NT (N).Nkind = N_Private_Type_Declaration);
2435 end Unknown_Discriminants_Present;
2437 function Unreferenced_In_Spec
2438 (N : Node_Id) return Boolean is
2440 pragma Assert (False
2441 or else NT (N).Nkind = N_With_Clause);
2443 end Unreferenced_In_Spec;
2445 function Variant_Part
2446 (N : Node_Id) return Node_Id is
2448 pragma Assert (False
2449 or else NT (N).Nkind = N_Component_List);
2454 (N : Node_Id) return List_Id is
2456 pragma Assert (False
2457 or else NT (N).Nkind = N_Variant_Part);
2461 function Visible_Declarations
2462 (N : Node_Id) return List_Id is
2464 pragma Assert (False
2465 or else NT (N).Nkind = N_Package_Specification
2466 or else NT (N).Nkind = N_Protected_Definition
2467 or else NT (N).Nkind = N_Task_Definition);
2469 end Visible_Declarations;
2471 function Was_Originally_Stub
2472 (N : Node_Id) return Boolean is
2474 pragma Assert (False
2475 or else NT (N).Nkind = N_Package_Body
2476 or else NT (N).Nkind = N_Protected_Body
2477 or else NT (N).Nkind = N_Subprogram_Body
2478 or else NT (N).Nkind = N_Task_Body);
2480 end Was_Originally_Stub;
2482 function Zero_Cost_Handling
2483 (N : Node_Id) return Boolean is
2485 pragma Assert (False
2486 or else NT (N).Nkind = N_Exception_Handler
2487 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2489 end Zero_Cost_Handling;
2491 --------------------------
2492 -- Field Set Procedures --
2493 --------------------------
2495 procedure Set_ABE_Is_Certain
2496 (N : Node_Id; Val : Boolean := True) is
2498 pragma Assert (False
2499 or else NT (N).Nkind = N_Formal_Package_Declaration
2500 or else NT (N).Nkind = N_Function_Call
2501 or else NT (N).Nkind = N_Function_Instantiation
2502 or else NT (N).Nkind = N_Package_Instantiation
2503 or else NT (N).Nkind = N_Procedure_Call_Statement
2504 or else NT (N).Nkind = N_Procedure_Instantiation);
2505 Set_Flag18 (N, Val);
2506 end Set_ABE_Is_Certain;
2508 procedure Set_Abort_Present
2509 (N : Node_Id; Val : Boolean := True) is
2511 pragma Assert (False
2512 or else NT (N).Nkind = N_Requeue_Statement);
2513 Set_Flag15 (N, Val);
2514 end Set_Abort_Present;
2516 procedure Set_Abortable_Part
2517 (N : Node_Id; Val : Node_Id) is
2519 pragma Assert (False
2520 or else NT (N).Nkind = N_Asynchronous_Select);
2521 Set_Node2_With_Parent (N, Val);
2522 end Set_Abortable_Part;
2524 procedure Set_Abstract_Present
2525 (N : Node_Id; Val : Boolean := True) is
2527 pragma Assert (False
2528 or else NT (N).Nkind = N_Derived_Type_Definition
2529 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2530 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2531 or else NT (N).Nkind = N_Private_Extension_Declaration
2532 or else NT (N).Nkind = N_Private_Type_Declaration
2533 or else NT (N).Nkind = N_Record_Definition);
2535 end Set_Abstract_Present;
2537 procedure Set_Accept_Handler_Records
2538 (N : Node_Id; Val : List_Id) is
2540 pragma Assert (False
2541 or else NT (N).Nkind = N_Accept_Alternative);
2542 Set_List5 (N, Val); -- semantic field, no parent set
2543 end Set_Accept_Handler_Records;
2545 procedure Set_Accept_Statement
2546 (N : Node_Id; Val : Node_Id) is
2548 pragma Assert (False
2549 or else NT (N).Nkind = N_Accept_Alternative);
2550 Set_Node2_With_Parent (N, Val);
2551 end Set_Accept_Statement;
2553 procedure Set_Access_Types_To_Process
2554 (N : Node_Id; Val : Elist_Id) is
2556 pragma Assert (False
2557 or else NT (N).Nkind = N_Freeze_Entity);
2558 Set_Elist2 (N, Val); -- semantic field, no parent set
2559 end Set_Access_Types_To_Process;
2561 procedure Set_Actions
2562 (N : Node_Id; Val : List_Id) is
2564 pragma Assert (False
2565 or else NT (N).Nkind = N_And_Then
2566 or else NT (N).Nkind = N_Compilation_Unit_Aux
2567 or else NT (N).Nkind = N_Freeze_Entity
2568 or else NT (N).Nkind = N_Or_Else);
2569 Set_List1_With_Parent (N, Val);
2572 procedure Set_Activation_Chain_Entity
2573 (N : Node_Id; Val : Node_Id) is
2575 pragma Assert (False
2576 or else NT (N).Nkind = N_Block_Statement
2577 or else NT (N).Nkind = N_Entry_Body
2578 or else NT (N).Nkind = N_Generic_Package_Declaration
2579 or else NT (N).Nkind = N_Package_Declaration
2580 or else NT (N).Nkind = N_Subprogram_Body
2581 or else NT (N).Nkind = N_Task_Body);
2582 Set_Node3 (N, Val); -- semantic field, no parent set
2583 end Set_Activation_Chain_Entity;
2585 procedure Set_Acts_As_Spec
2586 (N : Node_Id; Val : Boolean := True) is
2588 pragma Assert (False
2589 or else NT (N).Nkind = N_Compilation_Unit
2590 or else NT (N).Nkind = N_Subprogram_Body);
2592 end Set_Acts_As_Spec;
2594 procedure Set_Aggregate_Bounds
2595 (N : Node_Id; Val : Node_Id) is
2597 pragma Assert (False
2598 or else NT (N).Nkind = N_Aggregate);
2599 Set_Node3 (N, Val); -- semantic field, no parent set
2600 end Set_Aggregate_Bounds;
2602 procedure Set_Aliased_Present
2603 (N : Node_Id; Val : Boolean := True) is
2605 pragma Assert (False
2606 or else NT (N).Nkind = N_Component_Declaration
2607 or else NT (N).Nkind = N_Constrained_Array_Definition
2608 or else NT (N).Nkind = N_Object_Declaration
2609 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2611 end Set_Aliased_Present;
2613 procedure Set_All_Others
2614 (N : Node_Id; Val : Boolean := True) is
2616 pragma Assert (False
2617 or else NT (N).Nkind = N_Others_Choice);
2618 Set_Flag11 (N, Val);
2621 procedure Set_All_Present
2622 (N : Node_Id; Val : Boolean := True) is
2624 pragma Assert (False
2625 or else NT (N).Nkind = N_Access_To_Object_Definition);
2626 Set_Flag15 (N, Val);
2627 end Set_All_Present;
2629 procedure Set_Alternatives
2630 (N : Node_Id; Val : List_Id) is
2632 pragma Assert (False
2633 or else NT (N).Nkind = N_Case_Statement);
2634 Set_List4_With_Parent (N, Val);
2635 end Set_Alternatives;
2637 procedure Set_Ancestor_Part
2638 (N : Node_Id; Val : Node_Id) is
2640 pragma Assert (False
2641 or else NT (N).Nkind = N_Extension_Aggregate);
2642 Set_Node3_With_Parent (N, Val);
2643 end Set_Ancestor_Part;
2645 procedure Set_Array_Aggregate
2646 (N : Node_Id; Val : Node_Id) is
2648 pragma Assert (False
2649 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2650 Set_Node3_With_Parent (N, Val);
2651 end Set_Array_Aggregate;
2653 procedure Set_Assignment_OK
2654 (N : Node_Id; Val : Boolean := True) is
2656 pragma Assert (False
2657 or else NT (N).Nkind = N_Object_Declaration
2658 or else NT (N).Nkind in N_Subexpr);
2659 Set_Flag15 (N, Val);
2660 end Set_Assignment_OK;
2662 procedure Set_Associated_Node
2663 (N : Node_Id; Val : Node_Id) is
2665 pragma Assert (False
2666 or else NT (N).Nkind in N_Has_Entity
2667 or else NT (N).Nkind = N_Aggregate
2668 or else NT (N).Nkind = N_Extension_Aggregate
2669 or else NT (N).Nkind = N_Selected_Component);
2670 Set_Node4 (N, Val); -- semantic field, no parent set
2671 end Set_Associated_Node;
2673 procedure Set_At_End_Proc
2674 (N : Node_Id; Val : Node_Id) is
2676 pragma Assert (False
2677 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2679 end Set_At_End_Proc;
2681 procedure Set_Attribute_Name
2682 (N : Node_Id; Val : Name_Id) is
2684 pragma Assert (False
2685 or else NT (N).Nkind = N_Attribute_Reference);
2687 end Set_Attribute_Name;
2689 procedure Set_Aux_Decls_Node
2690 (N : Node_Id; Val : Node_Id) is
2692 pragma Assert (False
2693 or else NT (N).Nkind = N_Compilation_Unit);
2694 Set_Node5_With_Parent (N, Val);
2695 end Set_Aux_Decls_Node;
2697 procedure Set_Backwards_OK
2698 (N : Node_Id; Val : Boolean := True) is
2700 pragma Assert (False
2701 or else NT (N).Nkind = N_Assignment_Statement);
2703 end Set_Backwards_OK;
2705 procedure Set_Bad_Is_Detected
2706 (N : Node_Id; Val : Boolean := True) is
2708 pragma Assert (False
2709 or else NT (N).Nkind = N_Subprogram_Body);
2710 Set_Flag15 (N, Val);
2711 end Set_Bad_Is_Detected;
2713 procedure Set_Body_Required
2714 (N : Node_Id; Val : Boolean := True) is
2716 pragma Assert (False
2717 or else NT (N).Nkind = N_Compilation_Unit);
2718 Set_Flag13 (N, Val);
2719 end Set_Body_Required;
2721 procedure Set_Body_To_Inline
2722 (N : Node_Id; Val : Node_Id) is
2724 pragma Assert (False
2725 or else NT (N).Nkind = N_Subprogram_Declaration);
2727 end Set_Body_To_Inline;
2729 procedure Set_Box_Present
2730 (N : Node_Id; Val : Boolean := True) is
2732 pragma Assert (False
2733 or else NT (N).Nkind = N_Component_Association
2734 or else NT (N).Nkind = N_Formal_Package_Declaration
2735 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2736 Set_Flag15 (N, Val);
2737 end Set_Box_Present;
2739 procedure Set_By_Ref
2740 (N : Node_Id; Val : Boolean := True) is
2742 pragma Assert (False
2743 or else NT (N).Nkind = N_Return_Statement);
2747 procedure Set_Char_Literal_Value
2748 (N : Node_Id; Val : Char_Code) is
2750 pragma Assert (False
2751 or else NT (N).Nkind = N_Character_Literal);
2752 Set_Char_Code2 (N, Val);
2753 end Set_Char_Literal_Value;
2756 (N : Node_Id; Val : Name_Id) is
2758 pragma Assert (False
2759 or else NT (N).Nkind in N_Has_Chars);
2763 procedure Set_Check_Address_Alignment
2764 (N : Node_Id; Val : Boolean := True) is
2766 pragma Assert (False
2767 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2768 Set_Flag11 (N, Val);
2769 end Set_Check_Address_Alignment;
2771 procedure Set_Choice_Parameter
2772 (N : Node_Id; Val : Node_Id) is
2774 pragma Assert (False
2775 or else NT (N).Nkind = N_Exception_Handler);
2776 Set_Node2_With_Parent (N, Val);
2777 end Set_Choice_Parameter;
2779 procedure Set_Choices
2780 (N : Node_Id; Val : List_Id) is
2782 pragma Assert (False
2783 or else NT (N).Nkind = N_Component_Association);
2784 Set_List1_With_Parent (N, Val);
2787 procedure Set_Compile_Time_Known_Aggregate
2788 (N : Node_Id; Val : Boolean := True) is
2790 pragma Assert (False
2791 or else NT (N).Nkind = N_Aggregate);
2792 Set_Flag18 (N, Val);
2793 end Set_Compile_Time_Known_Aggregate;
2795 procedure Set_Component_Associations
2796 (N : Node_Id; Val : List_Id) is
2798 pragma Assert (False
2799 or else NT (N).Nkind = N_Aggregate
2800 or else NT (N).Nkind = N_Extension_Aggregate);
2801 Set_List2_With_Parent (N, Val);
2802 end Set_Component_Associations;
2804 procedure Set_Component_Clauses
2805 (N : Node_Id; Val : List_Id) is
2807 pragma Assert (False
2808 or else NT (N).Nkind = N_Record_Representation_Clause);
2809 Set_List3_With_Parent (N, Val);
2810 end Set_Component_Clauses;
2812 procedure Set_Component_Items
2813 (N : Node_Id; Val : List_Id) is
2815 pragma Assert (False
2816 or else NT (N).Nkind = N_Component_List);
2817 Set_List3_With_Parent (N, Val);
2818 end Set_Component_Items;
2820 procedure Set_Component_List
2821 (N : Node_Id; Val : Node_Id) is
2823 pragma Assert (False
2824 or else NT (N).Nkind = N_Record_Definition
2825 or else NT (N).Nkind = N_Variant);
2826 Set_Node1_With_Parent (N, Val);
2827 end Set_Component_List;
2829 procedure Set_Component_Name
2830 (N : Node_Id; Val : Node_Id) is
2832 pragma Assert (False
2833 or else NT (N).Nkind = N_Component_Clause);
2834 Set_Node1_With_Parent (N, Val);
2835 end Set_Component_Name;
2837 procedure Set_Condition
2838 (N : Node_Id; Val : Node_Id) is
2840 pragma Assert (False
2841 or else NT (N).Nkind = N_Accept_Alternative
2842 or else NT (N).Nkind = N_Delay_Alternative
2843 or else NT (N).Nkind = N_Elsif_Part
2844 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2845 or else NT (N).Nkind = N_Exit_Statement
2846 or else NT (N).Nkind = N_If_Statement
2847 or else NT (N).Nkind = N_Iteration_Scheme
2848 or else NT (N).Nkind = N_Raise_Constraint_Error
2849 or else NT (N).Nkind = N_Raise_Program_Error
2850 or else NT (N).Nkind = N_Raise_Storage_Error
2851 or else NT (N).Nkind = N_Terminate_Alternative);
2852 Set_Node1_With_Parent (N, Val);
2855 procedure Set_Condition_Actions
2856 (N : Node_Id; Val : List_Id) is
2858 pragma Assert (False
2859 or else NT (N).Nkind = N_Elsif_Part
2860 or else NT (N).Nkind = N_Iteration_Scheme);
2861 Set_List3 (N, Val); -- semantic field, no parent set
2862 end Set_Condition_Actions;
2864 procedure Set_Config_Pragmas
2865 (N : Node_Id; Val : List_Id) is
2867 pragma Assert (False
2868 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2869 Set_List4_With_Parent (N, Val);
2870 end Set_Config_Pragmas;
2872 procedure Set_Constant_Present
2873 (N : Node_Id; Val : Boolean := True) is
2875 pragma Assert (False
2876 or else NT (N).Nkind = N_Access_To_Object_Definition
2877 or else NT (N).Nkind = N_Object_Declaration);
2878 Set_Flag17 (N, Val);
2879 end Set_Constant_Present;
2881 procedure Set_Constraint
2882 (N : Node_Id; Val : Node_Id) is
2884 pragma Assert (False
2885 or else NT (N).Nkind = N_Subtype_Indication);
2886 Set_Node3_With_Parent (N, Val);
2889 procedure Set_Constraints
2890 (N : Node_Id; Val : List_Id) is
2892 pragma Assert (False
2893 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2894 Set_List1_With_Parent (N, Val);
2895 end Set_Constraints;
2897 procedure Set_Context_Installed
2898 (N : Node_Id; Val : Boolean := True) is
2900 pragma Assert (False
2901 or else NT (N).Nkind = N_With_Clause);
2902 Set_Flag13 (N, Val);
2903 end Set_Context_Installed;
2905 procedure Set_Context_Items
2906 (N : Node_Id; Val : List_Id) is
2908 pragma Assert (False
2909 or else NT (N).Nkind = N_Compilation_Unit);
2910 Set_List1_With_Parent (N, Val);
2911 end Set_Context_Items;
2913 procedure Set_Controlling_Argument
2914 (N : Node_Id; Val : Node_Id) is
2916 pragma Assert (False
2917 or else NT (N).Nkind = N_Function_Call
2918 or else NT (N).Nkind = N_Procedure_Call_Statement);
2919 Set_Node1 (N, Val); -- semantic field, no parent set
2920 end Set_Controlling_Argument;
2922 procedure Set_Conversion_OK
2923 (N : Node_Id; Val : Boolean := True) is
2925 pragma Assert (False
2926 or else NT (N).Nkind = N_Type_Conversion);
2927 Set_Flag14 (N, Val);
2928 end Set_Conversion_OK;
2930 procedure Set_Corresponding_Body
2931 (N : Node_Id; Val : Node_Id) is
2933 pragma Assert (False
2934 or else NT (N).Nkind = N_Entry_Declaration
2935 or else NT (N).Nkind = N_Generic_Package_Declaration
2936 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2937 or else NT (N).Nkind = N_Package_Body_Stub
2938 or else NT (N).Nkind = N_Package_Declaration
2939 or else NT (N).Nkind = N_Protected_Body_Stub
2940 or else NT (N).Nkind = N_Protected_Type_Declaration
2941 or else NT (N).Nkind = N_Subprogram_Body_Stub
2942 or else NT (N).Nkind = N_Subprogram_Declaration
2943 or else NT (N).Nkind = N_Task_Body_Stub
2944 or else NT (N).Nkind = N_Task_Type_Declaration);
2945 Set_Node5 (N, Val); -- semantic field, no parent set
2946 end Set_Corresponding_Body;
2948 procedure Set_Corresponding_Generic_Association
2949 (N : Node_Id; Val : Node_Id) is
2951 pragma Assert (False
2952 or else NT (N).Nkind = N_Object_Declaration
2953 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2954 Set_Node5 (N, Val); -- semantic field, no parent set
2955 end Set_Corresponding_Generic_Association;
2956 procedure Set_Corresponding_Integer_Value
2957 (N : Node_Id; Val : Uint) is
2959 pragma Assert (False
2960 or else NT (N).Nkind = N_Real_Literal);
2961 Set_Uint4 (N, Val); -- semantic field, no parent set
2962 end Set_Corresponding_Integer_Value;
2964 procedure Set_Corresponding_Spec
2965 (N : Node_Id; Val : Node_Id) is
2967 pragma Assert (False
2968 or else NT (N).Nkind = N_Package_Body
2969 or else NT (N).Nkind = N_Protected_Body
2970 or else NT (N).Nkind = N_Subprogram_Body
2971 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
2972 or else NT (N).Nkind = N_Task_Body
2973 or else NT (N).Nkind = N_With_Clause);
2974 Set_Node5 (N, Val); -- semantic field, no parent set
2975 end Set_Corresponding_Spec;
2977 procedure Set_Corresponding_Stub
2978 (N : Node_Id; Val : Node_Id) is
2980 pragma Assert (False
2981 or else NT (N).Nkind = N_Subunit);
2983 end Set_Corresponding_Stub;
2985 procedure Set_Dcheck_Function
2986 (N : Node_Id; Val : Entity_Id) is
2988 pragma Assert (False
2989 or else NT (N).Nkind = N_Variant);
2990 Set_Node5 (N, Val); -- semantic field, no parent set
2991 end Set_Dcheck_Function;
2993 procedure Set_Debug_Statement
2994 (N : Node_Id; Val : Node_Id) is
2996 pragma Assert (False
2997 or else NT (N).Nkind = N_Pragma);
2998 Set_Node3_With_Parent (N, Val);
2999 end Set_Debug_Statement;
3001 procedure Set_Declarations
3002 (N : Node_Id; Val : List_Id) is
3004 pragma Assert (False
3005 or else NT (N).Nkind = N_Accept_Statement
3006 or else NT (N).Nkind = N_Block_Statement
3007 or else NT (N).Nkind = N_Compilation_Unit_Aux
3008 or else NT (N).Nkind = N_Entry_Body
3009 or else NT (N).Nkind = N_Package_Body
3010 or else NT (N).Nkind = N_Protected_Body
3011 or else NT (N).Nkind = N_Subprogram_Body
3012 or else NT (N).Nkind = N_Task_Body);
3013 Set_List2_With_Parent (N, Val);
3014 end Set_Declarations;
3016 procedure Set_Default_Expression
3017 (N : Node_Id; Val : Node_Id) is
3019 pragma Assert (False
3020 or else NT (N).Nkind = N_Parameter_Specification);
3021 Set_Node5 (N, Val); -- semantic field, no parent set
3022 end Set_Default_Expression;
3024 procedure Set_Default_Name
3025 (N : Node_Id; Val : Node_Id) is
3027 pragma Assert (False
3028 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3029 Set_Node2_With_Parent (N, Val);
3030 end Set_Default_Name;
3032 procedure Set_Defining_Identifier
3033 (N : Node_Id; Val : Entity_Id) is
3035 pragma Assert (False
3036 or else NT (N).Nkind = N_Component_Declaration
3037 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3038 or else NT (N).Nkind = N_Discriminant_Specification
3039 or else NT (N).Nkind = N_Entry_Body
3040 or else NT (N).Nkind = N_Entry_Declaration
3041 or else NT (N).Nkind = N_Entry_Index_Specification
3042 or else NT (N).Nkind = N_Exception_Declaration
3043 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3044 or else NT (N).Nkind = N_Formal_Object_Declaration
3045 or else NT (N).Nkind = N_Formal_Package_Declaration
3046 or else NT (N).Nkind = N_Formal_Type_Declaration
3047 or else NT (N).Nkind = N_Full_Type_Declaration
3048 or else NT (N).Nkind = N_Implicit_Label_Declaration
3049 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3050 or else NT (N).Nkind = N_Loop_Parameter_Specification
3051 or else NT (N).Nkind = N_Number_Declaration
3052 or else NT (N).Nkind = N_Object_Declaration
3053 or else NT (N).Nkind = N_Object_Renaming_Declaration
3054 or else NT (N).Nkind = N_Package_Body_Stub
3055 or else NT (N).Nkind = N_Parameter_Specification
3056 or else NT (N).Nkind = N_Private_Extension_Declaration
3057 or else NT (N).Nkind = N_Private_Type_Declaration
3058 or else NT (N).Nkind = N_Protected_Body
3059 or else NT (N).Nkind = N_Protected_Body_Stub
3060 or else NT (N).Nkind = N_Protected_Type_Declaration
3061 or else NT (N).Nkind = N_Single_Protected_Declaration
3062 or else NT (N).Nkind = N_Single_Task_Declaration
3063 or else NT (N).Nkind = N_Subtype_Declaration
3064 or else NT (N).Nkind = N_Task_Body
3065 or else NT (N).Nkind = N_Task_Body_Stub
3066 or else NT (N).Nkind = N_Task_Type_Declaration);
3067 Set_Node1_With_Parent (N, Val);
3068 end Set_Defining_Identifier;
3070 procedure Set_Defining_Unit_Name
3071 (N : Node_Id; Val : Node_Id) is
3073 pragma Assert (False
3074 or else NT (N).Nkind = N_Function_Instantiation
3075 or else NT (N).Nkind = N_Function_Specification
3076 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3077 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3078 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3079 or else NT (N).Nkind = N_Package_Body
3080 or else NT (N).Nkind = N_Package_Instantiation
3081 or else NT (N).Nkind = N_Package_Renaming_Declaration
3082 or else NT (N).Nkind = N_Package_Specification
3083 or else NT (N).Nkind = N_Procedure_Instantiation
3084 or else NT (N).Nkind = N_Procedure_Specification);
3085 Set_Node1_With_Parent (N, Val);
3086 end Set_Defining_Unit_Name;
3088 procedure Set_Delay_Alternative
3089 (N : Node_Id; Val : Node_Id) is
3091 pragma Assert (False
3092 or else NT (N).Nkind = N_Timed_Entry_Call);
3093 Set_Node4_With_Parent (N, Val);
3094 end Set_Delay_Alternative;
3096 procedure Set_Delay_Finalize_Attach
3097 (N : Node_Id; Val : Boolean := True) is
3099 pragma Assert (False
3100 or else NT (N).Nkind = N_Object_Declaration);
3101 Set_Flag14 (N, Val);
3102 end Set_Delay_Finalize_Attach;
3104 procedure Set_Delay_Statement
3105 (N : Node_Id; Val : Node_Id) is
3107 pragma Assert (False
3108 or else NT (N).Nkind = N_Delay_Alternative);
3109 Set_Node2_With_Parent (N, Val);
3110 end Set_Delay_Statement;
3112 procedure Set_Delta_Expression
3113 (N : Node_Id; Val : Node_Id) is
3115 pragma Assert (False
3116 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3117 or else NT (N).Nkind = N_Delta_Constraint
3118 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3119 Set_Node3_With_Parent (N, Val);
3120 end Set_Delta_Expression;
3122 procedure Set_Digits_Expression
3123 (N : Node_Id; Val : Node_Id) is
3125 pragma Assert (False
3126 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3127 or else NT (N).Nkind = N_Digits_Constraint
3128 or else NT (N).Nkind = N_Floating_Point_Definition);
3129 Set_Node2_With_Parent (N, Val);
3130 end Set_Digits_Expression;
3132 procedure Set_Discr_Check_Funcs_Built
3133 (N : Node_Id; Val : Boolean := True) is
3135 pragma Assert (False
3136 or else NT (N).Nkind = N_Full_Type_Declaration);
3137 Set_Flag11 (N, Val);
3138 end Set_Discr_Check_Funcs_Built;
3140 procedure Set_Discrete_Choices
3141 (N : Node_Id; Val : List_Id) is
3143 pragma Assert (False
3144 or else NT (N).Nkind = N_Case_Statement_Alternative
3145 or else NT (N).Nkind = N_Variant);
3146 Set_List4_With_Parent (N, Val);
3147 end Set_Discrete_Choices;
3149 procedure Set_Discrete_Range
3150 (N : Node_Id; Val : Node_Id) is
3152 pragma Assert (False
3153 or else NT (N).Nkind = N_Slice);
3154 Set_Node4_With_Parent (N, Val);
3155 end Set_Discrete_Range;
3157 procedure Set_Discrete_Subtype_Definition
3158 (N : Node_Id; Val : Node_Id) is
3160 pragma Assert (False
3161 or else NT (N).Nkind = N_Entry_Declaration
3162 or else NT (N).Nkind = N_Entry_Index_Specification
3163 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3164 Set_Node4_With_Parent (N, Val);
3165 end Set_Discrete_Subtype_Definition;
3167 procedure Set_Discrete_Subtype_Definitions
3168 (N : Node_Id; Val : List_Id) is
3170 pragma Assert (False
3171 or else NT (N).Nkind = N_Constrained_Array_Definition);
3172 Set_List2_With_Parent (N, Val);
3173 end Set_Discrete_Subtype_Definitions;
3175 procedure Set_Discriminant_Specifications
3176 (N : Node_Id; Val : List_Id) is
3178 pragma Assert (False
3179 or else NT (N).Nkind = N_Formal_Type_Declaration
3180 or else NT (N).Nkind = N_Full_Type_Declaration
3181 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3182 or else NT (N).Nkind = N_Private_Extension_Declaration
3183 or else NT (N).Nkind = N_Private_Type_Declaration
3184 or else NT (N).Nkind = N_Protected_Type_Declaration
3185 or else NT (N).Nkind = N_Task_Type_Declaration);
3186 Set_List4_With_Parent (N, Val);
3187 end Set_Discriminant_Specifications;
3189 procedure Set_Discriminant_Type
3190 (N : Node_Id; Val : Node_Id) is
3192 pragma Assert (False
3193 or else NT (N).Nkind = N_Discriminant_Specification);
3194 Set_Node5_With_Parent (N, Val);
3195 end Set_Discriminant_Type;
3197 procedure Set_Do_Accessibility_Check
3198 (N : Node_Id; Val : Boolean := True) is
3200 pragma Assert (False
3201 or else NT (N).Nkind = N_Parameter_Specification);
3202 Set_Flag13 (N, Val);
3203 end Set_Do_Accessibility_Check;
3205 procedure Set_Do_Discriminant_Check
3206 (N : Node_Id; Val : Boolean := True) is
3208 pragma Assert (False
3209 or else NT (N).Nkind = N_Selected_Component);
3210 Set_Flag13 (N, Val);
3211 end Set_Do_Discriminant_Check;
3213 procedure Set_Do_Division_Check
3214 (N : Node_Id; Val : Boolean := True) is
3216 pragma Assert (False
3217 or else NT (N).Nkind = N_Op_Divide
3218 or else NT (N).Nkind = N_Op_Mod
3219 or else NT (N).Nkind = N_Op_Rem);
3220 Set_Flag13 (N, Val);
3221 end Set_Do_Division_Check;
3223 procedure Set_Do_Length_Check
3224 (N : Node_Id; Val : Boolean := True) is
3226 pragma Assert (False
3227 or else NT (N).Nkind = N_Assignment_Statement
3228 or else NT (N).Nkind = N_Op_And
3229 or else NT (N).Nkind = N_Op_Or
3230 or else NT (N).Nkind = N_Op_Xor
3231 or else NT (N).Nkind = N_Type_Conversion);
3233 end Set_Do_Length_Check;
3235 procedure Set_Do_Overflow_Check
3236 (N : Node_Id; Val : Boolean := True) is
3238 pragma Assert (False
3239 or else NT (N).Nkind in N_Op
3240 or else NT (N).Nkind = N_Attribute_Reference
3241 or else NT (N).Nkind = N_Type_Conversion);
3242 Set_Flag17 (N, Val);
3243 end Set_Do_Overflow_Check;
3245 procedure Set_Do_Range_Check
3246 (N : Node_Id; Val : Boolean := True) is
3248 pragma Assert (False
3249 or else NT (N).Nkind in N_Subexpr);
3251 end Set_Do_Range_Check;
3253 procedure Set_Do_Storage_Check
3254 (N : Node_Id; Val : Boolean := True) is
3256 pragma Assert (False
3257 or else NT (N).Nkind = N_Allocator
3258 or else NT (N).Nkind = N_Subprogram_Body);
3259 Set_Flag17 (N, Val);
3260 end Set_Do_Storage_Check;
3262 procedure Set_Do_Tag_Check
3263 (N : Node_Id; Val : Boolean := True) is
3265 pragma Assert (False
3266 or else NT (N).Nkind = N_Assignment_Statement
3267 or else NT (N).Nkind = N_Function_Call
3268 or else NT (N).Nkind = N_Procedure_Call_Statement
3269 or else NT (N).Nkind = N_Return_Statement
3270 or else NT (N).Nkind = N_Type_Conversion);
3271 Set_Flag13 (N, Val);
3272 end Set_Do_Tag_Check;
3274 procedure Set_Elaborate_All_Present
3275 (N : Node_Id; Val : Boolean := True) is
3277 pragma Assert (False
3278 or else NT (N).Nkind = N_With_Clause);
3279 Set_Flag15 (N, Val);
3280 end Set_Elaborate_All_Present;
3282 procedure Set_Elaborate_Present
3283 (N : Node_Id; Val : Boolean := True) is
3285 pragma Assert (False
3286 or else NT (N).Nkind = N_With_Clause);
3288 end Set_Elaborate_Present;
3290 procedure Set_Elaboration_Boolean
3291 (N : Node_Id; Val : Node_Id) is
3293 pragma Assert (False
3294 or else NT (N).Nkind = N_Function_Specification
3295 or else NT (N).Nkind = N_Procedure_Specification);
3297 end Set_Elaboration_Boolean;
3299 procedure Set_Else_Actions
3300 (N : Node_Id; Val : List_Id) is
3302 pragma Assert (False
3303 or else NT (N).Nkind = N_Conditional_Expression);
3304 Set_List3 (N, Val); -- semantic field, no parent set
3305 end Set_Else_Actions;
3307 procedure Set_Else_Statements
3308 (N : Node_Id; Val : List_Id) is
3310 pragma Assert (False
3311 or else NT (N).Nkind = N_Conditional_Entry_Call
3312 or else NT (N).Nkind = N_If_Statement
3313 or else NT (N).Nkind = N_Selective_Accept);
3314 Set_List4_With_Parent (N, Val);
3315 end Set_Else_Statements;
3317 procedure Set_Elsif_Parts
3318 (N : Node_Id; Val : List_Id) is
3320 pragma Assert (False
3321 or else NT (N).Nkind = N_If_Statement);
3322 Set_List3_With_Parent (N, Val);
3323 end Set_Elsif_Parts;
3325 procedure Set_Enclosing_Variant
3326 (N : Node_Id; Val : Node_Id) is
3328 pragma Assert (False
3329 or else NT (N).Nkind = N_Variant);
3330 Set_Node2 (N, Val); -- semantic field, no parent set
3331 end Set_Enclosing_Variant;
3333 procedure Set_End_Label
3334 (N : Node_Id; Val : Node_Id) is
3336 pragma Assert (False
3337 or else NT (N).Nkind = N_Enumeration_Type_Definition
3338 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3339 or else NT (N).Nkind = N_Loop_Statement
3340 or else NT (N).Nkind = N_Package_Specification
3341 or else NT (N).Nkind = N_Protected_Body
3342 or else NT (N).Nkind = N_Protected_Definition
3343 or else NT (N).Nkind = N_Record_Definition
3344 or else NT (N).Nkind = N_Task_Definition);
3345 Set_Node4_With_Parent (N, Val);
3348 procedure Set_End_Span
3349 (N : Node_Id; Val : Uint) is
3351 pragma Assert (False
3352 or else NT (N).Nkind = N_Case_Statement
3353 or else NT (N).Nkind = N_If_Statement);
3357 procedure Set_Entity
3358 (N : Node_Id; Val : Node_Id) is
3360 pragma Assert (False
3361 or else NT (N).Nkind in N_Has_Entity
3362 or else NT (N).Nkind = N_Freeze_Entity);
3363 Set_Node4 (N, Val); -- semantic field, no parent set
3366 procedure Set_Entry_Body_Formal_Part
3367 (N : Node_Id; Val : Node_Id) is
3369 pragma Assert (False
3370 or else NT (N).Nkind = N_Entry_Body);
3371 Set_Node5_With_Parent (N, Val);
3372 end Set_Entry_Body_Formal_Part;
3374 procedure Set_Entry_Call_Alternative
3375 (N : Node_Id; Val : Node_Id) is
3377 pragma Assert (False
3378 or else NT (N).Nkind = N_Conditional_Entry_Call
3379 or else NT (N).Nkind = N_Timed_Entry_Call);
3380 Set_Node1_With_Parent (N, Val);
3381 end Set_Entry_Call_Alternative;
3383 procedure Set_Entry_Call_Statement
3384 (N : Node_Id; Val : Node_Id) is
3386 pragma Assert (False
3387 or else NT (N).Nkind = N_Entry_Call_Alternative);
3388 Set_Node1_With_Parent (N, Val);
3389 end Set_Entry_Call_Statement;
3391 procedure Set_Entry_Direct_Name
3392 (N : Node_Id; Val : Node_Id) is
3394 pragma Assert (False
3395 or else NT (N).Nkind = N_Accept_Statement);
3396 Set_Node1_With_Parent (N, Val);
3397 end Set_Entry_Direct_Name;
3399 procedure Set_Entry_Index
3400 (N : Node_Id; Val : Node_Id) is
3402 pragma Assert (False
3403 or else NT (N).Nkind = N_Accept_Statement);
3404 Set_Node5_With_Parent (N, Val);
3405 end Set_Entry_Index;
3407 procedure Set_Entry_Index_Specification
3408 (N : Node_Id; Val : Node_Id) is
3410 pragma Assert (False
3411 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3412 Set_Node4_With_Parent (N, Val);
3413 end Set_Entry_Index_Specification;
3416 (N : Node_Id; Val : Node_Id) is
3418 pragma Assert (False
3419 or else NT (N).Nkind in N_Has_Etype);
3420 Set_Node5 (N, Val); -- semantic field, no parent set
3423 procedure Set_Exception_Choices
3424 (N : Node_Id; Val : List_Id) is
3426 pragma Assert (False
3427 or else NT (N).Nkind = N_Exception_Handler);
3428 Set_List4_With_Parent (N, Val);
3429 end Set_Exception_Choices;
3431 procedure Set_Exception_Handlers
3432 (N : Node_Id; Val : List_Id) is
3434 pragma Assert (False
3435 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3436 Set_List5_With_Parent (N, Val);
3437 end Set_Exception_Handlers;
3439 procedure Set_Exception_Junk
3440 (N : Node_Id; Val : Boolean := True) is
3442 pragma Assert (False
3443 or else NT (N).Nkind = N_Goto_Statement
3444 or else NT (N).Nkind = N_Label
3445 or else NT (N).Nkind = N_Object_Declaration
3446 or else NT (N).Nkind = N_Subtype_Declaration);
3447 Set_Flag11 (N, Val);
3448 end Set_Exception_Junk;
3450 procedure Set_Expansion_Delayed
3451 (N : Node_Id; Val : Boolean := True) is
3453 pragma Assert (False
3454 or else NT (N).Nkind = N_Aggregate
3455 or else NT (N).Nkind = N_Extension_Aggregate);
3456 Set_Flag11 (N, Val);
3457 end Set_Expansion_Delayed;
3459 procedure Set_Explicit_Actual_Parameter
3460 (N : Node_Id; Val : Node_Id) is
3462 pragma Assert (False
3463 or else NT (N).Nkind = N_Parameter_Association);
3464 Set_Node3_With_Parent (N, Val);
3465 end Set_Explicit_Actual_Parameter;
3467 procedure Set_Explicit_Generic_Actual_Parameter
3468 (N : Node_Id; Val : Node_Id) is
3470 pragma Assert (False
3471 or else NT (N).Nkind = N_Generic_Association);
3472 Set_Node1_With_Parent (N, Val);
3473 end Set_Explicit_Generic_Actual_Parameter;
3475 procedure Set_Expression
3476 (N : Node_Id; Val : Node_Id) is
3478 pragma Assert (False
3479 or else NT (N).Nkind = N_Allocator
3480 or else NT (N).Nkind = N_Assignment_Statement
3481 or else NT (N).Nkind = N_At_Clause
3482 or else NT (N).Nkind = N_Attribute_Definition_Clause
3483 or else NT (N).Nkind = N_Case_Statement
3484 or else NT (N).Nkind = N_Code_Statement
3485 or else NT (N).Nkind = N_Component_Association
3486 or else NT (N).Nkind = N_Component_Declaration
3487 or else NT (N).Nkind = N_Delay_Relative_Statement
3488 or else NT (N).Nkind = N_Delay_Until_Statement
3489 or else NT (N).Nkind = N_Discriminant_Association
3490 or else NT (N).Nkind = N_Discriminant_Specification
3491 or else NT (N).Nkind = N_Exception_Declaration
3492 or else NT (N).Nkind = N_Formal_Object_Declaration
3493 or else NT (N).Nkind = N_Free_Statement
3494 or else NT (N).Nkind = N_Mod_Clause
3495 or else NT (N).Nkind = N_Modular_Type_Definition
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_Parameter_Specification
3499 or else NT (N).Nkind = N_Pragma_Argument_Association
3500 or else NT (N).Nkind = N_Qualified_Expression
3501 or else NT (N).Nkind = N_Return_Statement
3502 or else NT (N).Nkind = N_Type_Conversion
3503 or else NT (N).Nkind = N_Unchecked_Expression
3504 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3505 Set_Node3_With_Parent (N, Val);
3508 procedure Set_Expressions
3509 (N : Node_Id; Val : List_Id) is
3511 pragma Assert (False
3512 or else NT (N).Nkind = N_Aggregate
3513 or else NT (N).Nkind = N_Attribute_Reference
3514 or else NT (N).Nkind = N_Conditional_Expression
3515 or else NT (N).Nkind = N_Extension_Aggregate
3516 or else NT (N).Nkind = N_Indexed_Component);
3517 Set_List1_With_Parent (N, Val);
3518 end Set_Expressions;
3520 procedure Set_First_Bit
3521 (N : Node_Id; Val : Node_Id) is
3523 pragma Assert (False
3524 or else NT (N).Nkind = N_Component_Clause);
3525 Set_Node3_With_Parent (N, Val);
3528 procedure Set_First_Inlined_Subprogram
3529 (N : Node_Id; Val : Entity_Id) is
3531 pragma Assert (False
3532 or else NT (N).Nkind = N_Compilation_Unit);
3533 Set_Node3 (N, Val); -- semantic field, no parent set
3534 end Set_First_Inlined_Subprogram;
3536 procedure Set_First_Name
3537 (N : Node_Id; Val : Boolean := True) is
3539 pragma Assert (False
3540 or else NT (N).Nkind = N_With_Clause);
3544 procedure Set_First_Named_Actual
3545 (N : Node_Id; Val : Node_Id) is
3547 pragma Assert (False
3548 or else NT (N).Nkind = N_Entry_Call_Statement
3549 or else NT (N).Nkind = N_Function_Call
3550 or else NT (N).Nkind = N_Procedure_Call_Statement);
3551 Set_Node4 (N, Val); -- semantic field, no parent set
3552 end Set_First_Named_Actual;
3554 procedure Set_First_Real_Statement
3555 (N : Node_Id; Val : Node_Id) is
3557 pragma Assert (False
3558 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3559 Set_Node2 (N, Val); -- semantic field, no parent set
3560 end Set_First_Real_Statement;
3562 procedure Set_First_Subtype_Link
3563 (N : Node_Id; Val : Entity_Id) is
3565 pragma Assert (False
3566 or else NT (N).Nkind = N_Freeze_Entity);
3567 Set_Node5 (N, Val); -- semantic field, no parent set
3568 end Set_First_Subtype_Link;
3570 procedure Set_Float_Truncate
3571 (N : Node_Id; Val : Boolean := True) is
3573 pragma Assert (False
3574 or else NT (N).Nkind = N_Type_Conversion);
3575 Set_Flag11 (N, Val);
3576 end Set_Float_Truncate;
3578 procedure Set_Formal_Type_Definition
3579 (N : Node_Id; Val : Node_Id) is
3581 pragma Assert (False
3582 or else NT (N).Nkind = N_Formal_Type_Declaration);
3583 Set_Node3_With_Parent (N, Val);
3584 end Set_Formal_Type_Definition;
3586 procedure Set_Forwards_OK
3587 (N : Node_Id; Val : Boolean := True) is
3589 pragma Assert (False
3590 or else NT (N).Nkind = N_Assignment_Statement);
3592 end Set_Forwards_OK;
3594 procedure Set_From_At_Mod
3595 (N : Node_Id; Val : Boolean := True) is
3597 pragma Assert (False
3598 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3600 end Set_From_At_Mod;
3602 procedure Set_Generic_Associations
3603 (N : Node_Id; Val : List_Id) is
3605 pragma Assert (False
3606 or else NT (N).Nkind = N_Formal_Package_Declaration
3607 or else NT (N).Nkind = N_Function_Instantiation
3608 or else NT (N).Nkind = N_Package_Instantiation
3609 or else NT (N).Nkind = N_Procedure_Instantiation);
3610 Set_List3_With_Parent (N, Val);
3611 end Set_Generic_Associations;
3613 procedure Set_Generic_Formal_Declarations
3614 (N : Node_Id; Val : List_Id) is
3616 pragma Assert (False
3617 or else NT (N).Nkind = N_Generic_Package_Declaration
3618 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3619 Set_List2_With_Parent (N, Val);
3620 end Set_Generic_Formal_Declarations;
3622 procedure Set_Generic_Parent
3623 (N : Node_Id; Val : Node_Id) is
3625 pragma Assert (False
3626 or else NT (N).Nkind = N_Function_Specification
3627 or else NT (N).Nkind = N_Package_Specification
3628 or else NT (N).Nkind = N_Procedure_Specification);
3630 end Set_Generic_Parent;
3632 procedure Set_Generic_Parent_Type
3633 (N : Node_Id; Val : Node_Id) is
3635 pragma Assert (False
3636 or else NT (N).Nkind = N_Subtype_Declaration);
3638 end Set_Generic_Parent_Type;
3640 procedure Set_Handled_Statement_Sequence
3641 (N : Node_Id; Val : Node_Id) is
3643 pragma Assert (False
3644 or else NT (N).Nkind = N_Accept_Statement
3645 or else NT (N).Nkind = N_Block_Statement
3646 or else NT (N).Nkind = N_Entry_Body
3647 or else NT (N).Nkind = N_Package_Body
3648 or else NT (N).Nkind = N_Subprogram_Body
3649 or else NT (N).Nkind = N_Task_Body);
3650 Set_Node4_With_Parent (N, Val);
3651 end Set_Handled_Statement_Sequence;
3653 procedure Set_Handler_List_Entry
3654 (N : Node_Id; Val : Node_Id) is
3656 pragma Assert (False
3657 or else NT (N).Nkind = N_Object_Declaration);
3659 end Set_Handler_List_Entry;
3661 procedure Set_Has_Created_Identifier
3662 (N : Node_Id; Val : Boolean := True) is
3664 pragma Assert (False
3665 or else NT (N).Nkind = N_Block_Statement
3666 or else NT (N).Nkind = N_Loop_Statement);
3667 Set_Flag15 (N, Val);
3668 end Set_Has_Created_Identifier;
3670 procedure Set_Has_Dynamic_Length_Check
3671 (N : Node_Id; Val : Boolean := True) is
3673 Set_Flag10 (N, Val);
3674 end Set_Has_Dynamic_Length_Check;
3676 procedure Set_Has_Dynamic_Range_Check
3677 (N : Node_Id; Val : Boolean := True) is
3679 Set_Flag12 (N, Val);
3680 end Set_Has_Dynamic_Range_Check;
3682 procedure Set_Has_No_Elaboration_Code
3683 (N : Node_Id; Val : Boolean := True) is
3685 pragma Assert (False
3686 or else NT (N).Nkind = N_Compilation_Unit);
3687 Set_Flag17 (N, Val);
3688 end Set_Has_No_Elaboration_Code;
3690 procedure Set_Has_Priority_Pragma
3691 (N : Node_Id; Val : Boolean := True) is
3693 pragma Assert (False
3694 or else NT (N).Nkind = N_Protected_Definition
3695 or else NT (N).Nkind = N_Subprogram_Body
3696 or else NT (N).Nkind = N_Task_Definition);
3698 end Set_Has_Priority_Pragma;
3700 procedure Set_Has_Private_View
3701 (N : Node_Id; Val : Boolean := True) is
3703 pragma Assert (False
3704 or else NT (N).Nkind in N_Op
3705 or else NT (N).Nkind = N_Character_Literal
3706 or else NT (N).Nkind = N_Expanded_Name
3707 or else NT (N).Nkind = N_Identifier
3708 or else NT (N).Nkind = N_Operator_Symbol);
3709 Set_Flag11 (N, Val);
3710 end Set_Has_Private_View;
3712 procedure Set_Has_Storage_Size_Pragma
3713 (N : Node_Id; Val : Boolean := True) is
3715 pragma Assert (False
3716 or else NT (N).Nkind = N_Task_Definition);
3718 end Set_Has_Storage_Size_Pragma;
3720 procedure Set_Has_Task_Info_Pragma
3721 (N : Node_Id; Val : Boolean := True) is
3723 pragma Assert (False
3724 or else NT (N).Nkind = N_Task_Definition);
3726 end Set_Has_Task_Info_Pragma;
3728 procedure Set_Has_Task_Name_Pragma
3729 (N : Node_Id; Val : Boolean := True) is
3731 pragma Assert (False
3732 or else NT (N).Nkind = N_Task_Definition);
3734 end Set_Has_Task_Name_Pragma;
3736 procedure Set_Has_Wide_Character
3737 (N : Node_Id; Val : Boolean := True) is
3739 pragma Assert (False
3740 or else NT (N).Nkind = N_String_Literal);
3741 Set_Flag11 (N, Val);
3742 end Set_Has_Wide_Character;
3744 procedure Set_Hidden_By_Use_Clause
3745 (N : Node_Id; Val : Elist_Id) is
3747 pragma Assert (False
3748 or else NT (N).Nkind = N_Use_Package_Clause
3749 or else NT (N).Nkind = N_Use_Type_Clause);
3750 Set_Elist4 (N, Val);
3751 end Set_Hidden_By_Use_Clause;
3753 procedure Set_High_Bound
3754 (N : Node_Id; Val : Node_Id) is
3756 pragma Assert (False
3757 or else NT (N).Nkind = N_Range
3758 or else NT (N).Nkind = N_Real_Range_Specification
3759 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3760 Set_Node2_With_Parent (N, Val);
3763 procedure Set_Identifier
3764 (N : Node_Id; Val : Node_Id) is
3766 pragma Assert (False
3767 or else NT (N).Nkind = N_At_Clause
3768 or else NT (N).Nkind = N_Block_Statement
3769 or else NT (N).Nkind = N_Designator
3770 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3771 or else NT (N).Nkind = N_Label
3772 or else NT (N).Nkind = N_Loop_Statement
3773 or else NT (N).Nkind = N_Record_Representation_Clause
3774 or else NT (N).Nkind = N_Subprogram_Info);
3775 Set_Node1_With_Parent (N, Val);
3778 procedure Set_Implicit_With
3779 (N : Node_Id; Val : Boolean := True) is
3781 pragma Assert (False
3782 or else NT (N).Nkind = N_With_Clause);
3783 Set_Flag16 (N, Val);
3784 end Set_Implicit_With;
3786 procedure Set_In_Present
3787 (N : Node_Id; Val : Boolean := True) is
3789 pragma Assert (False
3790 or else NT (N).Nkind = N_Formal_Object_Declaration
3791 or else NT (N).Nkind = N_Parameter_Specification);
3792 Set_Flag15 (N, Val);
3795 procedure Set_Includes_Infinities
3796 (N : Node_Id; Val : Boolean := True) is
3798 pragma Assert (False
3799 or else NT (N).Nkind = N_Range);
3800 Set_Flag11 (N, Val);
3801 end Set_Includes_Infinities;
3803 procedure Set_Instance_Spec
3804 (N : Node_Id; Val : Node_Id) is
3806 pragma Assert (False
3807 or else NT (N).Nkind = N_Formal_Package_Declaration
3808 or else NT (N).Nkind = N_Function_Instantiation
3809 or else NT (N).Nkind = N_Package_Instantiation
3810 or else NT (N).Nkind = N_Procedure_Instantiation);
3811 Set_Node5 (N, Val); -- semantic field, no Parent set
3812 end Set_Instance_Spec;
3814 procedure Set_Intval
3815 (N : Node_Id; Val : Uint) is
3817 pragma Assert (False
3818 or else NT (N).Nkind = N_Integer_Literal);
3822 procedure Set_Is_Asynchronous_Call_Block
3823 (N : Node_Id; Val : Boolean := True) is
3825 pragma Assert (False
3826 or else NT (N).Nkind = N_Block_Statement);
3828 end Set_Is_Asynchronous_Call_Block;
3830 procedure Set_Is_Component_Left_Opnd
3831 (N : Node_Id; Val : Boolean := True) is
3833 pragma Assert (False
3834 or else NT (N).Nkind = N_Op_Concat);
3835 Set_Flag13 (N, Val);
3836 end Set_Is_Component_Left_Opnd;
3838 procedure Set_Is_Component_Right_Opnd
3839 (N : Node_Id; Val : Boolean := True) is
3841 pragma Assert (False
3842 or else NT (N).Nkind = N_Op_Concat);
3843 Set_Flag14 (N, Val);
3844 end Set_Is_Component_Right_Opnd;
3846 procedure Set_Is_Controlling_Actual
3847 (N : Node_Id; Val : Boolean := True) is
3849 pragma Assert (False
3850 or else NT (N).Nkind in N_Subexpr);
3851 Set_Flag16 (N, Val);
3852 end Set_Is_Controlling_Actual;
3854 procedure Set_Is_In_Discriminant_Check
3855 (N : Node_Id; Val : Boolean := True) is
3857 pragma Assert (False
3858 or else NT (N).Nkind = N_Selected_Component);
3859 Set_Flag11 (N, Val);
3860 end Set_Is_In_Discriminant_Check;
3862 procedure Set_Is_Machine_Number
3863 (N : Node_Id; Val : Boolean := True) is
3865 pragma Assert (False
3866 or else NT (N).Nkind = N_Real_Literal);
3867 Set_Flag11 (N, Val);
3868 end Set_Is_Machine_Number;
3870 procedure Set_Is_Null_Loop
3871 (N : Node_Id; Val : Boolean := True) is
3873 pragma Assert (False
3874 or else NT (N).Nkind = N_Loop_Statement);
3875 Set_Flag16 (N, Val);
3876 end Set_Is_Null_Loop;
3878 procedure Set_Is_Overloaded
3879 (N : Node_Id; Val : Boolean := True) is
3881 pragma Assert (False
3882 or else NT (N).Nkind in N_Subexpr);
3884 end Set_Is_Overloaded;
3886 procedure Set_Is_Power_Of_2_For_Shift
3887 (N : Node_Id; Val : Boolean := True) is
3889 pragma Assert (False
3890 or else NT (N).Nkind = N_Op_Expon);
3891 Set_Flag13 (N, Val);
3892 end Set_Is_Power_Of_2_For_Shift;
3894 procedure Set_Is_Protected_Subprogram_Body
3895 (N : Node_Id; Val : Boolean := True) is
3897 pragma Assert (False
3898 or else NT (N).Nkind = N_Subprogram_Body);
3900 end Set_Is_Protected_Subprogram_Body;
3902 procedure Set_Is_Static_Expression
3903 (N : Node_Id; Val : Boolean := True) is
3905 pragma Assert (False
3906 or else NT (N).Nkind in N_Subexpr);
3908 end Set_Is_Static_Expression;
3910 procedure Set_Is_Subprogram_Descriptor
3911 (N : Node_Id; Val : Boolean := True) is
3913 pragma Assert (False
3914 or else NT (N).Nkind = N_Object_Declaration);
3915 Set_Flag16 (N, Val);
3916 end Set_Is_Subprogram_Descriptor;
3918 procedure Set_Is_Task_Allocation_Block
3919 (N : Node_Id; Val : Boolean := True) is
3921 pragma Assert (False
3922 or else NT (N).Nkind = N_Block_Statement);
3924 end Set_Is_Task_Allocation_Block;
3926 procedure Set_Is_Task_Master
3927 (N : Node_Id; Val : Boolean := True) is
3929 pragma Assert (False
3930 or else NT (N).Nkind = N_Block_Statement
3931 or else NT (N).Nkind = N_Subprogram_Body
3932 or else NT (N).Nkind = N_Task_Body);
3934 end Set_Is_Task_Master;
3936 procedure Set_Iteration_Scheme
3937 (N : Node_Id; Val : Node_Id) is
3939 pragma Assert (False
3940 or else NT (N).Nkind = N_Loop_Statement);
3941 Set_Node2_With_Parent (N, Val);
3942 end Set_Iteration_Scheme;
3945 (N : Node_Id; Val : Entity_Id) is
3947 pragma Assert (False
3948 or else NT (N).Nkind = N_Itype_Reference);
3949 Set_Node1 (N, Val); -- no parent, semantic field
3952 procedure Set_Kill_Range_Check
3953 (N : Node_Id; Val : Boolean := True) is
3955 pragma Assert (False
3956 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3957 Set_Flag11 (N, Val);
3958 end Set_Kill_Range_Check;
3960 procedure Set_Label_Construct
3961 (N : Node_Id; Val : Node_Id) is
3963 pragma Assert (False
3964 or else NT (N).Nkind = N_Implicit_Label_Declaration);
3965 Set_Node2 (N, Val); -- semantic field, no parent set
3966 end Set_Label_Construct;
3968 procedure Set_Last_Bit
3969 (N : Node_Id; Val : Node_Id) is
3971 pragma Assert (False
3972 or else NT (N).Nkind = N_Component_Clause);
3973 Set_Node4_With_Parent (N, Val);
3976 procedure Set_Last_Name
3977 (N : Node_Id; Val : Boolean := True) is
3979 pragma Assert (False
3980 or else NT (N).Nkind = N_With_Clause);
3984 procedure Set_Left_Opnd
3985 (N : Node_Id; Val : Node_Id) is
3987 pragma Assert (False
3988 or else NT (N).Nkind = N_And_Then
3989 or else NT (N).Nkind = N_In
3990 or else NT (N).Nkind = N_Not_In
3991 or else NT (N).Nkind = N_Or_Else
3992 or else NT (N).Nkind in N_Binary_Op);
3993 Set_Node2_With_Parent (N, Val);
3996 procedure Set_Library_Unit
3997 (N : Node_Id; Val : Node_Id) is
3999 pragma Assert (False
4000 or else NT (N).Nkind = N_Compilation_Unit
4001 or else NT (N).Nkind = N_Package_Body_Stub
4002 or else NT (N).Nkind = N_Protected_Body_Stub
4003 or else NT (N).Nkind = N_Subprogram_Body_Stub
4004 or else NT (N).Nkind = N_Task_Body_Stub
4005 or else NT (N).Nkind = N_With_Clause);
4006 Set_Node4 (N, Val); -- semantic field, no parent set
4007 end Set_Library_Unit;
4009 procedure Set_Limited_View_Installed
4010 (N : Node_Id; Val : Boolean := True) is
4012 pragma Assert (False
4013 or else NT (N).Nkind = N_Package_Specification
4014 or else NT (N).Nkind = N_With_Clause);
4015 Set_Flag18 (N, Val);
4016 end Set_Limited_View_Installed;
4018 procedure Set_Limited_Present
4019 (N : Node_Id; Val : Boolean := True) is
4021 pragma Assert (False
4022 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4023 or else NT (N).Nkind = N_Private_Type_Declaration
4024 or else NT (N).Nkind = N_Record_Definition
4025 or else NT (N).Nkind = N_With_Clause);
4026 Set_Flag17 (N, Val);
4027 end Set_Limited_Present;
4029 procedure Set_Literals
4030 (N : Node_Id; Val : List_Id) is
4032 pragma Assert (False
4033 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4034 Set_List1_With_Parent (N, Val);
4037 procedure Set_Loop_Actions
4038 (N : Node_Id; Val : List_Id) is
4040 pragma Assert (False
4041 or else NT (N).Nkind = N_Component_Association);
4042 Set_List2 (N, Val); -- semantic field, no parent set
4043 end Set_Loop_Actions;
4045 procedure Set_Loop_Parameter_Specification
4046 (N : Node_Id; Val : Node_Id) is
4048 pragma Assert (False
4049 or else NT (N).Nkind = N_Iteration_Scheme);
4050 Set_Node4_With_Parent (N, Val);
4051 end Set_Loop_Parameter_Specification;
4053 procedure Set_Low_Bound
4054 (N : Node_Id; Val : Node_Id) is
4056 pragma Assert (False
4057 or else NT (N).Nkind = N_Range
4058 or else NT (N).Nkind = N_Real_Range_Specification
4059 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4060 Set_Node1_With_Parent (N, Val);
4063 procedure Set_Mod_Clause
4064 (N : Node_Id; Val : Node_Id) is
4066 pragma Assert (False
4067 or else NT (N).Nkind = N_Record_Representation_Clause);
4068 Set_Node2_With_Parent (N, Val);
4071 procedure Set_More_Ids
4072 (N : Node_Id; Val : Boolean := True) is
4074 pragma Assert (False
4075 or else NT (N).Nkind = N_Component_Declaration
4076 or else NT (N).Nkind = N_Discriminant_Specification
4077 or else NT (N).Nkind = N_Exception_Declaration
4078 or else NT (N).Nkind = N_Formal_Object_Declaration
4079 or else NT (N).Nkind = N_Number_Declaration
4080 or else NT (N).Nkind = N_Object_Declaration
4081 or else NT (N).Nkind = N_Parameter_Specification);
4085 procedure Set_Must_Be_Byte_Aligned
4086 (N : Node_Id; Val : Boolean := True) is
4088 pragma Assert (False
4089 or else NT (N).Nkind = N_Attribute_Reference);
4090 Set_Flag14 (N, Val);
4091 end Set_Must_Be_Byte_Aligned;
4093 procedure Set_Must_Not_Freeze
4094 (N : Node_Id; Val : Boolean := True) is
4096 pragma Assert (False
4097 or else NT (N).Nkind = N_Subtype_Indication
4098 or else NT (N).Nkind in N_Subexpr);
4100 end Set_Must_Not_Freeze;
4103 (N : Node_Id; Val : Node_Id) is
4105 pragma Assert (False
4106 or else NT (N).Nkind = N_Assignment_Statement
4107 or else NT (N).Nkind = N_Attribute_Definition_Clause
4108 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4109 or else NT (N).Nkind = N_Designator
4110 or else NT (N).Nkind = N_Entry_Call_Statement
4111 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4112 or else NT (N).Nkind = N_Exit_Statement
4113 or else NT (N).Nkind = N_Formal_Package_Declaration
4114 or else NT (N).Nkind = N_Function_Call
4115 or else NT (N).Nkind = N_Function_Instantiation
4116 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4117 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4118 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4119 or else NT (N).Nkind = N_Goto_Statement
4120 or else NT (N).Nkind = N_Object_Renaming_Declaration
4121 or else NT (N).Nkind = N_Package_Instantiation
4122 or else NT (N).Nkind = N_Package_Renaming_Declaration
4123 or else NT (N).Nkind = N_Procedure_Call_Statement
4124 or else NT (N).Nkind = N_Procedure_Instantiation
4125 or else NT (N).Nkind = N_Raise_Statement
4126 or else NT (N).Nkind = N_Requeue_Statement
4127 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4128 or else NT (N).Nkind = N_Subunit
4129 or else NT (N).Nkind = N_Variant_Part
4130 or else NT (N).Nkind = N_With_Clause
4131 or else NT (N).Nkind = N_With_Type_Clause);
4132 Set_Node2_With_Parent (N, Val);
4136 (N : Node_Id; Val : List_Id) is
4138 pragma Assert (False
4139 or else NT (N).Nkind = N_Abort_Statement
4140 or else NT (N).Nkind = N_Use_Package_Clause);
4141 Set_List2_With_Parent (N, Val);
4144 procedure Set_Next_Entity
4145 (N : Node_Id; Val : Node_Id) is
4147 pragma Assert (False
4148 or else NT (N).Nkind = N_Defining_Character_Literal
4149 or else NT (N).Nkind = N_Defining_Identifier
4150 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4151 Set_Node2 (N, Val); -- semantic field, no parent set
4152 end Set_Next_Entity;
4154 procedure Set_Next_Named_Actual
4155 (N : Node_Id; Val : Node_Id) is
4157 pragma Assert (False
4158 or else NT (N).Nkind = N_Parameter_Association);
4159 Set_Node4 (N, Val); -- semantic field, no parent set
4160 end Set_Next_Named_Actual;
4162 procedure Set_Next_Rep_Item
4163 (N : Node_Id; Val : Node_Id) is
4165 pragma Assert (False
4166 or else NT (N).Nkind = N_Attribute_Definition_Clause
4167 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4168 or else NT (N).Nkind = N_Pragma
4169 or else NT (N).Nkind = N_Record_Representation_Clause);
4170 Set_Node4 (N, Val); -- semantic field, no parent set
4171 end Set_Next_Rep_Item;
4173 procedure Set_Next_Use_Clause
4174 (N : Node_Id; Val : Node_Id) is
4176 pragma Assert (False
4177 or else NT (N).Nkind = N_Use_Package_Clause
4178 or else NT (N).Nkind = N_Use_Type_Clause);
4179 Set_Node3 (N, Val); -- semantic field, no parent set
4180 end Set_Next_Use_Clause;
4182 procedure Set_No_Ctrl_Actions
4183 (N : Node_Id; Val : Boolean := True) is
4185 pragma Assert (False
4186 or else NT (N).Nkind = N_Assignment_Statement);
4188 end Set_No_Ctrl_Actions;
4190 procedure Set_No_Entities_Ref_In_Spec
4191 (N : Node_Id; Val : Boolean := True) is
4193 pragma Assert (False
4194 or else NT (N).Nkind = N_With_Clause);
4196 end Set_No_Entities_Ref_In_Spec;
4198 procedure Set_No_Initialization
4199 (N : Node_Id; Val : Boolean := True) is
4201 pragma Assert (False
4202 or else NT (N).Nkind = N_Allocator
4203 or else NT (N).Nkind = N_Object_Declaration);
4204 Set_Flag13 (N, Val);
4205 end Set_No_Initialization;
4207 procedure Set_No_Truncation
4208 (N : Node_Id; Val : Boolean := True) is
4210 pragma Assert (False
4211 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4212 Set_Flag17 (N, Val);
4213 end Set_No_Truncation;
4215 procedure Set_Null_Present
4216 (N : Node_Id; Val : Boolean := True) is
4218 pragma Assert (False
4219 or else NT (N).Nkind = N_Component_List
4220 or else NT (N).Nkind = N_Record_Definition);
4221 Set_Flag13 (N, Val);
4222 end Set_Null_Present;
4224 procedure Set_Null_Record_Present
4225 (N : Node_Id; Val : Boolean := True) is
4227 pragma Assert (False
4228 or else NT (N).Nkind = N_Aggregate
4229 or else NT (N).Nkind = N_Extension_Aggregate);
4230 Set_Flag17 (N, Val);
4231 end Set_Null_Record_Present;
4233 procedure Set_Object_Definition
4234 (N : Node_Id; Val : Node_Id) is
4236 pragma Assert (False
4237 or else NT (N).Nkind = N_Object_Declaration);
4238 Set_Node4_With_Parent (N, Val);
4239 end Set_Object_Definition;
4241 procedure Set_OK_For_Stream
4242 (N : Node_Id; Val : Boolean := True) is
4244 pragma Assert (False
4245 or else NT (N).Nkind = N_Attribute_Reference);
4247 end Set_OK_For_Stream;
4249 procedure Set_Original_Discriminant
4250 (N : Node_Id; Val : Node_Id) is
4252 pragma Assert (False
4253 or else NT (N).Nkind = N_Identifier);
4254 Set_Node2 (N, Val); -- semantic field, no parent set
4255 end Set_Original_Discriminant;
4257 procedure Set_Original_Entity
4258 (N : Node_Id; Val : Entity_Id) is
4260 pragma Assert (False
4261 or else NT (N).Nkind = N_Integer_Literal
4262 or else NT (N).Nkind = N_Real_Literal);
4263 Set_Node2 (N, Val); -- semantic field, no parent set
4264 end Set_Original_Entity;
4266 procedure Set_Others_Discrete_Choices
4267 (N : Node_Id; Val : List_Id) is
4269 pragma Assert (False
4270 or else NT (N).Nkind = N_Others_Choice);
4271 Set_List1_With_Parent (N, Val);
4272 end Set_Others_Discrete_Choices;
4274 procedure Set_Out_Present
4275 (N : Node_Id; Val : Boolean := True) is
4277 pragma Assert (False
4278 or else NT (N).Nkind = N_Formal_Object_Declaration
4279 or else NT (N).Nkind = N_Parameter_Specification);
4280 Set_Flag17 (N, Val);
4281 end Set_Out_Present;
4283 procedure Set_Parameter_Associations
4284 (N : Node_Id; Val : List_Id) is
4286 pragma Assert (False
4287 or else NT (N).Nkind = N_Entry_Call_Statement
4288 or else NT (N).Nkind = N_Function_Call
4289 or else NT (N).Nkind = N_Procedure_Call_Statement);
4290 Set_List3_With_Parent (N, Val);
4291 end Set_Parameter_Associations;
4293 procedure Set_Parameter_List_Truncated
4294 (N : Node_Id; Val : Boolean := True) is
4296 pragma Assert (False
4297 or else NT (N).Nkind = N_Function_Call
4298 or else NT (N).Nkind = N_Procedure_Call_Statement);
4299 Set_Flag17 (N, Val);
4300 end Set_Parameter_List_Truncated;
4302 procedure Set_Parameter_Specifications
4303 (N : Node_Id; Val : List_Id) is
4305 pragma Assert (False
4306 or else NT (N).Nkind = N_Accept_Statement
4307 or else NT (N).Nkind = N_Access_Function_Definition
4308 or else NT (N).Nkind = N_Access_Procedure_Definition
4309 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4310 or else NT (N).Nkind = N_Entry_Declaration
4311 or else NT (N).Nkind = N_Function_Specification
4312 or else NT (N).Nkind = N_Procedure_Specification);
4313 Set_List3_With_Parent (N, Val);
4314 end Set_Parameter_Specifications;
4316 procedure Set_Parameter_Type
4317 (N : Node_Id; Val : Node_Id) is
4319 pragma Assert (False
4320 or else NT (N).Nkind = N_Parameter_Specification);
4321 Set_Node2_With_Parent (N, Val);
4322 end Set_Parameter_Type;
4324 procedure Set_Parent_Spec
4325 (N : Node_Id; Val : Node_Id) is
4327 pragma Assert (False
4328 or else NT (N).Nkind = N_Function_Instantiation
4329 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4330 or else NT (N).Nkind = N_Generic_Package_Declaration
4331 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4332 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4333 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4334 or else NT (N).Nkind = N_Package_Declaration
4335 or else NT (N).Nkind = N_Package_Instantiation
4336 or else NT (N).Nkind = N_Package_Renaming_Declaration
4337 or else NT (N).Nkind = N_Procedure_Instantiation
4338 or else NT (N).Nkind = N_Subprogram_Declaration
4339 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4340 Set_Node4 (N, Val); -- semantic field, no parent set
4341 end Set_Parent_Spec;
4343 procedure Set_Position
4344 (N : Node_Id; Val : Node_Id) is
4346 pragma Assert (False
4347 or else NT (N).Nkind = N_Component_Clause);
4348 Set_Node2_With_Parent (N, Val);
4351 procedure Set_Pragma_Argument_Associations
4352 (N : Node_Id; Val : List_Id) is
4354 pragma Assert (False
4355 or else NT (N).Nkind = N_Pragma);
4356 Set_List2_With_Parent (N, Val);
4357 end Set_Pragma_Argument_Associations;
4359 procedure Set_Pragmas_After
4360 (N : Node_Id; Val : List_Id) is
4362 pragma Assert (False
4363 or else NT (N).Nkind = N_Compilation_Unit_Aux
4364 or else NT (N).Nkind = N_Terminate_Alternative);
4365 Set_List5_With_Parent (N, Val);
4366 end Set_Pragmas_After;
4368 procedure Set_Pragmas_Before
4369 (N : Node_Id; Val : List_Id) is
4371 pragma Assert (False
4372 or else NT (N).Nkind = N_Accept_Alternative
4373 or else NT (N).Nkind = N_Delay_Alternative
4374 or else NT (N).Nkind = N_Entry_Call_Alternative
4375 or else NT (N).Nkind = N_Mod_Clause
4376 or else NT (N).Nkind = N_Terminate_Alternative
4377 or else NT (N).Nkind = N_Triggering_Alternative);
4378 Set_List4_With_Parent (N, Val);
4379 end Set_Pragmas_Before;
4381 procedure Set_Prefix
4382 (N : Node_Id; Val : Node_Id) is
4384 pragma Assert (False
4385 or else NT (N).Nkind = N_Attribute_Reference
4386 or else NT (N).Nkind = N_Expanded_Name
4387 or else NT (N).Nkind = N_Explicit_Dereference
4388 or else NT (N).Nkind = N_Indexed_Component
4389 or else NT (N).Nkind = N_Reference
4390 or else NT (N).Nkind = N_Selected_Component
4391 or else NT (N).Nkind = N_Slice);
4392 Set_Node3_With_Parent (N, Val);
4395 procedure Set_Present_Expr
4396 (N : Node_Id; Val : Uint) is
4398 pragma Assert (False
4399 or else NT (N).Nkind = N_Variant);
4401 end Set_Present_Expr;
4403 procedure Set_Prev_Ids
4404 (N : Node_Id; Val : Boolean := True) is
4406 pragma Assert (False
4407 or else NT (N).Nkind = N_Component_Declaration
4408 or else NT (N).Nkind = N_Discriminant_Specification
4409 or else NT (N).Nkind = N_Exception_Declaration
4410 or else NT (N).Nkind = N_Formal_Object_Declaration
4411 or else NT (N).Nkind = N_Number_Declaration
4412 or else NT (N).Nkind = N_Object_Declaration
4413 or else NT (N).Nkind = N_Parameter_Specification);
4417 procedure Set_Print_In_Hex
4418 (N : Node_Id; Val : Boolean := True) is
4420 pragma Assert (False
4421 or else NT (N).Nkind = N_Integer_Literal);
4422 Set_Flag13 (N, Val);
4423 end Set_Print_In_Hex;
4425 procedure Set_Private_Declarations
4426 (N : Node_Id; Val : List_Id) is
4428 pragma Assert (False
4429 or else NT (N).Nkind = N_Package_Specification
4430 or else NT (N).Nkind = N_Protected_Definition
4431 or else NT (N).Nkind = N_Task_Definition);
4432 Set_List3_With_Parent (N, Val);
4433 end Set_Private_Declarations;
4435 procedure Set_Private_Present
4436 (N : Node_Id; Val : Boolean := True) is
4438 pragma Assert (False
4439 or else NT (N).Nkind = N_Compilation_Unit
4440 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
4441 Set_Flag15 (N, Val);
4442 end Set_Private_Present;
4444 procedure Set_Procedure_To_Call
4445 (N : Node_Id; Val : Node_Id) is
4447 pragma Assert (False
4448 or else NT (N).Nkind = N_Allocator
4449 or else NT (N).Nkind = N_Free_Statement
4450 or else NT (N).Nkind = N_Return_Statement);
4451 Set_Node4 (N, Val); -- semantic field, no parent set
4452 end Set_Procedure_To_Call;
4454 procedure Set_Proper_Body
4455 (N : Node_Id; Val : Node_Id) is
4457 pragma Assert (False
4458 or else NT (N).Nkind = N_Subunit);
4459 Set_Node1_With_Parent (N, Val);
4460 end Set_Proper_Body;
4462 procedure Set_Protected_Definition
4463 (N : Node_Id; Val : Node_Id) is
4465 pragma Assert (False
4466 or else NT (N).Nkind = N_Protected_Type_Declaration
4467 or else NT (N).Nkind = N_Single_Protected_Declaration);
4468 Set_Node3_With_Parent (N, Val);
4469 end Set_Protected_Definition;
4471 procedure Set_Protected_Present
4472 (N : Node_Id; Val : Boolean := True) is
4474 pragma Assert (False
4475 or else NT (N).Nkind = N_Access_Function_Definition
4476 or else NT (N).Nkind = N_Access_Procedure_Definition);
4477 Set_Flag15 (N, Val);
4478 end Set_Protected_Present;
4480 procedure Set_Raises_Constraint_Error
4481 (N : Node_Id; Val : Boolean := True) is
4483 pragma Assert (False
4484 or else NT (N).Nkind in N_Subexpr);
4486 end Set_Raises_Constraint_Error;
4488 procedure Set_Range_Constraint
4489 (N : Node_Id; Val : Node_Id) is
4491 pragma Assert (False
4492 or else NT (N).Nkind = N_Delta_Constraint
4493 or else NT (N).Nkind = N_Digits_Constraint);
4494 Set_Node4_With_Parent (N, Val);
4495 end Set_Range_Constraint;
4497 procedure Set_Range_Expression
4498 (N : Node_Id; Val : Node_Id) is
4500 pragma Assert (False
4501 or else NT (N).Nkind = N_Range_Constraint);
4502 Set_Node4_With_Parent (N, Val);
4503 end Set_Range_Expression;
4505 procedure Set_Real_Range_Specification
4506 (N : Node_Id; Val : Node_Id) is
4508 pragma Assert (False
4509 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4510 or else NT (N).Nkind = N_Floating_Point_Definition
4511 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4512 Set_Node4_With_Parent (N, Val);
4513 end Set_Real_Range_Specification;
4515 procedure Set_Realval
4516 (N : Node_Id; Val : Ureal) is
4518 pragma Assert (False
4519 or else NT (N).Nkind = N_Real_Literal);
4520 Set_Ureal3 (N, Val);
4523 procedure Set_Reason
4524 (N : Node_Id; Val : Uint) is
4526 pragma Assert (False
4527 or else NT (N).Nkind = N_Raise_Constraint_Error
4528 or else NT (N).Nkind = N_Raise_Program_Error
4529 or else NT (N).Nkind = N_Raise_Storage_Error);
4533 procedure Set_Record_Extension_Part
4534 (N : Node_Id; Val : Node_Id) is
4536 pragma Assert (False
4537 or else NT (N).Nkind = N_Derived_Type_Definition);
4538 Set_Node3_With_Parent (N, Val);
4539 end Set_Record_Extension_Part;
4541 procedure Set_Redundant_Use
4542 (N : Node_Id; Val : Boolean := True) is
4544 pragma Assert (False
4545 or else NT (N).Nkind = N_Attribute_Reference
4546 or else NT (N).Nkind = N_Expanded_Name
4547 or else NT (N).Nkind = N_Identifier);
4548 Set_Flag13 (N, Val);
4549 end Set_Redundant_Use;
4551 procedure Set_Return_Type
4552 (N : Node_Id; Val : Node_Id) is
4554 pragma Assert (False
4555 or else NT (N).Nkind = N_Return_Statement);
4556 Set_Node2 (N, Val); -- semantic field, no parent set
4557 end Set_Return_Type;
4559 procedure Set_Reverse_Present
4560 (N : Node_Id; Val : Boolean := True) is
4562 pragma Assert (False
4563 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4564 Set_Flag15 (N, Val);
4565 end Set_Reverse_Present;
4567 procedure Set_Right_Opnd
4568 (N : Node_Id; Val : Node_Id) is
4570 pragma Assert (False
4571 or else NT (N).Nkind in N_Op
4572 or else NT (N).Nkind = N_And_Then
4573 or else NT (N).Nkind = N_In
4574 or else NT (N).Nkind = N_Not_In
4575 or else NT (N).Nkind = N_Or_Else);
4576 Set_Node3_With_Parent (N, Val);
4579 procedure Set_Rounded_Result
4580 (N : Node_Id; Val : Boolean := True) is
4582 pragma Assert (False
4583 or else NT (N).Nkind = N_Op_Divide
4584 or else NT (N).Nkind = N_Op_Multiply
4585 or else NT (N).Nkind = N_Type_Conversion);
4586 Set_Flag18 (N, Val);
4587 end Set_Rounded_Result;
4590 (N : Node_Id; Val : Node_Id) is
4592 pragma Assert (False
4593 or else NT (N).Nkind = N_Defining_Character_Literal
4594 or else NT (N).Nkind = N_Defining_Identifier
4595 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4596 Set_Node3 (N, Val); -- semantic field, no parent set
4599 procedure Set_Select_Alternatives
4600 (N : Node_Id; Val : List_Id) is
4602 pragma Assert (False
4603 or else NT (N).Nkind = N_Selective_Accept);
4604 Set_List1_With_Parent (N, Val);
4605 end Set_Select_Alternatives;
4607 procedure Set_Selector_Name
4608 (N : Node_Id; Val : Node_Id) is
4610 pragma Assert (False
4611 or else NT (N).Nkind = N_Expanded_Name
4612 or else NT (N).Nkind = N_Generic_Association
4613 or else NT (N).Nkind = N_Parameter_Association
4614 or else NT (N).Nkind = N_Selected_Component);
4615 Set_Node2_With_Parent (N, Val);
4616 end Set_Selector_Name;
4618 procedure Set_Selector_Names
4619 (N : Node_Id; Val : List_Id) is
4621 pragma Assert (False
4622 or else NT (N).Nkind = N_Discriminant_Association);
4623 Set_List1_With_Parent (N, Val);
4624 end Set_Selector_Names;
4626 procedure Set_Shift_Count_OK
4627 (N : Node_Id; Val : Boolean := True) is
4629 pragma Assert (False
4630 or else NT (N).Nkind = N_Op_Rotate_Left
4631 or else NT (N).Nkind = N_Op_Rotate_Right
4632 or else NT (N).Nkind = N_Op_Shift_Left
4633 or else NT (N).Nkind = N_Op_Shift_Right
4634 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4636 end Set_Shift_Count_OK;
4638 procedure Set_Source_Type
4639 (N : Node_Id; Val : Entity_Id) is
4641 pragma Assert (False
4642 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4643 Set_Node1 (N, Val); -- semantic field, no parent set
4644 end Set_Source_Type;
4646 procedure Set_Specification
4647 (N : Node_Id; Val : Node_Id) is
4649 pragma Assert (False
4650 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4651 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4652 or else NT (N).Nkind = N_Generic_Package_Declaration
4653 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4654 or else NT (N).Nkind = N_Package_Declaration
4655 or else NT (N).Nkind = N_Subprogram_Body
4656 or else NT (N).Nkind = N_Subprogram_Body_Stub
4657 or else NT (N).Nkind = N_Subprogram_Declaration
4658 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4659 Set_Node1_With_Parent (N, Val);
4660 end Set_Specification;
4662 procedure Set_Statements
4663 (N : Node_Id; Val : List_Id) is
4665 pragma Assert (False
4666 or else NT (N).Nkind = N_Abortable_Part
4667 or else NT (N).Nkind = N_Accept_Alternative
4668 or else NT (N).Nkind = N_Case_Statement_Alternative
4669 or else NT (N).Nkind = N_Delay_Alternative
4670 or else NT (N).Nkind = N_Entry_Call_Alternative
4671 or else NT (N).Nkind = N_Exception_Handler
4672 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4673 or else NT (N).Nkind = N_Loop_Statement
4674 or else NT (N).Nkind = N_Triggering_Alternative);
4675 Set_List3_With_Parent (N, Val);
4678 procedure Set_Static_Processing_OK
4679 (N : Node_Id; Val : Boolean) is
4681 pragma Assert (False
4682 or else NT (N).Nkind = N_Aggregate);
4684 end Set_Static_Processing_OK;
4686 procedure Set_Storage_Pool
4687 (N : Node_Id; Val : Node_Id) is
4689 pragma Assert (False
4690 or else NT (N).Nkind = N_Allocator
4691 or else NT (N).Nkind = N_Free_Statement
4692 or else NT (N).Nkind = N_Return_Statement);
4693 Set_Node1 (N, Val); -- semantic field, no parent set
4694 end Set_Storage_Pool;
4696 procedure Set_Strval
4697 (N : Node_Id; Val : String_Id) is
4699 pragma Assert (False
4700 or else NT (N).Nkind = N_Operator_Symbol
4701 or else NT (N).Nkind = N_String_Literal);
4705 procedure Set_Subtype_Indication
4706 (N : Node_Id; Val : Node_Id) is
4708 pragma Assert (False
4709 or else NT (N).Nkind = N_Access_To_Object_Definition
4710 or else NT (N).Nkind = N_Component_Declaration
4711 or else NT (N).Nkind = N_Constrained_Array_Definition
4712 or else NT (N).Nkind = N_Derived_Type_Definition
4713 or else NT (N).Nkind = N_Private_Extension_Declaration
4714 or else NT (N).Nkind = N_Subtype_Declaration
4715 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
4716 Set_Node5_With_Parent (N, Val);
4717 end Set_Subtype_Indication;
4719 procedure Set_Subtype_Mark
4720 (N : Node_Id; Val : Node_Id) is
4722 pragma Assert (False
4723 or else NT (N).Nkind = N_Access_Definition
4724 or else NT (N).Nkind = N_Access_Function_Definition
4725 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4726 or else NT (N).Nkind = N_Formal_Object_Declaration
4727 or else NT (N).Nkind = N_Function_Specification
4728 or else NT (N).Nkind = N_Object_Renaming_Declaration
4729 or else NT (N).Nkind = N_Qualified_Expression
4730 or else NT (N).Nkind = N_Subtype_Indication
4731 or else NT (N).Nkind = N_Type_Conversion
4732 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4733 Set_Node4_With_Parent (N, Val);
4734 end Set_Subtype_Mark;
4736 procedure Set_Subtype_Marks
4737 (N : Node_Id; Val : List_Id) is
4739 pragma Assert (False
4740 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4741 or else NT (N).Nkind = N_Use_Type_Clause);
4742 Set_List2_With_Parent (N, Val);
4743 end Set_Subtype_Marks;
4745 procedure Set_Tagged_Present
4746 (N : Node_Id; Val : Boolean := True) is
4748 pragma Assert (False
4749 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4750 or else NT (N).Nkind = N_Private_Type_Declaration
4751 or else NT (N).Nkind = N_Record_Definition
4752 or else NT (N).Nkind = N_With_Type_Clause);
4753 Set_Flag15 (N, Val);
4754 end Set_Tagged_Present;
4756 procedure Set_Target_Type
4757 (N : Node_Id; Val : Entity_Id) is
4759 pragma Assert (False
4760 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4761 Set_Node2 (N, Val); -- semantic field, no parent set
4762 end Set_Target_Type;
4764 procedure Set_Task_Body_Procedure
4765 (N : Node_Id; Val : Entity_Id) is
4767 pragma Assert (False
4768 or else NT (N).Nkind = N_Task_Type_Declaration);
4769 Set_Node2 (N, Val); -- semantic field, no parent set
4770 end Set_Task_Body_Procedure;
4772 procedure Set_Task_Definition
4773 (N : Node_Id; Val : Node_Id) is
4775 pragma Assert (False
4776 or else NT (N).Nkind = N_Single_Task_Declaration
4777 or else NT (N).Nkind = N_Task_Type_Declaration);
4778 Set_Node3_With_Parent (N, Val);
4779 end Set_Task_Definition;
4781 procedure Set_Then_Actions
4782 (N : Node_Id; Val : List_Id) is
4784 pragma Assert (False
4785 or else NT (N).Nkind = N_Conditional_Expression);
4786 Set_List2 (N, Val); -- semantic field, no parent set
4787 end Set_Then_Actions;
4789 procedure Set_Then_Statements
4790 (N : Node_Id; Val : List_Id) is
4792 pragma Assert (False
4793 or else NT (N).Nkind = N_Elsif_Part
4794 or else NT (N).Nkind = N_If_Statement);
4795 Set_List2_With_Parent (N, Val);
4796 end Set_Then_Statements;
4798 procedure Set_Treat_Fixed_As_Integer
4799 (N : Node_Id; Val : Boolean := True) is
4801 pragma Assert (False
4802 or else NT (N).Nkind = N_Op_Divide
4803 or else NT (N).Nkind = N_Op_Mod
4804 or else NT (N).Nkind = N_Op_Multiply
4805 or else NT (N).Nkind = N_Op_Rem);
4806 Set_Flag14 (N, Val);
4807 end Set_Treat_Fixed_As_Integer;
4809 procedure Set_Triggering_Alternative
4810 (N : Node_Id; Val : Node_Id) is
4812 pragma Assert (False
4813 or else NT (N).Nkind = N_Asynchronous_Select);
4814 Set_Node1_With_Parent (N, Val);
4815 end Set_Triggering_Alternative;
4817 procedure Set_Triggering_Statement
4818 (N : Node_Id; Val : Node_Id) is
4820 pragma Assert (False
4821 or else NT (N).Nkind = N_Triggering_Alternative);
4822 Set_Node1_With_Parent (N, Val);
4823 end Set_Triggering_Statement;
4825 procedure Set_TSS_Elist
4826 (N : Node_Id; Val : Elist_Id) is
4828 pragma Assert (False
4829 or else NT (N).Nkind = N_Freeze_Entity);
4830 Set_Elist3 (N, Val); -- semantic field, no parent set
4833 procedure Set_Type_Definition
4834 (N : Node_Id; Val : Node_Id) is
4836 pragma Assert (False
4837 or else NT (N).Nkind = N_Full_Type_Declaration);
4838 Set_Node3_With_Parent (N, Val);
4839 end Set_Type_Definition;
4842 (N : Node_Id; Val : Node_Id) is
4844 pragma Assert (False
4845 or else NT (N).Nkind = N_Compilation_Unit);
4846 Set_Node2_With_Parent (N, Val);
4849 procedure Set_Unknown_Discriminants_Present
4850 (N : Node_Id; Val : Boolean := True) is
4852 pragma Assert (False
4853 or else NT (N).Nkind = N_Formal_Type_Declaration
4854 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4855 or else NT (N).Nkind = N_Private_Extension_Declaration
4856 or else NT (N).Nkind = N_Private_Type_Declaration);
4857 Set_Flag13 (N, Val);
4858 end Set_Unknown_Discriminants_Present;
4860 procedure Set_Unreferenced_In_Spec
4861 (N : Node_Id; Val : Boolean := True) is
4863 pragma Assert (False
4864 or else NT (N).Nkind = N_With_Clause);
4866 end Set_Unreferenced_In_Spec;
4868 procedure Set_Variant_Part
4869 (N : Node_Id; Val : Node_Id) is
4871 pragma Assert (False
4872 or else NT (N).Nkind = N_Component_List);
4873 Set_Node4_With_Parent (N, Val);
4874 end Set_Variant_Part;
4876 procedure Set_Variants
4877 (N : Node_Id; Val : List_Id) is
4879 pragma Assert (False
4880 or else NT (N).Nkind = N_Variant_Part);
4881 Set_List1_With_Parent (N, Val);
4884 procedure Set_Visible_Declarations
4885 (N : Node_Id; Val : List_Id) is
4887 pragma Assert (False
4888 or else NT (N).Nkind = N_Package_Specification
4889 or else NT (N).Nkind = N_Protected_Definition
4890 or else NT (N).Nkind = N_Task_Definition);
4891 Set_List2_With_Parent (N, Val);
4892 end Set_Visible_Declarations;
4894 procedure Set_Was_Originally_Stub
4895 (N : Node_Id; Val : Boolean := True) is
4897 pragma Assert (False
4898 or else NT (N).Nkind = N_Package_Body
4899 or else NT (N).Nkind = N_Protected_Body
4900 or else NT (N).Nkind = N_Subprogram_Body
4901 or else NT (N).Nkind = N_Task_Body);
4902 Set_Flag13 (N, Val);
4903 end Set_Was_Originally_Stub;
4905 procedure Set_Zero_Cost_Handling
4906 (N : Node_Id; Val : Boolean := True) is
4908 pragma Assert (False
4909 or else NT (N).Nkind = N_Exception_Handler
4910 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4912 end Set_Zero_Cost_Handling;
4914 -------------------------
4915 -- Iterator Procedures --
4916 -------------------------
4918 procedure Next_Entity (N : in out Node_Id) is
4920 N := Next_Entity (N);
4923 procedure Next_Named_Actual (N : in out Node_Id) is
4925 N := Next_Named_Actual (N);
4926 end Next_Named_Actual;
4928 procedure Next_Rep_Item (N : in out Node_Id) is
4930 N := Next_Rep_Item (N);
4933 procedure Next_Use_Clause (N : in out Node_Id) is
4935 N := Next_Use_Clause (N);
4936 end Next_Use_Clause;
4942 function End_Location (N : Node_Id) return Source_Ptr is
4943 L : constant Uint := End_Span (N);
4949 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
4953 ----------------------
4954 -- Set_End_Location --
4955 ----------------------
4957 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
4960 UI_From_Int (Int (S) - Int (Sloc (N))));
4961 end Set_End_Location;