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
2044 or else NT (N).Nkind = N_With_Clause);
2046 end Private_Present;
2048 function Procedure_To_Call
2049 (N : Node_Id) return Node_Id is
2051 pragma Assert (False
2052 or else NT (N).Nkind = N_Allocator
2053 or else NT (N).Nkind = N_Free_Statement
2054 or else NT (N).Nkind = N_Return_Statement);
2056 end Procedure_To_Call;
2058 function Proper_Body
2059 (N : Node_Id) return Node_Id is
2061 pragma Assert (False
2062 or else NT (N).Nkind = N_Subunit);
2066 function Protected_Definition
2067 (N : Node_Id) return Node_Id is
2069 pragma Assert (False
2070 or else NT (N).Nkind = N_Protected_Type_Declaration
2071 or else NT (N).Nkind = N_Single_Protected_Declaration);
2073 end Protected_Definition;
2075 function Protected_Present
2076 (N : Node_Id) return Boolean is
2078 pragma Assert (False
2079 or else NT (N).Nkind = N_Access_Function_Definition
2080 or else NT (N).Nkind = N_Access_Procedure_Definition);
2082 end Protected_Present;
2084 function Raises_Constraint_Error
2085 (N : Node_Id) return Boolean is
2087 pragma Assert (False
2088 or else NT (N).Nkind in N_Subexpr);
2090 end Raises_Constraint_Error;
2092 function Range_Constraint
2093 (N : Node_Id) return Node_Id is
2095 pragma Assert (False
2096 or else NT (N).Nkind = N_Delta_Constraint
2097 or else NT (N).Nkind = N_Digits_Constraint);
2099 end Range_Constraint;
2101 function Range_Expression
2102 (N : Node_Id) return Node_Id is
2104 pragma Assert (False
2105 or else NT (N).Nkind = N_Range_Constraint);
2107 end Range_Expression;
2109 function Real_Range_Specification
2110 (N : Node_Id) return Node_Id is
2112 pragma Assert (False
2113 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2114 or else NT (N).Nkind = N_Floating_Point_Definition
2115 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2117 end Real_Range_Specification;
2120 (N : Node_Id) return Ureal is
2122 pragma Assert (False
2123 or else NT (N).Nkind = N_Real_Literal);
2128 (N : Node_Id) return Uint is
2130 pragma Assert (False
2131 or else NT (N).Nkind = N_Raise_Constraint_Error
2132 or else NT (N).Nkind = N_Raise_Program_Error
2133 or else NT (N).Nkind = N_Raise_Storage_Error);
2137 function Record_Extension_Part
2138 (N : Node_Id) return Node_Id is
2140 pragma Assert (False
2141 or else NT (N).Nkind = N_Derived_Type_Definition);
2143 end Record_Extension_Part;
2145 function Redundant_Use
2146 (N : Node_Id) return Boolean is
2148 pragma Assert (False
2149 or else NT (N).Nkind = N_Attribute_Reference
2150 or else NT (N).Nkind = N_Expanded_Name
2151 or else NT (N).Nkind = N_Identifier);
2155 function Return_Type
2156 (N : Node_Id) return Node_Id is
2158 pragma Assert (False
2159 or else NT (N).Nkind = N_Return_Statement);
2163 function Reverse_Present
2164 (N : Node_Id) return Boolean is
2166 pragma Assert (False
2167 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2169 end Reverse_Present;
2172 (N : Node_Id) return Node_Id is
2174 pragma Assert (False
2175 or else NT (N).Nkind in N_Op
2176 or else NT (N).Nkind = N_And_Then
2177 or else NT (N).Nkind = N_In
2178 or else NT (N).Nkind = N_Not_In
2179 or else NT (N).Nkind = N_Or_Else);
2183 function Rounded_Result
2184 (N : Node_Id) return Boolean is
2186 pragma Assert (False
2187 or else NT (N).Nkind = N_Op_Divide
2188 or else NT (N).Nkind = N_Op_Multiply
2189 or else NT (N).Nkind = N_Type_Conversion);
2194 (N : Node_Id) return Node_Id is
2196 pragma Assert (False
2197 or else NT (N).Nkind = N_Defining_Character_Literal
2198 or else NT (N).Nkind = N_Defining_Identifier
2199 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2203 function Select_Alternatives
2204 (N : Node_Id) return List_Id is
2206 pragma Assert (False
2207 or else NT (N).Nkind = N_Selective_Accept);
2209 end Select_Alternatives;
2211 function Selector_Name
2212 (N : Node_Id) return Node_Id is
2214 pragma Assert (False
2215 or else NT (N).Nkind = N_Expanded_Name
2216 or else NT (N).Nkind = N_Generic_Association
2217 or else NT (N).Nkind = N_Parameter_Association
2218 or else NT (N).Nkind = N_Selected_Component);
2222 function Selector_Names
2223 (N : Node_Id) return List_Id is
2225 pragma Assert (False
2226 or else NT (N).Nkind = N_Discriminant_Association);
2230 function Shift_Count_OK
2231 (N : Node_Id) return Boolean is
2233 pragma Assert (False
2234 or else NT (N).Nkind = N_Op_Rotate_Left
2235 or else NT (N).Nkind = N_Op_Rotate_Right
2236 or else NT (N).Nkind = N_Op_Shift_Left
2237 or else NT (N).Nkind = N_Op_Shift_Right
2238 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2242 function Source_Type
2243 (N : Node_Id) return Entity_Id is
2245 pragma Assert (False
2246 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2250 function Specification
2251 (N : Node_Id) return Node_Id is
2253 pragma Assert (False
2254 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2255 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2256 or else NT (N).Nkind = N_Generic_Package_Declaration
2257 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2258 or else NT (N).Nkind = N_Package_Declaration
2259 or else NT (N).Nkind = N_Subprogram_Body
2260 or else NT (N).Nkind = N_Subprogram_Body_Stub
2261 or else NT (N).Nkind = N_Subprogram_Declaration
2262 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2267 (N : Node_Id) return List_Id is
2269 pragma Assert (False
2270 or else NT (N).Nkind = N_Abortable_Part
2271 or else NT (N).Nkind = N_Accept_Alternative
2272 or else NT (N).Nkind = N_Case_Statement_Alternative
2273 or else NT (N).Nkind = N_Delay_Alternative
2274 or else NT (N).Nkind = N_Entry_Call_Alternative
2275 or else NT (N).Nkind = N_Exception_Handler
2276 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2277 or else NT (N).Nkind = N_Loop_Statement
2278 or else NT (N).Nkind = N_Triggering_Alternative);
2282 function Static_Processing_OK
2283 (N : Node_Id) return Boolean is
2285 pragma Assert (False
2286 or else NT (N).Nkind = N_Aggregate);
2288 end Static_Processing_OK;
2290 function Storage_Pool
2291 (N : Node_Id) return Node_Id is
2293 pragma Assert (False
2294 or else NT (N).Nkind = N_Allocator
2295 or else NT (N).Nkind = N_Free_Statement
2296 or else NT (N).Nkind = N_Return_Statement);
2301 (N : Node_Id) return String_Id is
2303 pragma Assert (False
2304 or else NT (N).Nkind = N_Operator_Symbol
2305 or else NT (N).Nkind = N_String_Literal);
2309 function Subtype_Indication
2310 (N : Node_Id) return Node_Id is
2312 pragma Assert (False
2313 or else NT (N).Nkind = N_Access_To_Object_Definition
2314 or else NT (N).Nkind = N_Component_Definition
2315 or else NT (N).Nkind = N_Derived_Type_Definition
2316 or else NT (N).Nkind = N_Private_Extension_Declaration
2317 or else NT (N).Nkind = N_Subtype_Declaration);
2319 end Subtype_Indication;
2321 function Subtype_Mark
2322 (N : Node_Id) return Node_Id is
2324 pragma Assert (False
2325 or else NT (N).Nkind = N_Access_Definition
2326 or else NT (N).Nkind = N_Access_Function_Definition
2327 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2328 or else NT (N).Nkind = N_Formal_Object_Declaration
2329 or else NT (N).Nkind = N_Function_Specification
2330 or else NT (N).Nkind = N_Object_Renaming_Declaration
2331 or else NT (N).Nkind = N_Qualified_Expression
2332 or else NT (N).Nkind = N_Subtype_Indication
2333 or else NT (N).Nkind = N_Type_Conversion
2334 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2338 function Subtype_Marks
2339 (N : Node_Id) return List_Id is
2341 pragma Assert (False
2342 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2343 or else NT (N).Nkind = N_Use_Type_Clause);
2347 function Tagged_Present
2348 (N : Node_Id) return Boolean is
2350 pragma Assert (False
2351 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2352 or else NT (N).Nkind = N_Private_Type_Declaration
2353 or else NT (N).Nkind = N_Record_Definition
2354 or else NT (N).Nkind = N_With_Type_Clause);
2358 function Target_Type
2359 (N : Node_Id) return Entity_Id is
2361 pragma Assert (False
2362 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2366 function Task_Body_Procedure
2367 (N : Node_Id) return Entity_Id is
2369 pragma Assert (False
2370 or else NT (N).Nkind = N_Task_Type_Declaration);
2372 end Task_Body_Procedure;
2374 function Task_Definition
2375 (N : Node_Id) return Node_Id is
2377 pragma Assert (False
2378 or else NT (N).Nkind = N_Single_Task_Declaration
2379 or else NT (N).Nkind = N_Task_Type_Declaration);
2381 end Task_Definition;
2383 function Then_Actions
2384 (N : Node_Id) return List_Id is
2386 pragma Assert (False
2387 or else NT (N).Nkind = N_Conditional_Expression);
2391 function Then_Statements
2392 (N : Node_Id) return List_Id is
2394 pragma Assert (False
2395 or else NT (N).Nkind = N_Elsif_Part
2396 or else NT (N).Nkind = N_If_Statement);
2398 end Then_Statements;
2400 function Treat_Fixed_As_Integer
2401 (N : Node_Id) return Boolean is
2403 pragma Assert (False
2404 or else NT (N).Nkind = N_Op_Divide
2405 or else NT (N).Nkind = N_Op_Mod
2406 or else NT (N).Nkind = N_Op_Multiply
2407 or else NT (N).Nkind = N_Op_Rem);
2409 end Treat_Fixed_As_Integer;
2411 function Triggering_Alternative
2412 (N : Node_Id) return Node_Id is
2414 pragma Assert (False
2415 or else NT (N).Nkind = N_Asynchronous_Select);
2417 end Triggering_Alternative;
2419 function Triggering_Statement
2420 (N : Node_Id) return Node_Id is
2422 pragma Assert (False
2423 or else NT (N).Nkind = N_Triggering_Alternative);
2425 end Triggering_Statement;
2428 (N : Node_Id) return Elist_Id is
2430 pragma Assert (False
2431 or else NT (N).Nkind = N_Freeze_Entity);
2435 function Type_Definition
2436 (N : Node_Id) return Node_Id is
2438 pragma Assert (False
2439 or else NT (N).Nkind = N_Full_Type_Declaration);
2441 end Type_Definition;
2444 (N : Node_Id) return Node_Id is
2446 pragma Assert (False
2447 or else NT (N).Nkind = N_Compilation_Unit);
2451 function Unknown_Discriminants_Present
2452 (N : Node_Id) return Boolean is
2454 pragma Assert (False
2455 or else NT (N).Nkind = N_Formal_Type_Declaration
2456 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2457 or else NT (N).Nkind = N_Private_Extension_Declaration
2458 or else NT (N).Nkind = N_Private_Type_Declaration);
2460 end Unknown_Discriminants_Present;
2462 function Unreferenced_In_Spec
2463 (N : Node_Id) return Boolean is
2465 pragma Assert (False
2466 or else NT (N).Nkind = N_With_Clause);
2468 end Unreferenced_In_Spec;
2470 function Variant_Part
2471 (N : Node_Id) return Node_Id is
2473 pragma Assert (False
2474 or else NT (N).Nkind = N_Component_List);
2479 (N : Node_Id) return List_Id is
2481 pragma Assert (False
2482 or else NT (N).Nkind = N_Variant_Part);
2486 function Visible_Declarations
2487 (N : Node_Id) return List_Id is
2489 pragma Assert (False
2490 or else NT (N).Nkind = N_Package_Specification
2491 or else NT (N).Nkind = N_Protected_Definition
2492 or else NT (N).Nkind = N_Task_Definition);
2494 end Visible_Declarations;
2496 function Was_Originally_Stub
2497 (N : Node_Id) return Boolean is
2499 pragma Assert (False
2500 or else NT (N).Nkind = N_Package_Body
2501 or else NT (N).Nkind = N_Protected_Body
2502 or else NT (N).Nkind = N_Subprogram_Body
2503 or else NT (N).Nkind = N_Task_Body);
2505 end Was_Originally_Stub;
2507 function Zero_Cost_Handling
2508 (N : Node_Id) return Boolean is
2510 pragma Assert (False
2511 or else NT (N).Nkind = N_Exception_Handler
2512 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2514 end Zero_Cost_Handling;
2516 --------------------------
2517 -- Field Set Procedures --
2518 --------------------------
2520 procedure Set_ABE_Is_Certain
2521 (N : Node_Id; Val : Boolean := True) is
2523 pragma Assert (False
2524 or else NT (N).Nkind = N_Formal_Package_Declaration
2525 or else NT (N).Nkind = N_Function_Call
2526 or else NT (N).Nkind = N_Function_Instantiation
2527 or else NT (N).Nkind = N_Package_Instantiation
2528 or else NT (N).Nkind = N_Procedure_Call_Statement
2529 or else NT (N).Nkind = N_Procedure_Instantiation);
2530 Set_Flag18 (N, Val);
2531 end Set_ABE_Is_Certain;
2533 procedure Set_Abort_Present
2534 (N : Node_Id; Val : Boolean := True) is
2536 pragma Assert (False
2537 or else NT (N).Nkind = N_Requeue_Statement);
2538 Set_Flag15 (N, Val);
2539 end Set_Abort_Present;
2541 procedure Set_Abortable_Part
2542 (N : Node_Id; Val : Node_Id) is
2544 pragma Assert (False
2545 or else NT (N).Nkind = N_Asynchronous_Select);
2546 Set_Node2_With_Parent (N, Val);
2547 end Set_Abortable_Part;
2549 procedure Set_Abstract_Present
2550 (N : Node_Id; Val : Boolean := True) is
2552 pragma Assert (False
2553 or else NT (N).Nkind = N_Derived_Type_Definition
2554 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2555 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2556 or else NT (N).Nkind = N_Private_Extension_Declaration
2557 or else NT (N).Nkind = N_Private_Type_Declaration
2558 or else NT (N).Nkind = N_Record_Definition);
2560 end Set_Abstract_Present;
2562 procedure Set_Accept_Handler_Records
2563 (N : Node_Id; Val : List_Id) is
2565 pragma Assert (False
2566 or else NT (N).Nkind = N_Accept_Alternative);
2567 Set_List5 (N, Val); -- semantic field, no parent set
2568 end Set_Accept_Handler_Records;
2570 procedure Set_Accept_Statement
2571 (N : Node_Id; Val : Node_Id) is
2573 pragma Assert (False
2574 or else NT (N).Nkind = N_Accept_Alternative);
2575 Set_Node2_With_Parent (N, Val);
2576 end Set_Accept_Statement;
2578 procedure Set_Access_Definition
2579 (N : Node_Id; Val : Node_Id) is
2581 pragma Assert (False
2582 or else NT (N).Nkind = N_Component_Definition
2583 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2584 Set_Node3_With_Parent (N, Val);
2585 end Set_Access_Definition;
2587 procedure Set_Access_Types_To_Process
2588 (N : Node_Id; Val : Elist_Id) is
2590 pragma Assert (False
2591 or else NT (N).Nkind = N_Freeze_Entity);
2592 Set_Elist2 (N, Val); -- semantic field, no parent set
2593 end Set_Access_Types_To_Process;
2595 procedure Set_Actions
2596 (N : Node_Id; Val : List_Id) is
2598 pragma Assert (False
2599 or else NT (N).Nkind = N_And_Then
2600 or else NT (N).Nkind = N_Compilation_Unit_Aux
2601 or else NT (N).Nkind = N_Freeze_Entity
2602 or else NT (N).Nkind = N_Or_Else);
2603 Set_List1_With_Parent (N, Val);
2606 procedure Set_Activation_Chain_Entity
2607 (N : Node_Id; Val : Node_Id) is
2609 pragma Assert (False
2610 or else NT (N).Nkind = N_Block_Statement
2611 or else NT (N).Nkind = N_Entry_Body
2612 or else NT (N).Nkind = N_Generic_Package_Declaration
2613 or else NT (N).Nkind = N_Package_Declaration
2614 or else NT (N).Nkind = N_Subprogram_Body
2615 or else NT (N).Nkind = N_Task_Body);
2616 Set_Node3 (N, Val); -- semantic field, no parent set
2617 end Set_Activation_Chain_Entity;
2619 procedure Set_Acts_As_Spec
2620 (N : Node_Id; Val : Boolean := True) is
2622 pragma Assert (False
2623 or else NT (N).Nkind = N_Compilation_Unit
2624 or else NT (N).Nkind = N_Subprogram_Body);
2626 end Set_Acts_As_Spec;
2628 procedure Set_Aggregate_Bounds
2629 (N : Node_Id; Val : Node_Id) is
2631 pragma Assert (False
2632 or else NT (N).Nkind = N_Aggregate);
2633 Set_Node3 (N, Val); -- semantic field, no parent set
2634 end Set_Aggregate_Bounds;
2636 procedure Set_Aliased_Present
2637 (N : Node_Id; Val : Boolean := True) is
2639 pragma Assert (False
2640 or else NT (N).Nkind = N_Component_Definition
2641 or else NT (N).Nkind = N_Object_Declaration);
2643 end Set_Aliased_Present;
2645 procedure Set_All_Others
2646 (N : Node_Id; Val : Boolean := True) is
2648 pragma Assert (False
2649 or else NT (N).Nkind = N_Others_Choice);
2650 Set_Flag11 (N, Val);
2653 procedure Set_All_Present
2654 (N : Node_Id; Val : Boolean := True) is
2656 pragma Assert (False
2657 or else NT (N).Nkind = N_Access_To_Object_Definition);
2658 Set_Flag15 (N, Val);
2659 end Set_All_Present;
2661 procedure Set_Alternatives
2662 (N : Node_Id; Val : List_Id) is
2664 pragma Assert (False
2665 or else NT (N).Nkind = N_Case_Statement);
2666 Set_List4_With_Parent (N, Val);
2667 end Set_Alternatives;
2669 procedure Set_Ancestor_Part
2670 (N : Node_Id; Val : Node_Id) is
2672 pragma Assert (False
2673 or else NT (N).Nkind = N_Extension_Aggregate);
2674 Set_Node3_With_Parent (N, Val);
2675 end Set_Ancestor_Part;
2677 procedure Set_Array_Aggregate
2678 (N : Node_Id; Val : Node_Id) is
2680 pragma Assert (False
2681 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2682 Set_Node3_With_Parent (N, Val);
2683 end Set_Array_Aggregate;
2685 procedure Set_Assignment_OK
2686 (N : Node_Id; Val : Boolean := True) is
2688 pragma Assert (False
2689 or else NT (N).Nkind = N_Object_Declaration
2690 or else NT (N).Nkind in N_Subexpr);
2691 Set_Flag15 (N, Val);
2692 end Set_Assignment_OK;
2694 procedure Set_Associated_Node
2695 (N : Node_Id; Val : Node_Id) is
2697 pragma Assert (False
2698 or else NT (N).Nkind in N_Has_Entity
2699 or else NT (N).Nkind = N_Aggregate
2700 or else NT (N).Nkind = N_Extension_Aggregate
2701 or else NT (N).Nkind = N_Selected_Component);
2702 Set_Node4 (N, Val); -- semantic field, no parent set
2703 end Set_Associated_Node;
2705 procedure Set_At_End_Proc
2706 (N : Node_Id; Val : Node_Id) is
2708 pragma Assert (False
2709 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2711 end Set_At_End_Proc;
2713 procedure Set_Attribute_Name
2714 (N : Node_Id; Val : Name_Id) is
2716 pragma Assert (False
2717 or else NT (N).Nkind = N_Attribute_Reference);
2719 end Set_Attribute_Name;
2721 procedure Set_Aux_Decls_Node
2722 (N : Node_Id; Val : Node_Id) is
2724 pragma Assert (False
2725 or else NT (N).Nkind = N_Compilation_Unit);
2726 Set_Node5_With_Parent (N, Val);
2727 end Set_Aux_Decls_Node;
2729 procedure Set_Backwards_OK
2730 (N : Node_Id; Val : Boolean := True) is
2732 pragma Assert (False
2733 or else NT (N).Nkind = N_Assignment_Statement);
2735 end Set_Backwards_OK;
2737 procedure Set_Bad_Is_Detected
2738 (N : Node_Id; Val : Boolean := True) is
2740 pragma Assert (False
2741 or else NT (N).Nkind = N_Subprogram_Body);
2742 Set_Flag15 (N, Val);
2743 end Set_Bad_Is_Detected;
2745 procedure Set_Body_Required
2746 (N : Node_Id; Val : Boolean := True) is
2748 pragma Assert (False
2749 or else NT (N).Nkind = N_Compilation_Unit);
2750 Set_Flag13 (N, Val);
2751 end Set_Body_Required;
2753 procedure Set_Body_To_Inline
2754 (N : Node_Id; Val : Node_Id) is
2756 pragma Assert (False
2757 or else NT (N).Nkind = N_Subprogram_Declaration);
2759 end Set_Body_To_Inline;
2761 procedure Set_Box_Present
2762 (N : Node_Id; Val : Boolean := True) is
2764 pragma Assert (False
2765 or else NT (N).Nkind = N_Component_Association
2766 or else NT (N).Nkind = N_Formal_Package_Declaration
2767 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2768 Set_Flag15 (N, Val);
2769 end Set_Box_Present;
2771 procedure Set_By_Ref
2772 (N : Node_Id; Val : Boolean := True) is
2774 pragma Assert (False
2775 or else NT (N).Nkind = N_Return_Statement);
2779 procedure Set_Char_Literal_Value
2780 (N : Node_Id; Val : Char_Code) is
2782 pragma Assert (False
2783 or else NT (N).Nkind = N_Character_Literal);
2784 Set_Char_Code2 (N, Val);
2785 end Set_Char_Literal_Value;
2788 (N : Node_Id; Val : Name_Id) is
2790 pragma Assert (False
2791 or else NT (N).Nkind in N_Has_Chars);
2795 procedure Set_Check_Address_Alignment
2796 (N : Node_Id; Val : Boolean := True) is
2798 pragma Assert (False
2799 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2800 Set_Flag11 (N, Val);
2801 end Set_Check_Address_Alignment;
2803 procedure Set_Choice_Parameter
2804 (N : Node_Id; Val : Node_Id) is
2806 pragma Assert (False
2807 or else NT (N).Nkind = N_Exception_Handler);
2808 Set_Node2_With_Parent (N, Val);
2809 end Set_Choice_Parameter;
2811 procedure Set_Choices
2812 (N : Node_Id; Val : List_Id) is
2814 pragma Assert (False
2815 or else NT (N).Nkind = N_Component_Association);
2816 Set_List1_With_Parent (N, Val);
2819 procedure Set_Compile_Time_Known_Aggregate
2820 (N : Node_Id; Val : Boolean := True) is
2822 pragma Assert (False
2823 or else NT (N).Nkind = N_Aggregate);
2824 Set_Flag18 (N, Val);
2825 end Set_Compile_Time_Known_Aggregate;
2827 procedure Set_Component_Associations
2828 (N : Node_Id; Val : List_Id) is
2830 pragma Assert (False
2831 or else NT (N).Nkind = N_Aggregate
2832 or else NT (N).Nkind = N_Extension_Aggregate);
2833 Set_List2_With_Parent (N, Val);
2834 end Set_Component_Associations;
2836 procedure Set_Component_Clauses
2837 (N : Node_Id; Val : List_Id) is
2839 pragma Assert (False
2840 or else NT (N).Nkind = N_Record_Representation_Clause);
2841 Set_List3_With_Parent (N, Val);
2842 end Set_Component_Clauses;
2844 procedure Set_Component_Definition
2845 (N : Node_Id; Val : Node_Id) is
2847 pragma Assert (False
2848 or else NT (N).Nkind = N_Component_Declaration
2849 or else NT (N).Nkind = N_Constrained_Array_Definition
2850 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2851 Set_Node4_With_Parent (N, Val);
2852 end Set_Component_Definition;
2854 procedure Set_Component_Items
2855 (N : Node_Id; Val : List_Id) is
2857 pragma Assert (False
2858 or else NT (N).Nkind = N_Component_List);
2859 Set_List3_With_Parent (N, Val);
2860 end Set_Component_Items;
2862 procedure Set_Component_List
2863 (N : Node_Id; Val : Node_Id) is
2865 pragma Assert (False
2866 or else NT (N).Nkind = N_Record_Definition
2867 or else NT (N).Nkind = N_Variant);
2868 Set_Node1_With_Parent (N, Val);
2869 end Set_Component_List;
2871 procedure Set_Component_Name
2872 (N : Node_Id; Val : Node_Id) is
2874 pragma Assert (False
2875 or else NT (N).Nkind = N_Component_Clause);
2876 Set_Node1_With_Parent (N, Val);
2877 end Set_Component_Name;
2879 procedure Set_Condition
2880 (N : Node_Id; Val : Node_Id) is
2882 pragma Assert (False
2883 or else NT (N).Nkind = N_Accept_Alternative
2884 or else NT (N).Nkind = N_Delay_Alternative
2885 or else NT (N).Nkind = N_Elsif_Part
2886 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2887 or else NT (N).Nkind = N_Exit_Statement
2888 or else NT (N).Nkind = N_If_Statement
2889 or else NT (N).Nkind = N_Iteration_Scheme
2890 or else NT (N).Nkind = N_Raise_Constraint_Error
2891 or else NT (N).Nkind = N_Raise_Program_Error
2892 or else NT (N).Nkind = N_Raise_Storage_Error
2893 or else NT (N).Nkind = N_Terminate_Alternative);
2894 Set_Node1_With_Parent (N, Val);
2897 procedure Set_Condition_Actions
2898 (N : Node_Id; Val : List_Id) is
2900 pragma Assert (False
2901 or else NT (N).Nkind = N_Elsif_Part
2902 or else NT (N).Nkind = N_Iteration_Scheme);
2903 Set_List3 (N, Val); -- semantic field, no parent set
2904 end Set_Condition_Actions;
2906 procedure Set_Config_Pragmas
2907 (N : Node_Id; Val : List_Id) is
2909 pragma Assert (False
2910 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2911 Set_List4_With_Parent (N, Val);
2912 end Set_Config_Pragmas;
2914 procedure Set_Constant_Present
2915 (N : Node_Id; Val : Boolean := True) is
2917 pragma Assert (False
2918 or else NT (N).Nkind = N_Access_To_Object_Definition
2919 or else NT (N).Nkind = N_Object_Declaration);
2920 Set_Flag17 (N, Val);
2921 end Set_Constant_Present;
2923 procedure Set_Constraint
2924 (N : Node_Id; Val : Node_Id) is
2926 pragma Assert (False
2927 or else NT (N).Nkind = N_Subtype_Indication);
2928 Set_Node3_With_Parent (N, Val);
2931 procedure Set_Constraints
2932 (N : Node_Id; Val : List_Id) is
2934 pragma Assert (False
2935 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2936 Set_List1_With_Parent (N, Val);
2937 end Set_Constraints;
2939 procedure Set_Context_Installed
2940 (N : Node_Id; Val : Boolean := True) is
2942 pragma Assert (False
2943 or else NT (N).Nkind = N_With_Clause);
2944 Set_Flag13 (N, Val);
2945 end Set_Context_Installed;
2947 procedure Set_Context_Items
2948 (N : Node_Id; Val : List_Id) is
2950 pragma Assert (False
2951 or else NT (N).Nkind = N_Compilation_Unit);
2952 Set_List1_With_Parent (N, Val);
2953 end Set_Context_Items;
2955 procedure Set_Controlling_Argument
2956 (N : Node_Id; Val : Node_Id) is
2958 pragma Assert (False
2959 or else NT (N).Nkind = N_Function_Call
2960 or else NT (N).Nkind = N_Procedure_Call_Statement);
2961 Set_Node1 (N, Val); -- semantic field, no parent set
2962 end Set_Controlling_Argument;
2964 procedure Set_Conversion_OK
2965 (N : Node_Id; Val : Boolean := True) is
2967 pragma Assert (False
2968 or else NT (N).Nkind = N_Type_Conversion);
2969 Set_Flag14 (N, Val);
2970 end Set_Conversion_OK;
2972 procedure Set_Corresponding_Body
2973 (N : Node_Id; Val : Node_Id) is
2975 pragma Assert (False
2976 or else NT (N).Nkind = N_Entry_Declaration
2977 or else NT (N).Nkind = N_Generic_Package_Declaration
2978 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2979 or else NT (N).Nkind = N_Package_Body_Stub
2980 or else NT (N).Nkind = N_Package_Declaration
2981 or else NT (N).Nkind = N_Protected_Body_Stub
2982 or else NT (N).Nkind = N_Protected_Type_Declaration
2983 or else NT (N).Nkind = N_Subprogram_Body_Stub
2984 or else NT (N).Nkind = N_Subprogram_Declaration
2985 or else NT (N).Nkind = N_Task_Body_Stub
2986 or else NT (N).Nkind = N_Task_Type_Declaration);
2987 Set_Node5 (N, Val); -- semantic field, no parent set
2988 end Set_Corresponding_Body;
2990 procedure Set_Corresponding_Generic_Association
2991 (N : Node_Id; Val : Node_Id) is
2993 pragma Assert (False
2994 or else NT (N).Nkind = N_Object_Declaration
2995 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2996 Set_Node5 (N, Val); -- semantic field, no parent set
2997 end Set_Corresponding_Generic_Association;
2998 procedure Set_Corresponding_Integer_Value
2999 (N : Node_Id; Val : Uint) is
3001 pragma Assert (False
3002 or else NT (N).Nkind = N_Real_Literal);
3003 Set_Uint4 (N, Val); -- semantic field, no parent set
3004 end Set_Corresponding_Integer_Value;
3006 procedure Set_Corresponding_Spec
3007 (N : Node_Id; Val : Node_Id) is
3009 pragma Assert (False
3010 or else NT (N).Nkind = N_Package_Body
3011 or else NT (N).Nkind = N_Protected_Body
3012 or else NT (N).Nkind = N_Subprogram_Body
3013 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
3014 or else NT (N).Nkind = N_Task_Body
3015 or else NT (N).Nkind = N_With_Clause);
3016 Set_Node5 (N, Val); -- semantic field, no parent set
3017 end Set_Corresponding_Spec;
3019 procedure Set_Corresponding_Stub
3020 (N : Node_Id; Val : Node_Id) is
3022 pragma Assert (False
3023 or else NT (N).Nkind = N_Subunit);
3025 end Set_Corresponding_Stub;
3027 procedure Set_Dcheck_Function
3028 (N : Node_Id; Val : Entity_Id) is
3030 pragma Assert (False
3031 or else NT (N).Nkind = N_Variant);
3032 Set_Node5 (N, Val); -- semantic field, no parent set
3033 end Set_Dcheck_Function;
3035 procedure Set_Debug_Statement
3036 (N : Node_Id; Val : Node_Id) is
3038 pragma Assert (False
3039 or else NT (N).Nkind = N_Pragma);
3040 Set_Node3_With_Parent (N, Val);
3041 end Set_Debug_Statement;
3043 procedure Set_Declarations
3044 (N : Node_Id; Val : List_Id) is
3046 pragma Assert (False
3047 or else NT (N).Nkind = N_Accept_Statement
3048 or else NT (N).Nkind = N_Block_Statement
3049 or else NT (N).Nkind = N_Compilation_Unit_Aux
3050 or else NT (N).Nkind = N_Entry_Body
3051 or else NT (N).Nkind = N_Package_Body
3052 or else NT (N).Nkind = N_Protected_Body
3053 or else NT (N).Nkind = N_Subprogram_Body
3054 or else NT (N).Nkind = N_Task_Body);
3055 Set_List2_With_Parent (N, Val);
3056 end Set_Declarations;
3058 procedure Set_Default_Expression
3059 (N : Node_Id; Val : Node_Id) is
3061 pragma Assert (False
3062 or else NT (N).Nkind = N_Parameter_Specification);
3063 Set_Node5 (N, Val); -- semantic field, no parent set
3064 end Set_Default_Expression;
3066 procedure Set_Default_Name
3067 (N : Node_Id; Val : Node_Id) is
3069 pragma Assert (False
3070 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3071 Set_Node2_With_Parent (N, Val);
3072 end Set_Default_Name;
3074 procedure Set_Defining_Identifier
3075 (N : Node_Id; Val : Entity_Id) is
3077 pragma Assert (False
3078 or else NT (N).Nkind = N_Component_Declaration
3079 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3080 or else NT (N).Nkind = N_Discriminant_Specification
3081 or else NT (N).Nkind = N_Entry_Body
3082 or else NT (N).Nkind = N_Entry_Declaration
3083 or else NT (N).Nkind = N_Entry_Index_Specification
3084 or else NT (N).Nkind = N_Exception_Declaration
3085 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3086 or else NT (N).Nkind = N_Formal_Object_Declaration
3087 or else NT (N).Nkind = N_Formal_Package_Declaration
3088 or else NT (N).Nkind = N_Formal_Type_Declaration
3089 or else NT (N).Nkind = N_Full_Type_Declaration
3090 or else NT (N).Nkind = N_Implicit_Label_Declaration
3091 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3092 or else NT (N).Nkind = N_Loop_Parameter_Specification
3093 or else NT (N).Nkind = N_Number_Declaration
3094 or else NT (N).Nkind = N_Object_Declaration
3095 or else NT (N).Nkind = N_Object_Renaming_Declaration
3096 or else NT (N).Nkind = N_Package_Body_Stub
3097 or else NT (N).Nkind = N_Parameter_Specification
3098 or else NT (N).Nkind = N_Private_Extension_Declaration
3099 or else NT (N).Nkind = N_Private_Type_Declaration
3100 or else NT (N).Nkind = N_Protected_Body
3101 or else NT (N).Nkind = N_Protected_Body_Stub
3102 or else NT (N).Nkind = N_Protected_Type_Declaration
3103 or else NT (N).Nkind = N_Single_Protected_Declaration
3104 or else NT (N).Nkind = N_Single_Task_Declaration
3105 or else NT (N).Nkind = N_Subtype_Declaration
3106 or else NT (N).Nkind = N_Task_Body
3107 or else NT (N).Nkind = N_Task_Body_Stub
3108 or else NT (N).Nkind = N_Task_Type_Declaration);
3109 Set_Node1_With_Parent (N, Val);
3110 end Set_Defining_Identifier;
3112 procedure Set_Defining_Unit_Name
3113 (N : Node_Id; Val : Node_Id) is
3115 pragma Assert (False
3116 or else NT (N).Nkind = N_Function_Instantiation
3117 or else NT (N).Nkind = N_Function_Specification
3118 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3119 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3120 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3121 or else NT (N).Nkind = N_Package_Body
3122 or else NT (N).Nkind = N_Package_Instantiation
3123 or else NT (N).Nkind = N_Package_Renaming_Declaration
3124 or else NT (N).Nkind = N_Package_Specification
3125 or else NT (N).Nkind = N_Procedure_Instantiation
3126 or else NT (N).Nkind = N_Procedure_Specification);
3127 Set_Node1_With_Parent (N, Val);
3128 end Set_Defining_Unit_Name;
3130 procedure Set_Delay_Alternative
3131 (N : Node_Id; Val : Node_Id) is
3133 pragma Assert (False
3134 or else NT (N).Nkind = N_Timed_Entry_Call);
3135 Set_Node4_With_Parent (N, Val);
3136 end Set_Delay_Alternative;
3138 procedure Set_Delay_Finalize_Attach
3139 (N : Node_Id; Val : Boolean := True) is
3141 pragma Assert (False
3142 or else NT (N).Nkind = N_Object_Declaration);
3143 Set_Flag14 (N, Val);
3144 end Set_Delay_Finalize_Attach;
3146 procedure Set_Delay_Statement
3147 (N : Node_Id; Val : Node_Id) is
3149 pragma Assert (False
3150 or else NT (N).Nkind = N_Delay_Alternative);
3151 Set_Node2_With_Parent (N, Val);
3152 end Set_Delay_Statement;
3154 procedure Set_Delta_Expression
3155 (N : Node_Id; Val : Node_Id) is
3157 pragma Assert (False
3158 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3159 or else NT (N).Nkind = N_Delta_Constraint
3160 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3161 Set_Node3_With_Parent (N, Val);
3162 end Set_Delta_Expression;
3164 procedure Set_Digits_Expression
3165 (N : Node_Id; Val : Node_Id) is
3167 pragma Assert (False
3168 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3169 or else NT (N).Nkind = N_Digits_Constraint
3170 or else NT (N).Nkind = N_Floating_Point_Definition);
3171 Set_Node2_With_Parent (N, Val);
3172 end Set_Digits_Expression;
3174 procedure Set_Discr_Check_Funcs_Built
3175 (N : Node_Id; Val : Boolean := True) is
3177 pragma Assert (False
3178 or else NT (N).Nkind = N_Full_Type_Declaration);
3179 Set_Flag11 (N, Val);
3180 end Set_Discr_Check_Funcs_Built;
3182 procedure Set_Discrete_Choices
3183 (N : Node_Id; Val : List_Id) is
3185 pragma Assert (False
3186 or else NT (N).Nkind = N_Case_Statement_Alternative
3187 or else NT (N).Nkind = N_Variant);
3188 Set_List4_With_Parent (N, Val);
3189 end Set_Discrete_Choices;
3191 procedure Set_Discrete_Range
3192 (N : Node_Id; Val : Node_Id) is
3194 pragma Assert (False
3195 or else NT (N).Nkind = N_Slice);
3196 Set_Node4_With_Parent (N, Val);
3197 end Set_Discrete_Range;
3199 procedure Set_Discrete_Subtype_Definition
3200 (N : Node_Id; Val : Node_Id) is
3202 pragma Assert (False
3203 or else NT (N).Nkind = N_Entry_Declaration
3204 or else NT (N).Nkind = N_Entry_Index_Specification
3205 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3206 Set_Node4_With_Parent (N, Val);
3207 end Set_Discrete_Subtype_Definition;
3209 procedure Set_Discrete_Subtype_Definitions
3210 (N : Node_Id; Val : List_Id) is
3212 pragma Assert (False
3213 or else NT (N).Nkind = N_Constrained_Array_Definition);
3214 Set_List2_With_Parent (N, Val);
3215 end Set_Discrete_Subtype_Definitions;
3217 procedure Set_Discriminant_Specifications
3218 (N : Node_Id; Val : List_Id) is
3220 pragma Assert (False
3221 or else NT (N).Nkind = N_Formal_Type_Declaration
3222 or else NT (N).Nkind = N_Full_Type_Declaration
3223 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3224 or else NT (N).Nkind = N_Private_Extension_Declaration
3225 or else NT (N).Nkind = N_Private_Type_Declaration
3226 or else NT (N).Nkind = N_Protected_Type_Declaration
3227 or else NT (N).Nkind = N_Task_Type_Declaration);
3228 Set_List4_With_Parent (N, Val);
3229 end Set_Discriminant_Specifications;
3231 procedure Set_Discriminant_Type
3232 (N : Node_Id; Val : Node_Id) is
3234 pragma Assert (False
3235 or else NT (N).Nkind = N_Discriminant_Specification);
3236 Set_Node5_With_Parent (N, Val);
3237 end Set_Discriminant_Type;
3239 procedure Set_Do_Accessibility_Check
3240 (N : Node_Id; Val : Boolean := True) is
3242 pragma Assert (False
3243 or else NT (N).Nkind = N_Parameter_Specification);
3244 Set_Flag13 (N, Val);
3245 end Set_Do_Accessibility_Check;
3247 procedure Set_Do_Discriminant_Check
3248 (N : Node_Id; Val : Boolean := True) is
3250 pragma Assert (False
3251 or else NT (N).Nkind = N_Selected_Component);
3252 Set_Flag13 (N, Val);
3253 end Set_Do_Discriminant_Check;
3255 procedure Set_Do_Division_Check
3256 (N : Node_Id; Val : Boolean := True) is
3258 pragma Assert (False
3259 or else NT (N).Nkind = N_Op_Divide
3260 or else NT (N).Nkind = N_Op_Mod
3261 or else NT (N).Nkind = N_Op_Rem);
3262 Set_Flag13 (N, Val);
3263 end Set_Do_Division_Check;
3265 procedure Set_Do_Length_Check
3266 (N : Node_Id; Val : Boolean := True) is
3268 pragma Assert (False
3269 or else NT (N).Nkind = N_Assignment_Statement
3270 or else NT (N).Nkind = N_Op_And
3271 or else NT (N).Nkind = N_Op_Or
3272 or else NT (N).Nkind = N_Op_Xor
3273 or else NT (N).Nkind = N_Type_Conversion);
3275 end Set_Do_Length_Check;
3277 procedure Set_Do_Overflow_Check
3278 (N : Node_Id; Val : Boolean := True) is
3280 pragma Assert (False
3281 or else NT (N).Nkind in N_Op
3282 or else NT (N).Nkind = N_Attribute_Reference
3283 or else NT (N).Nkind = N_Type_Conversion);
3284 Set_Flag17 (N, Val);
3285 end Set_Do_Overflow_Check;
3287 procedure Set_Do_Range_Check
3288 (N : Node_Id; Val : Boolean := True) is
3290 pragma Assert (False
3291 or else NT (N).Nkind in N_Subexpr);
3293 end Set_Do_Range_Check;
3295 procedure Set_Do_Storage_Check
3296 (N : Node_Id; Val : Boolean := True) is
3298 pragma Assert (False
3299 or else NT (N).Nkind = N_Allocator
3300 or else NT (N).Nkind = N_Subprogram_Body);
3301 Set_Flag17 (N, Val);
3302 end Set_Do_Storage_Check;
3304 procedure Set_Do_Tag_Check
3305 (N : Node_Id; Val : Boolean := True) is
3307 pragma Assert (False
3308 or else NT (N).Nkind = N_Assignment_Statement
3309 or else NT (N).Nkind = N_Function_Call
3310 or else NT (N).Nkind = N_Procedure_Call_Statement
3311 or else NT (N).Nkind = N_Return_Statement
3312 or else NT (N).Nkind = N_Type_Conversion);
3313 Set_Flag13 (N, Val);
3314 end Set_Do_Tag_Check;
3316 procedure Set_Elaborate_All_Present
3317 (N : Node_Id; Val : Boolean := True) is
3319 pragma Assert (False
3320 or else NT (N).Nkind = N_With_Clause);
3321 Set_Flag14 (N, Val);
3322 end Set_Elaborate_All_Present;
3324 procedure Set_Elaborate_Present
3325 (N : Node_Id; Val : Boolean := True) is
3327 pragma Assert (False
3328 or else NT (N).Nkind = N_With_Clause);
3330 end Set_Elaborate_Present;
3332 procedure Set_Elaboration_Boolean
3333 (N : Node_Id; Val : Node_Id) is
3335 pragma Assert (False
3336 or else NT (N).Nkind = N_Function_Specification
3337 or else NT (N).Nkind = N_Procedure_Specification);
3339 end Set_Elaboration_Boolean;
3341 procedure Set_Else_Actions
3342 (N : Node_Id; Val : List_Id) is
3344 pragma Assert (False
3345 or else NT (N).Nkind = N_Conditional_Expression);
3346 Set_List3 (N, Val); -- semantic field, no parent set
3347 end Set_Else_Actions;
3349 procedure Set_Else_Statements
3350 (N : Node_Id; Val : List_Id) is
3352 pragma Assert (False
3353 or else NT (N).Nkind = N_Conditional_Entry_Call
3354 or else NT (N).Nkind = N_If_Statement
3355 or else NT (N).Nkind = N_Selective_Accept);
3356 Set_List4_With_Parent (N, Val);
3357 end Set_Else_Statements;
3359 procedure Set_Elsif_Parts
3360 (N : Node_Id; Val : List_Id) is
3362 pragma Assert (False
3363 or else NT (N).Nkind = N_If_Statement);
3364 Set_List3_With_Parent (N, Val);
3365 end Set_Elsif_Parts;
3367 procedure Set_Enclosing_Variant
3368 (N : Node_Id; Val : Node_Id) is
3370 pragma Assert (False
3371 or else NT (N).Nkind = N_Variant);
3372 Set_Node2 (N, Val); -- semantic field, no parent set
3373 end Set_Enclosing_Variant;
3375 procedure Set_End_Label
3376 (N : Node_Id; Val : Node_Id) is
3378 pragma Assert (False
3379 or else NT (N).Nkind = N_Enumeration_Type_Definition
3380 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3381 or else NT (N).Nkind = N_Loop_Statement
3382 or else NT (N).Nkind = N_Package_Specification
3383 or else NT (N).Nkind = N_Protected_Body
3384 or else NT (N).Nkind = N_Protected_Definition
3385 or else NT (N).Nkind = N_Record_Definition
3386 or else NT (N).Nkind = N_Task_Definition);
3387 Set_Node4_With_Parent (N, Val);
3390 procedure Set_End_Span
3391 (N : Node_Id; Val : Uint) is
3393 pragma Assert (False
3394 or else NT (N).Nkind = N_Case_Statement
3395 or else NT (N).Nkind = N_If_Statement);
3399 procedure Set_Entity
3400 (N : Node_Id; Val : Node_Id) is
3402 pragma Assert (False
3403 or else NT (N).Nkind in N_Has_Entity
3404 or else NT (N).Nkind = N_Freeze_Entity);
3405 Set_Node4 (N, Val); -- semantic field, no parent set
3408 procedure Set_Entry_Body_Formal_Part
3409 (N : Node_Id; Val : Node_Id) is
3411 pragma Assert (False
3412 or else NT (N).Nkind = N_Entry_Body);
3413 Set_Node5_With_Parent (N, Val);
3414 end Set_Entry_Body_Formal_Part;
3416 procedure Set_Entry_Call_Alternative
3417 (N : Node_Id; Val : Node_Id) is
3419 pragma Assert (False
3420 or else NT (N).Nkind = N_Conditional_Entry_Call
3421 or else NT (N).Nkind = N_Timed_Entry_Call);
3422 Set_Node1_With_Parent (N, Val);
3423 end Set_Entry_Call_Alternative;
3425 procedure Set_Entry_Call_Statement
3426 (N : Node_Id; Val : Node_Id) is
3428 pragma Assert (False
3429 or else NT (N).Nkind = N_Entry_Call_Alternative);
3430 Set_Node1_With_Parent (N, Val);
3431 end Set_Entry_Call_Statement;
3433 procedure Set_Entry_Direct_Name
3434 (N : Node_Id; Val : Node_Id) is
3436 pragma Assert (False
3437 or else NT (N).Nkind = N_Accept_Statement);
3438 Set_Node1_With_Parent (N, Val);
3439 end Set_Entry_Direct_Name;
3441 procedure Set_Entry_Index
3442 (N : Node_Id; Val : Node_Id) is
3444 pragma Assert (False
3445 or else NT (N).Nkind = N_Accept_Statement);
3446 Set_Node5_With_Parent (N, Val);
3447 end Set_Entry_Index;
3449 procedure Set_Entry_Index_Specification
3450 (N : Node_Id; Val : Node_Id) is
3452 pragma Assert (False
3453 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3454 Set_Node4_With_Parent (N, Val);
3455 end Set_Entry_Index_Specification;
3458 (N : Node_Id; Val : Node_Id) is
3460 pragma Assert (False
3461 or else NT (N).Nkind in N_Has_Etype);
3462 Set_Node5 (N, Val); -- semantic field, no parent set
3465 procedure Set_Exception_Choices
3466 (N : Node_Id; Val : List_Id) is
3468 pragma Assert (False
3469 or else NT (N).Nkind = N_Exception_Handler);
3470 Set_List4_With_Parent (N, Val);
3471 end Set_Exception_Choices;
3473 procedure Set_Exception_Handlers
3474 (N : Node_Id; Val : List_Id) is
3476 pragma Assert (False
3477 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3478 Set_List5_With_Parent (N, Val);
3479 end Set_Exception_Handlers;
3481 procedure Set_Exception_Junk
3482 (N : Node_Id; Val : Boolean := True) is
3484 pragma Assert (False
3485 or else NT (N).Nkind = N_Goto_Statement
3486 or else NT (N).Nkind = N_Label
3487 or else NT (N).Nkind = N_Object_Declaration
3488 or else NT (N).Nkind = N_Subtype_Declaration);
3489 Set_Flag11 (N, Val);
3490 end Set_Exception_Junk;
3492 procedure Set_Expansion_Delayed
3493 (N : Node_Id; Val : Boolean := True) is
3495 pragma Assert (False
3496 or else NT (N).Nkind = N_Aggregate
3497 or else NT (N).Nkind = N_Extension_Aggregate);
3498 Set_Flag11 (N, Val);
3499 end Set_Expansion_Delayed;
3501 procedure Set_Explicit_Actual_Parameter
3502 (N : Node_Id; Val : Node_Id) is
3504 pragma Assert (False
3505 or else NT (N).Nkind = N_Parameter_Association);
3506 Set_Node3_With_Parent (N, Val);
3507 end Set_Explicit_Actual_Parameter;
3509 procedure Set_Explicit_Generic_Actual_Parameter
3510 (N : Node_Id; Val : Node_Id) is
3512 pragma Assert (False
3513 or else NT (N).Nkind = N_Generic_Association);
3514 Set_Node1_With_Parent (N, Val);
3515 end Set_Explicit_Generic_Actual_Parameter;
3517 procedure Set_Expression
3518 (N : Node_Id; Val : Node_Id) is
3520 pragma Assert (False
3521 or else NT (N).Nkind = N_Allocator
3522 or else NT (N).Nkind = N_Assignment_Statement
3523 or else NT (N).Nkind = N_At_Clause
3524 or else NT (N).Nkind = N_Attribute_Definition_Clause
3525 or else NT (N).Nkind = N_Case_Statement
3526 or else NT (N).Nkind = N_Code_Statement
3527 or else NT (N).Nkind = N_Component_Association
3528 or else NT (N).Nkind = N_Component_Declaration
3529 or else NT (N).Nkind = N_Delay_Relative_Statement
3530 or else NT (N).Nkind = N_Delay_Until_Statement
3531 or else NT (N).Nkind = N_Discriminant_Association
3532 or else NT (N).Nkind = N_Discriminant_Specification
3533 or else NT (N).Nkind = N_Exception_Declaration
3534 or else NT (N).Nkind = N_Formal_Object_Declaration
3535 or else NT (N).Nkind = N_Free_Statement
3536 or else NT (N).Nkind = N_Mod_Clause
3537 or else NT (N).Nkind = N_Modular_Type_Definition
3538 or else NT (N).Nkind = N_Number_Declaration
3539 or else NT (N).Nkind = N_Object_Declaration
3540 or else NT (N).Nkind = N_Parameter_Specification
3541 or else NT (N).Nkind = N_Pragma_Argument_Association
3542 or else NT (N).Nkind = N_Qualified_Expression
3543 or else NT (N).Nkind = N_Return_Statement
3544 or else NT (N).Nkind = N_Type_Conversion
3545 or else NT (N).Nkind = N_Unchecked_Expression
3546 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3547 Set_Node3_With_Parent (N, Val);
3550 procedure Set_Expressions
3551 (N : Node_Id; Val : List_Id) is
3553 pragma Assert (False
3554 or else NT (N).Nkind = N_Aggregate
3555 or else NT (N).Nkind = N_Attribute_Reference
3556 or else NT (N).Nkind = N_Conditional_Expression
3557 or else NT (N).Nkind = N_Extension_Aggregate
3558 or else NT (N).Nkind = N_Indexed_Component);
3559 Set_List1_With_Parent (N, Val);
3560 end Set_Expressions;
3562 procedure Set_First_Bit
3563 (N : Node_Id; Val : Node_Id) is
3565 pragma Assert (False
3566 or else NT (N).Nkind = N_Component_Clause);
3567 Set_Node3_With_Parent (N, Val);
3570 procedure Set_First_Inlined_Subprogram
3571 (N : Node_Id; Val : Entity_Id) is
3573 pragma Assert (False
3574 or else NT (N).Nkind = N_Compilation_Unit);
3575 Set_Node3 (N, Val); -- semantic field, no parent set
3576 end Set_First_Inlined_Subprogram;
3578 procedure Set_First_Name
3579 (N : Node_Id; Val : Boolean := True) is
3581 pragma Assert (False
3582 or else NT (N).Nkind = N_With_Clause);
3586 procedure Set_First_Named_Actual
3587 (N : Node_Id; Val : Node_Id) is
3589 pragma Assert (False
3590 or else NT (N).Nkind = N_Entry_Call_Statement
3591 or else NT (N).Nkind = N_Function_Call
3592 or else NT (N).Nkind = N_Procedure_Call_Statement);
3593 Set_Node4 (N, Val); -- semantic field, no parent set
3594 end Set_First_Named_Actual;
3596 procedure Set_First_Real_Statement
3597 (N : Node_Id; Val : Node_Id) is
3599 pragma Assert (False
3600 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3601 Set_Node2 (N, Val); -- semantic field, no parent set
3602 end Set_First_Real_Statement;
3604 procedure Set_First_Subtype_Link
3605 (N : Node_Id; Val : Entity_Id) is
3607 pragma Assert (False
3608 or else NT (N).Nkind = N_Freeze_Entity);
3609 Set_Node5 (N, Val); -- semantic field, no parent set
3610 end Set_First_Subtype_Link;
3612 procedure Set_Float_Truncate
3613 (N : Node_Id; Val : Boolean := True) is
3615 pragma Assert (False
3616 or else NT (N).Nkind = N_Type_Conversion);
3617 Set_Flag11 (N, Val);
3618 end Set_Float_Truncate;
3620 procedure Set_Formal_Type_Definition
3621 (N : Node_Id; Val : Node_Id) is
3623 pragma Assert (False
3624 or else NT (N).Nkind = N_Formal_Type_Declaration);
3625 Set_Node3_With_Parent (N, Val);
3626 end Set_Formal_Type_Definition;
3628 procedure Set_Forwards_OK
3629 (N : Node_Id; Val : Boolean := True) is
3631 pragma Assert (False
3632 or else NT (N).Nkind = N_Assignment_Statement);
3634 end Set_Forwards_OK;
3636 procedure Set_From_At_Mod
3637 (N : Node_Id; Val : Boolean := True) is
3639 pragma Assert (False
3640 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3642 end Set_From_At_Mod;
3644 procedure Set_Generic_Associations
3645 (N : Node_Id; Val : List_Id) is
3647 pragma Assert (False
3648 or else NT (N).Nkind = N_Formal_Package_Declaration
3649 or else NT (N).Nkind = N_Function_Instantiation
3650 or else NT (N).Nkind = N_Package_Instantiation
3651 or else NT (N).Nkind = N_Procedure_Instantiation);
3652 Set_List3_With_Parent (N, Val);
3653 end Set_Generic_Associations;
3655 procedure Set_Generic_Formal_Declarations
3656 (N : Node_Id; Val : List_Id) is
3658 pragma Assert (False
3659 or else NT (N).Nkind = N_Generic_Package_Declaration
3660 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3661 Set_List2_With_Parent (N, Val);
3662 end Set_Generic_Formal_Declarations;
3664 procedure Set_Generic_Parent
3665 (N : Node_Id; Val : Node_Id) is
3667 pragma Assert (False
3668 or else NT (N).Nkind = N_Function_Specification
3669 or else NT (N).Nkind = N_Package_Specification
3670 or else NT (N).Nkind = N_Procedure_Specification);
3672 end Set_Generic_Parent;
3674 procedure Set_Generic_Parent_Type
3675 (N : Node_Id; Val : Node_Id) is
3677 pragma Assert (False
3678 or else NT (N).Nkind = N_Subtype_Declaration);
3680 end Set_Generic_Parent_Type;
3682 procedure Set_Handled_Statement_Sequence
3683 (N : Node_Id; Val : Node_Id) is
3685 pragma Assert (False
3686 or else NT (N).Nkind = N_Accept_Statement
3687 or else NT (N).Nkind = N_Block_Statement
3688 or else NT (N).Nkind = N_Entry_Body
3689 or else NT (N).Nkind = N_Package_Body
3690 or else NT (N).Nkind = N_Subprogram_Body
3691 or else NT (N).Nkind = N_Task_Body);
3692 Set_Node4_With_Parent (N, Val);
3693 end Set_Handled_Statement_Sequence;
3695 procedure Set_Handler_List_Entry
3696 (N : Node_Id; Val : Node_Id) is
3698 pragma Assert (False
3699 or else NT (N).Nkind = N_Object_Declaration);
3701 end Set_Handler_List_Entry;
3703 procedure Set_Has_Created_Identifier
3704 (N : Node_Id; Val : Boolean := True) is
3706 pragma Assert (False
3707 or else NT (N).Nkind = N_Block_Statement
3708 or else NT (N).Nkind = N_Loop_Statement);
3709 Set_Flag15 (N, Val);
3710 end Set_Has_Created_Identifier;
3712 procedure Set_Has_Dynamic_Length_Check
3713 (N : Node_Id; Val : Boolean := True) is
3715 Set_Flag10 (N, Val);
3716 end Set_Has_Dynamic_Length_Check;
3718 procedure Set_Has_Dynamic_Range_Check
3719 (N : Node_Id; Val : Boolean := True) is
3721 Set_Flag12 (N, Val);
3722 end Set_Has_Dynamic_Range_Check;
3724 procedure Set_Has_No_Elaboration_Code
3725 (N : Node_Id; Val : Boolean := True) is
3727 pragma Assert (False
3728 or else NT (N).Nkind = N_Compilation_Unit);
3729 Set_Flag17 (N, Val);
3730 end Set_Has_No_Elaboration_Code;
3732 procedure Set_Has_Priority_Pragma
3733 (N : Node_Id; Val : Boolean := True) is
3735 pragma Assert (False
3736 or else NT (N).Nkind = N_Protected_Definition
3737 or else NT (N).Nkind = N_Subprogram_Body
3738 or else NT (N).Nkind = N_Task_Definition);
3740 end Set_Has_Priority_Pragma;
3742 procedure Set_Has_Private_View
3743 (N : Node_Id; Val : Boolean := True) is
3745 pragma Assert (False
3746 or else NT (N).Nkind in N_Op
3747 or else NT (N).Nkind = N_Character_Literal
3748 or else NT (N).Nkind = N_Expanded_Name
3749 or else NT (N).Nkind = N_Identifier
3750 or else NT (N).Nkind = N_Operator_Symbol);
3751 Set_Flag11 (N, Val);
3752 end Set_Has_Private_View;
3754 procedure Set_Has_Storage_Size_Pragma
3755 (N : Node_Id; Val : Boolean := True) is
3757 pragma Assert (False
3758 or else NT (N).Nkind = N_Task_Definition);
3760 end Set_Has_Storage_Size_Pragma;
3762 procedure Set_Has_Task_Info_Pragma
3763 (N : Node_Id; Val : Boolean := True) is
3765 pragma Assert (False
3766 or else NT (N).Nkind = N_Task_Definition);
3768 end Set_Has_Task_Info_Pragma;
3770 procedure Set_Has_Task_Name_Pragma
3771 (N : Node_Id; Val : Boolean := True) is
3773 pragma Assert (False
3774 or else NT (N).Nkind = N_Task_Definition);
3776 end Set_Has_Task_Name_Pragma;
3778 procedure Set_Has_Wide_Character
3779 (N : Node_Id; Val : Boolean := True) is
3781 pragma Assert (False
3782 or else NT (N).Nkind = N_String_Literal);
3783 Set_Flag11 (N, Val);
3784 end Set_Has_Wide_Character;
3786 procedure Set_Hidden_By_Use_Clause
3787 (N : Node_Id; Val : Elist_Id) is
3789 pragma Assert (False
3790 or else NT (N).Nkind = N_Use_Package_Clause
3791 or else NT (N).Nkind = N_Use_Type_Clause);
3792 Set_Elist4 (N, Val);
3793 end Set_Hidden_By_Use_Clause;
3795 procedure Set_High_Bound
3796 (N : Node_Id; Val : Node_Id) is
3798 pragma Assert (False
3799 or else NT (N).Nkind = N_Range
3800 or else NT (N).Nkind = N_Real_Range_Specification
3801 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3802 Set_Node2_With_Parent (N, Val);
3805 procedure Set_Identifier
3806 (N : Node_Id; Val : Node_Id) is
3808 pragma Assert (False
3809 or else NT (N).Nkind = N_At_Clause
3810 or else NT (N).Nkind = N_Block_Statement
3811 or else NT (N).Nkind = N_Designator
3812 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3813 or else NT (N).Nkind = N_Label
3814 or else NT (N).Nkind = N_Loop_Statement
3815 or else NT (N).Nkind = N_Record_Representation_Clause
3816 or else NT (N).Nkind = N_Subprogram_Info);
3817 Set_Node1_With_Parent (N, Val);
3820 procedure Set_Implicit_With
3821 (N : Node_Id; Val : Boolean := True) is
3823 pragma Assert (False
3824 or else NT (N).Nkind = N_With_Clause);
3825 Set_Flag16 (N, Val);
3826 end Set_Implicit_With;
3828 procedure Set_In_Present
3829 (N : Node_Id; Val : Boolean := True) is
3831 pragma Assert (False
3832 or else NT (N).Nkind = N_Formal_Object_Declaration
3833 or else NT (N).Nkind = N_Parameter_Specification);
3834 Set_Flag15 (N, Val);
3837 procedure Set_Includes_Infinities
3838 (N : Node_Id; Val : Boolean := True) is
3840 pragma Assert (False
3841 or else NT (N).Nkind = N_Range);
3842 Set_Flag11 (N, Val);
3843 end Set_Includes_Infinities;
3845 procedure Set_Instance_Spec
3846 (N : Node_Id; Val : Node_Id) is
3848 pragma Assert (False
3849 or else NT (N).Nkind = N_Formal_Package_Declaration
3850 or else NT (N).Nkind = N_Function_Instantiation
3851 or else NT (N).Nkind = N_Package_Instantiation
3852 or else NT (N).Nkind = N_Procedure_Instantiation);
3853 Set_Node5 (N, Val); -- semantic field, no Parent set
3854 end Set_Instance_Spec;
3856 procedure Set_Intval
3857 (N : Node_Id; Val : Uint) is
3859 pragma Assert (False
3860 or else NT (N).Nkind = N_Integer_Literal);
3864 procedure Set_Is_Asynchronous_Call_Block
3865 (N : Node_Id; Val : Boolean := True) is
3867 pragma Assert (False
3868 or else NT (N).Nkind = N_Block_Statement);
3870 end Set_Is_Asynchronous_Call_Block;
3872 procedure Set_Is_Component_Left_Opnd
3873 (N : Node_Id; Val : Boolean := True) is
3875 pragma Assert (False
3876 or else NT (N).Nkind = N_Op_Concat);
3877 Set_Flag13 (N, Val);
3878 end Set_Is_Component_Left_Opnd;
3880 procedure Set_Is_Component_Right_Opnd
3881 (N : Node_Id; Val : Boolean := True) is
3883 pragma Assert (False
3884 or else NT (N).Nkind = N_Op_Concat);
3885 Set_Flag14 (N, Val);
3886 end Set_Is_Component_Right_Opnd;
3888 procedure Set_Is_Controlling_Actual
3889 (N : Node_Id; Val : Boolean := True) is
3891 pragma Assert (False
3892 or else NT (N).Nkind in N_Subexpr);
3893 Set_Flag16 (N, Val);
3894 end Set_Is_Controlling_Actual;
3896 procedure Set_Is_In_Discriminant_Check
3897 (N : Node_Id; Val : Boolean := True) is
3899 pragma Assert (False
3900 or else NT (N).Nkind = N_Selected_Component);
3901 Set_Flag11 (N, Val);
3902 end Set_Is_In_Discriminant_Check;
3904 procedure Set_Is_Machine_Number
3905 (N : Node_Id; Val : Boolean := True) is
3907 pragma Assert (False
3908 or else NT (N).Nkind = N_Real_Literal);
3909 Set_Flag11 (N, Val);
3910 end Set_Is_Machine_Number;
3912 procedure Set_Is_Null_Loop
3913 (N : Node_Id; Val : Boolean := True) is
3915 pragma Assert (False
3916 or else NT (N).Nkind = N_Loop_Statement);
3917 Set_Flag16 (N, Val);
3918 end Set_Is_Null_Loop;
3920 procedure Set_Is_Overloaded
3921 (N : Node_Id; Val : Boolean := True) is
3923 pragma Assert (False
3924 or else NT (N).Nkind in N_Subexpr);
3926 end Set_Is_Overloaded;
3928 procedure Set_Is_Power_Of_2_For_Shift
3929 (N : Node_Id; Val : Boolean := True) is
3931 pragma Assert (False
3932 or else NT (N).Nkind = N_Op_Expon);
3933 Set_Flag13 (N, Val);
3934 end Set_Is_Power_Of_2_For_Shift;
3936 procedure Set_Is_Protected_Subprogram_Body
3937 (N : Node_Id; Val : Boolean := True) is
3939 pragma Assert (False
3940 or else NT (N).Nkind = N_Subprogram_Body);
3942 end Set_Is_Protected_Subprogram_Body;
3944 procedure Set_Is_Static_Expression
3945 (N : Node_Id; Val : Boolean := True) is
3947 pragma Assert (False
3948 or else NT (N).Nkind in N_Subexpr);
3950 end Set_Is_Static_Expression;
3952 procedure Set_Is_Subprogram_Descriptor
3953 (N : Node_Id; Val : Boolean := True) is
3955 pragma Assert (False
3956 or else NT (N).Nkind = N_Object_Declaration);
3957 Set_Flag16 (N, Val);
3958 end Set_Is_Subprogram_Descriptor;
3960 procedure Set_Is_Task_Allocation_Block
3961 (N : Node_Id; Val : Boolean := True) is
3963 pragma Assert (False
3964 or else NT (N).Nkind = N_Block_Statement);
3966 end Set_Is_Task_Allocation_Block;
3968 procedure Set_Is_Task_Master
3969 (N : Node_Id; Val : Boolean := True) is
3971 pragma Assert (False
3972 or else NT (N).Nkind = N_Block_Statement
3973 or else NT (N).Nkind = N_Subprogram_Body
3974 or else NT (N).Nkind = N_Task_Body);
3976 end Set_Is_Task_Master;
3978 procedure Set_Iteration_Scheme
3979 (N : Node_Id; Val : Node_Id) is
3981 pragma Assert (False
3982 or else NT (N).Nkind = N_Loop_Statement);
3983 Set_Node2_With_Parent (N, Val);
3984 end Set_Iteration_Scheme;
3987 (N : Node_Id; Val : Entity_Id) is
3989 pragma Assert (False
3990 or else NT (N).Nkind = N_Itype_Reference);
3991 Set_Node1 (N, Val); -- no parent, semantic field
3994 procedure Set_Kill_Range_Check
3995 (N : Node_Id; Val : Boolean := True) is
3997 pragma Assert (False
3998 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3999 Set_Flag11 (N, Val);
4000 end Set_Kill_Range_Check;
4002 procedure Set_Label_Construct
4003 (N : Node_Id; Val : Node_Id) is
4005 pragma Assert (False
4006 or else NT (N).Nkind = N_Implicit_Label_Declaration);
4007 Set_Node2 (N, Val); -- semantic field, no parent set
4008 end Set_Label_Construct;
4010 procedure Set_Last_Bit
4011 (N : Node_Id; Val : Node_Id) is
4013 pragma Assert (False
4014 or else NT (N).Nkind = N_Component_Clause);
4015 Set_Node4_With_Parent (N, Val);
4018 procedure Set_Last_Name
4019 (N : Node_Id; Val : Boolean := True) is
4021 pragma Assert (False
4022 or else NT (N).Nkind = N_With_Clause);
4026 procedure Set_Left_Opnd
4027 (N : Node_Id; Val : Node_Id) is
4029 pragma Assert (False
4030 or else NT (N).Nkind = N_And_Then
4031 or else NT (N).Nkind = N_In
4032 or else NT (N).Nkind = N_Not_In
4033 or else NT (N).Nkind = N_Or_Else
4034 or else NT (N).Nkind in N_Binary_Op);
4035 Set_Node2_With_Parent (N, Val);
4038 procedure Set_Library_Unit
4039 (N : Node_Id; Val : Node_Id) is
4041 pragma Assert (False
4042 or else NT (N).Nkind = N_Compilation_Unit
4043 or else NT (N).Nkind = N_Package_Body_Stub
4044 or else NT (N).Nkind = N_Protected_Body_Stub
4045 or else NT (N).Nkind = N_Subprogram_Body_Stub
4046 or else NT (N).Nkind = N_Task_Body_Stub
4047 or else NT (N).Nkind = N_With_Clause);
4048 Set_Node4 (N, Val); -- semantic field, no parent set
4049 end Set_Library_Unit;
4051 procedure Set_Limited_View_Installed
4052 (N : Node_Id; Val : Boolean := True) is
4054 pragma Assert (False
4055 or else NT (N).Nkind = N_Package_Specification
4056 or else NT (N).Nkind = N_With_Clause);
4057 Set_Flag18 (N, Val);
4058 end Set_Limited_View_Installed;
4060 procedure Set_Limited_Present
4061 (N : Node_Id; Val : Boolean := True) is
4063 pragma Assert (False
4064 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4065 or else NT (N).Nkind = N_Private_Type_Declaration
4066 or else NT (N).Nkind = N_Record_Definition
4067 or else NT (N).Nkind = N_With_Clause);
4068 Set_Flag17 (N, Val);
4069 end Set_Limited_Present;
4071 procedure Set_Literals
4072 (N : Node_Id; Val : List_Id) is
4074 pragma Assert (False
4075 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4076 Set_List1_With_Parent (N, Val);
4079 procedure Set_Loop_Actions
4080 (N : Node_Id; Val : List_Id) is
4082 pragma Assert (False
4083 or else NT (N).Nkind = N_Component_Association);
4084 Set_List2 (N, Val); -- semantic field, no parent set
4085 end Set_Loop_Actions;
4087 procedure Set_Loop_Parameter_Specification
4088 (N : Node_Id; Val : Node_Id) is
4090 pragma Assert (False
4091 or else NT (N).Nkind = N_Iteration_Scheme);
4092 Set_Node4_With_Parent (N, Val);
4093 end Set_Loop_Parameter_Specification;
4095 procedure Set_Low_Bound
4096 (N : Node_Id; Val : Node_Id) is
4098 pragma Assert (False
4099 or else NT (N).Nkind = N_Range
4100 or else NT (N).Nkind = N_Real_Range_Specification
4101 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4102 Set_Node1_With_Parent (N, Val);
4105 procedure Set_Mod_Clause
4106 (N : Node_Id; Val : Node_Id) is
4108 pragma Assert (False
4109 or else NT (N).Nkind = N_Record_Representation_Clause);
4110 Set_Node2_With_Parent (N, Val);
4113 procedure Set_More_Ids
4114 (N : Node_Id; Val : Boolean := True) is
4116 pragma Assert (False
4117 or else NT (N).Nkind = N_Component_Declaration
4118 or else NT (N).Nkind = N_Discriminant_Specification
4119 or else NT (N).Nkind = N_Exception_Declaration
4120 or else NT (N).Nkind = N_Formal_Object_Declaration
4121 or else NT (N).Nkind = N_Number_Declaration
4122 or else NT (N).Nkind = N_Object_Declaration
4123 or else NT (N).Nkind = N_Parameter_Specification);
4127 procedure Set_Must_Be_Byte_Aligned
4128 (N : Node_Id; Val : Boolean := True) is
4130 pragma Assert (False
4131 or else NT (N).Nkind = N_Attribute_Reference);
4132 Set_Flag14 (N, Val);
4133 end Set_Must_Be_Byte_Aligned;
4135 procedure Set_Must_Not_Freeze
4136 (N : Node_Id; Val : Boolean := True) is
4138 pragma Assert (False
4139 or else NT (N).Nkind = N_Subtype_Indication
4140 or else NT (N).Nkind in N_Subexpr);
4142 end Set_Must_Not_Freeze;
4145 (N : Node_Id; Val : Node_Id) is
4147 pragma Assert (False
4148 or else NT (N).Nkind = N_Assignment_Statement
4149 or else NT (N).Nkind = N_Attribute_Definition_Clause
4150 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4151 or else NT (N).Nkind = N_Designator
4152 or else NT (N).Nkind = N_Entry_Call_Statement
4153 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4154 or else NT (N).Nkind = N_Exit_Statement
4155 or else NT (N).Nkind = N_Formal_Package_Declaration
4156 or else NT (N).Nkind = N_Function_Call
4157 or else NT (N).Nkind = N_Function_Instantiation
4158 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4159 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4160 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4161 or else NT (N).Nkind = N_Goto_Statement
4162 or else NT (N).Nkind = N_Object_Renaming_Declaration
4163 or else NT (N).Nkind = N_Package_Instantiation
4164 or else NT (N).Nkind = N_Package_Renaming_Declaration
4165 or else NT (N).Nkind = N_Procedure_Call_Statement
4166 or else NT (N).Nkind = N_Procedure_Instantiation
4167 or else NT (N).Nkind = N_Raise_Statement
4168 or else NT (N).Nkind = N_Requeue_Statement
4169 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4170 or else NT (N).Nkind = N_Subunit
4171 or else NT (N).Nkind = N_Variant_Part
4172 or else NT (N).Nkind = N_With_Clause
4173 or else NT (N).Nkind = N_With_Type_Clause);
4174 Set_Node2_With_Parent (N, Val);
4178 (N : Node_Id; Val : List_Id) is
4180 pragma Assert (False
4181 or else NT (N).Nkind = N_Abort_Statement
4182 or else NT (N).Nkind = N_Use_Package_Clause);
4183 Set_List2_With_Parent (N, Val);
4186 procedure Set_Next_Entity
4187 (N : Node_Id; Val : Node_Id) is
4189 pragma Assert (False
4190 or else NT (N).Nkind = N_Defining_Character_Literal
4191 or else NT (N).Nkind = N_Defining_Identifier
4192 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4193 Set_Node2 (N, Val); -- semantic field, no parent set
4194 end Set_Next_Entity;
4196 procedure Set_Next_Named_Actual
4197 (N : Node_Id; Val : Node_Id) is
4199 pragma Assert (False
4200 or else NT (N).Nkind = N_Parameter_Association);
4201 Set_Node4 (N, Val); -- semantic field, no parent set
4202 end Set_Next_Named_Actual;
4204 procedure Set_Next_Rep_Item
4205 (N : Node_Id; Val : Node_Id) is
4207 pragma Assert (False
4208 or else NT (N).Nkind = N_Attribute_Definition_Clause
4209 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4210 or else NT (N).Nkind = N_Pragma
4211 or else NT (N).Nkind = N_Record_Representation_Clause);
4212 Set_Node4 (N, Val); -- semantic field, no parent set
4213 end Set_Next_Rep_Item;
4215 procedure Set_Next_Use_Clause
4216 (N : Node_Id; Val : Node_Id) is
4218 pragma Assert (False
4219 or else NT (N).Nkind = N_Use_Package_Clause
4220 or else NT (N).Nkind = N_Use_Type_Clause);
4221 Set_Node3 (N, Val); -- semantic field, no parent set
4222 end Set_Next_Use_Clause;
4224 procedure Set_No_Ctrl_Actions
4225 (N : Node_Id; Val : Boolean := True) is
4227 pragma Assert (False
4228 or else NT (N).Nkind = N_Assignment_Statement);
4230 end Set_No_Ctrl_Actions;
4232 procedure Set_No_Elaboration_Check
4233 (N : Node_Id; Val : Boolean := True) is
4235 pragma Assert (False
4236 or else NT (N).Nkind = N_Function_Call
4237 or else NT (N).Nkind = N_Procedure_Call_Statement);
4238 Set_Flag14 (N, Val);
4239 end Set_No_Elaboration_Check;
4241 procedure Set_No_Entities_Ref_In_Spec
4242 (N : Node_Id; Val : Boolean := True) is
4244 pragma Assert (False
4245 or else NT (N).Nkind = N_With_Clause);
4247 end Set_No_Entities_Ref_In_Spec;
4249 procedure Set_No_Initialization
4250 (N : Node_Id; Val : Boolean := True) is
4252 pragma Assert (False
4253 or else NT (N).Nkind = N_Allocator
4254 or else NT (N).Nkind = N_Object_Declaration);
4255 Set_Flag13 (N, Val);
4256 end Set_No_Initialization;
4258 procedure Set_No_Truncation
4259 (N : Node_Id; Val : Boolean := True) is
4261 pragma Assert (False
4262 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4263 Set_Flag17 (N, Val);
4264 end Set_No_Truncation;
4266 procedure Set_Null_Present
4267 (N : Node_Id; Val : Boolean := True) is
4269 pragma Assert (False
4270 or else NT (N).Nkind = N_Component_List
4271 or else NT (N).Nkind = N_Record_Definition);
4272 Set_Flag13 (N, Val);
4273 end Set_Null_Present;
4275 procedure Set_Null_Record_Present
4276 (N : Node_Id; Val : Boolean := True) is
4278 pragma Assert (False
4279 or else NT (N).Nkind = N_Aggregate
4280 or else NT (N).Nkind = N_Extension_Aggregate);
4281 Set_Flag17 (N, Val);
4282 end Set_Null_Record_Present;
4284 procedure Set_Object_Definition
4285 (N : Node_Id; Val : Node_Id) is
4287 pragma Assert (False
4288 or else NT (N).Nkind = N_Object_Declaration);
4289 Set_Node4_With_Parent (N, Val);
4290 end Set_Object_Definition;
4292 procedure Set_OK_For_Stream
4293 (N : Node_Id; Val : Boolean := True) is
4295 pragma Assert (False
4296 or else NT (N).Nkind = N_Attribute_Reference);
4298 end Set_OK_For_Stream;
4300 procedure Set_Original_Discriminant
4301 (N : Node_Id; Val : Node_Id) is
4303 pragma Assert (False
4304 or else NT (N).Nkind = N_Identifier);
4305 Set_Node2 (N, Val); -- semantic field, no parent set
4306 end Set_Original_Discriminant;
4308 procedure Set_Original_Entity
4309 (N : Node_Id; Val : Entity_Id) is
4311 pragma Assert (False
4312 or else NT (N).Nkind = N_Integer_Literal
4313 or else NT (N).Nkind = N_Real_Literal);
4314 Set_Node2 (N, Val); -- semantic field, no parent set
4315 end Set_Original_Entity;
4317 procedure Set_Others_Discrete_Choices
4318 (N : Node_Id; Val : List_Id) is
4320 pragma Assert (False
4321 or else NT (N).Nkind = N_Others_Choice);
4322 Set_List1_With_Parent (N, Val);
4323 end Set_Others_Discrete_Choices;
4325 procedure Set_Out_Present
4326 (N : Node_Id; Val : Boolean := True) is
4328 pragma Assert (False
4329 or else NT (N).Nkind = N_Formal_Object_Declaration
4330 or else NT (N).Nkind = N_Parameter_Specification);
4331 Set_Flag17 (N, Val);
4332 end Set_Out_Present;
4334 procedure Set_Parameter_Associations
4335 (N : Node_Id; Val : List_Id) is
4337 pragma Assert (False
4338 or else NT (N).Nkind = N_Entry_Call_Statement
4339 or else NT (N).Nkind = N_Function_Call
4340 or else NT (N).Nkind = N_Procedure_Call_Statement);
4341 Set_List3_With_Parent (N, Val);
4342 end Set_Parameter_Associations;
4344 procedure Set_Parameter_List_Truncated
4345 (N : Node_Id; Val : Boolean := True) is
4347 pragma Assert (False
4348 or else NT (N).Nkind = N_Function_Call
4349 or else NT (N).Nkind = N_Procedure_Call_Statement);
4350 Set_Flag17 (N, Val);
4351 end Set_Parameter_List_Truncated;
4353 procedure Set_Parameter_Specifications
4354 (N : Node_Id; Val : List_Id) is
4356 pragma Assert (False
4357 or else NT (N).Nkind = N_Accept_Statement
4358 or else NT (N).Nkind = N_Access_Function_Definition
4359 or else NT (N).Nkind = N_Access_Procedure_Definition
4360 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4361 or else NT (N).Nkind = N_Entry_Declaration
4362 or else NT (N).Nkind = N_Function_Specification
4363 or else NT (N).Nkind = N_Procedure_Specification);
4364 Set_List3_With_Parent (N, Val);
4365 end Set_Parameter_Specifications;
4367 procedure Set_Parameter_Type
4368 (N : Node_Id; Val : Node_Id) is
4370 pragma Assert (False
4371 or else NT (N).Nkind = N_Parameter_Specification);
4372 Set_Node2_With_Parent (N, Val);
4373 end Set_Parameter_Type;
4375 procedure Set_Parent_Spec
4376 (N : Node_Id; Val : Node_Id) is
4378 pragma Assert (False
4379 or else NT (N).Nkind = N_Function_Instantiation
4380 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4381 or else NT (N).Nkind = N_Generic_Package_Declaration
4382 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4383 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4384 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4385 or else NT (N).Nkind = N_Package_Declaration
4386 or else NT (N).Nkind = N_Package_Instantiation
4387 or else NT (N).Nkind = N_Package_Renaming_Declaration
4388 or else NT (N).Nkind = N_Procedure_Instantiation
4389 or else NT (N).Nkind = N_Subprogram_Declaration
4390 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4391 Set_Node4 (N, Val); -- semantic field, no parent set
4392 end Set_Parent_Spec;
4394 procedure Set_Position
4395 (N : Node_Id; Val : Node_Id) is
4397 pragma Assert (False
4398 or else NT (N).Nkind = N_Component_Clause);
4399 Set_Node2_With_Parent (N, Val);
4402 procedure Set_Pragma_Argument_Associations
4403 (N : Node_Id; Val : List_Id) is
4405 pragma Assert (False
4406 or else NT (N).Nkind = N_Pragma);
4407 Set_List2_With_Parent (N, Val);
4408 end Set_Pragma_Argument_Associations;
4410 procedure Set_Pragmas_After
4411 (N : Node_Id; Val : List_Id) is
4413 pragma Assert (False
4414 or else NT (N).Nkind = N_Compilation_Unit_Aux
4415 or else NT (N).Nkind = N_Terminate_Alternative);
4416 Set_List5_With_Parent (N, Val);
4417 end Set_Pragmas_After;
4419 procedure Set_Pragmas_Before
4420 (N : Node_Id; Val : List_Id) is
4422 pragma Assert (False
4423 or else NT (N).Nkind = N_Accept_Alternative
4424 or else NT (N).Nkind = N_Delay_Alternative
4425 or else NT (N).Nkind = N_Entry_Call_Alternative
4426 or else NT (N).Nkind = N_Mod_Clause
4427 or else NT (N).Nkind = N_Terminate_Alternative
4428 or else NT (N).Nkind = N_Triggering_Alternative);
4429 Set_List4_With_Parent (N, Val);
4430 end Set_Pragmas_Before;
4432 procedure Set_Prefix
4433 (N : Node_Id; Val : Node_Id) is
4435 pragma Assert (False
4436 or else NT (N).Nkind = N_Attribute_Reference
4437 or else NT (N).Nkind = N_Expanded_Name
4438 or else NT (N).Nkind = N_Explicit_Dereference
4439 or else NT (N).Nkind = N_Indexed_Component
4440 or else NT (N).Nkind = N_Reference
4441 or else NT (N).Nkind = N_Selected_Component
4442 or else NT (N).Nkind = N_Slice);
4443 Set_Node3_With_Parent (N, Val);
4446 procedure Set_Present_Expr
4447 (N : Node_Id; Val : Uint) is
4449 pragma Assert (False
4450 or else NT (N).Nkind = N_Variant);
4452 end Set_Present_Expr;
4454 procedure Set_Prev_Ids
4455 (N : Node_Id; Val : Boolean := True) is
4457 pragma Assert (False
4458 or else NT (N).Nkind = N_Component_Declaration
4459 or else NT (N).Nkind = N_Discriminant_Specification
4460 or else NT (N).Nkind = N_Exception_Declaration
4461 or else NT (N).Nkind = N_Formal_Object_Declaration
4462 or else NT (N).Nkind = N_Number_Declaration
4463 or else NT (N).Nkind = N_Object_Declaration
4464 or else NT (N).Nkind = N_Parameter_Specification);
4468 procedure Set_Print_In_Hex
4469 (N : Node_Id; Val : Boolean := True) is
4471 pragma Assert (False
4472 or else NT (N).Nkind = N_Integer_Literal);
4473 Set_Flag13 (N, Val);
4474 end Set_Print_In_Hex;
4476 procedure Set_Private_Declarations
4477 (N : Node_Id; Val : List_Id) is
4479 pragma Assert (False
4480 or else NT (N).Nkind = N_Package_Specification
4481 or else NT (N).Nkind = N_Protected_Definition
4482 or else NT (N).Nkind = N_Task_Definition);
4483 Set_List3_With_Parent (N, Val);
4484 end Set_Private_Declarations;
4486 procedure Set_Private_Present
4487 (N : Node_Id; Val : Boolean := True) is
4489 pragma Assert (False
4490 or else NT (N).Nkind = N_Compilation_Unit
4491 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4492 or else NT (N).Nkind = N_With_Clause);
4493 Set_Flag15 (N, Val);
4494 end Set_Private_Present;
4496 procedure Set_Procedure_To_Call
4497 (N : Node_Id; Val : Node_Id) is
4499 pragma Assert (False
4500 or else NT (N).Nkind = N_Allocator
4501 or else NT (N).Nkind = N_Free_Statement
4502 or else NT (N).Nkind = N_Return_Statement);
4503 Set_Node4 (N, Val); -- semantic field, no parent set
4504 end Set_Procedure_To_Call;
4506 procedure Set_Proper_Body
4507 (N : Node_Id; Val : Node_Id) is
4509 pragma Assert (False
4510 or else NT (N).Nkind = N_Subunit);
4511 Set_Node1_With_Parent (N, Val);
4512 end Set_Proper_Body;
4514 procedure Set_Protected_Definition
4515 (N : Node_Id; Val : Node_Id) is
4517 pragma Assert (False
4518 or else NT (N).Nkind = N_Protected_Type_Declaration
4519 or else NT (N).Nkind = N_Single_Protected_Declaration);
4520 Set_Node3_With_Parent (N, Val);
4521 end Set_Protected_Definition;
4523 procedure Set_Protected_Present
4524 (N : Node_Id; Val : Boolean := True) is
4526 pragma Assert (False
4527 or else NT (N).Nkind = N_Access_Function_Definition
4528 or else NT (N).Nkind = N_Access_Procedure_Definition);
4529 Set_Flag15 (N, Val);
4530 end Set_Protected_Present;
4532 procedure Set_Raises_Constraint_Error
4533 (N : Node_Id; Val : Boolean := True) is
4535 pragma Assert (False
4536 or else NT (N).Nkind in N_Subexpr);
4538 end Set_Raises_Constraint_Error;
4540 procedure Set_Range_Constraint
4541 (N : Node_Id; Val : Node_Id) is
4543 pragma Assert (False
4544 or else NT (N).Nkind = N_Delta_Constraint
4545 or else NT (N).Nkind = N_Digits_Constraint);
4546 Set_Node4_With_Parent (N, Val);
4547 end Set_Range_Constraint;
4549 procedure Set_Range_Expression
4550 (N : Node_Id; Val : Node_Id) is
4552 pragma Assert (False
4553 or else NT (N).Nkind = N_Range_Constraint);
4554 Set_Node4_With_Parent (N, Val);
4555 end Set_Range_Expression;
4557 procedure Set_Real_Range_Specification
4558 (N : Node_Id; Val : Node_Id) is
4560 pragma Assert (False
4561 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4562 or else NT (N).Nkind = N_Floating_Point_Definition
4563 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4564 Set_Node4_With_Parent (N, Val);
4565 end Set_Real_Range_Specification;
4567 procedure Set_Realval
4568 (N : Node_Id; Val : Ureal) is
4570 pragma Assert (False
4571 or else NT (N).Nkind = N_Real_Literal);
4572 Set_Ureal3 (N, Val);
4575 procedure Set_Reason
4576 (N : Node_Id; Val : Uint) is
4578 pragma Assert (False
4579 or else NT (N).Nkind = N_Raise_Constraint_Error
4580 or else NT (N).Nkind = N_Raise_Program_Error
4581 or else NT (N).Nkind = N_Raise_Storage_Error);
4585 procedure Set_Record_Extension_Part
4586 (N : Node_Id; Val : Node_Id) is
4588 pragma Assert (False
4589 or else NT (N).Nkind = N_Derived_Type_Definition);
4590 Set_Node3_With_Parent (N, Val);
4591 end Set_Record_Extension_Part;
4593 procedure Set_Redundant_Use
4594 (N : Node_Id; Val : Boolean := True) is
4596 pragma Assert (False
4597 or else NT (N).Nkind = N_Attribute_Reference
4598 or else NT (N).Nkind = N_Expanded_Name
4599 or else NT (N).Nkind = N_Identifier);
4600 Set_Flag13 (N, Val);
4601 end Set_Redundant_Use;
4603 procedure Set_Return_Type
4604 (N : Node_Id; Val : Node_Id) is
4606 pragma Assert (False
4607 or else NT (N).Nkind = N_Return_Statement);
4608 Set_Node2 (N, Val); -- semantic field, no parent set
4609 end Set_Return_Type;
4611 procedure Set_Reverse_Present
4612 (N : Node_Id; Val : Boolean := True) is
4614 pragma Assert (False
4615 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4616 Set_Flag15 (N, Val);
4617 end Set_Reverse_Present;
4619 procedure Set_Right_Opnd
4620 (N : Node_Id; Val : Node_Id) is
4622 pragma Assert (False
4623 or else NT (N).Nkind in N_Op
4624 or else NT (N).Nkind = N_And_Then
4625 or else NT (N).Nkind = N_In
4626 or else NT (N).Nkind = N_Not_In
4627 or else NT (N).Nkind = N_Or_Else);
4628 Set_Node3_With_Parent (N, Val);
4631 procedure Set_Rounded_Result
4632 (N : Node_Id; Val : Boolean := True) is
4634 pragma Assert (False
4635 or else NT (N).Nkind = N_Op_Divide
4636 or else NT (N).Nkind = N_Op_Multiply
4637 or else NT (N).Nkind = N_Type_Conversion);
4638 Set_Flag18 (N, Val);
4639 end Set_Rounded_Result;
4642 (N : Node_Id; Val : Node_Id) is
4644 pragma Assert (False
4645 or else NT (N).Nkind = N_Defining_Character_Literal
4646 or else NT (N).Nkind = N_Defining_Identifier
4647 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4648 Set_Node3 (N, Val); -- semantic field, no parent set
4651 procedure Set_Select_Alternatives
4652 (N : Node_Id; Val : List_Id) is
4654 pragma Assert (False
4655 or else NT (N).Nkind = N_Selective_Accept);
4656 Set_List1_With_Parent (N, Val);
4657 end Set_Select_Alternatives;
4659 procedure Set_Selector_Name
4660 (N : Node_Id; Val : Node_Id) is
4662 pragma Assert (False
4663 or else NT (N).Nkind = N_Expanded_Name
4664 or else NT (N).Nkind = N_Generic_Association
4665 or else NT (N).Nkind = N_Parameter_Association
4666 or else NT (N).Nkind = N_Selected_Component);
4667 Set_Node2_With_Parent (N, Val);
4668 end Set_Selector_Name;
4670 procedure Set_Selector_Names
4671 (N : Node_Id; Val : List_Id) is
4673 pragma Assert (False
4674 or else NT (N).Nkind = N_Discriminant_Association);
4675 Set_List1_With_Parent (N, Val);
4676 end Set_Selector_Names;
4678 procedure Set_Shift_Count_OK
4679 (N : Node_Id; Val : Boolean := True) is
4681 pragma Assert (False
4682 or else NT (N).Nkind = N_Op_Rotate_Left
4683 or else NT (N).Nkind = N_Op_Rotate_Right
4684 or else NT (N).Nkind = N_Op_Shift_Left
4685 or else NT (N).Nkind = N_Op_Shift_Right
4686 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4688 end Set_Shift_Count_OK;
4690 procedure Set_Source_Type
4691 (N : Node_Id; Val : Entity_Id) is
4693 pragma Assert (False
4694 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4695 Set_Node1 (N, Val); -- semantic field, no parent set
4696 end Set_Source_Type;
4698 procedure Set_Specification
4699 (N : Node_Id; Val : Node_Id) is
4701 pragma Assert (False
4702 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4703 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4704 or else NT (N).Nkind = N_Generic_Package_Declaration
4705 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4706 or else NT (N).Nkind = N_Package_Declaration
4707 or else NT (N).Nkind = N_Subprogram_Body
4708 or else NT (N).Nkind = N_Subprogram_Body_Stub
4709 or else NT (N).Nkind = N_Subprogram_Declaration
4710 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4711 Set_Node1_With_Parent (N, Val);
4712 end Set_Specification;
4714 procedure Set_Statements
4715 (N : Node_Id; Val : List_Id) is
4717 pragma Assert (False
4718 or else NT (N).Nkind = N_Abortable_Part
4719 or else NT (N).Nkind = N_Accept_Alternative
4720 or else NT (N).Nkind = N_Case_Statement_Alternative
4721 or else NT (N).Nkind = N_Delay_Alternative
4722 or else NT (N).Nkind = N_Entry_Call_Alternative
4723 or else NT (N).Nkind = N_Exception_Handler
4724 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4725 or else NT (N).Nkind = N_Loop_Statement
4726 or else NT (N).Nkind = N_Triggering_Alternative);
4727 Set_List3_With_Parent (N, Val);
4730 procedure Set_Static_Processing_OK
4731 (N : Node_Id; Val : Boolean) is
4733 pragma Assert (False
4734 or else NT (N).Nkind = N_Aggregate);
4736 end Set_Static_Processing_OK;
4738 procedure Set_Storage_Pool
4739 (N : Node_Id; Val : Node_Id) is
4741 pragma Assert (False
4742 or else NT (N).Nkind = N_Allocator
4743 or else NT (N).Nkind = N_Free_Statement
4744 or else NT (N).Nkind = N_Return_Statement);
4745 Set_Node1 (N, Val); -- semantic field, no parent set
4746 end Set_Storage_Pool;
4748 procedure Set_Strval
4749 (N : Node_Id; Val : String_Id) is
4751 pragma Assert (False
4752 or else NT (N).Nkind = N_Operator_Symbol
4753 or else NT (N).Nkind = N_String_Literal);
4757 procedure Set_Subtype_Indication
4758 (N : Node_Id; Val : Node_Id) is
4760 pragma Assert (False
4761 or else NT (N).Nkind = N_Access_To_Object_Definition
4762 or else NT (N).Nkind = N_Component_Definition
4763 or else NT (N).Nkind = N_Derived_Type_Definition
4764 or else NT (N).Nkind = N_Private_Extension_Declaration
4765 or else NT (N).Nkind = N_Subtype_Declaration);
4766 Set_Node5_With_Parent (N, Val);
4767 end Set_Subtype_Indication;
4769 procedure Set_Subtype_Mark
4770 (N : Node_Id; Val : Node_Id) is
4772 pragma Assert (False
4773 or else NT (N).Nkind = N_Access_Definition
4774 or else NT (N).Nkind = N_Access_Function_Definition
4775 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4776 or else NT (N).Nkind = N_Formal_Object_Declaration
4777 or else NT (N).Nkind = N_Function_Specification
4778 or else NT (N).Nkind = N_Object_Renaming_Declaration
4779 or else NT (N).Nkind = N_Qualified_Expression
4780 or else NT (N).Nkind = N_Subtype_Indication
4781 or else NT (N).Nkind = N_Type_Conversion
4782 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4783 Set_Node4_With_Parent (N, Val);
4784 end Set_Subtype_Mark;
4786 procedure Set_Subtype_Marks
4787 (N : Node_Id; Val : List_Id) is
4789 pragma Assert (False
4790 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4791 or else NT (N).Nkind = N_Use_Type_Clause);
4792 Set_List2_With_Parent (N, Val);
4793 end Set_Subtype_Marks;
4795 procedure Set_Tagged_Present
4796 (N : Node_Id; Val : Boolean := True) is
4798 pragma Assert (False
4799 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4800 or else NT (N).Nkind = N_Private_Type_Declaration
4801 or else NT (N).Nkind = N_Record_Definition
4802 or else NT (N).Nkind = N_With_Type_Clause);
4803 Set_Flag15 (N, Val);
4804 end Set_Tagged_Present;
4806 procedure Set_Target_Type
4807 (N : Node_Id; Val : Entity_Id) is
4809 pragma Assert (False
4810 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4811 Set_Node2 (N, Val); -- semantic field, no parent set
4812 end Set_Target_Type;
4814 procedure Set_Task_Body_Procedure
4815 (N : Node_Id; Val : Entity_Id) is
4817 pragma Assert (False
4818 or else NT (N).Nkind = N_Task_Type_Declaration);
4819 Set_Node2 (N, Val); -- semantic field, no parent set
4820 end Set_Task_Body_Procedure;
4822 procedure Set_Task_Definition
4823 (N : Node_Id; Val : Node_Id) is
4825 pragma Assert (False
4826 or else NT (N).Nkind = N_Single_Task_Declaration
4827 or else NT (N).Nkind = N_Task_Type_Declaration);
4828 Set_Node3_With_Parent (N, Val);
4829 end Set_Task_Definition;
4831 procedure Set_Then_Actions
4832 (N : Node_Id; Val : List_Id) is
4834 pragma Assert (False
4835 or else NT (N).Nkind = N_Conditional_Expression);
4836 Set_List2 (N, Val); -- semantic field, no parent set
4837 end Set_Then_Actions;
4839 procedure Set_Then_Statements
4840 (N : Node_Id; Val : List_Id) is
4842 pragma Assert (False
4843 or else NT (N).Nkind = N_Elsif_Part
4844 or else NT (N).Nkind = N_If_Statement);
4845 Set_List2_With_Parent (N, Val);
4846 end Set_Then_Statements;
4848 procedure Set_Treat_Fixed_As_Integer
4849 (N : Node_Id; Val : Boolean := True) is
4851 pragma Assert (False
4852 or else NT (N).Nkind = N_Op_Divide
4853 or else NT (N).Nkind = N_Op_Mod
4854 or else NT (N).Nkind = N_Op_Multiply
4855 or else NT (N).Nkind = N_Op_Rem);
4856 Set_Flag14 (N, Val);
4857 end Set_Treat_Fixed_As_Integer;
4859 procedure Set_Triggering_Alternative
4860 (N : Node_Id; Val : Node_Id) is
4862 pragma Assert (False
4863 or else NT (N).Nkind = N_Asynchronous_Select);
4864 Set_Node1_With_Parent (N, Val);
4865 end Set_Triggering_Alternative;
4867 procedure Set_Triggering_Statement
4868 (N : Node_Id; Val : Node_Id) is
4870 pragma Assert (False
4871 or else NT (N).Nkind = N_Triggering_Alternative);
4872 Set_Node1_With_Parent (N, Val);
4873 end Set_Triggering_Statement;
4875 procedure Set_TSS_Elist
4876 (N : Node_Id; Val : Elist_Id) is
4878 pragma Assert (False
4879 or else NT (N).Nkind = N_Freeze_Entity);
4880 Set_Elist3 (N, Val); -- semantic field, no parent set
4883 procedure Set_Type_Definition
4884 (N : Node_Id; Val : Node_Id) is
4886 pragma Assert (False
4887 or else NT (N).Nkind = N_Full_Type_Declaration);
4888 Set_Node3_With_Parent (N, Val);
4889 end Set_Type_Definition;
4892 (N : Node_Id; Val : Node_Id) is
4894 pragma Assert (False
4895 or else NT (N).Nkind = N_Compilation_Unit);
4896 Set_Node2_With_Parent (N, Val);
4899 procedure Set_Unknown_Discriminants_Present
4900 (N : Node_Id; Val : Boolean := True) is
4902 pragma Assert (False
4903 or else NT (N).Nkind = N_Formal_Type_Declaration
4904 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4905 or else NT (N).Nkind = N_Private_Extension_Declaration
4906 or else NT (N).Nkind = N_Private_Type_Declaration);
4907 Set_Flag13 (N, Val);
4908 end Set_Unknown_Discriminants_Present;
4910 procedure Set_Unreferenced_In_Spec
4911 (N : Node_Id; Val : Boolean := True) is
4913 pragma Assert (False
4914 or else NT (N).Nkind = N_With_Clause);
4916 end Set_Unreferenced_In_Spec;
4918 procedure Set_Variant_Part
4919 (N : Node_Id; Val : Node_Id) is
4921 pragma Assert (False
4922 or else NT (N).Nkind = N_Component_List);
4923 Set_Node4_With_Parent (N, Val);
4924 end Set_Variant_Part;
4926 procedure Set_Variants
4927 (N : Node_Id; Val : List_Id) is
4929 pragma Assert (False
4930 or else NT (N).Nkind = N_Variant_Part);
4931 Set_List1_With_Parent (N, Val);
4934 procedure Set_Visible_Declarations
4935 (N : Node_Id; Val : List_Id) is
4937 pragma Assert (False
4938 or else NT (N).Nkind = N_Package_Specification
4939 or else NT (N).Nkind = N_Protected_Definition
4940 or else NT (N).Nkind = N_Task_Definition);
4941 Set_List2_With_Parent (N, Val);
4942 end Set_Visible_Declarations;
4944 procedure Set_Was_Originally_Stub
4945 (N : Node_Id; Val : Boolean := True) is
4947 pragma Assert (False
4948 or else NT (N).Nkind = N_Package_Body
4949 or else NT (N).Nkind = N_Protected_Body
4950 or else NT (N).Nkind = N_Subprogram_Body
4951 or else NT (N).Nkind = N_Task_Body);
4952 Set_Flag13 (N, Val);
4953 end Set_Was_Originally_Stub;
4955 procedure Set_Zero_Cost_Handling
4956 (N : Node_Id; Val : Boolean := True) is
4958 pragma Assert (False
4959 or else NT (N).Nkind = N_Exception_Handler
4960 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4962 end Set_Zero_Cost_Handling;
4964 -------------------------
4965 -- Iterator Procedures --
4966 -------------------------
4968 procedure Next_Entity (N : in out Node_Id) is
4970 N := Next_Entity (N);
4973 procedure Next_Named_Actual (N : in out Node_Id) is
4975 N := Next_Named_Actual (N);
4976 end Next_Named_Actual;
4978 procedure Next_Rep_Item (N : in out Node_Id) is
4980 N := Next_Rep_Item (N);
4983 procedure Next_Use_Clause (N : in out Node_Id) is
4985 N := Next_Use_Clause (N);
4986 end Next_Use_Clause;
4992 function End_Location (N : Node_Id) return Source_Ptr is
4993 L : constant Uint := End_Span (N);
4999 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
5003 ----------------------
5004 -- Set_End_Location --
5005 ----------------------
5007 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
5010 UI_From_Int (Int (S) - Int (Sloc (N))));
5011 end Set_End_Location;