1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2004, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 2, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNAT; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
20 -- MA 02111-1307, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNAT was originally developed by the GNAT team at New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc. --
32 ------------------------------------------------------------------------------
34 pragma Style_Checks (All_Checks);
35 -- No subprogram ordering check, due to logical grouping
37 with Atree; use Atree;
41 use Atree.Unchecked_Access;
42 -- This package is one of the few packages which is allowed to make direct
43 -- references to tree nodes (since it is in the business of providing a
44 -- higher level of tree access which other clients are expected to use and
45 -- which implements checks).
47 use Atree_Private_Part;
48 -- The only reason that we ask for direct access to the private part of
49 -- the tree package is so that we can directly reference the Nkind field
50 -- of nodes table entries. We do this since it helps the efficiency of
51 -- the Sinfo debugging checks considerably (note that when we are checking
52 -- Nkind values, we don't need to check for a valid node reference, because
53 -- we will check that anyway when we reference the field).
55 NT : Nodes.Table_Ptr renames Nodes.Table;
56 -- A short hand abbreviation, useful for the debugging checks
58 ----------------------------
59 -- Field Access Functions --
60 ----------------------------
62 function ABE_Is_Certain
63 (N : Node_Id) return Boolean is
66 or else NT (N).Nkind = N_Formal_Package_Declaration
67 or else NT (N).Nkind = N_Function_Call
68 or else NT (N).Nkind = N_Function_Instantiation
69 or else NT (N).Nkind = N_Package_Instantiation
70 or else NT (N).Nkind = N_Procedure_Call_Statement
71 or else NT (N).Nkind = N_Procedure_Instantiation);
75 function Abort_Present
76 (N : Node_Id) return Boolean is
79 or else NT (N).Nkind = N_Requeue_Statement);
83 function Abortable_Part
84 (N : Node_Id) return Node_Id is
87 or else NT (N).Nkind = N_Asynchronous_Select);
91 function Abstract_Present
92 (N : Node_Id) return Boolean is
95 or else NT (N).Nkind = N_Derived_Type_Definition
96 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
97 or else NT (N).Nkind = N_Formal_Private_Type_Definition
98 or else NT (N).Nkind = N_Private_Extension_Declaration
99 or else NT (N).Nkind = N_Private_Type_Declaration
100 or else NT (N).Nkind = N_Record_Definition);
102 end Abstract_Present;
104 function Accept_Handler_Records
105 (N : Node_Id) return List_Id is
108 or else NT (N).Nkind = N_Accept_Alternative);
110 end Accept_Handler_Records;
112 function Accept_Statement
113 (N : Node_Id) return Node_Id is
116 or else NT (N).Nkind = N_Accept_Alternative);
118 end Accept_Statement;
120 function Access_Definition
121 (N : Node_Id) return Node_Id is
124 or else NT (N).Nkind = N_Component_Definition
125 or else NT (N).Nkind = N_Object_Renaming_Declaration);
127 end Access_Definition;
129 function Access_Types_To_Process
130 (N : Node_Id) return Elist_Id is
133 or else NT (N).Nkind = N_Freeze_Entity);
135 end Access_Types_To_Process;
138 (N : Node_Id) return List_Id is
141 or else NT (N).Nkind = N_And_Then
142 or else NT (N).Nkind = N_Compilation_Unit_Aux
143 or else NT (N).Nkind = N_Freeze_Entity
144 or else NT (N).Nkind = N_Or_Else);
148 function Activation_Chain_Entity
149 (N : Node_Id) return Node_Id is
152 or else NT (N).Nkind = N_Block_Statement
153 or else NT (N).Nkind = N_Entry_Body
154 or else NT (N).Nkind = N_Generic_Package_Declaration
155 or else NT (N).Nkind = N_Package_Declaration
156 or else NT (N).Nkind = N_Subprogram_Body
157 or else NT (N).Nkind = N_Task_Body);
159 end Activation_Chain_Entity;
161 function Acts_As_Spec
162 (N : Node_Id) return Boolean is
165 or else NT (N).Nkind = N_Compilation_Unit
166 or else NT (N).Nkind = N_Subprogram_Body);
170 function Aggregate_Bounds
171 (N : Node_Id) return Node_Id is
174 or else NT (N).Nkind = N_Aggregate);
176 end Aggregate_Bounds;
178 function Aliased_Present
179 (N : Node_Id) return Boolean is
182 or else NT (N).Nkind = N_Component_Definition
183 or else NT (N).Nkind = N_Object_Declaration);
188 (N : Node_Id) return Boolean is
191 or else NT (N).Nkind = N_Others_Choice);
196 (N : Node_Id) return Boolean is
199 or else NT (N).Nkind = N_Access_To_Object_Definition);
203 function Alternatives
204 (N : Node_Id) return List_Id is
207 or else NT (N).Nkind = N_Case_Statement);
211 function Ancestor_Part
212 (N : Node_Id) return Node_Id is
215 or else NT (N).Nkind = N_Extension_Aggregate);
219 function Array_Aggregate
220 (N : Node_Id) return Node_Id is
223 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
227 function Assignment_OK
228 (N : Node_Id) return Boolean is
231 or else NT (N).Nkind = N_Object_Declaration
232 or else NT (N).Nkind in N_Subexpr);
236 function Associated_Node
237 (N : Node_Id) return Node_Id is
240 or else NT (N).Nkind in N_Has_Entity
241 or else NT (N).Nkind = N_Aggregate
242 or else NT (N).Nkind = N_Extension_Aggregate
243 or else NT (N).Nkind = N_Selected_Component);
248 (N : Node_Id) return Node_Id is
251 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
255 function Attribute_Name
256 (N : Node_Id) return Name_Id is
259 or else NT (N).Nkind = N_Attribute_Reference);
263 function Aux_Decls_Node
264 (N : Node_Id) return Node_Id is
267 or else NT (N).Nkind = N_Compilation_Unit);
271 function Backwards_OK
272 (N : Node_Id) return Boolean is
275 or else NT (N).Nkind = N_Assignment_Statement);
279 function Bad_Is_Detected
280 (N : Node_Id) return Boolean is
283 or else NT (N).Nkind = N_Subprogram_Body);
287 function Body_Required
288 (N : Node_Id) return Boolean is
291 or else NT (N).Nkind = N_Compilation_Unit);
295 function Body_To_Inline
296 (N : Node_Id) return Node_Id is
299 or else NT (N).Nkind = N_Subprogram_Declaration);
304 (N : Node_Id) return Boolean is
307 or else NT (N).Nkind = N_Component_Association
308 or else NT (N).Nkind = N_Formal_Package_Declaration
309 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
314 (N : Node_Id) return Boolean is
317 or else NT (N).Nkind = N_Return_Statement);
321 function Char_Literal_Value
322 (N : Node_Id) return Char_Code is
325 or else NT (N).Nkind = N_Character_Literal);
326 return Char_Code2 (N);
327 end Char_Literal_Value;
330 (N : Node_Id) return Name_Id is
333 or else NT (N).Nkind in N_Has_Chars);
337 function Check_Address_Alignment
338 (N : Node_Id) return Boolean is
341 or else NT (N).Nkind = N_Attribute_Definition_Clause);
343 end Check_Address_Alignment;
345 function Choice_Parameter
346 (N : Node_Id) return Node_Id is
349 or else NT (N).Nkind = N_Exception_Handler);
351 end Choice_Parameter;
354 (N : Node_Id) return List_Id is
357 or else NT (N).Nkind = N_Component_Association);
361 function Compile_Time_Known_Aggregate
362 (N : Node_Id) return Boolean is
365 or else NT (N).Nkind = N_Aggregate);
367 end Compile_Time_Known_Aggregate;
369 function Component_Associations
370 (N : Node_Id) return List_Id is
373 or else NT (N).Nkind = N_Aggregate
374 or else NT (N).Nkind = N_Extension_Aggregate);
376 end Component_Associations;
378 function Component_Clauses
379 (N : Node_Id) return List_Id is
382 or else NT (N).Nkind = N_Record_Representation_Clause);
384 end Component_Clauses;
386 function Component_Definition
387 (N : Node_Id) return Node_Id is
390 or else NT (N).Nkind = N_Component_Declaration
391 or else NT (N).Nkind = N_Constrained_Array_Definition
392 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
394 end Component_Definition;
396 function Component_Items
397 (N : Node_Id) return List_Id is
400 or else NT (N).Nkind = N_Component_List);
404 function Component_List
405 (N : Node_Id) return Node_Id is
408 or else NT (N).Nkind = N_Record_Definition
409 or else NT (N).Nkind = N_Variant);
413 function Component_Name
414 (N : Node_Id) return Node_Id is
417 or else NT (N).Nkind = N_Component_Clause);
422 (N : Node_Id) return Node_Id is
425 or else NT (N).Nkind = N_Accept_Alternative
426 or else NT (N).Nkind = N_Delay_Alternative
427 or else NT (N).Nkind = N_Elsif_Part
428 or else NT (N).Nkind = N_Entry_Body_Formal_Part
429 or else NT (N).Nkind = N_Exit_Statement
430 or else NT (N).Nkind = N_If_Statement
431 or else NT (N).Nkind = N_Iteration_Scheme
432 or else NT (N).Nkind = N_Raise_Constraint_Error
433 or else NT (N).Nkind = N_Raise_Program_Error
434 or else NT (N).Nkind = N_Raise_Storage_Error
435 or else NT (N).Nkind = N_Terminate_Alternative);
439 function Condition_Actions
440 (N : Node_Id) return List_Id is
443 or else NT (N).Nkind = N_Elsif_Part
444 or else NT (N).Nkind = N_Iteration_Scheme);
446 end Condition_Actions;
448 function Config_Pragmas
449 (N : Node_Id) return List_Id is
452 or else NT (N).Nkind = N_Compilation_Unit_Aux);
456 function Constant_Present
457 (N : Node_Id) return Boolean is
460 or else NT (N).Nkind = N_Access_To_Object_Definition
461 or else NT (N).Nkind = N_Object_Declaration);
463 end Constant_Present;
466 (N : Node_Id) return Node_Id is
469 or else NT (N).Nkind = N_Subtype_Indication);
474 (N : Node_Id) return List_Id is
477 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
481 function Context_Installed
482 (N : Node_Id) return Boolean is
485 or else NT (N).Nkind = N_With_Clause);
487 end Context_Installed;
489 function Context_Items
490 (N : Node_Id) return List_Id is
493 or else NT (N).Nkind = N_Compilation_Unit);
497 function Controlling_Argument
498 (N : Node_Id) return Node_Id is
501 or else NT (N).Nkind = N_Function_Call
502 or else NT (N).Nkind = N_Procedure_Call_Statement);
504 end Controlling_Argument;
506 function Conversion_OK
507 (N : Node_Id) return Boolean is
510 or else NT (N).Nkind = N_Type_Conversion);
514 function Corresponding_Body
515 (N : Node_Id) return Node_Id is
518 or else NT (N).Nkind = N_Entry_Declaration
519 or else NT (N).Nkind = N_Generic_Package_Declaration
520 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
521 or else NT (N).Nkind = N_Package_Body_Stub
522 or else NT (N).Nkind = N_Package_Declaration
523 or else NT (N).Nkind = N_Protected_Body_Stub
524 or else NT (N).Nkind = N_Protected_Type_Declaration
525 or else NT (N).Nkind = N_Subprogram_Body_Stub
526 or else NT (N).Nkind = N_Subprogram_Declaration
527 or else NT (N).Nkind = N_Task_Body_Stub
528 or else NT (N).Nkind = N_Task_Type_Declaration);
530 end Corresponding_Body;
532 function Corresponding_Generic_Association
533 (N : Node_Id) return Node_Id is
536 or else NT (N).Nkind = N_Object_Declaration
537 or else NT (N).Nkind = N_Object_Renaming_Declaration);
539 end Corresponding_Generic_Association;
541 function Corresponding_Integer_Value
542 (N : Node_Id) return Uint is
545 or else NT (N).Nkind = N_Real_Literal);
547 end Corresponding_Integer_Value;
549 function Corresponding_Spec
550 (N : Node_Id) return Node_Id is
553 or else NT (N).Nkind = N_Package_Body
554 or else NT (N).Nkind = N_Protected_Body
555 or else NT (N).Nkind = N_Subprogram_Body
556 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
557 or else NT (N).Nkind = N_Task_Body
558 or else NT (N).Nkind = N_With_Clause);
560 end Corresponding_Spec;
562 function Corresponding_Stub
563 (N : Node_Id) return Node_Id is
566 or else NT (N).Nkind = N_Subunit);
568 end Corresponding_Stub;
570 function Dcheck_Function
571 (N : Node_Id) return Entity_Id is
574 or else NT (N).Nkind = N_Variant);
578 function Debug_Statement
579 (N : Node_Id) return Node_Id is
582 or else NT (N).Nkind = N_Pragma);
586 function Declarations
587 (N : Node_Id) return List_Id is
590 or else NT (N).Nkind = N_Accept_Statement
591 or else NT (N).Nkind = N_Block_Statement
592 or else NT (N).Nkind = N_Compilation_Unit_Aux
593 or else NT (N).Nkind = N_Entry_Body
594 or else NT (N).Nkind = N_Package_Body
595 or else NT (N).Nkind = N_Protected_Body
596 or else NT (N).Nkind = N_Subprogram_Body
597 or else NT (N).Nkind = N_Task_Body);
601 function Default_Expression
602 (N : Node_Id) return Node_Id is
605 or else NT (N).Nkind = N_Parameter_Specification);
607 end Default_Expression;
609 function Default_Name
610 (N : Node_Id) return Node_Id is
613 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
617 function Defining_Identifier
618 (N : Node_Id) return Entity_Id is
621 or else NT (N).Nkind = N_Component_Declaration
622 or else NT (N).Nkind = N_Defining_Program_Unit_Name
623 or else NT (N).Nkind = N_Discriminant_Specification
624 or else NT (N).Nkind = N_Entry_Body
625 or else NT (N).Nkind = N_Entry_Declaration
626 or else NT (N).Nkind = N_Entry_Index_Specification
627 or else NT (N).Nkind = N_Exception_Declaration
628 or else NT (N).Nkind = N_Exception_Renaming_Declaration
629 or else NT (N).Nkind = N_Formal_Object_Declaration
630 or else NT (N).Nkind = N_Formal_Package_Declaration
631 or else NT (N).Nkind = N_Formal_Type_Declaration
632 or else NT (N).Nkind = N_Full_Type_Declaration
633 or else NT (N).Nkind = N_Implicit_Label_Declaration
634 or else NT (N).Nkind = N_Incomplete_Type_Declaration
635 or else NT (N).Nkind = N_Loop_Parameter_Specification
636 or else NT (N).Nkind = N_Number_Declaration
637 or else NT (N).Nkind = N_Object_Declaration
638 or else NT (N).Nkind = N_Object_Renaming_Declaration
639 or else NT (N).Nkind = N_Package_Body_Stub
640 or else NT (N).Nkind = N_Parameter_Specification
641 or else NT (N).Nkind = N_Private_Extension_Declaration
642 or else NT (N).Nkind = N_Private_Type_Declaration
643 or else NT (N).Nkind = N_Protected_Body
644 or else NT (N).Nkind = N_Protected_Body_Stub
645 or else NT (N).Nkind = N_Protected_Type_Declaration
646 or else NT (N).Nkind = N_Single_Protected_Declaration
647 or else NT (N).Nkind = N_Single_Task_Declaration
648 or else NT (N).Nkind = N_Subtype_Declaration
649 or else NT (N).Nkind = N_Task_Body
650 or else NT (N).Nkind = N_Task_Body_Stub
651 or else NT (N).Nkind = N_Task_Type_Declaration);
653 end Defining_Identifier;
655 function Defining_Unit_Name
656 (N : Node_Id) return Node_Id is
659 or else NT (N).Nkind = N_Function_Instantiation
660 or else NT (N).Nkind = N_Function_Specification
661 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
662 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
663 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
664 or else NT (N).Nkind = N_Package_Body
665 or else NT (N).Nkind = N_Package_Instantiation
666 or else NT (N).Nkind = N_Package_Renaming_Declaration
667 or else NT (N).Nkind = N_Package_Specification
668 or else NT (N).Nkind = N_Procedure_Instantiation
669 or else NT (N).Nkind = N_Procedure_Specification);
671 end Defining_Unit_Name;
673 function Delay_Alternative
674 (N : Node_Id) return Node_Id is
677 or else NT (N).Nkind = N_Timed_Entry_Call);
679 end Delay_Alternative;
681 function Delay_Finalize_Attach
682 (N : Node_Id) return Boolean is
685 or else NT (N).Nkind = N_Object_Declaration);
687 end Delay_Finalize_Attach;
689 function Delay_Statement
690 (N : Node_Id) return Node_Id is
693 or else NT (N).Nkind = N_Delay_Alternative);
697 function Delta_Expression
698 (N : Node_Id) return Node_Id is
701 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
702 or else NT (N).Nkind = N_Delta_Constraint
703 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
705 end Delta_Expression;
707 function Digits_Expression
708 (N : Node_Id) return Node_Id is
711 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
712 or else NT (N).Nkind = N_Digits_Constraint
713 or else NT (N).Nkind = N_Floating_Point_Definition);
715 end Digits_Expression;
717 function Discr_Check_Funcs_Built
718 (N : Node_Id) return Boolean is
721 or else NT (N).Nkind = N_Full_Type_Declaration);
723 end Discr_Check_Funcs_Built;
725 function Discrete_Choices
726 (N : Node_Id) return List_Id is
729 or else NT (N).Nkind = N_Case_Statement_Alternative
730 or else NT (N).Nkind = N_Variant);
732 end Discrete_Choices;
734 function Discrete_Range
735 (N : Node_Id) return Node_Id is
738 or else NT (N).Nkind = N_Slice);
742 function Discrete_Subtype_Definition
743 (N : Node_Id) return Node_Id is
746 or else NT (N).Nkind = N_Entry_Declaration
747 or else NT (N).Nkind = N_Entry_Index_Specification
748 or else NT (N).Nkind = N_Loop_Parameter_Specification);
750 end Discrete_Subtype_Definition;
752 function Discrete_Subtype_Definitions
753 (N : Node_Id) return List_Id is
756 or else NT (N).Nkind = N_Constrained_Array_Definition);
758 end Discrete_Subtype_Definitions;
760 function Discriminant_Specifications
761 (N : Node_Id) return List_Id is
764 or else NT (N).Nkind = N_Formal_Type_Declaration
765 or else NT (N).Nkind = N_Full_Type_Declaration
766 or else NT (N).Nkind = N_Incomplete_Type_Declaration
767 or else NT (N).Nkind = N_Private_Extension_Declaration
768 or else NT (N).Nkind = N_Private_Type_Declaration
769 or else NT (N).Nkind = N_Protected_Type_Declaration
770 or else NT (N).Nkind = N_Task_Type_Declaration);
772 end Discriminant_Specifications;
774 function Discriminant_Type
775 (N : Node_Id) return Node_Id is
778 or else NT (N).Nkind = N_Discriminant_Specification);
780 end Discriminant_Type;
782 function Do_Accessibility_Check
783 (N : Node_Id) return Boolean is
786 or else NT (N).Nkind = N_Parameter_Specification);
788 end Do_Accessibility_Check;
790 function Do_Discriminant_Check
791 (N : Node_Id) return Boolean is
794 or else NT (N).Nkind = N_Selected_Component);
796 end Do_Discriminant_Check;
798 function Do_Division_Check
799 (N : Node_Id) return Boolean is
802 or else NT (N).Nkind = N_Op_Divide
803 or else NT (N).Nkind = N_Op_Mod
804 or else NT (N).Nkind = N_Op_Rem);
806 end Do_Division_Check;
808 function Do_Length_Check
809 (N : Node_Id) return Boolean is
812 or else NT (N).Nkind = N_Assignment_Statement
813 or else NT (N).Nkind = N_Op_And
814 or else NT (N).Nkind = N_Op_Or
815 or else NT (N).Nkind = N_Op_Xor
816 or else NT (N).Nkind = N_Type_Conversion);
820 function Do_Overflow_Check
821 (N : Node_Id) return Boolean is
824 or else NT (N).Nkind in N_Op
825 or else NT (N).Nkind = N_Attribute_Reference
826 or else NT (N).Nkind = N_Type_Conversion);
828 end Do_Overflow_Check;
830 function Do_Range_Check
831 (N : Node_Id) return Boolean is
834 or else NT (N).Nkind in N_Subexpr);
838 function Do_Storage_Check
839 (N : Node_Id) return Boolean is
842 or else NT (N).Nkind = N_Allocator
843 or else NT (N).Nkind = N_Subprogram_Body);
845 end Do_Storage_Check;
847 function Do_Tag_Check
848 (N : Node_Id) return Boolean is
851 or else NT (N).Nkind = N_Assignment_Statement
852 or else NT (N).Nkind = N_Function_Call
853 or else NT (N).Nkind = N_Procedure_Call_Statement
854 or else NT (N).Nkind = N_Return_Statement
855 or else NT (N).Nkind = N_Type_Conversion);
859 function Elaborate_All_Present
860 (N : Node_Id) return Boolean is
863 or else NT (N).Nkind = N_With_Clause);
865 end Elaborate_All_Present;
867 function Elaborate_Present
868 (N : Node_Id) return Boolean is
871 or else NT (N).Nkind = N_With_Clause);
873 end Elaborate_Present;
875 function Elaboration_Boolean
876 (N : Node_Id) return Node_Id is
879 or else NT (N).Nkind = N_Function_Specification
880 or else NT (N).Nkind = N_Procedure_Specification);
882 end Elaboration_Boolean;
884 function Else_Actions
885 (N : Node_Id) return List_Id is
888 or else NT (N).Nkind = N_Conditional_Expression);
892 function Else_Statements
893 (N : Node_Id) return List_Id is
896 or else NT (N).Nkind = N_Conditional_Entry_Call
897 or else NT (N).Nkind = N_If_Statement
898 or else NT (N).Nkind = N_Selective_Accept);
903 (N : Node_Id) return List_Id is
906 or else NT (N).Nkind = N_If_Statement);
910 function Enclosing_Variant
911 (N : Node_Id) return Node_Id is
914 or else NT (N).Nkind = N_Variant);
916 end Enclosing_Variant;
919 (N : Node_Id) return Node_Id is
922 or else NT (N).Nkind = N_Enumeration_Type_Definition
923 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
924 or else NT (N).Nkind = N_Loop_Statement
925 or else NT (N).Nkind = N_Package_Specification
926 or else NT (N).Nkind = N_Protected_Body
927 or else NT (N).Nkind = N_Protected_Definition
928 or else NT (N).Nkind = N_Record_Definition
929 or else NT (N).Nkind = N_Task_Definition);
934 (N : Node_Id) return Uint is
937 or else NT (N).Nkind = N_Case_Statement
938 or else NT (N).Nkind = N_If_Statement);
943 (N : Node_Id) return Node_Id is
946 or else NT (N).Nkind in N_Has_Entity
947 or else NT (N).Nkind = N_Freeze_Entity);
951 function Entity_Or_Associated_Node
952 (N : Node_Id) return Node_Id is
955 or else NT (N).Nkind in N_Has_Entity
956 or else NT (N).Nkind = N_Freeze_Entity);
958 end Entity_Or_Associated_Node;
960 function Entry_Body_Formal_Part
961 (N : Node_Id) return Node_Id is
964 or else NT (N).Nkind = N_Entry_Body);
966 end Entry_Body_Formal_Part;
968 function Entry_Call_Alternative
969 (N : Node_Id) return Node_Id is
972 or else NT (N).Nkind = N_Conditional_Entry_Call
973 or else NT (N).Nkind = N_Timed_Entry_Call);
975 end Entry_Call_Alternative;
977 function Entry_Call_Statement
978 (N : Node_Id) return Node_Id is
981 or else NT (N).Nkind = N_Entry_Call_Alternative);
983 end Entry_Call_Statement;
985 function Entry_Direct_Name
986 (N : Node_Id) return Node_Id is
989 or else NT (N).Nkind = N_Accept_Statement);
991 end Entry_Direct_Name;
994 (N : Node_Id) return Node_Id is
997 or else NT (N).Nkind = N_Accept_Statement);
1001 function Entry_Index_Specification
1002 (N : Node_Id) return Node_Id is
1004 pragma Assert (False
1005 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
1007 end Entry_Index_Specification;
1010 (N : Node_Id) return Node_Id is
1012 pragma Assert (False
1013 or else NT (N).Nkind in N_Has_Etype);
1017 function Exception_Choices
1018 (N : Node_Id) return List_Id is
1020 pragma Assert (False
1021 or else NT (N).Nkind = N_Exception_Handler);
1023 end Exception_Choices;
1025 function Exception_Handlers
1026 (N : Node_Id) return List_Id is
1028 pragma Assert (False
1029 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1031 end Exception_Handlers;
1033 function Exception_Junk
1034 (N : Node_Id) return Boolean is
1036 pragma Assert (False
1037 or else NT (N).Nkind = N_Goto_Statement
1038 or else NT (N).Nkind = N_Label
1039 or else NT (N).Nkind = N_Object_Declaration
1040 or else NT (N).Nkind = N_Subtype_Declaration);
1044 function Expansion_Delayed
1045 (N : Node_Id) return Boolean is
1047 pragma Assert (False
1048 or else NT (N).Nkind = N_Aggregate
1049 or else NT (N).Nkind = N_Extension_Aggregate);
1051 end Expansion_Delayed;
1053 function Explicit_Actual_Parameter
1054 (N : Node_Id) return Node_Id is
1056 pragma Assert (False
1057 or else NT (N).Nkind = N_Parameter_Association);
1059 end Explicit_Actual_Parameter;
1061 function Explicit_Generic_Actual_Parameter
1062 (N : Node_Id) return Node_Id is
1064 pragma Assert (False
1065 or else NT (N).Nkind = N_Generic_Association);
1067 end Explicit_Generic_Actual_Parameter;
1070 (N : Node_Id) return Node_Id is
1072 pragma Assert (False
1073 or else NT (N).Nkind = N_Allocator
1074 or else NT (N).Nkind = N_Assignment_Statement
1075 or else NT (N).Nkind = N_At_Clause
1076 or else NT (N).Nkind = N_Attribute_Definition_Clause
1077 or else NT (N).Nkind = N_Case_Statement
1078 or else NT (N).Nkind = N_Code_Statement
1079 or else NT (N).Nkind = N_Component_Association
1080 or else NT (N).Nkind = N_Component_Declaration
1081 or else NT (N).Nkind = N_Delay_Relative_Statement
1082 or else NT (N).Nkind = N_Delay_Until_Statement
1083 or else NT (N).Nkind = N_Discriminant_Association
1084 or else NT (N).Nkind = N_Discriminant_Specification
1085 or else NT (N).Nkind = N_Exception_Declaration
1086 or else NT (N).Nkind = N_Formal_Object_Declaration
1087 or else NT (N).Nkind = N_Free_Statement
1088 or else NT (N).Nkind = N_Mod_Clause
1089 or else NT (N).Nkind = N_Modular_Type_Definition
1090 or else NT (N).Nkind = N_Number_Declaration
1091 or else NT (N).Nkind = N_Object_Declaration
1092 or else NT (N).Nkind = N_Parameter_Specification
1093 or else NT (N).Nkind = N_Pragma_Argument_Association
1094 or else NT (N).Nkind = N_Qualified_Expression
1095 or else NT (N).Nkind = N_Return_Statement
1096 or else NT (N).Nkind = N_Type_Conversion
1097 or else NT (N).Nkind = N_Unchecked_Expression
1098 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1102 function Expressions
1103 (N : Node_Id) return List_Id is
1105 pragma Assert (False
1106 or else NT (N).Nkind = N_Aggregate
1107 or else NT (N).Nkind = N_Attribute_Reference
1108 or else NT (N).Nkind = N_Conditional_Expression
1109 or else NT (N).Nkind = N_Extension_Aggregate
1110 or else NT (N).Nkind = N_Indexed_Component);
1115 (N : Node_Id) return Node_Id is
1117 pragma Assert (False
1118 or else NT (N).Nkind = N_Component_Clause);
1122 function First_Inlined_Subprogram
1123 (N : Node_Id) return Entity_Id is
1125 pragma Assert (False
1126 or else NT (N).Nkind = N_Compilation_Unit);
1128 end First_Inlined_Subprogram;
1131 (N : Node_Id) return Boolean is
1133 pragma Assert (False
1134 or else NT (N).Nkind = N_With_Clause);
1138 function First_Named_Actual
1139 (N : Node_Id) return Node_Id is
1141 pragma Assert (False
1142 or else NT (N).Nkind = N_Entry_Call_Statement
1143 or else NT (N).Nkind = N_Function_Call
1144 or else NT (N).Nkind = N_Procedure_Call_Statement);
1146 end First_Named_Actual;
1148 function First_Real_Statement
1149 (N : Node_Id) return Node_Id is
1151 pragma Assert (False
1152 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1154 end First_Real_Statement;
1156 function First_Subtype_Link
1157 (N : Node_Id) return Entity_Id is
1159 pragma Assert (False
1160 or else NT (N).Nkind = N_Freeze_Entity);
1162 end First_Subtype_Link;
1164 function Float_Truncate
1165 (N : Node_Id) return Boolean is
1167 pragma Assert (False
1168 or else NT (N).Nkind = N_Type_Conversion);
1172 function Formal_Type_Definition
1173 (N : Node_Id) return Node_Id is
1175 pragma Assert (False
1176 or else NT (N).Nkind = N_Formal_Type_Declaration);
1178 end Formal_Type_Definition;
1180 function Forwards_OK
1181 (N : Node_Id) return Boolean is
1183 pragma Assert (False
1184 or else NT (N).Nkind = N_Assignment_Statement);
1188 function From_At_Mod
1189 (N : Node_Id) return Boolean is
1191 pragma Assert (False
1192 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1196 function Generic_Associations
1197 (N : Node_Id) return List_Id is
1199 pragma Assert (False
1200 or else NT (N).Nkind = N_Formal_Package_Declaration
1201 or else NT (N).Nkind = N_Function_Instantiation
1202 or else NT (N).Nkind = N_Package_Instantiation
1203 or else NT (N).Nkind = N_Procedure_Instantiation);
1205 end Generic_Associations;
1207 function Generic_Formal_Declarations
1208 (N : Node_Id) return List_Id is
1210 pragma Assert (False
1211 or else NT (N).Nkind = N_Generic_Package_Declaration
1212 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1214 end Generic_Formal_Declarations;
1216 function Generic_Parent
1217 (N : Node_Id) return Node_Id is
1219 pragma Assert (False
1220 or else NT (N).Nkind = N_Function_Specification
1221 or else NT (N).Nkind = N_Package_Specification
1222 or else NT (N).Nkind = N_Procedure_Specification);
1226 function Generic_Parent_Type
1227 (N : Node_Id) return Node_Id is
1229 pragma Assert (False
1230 or else NT (N).Nkind = N_Subtype_Declaration);
1232 end Generic_Parent_Type;
1234 function Handled_Statement_Sequence
1235 (N : Node_Id) return Node_Id is
1237 pragma Assert (False
1238 or else NT (N).Nkind = N_Accept_Statement
1239 or else NT (N).Nkind = N_Block_Statement
1240 or else NT (N).Nkind = N_Entry_Body
1241 or else NT (N).Nkind = N_Package_Body
1242 or else NT (N).Nkind = N_Subprogram_Body
1243 or else NT (N).Nkind = N_Task_Body);
1245 end Handled_Statement_Sequence;
1247 function Handler_List_Entry
1248 (N : Node_Id) return Node_Id is
1250 pragma Assert (False
1251 or else NT (N).Nkind = N_Object_Declaration);
1253 end Handler_List_Entry;
1255 function Has_Created_Identifier
1256 (N : Node_Id) return Boolean is
1258 pragma Assert (False
1259 or else NT (N).Nkind = N_Block_Statement
1260 or else NT (N).Nkind = N_Loop_Statement);
1262 end Has_Created_Identifier;
1264 function Has_Dynamic_Length_Check
1265 (N : Node_Id) return Boolean is
1268 end Has_Dynamic_Length_Check;
1270 function Has_Dynamic_Range_Check
1271 (N : Node_Id) return Boolean is
1274 end Has_Dynamic_Range_Check;
1276 function Has_No_Elaboration_Code
1277 (N : Node_Id) return Boolean is
1279 pragma Assert (False
1280 or else NT (N).Nkind = N_Compilation_Unit);
1282 end Has_No_Elaboration_Code;
1284 function Has_Priority_Pragma
1285 (N : Node_Id) return Boolean is
1287 pragma Assert (False
1288 or else NT (N).Nkind = N_Protected_Definition
1289 or else NT (N).Nkind = N_Subprogram_Body
1290 or else NT (N).Nkind = N_Task_Definition);
1292 end Has_Priority_Pragma;
1294 function Has_Private_View
1295 (N : Node_Id) return Boolean is
1297 pragma Assert (False
1298 or else NT (N).Nkind in N_Op
1299 or else NT (N).Nkind = N_Character_Literal
1300 or else NT (N).Nkind = N_Expanded_Name
1301 or else NT (N).Nkind = N_Identifier
1302 or else NT (N).Nkind = N_Operator_Symbol);
1304 end Has_Private_View;
1306 function Has_Storage_Size_Pragma
1307 (N : Node_Id) return Boolean is
1309 pragma Assert (False
1310 or else NT (N).Nkind = N_Task_Definition);
1312 end Has_Storage_Size_Pragma;
1314 function Has_Task_Info_Pragma
1315 (N : Node_Id) return Boolean is
1317 pragma Assert (False
1318 or else NT (N).Nkind = N_Task_Definition);
1320 end Has_Task_Info_Pragma;
1322 function Has_Task_Name_Pragma
1323 (N : Node_Id) return Boolean is
1325 pragma Assert (False
1326 or else NT (N).Nkind = N_Task_Definition);
1328 end Has_Task_Name_Pragma;
1330 function Has_Wide_Character
1331 (N : Node_Id) return Boolean is
1333 pragma Assert (False
1334 or else NT (N).Nkind = N_String_Literal);
1336 end Has_Wide_Character;
1338 function Hidden_By_Use_Clause
1339 (N : Node_Id) return Elist_Id is
1341 pragma Assert (False
1342 or else NT (N).Nkind = N_Use_Package_Clause
1343 or else NT (N).Nkind = N_Use_Type_Clause);
1345 end Hidden_By_Use_Clause;
1348 (N : Node_Id) return Node_Id is
1350 pragma Assert (False
1351 or else NT (N).Nkind = N_Range
1352 or else NT (N).Nkind = N_Real_Range_Specification
1353 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1358 (N : Node_Id) return Node_Id is
1360 pragma Assert (False
1361 or else NT (N).Nkind = N_At_Clause
1362 or else NT (N).Nkind = N_Block_Statement
1363 or else NT (N).Nkind = N_Designator
1364 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1365 or else NT (N).Nkind = N_Label
1366 or else NT (N).Nkind = N_Loop_Statement
1367 or else NT (N).Nkind = N_Record_Representation_Clause
1368 or else NT (N).Nkind = N_Subprogram_Info);
1372 function Implicit_With
1373 (N : Node_Id) return Boolean is
1375 pragma Assert (False
1376 or else NT (N).Nkind = N_With_Clause);
1381 (N : Node_Id) return Boolean is
1383 pragma Assert (False
1384 or else NT (N).Nkind = N_Formal_Object_Declaration
1385 or else NT (N).Nkind = N_Parameter_Specification);
1389 function Includes_Infinities
1390 (N : Node_Id) return Boolean is
1392 pragma Assert (False
1393 or else NT (N).Nkind = N_Range);
1395 end Includes_Infinities;
1397 function Instance_Spec
1398 (N : Node_Id) return Node_Id is
1400 pragma Assert (False
1401 or else NT (N).Nkind = N_Formal_Package_Declaration
1402 or else NT (N).Nkind = N_Function_Instantiation
1403 or else NT (N).Nkind = N_Package_Instantiation
1404 or else NT (N).Nkind = N_Procedure_Instantiation);
1409 (N : Node_Id) return Uint is
1411 pragma Assert (False
1412 or else NT (N).Nkind = N_Integer_Literal);
1416 function Is_Asynchronous_Call_Block
1417 (N : Node_Id) return Boolean is
1419 pragma Assert (False
1420 or else NT (N).Nkind = N_Block_Statement);
1422 end Is_Asynchronous_Call_Block;
1424 function Is_Component_Left_Opnd
1425 (N : Node_Id) return Boolean is
1427 pragma Assert (False
1428 or else NT (N).Nkind = N_Op_Concat);
1430 end Is_Component_Left_Opnd;
1432 function Is_Component_Right_Opnd
1433 (N : Node_Id) return Boolean is
1435 pragma Assert (False
1436 or else NT (N).Nkind = N_Op_Concat);
1438 end Is_Component_Right_Opnd;
1440 function Is_Controlling_Actual
1441 (N : Node_Id) return Boolean is
1443 pragma Assert (False
1444 or else NT (N).Nkind in N_Subexpr);
1446 end Is_Controlling_Actual;
1448 function Is_In_Discriminant_Check
1449 (N : Node_Id) return Boolean is
1451 pragma Assert (False
1452 or else NT (N).Nkind = N_Selected_Component);
1454 end Is_In_Discriminant_Check;
1456 function Is_Machine_Number
1457 (N : Node_Id) return Boolean is
1459 pragma Assert (False
1460 or else NT (N).Nkind = N_Real_Literal);
1462 end Is_Machine_Number;
1464 function Is_Null_Loop
1465 (N : Node_Id) return Boolean is
1467 pragma Assert (False
1468 or else NT (N).Nkind = N_Loop_Statement);
1472 function Is_Overloaded
1473 (N : Node_Id) return Boolean is
1475 pragma Assert (False
1476 or else NT (N).Nkind in N_Subexpr);
1480 function Is_Power_Of_2_For_Shift
1481 (N : Node_Id) return Boolean is
1483 pragma Assert (False
1484 or else NT (N).Nkind = N_Op_Expon);
1486 end Is_Power_Of_2_For_Shift;
1488 function Is_Protected_Subprogram_Body
1489 (N : Node_Id) return Boolean is
1491 pragma Assert (False
1492 or else NT (N).Nkind = N_Subprogram_Body);
1494 end Is_Protected_Subprogram_Body;
1496 function Is_Static_Expression
1497 (N : Node_Id) return Boolean is
1499 pragma Assert (False
1500 or else NT (N).Nkind in N_Subexpr);
1502 end Is_Static_Expression;
1504 function Is_Subprogram_Descriptor
1505 (N : Node_Id) return Boolean is
1507 pragma Assert (False
1508 or else NT (N).Nkind = N_Object_Declaration);
1510 end Is_Subprogram_Descriptor;
1512 function Is_Task_Allocation_Block
1513 (N : Node_Id) return Boolean is
1515 pragma Assert (False
1516 or else NT (N).Nkind = N_Block_Statement);
1518 end Is_Task_Allocation_Block;
1520 function Is_Task_Master
1521 (N : Node_Id) return Boolean is
1523 pragma Assert (False
1524 or else NT (N).Nkind = N_Block_Statement
1525 or else NT (N).Nkind = N_Subprogram_Body
1526 or else NT (N).Nkind = N_Task_Body);
1530 function Iteration_Scheme
1531 (N : Node_Id) return Node_Id is
1533 pragma Assert (False
1534 or else NT (N).Nkind = N_Loop_Statement);
1536 end Iteration_Scheme;
1539 (N : Node_Id) return Node_Id is
1541 pragma Assert (False
1542 or else NT (N).Nkind = N_Itype_Reference);
1546 function Kill_Range_Check
1547 (N : Node_Id) return Boolean is
1549 pragma Assert (False
1550 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1552 end Kill_Range_Check;
1554 function Label_Construct
1555 (N : Node_Id) return Node_Id is
1557 pragma Assert (False
1558 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1560 end Label_Construct;
1563 (N : Node_Id) return Node_Id is
1565 pragma Assert (False
1566 or else NT (N).Nkind = N_Component_Clause);
1571 (N : Node_Id) return Boolean is
1573 pragma Assert (False
1574 or else NT (N).Nkind = N_With_Clause);
1579 (N : Node_Id) return Node_Id is
1581 pragma Assert (False
1582 or else NT (N).Nkind = N_And_Then
1583 or else NT (N).Nkind = N_In
1584 or else NT (N).Nkind = N_Not_In
1585 or else NT (N).Nkind = N_Or_Else
1586 or else NT (N).Nkind in N_Binary_Op);
1590 function Library_Unit
1591 (N : Node_Id) return Node_Id is
1593 pragma Assert (False
1594 or else NT (N).Nkind = N_Compilation_Unit
1595 or else NT (N).Nkind = N_Package_Body_Stub
1596 or else NT (N).Nkind = N_Protected_Body_Stub
1597 or else NT (N).Nkind = N_Subprogram_Body_Stub
1598 or else NT (N).Nkind = N_Task_Body_Stub
1599 or else NT (N).Nkind = N_With_Clause);
1603 function Limited_View_Installed
1604 (N : Node_Id) return Boolean is
1606 pragma Assert (False
1607 or else NT (N).Nkind = N_Package_Specification
1608 or else NT (N).Nkind = N_With_Clause);
1610 end Limited_View_Installed;
1612 function Limited_Present
1613 (N : Node_Id) return Boolean is
1615 pragma Assert (False
1616 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1617 or else NT (N).Nkind = N_Private_Type_Declaration
1618 or else NT (N).Nkind = N_Record_Definition
1619 or else NT (N).Nkind = N_With_Clause);
1621 end Limited_Present;
1624 (N : Node_Id) return List_Id is
1626 pragma Assert (False
1627 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1631 function Loop_Actions
1632 (N : Node_Id) return List_Id is
1634 pragma Assert (False
1635 or else NT (N).Nkind = N_Component_Association);
1639 function Loop_Parameter_Specification
1640 (N : Node_Id) return Node_Id is
1642 pragma Assert (False
1643 or else NT (N).Nkind = N_Iteration_Scheme);
1645 end Loop_Parameter_Specification;
1648 (N : Node_Id) return Node_Id is
1650 pragma Assert (False
1651 or else NT (N).Nkind = N_Range
1652 or else NT (N).Nkind = N_Real_Range_Specification
1653 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1658 (N : Node_Id) return Node_Id is
1660 pragma Assert (False
1661 or else NT (N).Nkind = N_Record_Representation_Clause);
1666 (N : Node_Id) return Boolean is
1668 pragma Assert (False
1669 or else NT (N).Nkind = N_Component_Declaration
1670 or else NT (N).Nkind = N_Discriminant_Specification
1671 or else NT (N).Nkind = N_Exception_Declaration
1672 or else NT (N).Nkind = N_Formal_Object_Declaration
1673 or else NT (N).Nkind = N_Number_Declaration
1674 or else NT (N).Nkind = N_Object_Declaration
1675 or else NT (N).Nkind = N_Parameter_Specification);
1679 function Must_Be_Byte_Aligned
1680 (N : Node_Id) return Boolean is
1682 pragma Assert (False
1683 or else NT (N).Nkind = N_Attribute_Reference);
1685 end Must_Be_Byte_Aligned;
1687 function Must_Not_Freeze
1688 (N : Node_Id) return Boolean is
1690 pragma Assert (False
1691 or else NT (N).Nkind = N_Subtype_Indication
1692 or else NT (N).Nkind in N_Subexpr);
1694 end Must_Not_Freeze;
1697 (N : Node_Id) return Node_Id is
1699 pragma Assert (False
1700 or else NT (N).Nkind = N_Assignment_Statement
1701 or else NT (N).Nkind = N_Attribute_Definition_Clause
1702 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1703 or else NT (N).Nkind = N_Designator
1704 or else NT (N).Nkind = N_Entry_Call_Statement
1705 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1706 or else NT (N).Nkind = N_Exit_Statement
1707 or else NT (N).Nkind = N_Formal_Package_Declaration
1708 or else NT (N).Nkind = N_Function_Call
1709 or else NT (N).Nkind = N_Function_Instantiation
1710 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1711 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1712 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1713 or else NT (N).Nkind = N_Goto_Statement
1714 or else NT (N).Nkind = N_Object_Renaming_Declaration
1715 or else NT (N).Nkind = N_Package_Instantiation
1716 or else NT (N).Nkind = N_Package_Renaming_Declaration
1717 or else NT (N).Nkind = N_Procedure_Call_Statement
1718 or else NT (N).Nkind = N_Procedure_Instantiation
1719 or else NT (N).Nkind = N_Raise_Statement
1720 or else NT (N).Nkind = N_Requeue_Statement
1721 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1722 or else NT (N).Nkind = N_Subunit
1723 or else NT (N).Nkind = N_Variant_Part
1724 or else NT (N).Nkind = N_With_Clause
1725 or else NT (N).Nkind = N_With_Type_Clause);
1730 (N : Node_Id) return List_Id is
1732 pragma Assert (False
1733 or else NT (N).Nkind = N_Abort_Statement
1734 or else NT (N).Nkind = N_Use_Package_Clause);
1738 function Next_Entity
1739 (N : Node_Id) return Node_Id is
1741 pragma Assert (False
1742 or else NT (N).Nkind = N_Defining_Character_Literal
1743 or else NT (N).Nkind = N_Defining_Identifier
1744 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1748 function Next_Named_Actual
1749 (N : Node_Id) return Node_Id is
1751 pragma Assert (False
1752 or else NT (N).Nkind = N_Parameter_Association);
1754 end Next_Named_Actual;
1756 function Next_Rep_Item
1757 (N : Node_Id) return Node_Id is
1759 pragma Assert (False
1760 or else NT (N).Nkind = N_Attribute_Definition_Clause
1761 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1762 or else NT (N).Nkind = N_Pragma
1763 or else NT (N).Nkind = N_Record_Representation_Clause);
1767 function Next_Use_Clause
1768 (N : Node_Id) return Node_Id is
1770 pragma Assert (False
1771 or else NT (N).Nkind = N_Use_Package_Clause
1772 or else NT (N).Nkind = N_Use_Type_Clause);
1774 end Next_Use_Clause;
1776 function No_Ctrl_Actions
1777 (N : Node_Id) return Boolean is
1779 pragma Assert (False
1780 or else NT (N).Nkind = N_Assignment_Statement);
1782 end No_Ctrl_Actions;
1784 function No_Elaboration_Check
1785 (N : Node_Id) return Boolean is
1787 pragma Assert (False
1788 or else NT (N).Nkind = N_Function_Call
1789 or else NT (N).Nkind = N_Procedure_Call_Statement);
1791 end No_Elaboration_Check;
1793 function No_Entities_Ref_In_Spec
1794 (N : Node_Id) return Boolean is
1796 pragma Assert (False
1797 or else NT (N).Nkind = N_With_Clause);
1799 end No_Entities_Ref_In_Spec;
1801 function No_Initialization
1802 (N : Node_Id) return Boolean is
1804 pragma Assert (False
1805 or else NT (N).Nkind = N_Allocator
1806 or else NT (N).Nkind = N_Object_Declaration);
1808 end No_Initialization;
1810 function No_Truncation
1811 (N : Node_Id) return Boolean is
1813 pragma Assert (False
1814 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1818 function Null_Present
1819 (N : Node_Id) return Boolean is
1821 pragma Assert (False
1822 or else NT (N).Nkind = N_Component_List
1823 or else NT (N).Nkind = N_Record_Definition);
1827 function Null_Record_Present
1828 (N : Node_Id) return Boolean is
1830 pragma Assert (False
1831 or else NT (N).Nkind = N_Aggregate
1832 or else NT (N).Nkind = N_Extension_Aggregate);
1834 end Null_Record_Present;
1836 function Object_Definition
1837 (N : Node_Id) return Node_Id is
1839 pragma Assert (False
1840 or else NT (N).Nkind = N_Object_Declaration);
1842 end Object_Definition;
1844 function OK_For_Stream
1845 (N : Node_Id) return Boolean is
1847 pragma Assert (False
1848 or else NT (N).Nkind = N_Attribute_Reference);
1852 function Original_Discriminant
1853 (N : Node_Id) return Node_Id is
1855 pragma Assert (False
1856 or else NT (N).Nkind = N_Identifier);
1858 end Original_Discriminant;
1860 function Original_Entity
1861 (N : Node_Id) return Entity_Id is
1863 pragma Assert (False
1864 or else NT (N).Nkind = N_Integer_Literal
1865 or else NT (N).Nkind = N_Real_Literal);
1867 end Original_Entity;
1869 function Others_Discrete_Choices
1870 (N : Node_Id) return List_Id is
1872 pragma Assert (False
1873 or else NT (N).Nkind = N_Others_Choice);
1875 end Others_Discrete_Choices;
1877 function Out_Present
1878 (N : Node_Id) return Boolean is
1880 pragma Assert (False
1881 or else NT (N).Nkind = N_Formal_Object_Declaration
1882 or else NT (N).Nkind = N_Parameter_Specification);
1886 function Parameter_Associations
1887 (N : Node_Id) return List_Id is
1889 pragma Assert (False
1890 or else NT (N).Nkind = N_Entry_Call_Statement
1891 or else NT (N).Nkind = N_Function_Call
1892 or else NT (N).Nkind = N_Procedure_Call_Statement);
1894 end Parameter_Associations;
1896 function Parameter_List_Truncated
1897 (N : Node_Id) return Boolean is
1899 pragma Assert (False
1900 or else NT (N).Nkind = N_Function_Call
1901 or else NT (N).Nkind = N_Procedure_Call_Statement);
1903 end Parameter_List_Truncated;
1905 function Parameter_Specifications
1906 (N : Node_Id) return List_Id is
1908 pragma Assert (False
1909 or else NT (N).Nkind = N_Accept_Statement
1910 or else NT (N).Nkind = N_Access_Function_Definition
1911 or else NT (N).Nkind = N_Access_Procedure_Definition
1912 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1913 or else NT (N).Nkind = N_Entry_Declaration
1914 or else NT (N).Nkind = N_Function_Specification
1915 or else NT (N).Nkind = N_Procedure_Specification);
1917 end Parameter_Specifications;
1919 function Parameter_Type
1920 (N : Node_Id) return Node_Id is
1922 pragma Assert (False
1923 or else NT (N).Nkind = N_Parameter_Specification);
1927 function Parent_Spec
1928 (N : Node_Id) return Node_Id is
1930 pragma Assert (False
1931 or else NT (N).Nkind = N_Function_Instantiation
1932 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1933 or else NT (N).Nkind = N_Generic_Package_Declaration
1934 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1935 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1936 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1937 or else NT (N).Nkind = N_Package_Declaration
1938 or else NT (N).Nkind = N_Package_Instantiation
1939 or else NT (N).Nkind = N_Package_Renaming_Declaration
1940 or else NT (N).Nkind = N_Procedure_Instantiation
1941 or else NT (N).Nkind = N_Subprogram_Declaration
1942 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1947 (N : Node_Id) return Node_Id is
1949 pragma Assert (False
1950 or else NT (N).Nkind = N_Component_Clause);
1954 function Pragma_Argument_Associations
1955 (N : Node_Id) return List_Id is
1957 pragma Assert (False
1958 or else NT (N).Nkind = N_Pragma);
1960 end Pragma_Argument_Associations;
1962 function Pragmas_After
1963 (N : Node_Id) return List_Id is
1965 pragma Assert (False
1966 or else NT (N).Nkind = N_Compilation_Unit_Aux
1967 or else NT (N).Nkind = N_Terminate_Alternative);
1971 function Pragmas_Before
1972 (N : Node_Id) return List_Id is
1974 pragma Assert (False
1975 or else NT (N).Nkind = N_Accept_Alternative
1976 or else NT (N).Nkind = N_Delay_Alternative
1977 or else NT (N).Nkind = N_Entry_Call_Alternative
1978 or else NT (N).Nkind = N_Mod_Clause
1979 or else NT (N).Nkind = N_Terminate_Alternative
1980 or else NT (N).Nkind = N_Triggering_Alternative);
1985 (N : Node_Id) return Node_Id is
1987 pragma Assert (False
1988 or else NT (N).Nkind = N_Attribute_Reference
1989 or else NT (N).Nkind = N_Expanded_Name
1990 or else NT (N).Nkind = N_Explicit_Dereference
1991 or else NT (N).Nkind = N_Indexed_Component
1992 or else NT (N).Nkind = N_Reference
1993 or else NT (N).Nkind = N_Selected_Component
1994 or else NT (N).Nkind = N_Slice);
1998 function Present_Expr
1999 (N : Node_Id) return Uint is
2001 pragma Assert (False
2002 or else NT (N).Nkind = N_Variant);
2007 (N : Node_Id) return Boolean is
2009 pragma Assert (False
2010 or else NT (N).Nkind = N_Component_Declaration
2011 or else NT (N).Nkind = N_Discriminant_Specification
2012 or else NT (N).Nkind = N_Exception_Declaration
2013 or else NT (N).Nkind = N_Formal_Object_Declaration
2014 or else NT (N).Nkind = N_Number_Declaration
2015 or else NT (N).Nkind = N_Object_Declaration
2016 or else NT (N).Nkind = N_Parameter_Specification);
2020 function Print_In_Hex
2021 (N : Node_Id) return Boolean is
2023 pragma Assert (False
2024 or else NT (N).Nkind = N_Integer_Literal);
2028 function Private_Declarations
2029 (N : Node_Id) return List_Id is
2031 pragma Assert (False
2032 or else NT (N).Nkind = N_Package_Specification
2033 or else NT (N).Nkind = N_Protected_Definition
2034 or else NT (N).Nkind = N_Task_Definition);
2036 end Private_Declarations;
2038 function Private_Present
2039 (N : Node_Id) return Boolean is
2041 pragma Assert (False
2042 or else NT (N).Nkind = N_Compilation_Unit
2043 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
2045 end Private_Present;
2047 function Procedure_To_Call
2048 (N : Node_Id) return Node_Id is
2050 pragma Assert (False
2051 or else NT (N).Nkind = N_Allocator
2052 or else NT (N).Nkind = N_Free_Statement
2053 or else NT (N).Nkind = N_Return_Statement);
2055 end Procedure_To_Call;
2057 function Proper_Body
2058 (N : Node_Id) return Node_Id is
2060 pragma Assert (False
2061 or else NT (N).Nkind = N_Subunit);
2065 function Protected_Definition
2066 (N : Node_Id) return Node_Id is
2068 pragma Assert (False
2069 or else NT (N).Nkind = N_Protected_Type_Declaration
2070 or else NT (N).Nkind = N_Single_Protected_Declaration);
2072 end Protected_Definition;
2074 function Protected_Present
2075 (N : Node_Id) return Boolean is
2077 pragma Assert (False
2078 or else NT (N).Nkind = N_Access_Function_Definition
2079 or else NT (N).Nkind = N_Access_Procedure_Definition);
2081 end Protected_Present;
2083 function Raises_Constraint_Error
2084 (N : Node_Id) return Boolean is
2086 pragma Assert (False
2087 or else NT (N).Nkind in N_Subexpr);
2089 end Raises_Constraint_Error;
2091 function Range_Constraint
2092 (N : Node_Id) return Node_Id is
2094 pragma Assert (False
2095 or else NT (N).Nkind = N_Delta_Constraint
2096 or else NT (N).Nkind = N_Digits_Constraint);
2098 end Range_Constraint;
2100 function Range_Expression
2101 (N : Node_Id) return Node_Id is
2103 pragma Assert (False
2104 or else NT (N).Nkind = N_Range_Constraint);
2106 end Range_Expression;
2108 function Real_Range_Specification
2109 (N : Node_Id) return Node_Id is
2111 pragma Assert (False
2112 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2113 or else NT (N).Nkind = N_Floating_Point_Definition
2114 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2116 end Real_Range_Specification;
2119 (N : Node_Id) return Ureal is
2121 pragma Assert (False
2122 or else NT (N).Nkind = N_Real_Literal);
2127 (N : Node_Id) return Uint is
2129 pragma Assert (False
2130 or else NT (N).Nkind = N_Raise_Constraint_Error
2131 or else NT (N).Nkind = N_Raise_Program_Error
2132 or else NT (N).Nkind = N_Raise_Storage_Error);
2136 function Record_Extension_Part
2137 (N : Node_Id) return Node_Id is
2139 pragma Assert (False
2140 or else NT (N).Nkind = N_Derived_Type_Definition);
2142 end Record_Extension_Part;
2144 function Redundant_Use
2145 (N : Node_Id) return Boolean is
2147 pragma Assert (False
2148 or else NT (N).Nkind = N_Attribute_Reference
2149 or else NT (N).Nkind = N_Expanded_Name
2150 or else NT (N).Nkind = N_Identifier);
2154 function Return_Type
2155 (N : Node_Id) return Node_Id is
2157 pragma Assert (False
2158 or else NT (N).Nkind = N_Return_Statement);
2162 function Reverse_Present
2163 (N : Node_Id) return Boolean is
2165 pragma Assert (False
2166 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2168 end Reverse_Present;
2171 (N : Node_Id) return Node_Id is
2173 pragma Assert (False
2174 or else NT (N).Nkind in N_Op
2175 or else NT (N).Nkind = N_And_Then
2176 or else NT (N).Nkind = N_In
2177 or else NT (N).Nkind = N_Not_In
2178 or else NT (N).Nkind = N_Or_Else);
2182 function Rounded_Result
2183 (N : Node_Id) return Boolean is
2185 pragma Assert (False
2186 or else NT (N).Nkind = N_Op_Divide
2187 or else NT (N).Nkind = N_Op_Multiply
2188 or else NT (N).Nkind = N_Type_Conversion);
2193 (N : Node_Id) return Node_Id is
2195 pragma Assert (False
2196 or else NT (N).Nkind = N_Defining_Character_Literal
2197 or else NT (N).Nkind = N_Defining_Identifier
2198 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2202 function Select_Alternatives
2203 (N : Node_Id) return List_Id is
2205 pragma Assert (False
2206 or else NT (N).Nkind = N_Selective_Accept);
2208 end Select_Alternatives;
2210 function Selector_Name
2211 (N : Node_Id) return Node_Id is
2213 pragma Assert (False
2214 or else NT (N).Nkind = N_Expanded_Name
2215 or else NT (N).Nkind = N_Generic_Association
2216 or else NT (N).Nkind = N_Parameter_Association
2217 or else NT (N).Nkind = N_Selected_Component);
2221 function Selector_Names
2222 (N : Node_Id) return List_Id is
2224 pragma Assert (False
2225 or else NT (N).Nkind = N_Discriminant_Association);
2229 function Shift_Count_OK
2230 (N : Node_Id) return Boolean is
2232 pragma Assert (False
2233 or else NT (N).Nkind = N_Op_Rotate_Left
2234 or else NT (N).Nkind = N_Op_Rotate_Right
2235 or else NT (N).Nkind = N_Op_Shift_Left
2236 or else NT (N).Nkind = N_Op_Shift_Right
2237 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2241 function Source_Type
2242 (N : Node_Id) return Entity_Id is
2244 pragma Assert (False
2245 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2249 function Specification
2250 (N : Node_Id) return Node_Id is
2252 pragma Assert (False
2253 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2254 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2255 or else NT (N).Nkind = N_Generic_Package_Declaration
2256 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2257 or else NT (N).Nkind = N_Package_Declaration
2258 or else NT (N).Nkind = N_Subprogram_Body
2259 or else NT (N).Nkind = N_Subprogram_Body_Stub
2260 or else NT (N).Nkind = N_Subprogram_Declaration
2261 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2266 (N : Node_Id) return List_Id is
2268 pragma Assert (False
2269 or else NT (N).Nkind = N_Abortable_Part
2270 or else NT (N).Nkind = N_Accept_Alternative
2271 or else NT (N).Nkind = N_Case_Statement_Alternative
2272 or else NT (N).Nkind = N_Delay_Alternative
2273 or else NT (N).Nkind = N_Entry_Call_Alternative
2274 or else NT (N).Nkind = N_Exception_Handler
2275 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2276 or else NT (N).Nkind = N_Loop_Statement
2277 or else NT (N).Nkind = N_Triggering_Alternative);
2281 function Static_Processing_OK
2282 (N : Node_Id) return Boolean is
2284 pragma Assert (False
2285 or else NT (N).Nkind = N_Aggregate);
2287 end Static_Processing_OK;
2289 function Storage_Pool
2290 (N : Node_Id) return Node_Id is
2292 pragma Assert (False
2293 or else NT (N).Nkind = N_Allocator
2294 or else NT (N).Nkind = N_Free_Statement
2295 or else NT (N).Nkind = N_Return_Statement);
2300 (N : Node_Id) return String_Id is
2302 pragma Assert (False
2303 or else NT (N).Nkind = N_Operator_Symbol
2304 or else NT (N).Nkind = N_String_Literal);
2308 function Subtype_Indication
2309 (N : Node_Id) return Node_Id is
2311 pragma Assert (False
2312 or else NT (N).Nkind = N_Access_To_Object_Definition
2313 or else NT (N).Nkind = N_Component_Definition
2314 or else NT (N).Nkind = N_Derived_Type_Definition
2315 or else NT (N).Nkind = N_Private_Extension_Declaration
2316 or else NT (N).Nkind = N_Subtype_Declaration);
2318 end Subtype_Indication;
2320 function Subtype_Mark
2321 (N : Node_Id) return Node_Id is
2323 pragma Assert (False
2324 or else NT (N).Nkind = N_Access_Definition
2325 or else NT (N).Nkind = N_Access_Function_Definition
2326 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2327 or else NT (N).Nkind = N_Formal_Object_Declaration
2328 or else NT (N).Nkind = N_Function_Specification
2329 or else NT (N).Nkind = N_Object_Renaming_Declaration
2330 or else NT (N).Nkind = N_Qualified_Expression
2331 or else NT (N).Nkind = N_Subtype_Indication
2332 or else NT (N).Nkind = N_Type_Conversion
2333 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2337 function Subtype_Marks
2338 (N : Node_Id) return List_Id is
2340 pragma Assert (False
2341 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2342 or else NT (N).Nkind = N_Use_Type_Clause);
2346 function Tagged_Present
2347 (N : Node_Id) return Boolean is
2349 pragma Assert (False
2350 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2351 or else NT (N).Nkind = N_Private_Type_Declaration
2352 or else NT (N).Nkind = N_Record_Definition
2353 or else NT (N).Nkind = N_With_Type_Clause);
2357 function Target_Type
2358 (N : Node_Id) return Entity_Id is
2360 pragma Assert (False
2361 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2365 function Task_Body_Procedure
2366 (N : Node_Id) return Entity_Id is
2368 pragma Assert (False
2369 or else NT (N).Nkind = N_Task_Type_Declaration);
2371 end Task_Body_Procedure;
2373 function Task_Definition
2374 (N : Node_Id) return Node_Id is
2376 pragma Assert (False
2377 or else NT (N).Nkind = N_Single_Task_Declaration
2378 or else NT (N).Nkind = N_Task_Type_Declaration);
2380 end Task_Definition;
2382 function Then_Actions
2383 (N : Node_Id) return List_Id is
2385 pragma Assert (False
2386 or else NT (N).Nkind = N_Conditional_Expression);
2390 function Then_Statements
2391 (N : Node_Id) return List_Id is
2393 pragma Assert (False
2394 or else NT (N).Nkind = N_Elsif_Part
2395 or else NT (N).Nkind = N_If_Statement);
2397 end Then_Statements;
2399 function Treat_Fixed_As_Integer
2400 (N : Node_Id) return Boolean is
2402 pragma Assert (False
2403 or else NT (N).Nkind = N_Op_Divide
2404 or else NT (N).Nkind = N_Op_Mod
2405 or else NT (N).Nkind = N_Op_Multiply
2406 or else NT (N).Nkind = N_Op_Rem);
2408 end Treat_Fixed_As_Integer;
2410 function Triggering_Alternative
2411 (N : Node_Id) return Node_Id is
2413 pragma Assert (False
2414 or else NT (N).Nkind = N_Asynchronous_Select);
2416 end Triggering_Alternative;
2418 function Triggering_Statement
2419 (N : Node_Id) return Node_Id is
2421 pragma Assert (False
2422 or else NT (N).Nkind = N_Triggering_Alternative);
2424 end Triggering_Statement;
2427 (N : Node_Id) return Elist_Id is
2429 pragma Assert (False
2430 or else NT (N).Nkind = N_Freeze_Entity);
2434 function Type_Definition
2435 (N : Node_Id) return Node_Id is
2437 pragma Assert (False
2438 or else NT (N).Nkind = N_Full_Type_Declaration);
2440 end Type_Definition;
2443 (N : Node_Id) return Node_Id is
2445 pragma Assert (False
2446 or else NT (N).Nkind = N_Compilation_Unit);
2450 function Unknown_Discriminants_Present
2451 (N : Node_Id) return Boolean is
2453 pragma Assert (False
2454 or else NT (N).Nkind = N_Formal_Type_Declaration
2455 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2456 or else NT (N).Nkind = N_Private_Extension_Declaration
2457 or else NT (N).Nkind = N_Private_Type_Declaration);
2459 end Unknown_Discriminants_Present;
2461 function Unreferenced_In_Spec
2462 (N : Node_Id) return Boolean is
2464 pragma Assert (False
2465 or else NT (N).Nkind = N_With_Clause);
2467 end Unreferenced_In_Spec;
2469 function Variant_Part
2470 (N : Node_Id) return Node_Id is
2472 pragma Assert (False
2473 or else NT (N).Nkind = N_Component_List);
2478 (N : Node_Id) return List_Id is
2480 pragma Assert (False
2481 or else NT (N).Nkind = N_Variant_Part);
2485 function Visible_Declarations
2486 (N : Node_Id) return List_Id is
2488 pragma Assert (False
2489 or else NT (N).Nkind = N_Package_Specification
2490 or else NT (N).Nkind = N_Protected_Definition
2491 or else NT (N).Nkind = N_Task_Definition);
2493 end Visible_Declarations;
2495 function Was_Originally_Stub
2496 (N : Node_Id) return Boolean is
2498 pragma Assert (False
2499 or else NT (N).Nkind = N_Package_Body
2500 or else NT (N).Nkind = N_Protected_Body
2501 or else NT (N).Nkind = N_Subprogram_Body
2502 or else NT (N).Nkind = N_Task_Body);
2504 end Was_Originally_Stub;
2506 function Zero_Cost_Handling
2507 (N : Node_Id) return Boolean is
2509 pragma Assert (False
2510 or else NT (N).Nkind = N_Exception_Handler
2511 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2513 end Zero_Cost_Handling;
2515 --------------------------
2516 -- Field Set Procedures --
2517 --------------------------
2519 procedure Set_ABE_Is_Certain
2520 (N : Node_Id; Val : Boolean := True) is
2522 pragma Assert (False
2523 or else NT (N).Nkind = N_Formal_Package_Declaration
2524 or else NT (N).Nkind = N_Function_Call
2525 or else NT (N).Nkind = N_Function_Instantiation
2526 or else NT (N).Nkind = N_Package_Instantiation
2527 or else NT (N).Nkind = N_Procedure_Call_Statement
2528 or else NT (N).Nkind = N_Procedure_Instantiation);
2529 Set_Flag18 (N, Val);
2530 end Set_ABE_Is_Certain;
2532 procedure Set_Abort_Present
2533 (N : Node_Id; Val : Boolean := True) is
2535 pragma Assert (False
2536 or else NT (N).Nkind = N_Requeue_Statement);
2537 Set_Flag15 (N, Val);
2538 end Set_Abort_Present;
2540 procedure Set_Abortable_Part
2541 (N : Node_Id; Val : Node_Id) is
2543 pragma Assert (False
2544 or else NT (N).Nkind = N_Asynchronous_Select);
2545 Set_Node2_With_Parent (N, Val);
2546 end Set_Abortable_Part;
2548 procedure Set_Abstract_Present
2549 (N : Node_Id; Val : Boolean := True) is
2551 pragma Assert (False
2552 or else NT (N).Nkind = N_Derived_Type_Definition
2553 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2554 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2555 or else NT (N).Nkind = N_Private_Extension_Declaration
2556 or else NT (N).Nkind = N_Private_Type_Declaration
2557 or else NT (N).Nkind = N_Record_Definition);
2559 end Set_Abstract_Present;
2561 procedure Set_Accept_Handler_Records
2562 (N : Node_Id; Val : List_Id) is
2564 pragma Assert (False
2565 or else NT (N).Nkind = N_Accept_Alternative);
2566 Set_List5 (N, Val); -- semantic field, no parent set
2567 end Set_Accept_Handler_Records;
2569 procedure Set_Accept_Statement
2570 (N : Node_Id; Val : Node_Id) is
2572 pragma Assert (False
2573 or else NT (N).Nkind = N_Accept_Alternative);
2574 Set_Node2_With_Parent (N, Val);
2575 end Set_Accept_Statement;
2577 procedure Set_Access_Definition
2578 (N : Node_Id; Val : Node_Id) is
2580 pragma Assert (False
2581 or else NT (N).Nkind = N_Component_Definition
2582 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2583 Set_Node3_With_Parent (N, Val);
2584 end Set_Access_Definition;
2586 procedure Set_Access_Types_To_Process
2587 (N : Node_Id; Val : Elist_Id) is
2589 pragma Assert (False
2590 or else NT (N).Nkind = N_Freeze_Entity);
2591 Set_Elist2 (N, Val); -- semantic field, no parent set
2592 end Set_Access_Types_To_Process;
2594 procedure Set_Actions
2595 (N : Node_Id; Val : List_Id) is
2597 pragma Assert (False
2598 or else NT (N).Nkind = N_And_Then
2599 or else NT (N).Nkind = N_Compilation_Unit_Aux
2600 or else NT (N).Nkind = N_Freeze_Entity
2601 or else NT (N).Nkind = N_Or_Else);
2602 Set_List1_With_Parent (N, Val);
2605 procedure Set_Activation_Chain_Entity
2606 (N : Node_Id; Val : Node_Id) is
2608 pragma Assert (False
2609 or else NT (N).Nkind = N_Block_Statement
2610 or else NT (N).Nkind = N_Entry_Body
2611 or else NT (N).Nkind = N_Generic_Package_Declaration
2612 or else NT (N).Nkind = N_Package_Declaration
2613 or else NT (N).Nkind = N_Subprogram_Body
2614 or else NT (N).Nkind = N_Task_Body);
2615 Set_Node3 (N, Val); -- semantic field, no parent set
2616 end Set_Activation_Chain_Entity;
2618 procedure Set_Acts_As_Spec
2619 (N : Node_Id; Val : Boolean := True) is
2621 pragma Assert (False
2622 or else NT (N).Nkind = N_Compilation_Unit
2623 or else NT (N).Nkind = N_Subprogram_Body);
2625 end Set_Acts_As_Spec;
2627 procedure Set_Aggregate_Bounds
2628 (N : Node_Id; Val : Node_Id) is
2630 pragma Assert (False
2631 or else NT (N).Nkind = N_Aggregate);
2632 Set_Node3 (N, Val); -- semantic field, no parent set
2633 end Set_Aggregate_Bounds;
2635 procedure Set_Aliased_Present
2636 (N : Node_Id; Val : Boolean := True) is
2638 pragma Assert (False
2639 or else NT (N).Nkind = N_Component_Definition
2640 or else NT (N).Nkind = N_Object_Declaration);
2642 end Set_Aliased_Present;
2644 procedure Set_All_Others
2645 (N : Node_Id; Val : Boolean := True) is
2647 pragma Assert (False
2648 or else NT (N).Nkind = N_Others_Choice);
2649 Set_Flag11 (N, Val);
2652 procedure Set_All_Present
2653 (N : Node_Id; Val : Boolean := True) is
2655 pragma Assert (False
2656 or else NT (N).Nkind = N_Access_To_Object_Definition);
2657 Set_Flag15 (N, Val);
2658 end Set_All_Present;
2660 procedure Set_Alternatives
2661 (N : Node_Id; Val : List_Id) is
2663 pragma Assert (False
2664 or else NT (N).Nkind = N_Case_Statement);
2665 Set_List4_With_Parent (N, Val);
2666 end Set_Alternatives;
2668 procedure Set_Ancestor_Part
2669 (N : Node_Id; Val : Node_Id) is
2671 pragma Assert (False
2672 or else NT (N).Nkind = N_Extension_Aggregate);
2673 Set_Node3_With_Parent (N, Val);
2674 end Set_Ancestor_Part;
2676 procedure Set_Array_Aggregate
2677 (N : Node_Id; Val : Node_Id) is
2679 pragma Assert (False
2680 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2681 Set_Node3_With_Parent (N, Val);
2682 end Set_Array_Aggregate;
2684 procedure Set_Assignment_OK
2685 (N : Node_Id; Val : Boolean := True) is
2687 pragma Assert (False
2688 or else NT (N).Nkind = N_Object_Declaration
2689 or else NT (N).Nkind in N_Subexpr);
2690 Set_Flag15 (N, Val);
2691 end Set_Assignment_OK;
2693 procedure Set_Associated_Node
2694 (N : Node_Id; Val : Node_Id) is
2696 pragma Assert (False
2697 or else NT (N).Nkind in N_Has_Entity
2698 or else NT (N).Nkind = N_Aggregate
2699 or else NT (N).Nkind = N_Extension_Aggregate
2700 or else NT (N).Nkind = N_Selected_Component);
2701 Set_Node4 (N, Val); -- semantic field, no parent set
2702 end Set_Associated_Node;
2704 procedure Set_At_End_Proc
2705 (N : Node_Id; Val : Node_Id) is
2707 pragma Assert (False
2708 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2710 end Set_At_End_Proc;
2712 procedure Set_Attribute_Name
2713 (N : Node_Id; Val : Name_Id) is
2715 pragma Assert (False
2716 or else NT (N).Nkind = N_Attribute_Reference);
2718 end Set_Attribute_Name;
2720 procedure Set_Aux_Decls_Node
2721 (N : Node_Id; Val : Node_Id) is
2723 pragma Assert (False
2724 or else NT (N).Nkind = N_Compilation_Unit);
2725 Set_Node5_With_Parent (N, Val);
2726 end Set_Aux_Decls_Node;
2728 procedure Set_Backwards_OK
2729 (N : Node_Id; Val : Boolean := True) is
2731 pragma Assert (False
2732 or else NT (N).Nkind = N_Assignment_Statement);
2734 end Set_Backwards_OK;
2736 procedure Set_Bad_Is_Detected
2737 (N : Node_Id; Val : Boolean := True) is
2739 pragma Assert (False
2740 or else NT (N).Nkind = N_Subprogram_Body);
2741 Set_Flag15 (N, Val);
2742 end Set_Bad_Is_Detected;
2744 procedure Set_Body_Required
2745 (N : Node_Id; Val : Boolean := True) is
2747 pragma Assert (False
2748 or else NT (N).Nkind = N_Compilation_Unit);
2749 Set_Flag13 (N, Val);
2750 end Set_Body_Required;
2752 procedure Set_Body_To_Inline
2753 (N : Node_Id; Val : Node_Id) is
2755 pragma Assert (False
2756 or else NT (N).Nkind = N_Subprogram_Declaration);
2758 end Set_Body_To_Inline;
2760 procedure Set_Box_Present
2761 (N : Node_Id; Val : Boolean := True) is
2763 pragma Assert (False
2764 or else NT (N).Nkind = N_Component_Association
2765 or else NT (N).Nkind = N_Formal_Package_Declaration
2766 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2767 Set_Flag15 (N, Val);
2768 end Set_Box_Present;
2770 procedure Set_By_Ref
2771 (N : Node_Id; Val : Boolean := True) is
2773 pragma Assert (False
2774 or else NT (N).Nkind = N_Return_Statement);
2778 procedure Set_Char_Literal_Value
2779 (N : Node_Id; Val : Char_Code) is
2781 pragma Assert (False
2782 or else NT (N).Nkind = N_Character_Literal);
2783 Set_Char_Code2 (N, Val);
2784 end Set_Char_Literal_Value;
2787 (N : Node_Id; Val : Name_Id) is
2789 pragma Assert (False
2790 or else NT (N).Nkind in N_Has_Chars);
2794 procedure Set_Check_Address_Alignment
2795 (N : Node_Id; Val : Boolean := True) is
2797 pragma Assert (False
2798 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2799 Set_Flag11 (N, Val);
2800 end Set_Check_Address_Alignment;
2802 procedure Set_Choice_Parameter
2803 (N : Node_Id; Val : Node_Id) is
2805 pragma Assert (False
2806 or else NT (N).Nkind = N_Exception_Handler);
2807 Set_Node2_With_Parent (N, Val);
2808 end Set_Choice_Parameter;
2810 procedure Set_Choices
2811 (N : Node_Id; Val : List_Id) is
2813 pragma Assert (False
2814 or else NT (N).Nkind = N_Component_Association);
2815 Set_List1_With_Parent (N, Val);
2818 procedure Set_Compile_Time_Known_Aggregate
2819 (N : Node_Id; Val : Boolean := True) is
2821 pragma Assert (False
2822 or else NT (N).Nkind = N_Aggregate);
2823 Set_Flag18 (N, Val);
2824 end Set_Compile_Time_Known_Aggregate;
2826 procedure Set_Component_Associations
2827 (N : Node_Id; Val : List_Id) is
2829 pragma Assert (False
2830 or else NT (N).Nkind = N_Aggregate
2831 or else NT (N).Nkind = N_Extension_Aggregate);
2832 Set_List2_With_Parent (N, Val);
2833 end Set_Component_Associations;
2835 procedure Set_Component_Clauses
2836 (N : Node_Id; Val : List_Id) is
2838 pragma Assert (False
2839 or else NT (N).Nkind = N_Record_Representation_Clause);
2840 Set_List3_With_Parent (N, Val);
2841 end Set_Component_Clauses;
2843 procedure Set_Component_Definition
2844 (N : Node_Id; Val : Node_Id) is
2846 pragma Assert (False
2847 or else NT (N).Nkind = N_Component_Declaration
2848 or else NT (N).Nkind = N_Constrained_Array_Definition
2849 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2850 Set_Node4_With_Parent (N, Val);
2851 end Set_Component_Definition;
2853 procedure Set_Component_Items
2854 (N : Node_Id; Val : List_Id) is
2856 pragma Assert (False
2857 or else NT (N).Nkind = N_Component_List);
2858 Set_List3_With_Parent (N, Val);
2859 end Set_Component_Items;
2861 procedure Set_Component_List
2862 (N : Node_Id; Val : Node_Id) is
2864 pragma Assert (False
2865 or else NT (N).Nkind = N_Record_Definition
2866 or else NT (N).Nkind = N_Variant);
2867 Set_Node1_With_Parent (N, Val);
2868 end Set_Component_List;
2870 procedure Set_Component_Name
2871 (N : Node_Id; Val : Node_Id) is
2873 pragma Assert (False
2874 or else NT (N).Nkind = N_Component_Clause);
2875 Set_Node1_With_Parent (N, Val);
2876 end Set_Component_Name;
2878 procedure Set_Condition
2879 (N : Node_Id; Val : Node_Id) is
2881 pragma Assert (False
2882 or else NT (N).Nkind = N_Accept_Alternative
2883 or else NT (N).Nkind = N_Delay_Alternative
2884 or else NT (N).Nkind = N_Elsif_Part
2885 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2886 or else NT (N).Nkind = N_Exit_Statement
2887 or else NT (N).Nkind = N_If_Statement
2888 or else NT (N).Nkind = N_Iteration_Scheme
2889 or else NT (N).Nkind = N_Raise_Constraint_Error
2890 or else NT (N).Nkind = N_Raise_Program_Error
2891 or else NT (N).Nkind = N_Raise_Storage_Error
2892 or else NT (N).Nkind = N_Terminate_Alternative);
2893 Set_Node1_With_Parent (N, Val);
2896 procedure Set_Condition_Actions
2897 (N : Node_Id; Val : List_Id) is
2899 pragma Assert (False
2900 or else NT (N).Nkind = N_Elsif_Part
2901 or else NT (N).Nkind = N_Iteration_Scheme);
2902 Set_List3 (N, Val); -- semantic field, no parent set
2903 end Set_Condition_Actions;
2905 procedure Set_Config_Pragmas
2906 (N : Node_Id; Val : List_Id) is
2908 pragma Assert (False
2909 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2910 Set_List4_With_Parent (N, Val);
2911 end Set_Config_Pragmas;
2913 procedure Set_Constant_Present
2914 (N : Node_Id; Val : Boolean := True) is
2916 pragma Assert (False
2917 or else NT (N).Nkind = N_Access_To_Object_Definition
2918 or else NT (N).Nkind = N_Object_Declaration);
2919 Set_Flag17 (N, Val);
2920 end Set_Constant_Present;
2922 procedure Set_Constraint
2923 (N : Node_Id; Val : Node_Id) is
2925 pragma Assert (False
2926 or else NT (N).Nkind = N_Subtype_Indication);
2927 Set_Node3_With_Parent (N, Val);
2930 procedure Set_Constraints
2931 (N : Node_Id; Val : List_Id) is
2933 pragma Assert (False
2934 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2935 Set_List1_With_Parent (N, Val);
2936 end Set_Constraints;
2938 procedure Set_Context_Installed
2939 (N : Node_Id; Val : Boolean := True) is
2941 pragma Assert (False
2942 or else NT (N).Nkind = N_With_Clause);
2943 Set_Flag13 (N, Val);
2944 end Set_Context_Installed;
2946 procedure Set_Context_Items
2947 (N : Node_Id; Val : List_Id) is
2949 pragma Assert (False
2950 or else NT (N).Nkind = N_Compilation_Unit);
2951 Set_List1_With_Parent (N, Val);
2952 end Set_Context_Items;
2954 procedure Set_Controlling_Argument
2955 (N : Node_Id; Val : Node_Id) is
2957 pragma Assert (False
2958 or else NT (N).Nkind = N_Function_Call
2959 or else NT (N).Nkind = N_Procedure_Call_Statement);
2960 Set_Node1 (N, Val); -- semantic field, no parent set
2961 end Set_Controlling_Argument;
2963 procedure Set_Conversion_OK
2964 (N : Node_Id; Val : Boolean := True) is
2966 pragma Assert (False
2967 or else NT (N).Nkind = N_Type_Conversion);
2968 Set_Flag14 (N, Val);
2969 end Set_Conversion_OK;
2971 procedure Set_Corresponding_Body
2972 (N : Node_Id; Val : Node_Id) is
2974 pragma Assert (False
2975 or else NT (N).Nkind = N_Entry_Declaration
2976 or else NT (N).Nkind = N_Generic_Package_Declaration
2977 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2978 or else NT (N).Nkind = N_Package_Body_Stub
2979 or else NT (N).Nkind = N_Package_Declaration
2980 or else NT (N).Nkind = N_Protected_Body_Stub
2981 or else NT (N).Nkind = N_Protected_Type_Declaration
2982 or else NT (N).Nkind = N_Subprogram_Body_Stub
2983 or else NT (N).Nkind = N_Subprogram_Declaration
2984 or else NT (N).Nkind = N_Task_Body_Stub
2985 or else NT (N).Nkind = N_Task_Type_Declaration);
2986 Set_Node5 (N, Val); -- semantic field, no parent set
2987 end Set_Corresponding_Body;
2989 procedure Set_Corresponding_Generic_Association
2990 (N : Node_Id; Val : Node_Id) is
2992 pragma Assert (False
2993 or else NT (N).Nkind = N_Object_Declaration
2994 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2995 Set_Node5 (N, Val); -- semantic field, no parent set
2996 end Set_Corresponding_Generic_Association;
2997 procedure Set_Corresponding_Integer_Value
2998 (N : Node_Id; Val : Uint) is
3000 pragma Assert (False
3001 or else NT (N).Nkind = N_Real_Literal);
3002 Set_Uint4 (N, Val); -- semantic field, no parent set
3003 end Set_Corresponding_Integer_Value;
3005 procedure Set_Corresponding_Spec
3006 (N : Node_Id; Val : Node_Id) is
3008 pragma Assert (False
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_Subprogram_Renaming_Declaration
3013 or else NT (N).Nkind = N_Task_Body
3014 or else NT (N).Nkind = N_With_Clause);
3015 Set_Node5 (N, Val); -- semantic field, no parent set
3016 end Set_Corresponding_Spec;
3018 procedure Set_Corresponding_Stub
3019 (N : Node_Id; Val : Node_Id) is
3021 pragma Assert (False
3022 or else NT (N).Nkind = N_Subunit);
3024 end Set_Corresponding_Stub;
3026 procedure Set_Dcheck_Function
3027 (N : Node_Id; Val : Entity_Id) is
3029 pragma Assert (False
3030 or else NT (N).Nkind = N_Variant);
3031 Set_Node5 (N, Val); -- semantic field, no parent set
3032 end Set_Dcheck_Function;
3034 procedure Set_Debug_Statement
3035 (N : Node_Id; Val : Node_Id) is
3037 pragma Assert (False
3038 or else NT (N).Nkind = N_Pragma);
3039 Set_Node3_With_Parent (N, Val);
3040 end Set_Debug_Statement;
3042 procedure Set_Declarations
3043 (N : Node_Id; Val : List_Id) is
3045 pragma Assert (False
3046 or else NT (N).Nkind = N_Accept_Statement
3047 or else NT (N).Nkind = N_Block_Statement
3048 or else NT (N).Nkind = N_Compilation_Unit_Aux
3049 or else NT (N).Nkind = N_Entry_Body
3050 or else NT (N).Nkind = N_Package_Body
3051 or else NT (N).Nkind = N_Protected_Body
3052 or else NT (N).Nkind = N_Subprogram_Body
3053 or else NT (N).Nkind = N_Task_Body);
3054 Set_List2_With_Parent (N, Val);
3055 end Set_Declarations;
3057 procedure Set_Default_Expression
3058 (N : Node_Id; Val : Node_Id) is
3060 pragma Assert (False
3061 or else NT (N).Nkind = N_Parameter_Specification);
3062 Set_Node5 (N, Val); -- semantic field, no parent set
3063 end Set_Default_Expression;
3065 procedure Set_Default_Name
3066 (N : Node_Id; Val : Node_Id) is
3068 pragma Assert (False
3069 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3070 Set_Node2_With_Parent (N, Val);
3071 end Set_Default_Name;
3073 procedure Set_Defining_Identifier
3074 (N : Node_Id; Val : Entity_Id) is
3076 pragma Assert (False
3077 or else NT (N).Nkind = N_Component_Declaration
3078 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3079 or else NT (N).Nkind = N_Discriminant_Specification
3080 or else NT (N).Nkind = N_Entry_Body
3081 or else NT (N).Nkind = N_Entry_Declaration
3082 or else NT (N).Nkind = N_Entry_Index_Specification
3083 or else NT (N).Nkind = N_Exception_Declaration
3084 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3085 or else NT (N).Nkind = N_Formal_Object_Declaration
3086 or else NT (N).Nkind = N_Formal_Package_Declaration
3087 or else NT (N).Nkind = N_Formal_Type_Declaration
3088 or else NT (N).Nkind = N_Full_Type_Declaration
3089 or else NT (N).Nkind = N_Implicit_Label_Declaration
3090 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3091 or else NT (N).Nkind = N_Loop_Parameter_Specification
3092 or else NT (N).Nkind = N_Number_Declaration
3093 or else NT (N).Nkind = N_Object_Declaration
3094 or else NT (N).Nkind = N_Object_Renaming_Declaration
3095 or else NT (N).Nkind = N_Package_Body_Stub
3096 or else NT (N).Nkind = N_Parameter_Specification
3097 or else NT (N).Nkind = N_Private_Extension_Declaration
3098 or else NT (N).Nkind = N_Private_Type_Declaration
3099 or else NT (N).Nkind = N_Protected_Body
3100 or else NT (N).Nkind = N_Protected_Body_Stub
3101 or else NT (N).Nkind = N_Protected_Type_Declaration
3102 or else NT (N).Nkind = N_Single_Protected_Declaration
3103 or else NT (N).Nkind = N_Single_Task_Declaration
3104 or else NT (N).Nkind = N_Subtype_Declaration
3105 or else NT (N).Nkind = N_Task_Body
3106 or else NT (N).Nkind = N_Task_Body_Stub
3107 or else NT (N).Nkind = N_Task_Type_Declaration);
3108 Set_Node1_With_Parent (N, Val);
3109 end Set_Defining_Identifier;
3111 procedure Set_Defining_Unit_Name
3112 (N : Node_Id; Val : Node_Id) is
3114 pragma Assert (False
3115 or else NT (N).Nkind = N_Function_Instantiation
3116 or else NT (N).Nkind = N_Function_Specification
3117 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3118 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3119 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3120 or else NT (N).Nkind = N_Package_Body
3121 or else NT (N).Nkind = N_Package_Instantiation
3122 or else NT (N).Nkind = N_Package_Renaming_Declaration
3123 or else NT (N).Nkind = N_Package_Specification
3124 or else NT (N).Nkind = N_Procedure_Instantiation
3125 or else NT (N).Nkind = N_Procedure_Specification);
3126 Set_Node1_With_Parent (N, Val);
3127 end Set_Defining_Unit_Name;
3129 procedure Set_Delay_Alternative
3130 (N : Node_Id; Val : Node_Id) is
3132 pragma Assert (False
3133 or else NT (N).Nkind = N_Timed_Entry_Call);
3134 Set_Node4_With_Parent (N, Val);
3135 end Set_Delay_Alternative;
3137 procedure Set_Delay_Finalize_Attach
3138 (N : Node_Id; Val : Boolean := True) is
3140 pragma Assert (False
3141 or else NT (N).Nkind = N_Object_Declaration);
3142 Set_Flag14 (N, Val);
3143 end Set_Delay_Finalize_Attach;
3145 procedure Set_Delay_Statement
3146 (N : Node_Id; Val : Node_Id) is
3148 pragma Assert (False
3149 or else NT (N).Nkind = N_Delay_Alternative);
3150 Set_Node2_With_Parent (N, Val);
3151 end Set_Delay_Statement;
3153 procedure Set_Delta_Expression
3154 (N : Node_Id; Val : Node_Id) is
3156 pragma Assert (False
3157 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3158 or else NT (N).Nkind = N_Delta_Constraint
3159 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3160 Set_Node3_With_Parent (N, Val);
3161 end Set_Delta_Expression;
3163 procedure Set_Digits_Expression
3164 (N : Node_Id; Val : Node_Id) is
3166 pragma Assert (False
3167 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3168 or else NT (N).Nkind = N_Digits_Constraint
3169 or else NT (N).Nkind = N_Floating_Point_Definition);
3170 Set_Node2_With_Parent (N, Val);
3171 end Set_Digits_Expression;
3173 procedure Set_Discr_Check_Funcs_Built
3174 (N : Node_Id; Val : Boolean := True) is
3176 pragma Assert (False
3177 or else NT (N).Nkind = N_Full_Type_Declaration);
3178 Set_Flag11 (N, Val);
3179 end Set_Discr_Check_Funcs_Built;
3181 procedure Set_Discrete_Choices
3182 (N : Node_Id; Val : List_Id) is
3184 pragma Assert (False
3185 or else NT (N).Nkind = N_Case_Statement_Alternative
3186 or else NT (N).Nkind = N_Variant);
3187 Set_List4_With_Parent (N, Val);
3188 end Set_Discrete_Choices;
3190 procedure Set_Discrete_Range
3191 (N : Node_Id; Val : Node_Id) is
3193 pragma Assert (False
3194 or else NT (N).Nkind = N_Slice);
3195 Set_Node4_With_Parent (N, Val);
3196 end Set_Discrete_Range;
3198 procedure Set_Discrete_Subtype_Definition
3199 (N : Node_Id; Val : Node_Id) is
3201 pragma Assert (False
3202 or else NT (N).Nkind = N_Entry_Declaration
3203 or else NT (N).Nkind = N_Entry_Index_Specification
3204 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3205 Set_Node4_With_Parent (N, Val);
3206 end Set_Discrete_Subtype_Definition;
3208 procedure Set_Discrete_Subtype_Definitions
3209 (N : Node_Id; Val : List_Id) is
3211 pragma Assert (False
3212 or else NT (N).Nkind = N_Constrained_Array_Definition);
3213 Set_List2_With_Parent (N, Val);
3214 end Set_Discrete_Subtype_Definitions;
3216 procedure Set_Discriminant_Specifications
3217 (N : Node_Id; Val : List_Id) is
3219 pragma Assert (False
3220 or else NT (N).Nkind = N_Formal_Type_Declaration
3221 or else NT (N).Nkind = N_Full_Type_Declaration
3222 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3223 or else NT (N).Nkind = N_Private_Extension_Declaration
3224 or else NT (N).Nkind = N_Private_Type_Declaration
3225 or else NT (N).Nkind = N_Protected_Type_Declaration
3226 or else NT (N).Nkind = N_Task_Type_Declaration);
3227 Set_List4_With_Parent (N, Val);
3228 end Set_Discriminant_Specifications;
3230 procedure Set_Discriminant_Type
3231 (N : Node_Id; Val : Node_Id) is
3233 pragma Assert (False
3234 or else NT (N).Nkind = N_Discriminant_Specification);
3235 Set_Node5_With_Parent (N, Val);
3236 end Set_Discriminant_Type;
3238 procedure Set_Do_Accessibility_Check
3239 (N : Node_Id; Val : Boolean := True) is
3241 pragma Assert (False
3242 or else NT (N).Nkind = N_Parameter_Specification);
3243 Set_Flag13 (N, Val);
3244 end Set_Do_Accessibility_Check;
3246 procedure Set_Do_Discriminant_Check
3247 (N : Node_Id; Val : Boolean := True) is
3249 pragma Assert (False
3250 or else NT (N).Nkind = N_Selected_Component);
3251 Set_Flag13 (N, Val);
3252 end Set_Do_Discriminant_Check;
3254 procedure Set_Do_Division_Check
3255 (N : Node_Id; Val : Boolean := True) is
3257 pragma Assert (False
3258 or else NT (N).Nkind = N_Op_Divide
3259 or else NT (N).Nkind = N_Op_Mod
3260 or else NT (N).Nkind = N_Op_Rem);
3261 Set_Flag13 (N, Val);
3262 end Set_Do_Division_Check;
3264 procedure Set_Do_Length_Check
3265 (N : Node_Id; Val : Boolean := True) is
3267 pragma Assert (False
3268 or else NT (N).Nkind = N_Assignment_Statement
3269 or else NT (N).Nkind = N_Op_And
3270 or else NT (N).Nkind = N_Op_Or
3271 or else NT (N).Nkind = N_Op_Xor
3272 or else NT (N).Nkind = N_Type_Conversion);
3274 end Set_Do_Length_Check;
3276 procedure Set_Do_Overflow_Check
3277 (N : Node_Id; Val : Boolean := True) is
3279 pragma Assert (False
3280 or else NT (N).Nkind in N_Op
3281 or else NT (N).Nkind = N_Attribute_Reference
3282 or else NT (N).Nkind = N_Type_Conversion);
3283 Set_Flag17 (N, Val);
3284 end Set_Do_Overflow_Check;
3286 procedure Set_Do_Range_Check
3287 (N : Node_Id; Val : Boolean := True) is
3289 pragma Assert (False
3290 or else NT (N).Nkind in N_Subexpr);
3292 end Set_Do_Range_Check;
3294 procedure Set_Do_Storage_Check
3295 (N : Node_Id; Val : Boolean := True) is
3297 pragma Assert (False
3298 or else NT (N).Nkind = N_Allocator
3299 or else NT (N).Nkind = N_Subprogram_Body);
3300 Set_Flag17 (N, Val);
3301 end Set_Do_Storage_Check;
3303 procedure Set_Do_Tag_Check
3304 (N : Node_Id; Val : Boolean := True) is
3306 pragma Assert (False
3307 or else NT (N).Nkind = N_Assignment_Statement
3308 or else NT (N).Nkind = N_Function_Call
3309 or else NT (N).Nkind = N_Procedure_Call_Statement
3310 or else NT (N).Nkind = N_Return_Statement
3311 or else NT (N).Nkind = N_Type_Conversion);
3312 Set_Flag13 (N, Val);
3313 end Set_Do_Tag_Check;
3315 procedure Set_Elaborate_All_Present
3316 (N : Node_Id; Val : Boolean := True) is
3318 pragma Assert (False
3319 or else NT (N).Nkind = N_With_Clause);
3320 Set_Flag15 (N, Val);
3321 end Set_Elaborate_All_Present;
3323 procedure Set_Elaborate_Present
3324 (N : Node_Id; Val : Boolean := True) is
3326 pragma Assert (False
3327 or else NT (N).Nkind = N_With_Clause);
3329 end Set_Elaborate_Present;
3331 procedure Set_Elaboration_Boolean
3332 (N : Node_Id; Val : Node_Id) is
3334 pragma Assert (False
3335 or else NT (N).Nkind = N_Function_Specification
3336 or else NT (N).Nkind = N_Procedure_Specification);
3338 end Set_Elaboration_Boolean;
3340 procedure Set_Else_Actions
3341 (N : Node_Id; Val : List_Id) is
3343 pragma Assert (False
3344 or else NT (N).Nkind = N_Conditional_Expression);
3345 Set_List3 (N, Val); -- semantic field, no parent set
3346 end Set_Else_Actions;
3348 procedure Set_Else_Statements
3349 (N : Node_Id; Val : List_Id) is
3351 pragma Assert (False
3352 or else NT (N).Nkind = N_Conditional_Entry_Call
3353 or else NT (N).Nkind = N_If_Statement
3354 or else NT (N).Nkind = N_Selective_Accept);
3355 Set_List4_With_Parent (N, Val);
3356 end Set_Else_Statements;
3358 procedure Set_Elsif_Parts
3359 (N : Node_Id; Val : List_Id) is
3361 pragma Assert (False
3362 or else NT (N).Nkind = N_If_Statement);
3363 Set_List3_With_Parent (N, Val);
3364 end Set_Elsif_Parts;
3366 procedure Set_Enclosing_Variant
3367 (N : Node_Id; Val : Node_Id) is
3369 pragma Assert (False
3370 or else NT (N).Nkind = N_Variant);
3371 Set_Node2 (N, Val); -- semantic field, no parent set
3372 end Set_Enclosing_Variant;
3374 procedure Set_End_Label
3375 (N : Node_Id; Val : Node_Id) is
3377 pragma Assert (False
3378 or else NT (N).Nkind = N_Enumeration_Type_Definition
3379 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3380 or else NT (N).Nkind = N_Loop_Statement
3381 or else NT (N).Nkind = N_Package_Specification
3382 or else NT (N).Nkind = N_Protected_Body
3383 or else NT (N).Nkind = N_Protected_Definition
3384 or else NT (N).Nkind = N_Record_Definition
3385 or else NT (N).Nkind = N_Task_Definition);
3386 Set_Node4_With_Parent (N, Val);
3389 procedure Set_End_Span
3390 (N : Node_Id; Val : Uint) is
3392 pragma Assert (False
3393 or else NT (N).Nkind = N_Case_Statement
3394 or else NT (N).Nkind = N_If_Statement);
3398 procedure Set_Entity
3399 (N : Node_Id; Val : Node_Id) is
3401 pragma Assert (False
3402 or else NT (N).Nkind in N_Has_Entity
3403 or else NT (N).Nkind = N_Freeze_Entity);
3404 Set_Node4 (N, Val); -- semantic field, no parent set
3407 procedure Set_Entry_Body_Formal_Part
3408 (N : Node_Id; Val : Node_Id) is
3410 pragma Assert (False
3411 or else NT (N).Nkind = N_Entry_Body);
3412 Set_Node5_With_Parent (N, Val);
3413 end Set_Entry_Body_Formal_Part;
3415 procedure Set_Entry_Call_Alternative
3416 (N : Node_Id; Val : Node_Id) is
3418 pragma Assert (False
3419 or else NT (N).Nkind = N_Conditional_Entry_Call
3420 or else NT (N).Nkind = N_Timed_Entry_Call);
3421 Set_Node1_With_Parent (N, Val);
3422 end Set_Entry_Call_Alternative;
3424 procedure Set_Entry_Call_Statement
3425 (N : Node_Id; Val : Node_Id) is
3427 pragma Assert (False
3428 or else NT (N).Nkind = N_Entry_Call_Alternative);
3429 Set_Node1_With_Parent (N, Val);
3430 end Set_Entry_Call_Statement;
3432 procedure Set_Entry_Direct_Name
3433 (N : Node_Id; Val : Node_Id) is
3435 pragma Assert (False
3436 or else NT (N).Nkind = N_Accept_Statement);
3437 Set_Node1_With_Parent (N, Val);
3438 end Set_Entry_Direct_Name;
3440 procedure Set_Entry_Index
3441 (N : Node_Id; Val : Node_Id) is
3443 pragma Assert (False
3444 or else NT (N).Nkind = N_Accept_Statement);
3445 Set_Node5_With_Parent (N, Val);
3446 end Set_Entry_Index;
3448 procedure Set_Entry_Index_Specification
3449 (N : Node_Id; Val : Node_Id) is
3451 pragma Assert (False
3452 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3453 Set_Node4_With_Parent (N, Val);
3454 end Set_Entry_Index_Specification;
3457 (N : Node_Id; Val : Node_Id) is
3459 pragma Assert (False
3460 or else NT (N).Nkind in N_Has_Etype);
3461 Set_Node5 (N, Val); -- semantic field, no parent set
3464 procedure Set_Exception_Choices
3465 (N : Node_Id; Val : List_Id) is
3467 pragma Assert (False
3468 or else NT (N).Nkind = N_Exception_Handler);
3469 Set_List4_With_Parent (N, Val);
3470 end Set_Exception_Choices;
3472 procedure Set_Exception_Handlers
3473 (N : Node_Id; Val : List_Id) is
3475 pragma Assert (False
3476 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3477 Set_List5_With_Parent (N, Val);
3478 end Set_Exception_Handlers;
3480 procedure Set_Exception_Junk
3481 (N : Node_Id; Val : Boolean := True) is
3483 pragma Assert (False
3484 or else NT (N).Nkind = N_Goto_Statement
3485 or else NT (N).Nkind = N_Label
3486 or else NT (N).Nkind = N_Object_Declaration
3487 or else NT (N).Nkind = N_Subtype_Declaration);
3488 Set_Flag11 (N, Val);
3489 end Set_Exception_Junk;
3491 procedure Set_Expansion_Delayed
3492 (N : Node_Id; Val : Boolean := True) is
3494 pragma Assert (False
3495 or else NT (N).Nkind = N_Aggregate
3496 or else NT (N).Nkind = N_Extension_Aggregate);
3497 Set_Flag11 (N, Val);
3498 end Set_Expansion_Delayed;
3500 procedure Set_Explicit_Actual_Parameter
3501 (N : Node_Id; Val : Node_Id) is
3503 pragma Assert (False
3504 or else NT (N).Nkind = N_Parameter_Association);
3505 Set_Node3_With_Parent (N, Val);
3506 end Set_Explicit_Actual_Parameter;
3508 procedure Set_Explicit_Generic_Actual_Parameter
3509 (N : Node_Id; Val : Node_Id) is
3511 pragma Assert (False
3512 or else NT (N).Nkind = N_Generic_Association);
3513 Set_Node1_With_Parent (N, Val);
3514 end Set_Explicit_Generic_Actual_Parameter;
3516 procedure Set_Expression
3517 (N : Node_Id; Val : Node_Id) is
3519 pragma Assert (False
3520 or else NT (N).Nkind = N_Allocator
3521 or else NT (N).Nkind = N_Assignment_Statement
3522 or else NT (N).Nkind = N_At_Clause
3523 or else NT (N).Nkind = N_Attribute_Definition_Clause
3524 or else NT (N).Nkind = N_Case_Statement
3525 or else NT (N).Nkind = N_Code_Statement
3526 or else NT (N).Nkind = N_Component_Association
3527 or else NT (N).Nkind = N_Component_Declaration
3528 or else NT (N).Nkind = N_Delay_Relative_Statement
3529 or else NT (N).Nkind = N_Delay_Until_Statement
3530 or else NT (N).Nkind = N_Discriminant_Association
3531 or else NT (N).Nkind = N_Discriminant_Specification
3532 or else NT (N).Nkind = N_Exception_Declaration
3533 or else NT (N).Nkind = N_Formal_Object_Declaration
3534 or else NT (N).Nkind = N_Free_Statement
3535 or else NT (N).Nkind = N_Mod_Clause
3536 or else NT (N).Nkind = N_Modular_Type_Definition
3537 or else NT (N).Nkind = N_Number_Declaration
3538 or else NT (N).Nkind = N_Object_Declaration
3539 or else NT (N).Nkind = N_Parameter_Specification
3540 or else NT (N).Nkind = N_Pragma_Argument_Association
3541 or else NT (N).Nkind = N_Qualified_Expression
3542 or else NT (N).Nkind = N_Return_Statement
3543 or else NT (N).Nkind = N_Type_Conversion
3544 or else NT (N).Nkind = N_Unchecked_Expression
3545 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3546 Set_Node3_With_Parent (N, Val);
3549 procedure Set_Expressions
3550 (N : Node_Id; Val : List_Id) is
3552 pragma Assert (False
3553 or else NT (N).Nkind = N_Aggregate
3554 or else NT (N).Nkind = N_Attribute_Reference
3555 or else NT (N).Nkind = N_Conditional_Expression
3556 or else NT (N).Nkind = N_Extension_Aggregate
3557 or else NT (N).Nkind = N_Indexed_Component);
3558 Set_List1_With_Parent (N, Val);
3559 end Set_Expressions;
3561 procedure Set_First_Bit
3562 (N : Node_Id; Val : Node_Id) is
3564 pragma Assert (False
3565 or else NT (N).Nkind = N_Component_Clause);
3566 Set_Node3_With_Parent (N, Val);
3569 procedure Set_First_Inlined_Subprogram
3570 (N : Node_Id; Val : Entity_Id) is
3572 pragma Assert (False
3573 or else NT (N).Nkind = N_Compilation_Unit);
3574 Set_Node3 (N, Val); -- semantic field, no parent set
3575 end Set_First_Inlined_Subprogram;
3577 procedure Set_First_Name
3578 (N : Node_Id; Val : Boolean := True) is
3580 pragma Assert (False
3581 or else NT (N).Nkind = N_With_Clause);
3585 procedure Set_First_Named_Actual
3586 (N : Node_Id; Val : Node_Id) is
3588 pragma Assert (False
3589 or else NT (N).Nkind = N_Entry_Call_Statement
3590 or else NT (N).Nkind = N_Function_Call
3591 or else NT (N).Nkind = N_Procedure_Call_Statement);
3592 Set_Node4 (N, Val); -- semantic field, no parent set
3593 end Set_First_Named_Actual;
3595 procedure Set_First_Real_Statement
3596 (N : Node_Id; Val : Node_Id) is
3598 pragma Assert (False
3599 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3600 Set_Node2 (N, Val); -- semantic field, no parent set
3601 end Set_First_Real_Statement;
3603 procedure Set_First_Subtype_Link
3604 (N : Node_Id; Val : Entity_Id) is
3606 pragma Assert (False
3607 or else NT (N).Nkind = N_Freeze_Entity);
3608 Set_Node5 (N, Val); -- semantic field, no parent set
3609 end Set_First_Subtype_Link;
3611 procedure Set_Float_Truncate
3612 (N : Node_Id; Val : Boolean := True) is
3614 pragma Assert (False
3615 or else NT (N).Nkind = N_Type_Conversion);
3616 Set_Flag11 (N, Val);
3617 end Set_Float_Truncate;
3619 procedure Set_Formal_Type_Definition
3620 (N : Node_Id; Val : Node_Id) is
3622 pragma Assert (False
3623 or else NT (N).Nkind = N_Formal_Type_Declaration);
3624 Set_Node3_With_Parent (N, Val);
3625 end Set_Formal_Type_Definition;
3627 procedure Set_Forwards_OK
3628 (N : Node_Id; Val : Boolean := True) is
3630 pragma Assert (False
3631 or else NT (N).Nkind = N_Assignment_Statement);
3633 end Set_Forwards_OK;
3635 procedure Set_From_At_Mod
3636 (N : Node_Id; Val : Boolean := True) is
3638 pragma Assert (False
3639 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3641 end Set_From_At_Mod;
3643 procedure Set_Generic_Associations
3644 (N : Node_Id; Val : List_Id) is
3646 pragma Assert (False
3647 or else NT (N).Nkind = N_Formal_Package_Declaration
3648 or else NT (N).Nkind = N_Function_Instantiation
3649 or else NT (N).Nkind = N_Package_Instantiation
3650 or else NT (N).Nkind = N_Procedure_Instantiation);
3651 Set_List3_With_Parent (N, Val);
3652 end Set_Generic_Associations;
3654 procedure Set_Generic_Formal_Declarations
3655 (N : Node_Id; Val : List_Id) is
3657 pragma Assert (False
3658 or else NT (N).Nkind = N_Generic_Package_Declaration
3659 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3660 Set_List2_With_Parent (N, Val);
3661 end Set_Generic_Formal_Declarations;
3663 procedure Set_Generic_Parent
3664 (N : Node_Id; Val : Node_Id) is
3666 pragma Assert (False
3667 or else NT (N).Nkind = N_Function_Specification
3668 or else NT (N).Nkind = N_Package_Specification
3669 or else NT (N).Nkind = N_Procedure_Specification);
3671 end Set_Generic_Parent;
3673 procedure Set_Generic_Parent_Type
3674 (N : Node_Id; Val : Node_Id) is
3676 pragma Assert (False
3677 or else NT (N).Nkind = N_Subtype_Declaration);
3679 end Set_Generic_Parent_Type;
3681 procedure Set_Handled_Statement_Sequence
3682 (N : Node_Id; Val : Node_Id) is
3684 pragma Assert (False
3685 or else NT (N).Nkind = N_Accept_Statement
3686 or else NT (N).Nkind = N_Block_Statement
3687 or else NT (N).Nkind = N_Entry_Body
3688 or else NT (N).Nkind = N_Package_Body
3689 or else NT (N).Nkind = N_Subprogram_Body
3690 or else NT (N).Nkind = N_Task_Body);
3691 Set_Node4_With_Parent (N, Val);
3692 end Set_Handled_Statement_Sequence;
3694 procedure Set_Handler_List_Entry
3695 (N : Node_Id; Val : Node_Id) is
3697 pragma Assert (False
3698 or else NT (N).Nkind = N_Object_Declaration);
3700 end Set_Handler_List_Entry;
3702 procedure Set_Has_Created_Identifier
3703 (N : Node_Id; Val : Boolean := True) is
3705 pragma Assert (False
3706 or else NT (N).Nkind = N_Block_Statement
3707 or else NT (N).Nkind = N_Loop_Statement);
3708 Set_Flag15 (N, Val);
3709 end Set_Has_Created_Identifier;
3711 procedure Set_Has_Dynamic_Length_Check
3712 (N : Node_Id; Val : Boolean := True) is
3714 Set_Flag10 (N, Val);
3715 end Set_Has_Dynamic_Length_Check;
3717 procedure Set_Has_Dynamic_Range_Check
3718 (N : Node_Id; Val : Boolean := True) is
3720 Set_Flag12 (N, Val);
3721 end Set_Has_Dynamic_Range_Check;
3723 procedure Set_Has_No_Elaboration_Code
3724 (N : Node_Id; Val : Boolean := True) is
3726 pragma Assert (False
3727 or else NT (N).Nkind = N_Compilation_Unit);
3728 Set_Flag17 (N, Val);
3729 end Set_Has_No_Elaboration_Code;
3731 procedure Set_Has_Priority_Pragma
3732 (N : Node_Id; Val : Boolean := True) is
3734 pragma Assert (False
3735 or else NT (N).Nkind = N_Protected_Definition
3736 or else NT (N).Nkind = N_Subprogram_Body
3737 or else NT (N).Nkind = N_Task_Definition);
3739 end Set_Has_Priority_Pragma;
3741 procedure Set_Has_Private_View
3742 (N : Node_Id; Val : Boolean := True) is
3744 pragma Assert (False
3745 or else NT (N).Nkind in N_Op
3746 or else NT (N).Nkind = N_Character_Literal
3747 or else NT (N).Nkind = N_Expanded_Name
3748 or else NT (N).Nkind = N_Identifier
3749 or else NT (N).Nkind = N_Operator_Symbol);
3750 Set_Flag11 (N, Val);
3751 end Set_Has_Private_View;
3753 procedure Set_Has_Storage_Size_Pragma
3754 (N : Node_Id; Val : Boolean := True) is
3756 pragma Assert (False
3757 or else NT (N).Nkind = N_Task_Definition);
3759 end Set_Has_Storage_Size_Pragma;
3761 procedure Set_Has_Task_Info_Pragma
3762 (N : Node_Id; Val : Boolean := True) is
3764 pragma Assert (False
3765 or else NT (N).Nkind = N_Task_Definition);
3767 end Set_Has_Task_Info_Pragma;
3769 procedure Set_Has_Task_Name_Pragma
3770 (N : Node_Id; Val : Boolean := True) is
3772 pragma Assert (False
3773 or else NT (N).Nkind = N_Task_Definition);
3775 end Set_Has_Task_Name_Pragma;
3777 procedure Set_Has_Wide_Character
3778 (N : Node_Id; Val : Boolean := True) is
3780 pragma Assert (False
3781 or else NT (N).Nkind = N_String_Literal);
3782 Set_Flag11 (N, Val);
3783 end Set_Has_Wide_Character;
3785 procedure Set_Hidden_By_Use_Clause
3786 (N : Node_Id; Val : Elist_Id) is
3788 pragma Assert (False
3789 or else NT (N).Nkind = N_Use_Package_Clause
3790 or else NT (N).Nkind = N_Use_Type_Clause);
3791 Set_Elist4 (N, Val);
3792 end Set_Hidden_By_Use_Clause;
3794 procedure Set_High_Bound
3795 (N : Node_Id; Val : Node_Id) is
3797 pragma Assert (False
3798 or else NT (N).Nkind = N_Range
3799 or else NT (N).Nkind = N_Real_Range_Specification
3800 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3801 Set_Node2_With_Parent (N, Val);
3804 procedure Set_Identifier
3805 (N : Node_Id; Val : Node_Id) is
3807 pragma Assert (False
3808 or else NT (N).Nkind = N_At_Clause
3809 or else NT (N).Nkind = N_Block_Statement
3810 or else NT (N).Nkind = N_Designator
3811 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3812 or else NT (N).Nkind = N_Label
3813 or else NT (N).Nkind = N_Loop_Statement
3814 or else NT (N).Nkind = N_Record_Representation_Clause
3815 or else NT (N).Nkind = N_Subprogram_Info);
3816 Set_Node1_With_Parent (N, Val);
3819 procedure Set_Implicit_With
3820 (N : Node_Id; Val : Boolean := True) is
3822 pragma Assert (False
3823 or else NT (N).Nkind = N_With_Clause);
3824 Set_Flag16 (N, Val);
3825 end Set_Implicit_With;
3827 procedure Set_In_Present
3828 (N : Node_Id; Val : Boolean := True) is
3830 pragma Assert (False
3831 or else NT (N).Nkind = N_Formal_Object_Declaration
3832 or else NT (N).Nkind = N_Parameter_Specification);
3833 Set_Flag15 (N, Val);
3836 procedure Set_Includes_Infinities
3837 (N : Node_Id; Val : Boolean := True) is
3839 pragma Assert (False
3840 or else NT (N).Nkind = N_Range);
3841 Set_Flag11 (N, Val);
3842 end Set_Includes_Infinities;
3844 procedure Set_Instance_Spec
3845 (N : Node_Id; Val : Node_Id) is
3847 pragma Assert (False
3848 or else NT (N).Nkind = N_Formal_Package_Declaration
3849 or else NT (N).Nkind = N_Function_Instantiation
3850 or else NT (N).Nkind = N_Package_Instantiation
3851 or else NT (N).Nkind = N_Procedure_Instantiation);
3852 Set_Node5 (N, Val); -- semantic field, no Parent set
3853 end Set_Instance_Spec;
3855 procedure Set_Intval
3856 (N : Node_Id; Val : Uint) is
3858 pragma Assert (False
3859 or else NT (N).Nkind = N_Integer_Literal);
3863 procedure Set_Is_Asynchronous_Call_Block
3864 (N : Node_Id; Val : Boolean := True) is
3866 pragma Assert (False
3867 or else NT (N).Nkind = N_Block_Statement);
3869 end Set_Is_Asynchronous_Call_Block;
3871 procedure Set_Is_Component_Left_Opnd
3872 (N : Node_Id; Val : Boolean := True) is
3874 pragma Assert (False
3875 or else NT (N).Nkind = N_Op_Concat);
3876 Set_Flag13 (N, Val);
3877 end Set_Is_Component_Left_Opnd;
3879 procedure Set_Is_Component_Right_Opnd
3880 (N : Node_Id; Val : Boolean := True) is
3882 pragma Assert (False
3883 or else NT (N).Nkind = N_Op_Concat);
3884 Set_Flag14 (N, Val);
3885 end Set_Is_Component_Right_Opnd;
3887 procedure Set_Is_Controlling_Actual
3888 (N : Node_Id; Val : Boolean := True) is
3890 pragma Assert (False
3891 or else NT (N).Nkind in N_Subexpr);
3892 Set_Flag16 (N, Val);
3893 end Set_Is_Controlling_Actual;
3895 procedure Set_Is_In_Discriminant_Check
3896 (N : Node_Id; Val : Boolean := True) is
3898 pragma Assert (False
3899 or else NT (N).Nkind = N_Selected_Component);
3900 Set_Flag11 (N, Val);
3901 end Set_Is_In_Discriminant_Check;
3903 procedure Set_Is_Machine_Number
3904 (N : Node_Id; Val : Boolean := True) is
3906 pragma Assert (False
3907 or else NT (N).Nkind = N_Real_Literal);
3908 Set_Flag11 (N, Val);
3909 end Set_Is_Machine_Number;
3911 procedure Set_Is_Null_Loop
3912 (N : Node_Id; Val : Boolean := True) is
3914 pragma Assert (False
3915 or else NT (N).Nkind = N_Loop_Statement);
3916 Set_Flag16 (N, Val);
3917 end Set_Is_Null_Loop;
3919 procedure Set_Is_Overloaded
3920 (N : Node_Id; Val : Boolean := True) is
3922 pragma Assert (False
3923 or else NT (N).Nkind in N_Subexpr);
3925 end Set_Is_Overloaded;
3927 procedure Set_Is_Power_Of_2_For_Shift
3928 (N : Node_Id; Val : Boolean := True) is
3930 pragma Assert (False
3931 or else NT (N).Nkind = N_Op_Expon);
3932 Set_Flag13 (N, Val);
3933 end Set_Is_Power_Of_2_For_Shift;
3935 procedure Set_Is_Protected_Subprogram_Body
3936 (N : Node_Id; Val : Boolean := True) is
3938 pragma Assert (False
3939 or else NT (N).Nkind = N_Subprogram_Body);
3941 end Set_Is_Protected_Subprogram_Body;
3943 procedure Set_Is_Static_Expression
3944 (N : Node_Id; Val : Boolean := True) is
3946 pragma Assert (False
3947 or else NT (N).Nkind in N_Subexpr);
3949 end Set_Is_Static_Expression;
3951 procedure Set_Is_Subprogram_Descriptor
3952 (N : Node_Id; Val : Boolean := True) is
3954 pragma Assert (False
3955 or else NT (N).Nkind = N_Object_Declaration);
3956 Set_Flag16 (N, Val);
3957 end Set_Is_Subprogram_Descriptor;
3959 procedure Set_Is_Task_Allocation_Block
3960 (N : Node_Id; Val : Boolean := True) is
3962 pragma Assert (False
3963 or else NT (N).Nkind = N_Block_Statement);
3965 end Set_Is_Task_Allocation_Block;
3967 procedure Set_Is_Task_Master
3968 (N : Node_Id; Val : Boolean := True) is
3970 pragma Assert (False
3971 or else NT (N).Nkind = N_Block_Statement
3972 or else NT (N).Nkind = N_Subprogram_Body
3973 or else NT (N).Nkind = N_Task_Body);
3975 end Set_Is_Task_Master;
3977 procedure Set_Iteration_Scheme
3978 (N : Node_Id; Val : Node_Id) is
3980 pragma Assert (False
3981 or else NT (N).Nkind = N_Loop_Statement);
3982 Set_Node2_With_Parent (N, Val);
3983 end Set_Iteration_Scheme;
3986 (N : Node_Id; Val : Entity_Id) is
3988 pragma Assert (False
3989 or else NT (N).Nkind = N_Itype_Reference);
3990 Set_Node1 (N, Val); -- no parent, semantic field
3993 procedure Set_Kill_Range_Check
3994 (N : Node_Id; Val : Boolean := True) is
3996 pragma Assert (False
3997 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3998 Set_Flag11 (N, Val);
3999 end Set_Kill_Range_Check;
4001 procedure Set_Label_Construct
4002 (N : Node_Id; Val : Node_Id) is
4004 pragma Assert (False
4005 or else NT (N).Nkind = N_Implicit_Label_Declaration);
4006 Set_Node2 (N, Val); -- semantic field, no parent set
4007 end Set_Label_Construct;
4009 procedure Set_Last_Bit
4010 (N : Node_Id; Val : Node_Id) is
4012 pragma Assert (False
4013 or else NT (N).Nkind = N_Component_Clause);
4014 Set_Node4_With_Parent (N, Val);
4017 procedure Set_Last_Name
4018 (N : Node_Id; Val : Boolean := True) is
4020 pragma Assert (False
4021 or else NT (N).Nkind = N_With_Clause);
4025 procedure Set_Left_Opnd
4026 (N : Node_Id; Val : Node_Id) is
4028 pragma Assert (False
4029 or else NT (N).Nkind = N_And_Then
4030 or else NT (N).Nkind = N_In
4031 or else NT (N).Nkind = N_Not_In
4032 or else NT (N).Nkind = N_Or_Else
4033 or else NT (N).Nkind in N_Binary_Op);
4034 Set_Node2_With_Parent (N, Val);
4037 procedure Set_Library_Unit
4038 (N : Node_Id; Val : Node_Id) is
4040 pragma Assert (False
4041 or else NT (N).Nkind = N_Compilation_Unit
4042 or else NT (N).Nkind = N_Package_Body_Stub
4043 or else NT (N).Nkind = N_Protected_Body_Stub
4044 or else NT (N).Nkind = N_Subprogram_Body_Stub
4045 or else NT (N).Nkind = N_Task_Body_Stub
4046 or else NT (N).Nkind = N_With_Clause);
4047 Set_Node4 (N, Val); -- semantic field, no parent set
4048 end Set_Library_Unit;
4050 procedure Set_Limited_View_Installed
4051 (N : Node_Id; Val : Boolean := True) is
4053 pragma Assert (False
4054 or else NT (N).Nkind = N_Package_Specification
4055 or else NT (N).Nkind = N_With_Clause);
4056 Set_Flag18 (N, Val);
4057 end Set_Limited_View_Installed;
4059 procedure Set_Limited_Present
4060 (N : Node_Id; Val : Boolean := True) is
4062 pragma Assert (False
4063 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4064 or else NT (N).Nkind = N_Private_Type_Declaration
4065 or else NT (N).Nkind = N_Record_Definition
4066 or else NT (N).Nkind = N_With_Clause);
4067 Set_Flag17 (N, Val);
4068 end Set_Limited_Present;
4070 procedure Set_Literals
4071 (N : Node_Id; Val : List_Id) is
4073 pragma Assert (False
4074 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4075 Set_List1_With_Parent (N, Val);
4078 procedure Set_Loop_Actions
4079 (N : Node_Id; Val : List_Id) is
4081 pragma Assert (False
4082 or else NT (N).Nkind = N_Component_Association);
4083 Set_List2 (N, Val); -- semantic field, no parent set
4084 end Set_Loop_Actions;
4086 procedure Set_Loop_Parameter_Specification
4087 (N : Node_Id; Val : Node_Id) is
4089 pragma Assert (False
4090 or else NT (N).Nkind = N_Iteration_Scheme);
4091 Set_Node4_With_Parent (N, Val);
4092 end Set_Loop_Parameter_Specification;
4094 procedure Set_Low_Bound
4095 (N : Node_Id; Val : Node_Id) is
4097 pragma Assert (False
4098 or else NT (N).Nkind = N_Range
4099 or else NT (N).Nkind = N_Real_Range_Specification
4100 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4101 Set_Node1_With_Parent (N, Val);
4104 procedure Set_Mod_Clause
4105 (N : Node_Id; Val : Node_Id) is
4107 pragma Assert (False
4108 or else NT (N).Nkind = N_Record_Representation_Clause);
4109 Set_Node2_With_Parent (N, Val);
4112 procedure Set_More_Ids
4113 (N : Node_Id; Val : Boolean := True) is
4115 pragma Assert (False
4116 or else NT (N).Nkind = N_Component_Declaration
4117 or else NT (N).Nkind = N_Discriminant_Specification
4118 or else NT (N).Nkind = N_Exception_Declaration
4119 or else NT (N).Nkind = N_Formal_Object_Declaration
4120 or else NT (N).Nkind = N_Number_Declaration
4121 or else NT (N).Nkind = N_Object_Declaration
4122 or else NT (N).Nkind = N_Parameter_Specification);
4126 procedure Set_Must_Be_Byte_Aligned
4127 (N : Node_Id; Val : Boolean := True) is
4129 pragma Assert (False
4130 or else NT (N).Nkind = N_Attribute_Reference);
4131 Set_Flag14 (N, Val);
4132 end Set_Must_Be_Byte_Aligned;
4134 procedure Set_Must_Not_Freeze
4135 (N : Node_Id; Val : Boolean := True) is
4137 pragma Assert (False
4138 or else NT (N).Nkind = N_Subtype_Indication
4139 or else NT (N).Nkind in N_Subexpr);
4141 end Set_Must_Not_Freeze;
4144 (N : Node_Id; Val : Node_Id) is
4146 pragma Assert (False
4147 or else NT (N).Nkind = N_Assignment_Statement
4148 or else NT (N).Nkind = N_Attribute_Definition_Clause
4149 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4150 or else NT (N).Nkind = N_Designator
4151 or else NT (N).Nkind = N_Entry_Call_Statement
4152 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4153 or else NT (N).Nkind = N_Exit_Statement
4154 or else NT (N).Nkind = N_Formal_Package_Declaration
4155 or else NT (N).Nkind = N_Function_Call
4156 or else NT (N).Nkind = N_Function_Instantiation
4157 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4158 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4159 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4160 or else NT (N).Nkind = N_Goto_Statement
4161 or else NT (N).Nkind = N_Object_Renaming_Declaration
4162 or else NT (N).Nkind = N_Package_Instantiation
4163 or else NT (N).Nkind = N_Package_Renaming_Declaration
4164 or else NT (N).Nkind = N_Procedure_Call_Statement
4165 or else NT (N).Nkind = N_Procedure_Instantiation
4166 or else NT (N).Nkind = N_Raise_Statement
4167 or else NT (N).Nkind = N_Requeue_Statement
4168 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4169 or else NT (N).Nkind = N_Subunit
4170 or else NT (N).Nkind = N_Variant_Part
4171 or else NT (N).Nkind = N_With_Clause
4172 or else NT (N).Nkind = N_With_Type_Clause);
4173 Set_Node2_With_Parent (N, Val);
4177 (N : Node_Id; Val : List_Id) is
4179 pragma Assert (False
4180 or else NT (N).Nkind = N_Abort_Statement
4181 or else NT (N).Nkind = N_Use_Package_Clause);
4182 Set_List2_With_Parent (N, Val);
4185 procedure Set_Next_Entity
4186 (N : Node_Id; Val : Node_Id) is
4188 pragma Assert (False
4189 or else NT (N).Nkind = N_Defining_Character_Literal
4190 or else NT (N).Nkind = N_Defining_Identifier
4191 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4192 Set_Node2 (N, Val); -- semantic field, no parent set
4193 end Set_Next_Entity;
4195 procedure Set_Next_Named_Actual
4196 (N : Node_Id; Val : Node_Id) is
4198 pragma Assert (False
4199 or else NT (N).Nkind = N_Parameter_Association);
4200 Set_Node4 (N, Val); -- semantic field, no parent set
4201 end Set_Next_Named_Actual;
4203 procedure Set_Next_Rep_Item
4204 (N : Node_Id; Val : Node_Id) is
4206 pragma Assert (False
4207 or else NT (N).Nkind = N_Attribute_Definition_Clause
4208 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4209 or else NT (N).Nkind = N_Pragma
4210 or else NT (N).Nkind = N_Record_Representation_Clause);
4211 Set_Node4 (N, Val); -- semantic field, no parent set
4212 end Set_Next_Rep_Item;
4214 procedure Set_Next_Use_Clause
4215 (N : Node_Id; Val : Node_Id) is
4217 pragma Assert (False
4218 or else NT (N).Nkind = N_Use_Package_Clause
4219 or else NT (N).Nkind = N_Use_Type_Clause);
4220 Set_Node3 (N, Val); -- semantic field, no parent set
4221 end Set_Next_Use_Clause;
4223 procedure Set_No_Ctrl_Actions
4224 (N : Node_Id; Val : Boolean := True) is
4226 pragma Assert (False
4227 or else NT (N).Nkind = N_Assignment_Statement);
4229 end Set_No_Ctrl_Actions;
4231 procedure Set_No_Elaboration_Check
4232 (N : Node_Id; Val : Boolean := True) is
4234 pragma Assert (False
4235 or else NT (N).Nkind = N_Function_Call
4236 or else NT (N).Nkind = N_Procedure_Call_Statement);
4237 Set_Flag14 (N, Val);
4238 end Set_No_Elaboration_Check;
4240 procedure Set_No_Entities_Ref_In_Spec
4241 (N : Node_Id; Val : Boolean := True) is
4243 pragma Assert (False
4244 or else NT (N).Nkind = N_With_Clause);
4246 end Set_No_Entities_Ref_In_Spec;
4248 procedure Set_No_Initialization
4249 (N : Node_Id; Val : Boolean := True) is
4251 pragma Assert (False
4252 or else NT (N).Nkind = N_Allocator
4253 or else NT (N).Nkind = N_Object_Declaration);
4254 Set_Flag13 (N, Val);
4255 end Set_No_Initialization;
4257 procedure Set_No_Truncation
4258 (N : Node_Id; Val : Boolean := True) is
4260 pragma Assert (False
4261 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4262 Set_Flag17 (N, Val);
4263 end Set_No_Truncation;
4265 procedure Set_Null_Present
4266 (N : Node_Id; Val : Boolean := True) is
4268 pragma Assert (False
4269 or else NT (N).Nkind = N_Component_List
4270 or else NT (N).Nkind = N_Record_Definition);
4271 Set_Flag13 (N, Val);
4272 end Set_Null_Present;
4274 procedure Set_Null_Record_Present
4275 (N : Node_Id; Val : Boolean := True) is
4277 pragma Assert (False
4278 or else NT (N).Nkind = N_Aggregate
4279 or else NT (N).Nkind = N_Extension_Aggregate);
4280 Set_Flag17 (N, Val);
4281 end Set_Null_Record_Present;
4283 procedure Set_Object_Definition
4284 (N : Node_Id; Val : Node_Id) is
4286 pragma Assert (False
4287 or else NT (N).Nkind = N_Object_Declaration);
4288 Set_Node4_With_Parent (N, Val);
4289 end Set_Object_Definition;
4291 procedure Set_OK_For_Stream
4292 (N : Node_Id; Val : Boolean := True) is
4294 pragma Assert (False
4295 or else NT (N).Nkind = N_Attribute_Reference);
4297 end Set_OK_For_Stream;
4299 procedure Set_Original_Discriminant
4300 (N : Node_Id; Val : Node_Id) is
4302 pragma Assert (False
4303 or else NT (N).Nkind = N_Identifier);
4304 Set_Node2 (N, Val); -- semantic field, no parent set
4305 end Set_Original_Discriminant;
4307 procedure Set_Original_Entity
4308 (N : Node_Id; Val : Entity_Id) is
4310 pragma Assert (False
4311 or else NT (N).Nkind = N_Integer_Literal
4312 or else NT (N).Nkind = N_Real_Literal);
4313 Set_Node2 (N, Val); -- semantic field, no parent set
4314 end Set_Original_Entity;
4316 procedure Set_Others_Discrete_Choices
4317 (N : Node_Id; Val : List_Id) is
4319 pragma Assert (False
4320 or else NT (N).Nkind = N_Others_Choice);
4321 Set_List1_With_Parent (N, Val);
4322 end Set_Others_Discrete_Choices;
4324 procedure Set_Out_Present
4325 (N : Node_Id; Val : Boolean := True) is
4327 pragma Assert (False
4328 or else NT (N).Nkind = N_Formal_Object_Declaration
4329 or else NT (N).Nkind = N_Parameter_Specification);
4330 Set_Flag17 (N, Val);
4331 end Set_Out_Present;
4333 procedure Set_Parameter_Associations
4334 (N : Node_Id; Val : List_Id) is
4336 pragma Assert (False
4337 or else NT (N).Nkind = N_Entry_Call_Statement
4338 or else NT (N).Nkind = N_Function_Call
4339 or else NT (N).Nkind = N_Procedure_Call_Statement);
4340 Set_List3_With_Parent (N, Val);
4341 end Set_Parameter_Associations;
4343 procedure Set_Parameter_List_Truncated
4344 (N : Node_Id; Val : Boolean := True) is
4346 pragma Assert (False
4347 or else NT (N).Nkind = N_Function_Call
4348 or else NT (N).Nkind = N_Procedure_Call_Statement);
4349 Set_Flag17 (N, Val);
4350 end Set_Parameter_List_Truncated;
4352 procedure Set_Parameter_Specifications
4353 (N : Node_Id; Val : List_Id) is
4355 pragma Assert (False
4356 or else NT (N).Nkind = N_Accept_Statement
4357 or else NT (N).Nkind = N_Access_Function_Definition
4358 or else NT (N).Nkind = N_Access_Procedure_Definition
4359 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4360 or else NT (N).Nkind = N_Entry_Declaration
4361 or else NT (N).Nkind = N_Function_Specification
4362 or else NT (N).Nkind = N_Procedure_Specification);
4363 Set_List3_With_Parent (N, Val);
4364 end Set_Parameter_Specifications;
4366 procedure Set_Parameter_Type
4367 (N : Node_Id; Val : Node_Id) is
4369 pragma Assert (False
4370 or else NT (N).Nkind = N_Parameter_Specification);
4371 Set_Node2_With_Parent (N, Val);
4372 end Set_Parameter_Type;
4374 procedure Set_Parent_Spec
4375 (N : Node_Id; Val : Node_Id) is
4377 pragma Assert (False
4378 or else NT (N).Nkind = N_Function_Instantiation
4379 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4380 or else NT (N).Nkind = N_Generic_Package_Declaration
4381 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4382 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4383 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4384 or else NT (N).Nkind = N_Package_Declaration
4385 or else NT (N).Nkind = N_Package_Instantiation
4386 or else NT (N).Nkind = N_Package_Renaming_Declaration
4387 or else NT (N).Nkind = N_Procedure_Instantiation
4388 or else NT (N).Nkind = N_Subprogram_Declaration
4389 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4390 Set_Node4 (N, Val); -- semantic field, no parent set
4391 end Set_Parent_Spec;
4393 procedure Set_Position
4394 (N : Node_Id; Val : Node_Id) is
4396 pragma Assert (False
4397 or else NT (N).Nkind = N_Component_Clause);
4398 Set_Node2_With_Parent (N, Val);
4401 procedure Set_Pragma_Argument_Associations
4402 (N : Node_Id; Val : List_Id) is
4404 pragma Assert (False
4405 or else NT (N).Nkind = N_Pragma);
4406 Set_List2_With_Parent (N, Val);
4407 end Set_Pragma_Argument_Associations;
4409 procedure Set_Pragmas_After
4410 (N : Node_Id; Val : List_Id) is
4412 pragma Assert (False
4413 or else NT (N).Nkind = N_Compilation_Unit_Aux
4414 or else NT (N).Nkind = N_Terminate_Alternative);
4415 Set_List5_With_Parent (N, Val);
4416 end Set_Pragmas_After;
4418 procedure Set_Pragmas_Before
4419 (N : Node_Id; Val : List_Id) is
4421 pragma Assert (False
4422 or else NT (N).Nkind = N_Accept_Alternative
4423 or else NT (N).Nkind = N_Delay_Alternative
4424 or else NT (N).Nkind = N_Entry_Call_Alternative
4425 or else NT (N).Nkind = N_Mod_Clause
4426 or else NT (N).Nkind = N_Terminate_Alternative
4427 or else NT (N).Nkind = N_Triggering_Alternative);
4428 Set_List4_With_Parent (N, Val);
4429 end Set_Pragmas_Before;
4431 procedure Set_Prefix
4432 (N : Node_Id; Val : Node_Id) is
4434 pragma Assert (False
4435 or else NT (N).Nkind = N_Attribute_Reference
4436 or else NT (N).Nkind = N_Expanded_Name
4437 or else NT (N).Nkind = N_Explicit_Dereference
4438 or else NT (N).Nkind = N_Indexed_Component
4439 or else NT (N).Nkind = N_Reference
4440 or else NT (N).Nkind = N_Selected_Component
4441 or else NT (N).Nkind = N_Slice);
4442 Set_Node3_With_Parent (N, Val);
4445 procedure Set_Present_Expr
4446 (N : Node_Id; Val : Uint) is
4448 pragma Assert (False
4449 or else NT (N).Nkind = N_Variant);
4451 end Set_Present_Expr;
4453 procedure Set_Prev_Ids
4454 (N : Node_Id; Val : Boolean := True) is
4456 pragma Assert (False
4457 or else NT (N).Nkind = N_Component_Declaration
4458 or else NT (N).Nkind = N_Discriminant_Specification
4459 or else NT (N).Nkind = N_Exception_Declaration
4460 or else NT (N).Nkind = N_Formal_Object_Declaration
4461 or else NT (N).Nkind = N_Number_Declaration
4462 or else NT (N).Nkind = N_Object_Declaration
4463 or else NT (N).Nkind = N_Parameter_Specification);
4467 procedure Set_Print_In_Hex
4468 (N : Node_Id; Val : Boolean := True) is
4470 pragma Assert (False
4471 or else NT (N).Nkind = N_Integer_Literal);
4472 Set_Flag13 (N, Val);
4473 end Set_Print_In_Hex;
4475 procedure Set_Private_Declarations
4476 (N : Node_Id; Val : List_Id) is
4478 pragma Assert (False
4479 or else NT (N).Nkind = N_Package_Specification
4480 or else NT (N).Nkind = N_Protected_Definition
4481 or else NT (N).Nkind = N_Task_Definition);
4482 Set_List3_With_Parent (N, Val);
4483 end Set_Private_Declarations;
4485 procedure Set_Private_Present
4486 (N : Node_Id; Val : Boolean := True) is
4488 pragma Assert (False
4489 or else NT (N).Nkind = N_Compilation_Unit
4490 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
4491 Set_Flag15 (N, Val);
4492 end Set_Private_Present;
4494 procedure Set_Procedure_To_Call
4495 (N : Node_Id; Val : Node_Id) is
4497 pragma Assert (False
4498 or else NT (N).Nkind = N_Allocator
4499 or else NT (N).Nkind = N_Free_Statement
4500 or else NT (N).Nkind = N_Return_Statement);
4501 Set_Node4 (N, Val); -- semantic field, no parent set
4502 end Set_Procedure_To_Call;
4504 procedure Set_Proper_Body
4505 (N : Node_Id; Val : Node_Id) is
4507 pragma Assert (False
4508 or else NT (N).Nkind = N_Subunit);
4509 Set_Node1_With_Parent (N, Val);
4510 end Set_Proper_Body;
4512 procedure Set_Protected_Definition
4513 (N : Node_Id; Val : Node_Id) is
4515 pragma Assert (False
4516 or else NT (N).Nkind = N_Protected_Type_Declaration
4517 or else NT (N).Nkind = N_Single_Protected_Declaration);
4518 Set_Node3_With_Parent (N, Val);
4519 end Set_Protected_Definition;
4521 procedure Set_Protected_Present
4522 (N : Node_Id; Val : Boolean := True) is
4524 pragma Assert (False
4525 or else NT (N).Nkind = N_Access_Function_Definition
4526 or else NT (N).Nkind = N_Access_Procedure_Definition);
4527 Set_Flag15 (N, Val);
4528 end Set_Protected_Present;
4530 procedure Set_Raises_Constraint_Error
4531 (N : Node_Id; Val : Boolean := True) is
4533 pragma Assert (False
4534 or else NT (N).Nkind in N_Subexpr);
4536 end Set_Raises_Constraint_Error;
4538 procedure Set_Range_Constraint
4539 (N : Node_Id; Val : Node_Id) is
4541 pragma Assert (False
4542 or else NT (N).Nkind = N_Delta_Constraint
4543 or else NT (N).Nkind = N_Digits_Constraint);
4544 Set_Node4_With_Parent (N, Val);
4545 end Set_Range_Constraint;
4547 procedure Set_Range_Expression
4548 (N : Node_Id; Val : Node_Id) is
4550 pragma Assert (False
4551 or else NT (N).Nkind = N_Range_Constraint);
4552 Set_Node4_With_Parent (N, Val);
4553 end Set_Range_Expression;
4555 procedure Set_Real_Range_Specification
4556 (N : Node_Id; Val : Node_Id) is
4558 pragma Assert (False
4559 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4560 or else NT (N).Nkind = N_Floating_Point_Definition
4561 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4562 Set_Node4_With_Parent (N, Val);
4563 end Set_Real_Range_Specification;
4565 procedure Set_Realval
4566 (N : Node_Id; Val : Ureal) is
4568 pragma Assert (False
4569 or else NT (N).Nkind = N_Real_Literal);
4570 Set_Ureal3 (N, Val);
4573 procedure Set_Reason
4574 (N : Node_Id; Val : Uint) is
4576 pragma Assert (False
4577 or else NT (N).Nkind = N_Raise_Constraint_Error
4578 or else NT (N).Nkind = N_Raise_Program_Error
4579 or else NT (N).Nkind = N_Raise_Storage_Error);
4583 procedure Set_Record_Extension_Part
4584 (N : Node_Id; Val : Node_Id) is
4586 pragma Assert (False
4587 or else NT (N).Nkind = N_Derived_Type_Definition);
4588 Set_Node3_With_Parent (N, Val);
4589 end Set_Record_Extension_Part;
4591 procedure Set_Redundant_Use
4592 (N : Node_Id; Val : Boolean := True) is
4594 pragma Assert (False
4595 or else NT (N).Nkind = N_Attribute_Reference
4596 or else NT (N).Nkind = N_Expanded_Name
4597 or else NT (N).Nkind = N_Identifier);
4598 Set_Flag13 (N, Val);
4599 end Set_Redundant_Use;
4601 procedure Set_Return_Type
4602 (N : Node_Id; Val : Node_Id) is
4604 pragma Assert (False
4605 or else NT (N).Nkind = N_Return_Statement);
4606 Set_Node2 (N, Val); -- semantic field, no parent set
4607 end Set_Return_Type;
4609 procedure Set_Reverse_Present
4610 (N : Node_Id; Val : Boolean := True) is
4612 pragma Assert (False
4613 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4614 Set_Flag15 (N, Val);
4615 end Set_Reverse_Present;
4617 procedure Set_Right_Opnd
4618 (N : Node_Id; Val : Node_Id) is
4620 pragma Assert (False
4621 or else NT (N).Nkind in N_Op
4622 or else NT (N).Nkind = N_And_Then
4623 or else NT (N).Nkind = N_In
4624 or else NT (N).Nkind = N_Not_In
4625 or else NT (N).Nkind = N_Or_Else);
4626 Set_Node3_With_Parent (N, Val);
4629 procedure Set_Rounded_Result
4630 (N : Node_Id; Val : Boolean := True) is
4632 pragma Assert (False
4633 or else NT (N).Nkind = N_Op_Divide
4634 or else NT (N).Nkind = N_Op_Multiply
4635 or else NT (N).Nkind = N_Type_Conversion);
4636 Set_Flag18 (N, Val);
4637 end Set_Rounded_Result;
4640 (N : Node_Id; Val : Node_Id) is
4642 pragma Assert (False
4643 or else NT (N).Nkind = N_Defining_Character_Literal
4644 or else NT (N).Nkind = N_Defining_Identifier
4645 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4646 Set_Node3 (N, Val); -- semantic field, no parent set
4649 procedure Set_Select_Alternatives
4650 (N : Node_Id; Val : List_Id) is
4652 pragma Assert (False
4653 or else NT (N).Nkind = N_Selective_Accept);
4654 Set_List1_With_Parent (N, Val);
4655 end Set_Select_Alternatives;
4657 procedure Set_Selector_Name
4658 (N : Node_Id; Val : Node_Id) is
4660 pragma Assert (False
4661 or else NT (N).Nkind = N_Expanded_Name
4662 or else NT (N).Nkind = N_Generic_Association
4663 or else NT (N).Nkind = N_Parameter_Association
4664 or else NT (N).Nkind = N_Selected_Component);
4665 Set_Node2_With_Parent (N, Val);
4666 end Set_Selector_Name;
4668 procedure Set_Selector_Names
4669 (N : Node_Id; Val : List_Id) is
4671 pragma Assert (False
4672 or else NT (N).Nkind = N_Discriminant_Association);
4673 Set_List1_With_Parent (N, Val);
4674 end Set_Selector_Names;
4676 procedure Set_Shift_Count_OK
4677 (N : Node_Id; Val : Boolean := True) is
4679 pragma Assert (False
4680 or else NT (N).Nkind = N_Op_Rotate_Left
4681 or else NT (N).Nkind = N_Op_Rotate_Right
4682 or else NT (N).Nkind = N_Op_Shift_Left
4683 or else NT (N).Nkind = N_Op_Shift_Right
4684 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4686 end Set_Shift_Count_OK;
4688 procedure Set_Source_Type
4689 (N : Node_Id; Val : Entity_Id) is
4691 pragma Assert (False
4692 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4693 Set_Node1 (N, Val); -- semantic field, no parent set
4694 end Set_Source_Type;
4696 procedure Set_Specification
4697 (N : Node_Id; Val : Node_Id) is
4699 pragma Assert (False
4700 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4701 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4702 or else NT (N).Nkind = N_Generic_Package_Declaration
4703 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4704 or else NT (N).Nkind = N_Package_Declaration
4705 or else NT (N).Nkind = N_Subprogram_Body
4706 or else NT (N).Nkind = N_Subprogram_Body_Stub
4707 or else NT (N).Nkind = N_Subprogram_Declaration
4708 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4709 Set_Node1_With_Parent (N, Val);
4710 end Set_Specification;
4712 procedure Set_Statements
4713 (N : Node_Id; Val : List_Id) is
4715 pragma Assert (False
4716 or else NT (N).Nkind = N_Abortable_Part
4717 or else NT (N).Nkind = N_Accept_Alternative
4718 or else NT (N).Nkind = N_Case_Statement_Alternative
4719 or else NT (N).Nkind = N_Delay_Alternative
4720 or else NT (N).Nkind = N_Entry_Call_Alternative
4721 or else NT (N).Nkind = N_Exception_Handler
4722 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4723 or else NT (N).Nkind = N_Loop_Statement
4724 or else NT (N).Nkind = N_Triggering_Alternative);
4725 Set_List3_With_Parent (N, Val);
4728 procedure Set_Static_Processing_OK
4729 (N : Node_Id; Val : Boolean) is
4731 pragma Assert (False
4732 or else NT (N).Nkind = N_Aggregate);
4734 end Set_Static_Processing_OK;
4736 procedure Set_Storage_Pool
4737 (N : Node_Id; Val : Node_Id) is
4739 pragma Assert (False
4740 or else NT (N).Nkind = N_Allocator
4741 or else NT (N).Nkind = N_Free_Statement
4742 or else NT (N).Nkind = N_Return_Statement);
4743 Set_Node1 (N, Val); -- semantic field, no parent set
4744 end Set_Storage_Pool;
4746 procedure Set_Strval
4747 (N : Node_Id; Val : String_Id) is
4749 pragma Assert (False
4750 or else NT (N).Nkind = N_Operator_Symbol
4751 or else NT (N).Nkind = N_String_Literal);
4755 procedure Set_Subtype_Indication
4756 (N : Node_Id; Val : Node_Id) is
4758 pragma Assert (False
4759 or else NT (N).Nkind = N_Access_To_Object_Definition
4760 or else NT (N).Nkind = N_Component_Definition
4761 or else NT (N).Nkind = N_Derived_Type_Definition
4762 or else NT (N).Nkind = N_Private_Extension_Declaration
4763 or else NT (N).Nkind = N_Subtype_Declaration);
4764 Set_Node5_With_Parent (N, Val);
4765 end Set_Subtype_Indication;
4767 procedure Set_Subtype_Mark
4768 (N : Node_Id; Val : Node_Id) is
4770 pragma Assert (False
4771 or else NT (N).Nkind = N_Access_Definition
4772 or else NT (N).Nkind = N_Access_Function_Definition
4773 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4774 or else NT (N).Nkind = N_Formal_Object_Declaration
4775 or else NT (N).Nkind = N_Function_Specification
4776 or else NT (N).Nkind = N_Object_Renaming_Declaration
4777 or else NT (N).Nkind = N_Qualified_Expression
4778 or else NT (N).Nkind = N_Subtype_Indication
4779 or else NT (N).Nkind = N_Type_Conversion
4780 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4781 Set_Node4_With_Parent (N, Val);
4782 end Set_Subtype_Mark;
4784 procedure Set_Subtype_Marks
4785 (N : Node_Id; Val : List_Id) is
4787 pragma Assert (False
4788 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4789 or else NT (N).Nkind = N_Use_Type_Clause);
4790 Set_List2_With_Parent (N, Val);
4791 end Set_Subtype_Marks;
4793 procedure Set_Tagged_Present
4794 (N : Node_Id; Val : Boolean := True) is
4796 pragma Assert (False
4797 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4798 or else NT (N).Nkind = N_Private_Type_Declaration
4799 or else NT (N).Nkind = N_Record_Definition
4800 or else NT (N).Nkind = N_With_Type_Clause);
4801 Set_Flag15 (N, Val);
4802 end Set_Tagged_Present;
4804 procedure Set_Target_Type
4805 (N : Node_Id; Val : Entity_Id) is
4807 pragma Assert (False
4808 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4809 Set_Node2 (N, Val); -- semantic field, no parent set
4810 end Set_Target_Type;
4812 procedure Set_Task_Body_Procedure
4813 (N : Node_Id; Val : Entity_Id) is
4815 pragma Assert (False
4816 or else NT (N).Nkind = N_Task_Type_Declaration);
4817 Set_Node2 (N, Val); -- semantic field, no parent set
4818 end Set_Task_Body_Procedure;
4820 procedure Set_Task_Definition
4821 (N : Node_Id; Val : Node_Id) is
4823 pragma Assert (False
4824 or else NT (N).Nkind = N_Single_Task_Declaration
4825 or else NT (N).Nkind = N_Task_Type_Declaration);
4826 Set_Node3_With_Parent (N, Val);
4827 end Set_Task_Definition;
4829 procedure Set_Then_Actions
4830 (N : Node_Id; Val : List_Id) is
4832 pragma Assert (False
4833 or else NT (N).Nkind = N_Conditional_Expression);
4834 Set_List2 (N, Val); -- semantic field, no parent set
4835 end Set_Then_Actions;
4837 procedure Set_Then_Statements
4838 (N : Node_Id; Val : List_Id) is
4840 pragma Assert (False
4841 or else NT (N).Nkind = N_Elsif_Part
4842 or else NT (N).Nkind = N_If_Statement);
4843 Set_List2_With_Parent (N, Val);
4844 end Set_Then_Statements;
4846 procedure Set_Treat_Fixed_As_Integer
4847 (N : Node_Id; Val : Boolean := True) is
4849 pragma Assert (False
4850 or else NT (N).Nkind = N_Op_Divide
4851 or else NT (N).Nkind = N_Op_Mod
4852 or else NT (N).Nkind = N_Op_Multiply
4853 or else NT (N).Nkind = N_Op_Rem);
4854 Set_Flag14 (N, Val);
4855 end Set_Treat_Fixed_As_Integer;
4857 procedure Set_Triggering_Alternative
4858 (N : Node_Id; Val : Node_Id) is
4860 pragma Assert (False
4861 or else NT (N).Nkind = N_Asynchronous_Select);
4862 Set_Node1_With_Parent (N, Val);
4863 end Set_Triggering_Alternative;
4865 procedure Set_Triggering_Statement
4866 (N : Node_Id; Val : Node_Id) is
4868 pragma Assert (False
4869 or else NT (N).Nkind = N_Triggering_Alternative);
4870 Set_Node1_With_Parent (N, Val);
4871 end Set_Triggering_Statement;
4873 procedure Set_TSS_Elist
4874 (N : Node_Id; Val : Elist_Id) is
4876 pragma Assert (False
4877 or else NT (N).Nkind = N_Freeze_Entity);
4878 Set_Elist3 (N, Val); -- semantic field, no parent set
4881 procedure Set_Type_Definition
4882 (N : Node_Id; Val : Node_Id) is
4884 pragma Assert (False
4885 or else NT (N).Nkind = N_Full_Type_Declaration);
4886 Set_Node3_With_Parent (N, Val);
4887 end Set_Type_Definition;
4890 (N : Node_Id; Val : Node_Id) is
4892 pragma Assert (False
4893 or else NT (N).Nkind = N_Compilation_Unit);
4894 Set_Node2_With_Parent (N, Val);
4897 procedure Set_Unknown_Discriminants_Present
4898 (N : Node_Id; Val : Boolean := True) is
4900 pragma Assert (False
4901 or else NT (N).Nkind = N_Formal_Type_Declaration
4902 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4903 or else NT (N).Nkind = N_Private_Extension_Declaration
4904 or else NT (N).Nkind = N_Private_Type_Declaration);
4905 Set_Flag13 (N, Val);
4906 end Set_Unknown_Discriminants_Present;
4908 procedure Set_Unreferenced_In_Spec
4909 (N : Node_Id; Val : Boolean := True) is
4911 pragma Assert (False
4912 or else NT (N).Nkind = N_With_Clause);
4914 end Set_Unreferenced_In_Spec;
4916 procedure Set_Variant_Part
4917 (N : Node_Id; Val : Node_Id) is
4919 pragma Assert (False
4920 or else NT (N).Nkind = N_Component_List);
4921 Set_Node4_With_Parent (N, Val);
4922 end Set_Variant_Part;
4924 procedure Set_Variants
4925 (N : Node_Id; Val : List_Id) is
4927 pragma Assert (False
4928 or else NT (N).Nkind = N_Variant_Part);
4929 Set_List1_With_Parent (N, Val);
4932 procedure Set_Visible_Declarations
4933 (N : Node_Id; Val : List_Id) is
4935 pragma Assert (False
4936 or else NT (N).Nkind = N_Package_Specification
4937 or else NT (N).Nkind = N_Protected_Definition
4938 or else NT (N).Nkind = N_Task_Definition);
4939 Set_List2_With_Parent (N, Val);
4940 end Set_Visible_Declarations;
4942 procedure Set_Was_Originally_Stub
4943 (N : Node_Id; Val : Boolean := True) is
4945 pragma Assert (False
4946 or else NT (N).Nkind = N_Package_Body
4947 or else NT (N).Nkind = N_Protected_Body
4948 or else NT (N).Nkind = N_Subprogram_Body
4949 or else NT (N).Nkind = N_Task_Body);
4950 Set_Flag13 (N, Val);
4951 end Set_Was_Originally_Stub;
4953 procedure Set_Zero_Cost_Handling
4954 (N : Node_Id; Val : Boolean := True) is
4956 pragma Assert (False
4957 or else NT (N).Nkind = N_Exception_Handler
4958 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4960 end Set_Zero_Cost_Handling;
4962 -------------------------
4963 -- Iterator Procedures --
4964 -------------------------
4966 procedure Next_Entity (N : in out Node_Id) is
4968 N := Next_Entity (N);
4971 procedure Next_Named_Actual (N : in out Node_Id) is
4973 N := Next_Named_Actual (N);
4974 end Next_Named_Actual;
4976 procedure Next_Rep_Item (N : in out Node_Id) is
4978 N := Next_Rep_Item (N);
4981 procedure Next_Use_Clause (N : in out Node_Id) is
4983 N := Next_Use_Clause (N);
4984 end Next_Use_Clause;
4990 function End_Location (N : Node_Id) return Source_Ptr is
4991 L : constant Uint := End_Span (N);
4997 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
5001 ----------------------
5002 -- Set_End_Location --
5003 ----------------------
5005 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
5008 UI_From_Int (Int (S) - Int (Sloc (N))));
5009 end Set_End_Location;