1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2020, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 with Atree
; use Atree
;
36 use Atree
.Unchecked_Access
;
37 -- This package is one of the few packages which is allowed to make direct
38 -- references to tree nodes (since it is in the business of providing a
39 -- higher level of tree access which other clients are expected to use and
40 -- which implements checks).
42 use Atree_Private_Part
;
43 -- The only reason that we ask for direct access to the private part of
44 -- the tree package is so that we can directly reference the Nkind field
45 -- of nodes table entries. We do this since it helps the efficiency of
46 -- the Sinfo debugging checks considerably (note that when we are checking
47 -- Nkind values, we don't need to check for a valid node reference, because
48 -- we will check that anyway when we reference the field).
50 NT
: Nodes
.Table_Ptr
renames Nodes
.Table
;
51 -- A short hand abbreviation, useful for the debugging checks
53 ----------------------------
54 -- Field Access Functions --
55 ----------------------------
57 -- Note: The use of Assert (False or else ...) is just a device to allow
58 -- uniform format of the conditions following this. Note that csinfo
59 -- expects this uniform format.
61 function Abort_Present
62 (N
: Node_Id
) return Boolean is
65 or else NT
(N
).Nkind
= N_Requeue_Statement
);
69 function Abortable_Part
70 (N
: Node_Id
) return Node_Id
is
73 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
77 function Abstract_Present
78 (N
: Node_Id
) return Boolean is
81 or else NT
(N
).Nkind
= N_Derived_Type_Definition
82 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
83 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
84 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
85 or else NT
(N
).Nkind
= N_Private_Type_Declaration
86 or else NT
(N
).Nkind
= N_Record_Definition
);
90 function Accept_Handler_Records
91 (N
: Node_Id
) return List_Id
is
94 or else NT
(N
).Nkind
= N_Accept_Alternative
);
96 end Accept_Handler_Records
;
98 function Accept_Statement
99 (N
: Node_Id
) return Node_Id
is
102 or else NT
(N
).Nkind
= N_Accept_Alternative
);
104 end Accept_Statement
;
106 function Access_Definition
107 (N
: Node_Id
) return Node_Id
is
110 or else NT
(N
).Nkind
= N_Component_Definition
111 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
112 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
114 end Access_Definition
;
116 function Access_To_Subprogram_Definition
117 (N
: Node_Id
) return Node_Id
is
120 or else NT
(N
).Nkind
= N_Access_Definition
);
122 end Access_To_Subprogram_Definition
;
124 function Access_Types_To_Process
125 (N
: Node_Id
) return Elist_Id
is
128 or else NT
(N
).Nkind
= N_Freeze_Entity
);
130 end Access_Types_To_Process
;
133 (N
: Node_Id
) return List_Id
is
136 or else NT
(N
).Nkind
= N_And_Then
137 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
138 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
139 or else NT
(N
).Nkind
= N_Compound_Statement
140 or else NT
(N
).Nkind
= N_Expression_With_Actions
141 or else NT
(N
).Nkind
= N_Freeze_Entity
142 or else NT
(N
).Nkind
= N_Or_Else
);
146 function Activation_Chain_Entity
147 (N
: Node_Id
) return Node_Id
is
150 or else NT
(N
).Nkind
= N_Block_Statement
151 or else NT
(N
).Nkind
= N_Entry_Body
152 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
153 or else NT
(N
).Nkind
= N_Package_Declaration
154 or else NT
(N
).Nkind
= N_Subprogram_Body
155 or else NT
(N
).Nkind
= N_Task_Body
);
157 end Activation_Chain_Entity
;
159 function Acts_As_Spec
160 (N
: Node_Id
) return Boolean is
163 or else NT
(N
).Nkind
= N_Compilation_Unit
164 or else NT
(N
).Nkind
= N_Subprogram_Body
);
168 function Actual_Designated_Subtype
169 (N
: Node_Id
) return Node_Id
is
172 or else NT
(N
).Nkind
= N_Explicit_Dereference
173 or else NT
(N
).Nkind
= N_Free_Statement
);
175 end Actual_Designated_Subtype
;
177 function Address_Warning_Posted
178 (N
: Node_Id
) return Boolean is
181 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
183 end Address_Warning_Posted
;
185 function Aggregate_Bounds
186 (N
: Node_Id
) return Node_Id
is
189 or else NT
(N
).Nkind
= N_Aggregate
);
191 end Aggregate_Bounds
;
193 function Aliased_Present
194 (N
: Node_Id
) return Boolean is
197 or else NT
(N
).Nkind
= N_Component_Definition
198 or else NT
(N
).Nkind
= N_Object_Declaration
199 or else NT
(N
).Nkind
= N_Parameter_Specification
);
203 function Alloc_For_BIP_Return
204 (N
: Node_Id
) return Boolean is
207 or else NT
(N
).Nkind
= N_Allocator
);
209 end Alloc_For_BIP_Return
;
212 (N
: Node_Id
) return Boolean is
215 or else NT
(N
).Nkind
= N_Others_Choice
);
220 (N
: Node_Id
) return Boolean is
223 or else NT
(N
).Nkind
= N_Access_Definition
224 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
225 or else NT
(N
).Nkind
= N_Quantified_Expression
226 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
230 function Alternatives
231 (N
: Node_Id
) return List_Id
is
234 or else NT
(N
).Nkind
= N_Case_Expression
235 or else NT
(N
).Nkind
= N_Case_Statement
236 or else NT
(N
).Nkind
= N_In
237 or else NT
(N
).Nkind
= N_Not_In
);
241 function Ancestor_Part
242 (N
: Node_Id
) return Node_Id
is
245 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
249 function Atomic_Sync_Required
250 (N
: Node_Id
) return Boolean is
253 or else NT
(N
).Nkind
= N_Expanded_Name
254 or else NT
(N
).Nkind
= N_Explicit_Dereference
255 or else NT
(N
).Nkind
= N_Identifier
256 or else NT
(N
).Nkind
= N_Indexed_Component
257 or else NT
(N
).Nkind
= N_Selected_Component
);
259 end Atomic_Sync_Required
;
261 function Array_Aggregate
262 (N
: Node_Id
) return Node_Id
is
265 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
269 function Aspect_On_Partial_View
270 (N
: Node_Id
) return Boolean is
273 or else NT
(N
).Nkind
= N_Aspect_Specification
);
275 end Aspect_On_Partial_View
;
277 function Aspect_Rep_Item
278 (N
: Node_Id
) return Node_Id
is
281 or else NT
(N
).Nkind
= N_Aspect_Specification
);
285 function Assignment_OK
286 (N
: Node_Id
) return Boolean is
289 or else NT
(N
).Nkind
= N_Object_Declaration
290 or else NT
(N
).Nkind
in N_Subexpr
);
294 function Associated_Node
295 (N
: Node_Id
) return Node_Id
is
298 or else NT
(N
).Nkind
in N_Has_Entity
299 or else NT
(N
).Nkind
= N_Aggregate
300 or else NT
(N
).Nkind
= N_Extension_Aggregate
301 or else NT
(N
).Nkind
= N_Selected_Component
302 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
307 (N
: Node_Id
) return Node_Id
is
310 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
314 function Attribute_Name
315 (N
: Node_Id
) return Name_Id
is
318 or else NT
(N
).Nkind
= N_Attribute_Reference
);
322 function Aux_Decls_Node
323 (N
: Node_Id
) return Node_Id
is
326 or else NT
(N
).Nkind
= N_Compilation_Unit
);
330 function Backwards_OK
331 (N
: Node_Id
) return Boolean is
334 or else NT
(N
).Nkind
= N_Assignment_Statement
);
338 function Bad_Is_Detected
339 (N
: Node_Id
) return Boolean is
342 or else NT
(N
).Nkind
= N_Subprogram_Body
);
346 function Body_Required
347 (N
: Node_Id
) return Boolean is
350 or else NT
(N
).Nkind
= N_Compilation_Unit
);
354 function Body_To_Inline
355 (N
: Node_Id
) return Node_Id
is
358 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
363 (N
: Node_Id
) return Boolean is
366 or else NT
(N
).Nkind
= N_Component_Association
367 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
368 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
369 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
370 or else NT
(N
).Nkind
= N_Generic_Association
371 or else NT
(N
).Nkind
= N_Iterated_Component_Association
372 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
377 (N
: Node_Id
) return Boolean is
380 or else NT
(N
).Nkind
= N_Extended_Return_Statement
381 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
385 function Char_Literal_Value
386 (N
: Node_Id
) return Uint
is
389 or else NT
(N
).Nkind
= N_Character_Literal
);
391 end Char_Literal_Value
;
394 (N
: Node_Id
) return Name_Id
is
397 or else NT
(N
).Nkind
in N_Has_Chars
);
401 function Check_Address_Alignment
402 (N
: Node_Id
) return Boolean is
405 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
407 end Check_Address_Alignment
;
409 function Choice_Parameter
410 (N
: Node_Id
) return Node_Id
is
413 or else NT
(N
).Nkind
= N_Exception_Handler
);
415 end Choice_Parameter
;
418 (N
: Node_Id
) return List_Id
is
421 or else NT
(N
).Nkind
= N_Component_Association
);
425 function Class_Present
426 (N
: Node_Id
) return Boolean is
429 or else NT
(N
).Nkind
= N_Aspect_Specification
430 or else NT
(N
).Nkind
= N_Pragma
);
434 function Classifications
435 (N
: Node_Id
) return Node_Id
is
438 or else NT
(N
).Nkind
= N_Contract
);
442 function Cleanup_Actions
443 (N
: Node_Id
) return List_Id
is
446 or else NT
(N
).Nkind
= N_Block_Statement
);
450 function Comes_From_Extended_Return_Statement
451 (N
: Node_Id
) return Boolean is
454 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
456 end Comes_From_Extended_Return_Statement
;
458 function Compile_Time_Known_Aggregate
459 (N
: Node_Id
) return Boolean is
462 or else NT
(N
).Nkind
= N_Aggregate
);
464 end Compile_Time_Known_Aggregate
;
466 function Component_Associations
467 (N
: Node_Id
) return List_Id
is
470 or else NT
(N
).Nkind
= N_Aggregate
471 or else NT
(N
).Nkind
= N_Delta_Aggregate
472 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
474 end Component_Associations
;
476 function Component_Clauses
477 (N
: Node_Id
) return List_Id
is
480 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
482 end Component_Clauses
;
484 function Component_Definition
485 (N
: Node_Id
) return Node_Id
is
488 or else NT
(N
).Nkind
= N_Component_Declaration
489 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
490 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
492 end Component_Definition
;
494 function Component_Items
495 (N
: Node_Id
) return List_Id
is
498 or else NT
(N
).Nkind
= N_Component_List
);
502 function Component_List
503 (N
: Node_Id
) return Node_Id
is
506 or else NT
(N
).Nkind
= N_Record_Definition
507 or else NT
(N
).Nkind
= N_Variant
);
511 function Component_Name
512 (N
: Node_Id
) return Node_Id
is
515 or else NT
(N
).Nkind
= N_Component_Clause
);
519 function Componentwise_Assignment
520 (N
: Node_Id
) return Boolean is
523 or else NT
(N
).Nkind
= N_Assignment_Statement
);
525 end Componentwise_Assignment
;
528 (N
: Node_Id
) return Node_Id
is
531 or else NT
(N
).Nkind
= N_Accept_Alternative
532 or else NT
(N
).Nkind
= N_Delay_Alternative
533 or else NT
(N
).Nkind
= N_Elsif_Part
534 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
535 or else NT
(N
).Nkind
= N_Exit_Statement
536 or else NT
(N
).Nkind
= N_If_Statement
537 or else NT
(N
).Nkind
= N_Iteration_Scheme
538 or else NT
(N
).Nkind
= N_Quantified_Expression
539 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
540 or else NT
(N
).Nkind
= N_Raise_Program_Error
541 or else NT
(N
).Nkind
= N_Raise_Storage_Error
542 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
546 function Condition_Actions
547 (N
: Node_Id
) return List_Id
is
550 or else NT
(N
).Nkind
= N_Elsif_Part
551 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
553 end Condition_Actions
;
555 function Config_Pragmas
556 (N
: Node_Id
) return List_Id
is
559 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
563 function Constant_Present
564 (N
: Node_Id
) return Boolean is
567 or else NT
(N
).Nkind
= N_Access_Definition
568 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
569 or else NT
(N
).Nkind
= N_Object_Declaration
);
571 end Constant_Present
;
574 (N
: Node_Id
) return Node_Id
is
577 or else NT
(N
).Nkind
= N_Subtype_Indication
);
582 (N
: Node_Id
) return List_Id
is
585 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
589 function Context_Installed
590 (N
: Node_Id
) return Boolean is
593 or else NT
(N
).Nkind
= N_With_Clause
);
595 end Context_Installed
;
597 function Context_Items
598 (N
: Node_Id
) return List_Id
is
601 or else NT
(N
).Nkind
= N_Compilation_Unit
);
605 function Context_Pending
606 (N
: Node_Id
) return Boolean is
609 or else NT
(N
).Nkind
= N_Compilation_Unit
);
613 function Contract_Test_Cases
614 (N
: Node_Id
) return Node_Id
is
617 or else NT
(N
).Nkind
= N_Contract
);
619 end Contract_Test_Cases
;
621 function Controlling_Argument
622 (N
: Node_Id
) return Node_Id
is
625 or else NT
(N
).Nkind
= N_Function_Call
626 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
628 end Controlling_Argument
;
630 function Conversion_OK
631 (N
: Node_Id
) return Boolean is
634 or else NT
(N
).Nkind
= N_Type_Conversion
);
638 function Convert_To_Return_False
639 (N
: Node_Id
) return Boolean is
642 or else NT
(N
).Nkind
= N_Raise_Expression
);
644 end Convert_To_Return_False
;
646 function Corresponding_Aspect
647 (N
: Node_Id
) return Node_Id
is
650 or else NT
(N
).Nkind
= N_Pragma
);
652 end Corresponding_Aspect
;
654 function Corresponding_Body
655 (N
: Node_Id
) return Node_Id
is
658 or else NT
(N
).Nkind
= N_Entry_Declaration
659 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
660 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
661 or else NT
(N
).Nkind
= N_Package_Body_Stub
662 or else NT
(N
).Nkind
= N_Package_Declaration
663 or else NT
(N
).Nkind
= N_Protected_Body_Stub
664 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
665 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
666 or else NT
(N
).Nkind
= N_Subprogram_Declaration
667 or else NT
(N
).Nkind
= N_Task_Body_Stub
668 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
670 end Corresponding_Body
;
672 function Corresponding_Formal_Spec
673 (N
: Node_Id
) return Node_Id
is
676 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
678 end Corresponding_Formal_Spec
;
680 function Corresponding_Generic_Association
681 (N
: Node_Id
) return Node_Id
is
684 or else NT
(N
).Nkind
= N_Object_Declaration
685 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
687 end Corresponding_Generic_Association
;
689 function Corresponding_Integer_Value
690 (N
: Node_Id
) return Uint
is
693 or else NT
(N
).Nkind
= N_Real_Literal
);
695 end Corresponding_Integer_Value
;
697 function Corresponding_Spec
698 (N
: Node_Id
) return Entity_Id
is
701 or else NT
(N
).Nkind
= N_Expression_Function
702 or else NT
(N
).Nkind
= N_Package_Body
703 or else NT
(N
).Nkind
= N_Protected_Body
704 or else NT
(N
).Nkind
= N_Subprogram_Body
705 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
706 or else NT
(N
).Nkind
= N_Task_Body
707 or else NT
(N
).Nkind
= N_With_Clause
);
709 end Corresponding_Spec
;
711 function Corresponding_Spec_Of_Stub
712 (N
: Node_Id
) return Entity_Id
is
715 or else NT
(N
).Nkind
= N_Package_Body_Stub
716 or else NT
(N
).Nkind
= N_Protected_Body_Stub
717 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
718 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
720 end Corresponding_Spec_Of_Stub
;
722 function Corresponding_Stub
723 (N
: Node_Id
) return Node_Id
is
726 or else NT
(N
).Nkind
= N_Subunit
);
728 end Corresponding_Stub
;
730 function Dcheck_Function
731 (N
: Node_Id
) return Entity_Id
is
734 or else NT
(N
).Nkind
= N_Variant
);
738 function Declarations
739 (N
: Node_Id
) return List_Id
is
742 or else NT
(N
).Nkind
= N_Accept_Statement
743 or else NT
(N
).Nkind
= N_Block_Statement
744 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
745 or else NT
(N
).Nkind
= N_Entry_Body
746 or else NT
(N
).Nkind
= N_Package_Body
747 or else NT
(N
).Nkind
= N_Protected_Body
748 or else NT
(N
).Nkind
= N_Subprogram_Body
749 or else NT
(N
).Nkind
= N_Task_Body
);
753 function Default_Expression
754 (N
: Node_Id
) return Node_Id
is
757 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
758 or else NT
(N
).Nkind
= N_Parameter_Specification
);
760 end Default_Expression
;
762 function Default_Storage_Pool
763 (N
: Node_Id
) return Node_Id
is
766 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
768 end Default_Storage_Pool
;
770 function Default_Name
771 (N
: Node_Id
) return Node_Id
is
774 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
775 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
779 function Defining_Identifier
780 (N
: Node_Id
) return Entity_Id
is
783 or else NT
(N
).Nkind
= N_Component_Declaration
784 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
785 or else NT
(N
).Nkind
= N_Discriminant_Specification
786 or else NT
(N
).Nkind
= N_Entry_Body
787 or else NT
(N
).Nkind
= N_Entry_Declaration
788 or else NT
(N
).Nkind
= N_Entry_Index_Specification
789 or else NT
(N
).Nkind
= N_Exception_Declaration
790 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
791 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
792 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
793 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
794 or else NT
(N
).Nkind
= N_Full_Type_Declaration
795 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
796 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
797 or else NT
(N
).Nkind
= N_Iterated_Component_Association
798 or else NT
(N
).Nkind
= N_Iterator_Specification
799 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
800 or else NT
(N
).Nkind
= N_Number_Declaration
801 or else NT
(N
).Nkind
= N_Object_Declaration
802 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
803 or else NT
(N
).Nkind
= N_Package_Body_Stub
804 or else NT
(N
).Nkind
= N_Parameter_Specification
805 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
806 or else NT
(N
).Nkind
= N_Private_Type_Declaration
807 or else NT
(N
).Nkind
= N_Protected_Body
808 or else NT
(N
).Nkind
= N_Protected_Body_Stub
809 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
810 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
811 or else NT
(N
).Nkind
= N_Single_Task_Declaration
812 or else NT
(N
).Nkind
= N_Subtype_Declaration
813 or else NT
(N
).Nkind
= N_Task_Body
814 or else NT
(N
).Nkind
= N_Task_Body_Stub
815 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
817 end Defining_Identifier
;
819 function Defining_Unit_Name
820 (N
: Node_Id
) return Node_Id
is
823 or else NT
(N
).Nkind
= N_Function_Instantiation
824 or else NT
(N
).Nkind
= N_Function_Specification
825 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
826 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
827 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
828 or else NT
(N
).Nkind
= N_Package_Body
829 or else NT
(N
).Nkind
= N_Package_Instantiation
830 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
831 or else NT
(N
).Nkind
= N_Package_Specification
832 or else NT
(N
).Nkind
= N_Procedure_Instantiation
833 or else NT
(N
).Nkind
= N_Procedure_Specification
);
835 end Defining_Unit_Name
;
837 function Delay_Alternative
838 (N
: Node_Id
) return Node_Id
is
841 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
843 end Delay_Alternative
;
845 function Delay_Statement
846 (N
: Node_Id
) return Node_Id
is
849 or else NT
(N
).Nkind
= N_Delay_Alternative
);
853 function Delta_Expression
854 (N
: Node_Id
) return Node_Id
is
857 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
858 or else NT
(N
).Nkind
= N_Delta_Constraint
859 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
861 end Delta_Expression
;
863 function Digits_Expression
864 (N
: Node_Id
) return Node_Id
is
867 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
868 or else NT
(N
).Nkind
= N_Digits_Constraint
869 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
871 end Digits_Expression
;
873 function Discr_Check_Funcs_Built
874 (N
: Node_Id
) return Boolean is
877 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
879 end Discr_Check_Funcs_Built
;
881 function Discrete_Choices
882 (N
: Node_Id
) return List_Id
is
885 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
886 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
887 or else NT
(N
).Nkind
= N_Iterated_Component_Association
888 or else NT
(N
).Nkind
= N_Variant
);
890 end Discrete_Choices
;
892 function Discrete_Range
893 (N
: Node_Id
) return Node_Id
is
896 or else NT
(N
).Nkind
= N_Slice
);
900 function Discrete_Subtype_Definition
901 (N
: Node_Id
) return Node_Id
is
904 or else NT
(N
).Nkind
= N_Entry_Declaration
905 or else NT
(N
).Nkind
= N_Entry_Index_Specification
906 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
908 end Discrete_Subtype_Definition
;
910 function Discrete_Subtype_Definitions
911 (N
: Node_Id
) return List_Id
is
914 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
916 end Discrete_Subtype_Definitions
;
918 function Discriminant_Specifications
919 (N
: Node_Id
) return List_Id
is
922 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
923 or else NT
(N
).Nkind
= N_Full_Type_Declaration
924 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
925 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
926 or else NT
(N
).Nkind
= N_Private_Type_Declaration
927 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
928 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
930 end Discriminant_Specifications
;
932 function Discriminant_Type
933 (N
: Node_Id
) return Node_Id
is
936 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
938 end Discriminant_Type
;
940 function Do_Accessibility_Check
941 (N
: Node_Id
) return Boolean is
944 or else NT
(N
).Nkind
= N_Parameter_Specification
);
946 end Do_Accessibility_Check
;
948 function Do_Discriminant_Check
949 (N
: Node_Id
) return Boolean is
952 or else NT
(N
).Nkind
= N_Assignment_Statement
953 or else NT
(N
).Nkind
= N_Selected_Component
954 or else NT
(N
).Nkind
= N_Type_Conversion
);
956 end Do_Discriminant_Check
;
958 function Do_Division_Check
959 (N
: Node_Id
) return Boolean is
962 or else NT
(N
).Nkind
= N_Op_Divide
963 or else NT
(N
).Nkind
= N_Op_Mod
964 or else NT
(N
).Nkind
= N_Op_Rem
);
966 end Do_Division_Check
;
968 function Do_Length_Check
969 (N
: Node_Id
) return Boolean is
972 or else NT
(N
).Nkind
= N_Assignment_Statement
973 or else NT
(N
).Nkind
= N_Op_And
974 or else NT
(N
).Nkind
= N_Op_Or
975 or else NT
(N
).Nkind
= N_Op_Xor
976 or else NT
(N
).Nkind
= N_Type_Conversion
);
980 function Do_Overflow_Check
981 (N
: Node_Id
) return Boolean is
984 or else NT
(N
).Nkind
in N_Op
985 or else NT
(N
).Nkind
= N_Attribute_Reference
986 or else NT
(N
).Nkind
= N_Case_Expression
987 or else NT
(N
).Nkind
= N_If_Expression
988 or else NT
(N
).Nkind
= N_Type_Conversion
);
990 end Do_Overflow_Check
;
992 function Do_Range_Check
993 (N
: Node_Id
) return Boolean is
996 or else NT
(N
).Nkind
in N_Subexpr
);
1000 function Do_Storage_Check
1001 (N
: Node_Id
) return Boolean is
1003 pragma Assert
(False
1004 or else NT
(N
).Nkind
= N_Allocator
1005 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1007 end Do_Storage_Check
;
1009 function Do_Tag_Check
1010 (N
: Node_Id
) return Boolean is
1012 pragma Assert
(False
1013 or else NT
(N
).Nkind
= N_Assignment_Statement
1014 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1015 or else NT
(N
).Nkind
= N_Function_Call
1016 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1017 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1018 or else NT
(N
).Nkind
= N_Type_Conversion
);
1022 function Elaborate_All_Desirable
1023 (N
: Node_Id
) return Boolean is
1025 pragma Assert
(False
1026 or else NT
(N
).Nkind
= N_With_Clause
);
1028 end Elaborate_All_Desirable
;
1030 function Elaborate_All_Present
1031 (N
: Node_Id
) return Boolean is
1033 pragma Assert
(False
1034 or else NT
(N
).Nkind
= N_With_Clause
);
1036 end Elaborate_All_Present
;
1038 function Elaborate_Desirable
1039 (N
: Node_Id
) return Boolean is
1041 pragma Assert
(False
1042 or else NT
(N
).Nkind
= N_With_Clause
);
1044 end Elaborate_Desirable
;
1046 function Elaborate_Present
1047 (N
: Node_Id
) return Boolean is
1049 pragma Assert
(False
1050 or else NT
(N
).Nkind
= N_With_Clause
);
1052 end Elaborate_Present
;
1054 function Else_Actions
1055 (N
: Node_Id
) return List_Id
is
1057 pragma Assert
(False
1058 or else NT
(N
).Nkind
= N_If_Expression
);
1062 function Else_Statements
1063 (N
: Node_Id
) return List_Id
is
1065 pragma Assert
(False
1066 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1067 or else NT
(N
).Nkind
= N_If_Statement
1068 or else NT
(N
).Nkind
= N_Selective_Accept
);
1070 end Else_Statements
;
1072 function Elsif_Parts
1073 (N
: Node_Id
) return List_Id
is
1075 pragma Assert
(False
1076 or else NT
(N
).Nkind
= N_If_Statement
);
1080 function Enclosing_Variant
1081 (N
: Node_Id
) return Node_Id
is
1083 pragma Assert
(False
1084 or else NT
(N
).Nkind
= N_Variant
);
1086 end Enclosing_Variant
;
1089 (N
: Node_Id
) return Node_Id
is
1091 pragma Assert
(False
1092 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1093 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1094 or else NT
(N
).Nkind
= N_Loop_Statement
1095 or else NT
(N
).Nkind
= N_Package_Specification
1096 or else NT
(N
).Nkind
= N_Protected_Body
1097 or else NT
(N
).Nkind
= N_Protected_Definition
1098 or else NT
(N
).Nkind
= N_Record_Definition
1099 or else NT
(N
).Nkind
= N_Task_Definition
);
1104 (N
: Node_Id
) return Uint
is
1106 pragma Assert
(False
1107 or else NT
(N
).Nkind
= N_Case_Statement
1108 or else NT
(N
).Nkind
= N_If_Statement
);
1113 (N
: Node_Id
) return Node_Id
is
1115 pragma Assert
(False
1116 or else NT
(N
).Nkind
in N_Has_Entity
1117 or else NT
(N
).Nkind
= N_Aspect_Specification
1118 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1119 or else NT
(N
).Nkind
= N_Freeze_Entity
1120 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1124 function Entity_Or_Associated_Node
1125 (N
: Node_Id
) return Node_Id
is
1127 pragma Assert
(False
1128 or else NT
(N
).Nkind
in N_Has_Entity
1129 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1131 end Entity_Or_Associated_Node
;
1133 function Entry_Body_Formal_Part
1134 (N
: Node_Id
) return Node_Id
is
1136 pragma Assert
(False
1137 or else NT
(N
).Nkind
= N_Entry_Body
);
1139 end Entry_Body_Formal_Part
;
1141 function Entry_Call_Alternative
1142 (N
: Node_Id
) return Node_Id
is
1144 pragma Assert
(False
1145 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1146 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1148 end Entry_Call_Alternative
;
1150 function Entry_Call_Statement
1151 (N
: Node_Id
) return Node_Id
is
1153 pragma Assert
(False
1154 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1156 end Entry_Call_Statement
;
1158 function Entry_Direct_Name
1159 (N
: Node_Id
) return Node_Id
is
1161 pragma Assert
(False
1162 or else NT
(N
).Nkind
= N_Accept_Statement
);
1164 end Entry_Direct_Name
;
1166 function Entry_Index
1167 (N
: Node_Id
) return Node_Id
is
1169 pragma Assert
(False
1170 or else NT
(N
).Nkind
= N_Accept_Statement
);
1174 function Entry_Index_Specification
1175 (N
: Node_Id
) return Node_Id
is
1177 pragma Assert
(False
1178 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1180 end Entry_Index_Specification
;
1183 (N
: Node_Id
) return Node_Id
is
1185 pragma Assert
(False
1186 or else NT
(N
).Nkind
in N_Has_Etype
);
1190 function Exception_Choices
1191 (N
: Node_Id
) return List_Id
is
1193 pragma Assert
(False
1194 or else NT
(N
).Nkind
= N_Exception_Handler
);
1196 end Exception_Choices
;
1198 function Exception_Handlers
1199 (N
: Node_Id
) return List_Id
is
1201 pragma Assert
(False
1202 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1204 end Exception_Handlers
;
1206 function Exception_Junk
1207 (N
: Node_Id
) return Boolean is
1209 pragma Assert
(False
1210 or else NT
(N
).Nkind
= N_Block_Statement
1211 or else NT
(N
).Nkind
= N_Goto_Statement
1212 or else NT
(N
).Nkind
= N_Label
1213 or else NT
(N
).Nkind
= N_Object_Declaration
1214 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1218 function Exception_Label
1219 (N
: Node_Id
) return Node_Id
is
1221 pragma Assert
(False
1222 or else NT
(N
).Nkind
= N_Exception_Handler
1223 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1224 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1225 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1227 end Exception_Label
;
1229 function Expansion_Delayed
1230 (N
: Node_Id
) return Boolean is
1232 pragma Assert
(False
1233 or else NT
(N
).Nkind
= N_Aggregate
1234 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1236 end Expansion_Delayed
;
1238 function Explicit_Actual_Parameter
1239 (N
: Node_Id
) return Node_Id
is
1241 pragma Assert
(False
1242 or else NT
(N
).Nkind
= N_Parameter_Association
);
1244 end Explicit_Actual_Parameter
;
1246 function Explicit_Generic_Actual_Parameter
1247 (N
: Node_Id
) return Node_Id
is
1249 pragma Assert
(False
1250 or else NT
(N
).Nkind
= N_Generic_Association
);
1252 end Explicit_Generic_Actual_Parameter
;
1255 (N
: Node_Id
) return Node_Id
is
1257 pragma Assert
(False
1258 or else NT
(N
).Nkind
= N_Allocator
1259 or else NT
(N
).Nkind
= N_Aspect_Specification
1260 or else NT
(N
).Nkind
= N_Assignment_Statement
1261 or else NT
(N
).Nkind
= N_At_Clause
1262 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1263 or else NT
(N
).Nkind
= N_Case_Expression
1264 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1265 or else NT
(N
).Nkind
= N_Case_Statement
1266 or else NT
(N
).Nkind
= N_Code_Statement
1267 or else NT
(N
).Nkind
= N_Component_Association
1268 or else NT
(N
).Nkind
= N_Component_Declaration
1269 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1270 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1271 or else NT
(N
).Nkind
= N_Delta_Aggregate
1272 or else NT
(N
).Nkind
= N_Discriminant_Association
1273 or else NT
(N
).Nkind
= N_Discriminant_Specification
1274 or else NT
(N
).Nkind
= N_Exception_Declaration
1275 or else NT
(N
).Nkind
= N_Expression_Function
1276 or else NT
(N
).Nkind
= N_Expression_With_Actions
1277 or else NT
(N
).Nkind
= N_Free_Statement
1278 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1279 or else NT
(N
).Nkind
= N_Iterated_Element_Association
1280 or else NT
(N
).Nkind
= N_Mod_Clause
1281 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1282 or else NT
(N
).Nkind
= N_Number_Declaration
1283 or else NT
(N
).Nkind
= N_Object_Declaration
1284 or else NT
(N
).Nkind
= N_Parameter_Specification
1285 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1286 or else NT
(N
).Nkind
= N_Qualified_Expression
1287 or else NT
(N
).Nkind
= N_Raise_Expression
1288 or else NT
(N
).Nkind
= N_Raise_Statement
1289 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1290 or else NT
(N
).Nkind
= N_Type_Conversion
1291 or else NT
(N
).Nkind
= N_Unchecked_Expression
1292 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1296 function Expression_Copy
1297 (N
: Node_Id
) return Node_Id
is
1299 pragma Assert
(False
1300 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1302 end Expression_Copy
;
1304 function Expressions
1305 (N
: Node_Id
) return List_Id
is
1307 pragma Assert
(False
1308 or else NT
(N
).Nkind
= N_Aggregate
1309 or else NT
(N
).Nkind
= N_Attribute_Reference
1310 or else NT
(N
).Nkind
= N_Extension_Aggregate
1311 or else NT
(N
).Nkind
= N_If_Expression
1312 or else NT
(N
).Nkind
= N_Indexed_Component
);
1317 (N
: Node_Id
) return Node_Id
is
1319 pragma Assert
(False
1320 or else NT
(N
).Nkind
= N_Component_Clause
);
1324 function First_Inlined_Subprogram
1325 (N
: Node_Id
) return Entity_Id
is
1327 pragma Assert
(False
1328 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1330 end First_Inlined_Subprogram
;
1333 (N
: Node_Id
) return Boolean is
1335 pragma Assert
(False
1336 or else NT
(N
).Nkind
= N_With_Clause
);
1340 function First_Named_Actual
1341 (N
: Node_Id
) return Node_Id
is
1343 pragma Assert
(False
1344 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1345 or else NT
(N
).Nkind
= N_Function_Call
1346 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1348 end First_Named_Actual
;
1350 function First_Real_Statement
1351 (N
: Node_Id
) return Node_Id
is
1353 pragma Assert
(False
1354 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1356 end First_Real_Statement
;
1358 function First_Subtype_Link
1359 (N
: Node_Id
) return Entity_Id
is
1361 pragma Assert
(False
1362 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1364 end First_Subtype_Link
;
1366 function Float_Truncate
1367 (N
: Node_Id
) return Boolean is
1369 pragma Assert
(False
1370 or else NT
(N
).Nkind
= N_Type_Conversion
);
1374 function Formal_Type_Definition
1375 (N
: Node_Id
) return Node_Id
is
1377 pragma Assert
(False
1378 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1380 end Formal_Type_Definition
;
1382 function Forwards_OK
1383 (N
: Node_Id
) return Boolean is
1385 pragma Assert
(False
1386 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1390 function From_Aspect_Specification
1391 (N
: Node_Id
) return Boolean is
1393 pragma Assert
(False
1394 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1395 or else NT
(N
).Nkind
= N_Pragma
);
1397 end From_Aspect_Specification
;
1399 function From_At_End
1400 (N
: Node_Id
) return Boolean is
1402 pragma Assert
(False
1403 or else NT
(N
).Nkind
= N_Raise_Statement
);
1407 function From_At_Mod
1408 (N
: Node_Id
) return Boolean is
1410 pragma Assert
(False
1411 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1415 function From_Conditional_Expression
1416 (N
: Node_Id
) return Boolean is
1418 pragma Assert
(False
1419 or else NT
(N
).Nkind
= N_Case_Statement
1420 or else NT
(N
).Nkind
= N_If_Statement
);
1422 end From_Conditional_Expression
;
1424 function From_Default
1425 (N
: Node_Id
) return Boolean is
1427 pragma Assert
(False
1428 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1432 function Generalized_Indexing
1433 (N
: Node_Id
) return Node_Id
is
1435 pragma Assert
(False
1436 or else NT
(N
).Nkind
= N_Indexed_Component
);
1438 end Generalized_Indexing
;
1440 function Generic_Associations
1441 (N
: Node_Id
) return List_Id
is
1443 pragma Assert
(False
1444 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1445 or else NT
(N
).Nkind
= N_Function_Instantiation
1446 or else NT
(N
).Nkind
= N_Package_Instantiation
1447 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1449 end Generic_Associations
;
1451 function Generic_Formal_Declarations
1452 (N
: Node_Id
) return List_Id
is
1454 pragma Assert
(False
1455 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1456 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1458 end Generic_Formal_Declarations
;
1460 function Generic_Parent
1461 (N
: Node_Id
) return Node_Id
is
1463 pragma Assert
(False
1464 or else NT
(N
).Nkind
= N_Function_Specification
1465 or else NT
(N
).Nkind
= N_Package_Specification
1466 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1470 function Generic_Parent_Type
1471 (N
: Node_Id
) return Node_Id
is
1473 pragma Assert
(False
1474 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1476 end Generic_Parent_Type
;
1478 function Handled_Statement_Sequence
1479 (N
: Node_Id
) return Node_Id
is
1481 pragma Assert
(False
1482 or else NT
(N
).Nkind
= N_Accept_Statement
1483 or else NT
(N
).Nkind
= N_Block_Statement
1484 or else NT
(N
).Nkind
= N_Entry_Body
1485 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1486 or else NT
(N
).Nkind
= N_Package_Body
1487 or else NT
(N
).Nkind
= N_Subprogram_Body
1488 or else NT
(N
).Nkind
= N_Task_Body
);
1490 end Handled_Statement_Sequence
;
1492 function Handler_List_Entry
1493 (N
: Node_Id
) return Node_Id
is
1495 pragma Assert
(False
1496 or else NT
(N
).Nkind
= N_Object_Declaration
);
1498 end Handler_List_Entry
;
1500 function Has_Created_Identifier
1501 (N
: Node_Id
) return Boolean is
1503 pragma Assert
(False
1504 or else NT
(N
).Nkind
= N_Block_Statement
1505 or else NT
(N
).Nkind
= N_Loop_Statement
);
1507 end Has_Created_Identifier
;
1509 function Has_Dereference_Action
1510 (N
: Node_Id
) return Boolean is
1512 pragma Assert
(False
1513 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1515 end Has_Dereference_Action
;
1517 function Has_Dynamic_Length_Check
1518 (N
: Node_Id
) return Boolean is
1520 pragma Assert
(False
1521 or else NT
(N
).Nkind
in N_Subexpr
);
1523 end Has_Dynamic_Length_Check
;
1525 function Has_Init_Expression
1526 (N
: Node_Id
) return Boolean is
1528 pragma Assert
(False
1529 or else NT
(N
).Nkind
= N_Object_Declaration
);
1531 end Has_Init_Expression
;
1533 function Has_Local_Raise
1534 (N
: Node_Id
) return Boolean is
1536 pragma Assert
(False
1537 or else NT
(N
).Nkind
= N_Exception_Handler
);
1539 end Has_Local_Raise
;
1541 function Has_No_Elaboration_Code
1542 (N
: Node_Id
) return Boolean is
1544 pragma Assert
(False
1545 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1547 end Has_No_Elaboration_Code
;
1549 function Has_Pragma_Suppress_All
1550 (N
: Node_Id
) return Boolean is
1552 pragma Assert
(False
1553 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1555 end Has_Pragma_Suppress_All
;
1557 function Has_Private_View
1558 (N
: Node_Id
) return Boolean is
1560 pragma Assert
(False
1561 or else NT
(N
).Nkind
in N_Op
1562 or else NT
(N
).Nkind
= N_Character_Literal
1563 or else NT
(N
).Nkind
= N_Expanded_Name
1564 or else NT
(N
).Nkind
= N_Identifier
1565 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1567 end Has_Private_View
;
1569 function Has_Relative_Deadline_Pragma
1570 (N
: Node_Id
) return Boolean is
1572 pragma Assert
(False
1573 or else NT
(N
).Nkind
= N_Subprogram_Body
1574 or else NT
(N
).Nkind
= N_Task_Definition
);
1576 end Has_Relative_Deadline_Pragma
;
1578 function Has_Self_Reference
1579 (N
: Node_Id
) return Boolean is
1581 pragma Assert
(False
1582 or else NT
(N
).Nkind
= N_Aggregate
1583 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1585 end Has_Self_Reference
;
1587 function Has_SP_Choice
1588 (N
: Node_Id
) return Boolean is
1590 pragma Assert
(False
1591 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1592 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1593 or else NT
(N
).Nkind
= N_Variant
);
1597 function Has_Storage_Size_Pragma
1598 (N
: Node_Id
) return Boolean is
1600 pragma Assert
(False
1601 or else NT
(N
).Nkind
= N_Task_Definition
);
1603 end Has_Storage_Size_Pragma
;
1605 function Has_Target_Names
1606 (N
: Node_Id
) return Boolean is
1608 pragma Assert
(False
1609 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1611 end Has_Target_Names
;
1613 function Has_Wide_Character
1614 (N
: Node_Id
) return Boolean is
1616 pragma Assert
(False
1617 or else NT
(N
).Nkind
= N_String_Literal
);
1619 end Has_Wide_Character
;
1621 function Has_Wide_Wide_Character
1622 (N
: Node_Id
) return Boolean is
1624 pragma Assert
(False
1625 or else NT
(N
).Nkind
= N_String_Literal
);
1627 end Has_Wide_Wide_Character
;
1629 function Header_Size_Added
1630 (N
: Node_Id
) return Boolean is
1632 pragma Assert
(False
1633 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1635 end Header_Size_Added
;
1637 function Hidden_By_Use_Clause
1638 (N
: Node_Id
) return Elist_Id
is
1640 pragma Assert
(False
1641 or else NT
(N
).Nkind
= N_Use_Package_Clause
1642 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1644 end Hidden_By_Use_Clause
;
1647 (N
: Node_Id
) return Node_Id
is
1649 pragma Assert
(False
1650 or else NT
(N
).Nkind
= N_Range
1651 or else NT
(N
).Nkind
= N_Real_Range_Specification
1652 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1657 (N
: Node_Id
) return Node_Id
is
1659 pragma Assert
(False
1660 or else NT
(N
).Nkind
= N_Aspect_Specification
1661 or else NT
(N
).Nkind
= N_At_Clause
1662 or else NT
(N
).Nkind
= N_Block_Statement
1663 or else NT
(N
).Nkind
= N_Designator
1664 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1665 or else NT
(N
).Nkind
= N_Label
1666 or else NT
(N
).Nkind
= N_Loop_Statement
1667 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1671 function Implicit_With
1672 (N
: Node_Id
) return Boolean is
1674 pragma Assert
(False
1675 or else NT
(N
).Nkind
= N_With_Clause
);
1679 function Interface_List
1680 (N
: Node_Id
) return List_Id
is
1682 pragma Assert
(False
1683 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1684 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1685 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1686 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1687 or else NT
(N
).Nkind
= N_Record_Definition
1688 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1689 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1690 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1694 function Interface_Present
1695 (N
: Node_Id
) return Boolean is
1697 pragma Assert
(False
1698 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1699 or else NT
(N
).Nkind
= N_Record_Definition
);
1701 end Interface_Present
;
1703 function Import_Interface_Present
1704 (N
: Node_Id
) return Boolean is
1706 pragma Assert
(False
1707 or else NT
(N
).Nkind
= N_Pragma
);
1709 end Import_Interface_Present
;
1712 (N
: Node_Id
) return Boolean is
1714 pragma Assert
(False
1715 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1716 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1720 function Includes_Infinities
1721 (N
: Node_Id
) return Boolean is
1723 pragma Assert
(False
1724 or else NT
(N
).Nkind
= N_Range
);
1726 end Includes_Infinities
;
1728 function Incomplete_View
1729 (N
: Node_Id
) return Node_Id
is
1731 pragma Assert
(False
1732 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1734 end Incomplete_View
;
1736 function Inherited_Discriminant
1737 (N
: Node_Id
) return Boolean is
1739 pragma Assert
(False
1740 or else NT
(N
).Nkind
= N_Component_Association
);
1742 end Inherited_Discriminant
;
1744 function Instance_Spec
1745 (N
: Node_Id
) return Node_Id
is
1747 pragma Assert
(False
1748 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1749 or else NT
(N
).Nkind
= N_Function_Instantiation
1750 or else NT
(N
).Nkind
= N_Package_Instantiation
1751 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1756 (N
: Node_Id
) return Uint
is
1758 pragma Assert
(False
1759 or else NT
(N
).Nkind
= N_Integer_Literal
);
1763 function Is_Abort_Block
1764 (N
: Node_Id
) return Boolean is
1766 pragma Assert
(False
1767 or else NT
(N
).Nkind
= N_Block_Statement
);
1771 function Is_Accessibility_Actual
1772 (N
: Node_Id
) return Boolean is
1774 pragma Assert
(False
1775 or else NT
(N
).Nkind
= N_Parameter_Association
);
1777 end Is_Accessibility_Actual
;
1779 function Is_Analyzed_Pragma
1780 (N
: Node_Id
) return Boolean is
1782 pragma Assert
(False
1783 or else NT
(N
).Nkind
= N_Pragma
);
1785 end Is_Analyzed_Pragma
;
1787 function Is_Asynchronous_Call_Block
1788 (N
: Node_Id
) return Boolean is
1790 pragma Assert
(False
1791 or else NT
(N
).Nkind
= N_Block_Statement
);
1793 end Is_Asynchronous_Call_Block
;
1795 function Is_Boolean_Aspect
1796 (N
: Node_Id
) return Boolean is
1798 pragma Assert
(False
1799 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1801 end Is_Boolean_Aspect
;
1804 (N
: Node_Id
) return Boolean is
1806 pragma Assert
(False
1807 or else NT
(N
).Nkind
= N_Aspect_Specification
1808 or else NT
(N
).Nkind
= N_Pragma
);
1812 function Is_Checked_Ghost_Pragma
1813 (N
: Node_Id
) return Boolean is
1815 pragma Assert
(False
1816 or else NT
(N
).Nkind
= N_Pragma
);
1818 end Is_Checked_Ghost_Pragma
;
1820 function Is_Component_Left_Opnd
1821 (N
: Node_Id
) return Boolean is
1823 pragma Assert
(False
1824 or else NT
(N
).Nkind
= N_Op_Concat
);
1826 end Is_Component_Left_Opnd
;
1828 function Is_Component_Right_Opnd
1829 (N
: Node_Id
) return Boolean is
1831 pragma Assert
(False
1832 or else NT
(N
).Nkind
= N_Op_Concat
);
1834 end Is_Component_Right_Opnd
;
1836 function Is_Controlling_Actual
1837 (N
: Node_Id
) return Boolean is
1839 pragma Assert
(False
1840 or else NT
(N
).Nkind
in N_Subexpr
);
1842 end Is_Controlling_Actual
;
1844 function Is_Declaration_Level_Node
1845 (N
: Node_Id
) return Boolean is
1847 pragma Assert
(False
1848 or else NT
(N
).Nkind
= N_Call_Marker
1849 or else NT
(N
).Nkind
= N_Function_Instantiation
1850 or else NT
(N
).Nkind
= N_Package_Instantiation
1851 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1853 end Is_Declaration_Level_Node
;
1855 function Is_Delayed_Aspect
1856 (N
: Node_Id
) return Boolean is
1858 pragma Assert
(False
1859 or else NT
(N
).Nkind
= N_Aspect_Specification
1860 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1861 or else NT
(N
).Nkind
= N_Pragma
);
1863 end Is_Delayed_Aspect
;
1865 function Is_Disabled
1866 (N
: Node_Id
) return Boolean is
1868 pragma Assert
(False
1869 or else NT
(N
).Nkind
= N_Aspect_Specification
1870 or else NT
(N
).Nkind
= N_Pragma
);
1874 function Is_Dispatching_Call
1875 (N
: Node_Id
) return Boolean is
1877 pragma Assert
(False
1878 or else NT
(N
).Nkind
= N_Call_Marker
);
1880 end Is_Dispatching_Call
;
1882 function Is_Dynamic_Coextension
1883 (N
: Node_Id
) return Boolean is
1885 pragma Assert
(False
1886 or else NT
(N
).Nkind
= N_Allocator
);
1888 end Is_Dynamic_Coextension
;
1890 function Is_Effective_Use_Clause
1891 (N
: Node_Id
) return Boolean is
1893 pragma Assert
(False
1894 or else NT
(N
).Nkind
= N_Use_Package_Clause
1895 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1897 end Is_Effective_Use_Clause
;
1899 function Is_Elaboration_Checks_OK_Node
1900 (N
: Node_Id
) return Boolean is
1902 pragma Assert
(False
1903 or else NT
(N
).Nkind
= N_Assignment_Statement
1904 or else NT
(N
).Nkind
= N_Attribute_Reference
1905 or else NT
(N
).Nkind
= N_Call_Marker
1906 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1907 or else NT
(N
).Nkind
= N_Expanded_Name
1908 or else NT
(N
).Nkind
= N_Function_Call
1909 or else NT
(N
).Nkind
= N_Function_Instantiation
1910 or else NT
(N
).Nkind
= N_Identifier
1911 or else NT
(N
).Nkind
= N_Package_Instantiation
1912 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1913 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1914 or else NT
(N
).Nkind
= N_Requeue_Statement
1915 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
1917 end Is_Elaboration_Checks_OK_Node
;
1919 function Is_Elaboration_Code
1920 (N
: Node_Id
) return Boolean is
1922 pragma Assert
(False
1923 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1925 end Is_Elaboration_Code
;
1927 function Is_Elaboration_Warnings_OK_Node
1928 (N
: Node_Id
) return Boolean is
1930 pragma Assert
(False
1931 or else NT
(N
).Nkind
= N_Attribute_Reference
1932 or else NT
(N
).Nkind
= N_Call_Marker
1933 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1934 or else NT
(N
).Nkind
= N_Expanded_Name
1935 or else NT
(N
).Nkind
= N_Function_Call
1936 or else NT
(N
).Nkind
= N_Function_Instantiation
1937 or else NT
(N
).Nkind
= N_Identifier
1938 or else NT
(N
).Nkind
= N_Package_Instantiation
1939 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1940 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1941 or else NT
(N
).Nkind
= N_Requeue_Statement
1942 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
1944 end Is_Elaboration_Warnings_OK_Node
;
1947 (N
: Node_Id
) return Boolean is
1949 pragma Assert
(False
1950 or else NT
(N
).Nkind
= N_If_Expression
);
1954 function Is_Entry_Barrier_Function
1955 (N
: Node_Id
) return Boolean is
1957 pragma Assert
(False
1958 or else NT
(N
).Nkind
= N_Subprogram_Body
1959 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1961 end Is_Entry_Barrier_Function
;
1963 function Is_Expanded_Build_In_Place_Call
1964 (N
: Node_Id
) return Boolean is
1966 pragma Assert
(False
1967 or else NT
(N
).Nkind
= N_Function_Call
);
1969 end Is_Expanded_Build_In_Place_Call
;
1971 function Is_Expanded_Contract
1972 (N
: Node_Id
) return Boolean is
1974 pragma Assert
(False
1975 or else NT
(N
).Nkind
= N_Contract
);
1977 end Is_Expanded_Contract
;
1979 function Is_Finalization_Wrapper
1980 (N
: Node_Id
) return Boolean is
1982 pragma Assert
(False
1983 or else NT
(N
).Nkind
= N_Block_Statement
);
1985 end Is_Finalization_Wrapper
;
1987 function Is_Folded_In_Parser
1988 (N
: Node_Id
) return Boolean is
1990 pragma Assert
(False
1991 or else NT
(N
).Nkind
= N_String_Literal
);
1993 end Is_Folded_In_Parser
;
1995 function Is_Generic_Contract_Pragma
1996 (N
: Node_Id
) return Boolean is
1998 pragma Assert
(False
1999 or else NT
(N
).Nkind
= N_Pragma
);
2001 end Is_Generic_Contract_Pragma
;
2003 function Is_Homogeneous_Aggregate
2004 (N
: Node_Id
) return Boolean is
2006 pragma Assert
(False
2007 or else NT
(N
).Nkind
= N_Aggregate
);
2009 end Is_Homogeneous_Aggregate
;
2012 (N
: Node_Id
) return Boolean is
2014 pragma Assert
(False
2015 or else NT
(N
).Nkind
= N_Aspect_Specification
2016 or else NT
(N
).Nkind
= N_Pragma
);
2020 function Is_Ignored_Ghost_Pragma
2021 (N
: Node_Id
) return Boolean is
2023 pragma Assert
(False
2024 or else NT
(N
).Nkind
= N_Pragma
);
2026 end Is_Ignored_Ghost_Pragma
;
2028 function Is_In_Discriminant_Check
2029 (N
: Node_Id
) return Boolean is
2031 pragma Assert
(False
2032 or else NT
(N
).Nkind
= N_Selected_Component
);
2034 end Is_In_Discriminant_Check
;
2036 function Is_Inherited_Pragma
2037 (N
: Node_Id
) return Boolean is
2039 pragma Assert
(False
2040 or else NT
(N
).Nkind
= N_Pragma
);
2042 end Is_Inherited_Pragma
;
2044 function Is_Initialization_Block
2045 (N
: Node_Id
) return Boolean is
2047 pragma Assert
(False
2048 or else NT
(N
).Nkind
= N_Block_Statement
);
2050 end Is_Initialization_Block
;
2052 function Is_Known_Guaranteed_ABE
2053 (N
: Node_Id
) return Boolean is
2055 pragma Assert
(False
2056 or else NT
(N
).Nkind
= N_Call_Marker
2057 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2058 or else NT
(N
).Nkind
= N_Function_Call
2059 or else NT
(N
).Nkind
= N_Function_Instantiation
2060 or else NT
(N
).Nkind
= N_Package_Instantiation
2061 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2062 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2064 end Is_Known_Guaranteed_ABE
;
2066 function Is_Machine_Number
2067 (N
: Node_Id
) return Boolean is
2069 pragma Assert
(False
2070 or else NT
(N
).Nkind
= N_Real_Literal
);
2072 end Is_Machine_Number
;
2074 function Is_Null_Loop
2075 (N
: Node_Id
) return Boolean is
2077 pragma Assert
(False
2078 or else NT
(N
).Nkind
= N_Loop_Statement
);
2082 function Is_Overloaded
2083 (N
: Node_Id
) return Boolean is
2085 pragma Assert
(False
2086 or else NT
(N
).Nkind
in N_Subexpr
);
2090 function Is_Power_Of_2_For_Shift
2091 (N
: Node_Id
) return Boolean is
2093 pragma Assert
(False
2094 or else NT
(N
).Nkind
= N_Op_Expon
);
2096 end Is_Power_Of_2_For_Shift
;
2098 function Is_Preelaborable_Call
2099 (N
: Node_Id
) return Boolean is
2101 pragma Assert
(False
2102 or else NT
(N
).Nkind
= N_Call_Marker
);
2104 end Is_Preelaborable_Call
;
2106 function Is_Prefixed_Call
2107 (N
: Node_Id
) return Boolean is
2109 pragma Assert
(False
2110 or else NT
(N
).Nkind
= N_Selected_Component
);
2112 end Is_Prefixed_Call
;
2114 function Is_Protected_Subprogram_Body
2115 (N
: Node_Id
) return Boolean is
2117 pragma Assert
(False
2118 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2120 end Is_Protected_Subprogram_Body
;
2122 function Is_Qualified_Universal_Literal
2123 (N
: Node_Id
) return Boolean is
2125 pragma Assert
(False
2126 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2128 end Is_Qualified_Universal_Literal
;
2131 (N
: Node_Id
) return Boolean is
2133 pragma Assert
(False
2134 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2138 function Is_Source_Call
2139 (N
: Node_Id
) return Boolean is
2141 pragma Assert
(False
2142 or else NT
(N
).Nkind
= N_Call_Marker
);
2146 function Is_SPARK_Mode_On_Node
2147 (N
: Node_Id
) return Boolean is
2149 pragma Assert
(False
2150 or else NT
(N
).Nkind
= N_Assignment_Statement
2151 or else NT
(N
).Nkind
= N_Attribute_Reference
2152 or else NT
(N
).Nkind
= N_Call_Marker
2153 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2154 or else NT
(N
).Nkind
= N_Expanded_Name
2155 or else NT
(N
).Nkind
= N_Function_Call
2156 or else NT
(N
).Nkind
= N_Function_Instantiation
2157 or else NT
(N
).Nkind
= N_Identifier
2158 or else NT
(N
).Nkind
= N_Package_Instantiation
2159 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2160 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2161 or else NT
(N
).Nkind
= N_Requeue_Statement
2162 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2164 end Is_SPARK_Mode_On_Node
;
2166 function Is_Static_Coextension
2167 (N
: Node_Id
) return Boolean is
2169 pragma Assert
(False
2170 or else NT
(N
).Nkind
= N_Allocator
);
2172 end Is_Static_Coextension
;
2174 function Is_Static_Expression
2175 (N
: Node_Id
) return Boolean is
2177 pragma Assert
(False
2178 or else NT
(N
).Nkind
in N_Subexpr
);
2180 end Is_Static_Expression
;
2182 function Is_Subprogram_Descriptor
2183 (N
: Node_Id
) return Boolean is
2185 pragma Assert
(False
2186 or else NT
(N
).Nkind
= N_Object_Declaration
);
2188 end Is_Subprogram_Descriptor
;
2190 function Is_Task_Allocation_Block
2191 (N
: Node_Id
) return Boolean is
2193 pragma Assert
(False
2194 or else NT
(N
).Nkind
= N_Block_Statement
);
2196 end Is_Task_Allocation_Block
;
2198 function Is_Task_Body_Procedure
2199 (N
: Node_Id
) return Boolean is
2201 pragma Assert
(False
2202 or else NT
(N
).Nkind
= N_Subprogram_Body
2203 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2205 end Is_Task_Body_Procedure
;
2207 function Is_Task_Master
2208 (N
: Node_Id
) return Boolean is
2210 pragma Assert
(False
2211 or else NT
(N
).Nkind
= N_Block_Statement
2212 or else NT
(N
).Nkind
= N_Subprogram_Body
2213 or else NT
(N
).Nkind
= N_Task_Body
);
2218 (N
: Node_Id
) return Boolean is
2220 pragma Assert
(False
2221 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2225 function Iterator_Filter
2226 (N
: Node_Id
) return Node_Id
is
2228 pragma Assert
(False
2229 or else NT
(N
).Nkind
= N_Iterator_Specification
2230 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
2232 end Iterator_Filter
;
2234 function Iteration_Scheme
2235 (N
: Node_Id
) return Node_Id
is
2237 pragma Assert
(False
2238 or else NT
(N
).Nkind
= N_Loop_Statement
);
2240 end Iteration_Scheme
;
2242 function Iterator_Specification
2243 (N
: Node_Id
) return Node_Id
is
2245 pragma Assert
(False
2246 or else NT
(N
).Nkind
= N_Iterated_Component_Association
2247 or else NT
(N
).Nkind
= N_Iterated_Element_Association
2248 or else NT
(N
).Nkind
= N_Iteration_Scheme
2249 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2251 end Iterator_Specification
;
2254 (N
: Node_Id
) return Node_Id
is
2256 pragma Assert
(False
2257 or else NT
(N
).Nkind
= N_Itype_Reference
);
2261 function Key_Expression
2262 (N
: Node_Id
) return Node_Id
is
2264 pragma Assert
(False
2265 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
2269 function Kill_Range_Check
2270 (N
: Node_Id
) return Boolean is
2272 pragma Assert
(False
2273 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2275 end Kill_Range_Check
;
2277 function Label_Construct
2278 (N
: Node_Id
) return Node_Id
is
2280 pragma Assert
(False
2281 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2283 end Label_Construct
;
2286 (N
: Node_Id
) return Node_Id
is
2288 pragma Assert
(False
2289 or else NT
(N
).Nkind
= N_Component_Clause
);
2294 (N
: Node_Id
) return Boolean is
2296 pragma Assert
(False
2297 or else NT
(N
).Nkind
= N_With_Clause
);
2302 (N
: Node_Id
) return Node_Id
is
2304 pragma Assert
(False
2305 or else NT
(N
).Nkind
= N_And_Then
2306 or else NT
(N
).Nkind
= N_In
2307 or else NT
(N
).Nkind
= N_Not_In
2308 or else NT
(N
).Nkind
= N_Or_Else
2309 or else NT
(N
).Nkind
in N_Binary_Op
);
2313 function Library_Unit
2314 (N
: Node_Id
) return Node_Id
is
2316 pragma Assert
(False
2317 or else NT
(N
).Nkind
= N_Compilation_Unit
2318 or else NT
(N
).Nkind
= N_Package_Body_Stub
2319 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2320 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2321 or else NT
(N
).Nkind
= N_Task_Body_Stub
2322 or else NT
(N
).Nkind
= N_With_Clause
);
2326 function Limited_View_Installed
2327 (N
: Node_Id
) return Boolean is
2329 pragma Assert
(False
2330 or else NT
(N
).Nkind
= N_Package_Specification
2331 or else NT
(N
).Nkind
= N_With_Clause
);
2333 end Limited_View_Installed
;
2335 function Limited_Present
2336 (N
: Node_Id
) return Boolean is
2338 pragma Assert
(False
2339 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2340 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2341 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2342 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2343 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2344 or else NT
(N
).Nkind
= N_Record_Definition
2345 or else NT
(N
).Nkind
= N_With_Clause
);
2347 end Limited_Present
;
2350 (N
: Node_Id
) return List_Id
is
2352 pragma Assert
(False
2353 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2357 function Local_Raise_Not_OK
2358 (N
: Node_Id
) return Boolean is
2360 pragma Assert
(False
2361 or else NT
(N
).Nkind
= N_Exception_Handler
);
2363 end Local_Raise_Not_OK
;
2365 function Local_Raise_Statements
2366 (N
: Node_Id
) return Elist_Id
is
2368 pragma Assert
(False
2369 or else NT
(N
).Nkind
= N_Exception_Handler
);
2371 end Local_Raise_Statements
;
2373 function Loop_Actions
2374 (N
: Node_Id
) return List_Id
is
2376 pragma Assert
(False
2377 or else NT
(N
).Nkind
= N_Component_Association
2378 or else NT
(N
).Nkind
= N_Iterated_Component_Association
2379 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
2383 function Loop_Parameter_Specification
2384 (N
: Node_Id
) return Node_Id
is
2386 pragma Assert
(False
2387 or else NT
(N
).Nkind
= N_Iterated_Element_Association
2388 or else NT
(N
).Nkind
= N_Iteration_Scheme
2389 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2391 end Loop_Parameter_Specification
;
2394 (N
: Node_Id
) return Node_Id
is
2396 pragma Assert
(False
2397 or else NT
(N
).Nkind
= N_Range
2398 or else NT
(N
).Nkind
= N_Real_Range_Specification
2399 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2404 (N
: Node_Id
) return Node_Id
is
2406 pragma Assert
(False
2407 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2412 (N
: Node_Id
) return Boolean is
2414 pragma Assert
(False
2415 or else NT
(N
).Nkind
= N_Component_Declaration
2416 or else NT
(N
).Nkind
= N_Discriminant_Specification
2417 or else NT
(N
).Nkind
= N_Exception_Declaration
2418 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2419 or else NT
(N
).Nkind
= N_Number_Declaration
2420 or else NT
(N
).Nkind
= N_Object_Declaration
2421 or else NT
(N
).Nkind
= N_Parameter_Specification
2422 or else NT
(N
).Nkind
= N_Use_Package_Clause
2423 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2427 function Must_Be_Byte_Aligned
2428 (N
: Node_Id
) return Boolean is
2430 pragma Assert
(False
2431 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2433 end Must_Be_Byte_Aligned
;
2435 function Must_Not_Freeze
2436 (N
: Node_Id
) return Boolean is
2438 pragma Assert
(False
2439 or else NT
(N
).Nkind
= N_Subtype_Indication
2440 or else NT
(N
).Nkind
in N_Subexpr
);
2442 end Must_Not_Freeze
;
2444 function Must_Not_Override
2445 (N
: Node_Id
) return Boolean is
2447 pragma Assert
(False
2448 or else NT
(N
).Nkind
= N_Entry_Declaration
2449 or else NT
(N
).Nkind
= N_Function_Instantiation
2450 or else NT
(N
).Nkind
= N_Function_Specification
2451 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2452 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2454 end Must_Not_Override
;
2456 function Must_Override
2457 (N
: Node_Id
) return Boolean is
2459 pragma Assert
(False
2460 or else NT
(N
).Nkind
= N_Entry_Declaration
2461 or else NT
(N
).Nkind
= N_Function_Instantiation
2462 or else NT
(N
).Nkind
= N_Function_Specification
2463 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2464 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2469 (N
: Node_Id
) return Node_Id
is
2471 pragma Assert
(False
2472 or else NT
(N
).Nkind
= N_Assignment_Statement
2473 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2474 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2475 or else NT
(N
).Nkind
= N_Designator
2476 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2477 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2478 or else NT
(N
).Nkind
= N_Exit_Statement
2479 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2480 or else NT
(N
).Nkind
= N_Function_Call
2481 or else NT
(N
).Nkind
= N_Function_Instantiation
2482 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2483 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2484 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2485 or else NT
(N
).Nkind
= N_Goto_Statement
2486 or else NT
(N
).Nkind
= N_Iterator_Specification
2487 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2488 or else NT
(N
).Nkind
= N_Package_Instantiation
2489 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2490 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2491 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2492 or else NT
(N
).Nkind
= N_Raise_Expression
2493 or else NT
(N
).Nkind
= N_Raise_Statement
2494 or else NT
(N
).Nkind
= N_Requeue_Statement
2495 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2496 or else NT
(N
).Nkind
= N_Subunit
2497 or else NT
(N
).Nkind
= N_Use_Package_Clause
2498 or else NT
(N
).Nkind
= N_Variant_Part
2499 or else NT
(N
).Nkind
= N_With_Clause
);
2504 (N
: Node_Id
) return List_Id
is
2506 pragma Assert
(False
2507 or else NT
(N
).Nkind
= N_Abort_Statement
);
2511 function Next_Entity
2512 (N
: Node_Id
) return Node_Id
is
2514 pragma Assert
(False
2515 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2516 or else NT
(N
).Nkind
= N_Defining_Identifier
2517 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2521 function Next_Exit_Statement
2522 (N
: Node_Id
) return Node_Id
is
2524 pragma Assert
(False
2525 or else NT
(N
).Nkind
= N_Exit_Statement
);
2527 end Next_Exit_Statement
;
2529 function Next_Implicit_With
2530 (N
: Node_Id
) return Node_Id
is
2532 pragma Assert
(False
2533 or else NT
(N
).Nkind
= N_With_Clause
);
2535 end Next_Implicit_With
;
2537 function Next_Named_Actual
2538 (N
: Node_Id
) return Node_Id
is
2540 pragma Assert
(False
2541 or else NT
(N
).Nkind
= N_Parameter_Association
);
2543 end Next_Named_Actual
;
2545 function Next_Pragma
2546 (N
: Node_Id
) return Node_Id
is
2548 pragma Assert
(False
2549 or else NT
(N
).Nkind
= N_Pragma
);
2553 function Next_Rep_Item
2554 (N
: Node_Id
) return Node_Id
is
2556 pragma Assert
(False
2557 or else NT
(N
).Nkind
= N_Aspect_Specification
2558 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2559 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2560 or else NT
(N
).Nkind
= N_Null_Statement
2561 or else NT
(N
).Nkind
= N_Pragma
2562 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2566 function Next_Use_Clause
2567 (N
: Node_Id
) return Node_Id
is
2569 pragma Assert
(False
2570 or else NT
(N
).Nkind
= N_Use_Package_Clause
2571 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2573 end Next_Use_Clause
;
2575 function No_Ctrl_Actions
2576 (N
: Node_Id
) return Boolean is
2578 pragma Assert
(False
2579 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2581 end No_Ctrl_Actions
;
2583 function No_Elaboration_Check
2584 (N
: Node_Id
) return Boolean is
2586 pragma Assert
(False
2587 or else NT
(N
).Nkind
= N_Function_Call
2588 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2590 end No_Elaboration_Check
;
2592 function No_Entities_Ref_In_Spec
2593 (N
: Node_Id
) return Boolean is
2595 pragma Assert
(False
2596 or else NT
(N
).Nkind
= N_With_Clause
);
2598 end No_Entities_Ref_In_Spec
;
2600 function No_Initialization
2601 (N
: Node_Id
) return Boolean is
2603 pragma Assert
(False
2604 or else NT
(N
).Nkind
= N_Allocator
2605 or else NT
(N
).Nkind
= N_Object_Declaration
);
2607 end No_Initialization
;
2609 function No_Minimize_Eliminate
2610 (N
: Node_Id
) return Boolean is
2612 pragma Assert
(False
2613 or else NT
(N
).Nkind
= N_In
2614 or else NT
(N
).Nkind
= N_Not_In
);
2616 end No_Minimize_Eliminate
;
2618 function No_Side_Effect_Removal
2619 (N
: Node_Id
) return Boolean is
2621 pragma Assert
(False
2622 or else NT
(N
).Nkind
= N_Function_Call
);
2624 end No_Side_Effect_Removal
;
2626 function No_Truncation
2627 (N
: Node_Id
) return Boolean is
2629 pragma Assert
(False
2630 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2634 function Null_Excluding_Subtype
2635 (N
: Node_Id
) return Boolean is
2637 pragma Assert
(False
2638 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2640 end Null_Excluding_Subtype
;
2642 function Null_Exclusion_Present
2643 (N
: Node_Id
) return Boolean is
2645 pragma Assert
(False
2646 or else NT
(N
).Nkind
= N_Access_Definition
2647 or else NT
(N
).Nkind
= N_Access_Function_Definition
2648 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2649 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2650 or else NT
(N
).Nkind
= N_Allocator
2651 or else NT
(N
).Nkind
= N_Component_Definition
2652 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2653 or else NT
(N
).Nkind
= N_Discriminant_Specification
2654 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2655 or else NT
(N
).Nkind
= N_Function_Specification
2656 or else NT
(N
).Nkind
= N_Object_Declaration
2657 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2658 or else NT
(N
).Nkind
= N_Parameter_Specification
2659 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2661 end Null_Exclusion_Present
;
2663 function Null_Exclusion_In_Return_Present
2664 (N
: Node_Id
) return Boolean is
2666 pragma Assert
(False
2667 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2669 end Null_Exclusion_In_Return_Present
;
2671 function Null_Present
2672 (N
: Node_Id
) return Boolean is
2674 pragma Assert
(False
2675 or else NT
(N
).Nkind
= N_Component_List
2676 or else NT
(N
).Nkind
= N_Procedure_Specification
2677 or else NT
(N
).Nkind
= N_Record_Definition
);
2681 function Null_Record_Present
2682 (N
: Node_Id
) return Boolean is
2684 pragma Assert
(False
2685 or else NT
(N
).Nkind
= N_Aggregate
2686 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2688 end Null_Record_Present
;
2690 function Null_Statement
2691 (N
: Node_Id
) return Node_Id
is
2693 pragma Assert
(False
2694 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2698 function Object_Definition
2699 (N
: Node_Id
) return Node_Id
is
2701 pragma Assert
(False
2702 or else NT
(N
).Nkind
= N_Object_Declaration
);
2704 end Object_Definition
;
2707 (N
: Node_Id
) return Boolean is
2709 pragma Assert
(False
2710 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2714 function Original_Discriminant
2715 (N
: Node_Id
) return Node_Id
is
2717 pragma Assert
(False
2718 or else NT
(N
).Nkind
= N_Identifier
);
2720 end Original_Discriminant
;
2722 function Original_Entity
2723 (N
: Node_Id
) return Entity_Id
is
2725 pragma Assert
(False
2726 or else NT
(N
).Nkind
= N_Integer_Literal
2727 or else NT
(N
).Nkind
= N_Real_Literal
);
2729 end Original_Entity
;
2731 function Others_Discrete_Choices
2732 (N
: Node_Id
) return List_Id
is
2734 pragma Assert
(False
2735 or else NT
(N
).Nkind
= N_Others_Choice
);
2737 end Others_Discrete_Choices
;
2739 function Out_Present
2740 (N
: Node_Id
) return Boolean is
2742 pragma Assert
(False
2743 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2744 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2748 function Parameter_Associations
2749 (N
: Node_Id
) return List_Id
is
2751 pragma Assert
(False
2752 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2753 or else NT
(N
).Nkind
= N_Function_Call
2754 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2756 end Parameter_Associations
;
2758 function Parameter_Specifications
2759 (N
: Node_Id
) return List_Id
is
2761 pragma Assert
(False
2762 or else NT
(N
).Nkind
= N_Accept_Statement
2763 or else NT
(N
).Nkind
= N_Access_Function_Definition
2764 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2765 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2766 or else NT
(N
).Nkind
= N_Entry_Declaration
2767 or else NT
(N
).Nkind
= N_Function_Specification
2768 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2770 end Parameter_Specifications
;
2772 function Parameter_Type
2773 (N
: Node_Id
) return Node_Id
is
2775 pragma Assert
(False
2776 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2780 function Parent_Spec
2781 (N
: Node_Id
) return Node_Id
is
2783 pragma Assert
(False
2784 or else NT
(N
).Nkind
= N_Function_Instantiation
2785 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2786 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2787 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2788 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2789 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2790 or else NT
(N
).Nkind
= N_Package_Declaration
2791 or else NT
(N
).Nkind
= N_Package_Instantiation
2792 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2793 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2794 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2795 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2799 function Parent_With
2800 (N
: Node_Id
) return Boolean is
2802 pragma Assert
(False
2803 or else NT
(N
).Nkind
= N_With_Clause
);
2808 (N
: Node_Id
) return Node_Id
is
2810 pragma Assert
(False
2811 or else NT
(N
).Nkind
= N_Component_Clause
);
2815 function Pragma_Argument_Associations
2816 (N
: Node_Id
) return List_Id
is
2818 pragma Assert
(False
2819 or else NT
(N
).Nkind
= N_Pragma
);
2821 end Pragma_Argument_Associations
;
2823 function Pragma_Identifier
2824 (N
: Node_Id
) return Node_Id
is
2826 pragma Assert
(False
2827 or else NT
(N
).Nkind
= N_Pragma
);
2829 end Pragma_Identifier
;
2831 function Pragmas_After
2832 (N
: Node_Id
) return List_Id
is
2834 pragma Assert
(False
2835 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2836 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2840 function Pragmas_Before
2841 (N
: Node_Id
) return List_Id
is
2843 pragma Assert
(False
2844 or else NT
(N
).Nkind
= N_Accept_Alternative
2845 or else NT
(N
).Nkind
= N_Delay_Alternative
2846 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2847 or else NT
(N
).Nkind
= N_Mod_Clause
2848 or else NT
(N
).Nkind
= N_Terminate_Alternative
2849 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2853 function Pre_Post_Conditions
2854 (N
: Node_Id
) return Node_Id
is
2856 pragma Assert
(False
2857 or else NT
(N
).Nkind
= N_Contract
);
2859 end Pre_Post_Conditions
;
2862 (N
: Node_Id
) return Node_Id
is
2864 pragma Assert
(False
2865 or else NT
(N
).Nkind
= N_Attribute_Reference
2866 or else NT
(N
).Nkind
= N_Expanded_Name
2867 or else NT
(N
).Nkind
= N_Explicit_Dereference
2868 or else NT
(N
).Nkind
= N_Indexed_Component
2869 or else NT
(N
).Nkind
= N_Reference
2870 or else NT
(N
).Nkind
= N_Selected_Component
2871 or else NT
(N
).Nkind
= N_Slice
);
2875 function Premature_Use
2876 (N
: Node_Id
) return Node_Id
is
2878 pragma Assert
(False
2879 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2883 function Present_Expr
2884 (N
: Node_Id
) return Uint
is
2886 pragma Assert
(False
2887 or else NT
(N
).Nkind
= N_Variant
);
2892 (N
: Node_Id
) return Boolean is
2894 pragma Assert
(False
2895 or else NT
(N
).Nkind
= N_Component_Declaration
2896 or else NT
(N
).Nkind
= N_Discriminant_Specification
2897 or else NT
(N
).Nkind
= N_Exception_Declaration
2898 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2899 or else NT
(N
).Nkind
= N_Number_Declaration
2900 or else NT
(N
).Nkind
= N_Object_Declaration
2901 or else NT
(N
).Nkind
= N_Parameter_Specification
2902 or else NT
(N
).Nkind
= N_Use_Package_Clause
2903 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2907 function Prev_Use_Clause
2908 (N
: Node_Id
) return Node_Id
is
2910 pragma Assert
(False
2911 or else NT
(N
).Nkind
= N_Use_Package_Clause
2912 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2914 end Prev_Use_Clause
;
2916 function Print_In_Hex
2917 (N
: Node_Id
) return Boolean is
2919 pragma Assert
(False
2920 or else NT
(N
).Nkind
= N_Integer_Literal
);
2924 function Private_Declarations
2925 (N
: Node_Id
) return List_Id
is
2927 pragma Assert
(False
2928 or else NT
(N
).Nkind
= N_Package_Specification
2929 or else NT
(N
).Nkind
= N_Protected_Definition
2930 or else NT
(N
).Nkind
= N_Task_Definition
);
2932 end Private_Declarations
;
2934 function Private_Present
2935 (N
: Node_Id
) return Boolean is
2937 pragma Assert
(False
2938 or else NT
(N
).Nkind
= N_Compilation_Unit
2939 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2940 or else NT
(N
).Nkind
= N_With_Clause
);
2942 end Private_Present
;
2944 function Procedure_To_Call
2945 (N
: Node_Id
) return Node_Id
is
2947 pragma Assert
(False
2948 or else NT
(N
).Nkind
= N_Allocator
2949 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2950 or else NT
(N
).Nkind
= N_Free_Statement
2951 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2953 end Procedure_To_Call
;
2955 function Proper_Body
2956 (N
: Node_Id
) return Node_Id
is
2958 pragma Assert
(False
2959 or else NT
(N
).Nkind
= N_Subunit
);
2963 function Protected_Definition
2964 (N
: Node_Id
) return Node_Id
is
2966 pragma Assert
(False
2967 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2968 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2970 end Protected_Definition
;
2972 function Protected_Present
2973 (N
: Node_Id
) return Boolean is
2975 pragma Assert
(False
2976 or else NT
(N
).Nkind
= N_Access_Function_Definition
2977 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2978 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2979 or else NT
(N
).Nkind
= N_Record_Definition
);
2981 end Protected_Present
;
2983 function Raises_Constraint_Error
2984 (N
: Node_Id
) return Boolean is
2986 pragma Assert
(False
2987 or else NT
(N
).Nkind
in N_Subexpr
);
2989 end Raises_Constraint_Error
;
2991 function Range_Constraint
2992 (N
: Node_Id
) return Node_Id
is
2994 pragma Assert
(False
2995 or else NT
(N
).Nkind
= N_Delta_Constraint
2996 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2998 end Range_Constraint
;
3000 function Range_Expression
3001 (N
: Node_Id
) return Node_Id
is
3003 pragma Assert
(False
3004 or else NT
(N
).Nkind
= N_Range_Constraint
);
3006 end Range_Expression
;
3008 function Real_Range_Specification
3009 (N
: Node_Id
) return Node_Id
is
3011 pragma Assert
(False
3012 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
3013 or else NT
(N
).Nkind
= N_Floating_Point_Definition
3014 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
3016 end Real_Range_Specification
;
3019 (N
: Node_Id
) return Ureal
is
3021 pragma Assert
(False
3022 or else NT
(N
).Nkind
= N_Real_Literal
);
3027 (N
: Node_Id
) return Uint
is
3029 pragma Assert
(False
3030 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3031 or else NT
(N
).Nkind
= N_Raise_Program_Error
3032 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
3036 function Record_Extension_Part
3037 (N
: Node_Id
) return Node_Id
is
3039 pragma Assert
(False
3040 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
3042 end Record_Extension_Part
;
3044 function Redundant_Use
3045 (N
: Node_Id
) return Boolean is
3047 pragma Assert
(False
3048 or else NT
(N
).Nkind
= N_Attribute_Reference
3049 or else NT
(N
).Nkind
= N_Expanded_Name
3050 or else NT
(N
).Nkind
= N_Identifier
);
3054 function Renaming_Exception
3055 (N
: Node_Id
) return Node_Id
is
3057 pragma Assert
(False
3058 or else NT
(N
).Nkind
= N_Exception_Declaration
);
3060 end Renaming_Exception
;
3062 function Result_Definition
3063 (N
: Node_Id
) return Node_Id
is
3065 pragma Assert
(False
3066 or else NT
(N
).Nkind
= N_Access_Function_Definition
3067 or else NT
(N
).Nkind
= N_Function_Specification
);
3069 end Result_Definition
;
3071 function Return_Object_Declarations
3072 (N
: Node_Id
) return List_Id
is
3074 pragma Assert
(False
3075 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
3077 end Return_Object_Declarations
;
3079 function Return_Statement_Entity
3080 (N
: Node_Id
) return Node_Id
is
3082 pragma Assert
(False
3083 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3084 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3086 end Return_Statement_Entity
;
3088 function Reverse_Present
3089 (N
: Node_Id
) return Boolean is
3091 pragma Assert
(False
3092 or else NT
(N
).Nkind
= N_Iterator_Specification
3093 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3095 end Reverse_Present
;
3098 (N
: Node_Id
) return Node_Id
is
3100 pragma Assert
(False
3101 or else NT
(N
).Nkind
in N_Op
3102 or else NT
(N
).Nkind
= N_And_Then
3103 or else NT
(N
).Nkind
= N_In
3104 or else NT
(N
).Nkind
= N_Not_In
3105 or else NT
(N
).Nkind
= N_Or_Else
);
3109 function Rounded_Result
3110 (N
: Node_Id
) return Boolean is
3112 pragma Assert
(False
3113 or else NT
(N
).Nkind
= N_Op_Divide
3114 or else NT
(N
).Nkind
= N_Op_Multiply
3115 or else NT
(N
).Nkind
= N_Type_Conversion
);
3119 function Save_Invocation_Graph_Of_Body
3120 (N
: Node_Id
) return Boolean is
3122 pragma Assert
(False
3123 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3125 end Save_Invocation_Graph_Of_Body
;
3127 function SCIL_Controlling_Tag
3128 (N
: Node_Id
) return Node_Id
is
3130 pragma Assert
(False
3131 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3133 end SCIL_Controlling_Tag
;
3135 function SCIL_Entity
3136 (N
: Node_Id
) return Node_Id
is
3138 pragma Assert
(False
3139 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3140 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3141 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3145 function SCIL_Tag_Value
3146 (N
: Node_Id
) return Node_Id
is
3148 pragma Assert
(False
3149 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3153 function SCIL_Target_Prim
3154 (N
: Node_Id
) return Node_Id
is
3156 pragma Assert
(False
3157 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3159 end SCIL_Target_Prim
;
3162 (N
: Node_Id
) return Node_Id
is
3164 pragma Assert
(False
3165 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3166 or else NT
(N
).Nkind
= N_Defining_Identifier
3167 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3171 function Select_Alternatives
3172 (N
: Node_Id
) return List_Id
is
3174 pragma Assert
(False
3175 or else NT
(N
).Nkind
= N_Selective_Accept
);
3177 end Select_Alternatives
;
3179 function Selector_Name
3180 (N
: Node_Id
) return Node_Id
is
3182 pragma Assert
(False
3183 or else NT
(N
).Nkind
= N_Expanded_Name
3184 or else NT
(N
).Nkind
= N_Generic_Association
3185 or else NT
(N
).Nkind
= N_Parameter_Association
3186 or else NT
(N
).Nkind
= N_Selected_Component
);
3190 function Selector_Names
3191 (N
: Node_Id
) return List_Id
is
3193 pragma Assert
(False
3194 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3198 function Shift_Count_OK
3199 (N
: Node_Id
) return Boolean is
3201 pragma Assert
(False
3202 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3203 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3204 or else NT
(N
).Nkind
= N_Op_Shift_Left
3205 or else NT
(N
).Nkind
= N_Op_Shift_Right
3206 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3210 function Source_Type
3211 (N
: Node_Id
) return Entity_Id
is
3213 pragma Assert
(False
3214 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3218 function Specification
3219 (N
: Node_Id
) return Node_Id
is
3221 pragma Assert
(False
3222 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3223 or else NT
(N
).Nkind
= N_Expression_Function
3224 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3225 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3226 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3227 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3228 or else NT
(N
).Nkind
= N_Package_Declaration
3229 or else NT
(N
).Nkind
= N_Subprogram_Body
3230 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3231 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3232 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3237 (N
: Node_Id
) return Boolean is
3239 pragma Assert
(False
3240 or else NT
(N
).Nkind
= N_Aspect_Specification
3241 or else NT
(N
).Nkind
= N_Pragma
);
3246 (N
: Node_Id
) return List_Id
is
3248 pragma Assert
(False
3249 or else NT
(N
).Nkind
= N_Abortable_Part
3250 or else NT
(N
).Nkind
= N_Accept_Alternative
3251 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3252 or else NT
(N
).Nkind
= N_Delay_Alternative
3253 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3254 or else NT
(N
).Nkind
= N_Exception_Handler
3255 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3256 or else NT
(N
).Nkind
= N_Loop_Statement
3257 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3261 function Storage_Pool
3262 (N
: Node_Id
) return Node_Id
is
3264 pragma Assert
(False
3265 or else NT
(N
).Nkind
= N_Allocator
3266 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3267 or else NT
(N
).Nkind
= N_Free_Statement
3268 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3272 function Subpool_Handle_Name
3273 (N
: Node_Id
) return Node_Id
is
3275 pragma Assert
(False
3276 or else NT
(N
).Nkind
= N_Allocator
);
3278 end Subpool_Handle_Name
;
3281 (N
: Node_Id
) return String_Id
is
3283 pragma Assert
(False
3284 or else NT
(N
).Nkind
= N_Operator_Symbol
3285 or else NT
(N
).Nkind
= N_String_Literal
);
3289 function Subtype_Indication
3290 (N
: Node_Id
) return Node_Id
is
3292 pragma Assert
(False
3293 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3294 or else NT
(N
).Nkind
= N_Component_Definition
3295 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3296 or else NT
(N
).Nkind
= N_Iterator_Specification
3297 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3298 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3300 end Subtype_Indication
;
3302 function Suppress_Assignment_Checks
3303 (N
: Node_Id
) return Boolean is
3305 pragma Assert
(False
3306 or else NT
(N
).Nkind
= N_Assignment_Statement
3307 or else NT
(N
).Nkind
= N_Object_Declaration
);
3309 end Suppress_Assignment_Checks
;
3311 function Suppress_Loop_Warnings
3312 (N
: Node_Id
) return Boolean is
3314 pragma Assert
(False
3315 or else NT
(N
).Nkind
= N_Loop_Statement
);
3317 end Suppress_Loop_Warnings
;
3319 function Subtype_Mark
3320 (N
: Node_Id
) return Node_Id
is
3322 pragma Assert
(False
3323 or else NT
(N
).Nkind
= N_Access_Definition
3324 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3325 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3326 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3327 or else NT
(N
).Nkind
= N_Qualified_Expression
3328 or else NT
(N
).Nkind
= N_Subtype_Indication
3329 or else NT
(N
).Nkind
= N_Type_Conversion
3330 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3331 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3335 function Subtype_Marks
3336 (N
: Node_Id
) return List_Id
is
3338 pragma Assert
(False
3339 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3343 function Synchronized_Present
3344 (N
: Node_Id
) return Boolean is
3346 pragma Assert
(False
3347 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3348 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3349 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3350 or else NT
(N
).Nkind
= N_Record_Definition
);
3352 end Synchronized_Present
;
3354 function Tagged_Present
3355 (N
: Node_Id
) return Boolean is
3357 pragma Assert
(False
3358 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3359 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3360 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3361 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3362 or else NT
(N
).Nkind
= N_Record_Definition
);
3367 (N
: Node_Id
) return Entity_Id
is
3369 pragma Assert
(False
3370 or else NT
(N
).Nkind
= N_Call_Marker
3371 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
3375 function Target_Type
3376 (N
: Node_Id
) return Entity_Id
is
3378 pragma Assert
(False
3379 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3383 function Task_Definition
3384 (N
: Node_Id
) return Node_Id
is
3386 pragma Assert
(False
3387 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3388 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3390 end Task_Definition
;
3392 function Task_Present
3393 (N
: Node_Id
) return Boolean is
3395 pragma Assert
(False
3396 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3397 or else NT
(N
).Nkind
= N_Record_Definition
);
3401 function Then_Actions
3402 (N
: Node_Id
) return List_Id
is
3404 pragma Assert
(False
3405 or else NT
(N
).Nkind
= N_If_Expression
);
3409 function Then_Statements
3410 (N
: Node_Id
) return List_Id
is
3412 pragma Assert
(False
3413 or else NT
(N
).Nkind
= N_Elsif_Part
3414 or else NT
(N
).Nkind
= N_If_Statement
);
3416 end Then_Statements
;
3418 function Triggering_Alternative
3419 (N
: Node_Id
) return Node_Id
is
3421 pragma Assert
(False
3422 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3424 end Triggering_Alternative
;
3426 function Triggering_Statement
3427 (N
: Node_Id
) return Node_Id
is
3429 pragma Assert
(False
3430 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3432 end Triggering_Statement
;
3435 (N
: Node_Id
) return Elist_Id
is
3437 pragma Assert
(False
3438 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3442 function Type_Definition
3443 (N
: Node_Id
) return Node_Id
is
3445 pragma Assert
(False
3446 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3448 end Type_Definition
;
3450 function Uneval_Old_Accept
3451 (N
: Node_Id
) return Boolean is
3453 pragma Assert
(False
3454 or else NT
(N
).Nkind
= N_Pragma
);
3456 end Uneval_Old_Accept
;
3458 function Uneval_Old_Warn
3459 (N
: Node_Id
) return Boolean is
3461 pragma Assert
(False
3462 or else NT
(N
).Nkind
= N_Pragma
);
3464 end Uneval_Old_Warn
;
3467 (N
: Node_Id
) return Node_Id
is
3469 pragma Assert
(False
3470 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3474 function Unknown_Discriminants_Present
3475 (N
: Node_Id
) return Boolean is
3477 pragma Assert
(False
3478 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3479 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3480 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3481 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3483 end Unknown_Discriminants_Present
;
3485 function Unreferenced_In_Spec
3486 (N
: Node_Id
) return Boolean is
3488 pragma Assert
(False
3489 or else NT
(N
).Nkind
= N_With_Clause
);
3491 end Unreferenced_In_Spec
;
3493 function Variant_Part
3494 (N
: Node_Id
) return Node_Id
is
3496 pragma Assert
(False
3497 or else NT
(N
).Nkind
= N_Component_List
);
3502 (N
: Node_Id
) return List_Id
is
3504 pragma Assert
(False
3505 or else NT
(N
).Nkind
= N_Variant_Part
);
3509 function Visible_Declarations
3510 (N
: Node_Id
) return List_Id
is
3512 pragma Assert
(False
3513 or else NT
(N
).Nkind
= N_Package_Specification
3514 or else NT
(N
).Nkind
= N_Protected_Definition
3515 or else NT
(N
).Nkind
= N_Task_Definition
);
3517 end Visible_Declarations
;
3519 function Uninitialized_Variable
3520 (N
: Node_Id
) return Node_Id
is
3522 pragma Assert
(False
3523 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3524 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3526 end Uninitialized_Variable
;
3528 function Used_Operations
3529 (N
: Node_Id
) return Elist_Id
is
3531 pragma Assert
(False
3532 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3534 end Used_Operations
;
3536 function Was_Attribute_Reference
3537 (N
: Node_Id
) return Boolean is
3539 pragma Assert
(False
3540 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3542 end Was_Attribute_Reference
;
3544 function Was_Expression_Function
3545 (N
: Node_Id
) return Boolean is
3547 pragma Assert
(False
3548 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3550 end Was_Expression_Function
;
3552 function Was_Originally_Stub
3553 (N
: Node_Id
) return Boolean is
3555 pragma Assert
(False
3556 or else NT
(N
).Nkind
= N_Package_Body
3557 or else NT
(N
).Nkind
= N_Protected_Body
3558 or else NT
(N
).Nkind
= N_Subprogram_Body
3559 or else NT
(N
).Nkind
= N_Task_Body
);
3561 end Was_Originally_Stub
;
3563 --------------------------
3564 -- Field Set Procedures --
3565 --------------------------
3567 procedure Set_Abort_Present
3568 (N
: Node_Id
; Val
: Boolean := True) is
3570 pragma Assert
(False
3571 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3572 Set_Flag15
(N
, Val
);
3573 end Set_Abort_Present
;
3575 procedure Set_Abortable_Part
3576 (N
: Node_Id
; Val
: Node_Id
) is
3578 pragma Assert
(False
3579 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3580 Set_Node2_With_Parent
(N
, Val
);
3581 end Set_Abortable_Part
;
3583 procedure Set_Abstract_Present
3584 (N
: Node_Id
; Val
: Boolean := True) is
3586 pragma Assert
(False
3587 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3588 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3589 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3590 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3591 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3592 or else NT
(N
).Nkind
= N_Record_Definition
);
3594 end Set_Abstract_Present
;
3596 procedure Set_Accept_Handler_Records
3597 (N
: Node_Id
; Val
: List_Id
) is
3599 pragma Assert
(False
3600 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3601 Set_List5
(N
, Val
); -- semantic field, no parent set
3602 end Set_Accept_Handler_Records
;
3604 procedure Set_Accept_Statement
3605 (N
: Node_Id
; Val
: Node_Id
) is
3607 pragma Assert
(False
3608 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3609 Set_Node2_With_Parent
(N
, Val
);
3610 end Set_Accept_Statement
;
3612 procedure Set_Access_Definition
3613 (N
: Node_Id
; Val
: Node_Id
) is
3615 pragma Assert
(False
3616 or else NT
(N
).Nkind
= N_Component_Definition
3617 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3618 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3619 Set_Node3_With_Parent
(N
, Val
);
3620 end Set_Access_Definition
;
3622 procedure Set_Access_To_Subprogram_Definition
3623 (N
: Node_Id
; Val
: Node_Id
) is
3625 pragma Assert
(False
3626 or else NT
(N
).Nkind
= N_Access_Definition
);
3627 Set_Node3_With_Parent
(N
, Val
);
3628 end Set_Access_To_Subprogram_Definition
;
3630 procedure Set_Access_Types_To_Process
3631 (N
: Node_Id
; Val
: Elist_Id
) is
3633 pragma Assert
(False
3634 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3635 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3636 end Set_Access_Types_To_Process
;
3638 procedure Set_Actions
3639 (N
: Node_Id
; Val
: List_Id
) is
3641 pragma Assert
(False
3642 or else NT
(N
).Nkind
= N_And_Then
3643 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3644 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3645 or else NT
(N
).Nkind
= N_Compound_Statement
3646 or else NT
(N
).Nkind
= N_Expression_With_Actions
3647 or else NT
(N
).Nkind
= N_Freeze_Entity
3648 or else NT
(N
).Nkind
= N_Or_Else
);
3649 Set_List1_With_Parent
(N
, Val
);
3652 procedure Set_Activation_Chain_Entity
3653 (N
: Node_Id
; Val
: Node_Id
) is
3655 pragma Assert
(False
3656 or else NT
(N
).Nkind
= N_Block_Statement
3657 or else NT
(N
).Nkind
= N_Entry_Body
3658 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3659 or else NT
(N
).Nkind
= N_Package_Declaration
3660 or else NT
(N
).Nkind
= N_Subprogram_Body
3661 or else NT
(N
).Nkind
= N_Task_Body
);
3662 Set_Node3
(N
, Val
); -- semantic field, no parent set
3663 end Set_Activation_Chain_Entity
;
3665 procedure Set_Acts_As_Spec
3666 (N
: Node_Id
; Val
: Boolean := True) is
3668 pragma Assert
(False
3669 or else NT
(N
).Nkind
= N_Compilation_Unit
3670 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3672 end Set_Acts_As_Spec
;
3674 procedure Set_Actual_Designated_Subtype
3675 (N
: Node_Id
; Val
: Node_Id
) is
3677 pragma Assert
(False
3678 or else NT
(N
).Nkind
= N_Explicit_Dereference
3679 or else NT
(N
).Nkind
= N_Free_Statement
);
3681 end Set_Actual_Designated_Subtype
;
3683 procedure Set_Address_Warning_Posted
3684 (N
: Node_Id
; Val
: Boolean := True) is
3686 pragma Assert
(False
3687 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3688 Set_Flag18
(N
, Val
);
3689 end Set_Address_Warning_Posted
;
3691 procedure Set_Aggregate_Bounds
3692 (N
: Node_Id
; Val
: Node_Id
) is
3694 pragma Assert
(False
3695 or else NT
(N
).Nkind
= N_Aggregate
);
3696 Set_Node3
(N
, Val
); -- semantic field, no parent set
3697 end Set_Aggregate_Bounds
;
3699 procedure Set_Aliased_Present
3700 (N
: Node_Id
; Val
: Boolean := True) is
3702 pragma Assert
(False
3703 or else NT
(N
).Nkind
= N_Component_Definition
3704 or else NT
(N
).Nkind
= N_Object_Declaration
3705 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3707 end Set_Aliased_Present
;
3709 procedure Set_Alloc_For_BIP_Return
3710 (N
: Node_Id
; Val
: Boolean := True) is
3712 pragma Assert
(False
3713 or else NT
(N
).Nkind
= N_Allocator
);
3715 end Set_Alloc_For_BIP_Return
;
3717 procedure Set_All_Others
3718 (N
: Node_Id
; Val
: Boolean := True) is
3720 pragma Assert
(False
3721 or else NT
(N
).Nkind
= N_Others_Choice
);
3722 Set_Flag11
(N
, Val
);
3725 procedure Set_All_Present
3726 (N
: Node_Id
; Val
: Boolean := True) is
3728 pragma Assert
(False
3729 or else NT
(N
).Nkind
= N_Access_Definition
3730 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3731 or else NT
(N
).Nkind
= N_Quantified_Expression
3732 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3733 Set_Flag15
(N
, Val
);
3734 end Set_All_Present
;
3736 procedure Set_Alternatives
3737 (N
: Node_Id
; Val
: List_Id
) is
3739 pragma Assert
(False
3740 or else NT
(N
).Nkind
= N_Case_Expression
3741 or else NT
(N
).Nkind
= N_Case_Statement
3742 or else NT
(N
).Nkind
= N_In
3743 or else NT
(N
).Nkind
= N_Not_In
);
3744 Set_List4_With_Parent
(N
, Val
);
3745 end Set_Alternatives
;
3747 procedure Set_Ancestor_Part
3748 (N
: Node_Id
; Val
: Node_Id
) is
3750 pragma Assert
(False
3751 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3752 Set_Node3_With_Parent
(N
, Val
);
3753 end Set_Ancestor_Part
;
3755 procedure Set_Atomic_Sync_Required
3756 (N
: Node_Id
; Val
: Boolean := True) is
3758 pragma Assert
(False
3759 or else NT
(N
).Nkind
= N_Expanded_Name
3760 or else NT
(N
).Nkind
= N_Explicit_Dereference
3761 or else NT
(N
).Nkind
= N_Identifier
3762 or else NT
(N
).Nkind
= N_Indexed_Component
3763 or else NT
(N
).Nkind
= N_Selected_Component
);
3764 Set_Flag14
(N
, Val
);
3765 end Set_Atomic_Sync_Required
;
3767 procedure Set_Array_Aggregate
3768 (N
: Node_Id
; Val
: Node_Id
) is
3770 pragma Assert
(False
3771 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3772 Set_Node3_With_Parent
(N
, Val
);
3773 end Set_Array_Aggregate
;
3775 procedure Set_Aspect_On_Partial_View
3776 (N
: Node_Id
; Val
: Boolean := True) is
3778 pragma Assert
(False
3779 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3780 Set_Flag18
(N
, Val
);
3781 end Set_Aspect_On_Partial_View
;
3783 procedure Set_Aspect_Rep_Item
3784 (N
: Node_Id
; Val
: Node_Id
) is
3786 pragma Assert
(False
3787 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3789 end Set_Aspect_Rep_Item
;
3791 procedure Set_Assignment_OK
3792 (N
: Node_Id
; Val
: Boolean := True) is
3794 pragma Assert
(False
3795 or else NT
(N
).Nkind
= N_Object_Declaration
3796 or else NT
(N
).Nkind
in N_Subexpr
);
3797 Set_Flag15
(N
, Val
);
3798 end Set_Assignment_OK
;
3800 procedure Set_Associated_Node
3801 (N
: Node_Id
; Val
: Node_Id
) is
3803 pragma Assert
(False
3804 or else NT
(N
).Nkind
in N_Has_Entity
3805 or else NT
(N
).Nkind
= N_Aggregate
3806 or else NT
(N
).Nkind
= N_Extension_Aggregate
3807 or else NT
(N
).Nkind
= N_Selected_Component
3808 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3809 Set_Node4
(N
, Val
); -- semantic field, no parent set
3810 end Set_Associated_Node
;
3812 procedure Set_At_End_Proc
3813 (N
: Node_Id
; Val
: Node_Id
) is
3815 pragma Assert
(False
3816 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3818 end Set_At_End_Proc
;
3820 procedure Set_Attribute_Name
3821 (N
: Node_Id
; Val
: Name_Id
) is
3823 pragma Assert
(False
3824 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3826 end Set_Attribute_Name
;
3828 procedure Set_Aux_Decls_Node
3829 (N
: Node_Id
; Val
: Node_Id
) is
3831 pragma Assert
(False
3832 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3833 Set_Node5_With_Parent
(N
, Val
);
3834 end Set_Aux_Decls_Node
;
3836 procedure Set_Backwards_OK
3837 (N
: Node_Id
; Val
: Boolean := True) is
3839 pragma Assert
(False
3840 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3842 end Set_Backwards_OK
;
3844 procedure Set_Bad_Is_Detected
3845 (N
: Node_Id
; Val
: Boolean := True) is
3847 pragma Assert
(False
3848 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3849 Set_Flag15
(N
, Val
);
3850 end Set_Bad_Is_Detected
;
3852 procedure Set_Body_Required
3853 (N
: Node_Id
; Val
: Boolean := True) is
3855 pragma Assert
(False
3856 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3857 Set_Flag13
(N
, Val
);
3858 end Set_Body_Required
;
3860 procedure Set_Body_To_Inline
3861 (N
: Node_Id
; Val
: Node_Id
) is
3863 pragma Assert
(False
3864 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3866 end Set_Body_To_Inline
;
3868 procedure Set_Box_Present
3869 (N
: Node_Id
; Val
: Boolean := True) is
3871 pragma Assert
(False
3872 or else NT
(N
).Nkind
= N_Component_Association
3873 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3874 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3875 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3876 or else NT
(N
).Nkind
= N_Generic_Association
3877 or else NT
(N
).Nkind
= N_Iterated_Component_Association
3878 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
3879 Set_Flag15
(N
, Val
);
3880 end Set_Box_Present
;
3882 procedure Set_By_Ref
3883 (N
: Node_Id
; Val
: Boolean := True) is
3885 pragma Assert
(False
3886 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3887 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3891 procedure Set_Char_Literal_Value
3892 (N
: Node_Id
; Val
: Uint
) is
3894 pragma Assert
(False
3895 or else NT
(N
).Nkind
= N_Character_Literal
);
3897 end Set_Char_Literal_Value
;
3900 (N
: Node_Id
; Val
: Name_Id
) is
3902 pragma Assert
(False
3903 or else NT
(N
).Nkind
in N_Has_Chars
);
3907 procedure Set_Check_Address_Alignment
3908 (N
: Node_Id
; Val
: Boolean := True) is
3910 pragma Assert
(False
3911 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3912 Set_Flag11
(N
, Val
);
3913 end Set_Check_Address_Alignment
;
3915 procedure Set_Choice_Parameter
3916 (N
: Node_Id
; Val
: Node_Id
) is
3918 pragma Assert
(False
3919 or else NT
(N
).Nkind
= N_Exception_Handler
);
3920 Set_Node2_With_Parent
(N
, Val
);
3921 end Set_Choice_Parameter
;
3923 procedure Set_Choices
3924 (N
: Node_Id
; Val
: List_Id
) is
3926 pragma Assert
(False
3927 or else NT
(N
).Nkind
= N_Component_Association
);
3928 Set_List1_With_Parent
(N
, Val
);
3931 procedure Set_Class_Present
3932 (N
: Node_Id
; Val
: Boolean := True) is
3934 pragma Assert
(False
3935 or else NT
(N
).Nkind
= N_Aspect_Specification
3936 or else NT
(N
).Nkind
= N_Pragma
);
3938 end Set_Class_Present
;
3940 procedure Set_Classifications
3941 (N
: Node_Id
; Val
: Node_Id
) is
3943 pragma Assert
(False
3944 or else NT
(N
).Nkind
= N_Contract
);
3945 Set_Node3
(N
, Val
); -- semantic field, no parent set
3946 end Set_Classifications
;
3948 procedure Set_Cleanup_Actions
3949 (N
: Node_Id
; Val
: List_Id
) is
3951 pragma Assert
(False
3952 or else NT
(N
).Nkind
= N_Block_Statement
);
3953 Set_List5
(N
, Val
); -- semantic field, no parent set
3954 end Set_Cleanup_Actions
;
3956 procedure Set_Comes_From_Extended_Return_Statement
3957 (N
: Node_Id
; Val
: Boolean := True) is
3959 pragma Assert
(False
3960 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3961 Set_Flag18
(N
, Val
);
3962 end Set_Comes_From_Extended_Return_Statement
;
3964 procedure Set_Compile_Time_Known_Aggregate
3965 (N
: Node_Id
; Val
: Boolean := True) is
3967 pragma Assert
(False
3968 or else NT
(N
).Nkind
= N_Aggregate
);
3969 Set_Flag18
(N
, Val
);
3970 end Set_Compile_Time_Known_Aggregate
;
3972 procedure Set_Component_Associations
3973 (N
: Node_Id
; Val
: List_Id
) is
3975 pragma Assert
(False
3976 or else NT
(N
).Nkind
= N_Aggregate
3977 or else NT
(N
).Nkind
= N_Delta_Aggregate
3978 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3979 Set_List2_With_Parent
(N
, Val
);
3980 end Set_Component_Associations
;
3982 procedure Set_Component_Clauses
3983 (N
: Node_Id
; Val
: List_Id
) is
3985 pragma Assert
(False
3986 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3987 Set_List3_With_Parent
(N
, Val
);
3988 end Set_Component_Clauses
;
3990 procedure Set_Component_Definition
3991 (N
: Node_Id
; Val
: Node_Id
) is
3993 pragma Assert
(False
3994 or else NT
(N
).Nkind
= N_Component_Declaration
3995 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3996 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3997 Set_Node4_With_Parent
(N
, Val
);
3998 end Set_Component_Definition
;
4000 procedure Set_Component_Items
4001 (N
: Node_Id
; Val
: List_Id
) is
4003 pragma Assert
(False
4004 or else NT
(N
).Nkind
= N_Component_List
);
4005 Set_List3_With_Parent
(N
, Val
);
4006 end Set_Component_Items
;
4008 procedure Set_Component_List
4009 (N
: Node_Id
; Val
: Node_Id
) is
4011 pragma Assert
(False
4012 or else NT
(N
).Nkind
= N_Record_Definition
4013 or else NT
(N
).Nkind
= N_Variant
);
4014 Set_Node1_With_Parent
(N
, Val
);
4015 end Set_Component_List
;
4017 procedure Set_Component_Name
4018 (N
: Node_Id
; Val
: Node_Id
) is
4020 pragma Assert
(False
4021 or else NT
(N
).Nkind
= N_Component_Clause
);
4022 Set_Node1_With_Parent
(N
, Val
);
4023 end Set_Component_Name
;
4025 procedure Set_Componentwise_Assignment
4026 (N
: Node_Id
; Val
: Boolean := True) is
4028 pragma Assert
(False
4029 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4030 Set_Flag14
(N
, Val
);
4031 end Set_Componentwise_Assignment
;
4033 procedure Set_Condition
4034 (N
: Node_Id
; Val
: Node_Id
) is
4036 pragma Assert
(False
4037 or else NT
(N
).Nkind
= N_Accept_Alternative
4038 or else NT
(N
).Nkind
= N_Delay_Alternative
4039 or else NT
(N
).Nkind
= N_Elsif_Part
4040 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
4041 or else NT
(N
).Nkind
= N_Exit_Statement
4042 or else NT
(N
).Nkind
= N_If_Statement
4043 or else NT
(N
).Nkind
= N_Iteration_Scheme
4044 or else NT
(N
).Nkind
= N_Quantified_Expression
4045 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
4046 or else NT
(N
).Nkind
= N_Raise_Program_Error
4047 or else NT
(N
).Nkind
= N_Raise_Storage_Error
4048 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
4049 Set_Node1_With_Parent
(N
, Val
);
4052 procedure Set_Condition_Actions
4053 (N
: Node_Id
; Val
: List_Id
) is
4055 pragma Assert
(False
4056 or else NT
(N
).Nkind
= N_Elsif_Part
4057 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
4058 Set_List3
(N
, Val
); -- semantic field, no parent set
4059 end Set_Condition_Actions
;
4061 procedure Set_Config_Pragmas
4062 (N
: Node_Id
; Val
: List_Id
) is
4064 pragma Assert
(False
4065 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4066 Set_List4_With_Parent
(N
, Val
);
4067 end Set_Config_Pragmas
;
4069 procedure Set_Constant_Present
4070 (N
: Node_Id
; Val
: Boolean := True) is
4072 pragma Assert
(False
4073 or else NT
(N
).Nkind
= N_Access_Definition
4074 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
4075 or else NT
(N
).Nkind
= N_Object_Declaration
);
4076 Set_Flag17
(N
, Val
);
4077 end Set_Constant_Present
;
4079 procedure Set_Constraint
4080 (N
: Node_Id
; Val
: Node_Id
) is
4082 pragma Assert
(False
4083 or else NT
(N
).Nkind
= N_Subtype_Indication
);
4084 Set_Node3_With_Parent
(N
, Val
);
4087 procedure Set_Constraints
4088 (N
: Node_Id
; Val
: List_Id
) is
4090 pragma Assert
(False
4091 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
4092 Set_List1_With_Parent
(N
, Val
);
4093 end Set_Constraints
;
4095 procedure Set_Context_Installed
4096 (N
: Node_Id
; Val
: Boolean := True) is
4098 pragma Assert
(False
4099 or else NT
(N
).Nkind
= N_With_Clause
);
4100 Set_Flag13
(N
, Val
);
4101 end Set_Context_Installed
;
4103 procedure Set_Context_Items
4104 (N
: Node_Id
; Val
: List_Id
) is
4106 pragma Assert
(False
4107 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4108 Set_List1_With_Parent
(N
, Val
);
4109 end Set_Context_Items
;
4111 procedure Set_Context_Pending
4112 (N
: Node_Id
; Val
: Boolean := True) is
4114 pragma Assert
(False
4115 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4116 Set_Flag16
(N
, Val
);
4117 end Set_Context_Pending
;
4119 procedure Set_Contract_Test_Cases
4120 (N
: Node_Id
; Val
: Node_Id
) is
4122 pragma Assert
(False
4123 or else NT
(N
).Nkind
= N_Contract
);
4124 Set_Node2
(N
, Val
); -- semantic field, no parent set
4125 end Set_Contract_Test_Cases
;
4127 procedure Set_Controlling_Argument
4128 (N
: Node_Id
; Val
: Node_Id
) is
4130 pragma Assert
(False
4131 or else NT
(N
).Nkind
= N_Function_Call
4132 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4133 Set_Node1
(N
, Val
); -- semantic field, no parent set
4134 end Set_Controlling_Argument
;
4136 procedure Set_Conversion_OK
4137 (N
: Node_Id
; Val
: Boolean := True) is
4139 pragma Assert
(False
4140 or else NT
(N
).Nkind
= N_Type_Conversion
);
4141 Set_Flag14
(N
, Val
);
4142 end Set_Conversion_OK
;
4144 procedure Set_Convert_To_Return_False
4145 (N
: Node_Id
; Val
: Boolean := True) is
4147 pragma Assert
(False
4148 or else NT
(N
).Nkind
= N_Raise_Expression
);
4149 Set_Flag13
(N
, Val
);
4150 end Set_Convert_To_Return_False
;
4152 procedure Set_Corresponding_Aspect
4153 (N
: Node_Id
; Val
: Node_Id
) is
4155 pragma Assert
(False
4156 or else NT
(N
).Nkind
= N_Pragma
);
4158 end Set_Corresponding_Aspect
;
4160 procedure Set_Corresponding_Body
4161 (N
: Node_Id
; Val
: Node_Id
) is
4163 pragma Assert
(False
4164 or else NT
(N
).Nkind
= N_Entry_Declaration
4165 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4166 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4167 or else NT
(N
).Nkind
= N_Package_Body_Stub
4168 or else NT
(N
).Nkind
= N_Package_Declaration
4169 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4170 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4171 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4172 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4173 or else NT
(N
).Nkind
= N_Task_Body_Stub
4174 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4175 Set_Node5
(N
, Val
); -- semantic field, no parent set
4176 end Set_Corresponding_Body
;
4178 procedure Set_Corresponding_Formal_Spec
4179 (N
: Node_Id
; Val
: Node_Id
) is
4181 pragma Assert
(False
4182 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4183 Set_Node3
(N
, Val
); -- semantic field, no parent set
4184 end Set_Corresponding_Formal_Spec
;
4186 procedure Set_Corresponding_Generic_Association
4187 (N
: Node_Id
; Val
: Node_Id
) is
4189 pragma Assert
(False
4190 or else NT
(N
).Nkind
= N_Object_Declaration
4191 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4192 Set_Node5
(N
, Val
); -- semantic field, no parent set
4193 end Set_Corresponding_Generic_Association
;
4195 procedure Set_Corresponding_Integer_Value
4196 (N
: Node_Id
; Val
: Uint
) is
4198 pragma Assert
(False
4199 or else NT
(N
).Nkind
= N_Real_Literal
);
4200 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4201 end Set_Corresponding_Integer_Value
;
4203 procedure Set_Corresponding_Spec
4204 (N
: Node_Id
; Val
: Entity_Id
) is
4206 pragma Assert
(False
4207 or else NT
(N
).Nkind
= N_Expression_Function
4208 or else NT
(N
).Nkind
= N_Package_Body
4209 or else NT
(N
).Nkind
= N_Protected_Body
4210 or else NT
(N
).Nkind
= N_Subprogram_Body
4211 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4212 or else NT
(N
).Nkind
= N_Task_Body
4213 or else NT
(N
).Nkind
= N_With_Clause
);
4214 Set_Node5
(N
, Val
); -- semantic field, no parent set
4215 end Set_Corresponding_Spec
;
4217 procedure Set_Corresponding_Spec_Of_Stub
4218 (N
: Node_Id
; Val
: Entity_Id
) is
4220 pragma Assert
(False
4221 or else NT
(N
).Nkind
= N_Package_Body_Stub
4222 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4223 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4224 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4225 Set_Node2
(N
, Val
); -- semantic field, no parent set
4226 end Set_Corresponding_Spec_Of_Stub
;
4228 procedure Set_Corresponding_Stub
4229 (N
: Node_Id
; Val
: Node_Id
) is
4231 pragma Assert
(False
4232 or else NT
(N
).Nkind
= N_Subunit
);
4234 end Set_Corresponding_Stub
;
4236 procedure Set_Dcheck_Function
4237 (N
: Node_Id
; Val
: Entity_Id
) is
4239 pragma Assert
(False
4240 or else NT
(N
).Nkind
= N_Variant
);
4241 Set_Node5
(N
, Val
); -- semantic field, no parent set
4242 end Set_Dcheck_Function
;
4244 procedure Set_Declarations
4245 (N
: Node_Id
; Val
: List_Id
) is
4247 pragma Assert
(False
4248 or else NT
(N
).Nkind
= N_Accept_Statement
4249 or else NT
(N
).Nkind
= N_Block_Statement
4250 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4251 or else NT
(N
).Nkind
= N_Entry_Body
4252 or else NT
(N
).Nkind
= N_Package_Body
4253 or else NT
(N
).Nkind
= N_Protected_Body
4254 or else NT
(N
).Nkind
= N_Subprogram_Body
4255 or else NT
(N
).Nkind
= N_Task_Body
);
4256 Set_List2_With_Parent
(N
, Val
);
4257 end Set_Declarations
;
4259 procedure Set_Default_Expression
4260 (N
: Node_Id
; Val
: Node_Id
) is
4262 pragma Assert
(False
4263 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4264 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4265 Set_Node5
(N
, Val
); -- semantic field, no parent set
4266 end Set_Default_Expression
;
4268 procedure Set_Default_Storage_Pool
4269 (N
: Node_Id
; Val
: Node_Id
) is
4271 pragma Assert
(False
4272 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4273 Set_Node3
(N
, Val
); -- semantic field, no parent set
4274 end Set_Default_Storage_Pool
;
4276 procedure Set_Default_Name
4277 (N
: Node_Id
; Val
: Node_Id
) is
4279 pragma Assert
(False
4280 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4281 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4282 Set_Node2_With_Parent
(N
, Val
);
4283 end Set_Default_Name
;
4285 procedure Set_Defining_Identifier
4286 (N
: Node_Id
; Val
: Entity_Id
) is
4288 pragma Assert
(False
4289 or else NT
(N
).Nkind
= N_Component_Declaration
4290 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4291 or else NT
(N
).Nkind
= N_Discriminant_Specification
4292 or else NT
(N
).Nkind
= N_Entry_Body
4293 or else NT
(N
).Nkind
= N_Entry_Declaration
4294 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4295 or else NT
(N
).Nkind
= N_Exception_Declaration
4296 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4297 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4298 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4299 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4300 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4301 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4302 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4303 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4304 or else NT
(N
).Nkind
= N_Iterator_Specification
4305 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4306 or else NT
(N
).Nkind
= N_Number_Declaration
4307 or else NT
(N
).Nkind
= N_Object_Declaration
4308 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4309 or else NT
(N
).Nkind
= N_Package_Body_Stub
4310 or else NT
(N
).Nkind
= N_Parameter_Specification
4311 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4312 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4313 or else NT
(N
).Nkind
= N_Protected_Body
4314 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4315 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4316 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4317 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4318 or else NT
(N
).Nkind
= N_Subtype_Declaration
4319 or else NT
(N
).Nkind
= N_Task_Body
4320 or else NT
(N
).Nkind
= N_Task_Body_Stub
4321 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4322 Set_Node1_With_Parent
(N
, Val
);
4323 end Set_Defining_Identifier
;
4325 procedure Set_Defining_Unit_Name
4326 (N
: Node_Id
; Val
: Node_Id
) is
4328 pragma Assert
(False
4329 or else NT
(N
).Nkind
= N_Function_Instantiation
4330 or else NT
(N
).Nkind
= N_Function_Specification
4331 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4332 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4333 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4334 or else NT
(N
).Nkind
= N_Package_Body
4335 or else NT
(N
).Nkind
= N_Package_Instantiation
4336 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4337 or else NT
(N
).Nkind
= N_Package_Specification
4338 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4339 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4340 Set_Node1_With_Parent
(N
, Val
);
4341 end Set_Defining_Unit_Name
;
4343 procedure Set_Delay_Alternative
4344 (N
: Node_Id
; Val
: Node_Id
) is
4346 pragma Assert
(False
4347 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4348 Set_Node4_With_Parent
(N
, Val
);
4349 end Set_Delay_Alternative
;
4351 procedure Set_Delay_Statement
4352 (N
: Node_Id
; Val
: Node_Id
) is
4354 pragma Assert
(False
4355 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4356 Set_Node2_With_Parent
(N
, Val
);
4357 end Set_Delay_Statement
;
4359 procedure Set_Delta_Expression
4360 (N
: Node_Id
; Val
: Node_Id
) is
4362 pragma Assert
(False
4363 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4364 or else NT
(N
).Nkind
= N_Delta_Constraint
4365 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4366 Set_Node3_With_Parent
(N
, Val
);
4367 end Set_Delta_Expression
;
4369 procedure Set_Digits_Expression
4370 (N
: Node_Id
; Val
: Node_Id
) is
4372 pragma Assert
(False
4373 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4374 or else NT
(N
).Nkind
= N_Digits_Constraint
4375 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4376 Set_Node2_With_Parent
(N
, Val
);
4377 end Set_Digits_Expression
;
4379 procedure Set_Discr_Check_Funcs_Built
4380 (N
: Node_Id
; Val
: Boolean := True) is
4382 pragma Assert
(False
4383 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4384 Set_Flag11
(N
, Val
);
4385 end Set_Discr_Check_Funcs_Built
;
4387 procedure Set_Discrete_Choices
4388 (N
: Node_Id
; Val
: List_Id
) is
4390 pragma Assert
(False
4391 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4392 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4393 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4394 or else NT
(N
).Nkind
= N_Variant
);
4395 Set_List4_With_Parent
(N
, Val
);
4396 end Set_Discrete_Choices
;
4398 procedure Set_Discrete_Range
4399 (N
: Node_Id
; Val
: Node_Id
) is
4401 pragma Assert
(False
4402 or else NT
(N
).Nkind
= N_Slice
);
4403 Set_Node4_With_Parent
(N
, Val
);
4404 end Set_Discrete_Range
;
4406 procedure Set_Discrete_Subtype_Definition
4407 (N
: Node_Id
; Val
: Node_Id
) is
4409 pragma Assert
(False
4410 or else NT
(N
).Nkind
= N_Entry_Declaration
4411 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4412 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4413 Set_Node4_With_Parent
(N
, Val
);
4414 end Set_Discrete_Subtype_Definition
;
4416 procedure Set_Discrete_Subtype_Definitions
4417 (N
: Node_Id
; Val
: List_Id
) is
4419 pragma Assert
(False
4420 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4421 Set_List2_With_Parent
(N
, Val
);
4422 end Set_Discrete_Subtype_Definitions
;
4424 procedure Set_Discriminant_Specifications
4425 (N
: Node_Id
; Val
: List_Id
) is
4427 pragma Assert
(False
4428 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4429 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4430 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4431 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4432 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4433 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4434 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4435 Set_List4_With_Parent
(N
, Val
);
4436 end Set_Discriminant_Specifications
;
4438 procedure Set_Discriminant_Type
4439 (N
: Node_Id
; Val
: Node_Id
) is
4441 pragma Assert
(False
4442 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4443 Set_Node5_With_Parent
(N
, Val
);
4444 end Set_Discriminant_Type
;
4446 procedure Set_Do_Accessibility_Check
4447 (N
: Node_Id
; Val
: Boolean := True) is
4449 pragma Assert
(False
4450 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4451 Set_Flag13
(N
, Val
);
4452 end Set_Do_Accessibility_Check
;
4454 procedure Set_Do_Discriminant_Check
4455 (N
: Node_Id
; Val
: Boolean := True) is
4457 pragma Assert
(False
4458 or else NT
(N
).Nkind
= N_Assignment_Statement
4459 or else NT
(N
).Nkind
= N_Selected_Component
4460 or else NT
(N
).Nkind
= N_Type_Conversion
);
4462 end Set_Do_Discriminant_Check
;
4464 procedure Set_Do_Division_Check
4465 (N
: Node_Id
; Val
: Boolean := True) is
4467 pragma Assert
(False
4468 or else NT
(N
).Nkind
= N_Op_Divide
4469 or else NT
(N
).Nkind
= N_Op_Mod
4470 or else NT
(N
).Nkind
= N_Op_Rem
);
4471 Set_Flag13
(N
, Val
);
4472 end Set_Do_Division_Check
;
4474 procedure Set_Do_Length_Check
4475 (N
: Node_Id
; Val
: Boolean := True) is
4477 pragma Assert
(False
4478 or else NT
(N
).Nkind
= N_Assignment_Statement
4479 or else NT
(N
).Nkind
= N_Op_And
4480 or else NT
(N
).Nkind
= N_Op_Or
4481 or else NT
(N
).Nkind
= N_Op_Xor
4482 or else NT
(N
).Nkind
= N_Type_Conversion
);
4484 end Set_Do_Length_Check
;
4486 procedure Set_Do_Overflow_Check
4487 (N
: Node_Id
; Val
: Boolean := True) is
4489 pragma Assert
(False
4490 or else NT
(N
).Nkind
in N_Op
4491 or else NT
(N
).Nkind
= N_Attribute_Reference
4492 or else NT
(N
).Nkind
= N_Case_Expression
4493 or else NT
(N
).Nkind
= N_If_Expression
4494 or else NT
(N
).Nkind
= N_Type_Conversion
);
4495 Set_Flag17
(N
, Val
);
4496 end Set_Do_Overflow_Check
;
4498 procedure Set_Do_Range_Check
4499 (N
: Node_Id
; Val
: Boolean := True) is
4501 pragma Assert
(False
4502 or else NT
(N
).Nkind
in N_Subexpr
);
4504 end Set_Do_Range_Check
;
4506 procedure Set_Do_Storage_Check
4507 (N
: Node_Id
; Val
: Boolean := True) is
4509 pragma Assert
(False
4510 or else NT
(N
).Nkind
= N_Allocator
4511 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4512 Set_Flag17
(N
, Val
);
4513 end Set_Do_Storage_Check
;
4515 procedure Set_Do_Tag_Check
4516 (N
: Node_Id
; Val
: Boolean := True) is
4518 pragma Assert
(False
4519 or else NT
(N
).Nkind
= N_Assignment_Statement
4520 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4521 or else NT
(N
).Nkind
= N_Function_Call
4522 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4523 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4524 or else NT
(N
).Nkind
= N_Type_Conversion
);
4525 Set_Flag13
(N
, Val
);
4526 end Set_Do_Tag_Check
;
4528 procedure Set_Elaborate_All_Desirable
4529 (N
: Node_Id
; Val
: Boolean := True) is
4531 pragma Assert
(False
4532 or else NT
(N
).Nkind
= N_With_Clause
);
4534 end Set_Elaborate_All_Desirable
;
4536 procedure Set_Elaborate_All_Present
4537 (N
: Node_Id
; Val
: Boolean := True) is
4539 pragma Assert
(False
4540 or else NT
(N
).Nkind
= N_With_Clause
);
4541 Set_Flag14
(N
, Val
);
4542 end Set_Elaborate_All_Present
;
4544 procedure Set_Elaborate_Desirable
4545 (N
: Node_Id
; Val
: Boolean := True) is
4547 pragma Assert
(False
4548 or else NT
(N
).Nkind
= N_With_Clause
);
4549 Set_Flag11
(N
, Val
);
4550 end Set_Elaborate_Desirable
;
4552 procedure Set_Elaborate_Present
4553 (N
: Node_Id
; Val
: Boolean := True) is
4555 pragma Assert
(False
4556 or else NT
(N
).Nkind
= N_With_Clause
);
4558 end Set_Elaborate_Present
;
4560 procedure Set_Else_Actions
4561 (N
: Node_Id
; Val
: List_Id
) is
4563 pragma Assert
(False
4564 or else NT
(N
).Nkind
= N_If_Expression
);
4565 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4566 end Set_Else_Actions
;
4568 procedure Set_Else_Statements
4569 (N
: Node_Id
; Val
: List_Id
) is
4571 pragma Assert
(False
4572 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4573 or else NT
(N
).Nkind
= N_If_Statement
4574 or else NT
(N
).Nkind
= N_Selective_Accept
);
4575 Set_List4_With_Parent
(N
, Val
);
4576 end Set_Else_Statements
;
4578 procedure Set_Elsif_Parts
4579 (N
: Node_Id
; Val
: List_Id
) is
4581 pragma Assert
(False
4582 or else NT
(N
).Nkind
= N_If_Statement
);
4583 Set_List3_With_Parent
(N
, Val
);
4584 end Set_Elsif_Parts
;
4586 procedure Set_Enclosing_Variant
4587 (N
: Node_Id
; Val
: Node_Id
) is
4589 pragma Assert
(False
4590 or else NT
(N
).Nkind
= N_Variant
);
4591 Set_Node2
(N
, Val
); -- semantic field, no parent set
4592 end Set_Enclosing_Variant
;
4594 procedure Set_End_Label
4595 (N
: Node_Id
; Val
: Node_Id
) is
4597 pragma Assert
(False
4598 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4599 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4600 or else NT
(N
).Nkind
= N_Loop_Statement
4601 or else NT
(N
).Nkind
= N_Package_Specification
4602 or else NT
(N
).Nkind
= N_Protected_Body
4603 or else NT
(N
).Nkind
= N_Protected_Definition
4604 or else NT
(N
).Nkind
= N_Record_Definition
4605 or else NT
(N
).Nkind
= N_Task_Definition
);
4606 Set_Node4_With_Parent
(N
, Val
);
4609 procedure Set_End_Span
4610 (N
: Node_Id
; Val
: Uint
) is
4612 pragma Assert
(False
4613 or else NT
(N
).Nkind
= N_Case_Statement
4614 or else NT
(N
).Nkind
= N_If_Statement
);
4618 procedure Set_Entity
4619 (N
: Node_Id
; Val
: Node_Id
) is
4621 pragma Assert
(False
4622 or else NT
(N
).Nkind
in N_Has_Entity
4623 or else NT
(N
).Nkind
= N_Aspect_Specification
4624 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4625 or else NT
(N
).Nkind
= N_Freeze_Entity
4626 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4627 Set_Node4
(N
, Val
); -- semantic field, no parent set
4630 procedure Set_Entry_Body_Formal_Part
4631 (N
: Node_Id
; Val
: Node_Id
) is
4633 pragma Assert
(False
4634 or else NT
(N
).Nkind
= N_Entry_Body
);
4635 Set_Node5_With_Parent
(N
, Val
);
4636 end Set_Entry_Body_Formal_Part
;
4638 procedure Set_Entry_Call_Alternative
4639 (N
: Node_Id
; Val
: Node_Id
) is
4641 pragma Assert
(False
4642 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4643 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4644 Set_Node1_With_Parent
(N
, Val
);
4645 end Set_Entry_Call_Alternative
;
4647 procedure Set_Entry_Call_Statement
4648 (N
: Node_Id
; Val
: Node_Id
) is
4650 pragma Assert
(False
4651 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4652 Set_Node1_With_Parent
(N
, Val
);
4653 end Set_Entry_Call_Statement
;
4655 procedure Set_Entry_Direct_Name
4656 (N
: Node_Id
; Val
: Node_Id
) is
4658 pragma Assert
(False
4659 or else NT
(N
).Nkind
= N_Accept_Statement
);
4660 Set_Node1_With_Parent
(N
, Val
);
4661 end Set_Entry_Direct_Name
;
4663 procedure Set_Entry_Index
4664 (N
: Node_Id
; Val
: Node_Id
) is
4666 pragma Assert
(False
4667 or else NT
(N
).Nkind
= N_Accept_Statement
);
4668 Set_Node5_With_Parent
(N
, Val
);
4669 end Set_Entry_Index
;
4671 procedure Set_Entry_Index_Specification
4672 (N
: Node_Id
; Val
: Node_Id
) is
4674 pragma Assert
(False
4675 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4676 Set_Node4_With_Parent
(N
, Val
);
4677 end Set_Entry_Index_Specification
;
4680 (N
: Node_Id
; Val
: Node_Id
) is
4682 pragma Assert
(False
4683 or else NT
(N
).Nkind
in N_Has_Etype
);
4684 Set_Node5
(N
, Val
); -- semantic field, no parent set
4687 procedure Set_Exception_Choices
4688 (N
: Node_Id
; Val
: List_Id
) is
4690 pragma Assert
(False
4691 or else NT
(N
).Nkind
= N_Exception_Handler
);
4692 Set_List4_With_Parent
(N
, Val
);
4693 end Set_Exception_Choices
;
4695 procedure Set_Exception_Handlers
4696 (N
: Node_Id
; Val
: List_Id
) is
4698 pragma Assert
(False
4699 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4700 Set_List5_With_Parent
(N
, Val
);
4701 end Set_Exception_Handlers
;
4703 procedure Set_Exception_Junk
4704 (N
: Node_Id
; Val
: Boolean := True) is
4706 pragma Assert
(False
4707 or else NT
(N
).Nkind
= N_Block_Statement
4708 or else NT
(N
).Nkind
= N_Goto_Statement
4709 or else NT
(N
).Nkind
= N_Label
4710 or else NT
(N
).Nkind
= N_Object_Declaration
4711 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4713 end Set_Exception_Junk
;
4715 procedure Set_Exception_Label
4716 (N
: Node_Id
; Val
: Node_Id
) is
4718 pragma Assert
(False
4719 or else NT
(N
).Nkind
= N_Exception_Handler
4720 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4721 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4722 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4723 Set_Node5
(N
, Val
); -- semantic field, no parent set
4724 end Set_Exception_Label
;
4726 procedure Set_Expansion_Delayed
4727 (N
: Node_Id
; Val
: Boolean := True) is
4729 pragma Assert
(False
4730 or else NT
(N
).Nkind
= N_Aggregate
4731 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4732 Set_Flag11
(N
, Val
);
4733 end Set_Expansion_Delayed
;
4735 procedure Set_Explicit_Actual_Parameter
4736 (N
: Node_Id
; Val
: Node_Id
) is
4738 pragma Assert
(False
4739 or else NT
(N
).Nkind
= N_Parameter_Association
);
4740 Set_Node3_With_Parent
(N
, Val
);
4741 end Set_Explicit_Actual_Parameter
;
4743 procedure Set_Explicit_Generic_Actual_Parameter
4744 (N
: Node_Id
; Val
: Node_Id
) is
4746 pragma Assert
(False
4747 or else NT
(N
).Nkind
= N_Generic_Association
);
4748 Set_Node1_With_Parent
(N
, Val
);
4749 end Set_Explicit_Generic_Actual_Parameter
;
4751 procedure Set_Expression
4752 (N
: Node_Id
; Val
: Node_Id
) is
4754 pragma Assert
(False
4755 or else NT
(N
).Nkind
= N_Allocator
4756 or else NT
(N
).Nkind
= N_Aspect_Specification
4757 or else NT
(N
).Nkind
= N_Assignment_Statement
4758 or else NT
(N
).Nkind
= N_At_Clause
4759 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4760 or else NT
(N
).Nkind
= N_Case_Expression
4761 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4762 or else NT
(N
).Nkind
= N_Case_Statement
4763 or else NT
(N
).Nkind
= N_Code_Statement
4764 or else NT
(N
).Nkind
= N_Component_Association
4765 or else NT
(N
).Nkind
= N_Component_Declaration
4766 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4767 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4768 or else NT
(N
).Nkind
= N_Delta_Aggregate
4769 or else NT
(N
).Nkind
= N_Discriminant_Association
4770 or else NT
(N
).Nkind
= N_Discriminant_Specification
4771 or else NT
(N
).Nkind
= N_Exception_Declaration
4772 or else NT
(N
).Nkind
= N_Expression_Function
4773 or else NT
(N
).Nkind
= N_Expression_With_Actions
4774 or else NT
(N
).Nkind
= N_Free_Statement
4775 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4776 or else NT
(N
).Nkind
= N_Iterated_Element_Association
4777 or else NT
(N
).Nkind
= N_Mod_Clause
4778 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4779 or else NT
(N
).Nkind
= N_Number_Declaration
4780 or else NT
(N
).Nkind
= N_Object_Declaration
4781 or else NT
(N
).Nkind
= N_Parameter_Specification
4782 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4783 or else NT
(N
).Nkind
= N_Qualified_Expression
4784 or else NT
(N
).Nkind
= N_Raise_Expression
4785 or else NT
(N
).Nkind
= N_Raise_Statement
4786 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4787 or else NT
(N
).Nkind
= N_Type_Conversion
4788 or else NT
(N
).Nkind
= N_Unchecked_Expression
4789 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4790 Set_Node3_With_Parent
(N
, Val
);
4793 procedure Set_Expression_Copy
4794 (N
: Node_Id
; Val
: Node_Id
) is
4796 pragma Assert
(False
4797 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4798 Set_Node2
(N
, Val
); -- semantic field, no parent set
4799 end Set_Expression_Copy
;
4801 procedure Set_Expressions
4802 (N
: Node_Id
; Val
: List_Id
) is
4804 pragma Assert
(False
4805 or else NT
(N
).Nkind
= N_Aggregate
4806 or else NT
(N
).Nkind
= N_Attribute_Reference
4807 or else NT
(N
).Nkind
= N_Extension_Aggregate
4808 or else NT
(N
).Nkind
= N_If_Expression
4809 or else NT
(N
).Nkind
= N_Indexed_Component
);
4810 Set_List1_With_Parent
(N
, Val
);
4811 end Set_Expressions
;
4813 procedure Set_First_Bit
4814 (N
: Node_Id
; Val
: Node_Id
) is
4816 pragma Assert
(False
4817 or else NT
(N
).Nkind
= N_Component_Clause
);
4818 Set_Node3_With_Parent
(N
, Val
);
4821 procedure Set_First_Inlined_Subprogram
4822 (N
: Node_Id
; Val
: Entity_Id
) is
4824 pragma Assert
(False
4825 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4826 Set_Node3
(N
, Val
); -- semantic field, no parent set
4827 end Set_First_Inlined_Subprogram
;
4829 procedure Set_First_Name
4830 (N
: Node_Id
; Val
: Boolean := True) is
4832 pragma Assert
(False
4833 or else NT
(N
).Nkind
= N_With_Clause
);
4837 procedure Set_First_Named_Actual
4838 (N
: Node_Id
; Val
: Node_Id
) is
4840 pragma Assert
(False
4841 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4842 or else NT
(N
).Nkind
= N_Function_Call
4843 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4844 Set_Node4
(N
, Val
); -- semantic field, no parent set
4845 end Set_First_Named_Actual
;
4847 procedure Set_First_Real_Statement
4848 (N
: Node_Id
; Val
: Node_Id
) is
4850 pragma Assert
(False
4851 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4852 Set_Node2
(N
, Val
); -- semantic field, no parent set
4853 end Set_First_Real_Statement
;
4855 procedure Set_First_Subtype_Link
4856 (N
: Node_Id
; Val
: Entity_Id
) is
4858 pragma Assert
(False
4859 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4860 Set_Node5
(N
, Val
); -- semantic field, no parent set
4861 end Set_First_Subtype_Link
;
4863 procedure Set_Float_Truncate
4864 (N
: Node_Id
; Val
: Boolean := True) is
4866 pragma Assert
(False
4867 or else NT
(N
).Nkind
= N_Type_Conversion
);
4868 Set_Flag11
(N
, Val
);
4869 end Set_Float_Truncate
;
4871 procedure Set_Formal_Type_Definition
4872 (N
: Node_Id
; Val
: Node_Id
) is
4874 pragma Assert
(False
4875 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4876 Set_Node3_With_Parent
(N
, Val
);
4877 end Set_Formal_Type_Definition
;
4879 procedure Set_Forwards_OK
4880 (N
: Node_Id
; Val
: Boolean := True) is
4882 pragma Assert
(False
4883 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4885 end Set_Forwards_OK
;
4887 procedure Set_From_Aspect_Specification
4888 (N
: Node_Id
; Val
: Boolean := True) is
4890 pragma Assert
(False
4891 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4892 or else NT
(N
).Nkind
= N_Pragma
);
4893 Set_Flag13
(N
, Val
);
4894 end Set_From_Aspect_Specification
;
4896 procedure Set_From_At_End
4897 (N
: Node_Id
; Val
: Boolean := True) is
4899 pragma Assert
(False
4900 or else NT
(N
).Nkind
= N_Raise_Statement
);
4902 end Set_From_At_End
;
4904 procedure Set_From_At_Mod
4905 (N
: Node_Id
; Val
: Boolean := True) is
4907 pragma Assert
(False
4908 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4910 end Set_From_At_Mod
;
4912 procedure Set_From_Conditional_Expression
4913 (N
: Node_Id
; Val
: Boolean := True) is
4915 pragma Assert
(False
4916 or else NT
(N
).Nkind
= N_Case_Statement
4917 or else NT
(N
).Nkind
= N_If_Statement
);
4919 end Set_From_Conditional_Expression
;
4921 procedure Set_From_Default
4922 (N
: Node_Id
; Val
: Boolean := True) is
4924 pragma Assert
(False
4925 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4927 end Set_From_Default
;
4929 procedure Set_Generalized_Indexing
4930 (N
: Node_Id
; Val
: Node_Id
) is
4932 pragma Assert
(False
4933 or else NT
(N
).Nkind
= N_Indexed_Component
);
4935 end Set_Generalized_Indexing
;
4937 procedure Set_Generic_Associations
4938 (N
: Node_Id
; Val
: List_Id
) is
4940 pragma Assert
(False
4941 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4942 or else NT
(N
).Nkind
= N_Function_Instantiation
4943 or else NT
(N
).Nkind
= N_Package_Instantiation
4944 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4945 Set_List3_With_Parent
(N
, Val
);
4946 end Set_Generic_Associations
;
4948 procedure Set_Generic_Formal_Declarations
4949 (N
: Node_Id
; Val
: List_Id
) is
4951 pragma Assert
(False
4952 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4953 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4954 Set_List2_With_Parent
(N
, Val
);
4955 end Set_Generic_Formal_Declarations
;
4957 procedure Set_Generic_Parent
4958 (N
: Node_Id
; Val
: Node_Id
) is
4960 pragma Assert
(False
4961 or else NT
(N
).Nkind
= N_Function_Specification
4962 or else NT
(N
).Nkind
= N_Package_Specification
4963 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4965 end Set_Generic_Parent
;
4967 procedure Set_Generic_Parent_Type
4968 (N
: Node_Id
; Val
: Node_Id
) is
4970 pragma Assert
(False
4971 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4973 end Set_Generic_Parent_Type
;
4975 procedure Set_Handled_Statement_Sequence
4976 (N
: Node_Id
; Val
: Node_Id
) is
4978 pragma Assert
(False
4979 or else NT
(N
).Nkind
= N_Accept_Statement
4980 or else NT
(N
).Nkind
= N_Block_Statement
4981 or else NT
(N
).Nkind
= N_Entry_Body
4982 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4983 or else NT
(N
).Nkind
= N_Package_Body
4984 or else NT
(N
).Nkind
= N_Subprogram_Body
4985 or else NT
(N
).Nkind
= N_Task_Body
);
4986 Set_Node4_With_Parent
(N
, Val
);
4987 end Set_Handled_Statement_Sequence
;
4989 procedure Set_Handler_List_Entry
4990 (N
: Node_Id
; Val
: Node_Id
) is
4992 pragma Assert
(False
4993 or else NT
(N
).Nkind
= N_Object_Declaration
);
4995 end Set_Handler_List_Entry
;
4997 procedure Set_Has_Created_Identifier
4998 (N
: Node_Id
; Val
: Boolean := True) is
5000 pragma Assert
(False
5001 or else NT
(N
).Nkind
= N_Block_Statement
5002 or else NT
(N
).Nkind
= N_Loop_Statement
);
5003 Set_Flag15
(N
, Val
);
5004 end Set_Has_Created_Identifier
;
5006 procedure Set_Has_Dereference_Action
5007 (N
: Node_Id
; Val
: Boolean := True) is
5009 pragma Assert
(False
5010 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
5011 Set_Flag13
(N
, Val
);
5012 end Set_Has_Dereference_Action
;
5014 procedure Set_Has_Dynamic_Length_Check
5015 (N
: Node_Id
; Val
: Boolean := True) is
5017 pragma Assert
(False
5018 or else NT
(N
).Nkind
in N_Subexpr
);
5019 Set_Flag10
(N
, Val
);
5020 end Set_Has_Dynamic_Length_Check
;
5022 procedure Set_Has_Init_Expression
5023 (N
: Node_Id
; Val
: Boolean := True) is
5025 pragma Assert
(False
5026 or else NT
(N
).Nkind
= N_Object_Declaration
);
5027 Set_Flag14
(N
, Val
);
5028 end Set_Has_Init_Expression
;
5030 procedure Set_Has_Local_Raise
5031 (N
: Node_Id
; Val
: Boolean := True) is
5033 pragma Assert
(False
5034 or else NT
(N
).Nkind
= N_Exception_Handler
);
5036 end Set_Has_Local_Raise
;
5038 procedure Set_Has_No_Elaboration_Code
5039 (N
: Node_Id
; Val
: Boolean := True) is
5041 pragma Assert
(False
5042 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5043 Set_Flag17
(N
, Val
);
5044 end Set_Has_No_Elaboration_Code
;
5046 procedure Set_Has_Pragma_Suppress_All
5047 (N
: Node_Id
; Val
: Boolean := True) is
5049 pragma Assert
(False
5050 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5051 Set_Flag14
(N
, Val
);
5052 end Set_Has_Pragma_Suppress_All
;
5054 procedure Set_Has_Private_View
5055 (N
: Node_Id
; Val
: Boolean := True) is
5057 pragma Assert
(False
5058 or else NT
(N
).Nkind
in N_Op
5059 or else NT
(N
).Nkind
= N_Character_Literal
5060 or else NT
(N
).Nkind
= N_Expanded_Name
5061 or else NT
(N
).Nkind
= N_Identifier
5062 or else NT
(N
).Nkind
= N_Operator_Symbol
);
5063 Set_Flag11
(N
, Val
);
5064 end Set_Has_Private_View
;
5066 procedure Set_Has_Relative_Deadline_Pragma
5067 (N
: Node_Id
; Val
: Boolean := True) is
5069 pragma Assert
(False
5070 or else NT
(N
).Nkind
= N_Subprogram_Body
5071 or else NT
(N
).Nkind
= N_Task_Definition
);
5073 end Set_Has_Relative_Deadline_Pragma
;
5075 procedure Set_Has_Self_Reference
5076 (N
: Node_Id
; Val
: Boolean := True) is
5078 pragma Assert
(False
5079 or else NT
(N
).Nkind
= N_Aggregate
5080 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5081 Set_Flag13
(N
, Val
);
5082 end Set_Has_Self_Reference
;
5084 procedure Set_Has_SP_Choice
5085 (N
: Node_Id
; Val
: Boolean := True) is
5087 pragma Assert
(False
5088 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5089 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5090 or else NT
(N
).Nkind
= N_Variant
);
5091 Set_Flag15
(N
, Val
);
5092 end Set_Has_SP_Choice
;
5094 procedure Set_Has_Storage_Size_Pragma
5095 (N
: Node_Id
; Val
: Boolean := True) is
5097 pragma Assert
(False
5098 or else NT
(N
).Nkind
= N_Task_Definition
);
5100 end Set_Has_Storage_Size_Pragma
;
5102 procedure Set_Has_Target_Names
5103 (N
: Node_Id
; Val
: Boolean := True) is
5105 pragma Assert
(False
5106 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5108 end Set_Has_Target_Names
;
5110 procedure Set_Has_Wide_Character
5111 (N
: Node_Id
; Val
: Boolean := True) is
5113 pragma Assert
(False
5114 or else NT
(N
).Nkind
= N_String_Literal
);
5115 Set_Flag11
(N
, Val
);
5116 end Set_Has_Wide_Character
;
5118 procedure Set_Has_Wide_Wide_Character
5119 (N
: Node_Id
; Val
: Boolean := True) is
5121 pragma Assert
(False
5122 or else NT
(N
).Nkind
= N_String_Literal
);
5123 Set_Flag13
(N
, Val
);
5124 end Set_Has_Wide_Wide_Character
;
5126 procedure Set_Header_Size_Added
5127 (N
: Node_Id
; Val
: Boolean := True) is
5129 pragma Assert
(False
5130 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5131 Set_Flag11
(N
, Val
);
5132 end Set_Header_Size_Added
;
5134 procedure Set_Hidden_By_Use_Clause
5135 (N
: Node_Id
; Val
: Elist_Id
) is
5137 pragma Assert
(False
5138 or else NT
(N
).Nkind
= N_Use_Package_Clause
5139 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5140 Set_Elist5
(N
, Val
);
5141 end Set_Hidden_By_Use_Clause
;
5143 procedure Set_High_Bound
5144 (N
: Node_Id
; Val
: Node_Id
) is
5146 pragma Assert
(False
5147 or else NT
(N
).Nkind
= N_Range
5148 or else NT
(N
).Nkind
= N_Real_Range_Specification
5149 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5150 Set_Node2_With_Parent
(N
, Val
);
5153 procedure Set_Identifier
5154 (N
: Node_Id
; Val
: Node_Id
) is
5156 pragma Assert
(False
5157 or else NT
(N
).Nkind
= N_Aspect_Specification
5158 or else NT
(N
).Nkind
= N_At_Clause
5159 or else NT
(N
).Nkind
= N_Block_Statement
5160 or else NT
(N
).Nkind
= N_Designator
5161 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5162 or else NT
(N
).Nkind
= N_Label
5163 or else NT
(N
).Nkind
= N_Loop_Statement
5164 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5165 Set_Node1_With_Parent
(N
, Val
);
5168 procedure Set_Implicit_With
5169 (N
: Node_Id
; Val
: Boolean := True) is
5171 pragma Assert
(False
5172 or else NT
(N
).Nkind
= N_With_Clause
);
5173 Set_Flag16
(N
, Val
);
5174 end Set_Implicit_With
;
5176 procedure Set_Interface_List
5177 (N
: Node_Id
; Val
: List_Id
) is
5179 pragma Assert
(False
5180 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5181 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5182 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5183 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5184 or else NT
(N
).Nkind
= N_Record_Definition
5185 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5186 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5187 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5188 Set_List2_With_Parent
(N
, Val
);
5189 end Set_Interface_List
;
5191 procedure Set_Interface_Present
5192 (N
: Node_Id
; Val
: Boolean := True) is
5194 pragma Assert
(False
5195 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5196 or else NT
(N
).Nkind
= N_Record_Definition
);
5197 Set_Flag16
(N
, Val
);
5198 end Set_Interface_Present
;
5200 procedure Set_Import_Interface_Present
5201 (N
: Node_Id
; Val
: Boolean := True) is
5203 pragma Assert
(False
5204 or else NT
(N
).Nkind
= N_Pragma
);
5205 Set_Flag16
(N
, Val
);
5206 end Set_Import_Interface_Present
;
5208 procedure Set_In_Present
5209 (N
: Node_Id
; Val
: Boolean := True) is
5211 pragma Assert
(False
5212 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5213 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5214 Set_Flag15
(N
, Val
);
5217 procedure Set_Includes_Infinities
5218 (N
: Node_Id
; Val
: Boolean := True) is
5220 pragma Assert
(False
5221 or else NT
(N
).Nkind
= N_Range
);
5222 Set_Flag11
(N
, Val
);
5223 end Set_Includes_Infinities
;
5225 procedure Set_Incomplete_View
5226 (N
: Node_Id
; Val
: Node_Id
) is
5228 pragma Assert
(False
5229 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5230 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5231 end Set_Incomplete_View
;
5233 procedure Set_Inherited_Discriminant
5234 (N
: Node_Id
; Val
: Boolean := True) is
5236 pragma Assert
(False
5237 or else NT
(N
).Nkind
= N_Component_Association
);
5238 Set_Flag13
(N
, Val
);
5239 end Set_Inherited_Discriminant
;
5241 procedure Set_Instance_Spec
5242 (N
: Node_Id
; Val
: Node_Id
) is
5244 pragma Assert
(False
5245 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5246 or else NT
(N
).Nkind
= N_Function_Instantiation
5247 or else NT
(N
).Nkind
= N_Package_Instantiation
5248 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5249 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5250 end Set_Instance_Spec
;
5252 procedure Set_Intval
5253 (N
: Node_Id
; Val
: Uint
) is
5255 pragma Assert
(False
5256 or else NT
(N
).Nkind
= N_Integer_Literal
);
5260 procedure Set_Is_Abort_Block
5261 (N
: Node_Id
; Val
: Boolean := True) is
5263 pragma Assert
(False
5264 or else NT
(N
).Nkind
= N_Block_Statement
);
5266 end Set_Is_Abort_Block
;
5268 procedure Set_Is_Accessibility_Actual
5269 (N
: Node_Id
; Val
: Boolean := True) is
5271 pragma Assert
(False
5272 or else NT
(N
).Nkind
= N_Parameter_Association
);
5273 Set_Flag13
(N
, Val
);
5274 end Set_Is_Accessibility_Actual
;
5276 procedure Set_Is_Analyzed_Pragma
5277 (N
: Node_Id
; Val
: Boolean := True) is
5279 pragma Assert
(False
5280 or else NT
(N
).Nkind
= N_Pragma
);
5282 end Set_Is_Analyzed_Pragma
;
5284 procedure Set_Is_Asynchronous_Call_Block
5285 (N
: Node_Id
; Val
: Boolean := True) is
5287 pragma Assert
(False
5288 or else NT
(N
).Nkind
= N_Block_Statement
);
5290 end Set_Is_Asynchronous_Call_Block
;
5292 procedure Set_Is_Boolean_Aspect
5293 (N
: Node_Id
; Val
: Boolean := True) is
5295 pragma Assert
(False
5296 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5297 Set_Flag16
(N
, Val
);
5298 end Set_Is_Boolean_Aspect
;
5300 procedure Set_Is_Checked
5301 (N
: Node_Id
; Val
: Boolean := True) is
5303 pragma Assert
(False
5304 or else NT
(N
).Nkind
= N_Aspect_Specification
5305 or else NT
(N
).Nkind
= N_Pragma
);
5306 Set_Flag11
(N
, Val
);
5309 procedure Set_Is_Checked_Ghost_Pragma
5310 (N
: Node_Id
; Val
: Boolean := True) is
5312 pragma Assert
(False
5313 or else NT
(N
).Nkind
= N_Pragma
);
5315 end Set_Is_Checked_Ghost_Pragma
;
5317 procedure Set_Is_Component_Left_Opnd
5318 (N
: Node_Id
; Val
: Boolean := True) is
5320 pragma Assert
(False
5321 or else NT
(N
).Nkind
= N_Op_Concat
);
5322 Set_Flag13
(N
, Val
);
5323 end Set_Is_Component_Left_Opnd
;
5325 procedure Set_Is_Component_Right_Opnd
5326 (N
: Node_Id
; Val
: Boolean := True) is
5328 pragma Assert
(False
5329 or else NT
(N
).Nkind
= N_Op_Concat
);
5330 Set_Flag14
(N
, Val
);
5331 end Set_Is_Component_Right_Opnd
;
5333 procedure Set_Is_Controlling_Actual
5334 (N
: Node_Id
; Val
: Boolean := True) is
5336 pragma Assert
(False
5337 or else NT
(N
).Nkind
in N_Subexpr
);
5338 Set_Flag16
(N
, Val
);
5339 end Set_Is_Controlling_Actual
;
5341 procedure Set_Is_Declaration_Level_Node
5342 (N
: Node_Id
; Val
: Boolean := True) is
5344 pragma Assert
(False
5345 or else NT
(N
).Nkind
= N_Call_Marker
5346 or else NT
(N
).Nkind
= N_Function_Instantiation
5347 or else NT
(N
).Nkind
= N_Package_Instantiation
5348 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5350 end Set_Is_Declaration_Level_Node
;
5352 procedure Set_Is_Delayed_Aspect
5353 (N
: Node_Id
; Val
: Boolean := True) is
5355 pragma Assert
(False
5356 or else NT
(N
).Nkind
= N_Aspect_Specification
5357 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5358 or else NT
(N
).Nkind
= N_Pragma
);
5359 Set_Flag14
(N
, Val
);
5360 end Set_Is_Delayed_Aspect
;
5362 procedure Set_Is_Disabled
5363 (N
: Node_Id
; Val
: Boolean := True) is
5365 pragma Assert
(False
5366 or else NT
(N
).Nkind
= N_Aspect_Specification
5367 or else NT
(N
).Nkind
= N_Pragma
);
5368 Set_Flag15
(N
, Val
);
5369 end Set_Is_Disabled
;
5371 procedure Set_Is_Dispatching_Call
5372 (N
: Node_Id
; Val
: Boolean := True) is
5374 pragma Assert
(False
5375 or else NT
(N
).Nkind
= N_Call_Marker
);
5377 end Set_Is_Dispatching_Call
;
5379 procedure Set_Is_Dynamic_Coextension
5380 (N
: Node_Id
; Val
: Boolean := True) is
5382 pragma Assert
(False
5383 or else NT
(N
).Nkind
= N_Allocator
);
5384 pragma Assert
(not Val
5385 or else not Is_Static_Coextension
(N
));
5386 Set_Flag18
(N
, Val
);
5387 end Set_Is_Dynamic_Coextension
;
5389 procedure Set_Is_Effective_Use_Clause
5390 (N
: Node_Id
; Val
: Boolean := True) is
5392 pragma Assert
(False
5393 or else NT
(N
).Nkind
= N_Use_Package_Clause
5394 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5396 end Set_Is_Effective_Use_Clause
;
5398 procedure Set_Is_Elaboration_Checks_OK_Node
5399 (N
: Node_Id
; Val
: Boolean := True) is
5401 pragma Assert
(False
5402 or else NT
(N
).Nkind
= N_Assignment_Statement
5403 or else NT
(N
).Nkind
= N_Attribute_Reference
5404 or else NT
(N
).Nkind
= N_Call_Marker
5405 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5406 or else NT
(N
).Nkind
= N_Expanded_Name
5407 or else NT
(N
).Nkind
= N_Function_Call
5408 or else NT
(N
).Nkind
= N_Function_Instantiation
5409 or else NT
(N
).Nkind
= N_Identifier
5410 or else NT
(N
).Nkind
= N_Package_Instantiation
5411 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5412 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5413 or else NT
(N
).Nkind
= N_Requeue_Statement
5414 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5416 end Set_Is_Elaboration_Checks_OK_Node
;
5418 procedure Set_Is_Elaboration_Code
5419 (N
: Node_Id
; Val
: Boolean := True) is
5421 pragma Assert
(False
5422 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5424 end Set_Is_Elaboration_Code
;
5426 procedure Set_Is_Elaboration_Warnings_OK_Node
5427 (N
: Node_Id
; Val
: Boolean := True) is
5429 pragma Assert
(False
5430 or else NT
(N
).Nkind
= N_Attribute_Reference
5431 or else NT
(N
).Nkind
= N_Call_Marker
5432 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5433 or else NT
(N
).Nkind
= N_Expanded_Name
5434 or else NT
(N
).Nkind
= N_Function_Call
5435 or else NT
(N
).Nkind
= N_Function_Instantiation
5436 or else NT
(N
).Nkind
= N_Identifier
5437 or else NT
(N
).Nkind
= N_Package_Instantiation
5438 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5439 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5440 or else NT
(N
).Nkind
= N_Requeue_Statement
5441 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5443 end Set_Is_Elaboration_Warnings_OK_Node
;
5445 procedure Set_Is_Elsif
5446 (N
: Node_Id
; Val
: Boolean := True) is
5448 pragma Assert
(False
5449 or else NT
(N
).Nkind
= N_If_Expression
);
5450 Set_Flag13
(N
, Val
);
5453 procedure Set_Is_Entry_Barrier_Function
5454 (N
: Node_Id
; Val
: Boolean := True) is
5456 pragma Assert
(False
5457 or else NT
(N
).Nkind
= N_Subprogram_Body
5458 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5460 end Set_Is_Entry_Barrier_Function
;
5462 procedure Set_Is_Expanded_Build_In_Place_Call
5463 (N
: Node_Id
; Val
: Boolean := True) is
5465 pragma Assert
(False
5466 or else NT
(N
).Nkind
= N_Function_Call
);
5467 Set_Flag11
(N
, Val
);
5468 end Set_Is_Expanded_Build_In_Place_Call
;
5470 procedure Set_Is_Expanded_Contract
5471 (N
: Node_Id
; Val
: Boolean := True) is
5473 pragma Assert
(False
5474 or else NT
(N
).Nkind
= N_Contract
);
5476 end Set_Is_Expanded_Contract
;
5478 procedure Set_Is_Finalization_Wrapper
5479 (N
: Node_Id
; Val
: Boolean := True) is
5481 pragma Assert
(False
5482 or else NT
(N
).Nkind
= N_Block_Statement
);
5484 end Set_Is_Finalization_Wrapper
;
5486 procedure Set_Is_Folded_In_Parser
5487 (N
: Node_Id
; Val
: Boolean := True) is
5489 pragma Assert
(False
5490 or else NT
(N
).Nkind
= N_String_Literal
);
5492 end Set_Is_Folded_In_Parser
;
5494 procedure Set_Is_Generic_Contract_Pragma
5495 (N
: Node_Id
; Val
: Boolean := True) is
5497 pragma Assert
(False
5498 or else NT
(N
).Nkind
= N_Pragma
);
5500 end Set_Is_Generic_Contract_Pragma
;
5502 procedure Set_Is_Homogeneous_Aggregate
5503 (N
: Node_Id
; Val
: Boolean := True) is
5505 pragma Assert
(False
5506 or else NT
(N
).Nkind
= N_Aggregate
);
5507 Set_Flag14
(N
, Val
);
5508 end Set_Is_Homogeneous_Aggregate
;
5510 procedure Set_Is_Ignored
5511 (N
: Node_Id
; Val
: Boolean := True) is
5513 pragma Assert
(False
5514 or else NT
(N
).Nkind
= N_Aspect_Specification
5515 or else NT
(N
).Nkind
= N_Pragma
);
5519 procedure Set_Is_Ignored_Ghost_Pragma
5520 (N
: Node_Id
; Val
: Boolean := True) is
5522 pragma Assert
(False
5523 or else NT
(N
).Nkind
= N_Pragma
);
5525 end Set_Is_Ignored_Ghost_Pragma
;
5527 procedure Set_Is_In_Discriminant_Check
5528 (N
: Node_Id
; Val
: Boolean := True) is
5530 pragma Assert
(False
5531 or else NT
(N
).Nkind
= N_Selected_Component
);
5532 Set_Flag11
(N
, Val
);
5533 end Set_Is_In_Discriminant_Check
;
5535 procedure Set_Is_Inherited_Pragma
5536 (N
: Node_Id
; Val
: Boolean := True) is
5538 pragma Assert
(False
5539 or else NT
(N
).Nkind
= N_Pragma
);
5541 end Set_Is_Inherited_Pragma
;
5543 procedure Set_Is_Initialization_Block
5544 (N
: Node_Id
; Val
: Boolean := True) is
5546 pragma Assert
(False
5547 or else NT
(N
).Nkind
= N_Block_Statement
);
5549 end Set_Is_Initialization_Block
;
5551 procedure Set_Is_Known_Guaranteed_ABE
5552 (N
: Node_Id
; Val
: Boolean := True) is
5554 pragma Assert
(False
5555 or else NT
(N
).Nkind
= N_Call_Marker
5556 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5557 or else NT
(N
).Nkind
= N_Function_Call
5558 or else NT
(N
).Nkind
= N_Function_Instantiation
5559 or else NT
(N
).Nkind
= N_Package_Instantiation
5560 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5561 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5562 Set_Flag18
(N
, Val
);
5563 end Set_Is_Known_Guaranteed_ABE
;
5565 procedure Set_Is_Machine_Number
5566 (N
: Node_Id
; Val
: Boolean := True) is
5568 pragma Assert
(False
5569 or else NT
(N
).Nkind
= N_Real_Literal
);
5570 Set_Flag11
(N
, Val
);
5571 end Set_Is_Machine_Number
;
5573 procedure Set_Is_Null_Loop
5574 (N
: Node_Id
; Val
: Boolean := True) is
5576 pragma Assert
(False
5577 or else NT
(N
).Nkind
= N_Loop_Statement
);
5578 Set_Flag16
(N
, Val
);
5579 end Set_Is_Null_Loop
;
5581 procedure Set_Is_Overloaded
5582 (N
: Node_Id
; Val
: Boolean := True) is
5584 pragma Assert
(False
5585 or else NT
(N
).Nkind
in N_Subexpr
);
5587 end Set_Is_Overloaded
;
5589 procedure Set_Is_Power_Of_2_For_Shift
5590 (N
: Node_Id
; Val
: Boolean := True) is
5592 pragma Assert
(False
5593 or else NT
(N
).Nkind
= N_Op_Expon
);
5594 Set_Flag13
(N
, Val
);
5595 end Set_Is_Power_Of_2_For_Shift
;
5597 procedure Set_Is_Preelaborable_Call
5598 (N
: Node_Id
; Val
: Boolean := True) is
5600 pragma Assert
(False
5601 or else NT
(N
).Nkind
= N_Call_Marker
);
5603 end Set_Is_Preelaborable_Call
;
5605 procedure Set_Is_Prefixed_Call
5606 (N
: Node_Id
; Val
: Boolean := True) is
5608 pragma Assert
(False
5609 or else NT
(N
).Nkind
= N_Selected_Component
);
5610 Set_Flag17
(N
, Val
);
5611 end Set_Is_Prefixed_Call
;
5613 procedure Set_Is_Protected_Subprogram_Body
5614 (N
: Node_Id
; Val
: Boolean := True) is
5616 pragma Assert
(False
5617 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5619 end Set_Is_Protected_Subprogram_Body
;
5621 procedure Set_Is_Qualified_Universal_Literal
5622 (N
: Node_Id
; Val
: Boolean := True) is
5624 pragma Assert
(False
5625 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5627 end Set_Is_Qualified_Universal_Literal
;
5629 procedure Set_Is_Read
5630 (N
: Node_Id
; Val
: Boolean := True) is
5632 pragma Assert
(False
5633 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5637 procedure Set_Is_Source_Call
5638 (N
: Node_Id
; Val
: Boolean := True) is
5640 pragma Assert
(False
5641 or else NT
(N
).Nkind
= N_Call_Marker
);
5643 end Set_Is_Source_Call
;
5645 procedure Set_Is_SPARK_Mode_On_Node
5646 (N
: Node_Id
; Val
: Boolean := True) is
5648 pragma Assert
(False
5649 or else NT
(N
).Nkind
= N_Assignment_Statement
5650 or else NT
(N
).Nkind
= N_Attribute_Reference
5651 or else NT
(N
).Nkind
= N_Call_Marker
5652 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5653 or else NT
(N
).Nkind
= N_Expanded_Name
5654 or else NT
(N
).Nkind
= N_Function_Call
5655 or else NT
(N
).Nkind
= N_Function_Instantiation
5656 or else NT
(N
).Nkind
= N_Identifier
5657 or else NT
(N
).Nkind
= N_Package_Instantiation
5658 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5659 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5660 or else NT
(N
).Nkind
= N_Requeue_Statement
5661 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5663 end Set_Is_SPARK_Mode_On_Node
;
5665 procedure Set_Is_Static_Coextension
5666 (N
: Node_Id
; Val
: Boolean := True) is
5668 pragma Assert
(False
5669 or else NT
(N
).Nkind
= N_Allocator
);
5670 pragma Assert
(not Val
5671 or else not Is_Dynamic_Coextension
(N
));
5672 Set_Flag14
(N
, Val
);
5673 end Set_Is_Static_Coextension
;
5675 procedure Set_Is_Static_Expression
5676 (N
: Node_Id
; Val
: Boolean := True) is
5678 pragma Assert
(False
5679 or else NT
(N
).Nkind
in N_Subexpr
);
5681 end Set_Is_Static_Expression
;
5683 procedure Set_Is_Subprogram_Descriptor
5684 (N
: Node_Id
; Val
: Boolean := True) is
5686 pragma Assert
(False
5687 or else NT
(N
).Nkind
= N_Object_Declaration
);
5688 Set_Flag16
(N
, Val
);
5689 end Set_Is_Subprogram_Descriptor
;
5691 procedure Set_Is_Task_Allocation_Block
5692 (N
: Node_Id
; Val
: Boolean := True) is
5694 pragma Assert
(False
5695 or else NT
(N
).Nkind
= N_Block_Statement
);
5697 end Set_Is_Task_Allocation_Block
;
5699 procedure Set_Is_Task_Body_Procedure
5700 (N
: Node_Id
; Val
: Boolean := True) is
5702 pragma Assert
(False
5703 or else NT
(N
).Nkind
= N_Subprogram_Body
5704 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5706 end Set_Is_Task_Body_Procedure
;
5708 procedure Set_Is_Task_Master
5709 (N
: Node_Id
; Val
: Boolean := True) is
5711 pragma Assert
(False
5712 or else NT
(N
).Nkind
= N_Block_Statement
5713 or else NT
(N
).Nkind
= N_Subprogram_Body
5714 or else NT
(N
).Nkind
= N_Task_Body
);
5716 end Set_Is_Task_Master
;
5718 procedure Set_Is_Write
5719 (N
: Node_Id
; Val
: Boolean := True) is
5721 pragma Assert
(False
5722 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5726 procedure Set_Iterator_Filter
5727 (N
: Node_Id
; Val
: Node_Id
) is
5729 pragma Assert
(False
5730 or else NT
(N
).Nkind
= N_Iterator_Specification
5731 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
5732 Set_Node3_With_Parent
(N
, Val
);
5733 end Set_Iterator_Filter
;
5735 procedure Set_Iteration_Scheme
5736 (N
: Node_Id
; Val
: Node_Id
) is
5738 pragma Assert
(False
5739 or else NT
(N
).Nkind
= N_Loop_Statement
);
5740 Set_Node2_With_Parent
(N
, Val
);
5741 end Set_Iteration_Scheme
;
5743 procedure Set_Iterator_Specification
5744 (N
: Node_Id
; Val
: Node_Id
) is
5746 pragma Assert
(False
5747 or else NT
(N
).Nkind
= N_Iterated_Component_Association
5748 or else NT
(N
).Nkind
= N_Iterated_Element_Association
5749 or else NT
(N
).Nkind
= N_Iteration_Scheme
5750 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5751 Set_Node2_With_Parent
(N
, Val
);
5752 end Set_Iterator_Specification
;
5755 (N
: Node_Id
; Val
: Entity_Id
) is
5757 pragma Assert
(False
5758 or else NT
(N
).Nkind
= N_Itype_Reference
);
5759 Set_Node1
(N
, Val
); -- no parent, semantic field
5762 procedure Set_Key_Expression
5763 (N
: Node_Id
; Val
: Entity_Id
) is
5765 pragma Assert
(False
5766 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
5767 Set_Node1_With_Parent
(N
, Val
);
5768 end Set_Key_Expression
;
5770 procedure Set_Kill_Range_Check
5771 (N
: Node_Id
; Val
: Boolean := True) is
5773 pragma Assert
(False
5774 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5775 Set_Flag11
(N
, Val
);
5776 end Set_Kill_Range_Check
;
5778 procedure Set_Label_Construct
5779 (N
: Node_Id
; Val
: Node_Id
) is
5781 pragma Assert
(False
5782 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5783 Set_Node2
(N
, Val
); -- semantic field, no parent set
5784 end Set_Label_Construct
;
5786 procedure Set_Last_Bit
5787 (N
: Node_Id
; Val
: Node_Id
) is
5789 pragma Assert
(False
5790 or else NT
(N
).Nkind
= N_Component_Clause
);
5791 Set_Node4_With_Parent
(N
, Val
);
5794 procedure Set_Last_Name
5795 (N
: Node_Id
; Val
: Boolean := True) is
5797 pragma Assert
(False
5798 or else NT
(N
).Nkind
= N_With_Clause
);
5802 procedure Set_Left_Opnd
5803 (N
: Node_Id
; Val
: Node_Id
) is
5805 pragma Assert
(False
5806 or else NT
(N
).Nkind
= N_And_Then
5807 or else NT
(N
).Nkind
= N_In
5808 or else NT
(N
).Nkind
= N_Not_In
5809 or else NT
(N
).Nkind
= N_Or_Else
5810 or else NT
(N
).Nkind
in N_Binary_Op
);
5811 Set_Node2_With_Parent
(N
, Val
);
5814 procedure Set_Library_Unit
5815 (N
: Node_Id
; Val
: Node_Id
) is
5817 pragma Assert
(False
5818 or else NT
(N
).Nkind
= N_Compilation_Unit
5819 or else NT
(N
).Nkind
= N_Package_Body_Stub
5820 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5821 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5822 or else NT
(N
).Nkind
= N_Task_Body_Stub
5823 or else NT
(N
).Nkind
= N_With_Clause
);
5824 Set_Node4
(N
, Val
); -- semantic field, no parent set
5825 end Set_Library_Unit
;
5827 procedure Set_Limited_View_Installed
5828 (N
: Node_Id
; Val
: Boolean := True) is
5830 pragma Assert
(False
5831 or else NT
(N
).Nkind
= N_Package_Specification
5832 or else NT
(N
).Nkind
= N_With_Clause
);
5833 Set_Flag18
(N
, Val
);
5834 end Set_Limited_View_Installed
;
5836 procedure Set_Limited_Present
5837 (N
: Node_Id
; Val
: Boolean := True) is
5839 pragma Assert
(False
5840 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5841 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5842 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5843 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5844 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5845 or else NT
(N
).Nkind
= N_Record_Definition
5846 or else NT
(N
).Nkind
= N_With_Clause
);
5847 Set_Flag17
(N
, Val
);
5848 end Set_Limited_Present
;
5850 procedure Set_Literals
5851 (N
: Node_Id
; Val
: List_Id
) is
5853 pragma Assert
(False
5854 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5855 Set_List1_With_Parent
(N
, Val
);
5858 procedure Set_Local_Raise_Not_OK
5859 (N
: Node_Id
; Val
: Boolean := True) is
5861 pragma Assert
(False
5862 or else NT
(N
).Nkind
= N_Exception_Handler
);
5864 end Set_Local_Raise_Not_OK
;
5866 procedure Set_Local_Raise_Statements
5867 (N
: Node_Id
; Val
: Elist_Id
) is
5869 pragma Assert
(False
5870 or else NT
(N
).Nkind
= N_Exception_Handler
);
5871 Set_Elist1
(N
, Val
);
5872 end Set_Local_Raise_Statements
;
5874 procedure Set_Loop_Actions
5875 (N
: Node_Id
; Val
: List_Id
) is
5877 pragma Assert
(False
5878 or else NT
(N
).Nkind
= N_Component_Association
5879 or else NT
(N
).Nkind
= N_Iterated_Component_Association
5880 or else NT
(N
).Nkind
= N_Iterated_Element_Association
);
5881 Set_List5
(N
, Val
); -- semantic field, no parent set
5882 end Set_Loop_Actions
;
5884 procedure Set_Loop_Parameter_Specification
5885 (N
: Node_Id
; Val
: Node_Id
) is
5887 pragma Assert
(False
5888 or else NT
(N
).Nkind
= N_Iterated_Element_Association
5889 or else NT
(N
).Nkind
= N_Iteration_Scheme
5890 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5891 Set_Node4_With_Parent
(N
, Val
);
5892 end Set_Loop_Parameter_Specification
;
5894 procedure Set_Low_Bound
5895 (N
: Node_Id
; Val
: Node_Id
) is
5897 pragma Assert
(False
5898 or else NT
(N
).Nkind
= N_Range
5899 or else NT
(N
).Nkind
= N_Real_Range_Specification
5900 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5901 Set_Node1_With_Parent
(N
, Val
);
5904 procedure Set_Mod_Clause
5905 (N
: Node_Id
; Val
: Node_Id
) is
5907 pragma Assert
(False
5908 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5909 Set_Node2_With_Parent
(N
, Val
);
5912 procedure Set_More_Ids
5913 (N
: Node_Id
; Val
: Boolean := True) is
5915 pragma Assert
(False
5916 or else NT
(N
).Nkind
= N_Component_Declaration
5917 or else NT
(N
).Nkind
= N_Discriminant_Specification
5918 or else NT
(N
).Nkind
= N_Exception_Declaration
5919 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5920 or else NT
(N
).Nkind
= N_Number_Declaration
5921 or else NT
(N
).Nkind
= N_Object_Declaration
5922 or else NT
(N
).Nkind
= N_Parameter_Specification
5923 or else NT
(N
).Nkind
= N_Use_Package_Clause
5924 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5928 procedure Set_Must_Be_Byte_Aligned
5929 (N
: Node_Id
; Val
: Boolean := True) is
5931 pragma Assert
(False
5932 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5933 Set_Flag14
(N
, Val
);
5934 end Set_Must_Be_Byte_Aligned
;
5936 procedure Set_Must_Not_Freeze
5937 (N
: Node_Id
; Val
: Boolean := True) is
5939 pragma Assert
(False
5940 or else NT
(N
).Nkind
= N_Subtype_Indication
5941 or else NT
(N
).Nkind
in N_Subexpr
);
5943 end Set_Must_Not_Freeze
;
5945 procedure Set_Must_Not_Override
5946 (N
: Node_Id
; Val
: Boolean := True) is
5948 pragma Assert
(False
5949 or else NT
(N
).Nkind
= N_Entry_Declaration
5950 or else NT
(N
).Nkind
= N_Function_Instantiation
5951 or else NT
(N
).Nkind
= N_Function_Specification
5952 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5953 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5954 Set_Flag15
(N
, Val
);
5955 end Set_Must_Not_Override
;
5957 procedure Set_Must_Override
5958 (N
: Node_Id
; Val
: Boolean := True) is
5960 pragma Assert
(False
5961 or else NT
(N
).Nkind
= N_Entry_Declaration
5962 or else NT
(N
).Nkind
= N_Function_Instantiation
5963 or else NT
(N
).Nkind
= N_Function_Specification
5964 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5965 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5966 Set_Flag14
(N
, Val
);
5967 end Set_Must_Override
;
5970 (N
: Node_Id
; Val
: Node_Id
) is
5972 pragma Assert
(False
5973 or else NT
(N
).Nkind
= N_Assignment_Statement
5974 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5975 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5976 or else NT
(N
).Nkind
= N_Designator
5977 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5978 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5979 or else NT
(N
).Nkind
= N_Exit_Statement
5980 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5981 or else NT
(N
).Nkind
= N_Function_Call
5982 or else NT
(N
).Nkind
= N_Function_Instantiation
5983 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5984 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5985 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5986 or else NT
(N
).Nkind
= N_Goto_Statement
5987 or else NT
(N
).Nkind
= N_Iterator_Specification
5988 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5989 or else NT
(N
).Nkind
= N_Package_Instantiation
5990 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5991 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5992 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5993 or else NT
(N
).Nkind
= N_Raise_Expression
5994 or else NT
(N
).Nkind
= N_Raise_Statement
5995 or else NT
(N
).Nkind
= N_Requeue_Statement
5996 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5997 or else NT
(N
).Nkind
= N_Subunit
5998 or else NT
(N
).Nkind
= N_Use_Package_Clause
5999 or else NT
(N
).Nkind
= N_Variant_Part
6000 or else NT
(N
).Nkind
= N_With_Clause
);
6001 Set_Node2_With_Parent
(N
, Val
);
6005 (N
: Node_Id
; Val
: List_Id
) is
6007 pragma Assert
(False
6008 or else NT
(N
).Nkind
= N_Abort_Statement
);
6009 Set_List2_With_Parent
(N
, Val
);
6012 procedure Set_Next_Entity
6013 (N
: Node_Id
; Val
: Node_Id
) is
6015 pragma Assert
(False
6016 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6017 or else NT
(N
).Nkind
= N_Defining_Identifier
6018 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6019 Set_Node2
(N
, Val
); -- semantic field, no parent set
6020 end Set_Next_Entity
;
6022 procedure Set_Next_Exit_Statement
6023 (N
: Node_Id
; Val
: Node_Id
) is
6025 pragma Assert
(False
6026 or else NT
(N
).Nkind
= N_Exit_Statement
);
6027 Set_Node3
(N
, Val
); -- semantic field, no parent set
6028 end Set_Next_Exit_Statement
;
6030 procedure Set_Next_Implicit_With
6031 (N
: Node_Id
; Val
: Node_Id
) is
6033 pragma Assert
(False
6034 or else NT
(N
).Nkind
= N_With_Clause
);
6035 Set_Node3
(N
, Val
); -- semantic field, no parent set
6036 end Set_Next_Implicit_With
;
6038 procedure Set_Next_Named_Actual
6039 (N
: Node_Id
; Val
: Node_Id
) is
6041 pragma Assert
(False
6042 or else NT
(N
).Nkind
= N_Parameter_Association
);
6043 Set_Node4
(N
, Val
); -- semantic field, no parent set
6044 end Set_Next_Named_Actual
;
6046 procedure Set_Next_Pragma
6047 (N
: Node_Id
; Val
: Node_Id
) is
6049 pragma Assert
(False
6050 or else NT
(N
).Nkind
= N_Pragma
);
6051 Set_Node1
(N
, Val
); -- semantic field, no parent set
6052 end Set_Next_Pragma
;
6054 procedure Set_Next_Rep_Item
6055 (N
: Node_Id
; Val
: Node_Id
) is
6057 pragma Assert
(False
6058 or else NT
(N
).Nkind
= N_Aspect_Specification
6059 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
6060 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
6061 or else NT
(N
).Nkind
= N_Null_Statement
6062 or else NT
(N
).Nkind
= N_Pragma
6063 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
6064 Set_Node5
(N
, Val
); -- semantic field, no parent set
6065 end Set_Next_Rep_Item
;
6067 procedure Set_Next_Use_Clause
6068 (N
: Node_Id
; Val
: Node_Id
) is
6070 pragma Assert
(False
6071 or else NT
(N
).Nkind
= N_Use_Package_Clause
6072 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6073 Set_Node3
(N
, Val
); -- semantic field, no parent set
6074 end Set_Next_Use_Clause
;
6076 procedure Set_No_Ctrl_Actions
6077 (N
: Node_Id
; Val
: Boolean := True) is
6079 pragma Assert
(False
6080 or else NT
(N
).Nkind
= N_Assignment_Statement
);
6082 end Set_No_Ctrl_Actions
;
6084 procedure Set_No_Elaboration_Check
6085 (N
: Node_Id
; Val
: Boolean := True) is
6087 pragma Assert
(False
6088 or else NT
(N
).Nkind
= N_Function_Call
6089 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6091 end Set_No_Elaboration_Check
;
6093 procedure Set_No_Entities_Ref_In_Spec
6094 (N
: Node_Id
; Val
: Boolean := True) is
6096 pragma Assert
(False
6097 or else NT
(N
).Nkind
= N_With_Clause
);
6099 end Set_No_Entities_Ref_In_Spec
;
6101 procedure Set_No_Initialization
6102 (N
: Node_Id
; Val
: Boolean := True) is
6104 pragma Assert
(False
6105 or else NT
(N
).Nkind
= N_Allocator
6106 or else NT
(N
).Nkind
= N_Object_Declaration
);
6107 Set_Flag13
(N
, Val
);
6108 end Set_No_Initialization
;
6110 procedure Set_No_Minimize_Eliminate
6111 (N
: Node_Id
; Val
: Boolean := True) is
6113 pragma Assert
(False
6114 or else NT
(N
).Nkind
= N_In
6115 or else NT
(N
).Nkind
= N_Not_In
);
6116 Set_Flag17
(N
, Val
);
6117 end Set_No_Minimize_Eliminate
;
6119 procedure Set_No_Side_Effect_Removal
6120 (N
: Node_Id
; Val
: Boolean := True) is
6122 pragma Assert
(False
6123 or else NT
(N
).Nkind
= N_Function_Call
);
6124 Set_Flag17
(N
, Val
);
6125 end Set_No_Side_Effect_Removal
;
6127 procedure Set_No_Truncation
6128 (N
: Node_Id
; Val
: Boolean := True) is
6130 pragma Assert
(False
6131 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6132 Set_Flag17
(N
, Val
);
6133 end Set_No_Truncation
;
6135 procedure Set_Null_Excluding_Subtype
6136 (N
: Node_Id
; Val
: Boolean := True) is
6138 pragma Assert
(False
6139 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
6140 Set_Flag16
(N
, Val
);
6141 end Set_Null_Excluding_Subtype
;
6143 procedure Set_Null_Exclusion_Present
6144 (N
: Node_Id
; Val
: Boolean := True) is
6146 pragma Assert
(False
6147 or else NT
(N
).Nkind
= N_Access_Definition
6148 or else NT
(N
).Nkind
= N_Access_Function_Definition
6149 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6150 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6151 or else NT
(N
).Nkind
= N_Allocator
6152 or else NT
(N
).Nkind
= N_Component_Definition
6153 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6154 or else NT
(N
).Nkind
= N_Discriminant_Specification
6155 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6156 or else NT
(N
).Nkind
= N_Function_Specification
6157 or else NT
(N
).Nkind
= N_Object_Declaration
6158 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6159 or else NT
(N
).Nkind
= N_Parameter_Specification
6160 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6161 Set_Flag11
(N
, Val
);
6162 end Set_Null_Exclusion_Present
;
6164 procedure Set_Null_Exclusion_In_Return_Present
6165 (N
: Node_Id
; Val
: Boolean := True) is
6167 pragma Assert
(False
6168 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6169 Set_Flag14
(N
, Val
);
6170 end Set_Null_Exclusion_In_Return_Present
;
6172 procedure Set_Null_Present
6173 (N
: Node_Id
; Val
: Boolean := True) is
6175 pragma Assert
(False
6176 or else NT
(N
).Nkind
= N_Component_List
6177 or else NT
(N
).Nkind
= N_Procedure_Specification
6178 or else NT
(N
).Nkind
= N_Record_Definition
);
6179 Set_Flag13
(N
, Val
);
6180 end Set_Null_Present
;
6182 procedure Set_Null_Record_Present
6183 (N
: Node_Id
; Val
: Boolean := True) is
6185 pragma Assert
(False
6186 or else NT
(N
).Nkind
= N_Aggregate
6187 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6188 Set_Flag17
(N
, Val
);
6189 end Set_Null_Record_Present
;
6191 procedure Set_Null_Statement
6192 (N
: Node_Id
; Val
: Node_Id
) is
6194 pragma Assert
(False
6195 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6197 end Set_Null_Statement
;
6199 procedure Set_Object_Definition
6200 (N
: Node_Id
; Val
: Node_Id
) is
6202 pragma Assert
(False
6203 or else NT
(N
).Nkind
= N_Object_Declaration
);
6204 Set_Node4_With_Parent
(N
, Val
);
6205 end Set_Object_Definition
;
6207 procedure Set_Of_Present
6208 (N
: Node_Id
; Val
: Boolean := True) is
6210 pragma Assert
(False
6211 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6212 Set_Flag16
(N
, Val
);
6215 procedure Set_Original_Discriminant
6216 (N
: Node_Id
; Val
: Node_Id
) is
6218 pragma Assert
(False
6219 or else NT
(N
).Nkind
= N_Identifier
);
6220 Set_Node2
(N
, Val
); -- semantic field, no parent set
6221 end Set_Original_Discriminant
;
6223 procedure Set_Original_Entity
6224 (N
: Node_Id
; Val
: Entity_Id
) is
6226 pragma Assert
(False
6227 or else NT
(N
).Nkind
= N_Integer_Literal
6228 or else NT
(N
).Nkind
= N_Real_Literal
);
6229 Set_Node2
(N
, Val
); -- semantic field, no parent set
6230 end Set_Original_Entity
;
6232 procedure Set_Others_Discrete_Choices
6233 (N
: Node_Id
; Val
: List_Id
) is
6235 pragma Assert
(False
6236 or else NT
(N
).Nkind
= N_Others_Choice
);
6237 Set_List1_With_Parent
(N
, Val
);
6238 end Set_Others_Discrete_Choices
;
6240 procedure Set_Out_Present
6241 (N
: Node_Id
; Val
: Boolean := True) is
6243 pragma Assert
(False
6244 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6245 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6246 Set_Flag17
(N
, Val
);
6247 end Set_Out_Present
;
6249 procedure Set_Parameter_Associations
6250 (N
: Node_Id
; Val
: List_Id
) is
6252 pragma Assert
(False
6253 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6254 or else NT
(N
).Nkind
= N_Function_Call
6255 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6256 Set_List3_With_Parent
(N
, Val
);
6257 end Set_Parameter_Associations
;
6259 procedure Set_Parameter_Specifications
6260 (N
: Node_Id
; Val
: List_Id
) is
6262 pragma Assert
(False
6263 or else NT
(N
).Nkind
= N_Accept_Statement
6264 or else NT
(N
).Nkind
= N_Access_Function_Definition
6265 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6266 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6267 or else NT
(N
).Nkind
= N_Entry_Declaration
6268 or else NT
(N
).Nkind
= N_Function_Specification
6269 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6270 Set_List3_With_Parent
(N
, Val
);
6271 end Set_Parameter_Specifications
;
6273 procedure Set_Parameter_Type
6274 (N
: Node_Id
; Val
: Node_Id
) is
6276 pragma Assert
(False
6277 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6278 Set_Node2_With_Parent
(N
, Val
);
6279 end Set_Parameter_Type
;
6281 procedure Set_Parent_Spec
6282 (N
: Node_Id
; Val
: Node_Id
) is
6284 pragma Assert
(False
6285 or else NT
(N
).Nkind
= N_Function_Instantiation
6286 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6287 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6288 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6289 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6290 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6291 or else NT
(N
).Nkind
= N_Package_Declaration
6292 or else NT
(N
).Nkind
= N_Package_Instantiation
6293 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6294 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6295 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6296 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6297 Set_Node4
(N
, Val
); -- semantic field, no parent set
6298 end Set_Parent_Spec
;
6300 procedure Set_Parent_With
6301 (N
: Node_Id
; Val
: Boolean := True) is
6303 pragma Assert
(False
6304 or else NT
(N
).Nkind
= N_With_Clause
);
6306 end Set_Parent_With
;
6308 procedure Set_Position
6309 (N
: Node_Id
; Val
: Node_Id
) is
6311 pragma Assert
(False
6312 or else NT
(N
).Nkind
= N_Component_Clause
);
6313 Set_Node2_With_Parent
(N
, Val
);
6316 procedure Set_Pragma_Argument_Associations
6317 (N
: Node_Id
; Val
: List_Id
) is
6319 pragma Assert
(False
6320 or else NT
(N
).Nkind
= N_Pragma
);
6321 Set_List2_With_Parent
(N
, Val
);
6322 end Set_Pragma_Argument_Associations
;
6324 procedure Set_Pragma_Identifier
6325 (N
: Node_Id
; Val
: Node_Id
) is
6327 pragma Assert
(False
6328 or else NT
(N
).Nkind
= N_Pragma
);
6329 Set_Node4_With_Parent
(N
, Val
);
6330 end Set_Pragma_Identifier
;
6332 procedure Set_Pragmas_After
6333 (N
: Node_Id
; Val
: List_Id
) is
6335 pragma Assert
(False
6336 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6337 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6338 Set_List5_With_Parent
(N
, Val
);
6339 end Set_Pragmas_After
;
6341 procedure Set_Pragmas_Before
6342 (N
: Node_Id
; Val
: List_Id
) is
6344 pragma Assert
(False
6345 or else NT
(N
).Nkind
= N_Accept_Alternative
6346 or else NT
(N
).Nkind
= N_Delay_Alternative
6347 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6348 or else NT
(N
).Nkind
= N_Mod_Clause
6349 or else NT
(N
).Nkind
= N_Terminate_Alternative
6350 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6351 Set_List4_With_Parent
(N
, Val
);
6352 end Set_Pragmas_Before
;
6354 procedure Set_Pre_Post_Conditions
6355 (N
: Node_Id
; Val
: Node_Id
) is
6357 pragma Assert
(False
6358 or else NT
(N
).Nkind
= N_Contract
);
6359 Set_Node1
(N
, Val
); -- semantic field, no parent set
6360 end Set_Pre_Post_Conditions
;
6362 procedure Set_Prefix
6363 (N
: Node_Id
; Val
: Node_Id
) is
6365 pragma Assert
(False
6366 or else NT
(N
).Nkind
= N_Attribute_Reference
6367 or else NT
(N
).Nkind
= N_Expanded_Name
6368 or else NT
(N
).Nkind
= N_Explicit_Dereference
6369 or else NT
(N
).Nkind
= N_Indexed_Component
6370 or else NT
(N
).Nkind
= N_Reference
6371 or else NT
(N
).Nkind
= N_Selected_Component
6372 or else NT
(N
).Nkind
= N_Slice
);
6373 Set_Node3_With_Parent
(N
, Val
);
6376 procedure Set_Premature_Use
6377 (N
: Node_Id
; Val
: Node_Id
) is
6379 pragma Assert
(False
6380 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6382 end Set_Premature_Use
;
6384 procedure Set_Present_Expr
6385 (N
: Node_Id
; Val
: Uint
) is
6387 pragma Assert
(False
6388 or else NT
(N
).Nkind
= N_Variant
);
6390 end Set_Present_Expr
;
6392 procedure Set_Prev_Ids
6393 (N
: Node_Id
; Val
: Boolean := True) is
6395 pragma Assert
(False
6396 or else NT
(N
).Nkind
= N_Component_Declaration
6397 or else NT
(N
).Nkind
= N_Discriminant_Specification
6398 or else NT
(N
).Nkind
= N_Exception_Declaration
6399 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6400 or else NT
(N
).Nkind
= N_Number_Declaration
6401 or else NT
(N
).Nkind
= N_Object_Declaration
6402 or else NT
(N
).Nkind
= N_Parameter_Specification
6403 or else NT
(N
).Nkind
= N_Use_Package_Clause
6404 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6408 procedure Set_Prev_Use_Clause
6409 (N
: Node_Id
; Val
: Node_Id
) is
6411 pragma Assert
(False
6412 or else NT
(N
).Nkind
= N_Use_Package_Clause
6413 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6414 Set_Node1
(N
, Val
); -- semantic field, no parent set
6415 end Set_Prev_Use_Clause
;
6417 procedure Set_Print_In_Hex
6418 (N
: Node_Id
; Val
: Boolean := True) is
6420 pragma Assert
(False
6421 or else NT
(N
).Nkind
= N_Integer_Literal
);
6422 Set_Flag13
(N
, Val
);
6423 end Set_Print_In_Hex
;
6425 procedure Set_Private_Declarations
6426 (N
: Node_Id
; Val
: List_Id
) is
6428 pragma Assert
(False
6429 or else NT
(N
).Nkind
= N_Package_Specification
6430 or else NT
(N
).Nkind
= N_Protected_Definition
6431 or else NT
(N
).Nkind
= N_Task_Definition
);
6432 Set_List3_With_Parent
(N
, Val
);
6433 end Set_Private_Declarations
;
6435 procedure Set_Private_Present
6436 (N
: Node_Id
; Val
: Boolean := True) is
6438 pragma Assert
(False
6439 or else NT
(N
).Nkind
= N_Compilation_Unit
6440 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6441 or else NT
(N
).Nkind
= N_With_Clause
);
6442 Set_Flag15
(N
, Val
);
6443 end Set_Private_Present
;
6445 procedure Set_Procedure_To_Call
6446 (N
: Node_Id
; Val
: Node_Id
) is
6448 pragma Assert
(False
6449 or else NT
(N
).Nkind
= N_Allocator
6450 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6451 or else NT
(N
).Nkind
= N_Free_Statement
6452 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6453 Set_Node2
(N
, Val
); -- semantic field, no parent set
6454 end Set_Procedure_To_Call
;
6456 procedure Set_Proper_Body
6457 (N
: Node_Id
; Val
: Node_Id
) is
6459 pragma Assert
(False
6460 or else NT
(N
).Nkind
= N_Subunit
);
6461 Set_Node1_With_Parent
(N
, Val
);
6462 end Set_Proper_Body
;
6464 procedure Set_Protected_Definition
6465 (N
: Node_Id
; Val
: Node_Id
) is
6467 pragma Assert
(False
6468 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6469 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6470 Set_Node3_With_Parent
(N
, Val
);
6471 end Set_Protected_Definition
;
6473 procedure Set_Protected_Present
6474 (N
: Node_Id
; Val
: Boolean := True) is
6476 pragma Assert
(False
6477 or else NT
(N
).Nkind
= N_Access_Function_Definition
6478 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6479 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6480 or else NT
(N
).Nkind
= N_Record_Definition
);
6482 end Set_Protected_Present
;
6484 procedure Set_Raises_Constraint_Error
6485 (N
: Node_Id
; Val
: Boolean := True) is
6487 pragma Assert
(False
6488 or else NT
(N
).Nkind
in N_Subexpr
);
6490 end Set_Raises_Constraint_Error
;
6492 procedure Set_Range_Constraint
6493 (N
: Node_Id
; Val
: Node_Id
) is
6495 pragma Assert
(False
6496 or else NT
(N
).Nkind
= N_Delta_Constraint
6497 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6498 Set_Node4_With_Parent
(N
, Val
);
6499 end Set_Range_Constraint
;
6501 procedure Set_Range_Expression
6502 (N
: Node_Id
; Val
: Node_Id
) is
6504 pragma Assert
(False
6505 or else NT
(N
).Nkind
= N_Range_Constraint
);
6506 Set_Node4_With_Parent
(N
, Val
);
6507 end Set_Range_Expression
;
6509 procedure Set_Real_Range_Specification
6510 (N
: Node_Id
; Val
: Node_Id
) is
6512 pragma Assert
(False
6513 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6514 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6515 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6516 Set_Node4_With_Parent
(N
, Val
);
6517 end Set_Real_Range_Specification
;
6519 procedure Set_Realval
6520 (N
: Node_Id
; Val
: Ureal
) is
6522 pragma Assert
(False
6523 or else NT
(N
).Nkind
= N_Real_Literal
);
6524 Set_Ureal3
(N
, Val
);
6527 procedure Set_Reason
6528 (N
: Node_Id
; Val
: Uint
) is
6530 pragma Assert
(False
6531 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6532 or else NT
(N
).Nkind
= N_Raise_Program_Error
6533 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6537 procedure Set_Record_Extension_Part
6538 (N
: Node_Id
; Val
: Node_Id
) is
6540 pragma Assert
(False
6541 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6542 Set_Node3_With_Parent
(N
, Val
);
6543 end Set_Record_Extension_Part
;
6545 procedure Set_Redundant_Use
6546 (N
: Node_Id
; Val
: Boolean := True) is
6548 pragma Assert
(False
6549 or else NT
(N
).Nkind
= N_Attribute_Reference
6550 or else NT
(N
).Nkind
= N_Expanded_Name
6551 or else NT
(N
).Nkind
= N_Identifier
);
6552 Set_Flag13
(N
, Val
);
6553 end Set_Redundant_Use
;
6555 procedure Set_Renaming_Exception
6556 (N
: Node_Id
; Val
: Node_Id
) is
6558 pragma Assert
(False
6559 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6561 end Set_Renaming_Exception
;
6563 procedure Set_Result_Definition
6564 (N
: Node_Id
; Val
: Node_Id
) is
6566 pragma Assert
(False
6567 or else NT
(N
).Nkind
= N_Access_Function_Definition
6568 or else NT
(N
).Nkind
= N_Function_Specification
);
6569 Set_Node4_With_Parent
(N
, Val
);
6570 end Set_Result_Definition
;
6572 procedure Set_Return_Object_Declarations
6573 (N
: Node_Id
; Val
: List_Id
) is
6575 pragma Assert
(False
6576 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6577 Set_List3_With_Parent
(N
, Val
);
6578 end Set_Return_Object_Declarations
;
6580 procedure Set_Return_Statement_Entity
6581 (N
: Node_Id
; Val
: Node_Id
) is
6583 pragma Assert
(False
6584 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6585 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6586 Set_Node5
(N
, Val
); -- semantic field, no parent set
6587 end Set_Return_Statement_Entity
;
6589 procedure Set_Reverse_Present
6590 (N
: Node_Id
; Val
: Boolean := True) is
6592 pragma Assert
(False
6593 or else NT
(N
).Nkind
= N_Iterator_Specification
6594 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6595 Set_Flag15
(N
, Val
);
6596 end Set_Reverse_Present
;
6598 procedure Set_Right_Opnd
6599 (N
: Node_Id
; Val
: Node_Id
) is
6601 pragma Assert
(False
6602 or else NT
(N
).Nkind
in N_Op
6603 or else NT
(N
).Nkind
= N_And_Then
6604 or else NT
(N
).Nkind
= N_In
6605 or else NT
(N
).Nkind
= N_Not_In
6606 or else NT
(N
).Nkind
= N_Or_Else
);
6607 Set_Node3_With_Parent
(N
, Val
);
6610 procedure Set_Rounded_Result
6611 (N
: Node_Id
; Val
: Boolean := True) is
6613 pragma Assert
(False
6614 or else NT
(N
).Nkind
= N_Op_Divide
6615 or else NT
(N
).Nkind
= N_Op_Multiply
6616 or else NT
(N
).Nkind
= N_Type_Conversion
);
6617 Set_Flag18
(N
, Val
);
6618 end Set_Rounded_Result
;
6620 procedure Set_Save_Invocation_Graph_Of_Body
6621 (N
: Node_Id
; Val
: Boolean := True) is
6623 pragma Assert
(False
6624 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6626 end Set_Save_Invocation_Graph_Of_Body
;
6628 procedure Set_SCIL_Controlling_Tag
6629 (N
: Node_Id
; Val
: Node_Id
) is
6631 pragma Assert
(False
6632 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6633 Set_Node5
(N
, Val
); -- semantic field, no parent set
6634 end Set_SCIL_Controlling_Tag
;
6636 procedure Set_SCIL_Entity
6637 (N
: Node_Id
; Val
: Node_Id
) is
6639 pragma Assert
(False
6640 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6641 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6642 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6643 Set_Node4
(N
, Val
); -- semantic field, no parent set
6644 end Set_SCIL_Entity
;
6646 procedure Set_SCIL_Tag_Value
6647 (N
: Node_Id
; Val
: Node_Id
) is
6649 pragma Assert
(False
6650 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6651 Set_Node5
(N
, Val
); -- semantic field, no parent set
6652 end Set_SCIL_Tag_Value
;
6654 procedure Set_SCIL_Target_Prim
6655 (N
: Node_Id
; Val
: Node_Id
) is
6657 pragma Assert
(False
6658 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6659 Set_Node2
(N
, Val
); -- semantic field, no parent set
6660 end Set_SCIL_Target_Prim
;
6663 (N
: Node_Id
; Val
: Node_Id
) is
6665 pragma Assert
(False
6666 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6667 or else NT
(N
).Nkind
= N_Defining_Identifier
6668 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6669 Set_Node3
(N
, Val
); -- semantic field, no parent set
6672 procedure Set_Select_Alternatives
6673 (N
: Node_Id
; Val
: List_Id
) is
6675 pragma Assert
(False
6676 or else NT
(N
).Nkind
= N_Selective_Accept
);
6677 Set_List1_With_Parent
(N
, Val
);
6678 end Set_Select_Alternatives
;
6680 procedure Set_Selector_Name
6681 (N
: Node_Id
; Val
: Node_Id
) is
6683 pragma Assert
(False
6684 or else NT
(N
).Nkind
= N_Expanded_Name
6685 or else NT
(N
).Nkind
= N_Generic_Association
6686 or else NT
(N
).Nkind
= N_Parameter_Association
6687 or else NT
(N
).Nkind
= N_Selected_Component
);
6688 Set_Node2_With_Parent
(N
, Val
);
6689 end Set_Selector_Name
;
6691 procedure Set_Selector_Names
6692 (N
: Node_Id
; Val
: List_Id
) is
6694 pragma Assert
(False
6695 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6696 Set_List1_With_Parent
(N
, Val
);
6697 end Set_Selector_Names
;
6699 procedure Set_Shift_Count_OK
6700 (N
: Node_Id
; Val
: Boolean := True) is
6702 pragma Assert
(False
6703 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6704 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6705 or else NT
(N
).Nkind
= N_Op_Shift_Left
6706 or else NT
(N
).Nkind
= N_Op_Shift_Right
6707 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6709 end Set_Shift_Count_OK
;
6711 procedure Set_Source_Type
6712 (N
: Node_Id
; Val
: Entity_Id
) is
6714 pragma Assert
(False
6715 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6716 Set_Node1
(N
, Val
); -- semantic field, no parent set
6717 end Set_Source_Type
;
6719 procedure Set_Specification
6720 (N
: Node_Id
; Val
: Node_Id
) is
6722 pragma Assert
(False
6723 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6724 or else NT
(N
).Nkind
= N_Expression_Function
6725 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6726 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6727 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6728 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6729 or else NT
(N
).Nkind
= N_Package_Declaration
6730 or else NT
(N
).Nkind
= N_Subprogram_Body
6731 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6732 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6733 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6734 Set_Node1_With_Parent
(N
, Val
);
6735 end Set_Specification
;
6737 procedure Set_Split_PPC
6738 (N
: Node_Id
; Val
: Boolean) is
6740 pragma Assert
(False
6741 or else NT
(N
).Nkind
= N_Aspect_Specification
6742 or else NT
(N
).Nkind
= N_Pragma
);
6743 Set_Flag17
(N
, Val
);
6746 procedure Set_Statements
6747 (N
: Node_Id
; Val
: List_Id
) is
6749 pragma Assert
(False
6750 or else NT
(N
).Nkind
= N_Abortable_Part
6751 or else NT
(N
).Nkind
= N_Accept_Alternative
6752 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6753 or else NT
(N
).Nkind
= N_Delay_Alternative
6754 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6755 or else NT
(N
).Nkind
= N_Exception_Handler
6756 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6757 or else NT
(N
).Nkind
= N_Loop_Statement
6758 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6759 Set_List3_With_Parent
(N
, Val
);
6762 procedure Set_Storage_Pool
6763 (N
: Node_Id
; Val
: Node_Id
) is
6765 pragma Assert
(False
6766 or else NT
(N
).Nkind
= N_Allocator
6767 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6768 or else NT
(N
).Nkind
= N_Free_Statement
6769 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6770 Set_Node1
(N
, Val
); -- semantic field, no parent set
6771 end Set_Storage_Pool
;
6773 procedure Set_Subpool_Handle_Name
6774 (N
: Node_Id
; Val
: Node_Id
) is
6776 pragma Assert
(False
6777 or else NT
(N
).Nkind
= N_Allocator
);
6778 Set_Node4_With_Parent
(N
, Val
);
6779 end Set_Subpool_Handle_Name
;
6781 procedure Set_Strval
6782 (N
: Node_Id
; Val
: String_Id
) is
6784 pragma Assert
(False
6785 or else NT
(N
).Nkind
= N_Operator_Symbol
6786 or else NT
(N
).Nkind
= N_String_Literal
);
6790 procedure Set_Subtype_Indication
6791 (N
: Node_Id
; Val
: Node_Id
) is
6793 pragma Assert
(False
6794 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6795 or else NT
(N
).Nkind
= N_Component_Definition
6796 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6797 or else NT
(N
).Nkind
= N_Iterator_Specification
6798 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6799 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6800 Set_Node5_With_Parent
(N
, Val
);
6801 end Set_Subtype_Indication
;
6803 procedure Set_Subtype_Mark
6804 (N
: Node_Id
; Val
: Node_Id
) is
6806 pragma Assert
(False
6807 or else NT
(N
).Nkind
= N_Access_Definition
6808 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6809 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6810 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6811 or else NT
(N
).Nkind
= N_Qualified_Expression
6812 or else NT
(N
).Nkind
= N_Subtype_Indication
6813 or else NT
(N
).Nkind
= N_Type_Conversion
6814 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6815 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6816 Set_Node4_With_Parent
(N
, Val
);
6817 end Set_Subtype_Mark
;
6819 procedure Set_Subtype_Marks
6820 (N
: Node_Id
; Val
: List_Id
) is
6822 pragma Assert
(False
6823 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6824 Set_List2_With_Parent
(N
, Val
);
6825 end Set_Subtype_Marks
;
6827 procedure Set_Suppress_Assignment_Checks
6828 (N
: Node_Id
; Val
: Boolean := True) is
6830 pragma Assert
(False
6831 or else NT
(N
).Nkind
= N_Assignment_Statement
6832 or else NT
(N
).Nkind
= N_Object_Declaration
);
6833 Set_Flag18
(N
, Val
);
6834 end Set_Suppress_Assignment_Checks
;
6836 procedure Set_Suppress_Loop_Warnings
6837 (N
: Node_Id
; Val
: Boolean := True) is
6839 pragma Assert
(False
6840 or else NT
(N
).Nkind
= N_Loop_Statement
);
6841 Set_Flag17
(N
, Val
);
6842 end Set_Suppress_Loop_Warnings
;
6844 procedure Set_Synchronized_Present
6845 (N
: Node_Id
; Val
: Boolean := True) is
6847 pragma Assert
(False
6848 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6849 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6850 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6851 or else NT
(N
).Nkind
= N_Record_Definition
);
6853 end Set_Synchronized_Present
;
6855 procedure Set_Tagged_Present
6856 (N
: Node_Id
; Val
: Boolean := True) is
6858 pragma Assert
(False
6859 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6860 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6861 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6862 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6863 or else NT
(N
).Nkind
= N_Record_Definition
);
6864 Set_Flag15
(N
, Val
);
6865 end Set_Tagged_Present
;
6867 procedure Set_Target
6868 (N
: Node_Id
; Val
: Entity_Id
) is
6870 pragma Assert
(False
6871 or else NT
(N
).Nkind
= N_Call_Marker
6872 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
6873 Set_Node1
(N
, Val
); -- semantic field, no parent set
6876 procedure Set_Target_Type
6877 (N
: Node_Id
; Val
: Entity_Id
) is
6879 pragma Assert
(False
6880 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6881 Set_Node2
(N
, Val
); -- semantic field, no parent set
6882 end Set_Target_Type
;
6884 procedure Set_Task_Definition
6885 (N
: Node_Id
; Val
: Node_Id
) is
6887 pragma Assert
(False
6888 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6889 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6890 Set_Node3_With_Parent
(N
, Val
);
6891 end Set_Task_Definition
;
6893 procedure Set_Task_Present
6894 (N
: Node_Id
; Val
: Boolean := True) is
6896 pragma Assert
(False
6897 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6898 or else NT
(N
).Nkind
= N_Record_Definition
);
6900 end Set_Task_Present
;
6902 procedure Set_Then_Actions
6903 (N
: Node_Id
; Val
: List_Id
) is
6905 pragma Assert
(False
6906 or else NT
(N
).Nkind
= N_If_Expression
);
6907 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6908 end Set_Then_Actions
;
6910 procedure Set_Then_Statements
6911 (N
: Node_Id
; Val
: List_Id
) is
6913 pragma Assert
(False
6914 or else NT
(N
).Nkind
= N_Elsif_Part
6915 or else NT
(N
).Nkind
= N_If_Statement
);
6916 Set_List2_With_Parent
(N
, Val
);
6917 end Set_Then_Statements
;
6919 procedure Set_Triggering_Alternative
6920 (N
: Node_Id
; Val
: Node_Id
) is
6922 pragma Assert
(False
6923 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6924 Set_Node1_With_Parent
(N
, Val
);
6925 end Set_Triggering_Alternative
;
6927 procedure Set_Triggering_Statement
6928 (N
: Node_Id
; Val
: Node_Id
) is
6930 pragma Assert
(False
6931 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6932 Set_Node1_With_Parent
(N
, Val
);
6933 end Set_Triggering_Statement
;
6935 procedure Set_TSS_Elist
6936 (N
: Node_Id
; Val
: Elist_Id
) is
6938 pragma Assert
(False
6939 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6940 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6943 procedure Set_Uneval_Old_Accept
6944 (N
: Node_Id
; Val
: Boolean := True) is
6946 pragma Assert
(False
6947 or else NT
(N
).Nkind
= N_Pragma
);
6949 end Set_Uneval_Old_Accept
;
6951 procedure Set_Uneval_Old_Warn
6952 (N
: Node_Id
; Val
: Boolean := True) is
6954 pragma Assert
(False
6955 or else NT
(N
).Nkind
= N_Pragma
);
6956 Set_Flag18
(N
, Val
);
6957 end Set_Uneval_Old_Warn
;
6959 procedure Set_Type_Definition
6960 (N
: Node_Id
; Val
: Node_Id
) is
6962 pragma Assert
(False
6963 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6964 Set_Node3_With_Parent
(N
, Val
);
6965 end Set_Type_Definition
;
6968 (N
: Node_Id
; Val
: Node_Id
) is
6970 pragma Assert
(False
6971 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6972 Set_Node2_With_Parent
(N
, Val
);
6975 procedure Set_Unknown_Discriminants_Present
6976 (N
: Node_Id
; Val
: Boolean := True) is
6978 pragma Assert
(False
6979 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6980 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6981 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6982 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6983 Set_Flag13
(N
, Val
);
6984 end Set_Unknown_Discriminants_Present
;
6986 procedure Set_Unreferenced_In_Spec
6987 (N
: Node_Id
; Val
: Boolean := True) is
6989 pragma Assert
(False
6990 or else NT
(N
).Nkind
= N_With_Clause
);
6992 end Set_Unreferenced_In_Spec
;
6994 procedure Set_Variant_Part
6995 (N
: Node_Id
; Val
: Node_Id
) is
6997 pragma Assert
(False
6998 or else NT
(N
).Nkind
= N_Component_List
);
6999 Set_Node4_With_Parent
(N
, Val
);
7000 end Set_Variant_Part
;
7002 procedure Set_Variants
7003 (N
: Node_Id
; Val
: List_Id
) is
7005 pragma Assert
(False
7006 or else NT
(N
).Nkind
= N_Variant_Part
);
7007 Set_List1_With_Parent
(N
, Val
);
7010 procedure Set_Visible_Declarations
7011 (N
: Node_Id
; Val
: List_Id
) is
7013 pragma Assert
(False
7014 or else NT
(N
).Nkind
= N_Package_Specification
7015 or else NT
(N
).Nkind
= N_Protected_Definition
7016 or else NT
(N
).Nkind
= N_Task_Definition
);
7017 Set_List2_With_Parent
(N
, Val
);
7018 end Set_Visible_Declarations
;
7020 procedure Set_Uninitialized_Variable
7021 (N
: Node_Id
; Val
: Node_Id
) is
7023 pragma Assert
(False
7024 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
7025 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
7027 end Set_Uninitialized_Variable
;
7029 procedure Set_Used_Operations
7030 (N
: Node_Id
; Val
: Elist_Id
) is
7032 pragma Assert
(False
7033 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
7034 Set_Elist2
(N
, Val
);
7035 end Set_Used_Operations
;
7037 procedure Set_Was_Attribute_Reference
7038 (N
: Node_Id
; Val
: Boolean := True) is
7040 pragma Assert
(False
7041 or else NT
(N
).Nkind
= N_Subprogram_Body
);
7043 end Set_Was_Attribute_Reference
;
7045 procedure Set_Was_Expression_Function
7046 (N
: Node_Id
; Val
: Boolean := True) is
7048 pragma Assert
(False
7049 or else NT
(N
).Nkind
= N_Subprogram_Body
);
7050 Set_Flag18
(N
, Val
);
7051 end Set_Was_Expression_Function
;
7053 procedure Set_Was_Originally_Stub
7054 (N
: Node_Id
; Val
: Boolean := True) is
7056 pragma Assert
(False
7057 or else NT
(N
).Nkind
= N_Package_Body
7058 or else NT
(N
).Nkind
= N_Protected_Body
7059 or else NT
(N
).Nkind
= N_Subprogram_Body
7060 or else NT
(N
).Nkind
= N_Task_Body
);
7061 Set_Flag13
(N
, Val
);
7062 end Set_Was_Originally_Stub
;
7064 -------------------------
7065 -- Iterator Procedures --
7066 -------------------------
7068 procedure Next_Entity
(N
: in out Node_Id
) is
7070 N
:= Next_Entity
(N
);
7073 procedure Next_Named_Actual
(N
: in out Node_Id
) is
7075 N
:= Next_Named_Actual
(N
);
7076 end Next_Named_Actual
;
7078 procedure Next_Rep_Item
(N
: in out Node_Id
) is
7080 N
:= Next_Rep_Item
(N
);
7083 procedure Next_Use_Clause
(N
: in out Node_Id
) is
7085 N
:= Next_Use_Clause
(N
);
7086 end Next_Use_Clause
;
7092 function End_Location
(N
: Node_Id
) return Source_Ptr
is
7093 L
: constant Uint
:= End_Span
(N
);
7098 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
7102 --------------------
7103 -- Get_Pragma_Arg --
7104 --------------------
7106 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
7108 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
7109 return Expression
(Arg
);
7115 ----------------------
7116 -- Set_End_Location --
7117 ----------------------
7119 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
7122 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
7123 end Set_End_Location
;
7125 --------------------------
7126 -- Pragma_Name_Unmapped --
7127 --------------------------
7129 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7131 return Chars
(Pragma_Identifier
(N
));
7132 end Pragma_Name_Unmapped
;
7134 ---------------------
7135 -- Map_Pragma_Name --
7136 ---------------------
7138 -- We don't want to introduce a dependence on some hash table package or
7139 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7140 -- search. Linear search is plenty efficient, given that we don't expect
7141 -- more than a couple of entries in the mapping.
7143 type Name_Pair
is record
7148 type Pragma_Map_Index
is range 1 .. 100;
7149 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7150 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7152 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7154 if Last_Pair
= Pragma_Map
'Last then
7155 raise Too_Many_Pragma_Mappings
;
7158 Last_Pair
:= Last_Pair
+ 1;
7159 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7160 end Map_Pragma_Name
;
7166 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7167 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7169 for J
in Pragma_Map
'First .. Last_Pair
loop
7170 if Result
= Pragma_Map
(J
).Key
then
7171 return Pragma_Map
(J
).Value
;