1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2017, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks
(All_Checks
);
33 -- No subprogram ordering check, due to logical grouping
35 with Atree
; use Atree
;
39 use Atree
.Unchecked_Access
;
40 -- This package is one of the few packages which is allowed to make direct
41 -- references to tree nodes (since it is in the business of providing a
42 -- higher level of tree access which other clients are expected to use and
43 -- which implements checks).
45 use Atree_Private_Part
;
46 -- The only reason that we ask for direct access to the private part of
47 -- the tree package is so that we can directly reference the Nkind field
48 -- of nodes table entries. We do this since it helps the efficiency of
49 -- the Sinfo debugging checks considerably (note that when we are checking
50 -- Nkind values, we don't need to check for a valid node reference, because
51 -- we will check that anyway when we reference the field).
53 NT
: Nodes
.Table_Ptr
renames Nodes
.Table
;
54 -- A short hand abbreviation, useful for the debugging checks
56 ----------------------------
57 -- Field Access Functions --
58 ----------------------------
60 -- Note: The use of Assert (False or else ...) is just a device to allow
61 -- uniform format of the conditions following this. Note that csinfo
62 -- expects this uniform format.
64 function Abort_Present
65 (N
: Node_Id
) return Boolean is
68 or else NT
(N
).Nkind
= N_Requeue_Statement
);
72 function Abortable_Part
73 (N
: Node_Id
) return Node_Id
is
76 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
80 function Abstract_Present
81 (N
: Node_Id
) return Boolean is
84 or else NT
(N
).Nkind
= N_Derived_Type_Definition
85 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
86 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
87 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
88 or else NT
(N
).Nkind
= N_Private_Type_Declaration
89 or else NT
(N
).Nkind
= N_Record_Definition
);
93 function Accept_Handler_Records
94 (N
: Node_Id
) return List_Id
is
97 or else NT
(N
).Nkind
= N_Accept_Alternative
);
99 end Accept_Handler_Records
;
101 function Accept_Statement
102 (N
: Node_Id
) return Node_Id
is
105 or else NT
(N
).Nkind
= N_Accept_Alternative
);
107 end Accept_Statement
;
109 function Access_Definition
110 (N
: Node_Id
) return Node_Id
is
113 or else NT
(N
).Nkind
= N_Component_Definition
114 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
115 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
117 end Access_Definition
;
119 function Access_To_Subprogram_Definition
120 (N
: Node_Id
) return Node_Id
is
123 or else NT
(N
).Nkind
= N_Access_Definition
);
125 end Access_To_Subprogram_Definition
;
127 function Access_Types_To_Process
128 (N
: Node_Id
) return Elist_Id
is
131 or else NT
(N
).Nkind
= N_Freeze_Entity
);
133 end Access_Types_To_Process
;
136 (N
: Node_Id
) return List_Id
is
139 or else NT
(N
).Nkind
= N_And_Then
140 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
141 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
142 or else NT
(N
).Nkind
= N_Compound_Statement
143 or else NT
(N
).Nkind
= N_Expression_With_Actions
144 or else NT
(N
).Nkind
= N_Freeze_Entity
145 or else NT
(N
).Nkind
= N_Or_Else
);
149 function Activation_Chain_Entity
150 (N
: Node_Id
) return Node_Id
is
153 or else NT
(N
).Nkind
= N_Block_Statement
154 or else NT
(N
).Nkind
= N_Entry_Body
155 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
156 or else NT
(N
).Nkind
= N_Package_Declaration
157 or else NT
(N
).Nkind
= N_Subprogram_Body
158 or else NT
(N
).Nkind
= N_Task_Body
);
160 end Activation_Chain_Entity
;
162 function Acts_As_Spec
163 (N
: Node_Id
) return Boolean is
166 or else NT
(N
).Nkind
= N_Compilation_Unit
167 or else NT
(N
).Nkind
= N_Subprogram_Body
);
171 function Actual_Designated_Subtype
172 (N
: Node_Id
) return Node_Id
is
175 or else NT
(N
).Nkind
= N_Explicit_Dereference
176 or else NT
(N
).Nkind
= N_Free_Statement
);
178 end Actual_Designated_Subtype
;
180 function Address_Warning_Posted
181 (N
: Node_Id
) return Boolean is
184 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
186 end Address_Warning_Posted
;
188 function Aggregate_Bounds
189 (N
: Node_Id
) return Node_Id
is
192 or else NT
(N
).Nkind
= N_Aggregate
);
194 end Aggregate_Bounds
;
196 function Aliased_Present
197 (N
: Node_Id
) return Boolean is
200 or else NT
(N
).Nkind
= N_Component_Definition
201 or else NT
(N
).Nkind
= N_Object_Declaration
202 or else NT
(N
).Nkind
= N_Parameter_Specification
);
207 (N
: Node_Id
) return Boolean is
210 or else NT
(N
).Nkind
= N_Others_Choice
);
215 (N
: Node_Id
) return Boolean is
218 or else NT
(N
).Nkind
= N_Access_Definition
219 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
220 or else NT
(N
).Nkind
= N_Quantified_Expression
221 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
225 function Alternatives
226 (N
: Node_Id
) return List_Id
is
229 or else NT
(N
).Nkind
= N_Case_Expression
230 or else NT
(N
).Nkind
= N_Case_Statement
231 or else NT
(N
).Nkind
= N_In
232 or else NT
(N
).Nkind
= N_Not_In
);
236 function Ancestor_Part
237 (N
: Node_Id
) return Node_Id
is
240 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
244 function Atomic_Sync_Required
245 (N
: Node_Id
) return Boolean is
248 or else NT
(N
).Nkind
= N_Expanded_Name
249 or else NT
(N
).Nkind
= N_Explicit_Dereference
250 or else NT
(N
).Nkind
= N_Identifier
251 or else NT
(N
).Nkind
= N_Indexed_Component
252 or else NT
(N
).Nkind
= N_Selected_Component
);
254 end Atomic_Sync_Required
;
256 function Array_Aggregate
257 (N
: Node_Id
) return Node_Id
is
260 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
264 function Aspect_Rep_Item
265 (N
: Node_Id
) return Node_Id
is
268 or else NT
(N
).Nkind
= N_Aspect_Specification
);
272 function Assignment_OK
273 (N
: Node_Id
) return Boolean is
276 or else NT
(N
).Nkind
= N_Object_Declaration
277 or else NT
(N
).Nkind
in N_Subexpr
);
281 function Associated_Node
282 (N
: Node_Id
) return Node_Id
is
285 or else NT
(N
).Nkind
in N_Has_Entity
286 or else NT
(N
).Nkind
= N_Aggregate
287 or else NT
(N
).Nkind
= N_Extension_Aggregate
288 or else NT
(N
).Nkind
= N_Selected_Component
289 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
294 (N
: Node_Id
) return Node_Id
is
297 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
301 function Attribute_Name
302 (N
: Node_Id
) return Name_Id
is
305 or else NT
(N
).Nkind
= N_Attribute_Reference
);
309 function Aux_Decls_Node
310 (N
: Node_Id
) return Node_Id
is
313 or else NT
(N
).Nkind
= N_Compilation_Unit
);
317 function Backwards_OK
318 (N
: Node_Id
) return Boolean is
321 or else NT
(N
).Nkind
= N_Assignment_Statement
);
325 function Bad_Is_Detected
326 (N
: Node_Id
) return Boolean is
329 or else NT
(N
).Nkind
= N_Subprogram_Body
);
333 function Body_Required
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Compilation_Unit
);
341 function Body_To_Inline
342 (N
: Node_Id
) return Node_Id
is
345 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
350 (N
: Node_Id
) return Boolean is
353 or else NT
(N
).Nkind
= N_Component_Association
354 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
355 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
356 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
357 or else NT
(N
).Nkind
= N_Generic_Association
358 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
363 (N
: Node_Id
) return Boolean is
366 or else NT
(N
).Nkind
= N_Extended_Return_Statement
367 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
371 function Char_Literal_Value
372 (N
: Node_Id
) return Uint
is
375 or else NT
(N
).Nkind
= N_Character_Literal
);
377 end Char_Literal_Value
;
380 (N
: Node_Id
) return Name_Id
is
383 or else NT
(N
).Nkind
in N_Has_Chars
);
387 function Check_Address_Alignment
388 (N
: Node_Id
) return Boolean is
391 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
393 end Check_Address_Alignment
;
395 function Choice_Parameter
396 (N
: Node_Id
) return Node_Id
is
399 or else NT
(N
).Nkind
= N_Exception_Handler
);
401 end Choice_Parameter
;
404 (N
: Node_Id
) return List_Id
is
407 or else NT
(N
).Nkind
= N_Component_Association
);
411 function Class_Present
412 (N
: Node_Id
) return Boolean is
415 or else NT
(N
).Nkind
= N_Aspect_Specification
416 or else NT
(N
).Nkind
= N_Pragma
);
420 function Classifications
421 (N
: Node_Id
) return Node_Id
is
424 or else NT
(N
).Nkind
= N_Contract
);
428 function Cleanup_Actions
429 (N
: Node_Id
) return List_Id
is
432 or else NT
(N
).Nkind
= N_Block_Statement
);
436 function Comes_From_Extended_Return_Statement
437 (N
: Node_Id
) return Boolean is
440 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
442 end Comes_From_Extended_Return_Statement
;
444 function Compile_Time_Known_Aggregate
445 (N
: Node_Id
) return Boolean is
448 or else NT
(N
).Nkind
= N_Aggregate
);
450 end Compile_Time_Known_Aggregate
;
452 function Component_Associations
453 (N
: Node_Id
) return List_Id
is
456 or else NT
(N
).Nkind
= N_Aggregate
457 or else NT
(N
).Nkind
= N_Delta_Aggregate
458 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
460 end Component_Associations
;
462 function Component_Clauses
463 (N
: Node_Id
) return List_Id
is
466 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
468 end Component_Clauses
;
470 function Component_Definition
471 (N
: Node_Id
) return Node_Id
is
474 or else NT
(N
).Nkind
= N_Component_Declaration
475 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
476 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
478 end Component_Definition
;
480 function Component_Items
481 (N
: Node_Id
) return List_Id
is
484 or else NT
(N
).Nkind
= N_Component_List
);
488 function Component_List
489 (N
: Node_Id
) return Node_Id
is
492 or else NT
(N
).Nkind
= N_Record_Definition
493 or else NT
(N
).Nkind
= N_Variant
);
497 function Component_Name
498 (N
: Node_Id
) return Node_Id
is
501 or else NT
(N
).Nkind
= N_Component_Clause
);
505 function Componentwise_Assignment
506 (N
: Node_Id
) return Boolean is
509 or else NT
(N
).Nkind
= N_Assignment_Statement
);
511 end Componentwise_Assignment
;
514 (N
: Node_Id
) return Node_Id
is
517 or else NT
(N
).Nkind
= N_Accept_Alternative
518 or else NT
(N
).Nkind
= N_Delay_Alternative
519 or else NT
(N
).Nkind
= N_Elsif_Part
520 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
521 or else NT
(N
).Nkind
= N_Exit_Statement
522 or else NT
(N
).Nkind
= N_If_Statement
523 or else NT
(N
).Nkind
= N_Iteration_Scheme
524 or else NT
(N
).Nkind
= N_Quantified_Expression
525 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
526 or else NT
(N
).Nkind
= N_Raise_Program_Error
527 or else NT
(N
).Nkind
= N_Raise_Storage_Error
528 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
532 function Condition_Actions
533 (N
: Node_Id
) return List_Id
is
536 or else NT
(N
).Nkind
= N_Elsif_Part
537 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
539 end Condition_Actions
;
541 function Config_Pragmas
542 (N
: Node_Id
) return List_Id
is
545 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
549 function Constant_Present
550 (N
: Node_Id
) return Boolean is
553 or else NT
(N
).Nkind
= N_Access_Definition
554 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
555 or else NT
(N
).Nkind
= N_Object_Declaration
);
557 end Constant_Present
;
560 (N
: Node_Id
) return Node_Id
is
563 or else NT
(N
).Nkind
= N_Subtype_Indication
);
568 (N
: Node_Id
) return List_Id
is
571 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
575 function Context_Installed
576 (N
: Node_Id
) return Boolean is
579 or else NT
(N
).Nkind
= N_With_Clause
);
581 end Context_Installed
;
583 function Context_Items
584 (N
: Node_Id
) return List_Id
is
587 or else NT
(N
).Nkind
= N_Compilation_Unit
);
591 function Context_Pending
592 (N
: Node_Id
) return Boolean is
595 or else NT
(N
).Nkind
= N_Compilation_Unit
);
599 function Contract_Test_Cases
600 (N
: Node_Id
) return Node_Id
is
603 or else NT
(N
).Nkind
= N_Contract
);
605 end Contract_Test_Cases
;
607 function Controlling_Argument
608 (N
: Node_Id
) return Node_Id
is
611 or else NT
(N
).Nkind
= N_Function_Call
612 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
614 end Controlling_Argument
;
616 function Conversion_OK
617 (N
: Node_Id
) return Boolean is
620 or else NT
(N
).Nkind
= N_Type_Conversion
);
624 function Convert_To_Return_False
625 (N
: Node_Id
) return Boolean is
628 or else NT
(N
).Nkind
= N_Raise_Expression
);
630 end Convert_To_Return_False
;
632 function Corresponding_Aspect
633 (N
: Node_Id
) return Node_Id
is
636 or else NT
(N
).Nkind
= N_Pragma
);
638 end Corresponding_Aspect
;
640 function Corresponding_Body
641 (N
: Node_Id
) return Node_Id
is
644 or else NT
(N
).Nkind
= N_Entry_Declaration
645 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
646 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
647 or else NT
(N
).Nkind
= N_Package_Body_Stub
648 or else NT
(N
).Nkind
= N_Package_Declaration
649 or else NT
(N
).Nkind
= N_Protected_Body_Stub
650 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
651 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
652 or else NT
(N
).Nkind
= N_Subprogram_Declaration
653 or else NT
(N
).Nkind
= N_Task_Body_Stub
654 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
656 end Corresponding_Body
;
658 function Corresponding_Formal_Spec
659 (N
: Node_Id
) return Node_Id
is
662 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
664 end Corresponding_Formal_Spec
;
666 function Corresponding_Generic_Association
667 (N
: Node_Id
) return Node_Id
is
670 or else NT
(N
).Nkind
= N_Object_Declaration
671 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
673 end Corresponding_Generic_Association
;
675 function Corresponding_Integer_Value
676 (N
: Node_Id
) return Uint
is
679 or else NT
(N
).Nkind
= N_Real_Literal
);
681 end Corresponding_Integer_Value
;
683 function Corresponding_Spec
684 (N
: Node_Id
) return Entity_Id
is
687 or else NT
(N
).Nkind
= N_Expression_Function
688 or else NT
(N
).Nkind
= N_Package_Body
689 or else NT
(N
).Nkind
= N_Protected_Body
690 or else NT
(N
).Nkind
= N_Subprogram_Body
691 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
692 or else NT
(N
).Nkind
= N_Task_Body
693 or else NT
(N
).Nkind
= N_With_Clause
);
695 end Corresponding_Spec
;
697 function Corresponding_Spec_Of_Stub
698 (N
: Node_Id
) return Entity_Id
is
701 or else NT
(N
).Nkind
= N_Package_Body_Stub
702 or else NT
(N
).Nkind
= N_Protected_Body_Stub
703 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
704 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
706 end Corresponding_Spec_Of_Stub
;
708 function Corresponding_Stub
709 (N
: Node_Id
) return Node_Id
is
712 or else NT
(N
).Nkind
= N_Subunit
);
714 end Corresponding_Stub
;
716 function Dcheck_Function
717 (N
: Node_Id
) return Entity_Id
is
720 or else NT
(N
).Nkind
= N_Variant
);
724 function Declarations
725 (N
: Node_Id
) return List_Id
is
728 or else NT
(N
).Nkind
= N_Accept_Statement
729 or else NT
(N
).Nkind
= N_Block_Statement
730 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
731 or else NT
(N
).Nkind
= N_Entry_Body
732 or else NT
(N
).Nkind
= N_Package_Body
733 or else NT
(N
).Nkind
= N_Protected_Body
734 or else NT
(N
).Nkind
= N_Subprogram_Body
735 or else NT
(N
).Nkind
= N_Task_Body
);
739 function Default_Expression
740 (N
: Node_Id
) return Node_Id
is
743 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
744 or else NT
(N
).Nkind
= N_Parameter_Specification
);
746 end Default_Expression
;
748 function Default_Storage_Pool
749 (N
: Node_Id
) return Node_Id
is
752 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
754 end Default_Storage_Pool
;
756 function Default_Name
757 (N
: Node_Id
) return Node_Id
is
760 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
761 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
765 function Defining_Identifier
766 (N
: Node_Id
) return Entity_Id
is
769 or else NT
(N
).Nkind
= N_Component_Declaration
770 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
771 or else NT
(N
).Nkind
= N_Discriminant_Specification
772 or else NT
(N
).Nkind
= N_Entry_Body
773 or else NT
(N
).Nkind
= N_Entry_Declaration
774 or else NT
(N
).Nkind
= N_Entry_Index_Specification
775 or else NT
(N
).Nkind
= N_Exception_Declaration
776 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
777 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
778 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
779 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
780 or else NT
(N
).Nkind
= N_Full_Type_Declaration
781 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
782 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
783 or else NT
(N
).Nkind
= N_Iterated_Component_Association
784 or else NT
(N
).Nkind
= N_Iterator_Specification
785 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
786 or else NT
(N
).Nkind
= N_Number_Declaration
787 or else NT
(N
).Nkind
= N_Object_Declaration
788 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
789 or else NT
(N
).Nkind
= N_Package_Body_Stub
790 or else NT
(N
).Nkind
= N_Parameter_Specification
791 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
792 or else NT
(N
).Nkind
= N_Private_Type_Declaration
793 or else NT
(N
).Nkind
= N_Protected_Body
794 or else NT
(N
).Nkind
= N_Protected_Body_Stub
795 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
796 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
797 or else NT
(N
).Nkind
= N_Single_Task_Declaration
798 or else NT
(N
).Nkind
= N_Subtype_Declaration
799 or else NT
(N
).Nkind
= N_Task_Body
800 or else NT
(N
).Nkind
= N_Task_Body_Stub
801 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
803 end Defining_Identifier
;
805 function Defining_Unit_Name
806 (N
: Node_Id
) return Node_Id
is
809 or else NT
(N
).Nkind
= N_Function_Instantiation
810 or else NT
(N
).Nkind
= N_Function_Specification
811 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
812 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
813 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
814 or else NT
(N
).Nkind
= N_Package_Body
815 or else NT
(N
).Nkind
= N_Package_Instantiation
816 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
817 or else NT
(N
).Nkind
= N_Package_Specification
818 or else NT
(N
).Nkind
= N_Procedure_Instantiation
819 or else NT
(N
).Nkind
= N_Procedure_Specification
);
821 end Defining_Unit_Name
;
823 function Delay_Alternative
824 (N
: Node_Id
) return Node_Id
is
827 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
829 end Delay_Alternative
;
831 function Delay_Statement
832 (N
: Node_Id
) return Node_Id
is
835 or else NT
(N
).Nkind
= N_Delay_Alternative
);
839 function Delta_Expression
840 (N
: Node_Id
) return Node_Id
is
843 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
844 or else NT
(N
).Nkind
= N_Delta_Constraint
845 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
847 end Delta_Expression
;
849 function Digits_Expression
850 (N
: Node_Id
) return Node_Id
is
853 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
854 or else NT
(N
).Nkind
= N_Digits_Constraint
855 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
857 end Digits_Expression
;
859 function Discr_Check_Funcs_Built
860 (N
: Node_Id
) return Boolean is
863 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
865 end Discr_Check_Funcs_Built
;
867 function Discrete_Choices
868 (N
: Node_Id
) return List_Id
is
871 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
872 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
873 or else NT
(N
).Nkind
= N_Iterated_Component_Association
874 or else NT
(N
).Nkind
= N_Variant
);
876 end Discrete_Choices
;
878 function Discrete_Range
879 (N
: Node_Id
) return Node_Id
is
882 or else NT
(N
).Nkind
= N_Slice
);
886 function Discrete_Subtype_Definition
887 (N
: Node_Id
) return Node_Id
is
890 or else NT
(N
).Nkind
= N_Entry_Declaration
891 or else NT
(N
).Nkind
= N_Entry_Index_Specification
892 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
894 end Discrete_Subtype_Definition
;
896 function Discrete_Subtype_Definitions
897 (N
: Node_Id
) return List_Id
is
900 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
902 end Discrete_Subtype_Definitions
;
904 function Discriminant_Specifications
905 (N
: Node_Id
) return List_Id
is
908 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
909 or else NT
(N
).Nkind
= N_Full_Type_Declaration
910 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
911 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
912 or else NT
(N
).Nkind
= N_Private_Type_Declaration
913 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
914 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
916 end Discriminant_Specifications
;
918 function Discriminant_Type
919 (N
: Node_Id
) return Node_Id
is
922 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
924 end Discriminant_Type
;
926 function Do_Accessibility_Check
927 (N
: Node_Id
) return Boolean is
930 or else NT
(N
).Nkind
= N_Parameter_Specification
);
932 end Do_Accessibility_Check
;
934 function Do_Discriminant_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
= N_Assignment_Statement
939 or else NT
(N
).Nkind
= N_Selected_Component
940 or else NT
(N
).Nkind
= N_Type_Conversion
);
942 end Do_Discriminant_Check
;
944 function Do_Division_Check
945 (N
: Node_Id
) return Boolean is
948 or else NT
(N
).Nkind
= N_Op_Divide
949 or else NT
(N
).Nkind
= N_Op_Mod
950 or else NT
(N
).Nkind
= N_Op_Rem
);
952 end Do_Division_Check
;
954 function Do_Length_Check
955 (N
: Node_Id
) return Boolean is
958 or else NT
(N
).Nkind
= N_Assignment_Statement
959 or else NT
(N
).Nkind
= N_Op_And
960 or else NT
(N
).Nkind
= N_Op_Or
961 or else NT
(N
).Nkind
= N_Op_Xor
962 or else NT
(N
).Nkind
= N_Type_Conversion
);
966 function Do_Overflow_Check
967 (N
: Node_Id
) return Boolean is
970 or else NT
(N
).Nkind
in N_Op
971 or else NT
(N
).Nkind
= N_Attribute_Reference
972 or else NT
(N
).Nkind
= N_Case_Expression
973 or else NT
(N
).Nkind
= N_If_Expression
974 or else NT
(N
).Nkind
= N_Type_Conversion
);
976 end Do_Overflow_Check
;
978 function Do_Range_Check
979 (N
: Node_Id
) return Boolean is
982 or else NT
(N
).Nkind
in N_Subexpr
);
986 function Do_Storage_Check
987 (N
: Node_Id
) return Boolean is
990 or else NT
(N
).Nkind
= N_Allocator
991 or else NT
(N
).Nkind
= N_Subprogram_Body
);
993 end Do_Storage_Check
;
995 function Do_Tag_Check
996 (N
: Node_Id
) return Boolean is
999 or else NT
(N
).Nkind
= N_Assignment_Statement
1000 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1001 or else NT
(N
).Nkind
= N_Function_Call
1002 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1003 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1004 or else NT
(N
).Nkind
= N_Type_Conversion
);
1008 function Elaborate_All_Desirable
1009 (N
: Node_Id
) return Boolean is
1011 pragma Assert
(False
1012 or else NT
(N
).Nkind
= N_With_Clause
);
1014 end Elaborate_All_Desirable
;
1016 function Elaborate_All_Present
1017 (N
: Node_Id
) return Boolean is
1019 pragma Assert
(False
1020 or else NT
(N
).Nkind
= N_With_Clause
);
1022 end Elaborate_All_Present
;
1024 function Elaborate_Desirable
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_Desirable
;
1032 function Elaborate_Present
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_Present
;
1040 function Else_Actions
1041 (N
: Node_Id
) return List_Id
is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_If_Expression
);
1048 function Else_Statements
1049 (N
: Node_Id
) return List_Id
is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1053 or else NT
(N
).Nkind
= N_If_Statement
1054 or else NT
(N
).Nkind
= N_Selective_Accept
);
1056 end Else_Statements
;
1058 function Elsif_Parts
1059 (N
: Node_Id
) return List_Id
is
1061 pragma Assert
(False
1062 or else NT
(N
).Nkind
= N_If_Statement
);
1066 function Enclosing_Variant
1067 (N
: Node_Id
) return Node_Id
is
1069 pragma Assert
(False
1070 or else NT
(N
).Nkind
= N_Variant
);
1072 end Enclosing_Variant
;
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1079 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1080 or else NT
(N
).Nkind
= N_Loop_Statement
1081 or else NT
(N
).Nkind
= N_Package_Specification
1082 or else NT
(N
).Nkind
= N_Protected_Body
1083 or else NT
(N
).Nkind
= N_Protected_Definition
1084 or else NT
(N
).Nkind
= N_Record_Definition
1085 or else NT
(N
).Nkind
= N_Task_Definition
);
1090 (N
: Node_Id
) return Uint
is
1092 pragma Assert
(False
1093 or else NT
(N
).Nkind
= N_Case_Statement
1094 or else NT
(N
).Nkind
= N_If_Statement
);
1099 (N
: Node_Id
) return Node_Id
is
1101 pragma Assert
(False
1102 or else NT
(N
).Nkind
in N_Has_Entity
1103 or else NT
(N
).Nkind
= N_Aspect_Specification
1104 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1105 or else NT
(N
).Nkind
= N_Freeze_Entity
1106 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1110 function Entity_Or_Associated_Node
1111 (N
: Node_Id
) return Node_Id
is
1113 pragma Assert
(False
1114 or else NT
(N
).Nkind
in N_Has_Entity
1115 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1117 end Entity_Or_Associated_Node
;
1119 function Entry_Body_Formal_Part
1120 (N
: Node_Id
) return Node_Id
is
1122 pragma Assert
(False
1123 or else NT
(N
).Nkind
= N_Entry_Body
);
1125 end Entry_Body_Formal_Part
;
1127 function Entry_Call_Alternative
1128 (N
: Node_Id
) return Node_Id
is
1130 pragma Assert
(False
1131 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1132 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1134 end Entry_Call_Alternative
;
1136 function Entry_Call_Statement
1137 (N
: Node_Id
) return Node_Id
is
1139 pragma Assert
(False
1140 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1142 end Entry_Call_Statement
;
1144 function Entry_Direct_Name
1145 (N
: Node_Id
) return Node_Id
is
1147 pragma Assert
(False
1148 or else NT
(N
).Nkind
= N_Accept_Statement
);
1150 end Entry_Direct_Name
;
1152 function Entry_Index
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Accept_Statement
);
1160 function Entry_Index_Specification
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1166 end Entry_Index_Specification
;
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
in N_Has_Etype
);
1176 function Exception_Choices
1177 (N
: Node_Id
) return List_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
= N_Exception_Handler
);
1182 end Exception_Choices
;
1184 function Exception_Handlers
1185 (N
: Node_Id
) return List_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1190 end Exception_Handlers
;
1192 function Exception_Junk
1193 (N
: Node_Id
) return Boolean is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Block_Statement
1197 or else NT
(N
).Nkind
= N_Goto_Statement
1198 or else NT
(N
).Nkind
= N_Label
1199 or else NT
(N
).Nkind
= N_Object_Declaration
1200 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1204 function Exception_Label
1205 (N
: Node_Id
) return Node_Id
is
1207 pragma Assert
(False
1208 or else NT
(N
).Nkind
= N_Exception_Handler
1209 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1210 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1211 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1213 end Exception_Label
;
1215 function Expansion_Delayed
1216 (N
: Node_Id
) return Boolean is
1218 pragma Assert
(False
1219 or else NT
(N
).Nkind
= N_Aggregate
1220 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1222 end Expansion_Delayed
;
1224 function Explicit_Actual_Parameter
1225 (N
: Node_Id
) return Node_Id
is
1227 pragma Assert
(False
1228 or else NT
(N
).Nkind
= N_Parameter_Association
);
1230 end Explicit_Actual_Parameter
;
1232 function Explicit_Generic_Actual_Parameter
1233 (N
: Node_Id
) return Node_Id
is
1235 pragma Assert
(False
1236 or else NT
(N
).Nkind
= N_Generic_Association
);
1238 end Explicit_Generic_Actual_Parameter
;
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Allocator
1245 or else NT
(N
).Nkind
= N_Aspect_Specification
1246 or else NT
(N
).Nkind
= N_Assignment_Statement
1247 or else NT
(N
).Nkind
= N_At_Clause
1248 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1249 or else NT
(N
).Nkind
= N_Case_Expression
1250 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1251 or else NT
(N
).Nkind
= N_Case_Statement
1252 or else NT
(N
).Nkind
= N_Code_Statement
1253 or else NT
(N
).Nkind
= N_Component_Association
1254 or else NT
(N
).Nkind
= N_Component_Declaration
1255 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1256 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1257 or else NT
(N
).Nkind
= N_Delta_Aggregate
1258 or else NT
(N
).Nkind
= N_Discriminant_Association
1259 or else NT
(N
).Nkind
= N_Discriminant_Specification
1260 or else NT
(N
).Nkind
= N_Exception_Declaration
1261 or else NT
(N
).Nkind
= N_Expression_Function
1262 or else NT
(N
).Nkind
= N_Expression_With_Actions
1263 or else NT
(N
).Nkind
= N_Free_Statement
1264 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1265 or else NT
(N
).Nkind
= N_Mod_Clause
1266 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1267 or else NT
(N
).Nkind
= N_Number_Declaration
1268 or else NT
(N
).Nkind
= N_Object_Declaration
1269 or else NT
(N
).Nkind
= N_Parameter_Specification
1270 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1271 or else NT
(N
).Nkind
= N_Qualified_Expression
1272 or else NT
(N
).Nkind
= N_Raise_Expression
1273 or else NT
(N
).Nkind
= N_Raise_Statement
1274 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1275 or else NT
(N
).Nkind
= N_Type_Conversion
1276 or else NT
(N
).Nkind
= N_Unchecked_Expression
1277 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1281 function Expression_Copy
1282 (N
: Node_Id
) return Node_Id
is
1284 pragma Assert
(False
1285 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1287 end Expression_Copy
;
1289 function Expressions
1290 (N
: Node_Id
) return List_Id
is
1292 pragma Assert
(False
1293 or else NT
(N
).Nkind
= N_Aggregate
1294 or else NT
(N
).Nkind
= N_Attribute_Reference
1295 or else NT
(N
).Nkind
= N_Extension_Aggregate
1296 or else NT
(N
).Nkind
= N_If_Expression
1297 or else NT
(N
).Nkind
= N_Indexed_Component
);
1302 (N
: Node_Id
) return Node_Id
is
1304 pragma Assert
(False
1305 or else NT
(N
).Nkind
= N_Component_Clause
);
1309 function First_Inlined_Subprogram
1310 (N
: Node_Id
) return Entity_Id
is
1312 pragma Assert
(False
1313 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1315 end First_Inlined_Subprogram
;
1318 (N
: Node_Id
) return Boolean is
1320 pragma Assert
(False
1321 or else NT
(N
).Nkind
= N_With_Clause
);
1325 function First_Named_Actual
1326 (N
: Node_Id
) return Node_Id
is
1328 pragma Assert
(False
1329 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1330 or else NT
(N
).Nkind
= N_Function_Call
1331 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1333 end First_Named_Actual
;
1335 function First_Real_Statement
1336 (N
: Node_Id
) return Node_Id
is
1338 pragma Assert
(False
1339 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1341 end First_Real_Statement
;
1343 function First_Subtype_Link
1344 (N
: Node_Id
) return Entity_Id
is
1346 pragma Assert
(False
1347 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1349 end First_Subtype_Link
;
1351 function Float_Truncate
1352 (N
: Node_Id
) return Boolean is
1354 pragma Assert
(False
1355 or else NT
(N
).Nkind
= N_Type_Conversion
);
1359 function Formal_Type_Definition
1360 (N
: Node_Id
) return Node_Id
is
1362 pragma Assert
(False
1363 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1365 end Formal_Type_Definition
;
1367 function Forwards_OK
1368 (N
: Node_Id
) return Boolean is
1370 pragma Assert
(False
1371 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1375 function From_Aspect_Specification
1376 (N
: Node_Id
) return Boolean is
1378 pragma Assert
(False
1379 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1380 or else NT
(N
).Nkind
= N_Pragma
);
1382 end From_Aspect_Specification
;
1384 function From_At_End
1385 (N
: Node_Id
) return Boolean is
1387 pragma Assert
(False
1388 or else NT
(N
).Nkind
= N_Raise_Statement
);
1392 function From_At_Mod
1393 (N
: Node_Id
) return Boolean is
1395 pragma Assert
(False
1396 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1400 function From_Conditional_Expression
1401 (N
: Node_Id
) return Boolean is
1403 pragma Assert
(False
1404 or else NT
(N
).Nkind
= N_Case_Statement
1405 or else NT
(N
).Nkind
= N_If_Statement
);
1407 end From_Conditional_Expression
;
1409 function From_Default
1410 (N
: Node_Id
) return Boolean is
1412 pragma Assert
(False
1413 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1417 function Generalized_Indexing
1418 (N
: Node_Id
) return Node_Id
is
1420 pragma Assert
(False
1421 or else NT
(N
).Nkind
= N_Indexed_Component
);
1423 end Generalized_Indexing
;
1425 function Generic_Associations
1426 (N
: Node_Id
) return List_Id
is
1428 pragma Assert
(False
1429 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1430 or else NT
(N
).Nkind
= N_Function_Instantiation
1431 or else NT
(N
).Nkind
= N_Package_Instantiation
1432 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1434 end Generic_Associations
;
1436 function Generic_Formal_Declarations
1437 (N
: Node_Id
) return List_Id
is
1439 pragma Assert
(False
1440 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1441 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1443 end Generic_Formal_Declarations
;
1445 function Generic_Parent
1446 (N
: Node_Id
) return Node_Id
is
1448 pragma Assert
(False
1449 or else NT
(N
).Nkind
= N_Function_Specification
1450 or else NT
(N
).Nkind
= N_Package_Specification
1451 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1455 function Generic_Parent_Type
1456 (N
: Node_Id
) return Node_Id
is
1458 pragma Assert
(False
1459 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1461 end Generic_Parent_Type
;
1463 function Handled_Statement_Sequence
1464 (N
: Node_Id
) return Node_Id
is
1466 pragma Assert
(False
1467 or else NT
(N
).Nkind
= N_Accept_Statement
1468 or else NT
(N
).Nkind
= N_Block_Statement
1469 or else NT
(N
).Nkind
= N_Entry_Body
1470 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1471 or else NT
(N
).Nkind
= N_Package_Body
1472 or else NT
(N
).Nkind
= N_Subprogram_Body
1473 or else NT
(N
).Nkind
= N_Task_Body
);
1475 end Handled_Statement_Sequence
;
1477 function Handler_List_Entry
1478 (N
: Node_Id
) return Node_Id
is
1480 pragma Assert
(False
1481 or else NT
(N
).Nkind
= N_Object_Declaration
);
1483 end Handler_List_Entry
;
1485 function Has_Created_Identifier
1486 (N
: Node_Id
) return Boolean is
1488 pragma Assert
(False
1489 or else NT
(N
).Nkind
= N_Block_Statement
1490 or else NT
(N
).Nkind
= N_Loop_Statement
);
1492 end Has_Created_Identifier
;
1494 function Has_Dereference_Action
1495 (N
: Node_Id
) return Boolean is
1497 pragma Assert
(False
1498 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1500 end Has_Dereference_Action
;
1502 function Has_Dynamic_Length_Check
1503 (N
: Node_Id
) return Boolean is
1505 pragma Assert
(False
1506 or else NT
(N
).Nkind
in N_Subexpr
);
1508 end Has_Dynamic_Length_Check
;
1510 function Has_Dynamic_Range_Check
1511 (N
: Node_Id
) return Boolean is
1513 pragma Assert
(False
1514 or else NT
(N
).Nkind
= N_Subtype_Declaration
1515 or else NT
(N
).Nkind
in N_Subexpr
);
1517 end Has_Dynamic_Range_Check
;
1519 function Has_Init_Expression
1520 (N
: Node_Id
) return Boolean is
1522 pragma Assert
(False
1523 or else NT
(N
).Nkind
= N_Object_Declaration
);
1525 end Has_Init_Expression
;
1527 function Has_Local_Raise
1528 (N
: Node_Id
) return Boolean is
1530 pragma Assert
(False
1531 or else NT
(N
).Nkind
= N_Exception_Handler
);
1533 end Has_Local_Raise
;
1535 function Has_No_Elaboration_Code
1536 (N
: Node_Id
) return Boolean is
1538 pragma Assert
(False
1539 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1541 end Has_No_Elaboration_Code
;
1543 function Has_Pragma_Suppress_All
1544 (N
: Node_Id
) return Boolean is
1546 pragma Assert
(False
1547 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1549 end Has_Pragma_Suppress_All
;
1551 function Has_Private_View
1552 (N
: Node_Id
) return Boolean is
1554 pragma Assert
(False
1555 or else NT
(N
).Nkind
in N_Op
1556 or else NT
(N
).Nkind
= N_Character_Literal
1557 or else NT
(N
).Nkind
= N_Expanded_Name
1558 or else NT
(N
).Nkind
= N_Identifier
1559 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1561 end Has_Private_View
;
1563 function Has_Relative_Deadline_Pragma
1564 (N
: Node_Id
) return Boolean is
1566 pragma Assert
(False
1567 or else NT
(N
).Nkind
= N_Subprogram_Body
1568 or else NT
(N
).Nkind
= N_Task_Definition
);
1570 end Has_Relative_Deadline_Pragma
;
1572 function Has_Self_Reference
1573 (N
: Node_Id
) return Boolean is
1575 pragma Assert
(False
1576 or else NT
(N
).Nkind
= N_Aggregate
1577 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1579 end Has_Self_Reference
;
1581 function Has_SP_Choice
1582 (N
: Node_Id
) return Boolean is
1584 pragma Assert
(False
1585 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1586 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1587 or else NT
(N
).Nkind
= N_Variant
);
1591 function Has_Storage_Size_Pragma
1592 (N
: Node_Id
) return Boolean is
1594 pragma Assert
(False
1595 or else NT
(N
).Nkind
= N_Task_Definition
);
1597 end Has_Storage_Size_Pragma
;
1599 function Has_Target_Names
1600 (N
: Node_Id
) return Boolean is
1602 pragma Assert
(False
1603 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1605 end Has_Target_Names
;
1607 function Has_Wide_Character
1608 (N
: Node_Id
) return Boolean is
1610 pragma Assert
(False
1611 or else NT
(N
).Nkind
= N_String_Literal
);
1613 end Has_Wide_Character
;
1615 function Has_Wide_Wide_Character
1616 (N
: Node_Id
) return Boolean is
1618 pragma Assert
(False
1619 or else NT
(N
).Nkind
= N_String_Literal
);
1621 end Has_Wide_Wide_Character
;
1623 function Header_Size_Added
1624 (N
: Node_Id
) return Boolean is
1626 pragma Assert
(False
1627 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1629 end Header_Size_Added
;
1631 function Hidden_By_Use_Clause
1632 (N
: Node_Id
) return Elist_Id
is
1634 pragma Assert
(False
1635 or else NT
(N
).Nkind
= N_Use_Package_Clause
1636 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1638 end Hidden_By_Use_Clause
;
1641 (N
: Node_Id
) return Node_Id
is
1643 pragma Assert
(False
1644 or else NT
(N
).Nkind
= N_Range
1645 or else NT
(N
).Nkind
= N_Real_Range_Specification
1646 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1651 (N
: Node_Id
) return Node_Id
is
1653 pragma Assert
(False
1654 or else NT
(N
).Nkind
= N_Aspect_Specification
1655 or else NT
(N
).Nkind
= N_At_Clause
1656 or else NT
(N
).Nkind
= N_Block_Statement
1657 or else NT
(N
).Nkind
= N_Designator
1658 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1659 or else NT
(N
).Nkind
= N_Label
1660 or else NT
(N
).Nkind
= N_Loop_Statement
1661 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1665 function Implicit_With
1666 (N
: Node_Id
) return Boolean is
1668 pragma Assert
(False
1669 or else NT
(N
).Nkind
= N_With_Clause
);
1673 function Implicit_With_From_Instantiation
1674 (N
: Node_Id
) return Boolean is
1676 pragma Assert
(False
1677 or else NT
(N
).Nkind
= N_With_Clause
);
1679 end Implicit_With_From_Instantiation
;
1681 function Interface_List
1682 (N
: Node_Id
) return List_Id
is
1684 pragma Assert
(False
1685 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1686 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1687 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1688 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1689 or else NT
(N
).Nkind
= N_Record_Definition
1690 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1691 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1692 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1696 function Interface_Present
1697 (N
: Node_Id
) return Boolean is
1699 pragma Assert
(False
1700 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1701 or else NT
(N
).Nkind
= N_Record_Definition
);
1703 end Interface_Present
;
1705 function Import_Interface_Present
1706 (N
: Node_Id
) return Boolean is
1708 pragma Assert
(False
1709 or else NT
(N
).Nkind
= N_Pragma
);
1711 end Import_Interface_Present
;
1714 (N
: Node_Id
) return Boolean is
1716 pragma Assert
(False
1717 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1718 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1722 function Includes_Infinities
1723 (N
: Node_Id
) return Boolean is
1725 pragma Assert
(False
1726 or else NT
(N
).Nkind
= N_Range
);
1728 end Includes_Infinities
;
1730 function Incomplete_View
1731 (N
: Node_Id
) return Node_Id
is
1733 pragma Assert
(False
1734 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1736 end Incomplete_View
;
1738 function Inherited_Discriminant
1739 (N
: Node_Id
) return Boolean is
1741 pragma Assert
(False
1742 or else NT
(N
).Nkind
= N_Component_Association
);
1744 end Inherited_Discriminant
;
1746 function Instance_Spec
1747 (N
: Node_Id
) return Node_Id
is
1749 pragma Assert
(False
1750 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1751 or else NT
(N
).Nkind
= N_Function_Instantiation
1752 or else NT
(N
).Nkind
= N_Package_Instantiation
1753 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1758 (N
: Node_Id
) return Uint
is
1760 pragma Assert
(False
1761 or else NT
(N
).Nkind
= N_Integer_Literal
);
1765 function Is_Abort_Block
1766 (N
: Node_Id
) return Boolean is
1768 pragma Assert
(False
1769 or else NT
(N
).Nkind
= N_Block_Statement
);
1773 function Is_Accessibility_Actual
1774 (N
: Node_Id
) return Boolean is
1776 pragma Assert
(False
1777 or else NT
(N
).Nkind
= N_Parameter_Association
);
1779 end Is_Accessibility_Actual
;
1781 function Is_Analyzed_Pragma
1782 (N
: Node_Id
) return Boolean is
1784 pragma Assert
(False
1785 or else NT
(N
).Nkind
= N_Pragma
);
1787 end Is_Analyzed_Pragma
;
1789 function Is_Asynchronous_Call_Block
1790 (N
: Node_Id
) return Boolean is
1792 pragma Assert
(False
1793 or else NT
(N
).Nkind
= N_Block_Statement
);
1795 end Is_Asynchronous_Call_Block
;
1797 function Is_Boolean_Aspect
1798 (N
: Node_Id
) return Boolean is
1800 pragma Assert
(False
1801 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1803 end Is_Boolean_Aspect
;
1806 (N
: Node_Id
) return Boolean is
1808 pragma Assert
(False
1809 or else NT
(N
).Nkind
= N_Aspect_Specification
1810 or else NT
(N
).Nkind
= N_Pragma
);
1814 function Is_Checked_Ghost_Pragma
1815 (N
: Node_Id
) return Boolean is
1817 pragma Assert
(False
1818 or else NT
(N
).Nkind
= N_Pragma
);
1820 end Is_Checked_Ghost_Pragma
;
1822 function Is_Component_Left_Opnd
1823 (N
: Node_Id
) return Boolean is
1825 pragma Assert
(False
1826 or else NT
(N
).Nkind
= N_Op_Concat
);
1828 end Is_Component_Left_Opnd
;
1830 function Is_Component_Right_Opnd
1831 (N
: Node_Id
) return Boolean is
1833 pragma Assert
(False
1834 or else NT
(N
).Nkind
= N_Op_Concat
);
1836 end Is_Component_Right_Opnd
;
1838 function Is_Controlling_Actual
1839 (N
: Node_Id
) return Boolean is
1841 pragma Assert
(False
1842 or else NT
(N
).Nkind
in N_Subexpr
);
1844 end Is_Controlling_Actual
;
1846 function Is_Declaration_Level_Node
1847 (N
: Node_Id
) return Boolean is
1849 pragma Assert
(False
1850 or else NT
(N
).Nkind
= N_Call_Marker
1851 or else NT
(N
).Nkind
= N_Function_Instantiation
1852 or else NT
(N
).Nkind
= N_Package_Instantiation
1853 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1855 end Is_Declaration_Level_Node
;
1857 function Is_Delayed_Aspect
1858 (N
: Node_Id
) return Boolean is
1860 pragma Assert
(False
1861 or else NT
(N
).Nkind
= N_Aspect_Specification
1862 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1863 or else NT
(N
).Nkind
= N_Pragma
);
1865 end Is_Delayed_Aspect
;
1867 function Is_Disabled
1868 (N
: Node_Id
) return Boolean is
1870 pragma Assert
(False
1871 or else NT
(N
).Nkind
= N_Aspect_Specification
1872 or else NT
(N
).Nkind
= N_Pragma
);
1876 function Is_Dispatching_Call
1877 (N
: Node_Id
) return Boolean is
1879 pragma Assert
(False
1880 or else NT
(N
).Nkind
= N_Call_Marker
);
1882 end Is_Dispatching_Call
;
1884 function Is_Dynamic_Coextension
1885 (N
: Node_Id
) return Boolean is
1887 pragma Assert
(False
1888 or else NT
(N
).Nkind
= N_Allocator
);
1890 end Is_Dynamic_Coextension
;
1892 function Is_Effective_Use_Clause
1893 (N
: Node_Id
) return Boolean is
1895 pragma Assert
(False
1896 or else NT
(N
).Nkind
= N_Use_Package_Clause
1897 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1899 end Is_Effective_Use_Clause
;
1901 function Is_Elaboration_Checks_OK_Node
1902 (N
: Node_Id
) return Boolean is
1904 pragma Assert
(False
1905 or else NT
(N
).Nkind
= N_Assignment_Statement
1906 or else NT
(N
).Nkind
= N_Attribute_Reference
1907 or else NT
(N
).Nkind
= N_Call_Marker
1908 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1909 or else NT
(N
).Nkind
= N_Expanded_Name
1910 or else NT
(N
).Nkind
= N_Function_Call
1911 or else NT
(N
).Nkind
= N_Function_Instantiation
1912 or else NT
(N
).Nkind
= N_Identifier
1913 or else NT
(N
).Nkind
= N_Package_Instantiation
1914 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1915 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1916 or else NT
(N
).Nkind
= N_Requeue_Statement
);
1918 end Is_Elaboration_Checks_OK_Node
;
1921 (N
: Node_Id
) return Boolean is
1923 pragma Assert
(False
1924 or else NT
(N
).Nkind
= N_If_Expression
);
1928 function Is_Entry_Barrier_Function
1929 (N
: Node_Id
) return Boolean is
1931 pragma Assert
(False
1932 or else NT
(N
).Nkind
= N_Subprogram_Body
1933 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1935 end Is_Entry_Barrier_Function
;
1937 function Is_Expanded_Build_In_Place_Call
1938 (N
: Node_Id
) return Boolean is
1940 pragma Assert
(False
1941 or else NT
(N
).Nkind
= N_Function_Call
);
1943 end Is_Expanded_Build_In_Place_Call
;
1945 function Is_Expanded_Contract
1946 (N
: Node_Id
) return Boolean is
1948 pragma Assert
(False
1949 or else NT
(N
).Nkind
= N_Contract
);
1951 end Is_Expanded_Contract
;
1953 function Is_Finalization_Wrapper
1954 (N
: Node_Id
) return Boolean is
1956 pragma Assert
(False
1957 or else NT
(N
).Nkind
= N_Block_Statement
);
1959 end Is_Finalization_Wrapper
;
1961 function Is_Folded_In_Parser
1962 (N
: Node_Id
) return Boolean is
1964 pragma Assert
(False
1965 or else NT
(N
).Nkind
= N_String_Literal
);
1967 end Is_Folded_In_Parser
;
1969 function Is_Generic_Contract_Pragma
1970 (N
: Node_Id
) return Boolean is
1972 pragma Assert
(False
1973 or else NT
(N
).Nkind
= N_Pragma
);
1975 end Is_Generic_Contract_Pragma
;
1978 (N
: Node_Id
) return Boolean is
1980 pragma Assert
(False
1981 or else NT
(N
).Nkind
= N_Aspect_Specification
1982 or else NT
(N
).Nkind
= N_Pragma
);
1986 function Is_Ignored_Ghost_Pragma
1987 (N
: Node_Id
) return Boolean is
1989 pragma Assert
(False
1990 or else NT
(N
).Nkind
= N_Pragma
);
1992 end Is_Ignored_Ghost_Pragma
;
1994 function Is_In_Discriminant_Check
1995 (N
: Node_Id
) return Boolean is
1997 pragma Assert
(False
1998 or else NT
(N
).Nkind
= N_Selected_Component
);
2000 end Is_In_Discriminant_Check
;
2002 function Is_Inherited_Pragma
2003 (N
: Node_Id
) return Boolean is
2005 pragma Assert
(False
2006 or else NT
(N
).Nkind
= N_Pragma
);
2008 end Is_Inherited_Pragma
;
2010 function Is_Initialization_Block
2011 (N
: Node_Id
) return Boolean is
2013 pragma Assert
(False
2014 or else NT
(N
).Nkind
= N_Block_Statement
);
2016 end Is_Initialization_Block
;
2018 function Is_Known_Guaranteed_ABE
2019 (N
: Node_Id
) return Boolean is
2021 pragma Assert
(False
2022 or else NT
(N
).Nkind
= N_Call_Marker
2023 or else NT
(N
).Nkind
= N_Function_Instantiation
2024 or else NT
(N
).Nkind
= N_Package_Instantiation
2025 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2027 end Is_Known_Guaranteed_ABE
;
2029 function Is_Machine_Number
2030 (N
: Node_Id
) return Boolean is
2032 pragma Assert
(False
2033 or else NT
(N
).Nkind
= N_Real_Literal
);
2035 end Is_Machine_Number
;
2037 function Is_Null_Loop
2038 (N
: Node_Id
) return Boolean is
2040 pragma Assert
(False
2041 or else NT
(N
).Nkind
= N_Loop_Statement
);
2045 function Is_Overloaded
2046 (N
: Node_Id
) return Boolean is
2048 pragma Assert
(False
2049 or else NT
(N
).Nkind
in N_Subexpr
);
2053 function Is_Power_Of_2_For_Shift
2054 (N
: Node_Id
) return Boolean is
2056 pragma Assert
(False
2057 or else NT
(N
).Nkind
= N_Op_Expon
);
2059 end Is_Power_Of_2_For_Shift
;
2061 function Is_Prefixed_Call
2062 (N
: Node_Id
) return Boolean is
2064 pragma Assert
(False
2065 or else NT
(N
).Nkind
= N_Selected_Component
);
2067 end Is_Prefixed_Call
;
2069 function Is_Protected_Subprogram_Body
2070 (N
: Node_Id
) return Boolean is
2072 pragma Assert
(False
2073 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2075 end Is_Protected_Subprogram_Body
;
2077 function Is_Qualified_Universal_Literal
2078 (N
: Node_Id
) return Boolean is
2080 pragma Assert
(False
2081 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2083 end Is_Qualified_Universal_Literal
;
2085 function Is_Recorded_Scenario
2086 (N
: Node_Id
) return Boolean is
2088 pragma Assert
(False
2089 or else NT
(N
).Nkind
= N_Call_Marker
2090 or else NT
(N
).Nkind
= N_Function_Instantiation
2091 or else NT
(N
).Nkind
= N_Package_Instantiation
2092 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2094 end Is_Recorded_Scenario
;
2096 function Is_Source_Call
2097 (N
: Node_Id
) return Boolean is
2099 pragma Assert
(False
2100 or else NT
(N
).Nkind
= N_Call_Marker
);
2104 function Is_SPARK_Mode_On_Node
2105 (N
: Node_Id
) return Boolean is
2107 pragma Assert
(False
2108 or else NT
(N
).Nkind
= N_Assignment_Statement
2109 or else NT
(N
).Nkind
= N_Attribute_Reference
2110 or else NT
(N
).Nkind
= N_Call_Marker
2111 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2112 or else NT
(N
).Nkind
= N_Expanded_Name
2113 or else NT
(N
).Nkind
= N_Function_Call
2114 or else NT
(N
).Nkind
= N_Function_Instantiation
2115 or else NT
(N
).Nkind
= N_Identifier
2116 or else NT
(N
).Nkind
= N_Package_Instantiation
2117 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2118 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2119 or else NT
(N
).Nkind
= N_Requeue_Statement
);
2121 end Is_SPARK_Mode_On_Node
;
2123 function Is_Static_Coextension
2124 (N
: Node_Id
) return Boolean is
2126 pragma Assert
(False
2127 or else NT
(N
).Nkind
= N_Allocator
);
2129 end Is_Static_Coextension
;
2131 function Is_Static_Expression
2132 (N
: Node_Id
) return Boolean is
2134 pragma Assert
(False
2135 or else NT
(N
).Nkind
in N_Subexpr
);
2137 end Is_Static_Expression
;
2139 function Is_Subprogram_Descriptor
2140 (N
: Node_Id
) return Boolean is
2142 pragma Assert
(False
2143 or else NT
(N
).Nkind
= N_Object_Declaration
);
2145 end Is_Subprogram_Descriptor
;
2147 function Is_Task_Allocation_Block
2148 (N
: Node_Id
) return Boolean is
2150 pragma Assert
(False
2151 or else NT
(N
).Nkind
= N_Block_Statement
);
2153 end Is_Task_Allocation_Block
;
2155 function Is_Task_Body_Procedure
2156 (N
: Node_Id
) return Boolean is
2158 pragma Assert
(False
2159 or else NT
(N
).Nkind
= N_Subprogram_Body
2160 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2162 end Is_Task_Body_Procedure
;
2164 function Is_Task_Master
2165 (N
: Node_Id
) return Boolean is
2167 pragma Assert
(False
2168 or else NT
(N
).Nkind
= N_Block_Statement
2169 or else NT
(N
).Nkind
= N_Subprogram_Body
2170 or else NT
(N
).Nkind
= N_Task_Body
);
2174 function Iteration_Scheme
2175 (N
: Node_Id
) return Node_Id
is
2177 pragma Assert
(False
2178 or else NT
(N
).Nkind
= N_Loop_Statement
);
2180 end Iteration_Scheme
;
2182 function Iterator_Specification
2183 (N
: Node_Id
) return Node_Id
is
2185 pragma Assert
(False
2186 or else NT
(N
).Nkind
= N_Iteration_Scheme
2187 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2189 end Iterator_Specification
;
2192 (N
: Node_Id
) return Node_Id
is
2194 pragma Assert
(False
2195 or else NT
(N
).Nkind
= N_Itype_Reference
);
2199 function Kill_Range_Check
2200 (N
: Node_Id
) return Boolean is
2202 pragma Assert
(False
2203 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2205 end Kill_Range_Check
;
2207 function Label_Construct
2208 (N
: Node_Id
) return Node_Id
is
2210 pragma Assert
(False
2211 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2213 end Label_Construct
;
2216 (N
: Node_Id
) return Node_Id
is
2218 pragma Assert
(False
2219 or else NT
(N
).Nkind
= N_Component_Clause
);
2224 (N
: Node_Id
) return Boolean is
2226 pragma Assert
(False
2227 or else NT
(N
).Nkind
= N_With_Clause
);
2232 (N
: Node_Id
) return Node_Id
is
2234 pragma Assert
(False
2235 or else NT
(N
).Nkind
= N_And_Then
2236 or else NT
(N
).Nkind
= N_In
2237 or else NT
(N
).Nkind
= N_Not_In
2238 or else NT
(N
).Nkind
= N_Or_Else
2239 or else NT
(N
).Nkind
in N_Binary_Op
);
2243 function Library_Unit
2244 (N
: Node_Id
) return Node_Id
is
2246 pragma Assert
(False
2247 or else NT
(N
).Nkind
= N_Compilation_Unit
2248 or else NT
(N
).Nkind
= N_Package_Body_Stub
2249 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2250 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2251 or else NT
(N
).Nkind
= N_Task_Body_Stub
2252 or else NT
(N
).Nkind
= N_With_Clause
);
2256 function Limited_View_Installed
2257 (N
: Node_Id
) return Boolean is
2259 pragma Assert
(False
2260 or else NT
(N
).Nkind
= N_Package_Specification
2261 or else NT
(N
).Nkind
= N_With_Clause
);
2263 end Limited_View_Installed
;
2265 function Limited_Present
2266 (N
: Node_Id
) return Boolean is
2268 pragma Assert
(False
2269 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2270 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2271 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2272 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2273 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2274 or else NT
(N
).Nkind
= N_Record_Definition
2275 or else NT
(N
).Nkind
= N_With_Clause
);
2277 end Limited_Present
;
2280 (N
: Node_Id
) return List_Id
is
2282 pragma Assert
(False
2283 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2287 function Local_Raise_Not_OK
2288 (N
: Node_Id
) return Boolean is
2290 pragma Assert
(False
2291 or else NT
(N
).Nkind
= N_Exception_Handler
);
2293 end Local_Raise_Not_OK
;
2295 function Local_Raise_Statements
2296 (N
: Node_Id
) return Elist_Id
is
2298 pragma Assert
(False
2299 or else NT
(N
).Nkind
= N_Exception_Handler
);
2301 end Local_Raise_Statements
;
2303 function Loop_Actions
2304 (N
: Node_Id
) return List_Id
is
2306 pragma Assert
(False
2307 or else NT
(N
).Nkind
= N_Component_Association
2308 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2312 function Loop_Parameter_Specification
2313 (N
: Node_Id
) return Node_Id
is
2315 pragma Assert
(False
2316 or else NT
(N
).Nkind
= N_Iteration_Scheme
2317 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2319 end Loop_Parameter_Specification
;
2322 (N
: Node_Id
) return Node_Id
is
2324 pragma Assert
(False
2325 or else NT
(N
).Nkind
= N_Range
2326 or else NT
(N
).Nkind
= N_Real_Range_Specification
2327 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2332 (N
: Node_Id
) return Node_Id
is
2334 pragma Assert
(False
2335 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2340 (N
: Node_Id
) return Boolean is
2342 pragma Assert
(False
2343 or else NT
(N
).Nkind
= N_Component_Declaration
2344 or else NT
(N
).Nkind
= N_Discriminant_Specification
2345 or else NT
(N
).Nkind
= N_Exception_Declaration
2346 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2347 or else NT
(N
).Nkind
= N_Number_Declaration
2348 or else NT
(N
).Nkind
= N_Object_Declaration
2349 or else NT
(N
).Nkind
= N_Parameter_Specification
2350 or else NT
(N
).Nkind
= N_Use_Package_Clause
2351 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2355 function Must_Be_Byte_Aligned
2356 (N
: Node_Id
) return Boolean is
2358 pragma Assert
(False
2359 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2361 end Must_Be_Byte_Aligned
;
2363 function Must_Not_Freeze
2364 (N
: Node_Id
) return Boolean is
2366 pragma Assert
(False
2367 or else NT
(N
).Nkind
= N_Subtype_Indication
2368 or else NT
(N
).Nkind
in N_Subexpr
);
2370 end Must_Not_Freeze
;
2372 function Must_Not_Override
2373 (N
: Node_Id
) return Boolean is
2375 pragma Assert
(False
2376 or else NT
(N
).Nkind
= N_Entry_Declaration
2377 or else NT
(N
).Nkind
= N_Function_Instantiation
2378 or else NT
(N
).Nkind
= N_Function_Specification
2379 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2380 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2382 end Must_Not_Override
;
2384 function Must_Override
2385 (N
: Node_Id
) return Boolean is
2387 pragma Assert
(False
2388 or else NT
(N
).Nkind
= N_Entry_Declaration
2389 or else NT
(N
).Nkind
= N_Function_Instantiation
2390 or else NT
(N
).Nkind
= N_Function_Specification
2391 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2392 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2397 (N
: Node_Id
) return Node_Id
is
2399 pragma Assert
(False
2400 or else NT
(N
).Nkind
= N_Assignment_Statement
2401 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2402 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2403 or else NT
(N
).Nkind
= N_Designator
2404 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2405 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2406 or else NT
(N
).Nkind
= N_Exit_Statement
2407 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2408 or else NT
(N
).Nkind
= N_Function_Call
2409 or else NT
(N
).Nkind
= N_Function_Instantiation
2410 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2411 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2412 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2413 or else NT
(N
).Nkind
= N_Goto_Statement
2414 or else NT
(N
).Nkind
= N_Iterator_Specification
2415 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2416 or else NT
(N
).Nkind
= N_Package_Instantiation
2417 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2418 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2419 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2420 or else NT
(N
).Nkind
= N_Raise_Expression
2421 or else NT
(N
).Nkind
= N_Raise_Statement
2422 or else NT
(N
).Nkind
= N_Requeue_Statement
2423 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2424 or else NT
(N
).Nkind
= N_Subunit
2425 or else NT
(N
).Nkind
= N_Use_Package_Clause
2426 or else NT
(N
).Nkind
= N_Variant_Part
2427 or else NT
(N
).Nkind
= N_With_Clause
);
2432 (N
: Node_Id
) return List_Id
is
2434 pragma Assert
(False
2435 or else NT
(N
).Nkind
= N_Abort_Statement
);
2439 function Next_Entity
2440 (N
: Node_Id
) return Node_Id
is
2442 pragma Assert
(False
2443 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2444 or else NT
(N
).Nkind
= N_Defining_Identifier
2445 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2449 function Next_Exit_Statement
2450 (N
: Node_Id
) return Node_Id
is
2452 pragma Assert
(False
2453 or else NT
(N
).Nkind
= N_Exit_Statement
);
2455 end Next_Exit_Statement
;
2457 function Next_Implicit_With
2458 (N
: Node_Id
) return Node_Id
is
2460 pragma Assert
(False
2461 or else NT
(N
).Nkind
= N_With_Clause
);
2463 end Next_Implicit_With
;
2465 function Next_Named_Actual
2466 (N
: Node_Id
) return Node_Id
is
2468 pragma Assert
(False
2469 or else NT
(N
).Nkind
= N_Parameter_Association
);
2471 end Next_Named_Actual
;
2473 function Next_Pragma
2474 (N
: Node_Id
) return Node_Id
is
2476 pragma Assert
(False
2477 or else NT
(N
).Nkind
= N_Pragma
);
2481 function Next_Rep_Item
2482 (N
: Node_Id
) return Node_Id
is
2484 pragma Assert
(False
2485 or else NT
(N
).Nkind
= N_Aspect_Specification
2486 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2487 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2488 or else NT
(N
).Nkind
= N_Pragma
2489 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2493 function Next_Use_Clause
2494 (N
: Node_Id
) return Node_Id
is
2496 pragma Assert
(False
2497 or else NT
(N
).Nkind
= N_Use_Package_Clause
2498 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2500 end Next_Use_Clause
;
2502 function No_Ctrl_Actions
2503 (N
: Node_Id
) return Boolean is
2505 pragma Assert
(False
2506 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2508 end No_Ctrl_Actions
;
2510 function No_Entities_Ref_In_Spec
2511 (N
: Node_Id
) return Boolean is
2513 pragma Assert
(False
2514 or else NT
(N
).Nkind
= N_With_Clause
);
2516 end No_Entities_Ref_In_Spec
;
2518 function No_Initialization
2519 (N
: Node_Id
) return Boolean is
2521 pragma Assert
(False
2522 or else NT
(N
).Nkind
= N_Allocator
2523 or else NT
(N
).Nkind
= N_Object_Declaration
);
2525 end No_Initialization
;
2527 function No_Minimize_Eliminate
2528 (N
: Node_Id
) return Boolean is
2530 pragma Assert
(False
2531 or else NT
(N
).Nkind
= N_In
2532 or else NT
(N
).Nkind
= N_Not_In
);
2534 end No_Minimize_Eliminate
;
2536 function No_Side_Effect_Removal
2537 (N
: Node_Id
) return Boolean is
2539 pragma Assert
(False
2540 or else NT
(N
).Nkind
= N_Function_Call
);
2542 end No_Side_Effect_Removal
;
2544 function No_Truncation
2545 (N
: Node_Id
) return Boolean is
2547 pragma Assert
(False
2548 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2552 function Null_Excluding_Subtype
2553 (N
: Node_Id
) return Boolean is
2555 pragma Assert
(False
2556 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2558 end Null_Excluding_Subtype
;
2560 function Null_Exclusion_Present
2561 (N
: Node_Id
) return Boolean is
2563 pragma Assert
(False
2564 or else NT
(N
).Nkind
= N_Access_Definition
2565 or else NT
(N
).Nkind
= N_Access_Function_Definition
2566 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2567 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2568 or else NT
(N
).Nkind
= N_Allocator
2569 or else NT
(N
).Nkind
= N_Component_Definition
2570 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2571 or else NT
(N
).Nkind
= N_Discriminant_Specification
2572 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2573 or else NT
(N
).Nkind
= N_Function_Specification
2574 or else NT
(N
).Nkind
= N_Object_Declaration
2575 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2576 or else NT
(N
).Nkind
= N_Parameter_Specification
2577 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2579 end Null_Exclusion_Present
;
2581 function Null_Exclusion_In_Return_Present
2582 (N
: Node_Id
) return Boolean is
2584 pragma Assert
(False
2585 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2587 end Null_Exclusion_In_Return_Present
;
2589 function Null_Present
2590 (N
: Node_Id
) return Boolean is
2592 pragma Assert
(False
2593 or else NT
(N
).Nkind
= N_Component_List
2594 or else NT
(N
).Nkind
= N_Procedure_Specification
2595 or else NT
(N
).Nkind
= N_Record_Definition
);
2599 function Null_Record_Present
2600 (N
: Node_Id
) return Boolean is
2602 pragma Assert
(False
2603 or else NT
(N
).Nkind
= N_Aggregate
2604 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2606 end Null_Record_Present
;
2608 function Null_Statement
2609 (N
: Node_Id
) return Node_Id
is
2611 pragma Assert
(False
2612 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2616 function Object_Definition
2617 (N
: Node_Id
) return Node_Id
is
2619 pragma Assert
(False
2620 or else NT
(N
).Nkind
= N_Object_Declaration
);
2622 end Object_Definition
;
2625 (N
: Node_Id
) return Boolean is
2627 pragma Assert
(False
2628 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2632 function Original_Discriminant
2633 (N
: Node_Id
) return Node_Id
is
2635 pragma Assert
(False
2636 or else NT
(N
).Nkind
= N_Identifier
);
2638 end Original_Discriminant
;
2640 function Original_Entity
2641 (N
: Node_Id
) return Entity_Id
is
2643 pragma Assert
(False
2644 or else NT
(N
).Nkind
= N_Integer_Literal
2645 or else NT
(N
).Nkind
= N_Real_Literal
);
2647 end Original_Entity
;
2649 function Others_Discrete_Choices
2650 (N
: Node_Id
) return List_Id
is
2652 pragma Assert
(False
2653 or else NT
(N
).Nkind
= N_Others_Choice
);
2655 end Others_Discrete_Choices
;
2657 function Out_Present
2658 (N
: Node_Id
) return Boolean is
2660 pragma Assert
(False
2661 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2662 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2666 function Parameter_Associations
2667 (N
: Node_Id
) return List_Id
is
2669 pragma Assert
(False
2670 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2671 or else NT
(N
).Nkind
= N_Function_Call
2672 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2674 end Parameter_Associations
;
2676 function Parameter_Specifications
2677 (N
: Node_Id
) return List_Id
is
2679 pragma Assert
(False
2680 or else NT
(N
).Nkind
= N_Accept_Statement
2681 or else NT
(N
).Nkind
= N_Access_Function_Definition
2682 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2683 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2684 or else NT
(N
).Nkind
= N_Entry_Declaration
2685 or else NT
(N
).Nkind
= N_Function_Specification
2686 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2688 end Parameter_Specifications
;
2690 function Parameter_Type
2691 (N
: Node_Id
) return Node_Id
is
2693 pragma Assert
(False
2694 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2698 function Parent_Spec
2699 (N
: Node_Id
) return Node_Id
is
2701 pragma Assert
(False
2702 or else NT
(N
).Nkind
= N_Function_Instantiation
2703 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2704 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2705 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2706 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2707 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2708 or else NT
(N
).Nkind
= N_Package_Declaration
2709 or else NT
(N
).Nkind
= N_Package_Instantiation
2710 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2711 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2712 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2713 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2718 (N
: Node_Id
) return Node_Id
is
2720 pragma Assert
(False
2721 or else NT
(N
).Nkind
= N_Component_Clause
);
2725 function Pragma_Argument_Associations
2726 (N
: Node_Id
) return List_Id
is
2728 pragma Assert
(False
2729 or else NT
(N
).Nkind
= N_Pragma
);
2731 end Pragma_Argument_Associations
;
2733 function Pragma_Identifier
2734 (N
: Node_Id
) return Node_Id
is
2736 pragma Assert
(False
2737 or else NT
(N
).Nkind
= N_Pragma
);
2739 end Pragma_Identifier
;
2741 function Pragmas_After
2742 (N
: Node_Id
) return List_Id
is
2744 pragma Assert
(False
2745 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2746 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2750 function Pragmas_Before
2751 (N
: Node_Id
) return List_Id
is
2753 pragma Assert
(False
2754 or else NT
(N
).Nkind
= N_Accept_Alternative
2755 or else NT
(N
).Nkind
= N_Delay_Alternative
2756 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2757 or else NT
(N
).Nkind
= N_Mod_Clause
2758 or else NT
(N
).Nkind
= N_Terminate_Alternative
2759 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2763 function Pre_Post_Conditions
2764 (N
: Node_Id
) return Node_Id
is
2766 pragma Assert
(False
2767 or else NT
(N
).Nkind
= N_Contract
);
2769 end Pre_Post_Conditions
;
2772 (N
: Node_Id
) return Node_Id
is
2774 pragma Assert
(False
2775 or else NT
(N
).Nkind
= N_Attribute_Reference
2776 or else NT
(N
).Nkind
= N_Expanded_Name
2777 or else NT
(N
).Nkind
= N_Explicit_Dereference
2778 or else NT
(N
).Nkind
= N_Indexed_Component
2779 or else NT
(N
).Nkind
= N_Reference
2780 or else NT
(N
).Nkind
= N_Selected_Component
2781 or else NT
(N
).Nkind
= N_Slice
);
2785 function Premature_Use
2786 (N
: Node_Id
) return Node_Id
is
2788 pragma Assert
(False
2789 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2793 function Present_Expr
2794 (N
: Node_Id
) return Uint
is
2796 pragma Assert
(False
2797 or else NT
(N
).Nkind
= N_Variant
);
2802 (N
: Node_Id
) return Boolean is
2804 pragma Assert
(False
2805 or else NT
(N
).Nkind
= N_Component_Declaration
2806 or else NT
(N
).Nkind
= N_Discriminant_Specification
2807 or else NT
(N
).Nkind
= N_Exception_Declaration
2808 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2809 or else NT
(N
).Nkind
= N_Number_Declaration
2810 or else NT
(N
).Nkind
= N_Object_Declaration
2811 or else NT
(N
).Nkind
= N_Parameter_Specification
2812 or else NT
(N
).Nkind
= N_Use_Package_Clause
2813 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2817 function Prev_Use_Clause
2818 (N
: Node_Id
) return Node_Id
is
2820 pragma Assert
(False
2821 or else NT
(N
).Nkind
= N_Use_Package_Clause
2822 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2824 end Prev_Use_Clause
;
2826 function Print_In_Hex
2827 (N
: Node_Id
) return Boolean is
2829 pragma Assert
(False
2830 or else NT
(N
).Nkind
= N_Integer_Literal
);
2834 function Private_Declarations
2835 (N
: Node_Id
) return List_Id
is
2837 pragma Assert
(False
2838 or else NT
(N
).Nkind
= N_Package_Specification
2839 or else NT
(N
).Nkind
= N_Protected_Definition
2840 or else NT
(N
).Nkind
= N_Task_Definition
);
2842 end Private_Declarations
;
2844 function Private_Present
2845 (N
: Node_Id
) return Boolean is
2847 pragma Assert
(False
2848 or else NT
(N
).Nkind
= N_Compilation_Unit
2849 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2850 or else NT
(N
).Nkind
= N_With_Clause
);
2852 end Private_Present
;
2854 function Procedure_To_Call
2855 (N
: Node_Id
) return Node_Id
is
2857 pragma Assert
(False
2858 or else NT
(N
).Nkind
= N_Allocator
2859 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2860 or else NT
(N
).Nkind
= N_Free_Statement
2861 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2863 end Procedure_To_Call
;
2865 function Proper_Body
2866 (N
: Node_Id
) return Node_Id
is
2868 pragma Assert
(False
2869 or else NT
(N
).Nkind
= N_Subunit
);
2873 function Protected_Definition
2874 (N
: Node_Id
) return Node_Id
is
2876 pragma Assert
(False
2877 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2878 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2880 end Protected_Definition
;
2882 function Protected_Present
2883 (N
: Node_Id
) return Boolean is
2885 pragma Assert
(False
2886 or else NT
(N
).Nkind
= N_Access_Function_Definition
2887 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2888 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2889 or else NT
(N
).Nkind
= N_Record_Definition
);
2891 end Protected_Present
;
2893 function Raises_Constraint_Error
2894 (N
: Node_Id
) return Boolean is
2896 pragma Assert
(False
2897 or else NT
(N
).Nkind
in N_Subexpr
);
2899 end Raises_Constraint_Error
;
2901 function Range_Constraint
2902 (N
: Node_Id
) return Node_Id
is
2904 pragma Assert
(False
2905 or else NT
(N
).Nkind
= N_Delta_Constraint
2906 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2908 end Range_Constraint
;
2910 function Range_Expression
2911 (N
: Node_Id
) return Node_Id
is
2913 pragma Assert
(False
2914 or else NT
(N
).Nkind
= N_Range_Constraint
);
2916 end Range_Expression
;
2918 function Real_Range_Specification
2919 (N
: Node_Id
) return Node_Id
is
2921 pragma Assert
(False
2922 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2923 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2924 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2926 end Real_Range_Specification
;
2929 (N
: Node_Id
) return Ureal
is
2931 pragma Assert
(False
2932 or else NT
(N
).Nkind
= N_Real_Literal
);
2937 (N
: Node_Id
) return Uint
is
2939 pragma Assert
(False
2940 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2941 or else NT
(N
).Nkind
= N_Raise_Program_Error
2942 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2946 function Record_Extension_Part
2947 (N
: Node_Id
) return Node_Id
is
2949 pragma Assert
(False
2950 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2952 end Record_Extension_Part
;
2954 function Redundant_Use
2955 (N
: Node_Id
) return Boolean is
2957 pragma Assert
(False
2958 or else NT
(N
).Nkind
= N_Attribute_Reference
2959 or else NT
(N
).Nkind
= N_Expanded_Name
2960 or else NT
(N
).Nkind
= N_Identifier
);
2964 function Renaming_Exception
2965 (N
: Node_Id
) return Node_Id
is
2967 pragma Assert
(False
2968 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2970 end Renaming_Exception
;
2972 function Result_Definition
2973 (N
: Node_Id
) return Node_Id
is
2975 pragma Assert
(False
2976 or else NT
(N
).Nkind
= N_Access_Function_Definition
2977 or else NT
(N
).Nkind
= N_Function_Specification
);
2979 end Result_Definition
;
2981 function Return_Object_Declarations
2982 (N
: Node_Id
) return List_Id
is
2984 pragma Assert
(False
2985 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2987 end Return_Object_Declarations
;
2989 function Return_Statement_Entity
2990 (N
: Node_Id
) return Node_Id
is
2992 pragma Assert
(False
2993 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2994 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2996 end Return_Statement_Entity
;
2998 function Reverse_Present
2999 (N
: Node_Id
) return Boolean is
3001 pragma Assert
(False
3002 or else NT
(N
).Nkind
= N_Iterator_Specification
3003 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3005 end Reverse_Present
;
3008 (N
: Node_Id
) return Node_Id
is
3010 pragma Assert
(False
3011 or else NT
(N
).Nkind
in N_Op
3012 or else NT
(N
).Nkind
= N_And_Then
3013 or else NT
(N
).Nkind
= N_In
3014 or else NT
(N
).Nkind
= N_Not_In
3015 or else NT
(N
).Nkind
= N_Or_Else
);
3019 function Rounded_Result
3020 (N
: Node_Id
) return Boolean is
3022 pragma Assert
(False
3023 or else NT
(N
).Nkind
= N_Op_Divide
3024 or else NT
(N
).Nkind
= N_Op_Multiply
3025 or else NT
(N
).Nkind
= N_Type_Conversion
);
3029 function SCIL_Controlling_Tag
3030 (N
: Node_Id
) return Node_Id
is
3032 pragma Assert
(False
3033 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3035 end SCIL_Controlling_Tag
;
3037 function SCIL_Entity
3038 (N
: Node_Id
) return Node_Id
is
3040 pragma Assert
(False
3041 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3042 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3043 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3047 function SCIL_Tag_Value
3048 (N
: Node_Id
) return Node_Id
is
3050 pragma Assert
(False
3051 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3055 function SCIL_Target_Prim
3056 (N
: Node_Id
) return Node_Id
is
3058 pragma Assert
(False
3059 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3061 end SCIL_Target_Prim
;
3064 (N
: Node_Id
) return Node_Id
is
3066 pragma Assert
(False
3067 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3068 or else NT
(N
).Nkind
= N_Defining_Identifier
3069 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3073 function Select_Alternatives
3074 (N
: Node_Id
) return List_Id
is
3076 pragma Assert
(False
3077 or else NT
(N
).Nkind
= N_Selective_Accept
);
3079 end Select_Alternatives
;
3081 function Selector_Name
3082 (N
: Node_Id
) return Node_Id
is
3084 pragma Assert
(False
3085 or else NT
(N
).Nkind
= N_Expanded_Name
3086 or else NT
(N
).Nkind
= N_Generic_Association
3087 or else NT
(N
).Nkind
= N_Parameter_Association
3088 or else NT
(N
).Nkind
= N_Selected_Component
);
3092 function Selector_Names
3093 (N
: Node_Id
) return List_Id
is
3095 pragma Assert
(False
3096 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3100 function Shift_Count_OK
3101 (N
: Node_Id
) return Boolean is
3103 pragma Assert
(False
3104 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3105 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3106 or else NT
(N
).Nkind
= N_Op_Shift_Left
3107 or else NT
(N
).Nkind
= N_Op_Shift_Right
3108 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3112 function Source_Type
3113 (N
: Node_Id
) return Entity_Id
is
3115 pragma Assert
(False
3116 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3120 function Specification
3121 (N
: Node_Id
) return Node_Id
is
3123 pragma Assert
(False
3124 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3125 or else NT
(N
).Nkind
= N_Expression_Function
3126 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3127 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3128 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3129 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3130 or else NT
(N
).Nkind
= N_Package_Declaration
3131 or else NT
(N
).Nkind
= N_Subprogram_Body
3132 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3133 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3134 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3139 (N
: Node_Id
) return Boolean is
3141 pragma Assert
(False
3142 or else NT
(N
).Nkind
= N_Aspect_Specification
3143 or else NT
(N
).Nkind
= N_Pragma
);
3148 (N
: Node_Id
) return List_Id
is
3150 pragma Assert
(False
3151 or else NT
(N
).Nkind
= N_Abortable_Part
3152 or else NT
(N
).Nkind
= N_Accept_Alternative
3153 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3154 or else NT
(N
).Nkind
= N_Delay_Alternative
3155 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3156 or else NT
(N
).Nkind
= N_Exception_Handler
3157 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3158 or else NT
(N
).Nkind
= N_Loop_Statement
3159 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3163 function Storage_Pool
3164 (N
: Node_Id
) return Node_Id
is
3166 pragma Assert
(False
3167 or else NT
(N
).Nkind
= N_Allocator
3168 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3169 or else NT
(N
).Nkind
= N_Free_Statement
3170 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3174 function Subpool_Handle_Name
3175 (N
: Node_Id
) return Node_Id
is
3177 pragma Assert
(False
3178 or else NT
(N
).Nkind
= N_Allocator
);
3180 end Subpool_Handle_Name
;
3183 (N
: Node_Id
) return String_Id
is
3185 pragma Assert
(False
3186 or else NT
(N
).Nkind
= N_Operator_Symbol
3187 or else NT
(N
).Nkind
= N_String_Literal
);
3191 function Subtype_Indication
3192 (N
: Node_Id
) return Node_Id
is
3194 pragma Assert
(False
3195 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3196 or else NT
(N
).Nkind
= N_Component_Definition
3197 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3198 or else NT
(N
).Nkind
= N_Iterator_Specification
3199 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3200 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3202 end Subtype_Indication
;
3204 function Suppress_Assignment_Checks
3205 (N
: Node_Id
) return Boolean is
3207 pragma Assert
(False
3208 or else NT
(N
).Nkind
= N_Assignment_Statement
3209 or else NT
(N
).Nkind
= N_Object_Declaration
);
3211 end Suppress_Assignment_Checks
;
3213 function Suppress_Loop_Warnings
3214 (N
: Node_Id
) return Boolean is
3216 pragma Assert
(False
3217 or else NT
(N
).Nkind
= N_Loop_Statement
);
3219 end Suppress_Loop_Warnings
;
3221 function Subtype_Mark
3222 (N
: Node_Id
) return Node_Id
is
3224 pragma Assert
(False
3225 or else NT
(N
).Nkind
= N_Access_Definition
3226 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3227 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3228 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3229 or else NT
(N
).Nkind
= N_Qualified_Expression
3230 or else NT
(N
).Nkind
= N_Subtype_Indication
3231 or else NT
(N
).Nkind
= N_Type_Conversion
3232 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3233 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3237 function Subtype_Marks
3238 (N
: Node_Id
) return List_Id
is
3240 pragma Assert
(False
3241 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3245 function Synchronized_Present
3246 (N
: Node_Id
) return Boolean is
3248 pragma Assert
(False
3249 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3250 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3251 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3252 or else NT
(N
).Nkind
= N_Record_Definition
);
3254 end Synchronized_Present
;
3256 function Tagged_Present
3257 (N
: Node_Id
) return Boolean is
3259 pragma Assert
(False
3260 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3261 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3262 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3263 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3264 or else NT
(N
).Nkind
= N_Record_Definition
);
3269 (N
: Node_Id
) return Entity_Id
is
3271 pragma Assert
(False
3272 or else NT
(N
).Nkind
= N_Call_Marker
);
3276 function Target_Type
3277 (N
: Node_Id
) return Entity_Id
is
3279 pragma Assert
(False
3280 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3284 function Task_Definition
3285 (N
: Node_Id
) return Node_Id
is
3287 pragma Assert
(False
3288 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3289 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3291 end Task_Definition
;
3293 function Task_Present
3294 (N
: Node_Id
) return Boolean is
3296 pragma Assert
(False
3297 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3298 or else NT
(N
).Nkind
= N_Record_Definition
);
3302 function Then_Actions
3303 (N
: Node_Id
) return List_Id
is
3305 pragma Assert
(False
3306 or else NT
(N
).Nkind
= N_If_Expression
);
3310 function Then_Statements
3311 (N
: Node_Id
) return List_Id
is
3313 pragma Assert
(False
3314 or else NT
(N
).Nkind
= N_Elsif_Part
3315 or else NT
(N
).Nkind
= N_If_Statement
);
3317 end Then_Statements
;
3319 function Treat_Fixed_As_Integer
3320 (N
: Node_Id
) return Boolean is
3322 pragma Assert
(False
3323 or else NT
(N
).Nkind
= N_Op_Divide
3324 or else NT
(N
).Nkind
= N_Op_Mod
3325 or else NT
(N
).Nkind
= N_Op_Multiply
3326 or else NT
(N
).Nkind
= N_Op_Rem
);
3328 end Treat_Fixed_As_Integer
;
3330 function Triggering_Alternative
3331 (N
: Node_Id
) return Node_Id
is
3333 pragma Assert
(False
3334 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3336 end Triggering_Alternative
;
3338 function Triggering_Statement
3339 (N
: Node_Id
) return Node_Id
is
3341 pragma Assert
(False
3342 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3344 end Triggering_Statement
;
3347 (N
: Node_Id
) return Elist_Id
is
3349 pragma Assert
(False
3350 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3354 function Type_Definition
3355 (N
: Node_Id
) return Node_Id
is
3357 pragma Assert
(False
3358 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3360 end Type_Definition
;
3362 function Uneval_Old_Accept
3363 (N
: Node_Id
) return Boolean is
3365 pragma Assert
(False
3366 or else NT
(N
).Nkind
= N_Pragma
);
3368 end Uneval_Old_Accept
;
3370 function Uneval_Old_Warn
3371 (N
: Node_Id
) return Boolean is
3373 pragma Assert
(False
3374 or else NT
(N
).Nkind
= N_Pragma
);
3376 end Uneval_Old_Warn
;
3379 (N
: Node_Id
) return Node_Id
is
3381 pragma Assert
(False
3382 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3386 function Unknown_Discriminants_Present
3387 (N
: Node_Id
) return Boolean is
3389 pragma Assert
(False
3390 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3391 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3392 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3393 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3395 end Unknown_Discriminants_Present
;
3397 function Unreferenced_In_Spec
3398 (N
: Node_Id
) return Boolean is
3400 pragma Assert
(False
3401 or else NT
(N
).Nkind
= N_With_Clause
);
3403 end Unreferenced_In_Spec
;
3405 function Variant_Part
3406 (N
: Node_Id
) return Node_Id
is
3408 pragma Assert
(False
3409 or else NT
(N
).Nkind
= N_Component_List
);
3414 (N
: Node_Id
) return List_Id
is
3416 pragma Assert
(False
3417 or else NT
(N
).Nkind
= N_Variant_Part
);
3421 function Visible_Declarations
3422 (N
: Node_Id
) return List_Id
is
3424 pragma Assert
(False
3425 or else NT
(N
).Nkind
= N_Package_Specification
3426 or else NT
(N
).Nkind
= N_Protected_Definition
3427 or else NT
(N
).Nkind
= N_Task_Definition
);
3429 end Visible_Declarations
;
3431 function Uninitialized_Variable
3432 (N
: Node_Id
) return Node_Id
is
3434 pragma Assert
(False
3435 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3436 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3438 end Uninitialized_Variable
;
3440 function Used_Operations
3441 (N
: Node_Id
) return Elist_Id
is
3443 pragma Assert
(False
3444 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3446 end Used_Operations
;
3448 function Was_Attribute_Reference
3449 (N
: Node_Id
) return Boolean is
3451 pragma Assert
(False
3452 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3454 end Was_Attribute_Reference
;
3456 function Was_Expression_Function
3457 (N
: Node_Id
) return Boolean is
3459 pragma Assert
(False
3460 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3462 end Was_Expression_Function
;
3464 function Was_Originally_Stub
3465 (N
: Node_Id
) return Boolean is
3467 pragma Assert
(False
3468 or else NT
(N
).Nkind
= N_Package_Body
3469 or else NT
(N
).Nkind
= N_Protected_Body
3470 or else NT
(N
).Nkind
= N_Subprogram_Body
3471 or else NT
(N
).Nkind
= N_Task_Body
);
3473 end Was_Originally_Stub
;
3475 function Withed_Body
3476 (N
: Node_Id
) return Node_Id
is
3478 pragma Assert
(False
3479 or else NT
(N
).Nkind
= N_With_Clause
);
3483 --------------------------
3484 -- Field Set Procedures --
3485 --------------------------
3487 procedure Set_Abort_Present
3488 (N
: Node_Id
; Val
: Boolean := True) is
3490 pragma Assert
(False
3491 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3492 Set_Flag15
(N
, Val
);
3493 end Set_Abort_Present
;
3495 procedure Set_Abortable_Part
3496 (N
: Node_Id
; Val
: Node_Id
) is
3498 pragma Assert
(False
3499 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3500 Set_Node2_With_Parent
(N
, Val
);
3501 end Set_Abortable_Part
;
3503 procedure Set_Abstract_Present
3504 (N
: Node_Id
; Val
: Boolean := True) is
3506 pragma Assert
(False
3507 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3508 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3509 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3510 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3511 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3512 or else NT
(N
).Nkind
= N_Record_Definition
);
3514 end Set_Abstract_Present
;
3516 procedure Set_Accept_Handler_Records
3517 (N
: Node_Id
; Val
: List_Id
) is
3519 pragma Assert
(False
3520 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3521 Set_List5
(N
, Val
); -- semantic field, no parent set
3522 end Set_Accept_Handler_Records
;
3524 procedure Set_Accept_Statement
3525 (N
: Node_Id
; Val
: Node_Id
) is
3527 pragma Assert
(False
3528 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3529 Set_Node2_With_Parent
(N
, Val
);
3530 end Set_Accept_Statement
;
3532 procedure Set_Access_Definition
3533 (N
: Node_Id
; Val
: Node_Id
) is
3535 pragma Assert
(False
3536 or else NT
(N
).Nkind
= N_Component_Definition
3537 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3538 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3539 Set_Node3_With_Parent
(N
, Val
);
3540 end Set_Access_Definition
;
3542 procedure Set_Access_To_Subprogram_Definition
3543 (N
: Node_Id
; Val
: Node_Id
) is
3545 pragma Assert
(False
3546 or else NT
(N
).Nkind
= N_Access_Definition
);
3547 Set_Node3_With_Parent
(N
, Val
);
3548 end Set_Access_To_Subprogram_Definition
;
3550 procedure Set_Access_Types_To_Process
3551 (N
: Node_Id
; Val
: Elist_Id
) is
3553 pragma Assert
(False
3554 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3555 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3556 end Set_Access_Types_To_Process
;
3558 procedure Set_Actions
3559 (N
: Node_Id
; Val
: List_Id
) is
3561 pragma Assert
(False
3562 or else NT
(N
).Nkind
= N_And_Then
3563 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3564 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3565 or else NT
(N
).Nkind
= N_Compound_Statement
3566 or else NT
(N
).Nkind
= N_Expression_With_Actions
3567 or else NT
(N
).Nkind
= N_Freeze_Entity
3568 or else NT
(N
).Nkind
= N_Or_Else
);
3569 Set_List1_With_Parent
(N
, Val
);
3572 procedure Set_Activation_Chain_Entity
3573 (N
: Node_Id
; Val
: Node_Id
) is
3575 pragma Assert
(False
3576 or else NT
(N
).Nkind
= N_Block_Statement
3577 or else NT
(N
).Nkind
= N_Entry_Body
3578 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3579 or else NT
(N
).Nkind
= N_Package_Declaration
3580 or else NT
(N
).Nkind
= N_Subprogram_Body
3581 or else NT
(N
).Nkind
= N_Task_Body
);
3582 Set_Node3
(N
, Val
); -- semantic field, no parent set
3583 end Set_Activation_Chain_Entity
;
3585 procedure Set_Acts_As_Spec
3586 (N
: Node_Id
; Val
: Boolean := True) is
3588 pragma Assert
(False
3589 or else NT
(N
).Nkind
= N_Compilation_Unit
3590 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3592 end Set_Acts_As_Spec
;
3594 procedure Set_Actual_Designated_Subtype
3595 (N
: Node_Id
; Val
: Node_Id
) is
3597 pragma Assert
(False
3598 or else NT
(N
).Nkind
= N_Explicit_Dereference
3599 or else NT
(N
).Nkind
= N_Free_Statement
);
3601 end Set_Actual_Designated_Subtype
;
3603 procedure Set_Address_Warning_Posted
3604 (N
: Node_Id
; Val
: Boolean := True) is
3606 pragma Assert
(False
3607 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3608 Set_Flag18
(N
, Val
);
3609 end Set_Address_Warning_Posted
;
3611 procedure Set_Aggregate_Bounds
3612 (N
: Node_Id
; Val
: Node_Id
) is
3614 pragma Assert
(False
3615 or else NT
(N
).Nkind
= N_Aggregate
);
3616 Set_Node3
(N
, Val
); -- semantic field, no parent set
3617 end Set_Aggregate_Bounds
;
3619 procedure Set_Aliased_Present
3620 (N
: Node_Id
; Val
: Boolean := True) is
3622 pragma Assert
(False
3623 or else NT
(N
).Nkind
= N_Component_Definition
3624 or else NT
(N
).Nkind
= N_Object_Declaration
3625 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3627 end Set_Aliased_Present
;
3629 procedure Set_All_Others
3630 (N
: Node_Id
; Val
: Boolean := True) is
3632 pragma Assert
(False
3633 or else NT
(N
).Nkind
= N_Others_Choice
);
3634 Set_Flag11
(N
, Val
);
3637 procedure Set_All_Present
3638 (N
: Node_Id
; Val
: Boolean := True) is
3640 pragma Assert
(False
3641 or else NT
(N
).Nkind
= N_Access_Definition
3642 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3643 or else NT
(N
).Nkind
= N_Quantified_Expression
3644 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3645 Set_Flag15
(N
, Val
);
3646 end Set_All_Present
;
3648 procedure Set_Alternatives
3649 (N
: Node_Id
; Val
: List_Id
) is
3651 pragma Assert
(False
3652 or else NT
(N
).Nkind
= N_Case_Expression
3653 or else NT
(N
).Nkind
= N_Case_Statement
3654 or else NT
(N
).Nkind
= N_In
3655 or else NT
(N
).Nkind
= N_Not_In
);
3656 Set_List4_With_Parent
(N
, Val
);
3657 end Set_Alternatives
;
3659 procedure Set_Ancestor_Part
3660 (N
: Node_Id
; Val
: Node_Id
) is
3662 pragma Assert
(False
3663 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3664 Set_Node3_With_Parent
(N
, Val
);
3665 end Set_Ancestor_Part
;
3667 procedure Set_Atomic_Sync_Required
3668 (N
: Node_Id
; Val
: Boolean := True) is
3670 pragma Assert
(False
3671 or else NT
(N
).Nkind
= N_Expanded_Name
3672 or else NT
(N
).Nkind
= N_Explicit_Dereference
3673 or else NT
(N
).Nkind
= N_Identifier
3674 or else NT
(N
).Nkind
= N_Indexed_Component
3675 or else NT
(N
).Nkind
= N_Selected_Component
);
3676 Set_Flag14
(N
, Val
);
3677 end Set_Atomic_Sync_Required
;
3679 procedure Set_Array_Aggregate
3680 (N
: Node_Id
; Val
: Node_Id
) is
3682 pragma Assert
(False
3683 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3684 Set_Node3_With_Parent
(N
, Val
);
3685 end Set_Array_Aggregate
;
3687 procedure Set_Aspect_Rep_Item
3688 (N
: Node_Id
; Val
: Node_Id
) is
3690 pragma Assert
(False
3691 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3693 end Set_Aspect_Rep_Item
;
3695 procedure Set_Assignment_OK
3696 (N
: Node_Id
; Val
: Boolean := True) is
3698 pragma Assert
(False
3699 or else NT
(N
).Nkind
= N_Object_Declaration
3700 or else NT
(N
).Nkind
in N_Subexpr
);
3701 Set_Flag15
(N
, Val
);
3702 end Set_Assignment_OK
;
3704 procedure Set_Associated_Node
3705 (N
: Node_Id
; Val
: Node_Id
) is
3707 pragma Assert
(False
3708 or else NT
(N
).Nkind
in N_Has_Entity
3709 or else NT
(N
).Nkind
= N_Aggregate
3710 or else NT
(N
).Nkind
= N_Extension_Aggregate
3711 or else NT
(N
).Nkind
= N_Selected_Component
3712 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3713 Set_Node4
(N
, Val
); -- semantic field, no parent set
3714 end Set_Associated_Node
;
3716 procedure Set_At_End_Proc
3717 (N
: Node_Id
; Val
: Node_Id
) is
3719 pragma Assert
(False
3720 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3722 end Set_At_End_Proc
;
3724 procedure Set_Attribute_Name
3725 (N
: Node_Id
; Val
: Name_Id
) is
3727 pragma Assert
(False
3728 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3730 end Set_Attribute_Name
;
3732 procedure Set_Aux_Decls_Node
3733 (N
: Node_Id
; Val
: Node_Id
) is
3735 pragma Assert
(False
3736 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3737 Set_Node5_With_Parent
(N
, Val
);
3738 end Set_Aux_Decls_Node
;
3740 procedure Set_Backwards_OK
3741 (N
: Node_Id
; Val
: Boolean := True) is
3743 pragma Assert
(False
3744 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3746 end Set_Backwards_OK
;
3748 procedure Set_Bad_Is_Detected
3749 (N
: Node_Id
; Val
: Boolean := True) is
3751 pragma Assert
(False
3752 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3753 Set_Flag15
(N
, Val
);
3754 end Set_Bad_Is_Detected
;
3756 procedure Set_Body_Required
3757 (N
: Node_Id
; Val
: Boolean := True) is
3759 pragma Assert
(False
3760 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3761 Set_Flag13
(N
, Val
);
3762 end Set_Body_Required
;
3764 procedure Set_Body_To_Inline
3765 (N
: Node_Id
; Val
: Node_Id
) is
3767 pragma Assert
(False
3768 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3770 end Set_Body_To_Inline
;
3772 procedure Set_Box_Present
3773 (N
: Node_Id
; Val
: Boolean := True) is
3775 pragma Assert
(False
3776 or else NT
(N
).Nkind
= N_Component_Association
3777 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3778 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3779 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3780 or else NT
(N
).Nkind
= N_Generic_Association
3781 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3782 Set_Flag15
(N
, Val
);
3783 end Set_Box_Present
;
3785 procedure Set_By_Ref
3786 (N
: Node_Id
; Val
: Boolean := True) is
3788 pragma Assert
(False
3789 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3790 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3794 procedure Set_Char_Literal_Value
3795 (N
: Node_Id
; Val
: Uint
) is
3797 pragma Assert
(False
3798 or else NT
(N
).Nkind
= N_Character_Literal
);
3800 end Set_Char_Literal_Value
;
3803 (N
: Node_Id
; Val
: Name_Id
) is
3805 pragma Assert
(False
3806 or else NT
(N
).Nkind
in N_Has_Chars
);
3810 procedure Set_Check_Address_Alignment
3811 (N
: Node_Id
; Val
: Boolean := True) is
3813 pragma Assert
(False
3814 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3815 Set_Flag11
(N
, Val
);
3816 end Set_Check_Address_Alignment
;
3818 procedure Set_Choice_Parameter
3819 (N
: Node_Id
; Val
: Node_Id
) is
3821 pragma Assert
(False
3822 or else NT
(N
).Nkind
= N_Exception_Handler
);
3823 Set_Node2_With_Parent
(N
, Val
);
3824 end Set_Choice_Parameter
;
3826 procedure Set_Choices
3827 (N
: Node_Id
; Val
: List_Id
) is
3829 pragma Assert
(False
3830 or else NT
(N
).Nkind
= N_Component_Association
);
3831 Set_List1_With_Parent
(N
, Val
);
3834 procedure Set_Class_Present
3835 (N
: Node_Id
; Val
: Boolean := True) is
3837 pragma Assert
(False
3838 or else NT
(N
).Nkind
= N_Aspect_Specification
3839 or else NT
(N
).Nkind
= N_Pragma
);
3841 end Set_Class_Present
;
3843 procedure Set_Classifications
3844 (N
: Node_Id
; Val
: Node_Id
) is
3846 pragma Assert
(False
3847 or else NT
(N
).Nkind
= N_Contract
);
3848 Set_Node3
(N
, Val
); -- semantic field, no parent set
3849 end Set_Classifications
;
3851 procedure Set_Cleanup_Actions
3852 (N
: Node_Id
; Val
: List_Id
) is
3854 pragma Assert
(False
3855 or else NT
(N
).Nkind
= N_Block_Statement
);
3856 Set_List5
(N
, Val
); -- semantic field, no parent set
3857 end Set_Cleanup_Actions
;
3859 procedure Set_Comes_From_Extended_Return_Statement
3860 (N
: Node_Id
; Val
: Boolean := True) is
3862 pragma Assert
(False
3863 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3864 Set_Flag18
(N
, Val
);
3865 end Set_Comes_From_Extended_Return_Statement
;
3867 procedure Set_Compile_Time_Known_Aggregate
3868 (N
: Node_Id
; Val
: Boolean := True) is
3870 pragma Assert
(False
3871 or else NT
(N
).Nkind
= N_Aggregate
);
3872 Set_Flag18
(N
, Val
);
3873 end Set_Compile_Time_Known_Aggregate
;
3875 procedure Set_Component_Associations
3876 (N
: Node_Id
; Val
: List_Id
) is
3878 pragma Assert
(False
3879 or else NT
(N
).Nkind
= N_Aggregate
3880 or else NT
(N
).Nkind
= N_Delta_Aggregate
3881 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3882 Set_List2_With_Parent
(N
, Val
);
3883 end Set_Component_Associations
;
3885 procedure Set_Component_Clauses
3886 (N
: Node_Id
; Val
: List_Id
) is
3888 pragma Assert
(False
3889 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3890 Set_List3_With_Parent
(N
, Val
);
3891 end Set_Component_Clauses
;
3893 procedure Set_Component_Definition
3894 (N
: Node_Id
; Val
: Node_Id
) is
3896 pragma Assert
(False
3897 or else NT
(N
).Nkind
= N_Component_Declaration
3898 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3899 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3900 Set_Node4_With_Parent
(N
, Val
);
3901 end Set_Component_Definition
;
3903 procedure Set_Component_Items
3904 (N
: Node_Id
; Val
: List_Id
) is
3906 pragma Assert
(False
3907 or else NT
(N
).Nkind
= N_Component_List
);
3908 Set_List3_With_Parent
(N
, Val
);
3909 end Set_Component_Items
;
3911 procedure Set_Component_List
3912 (N
: Node_Id
; Val
: Node_Id
) is
3914 pragma Assert
(False
3915 or else NT
(N
).Nkind
= N_Record_Definition
3916 or else NT
(N
).Nkind
= N_Variant
);
3917 Set_Node1_With_Parent
(N
, Val
);
3918 end Set_Component_List
;
3920 procedure Set_Component_Name
3921 (N
: Node_Id
; Val
: Node_Id
) is
3923 pragma Assert
(False
3924 or else NT
(N
).Nkind
= N_Component_Clause
);
3925 Set_Node1_With_Parent
(N
, Val
);
3926 end Set_Component_Name
;
3928 procedure Set_Componentwise_Assignment
3929 (N
: Node_Id
; Val
: Boolean := True) is
3931 pragma Assert
(False
3932 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3933 Set_Flag14
(N
, Val
);
3934 end Set_Componentwise_Assignment
;
3936 procedure Set_Condition
3937 (N
: Node_Id
; Val
: Node_Id
) is
3939 pragma Assert
(False
3940 or else NT
(N
).Nkind
= N_Accept_Alternative
3941 or else NT
(N
).Nkind
= N_Delay_Alternative
3942 or else NT
(N
).Nkind
= N_Elsif_Part
3943 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3944 or else NT
(N
).Nkind
= N_Exit_Statement
3945 or else NT
(N
).Nkind
= N_If_Statement
3946 or else NT
(N
).Nkind
= N_Iteration_Scheme
3947 or else NT
(N
).Nkind
= N_Quantified_Expression
3948 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3949 or else NT
(N
).Nkind
= N_Raise_Program_Error
3950 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3951 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3952 Set_Node1_With_Parent
(N
, Val
);
3955 procedure Set_Condition_Actions
3956 (N
: Node_Id
; Val
: List_Id
) is
3958 pragma Assert
(False
3959 or else NT
(N
).Nkind
= N_Elsif_Part
3960 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3961 Set_List3
(N
, Val
); -- semantic field, no parent set
3962 end Set_Condition_Actions
;
3964 procedure Set_Config_Pragmas
3965 (N
: Node_Id
; Val
: List_Id
) is
3967 pragma Assert
(False
3968 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3969 Set_List4_With_Parent
(N
, Val
);
3970 end Set_Config_Pragmas
;
3972 procedure Set_Constant_Present
3973 (N
: Node_Id
; Val
: Boolean := True) is
3975 pragma Assert
(False
3976 or else NT
(N
).Nkind
= N_Access_Definition
3977 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3978 or else NT
(N
).Nkind
= N_Object_Declaration
);
3979 Set_Flag17
(N
, Val
);
3980 end Set_Constant_Present
;
3982 procedure Set_Constraint
3983 (N
: Node_Id
; Val
: Node_Id
) is
3985 pragma Assert
(False
3986 or else NT
(N
).Nkind
= N_Subtype_Indication
);
3987 Set_Node3_With_Parent
(N
, Val
);
3990 procedure Set_Constraints
3991 (N
: Node_Id
; Val
: List_Id
) is
3993 pragma Assert
(False
3994 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
3995 Set_List1_With_Parent
(N
, Val
);
3996 end Set_Constraints
;
3998 procedure Set_Context_Installed
3999 (N
: Node_Id
; Val
: Boolean := True) is
4001 pragma Assert
(False
4002 or else NT
(N
).Nkind
= N_With_Clause
);
4003 Set_Flag13
(N
, Val
);
4004 end Set_Context_Installed
;
4006 procedure Set_Context_Items
4007 (N
: Node_Id
; Val
: List_Id
) is
4009 pragma Assert
(False
4010 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4011 Set_List1_With_Parent
(N
, Val
);
4012 end Set_Context_Items
;
4014 procedure Set_Context_Pending
4015 (N
: Node_Id
; Val
: Boolean := True) is
4017 pragma Assert
(False
4018 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4019 Set_Flag16
(N
, Val
);
4020 end Set_Context_Pending
;
4022 procedure Set_Contract_Test_Cases
4023 (N
: Node_Id
; Val
: Node_Id
) is
4025 pragma Assert
(False
4026 or else NT
(N
).Nkind
= N_Contract
);
4027 Set_Node2
(N
, Val
); -- semantic field, no parent set
4028 end Set_Contract_Test_Cases
;
4030 procedure Set_Controlling_Argument
4031 (N
: Node_Id
; Val
: Node_Id
) is
4033 pragma Assert
(False
4034 or else NT
(N
).Nkind
= N_Function_Call
4035 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4036 Set_Node1
(N
, Val
); -- semantic field, no parent set
4037 end Set_Controlling_Argument
;
4039 procedure Set_Conversion_OK
4040 (N
: Node_Id
; Val
: Boolean := True) is
4042 pragma Assert
(False
4043 or else NT
(N
).Nkind
= N_Type_Conversion
);
4044 Set_Flag14
(N
, Val
);
4045 end Set_Conversion_OK
;
4047 procedure Set_Convert_To_Return_False
4048 (N
: Node_Id
; Val
: Boolean := True) is
4050 pragma Assert
(False
4051 or else NT
(N
).Nkind
= N_Raise_Expression
);
4052 Set_Flag13
(N
, Val
);
4053 end Set_Convert_To_Return_False
;
4055 procedure Set_Corresponding_Aspect
4056 (N
: Node_Id
; Val
: Node_Id
) is
4058 pragma Assert
(False
4059 or else NT
(N
).Nkind
= N_Pragma
);
4061 end Set_Corresponding_Aspect
;
4063 procedure Set_Corresponding_Body
4064 (N
: Node_Id
; Val
: Node_Id
) is
4066 pragma Assert
(False
4067 or else NT
(N
).Nkind
= N_Entry_Declaration
4068 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4069 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4070 or else NT
(N
).Nkind
= N_Package_Body_Stub
4071 or else NT
(N
).Nkind
= N_Package_Declaration
4072 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4073 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4074 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4075 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4076 or else NT
(N
).Nkind
= N_Task_Body_Stub
4077 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4078 Set_Node5
(N
, Val
); -- semantic field, no parent set
4079 end Set_Corresponding_Body
;
4081 procedure Set_Corresponding_Formal_Spec
4082 (N
: Node_Id
; Val
: Node_Id
) is
4084 pragma Assert
(False
4085 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4086 Set_Node3
(N
, Val
); -- semantic field, no parent set
4087 end Set_Corresponding_Formal_Spec
;
4089 procedure Set_Corresponding_Generic_Association
4090 (N
: Node_Id
; Val
: Node_Id
) is
4092 pragma Assert
(False
4093 or else NT
(N
).Nkind
= N_Object_Declaration
4094 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4095 Set_Node5
(N
, Val
); -- semantic field, no parent set
4096 end Set_Corresponding_Generic_Association
;
4098 procedure Set_Corresponding_Integer_Value
4099 (N
: Node_Id
; Val
: Uint
) is
4101 pragma Assert
(False
4102 or else NT
(N
).Nkind
= N_Real_Literal
);
4103 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4104 end Set_Corresponding_Integer_Value
;
4106 procedure Set_Corresponding_Spec
4107 (N
: Node_Id
; Val
: Entity_Id
) is
4109 pragma Assert
(False
4110 or else NT
(N
).Nkind
= N_Expression_Function
4111 or else NT
(N
).Nkind
= N_Package_Body
4112 or else NT
(N
).Nkind
= N_Protected_Body
4113 or else NT
(N
).Nkind
= N_Subprogram_Body
4114 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4115 or else NT
(N
).Nkind
= N_Task_Body
4116 or else NT
(N
).Nkind
= N_With_Clause
);
4117 Set_Node5
(N
, Val
); -- semantic field, no parent set
4118 end Set_Corresponding_Spec
;
4120 procedure Set_Corresponding_Spec_Of_Stub
4121 (N
: Node_Id
; Val
: Entity_Id
) is
4123 pragma Assert
(False
4124 or else NT
(N
).Nkind
= N_Package_Body_Stub
4125 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4126 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4127 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4128 Set_Node2
(N
, Val
); -- semantic field, no parent set
4129 end Set_Corresponding_Spec_Of_Stub
;
4131 procedure Set_Corresponding_Stub
4132 (N
: Node_Id
; Val
: Node_Id
) is
4134 pragma Assert
(False
4135 or else NT
(N
).Nkind
= N_Subunit
);
4137 end Set_Corresponding_Stub
;
4139 procedure Set_Dcheck_Function
4140 (N
: Node_Id
; Val
: Entity_Id
) is
4142 pragma Assert
(False
4143 or else NT
(N
).Nkind
= N_Variant
);
4144 Set_Node5
(N
, Val
); -- semantic field, no parent set
4145 end Set_Dcheck_Function
;
4147 procedure Set_Declarations
4148 (N
: Node_Id
; Val
: List_Id
) is
4150 pragma Assert
(False
4151 or else NT
(N
).Nkind
= N_Accept_Statement
4152 or else NT
(N
).Nkind
= N_Block_Statement
4153 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4154 or else NT
(N
).Nkind
= N_Entry_Body
4155 or else NT
(N
).Nkind
= N_Package_Body
4156 or else NT
(N
).Nkind
= N_Protected_Body
4157 or else NT
(N
).Nkind
= N_Subprogram_Body
4158 or else NT
(N
).Nkind
= N_Task_Body
);
4159 Set_List2_With_Parent
(N
, Val
);
4160 end Set_Declarations
;
4162 procedure Set_Default_Expression
4163 (N
: Node_Id
; Val
: Node_Id
) is
4165 pragma Assert
(False
4166 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4167 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4168 Set_Node5
(N
, Val
); -- semantic field, no parent set
4169 end Set_Default_Expression
;
4171 procedure Set_Default_Storage_Pool
4172 (N
: Node_Id
; Val
: Node_Id
) is
4174 pragma Assert
(False
4175 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4176 Set_Node3
(N
, Val
); -- semantic field, no parent set
4177 end Set_Default_Storage_Pool
;
4179 procedure Set_Default_Name
4180 (N
: Node_Id
; Val
: Node_Id
) is
4182 pragma Assert
(False
4183 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4184 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4185 Set_Node2_With_Parent
(N
, Val
);
4186 end Set_Default_Name
;
4188 procedure Set_Defining_Identifier
4189 (N
: Node_Id
; Val
: Entity_Id
) is
4191 pragma Assert
(False
4192 or else NT
(N
).Nkind
= N_Component_Declaration
4193 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4194 or else NT
(N
).Nkind
= N_Discriminant_Specification
4195 or else NT
(N
).Nkind
= N_Entry_Body
4196 or else NT
(N
).Nkind
= N_Entry_Declaration
4197 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4198 or else NT
(N
).Nkind
= N_Exception_Declaration
4199 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4200 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4201 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4202 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4203 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4204 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4205 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4206 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4207 or else NT
(N
).Nkind
= N_Iterator_Specification
4208 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4209 or else NT
(N
).Nkind
= N_Number_Declaration
4210 or else NT
(N
).Nkind
= N_Object_Declaration
4211 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4212 or else NT
(N
).Nkind
= N_Package_Body_Stub
4213 or else NT
(N
).Nkind
= N_Parameter_Specification
4214 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4215 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4216 or else NT
(N
).Nkind
= N_Protected_Body
4217 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4218 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4219 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4220 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4221 or else NT
(N
).Nkind
= N_Subtype_Declaration
4222 or else NT
(N
).Nkind
= N_Task_Body
4223 or else NT
(N
).Nkind
= N_Task_Body_Stub
4224 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4225 Set_Node1_With_Parent
(N
, Val
);
4226 end Set_Defining_Identifier
;
4228 procedure Set_Defining_Unit_Name
4229 (N
: Node_Id
; Val
: Node_Id
) is
4231 pragma Assert
(False
4232 or else NT
(N
).Nkind
= N_Function_Instantiation
4233 or else NT
(N
).Nkind
= N_Function_Specification
4234 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4235 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4236 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4237 or else NT
(N
).Nkind
= N_Package_Body
4238 or else NT
(N
).Nkind
= N_Package_Instantiation
4239 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4240 or else NT
(N
).Nkind
= N_Package_Specification
4241 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4242 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4243 Set_Node1_With_Parent
(N
, Val
);
4244 end Set_Defining_Unit_Name
;
4246 procedure Set_Delay_Alternative
4247 (N
: Node_Id
; Val
: Node_Id
) is
4249 pragma Assert
(False
4250 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4251 Set_Node4_With_Parent
(N
, Val
);
4252 end Set_Delay_Alternative
;
4254 procedure Set_Delay_Statement
4255 (N
: Node_Id
; Val
: Node_Id
) is
4257 pragma Assert
(False
4258 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4259 Set_Node2_With_Parent
(N
, Val
);
4260 end Set_Delay_Statement
;
4262 procedure Set_Delta_Expression
4263 (N
: Node_Id
; Val
: Node_Id
) is
4265 pragma Assert
(False
4266 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4267 or else NT
(N
).Nkind
= N_Delta_Constraint
4268 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4269 Set_Node3_With_Parent
(N
, Val
);
4270 end Set_Delta_Expression
;
4272 procedure Set_Digits_Expression
4273 (N
: Node_Id
; Val
: Node_Id
) is
4275 pragma Assert
(False
4276 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4277 or else NT
(N
).Nkind
= N_Digits_Constraint
4278 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4279 Set_Node2_With_Parent
(N
, Val
);
4280 end Set_Digits_Expression
;
4282 procedure Set_Discr_Check_Funcs_Built
4283 (N
: Node_Id
; Val
: Boolean := True) is
4285 pragma Assert
(False
4286 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4287 Set_Flag11
(N
, Val
);
4288 end Set_Discr_Check_Funcs_Built
;
4290 procedure Set_Discrete_Choices
4291 (N
: Node_Id
; Val
: List_Id
) is
4293 pragma Assert
(False
4294 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4295 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4296 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4297 or else NT
(N
).Nkind
= N_Variant
);
4298 Set_List4_With_Parent
(N
, Val
);
4299 end Set_Discrete_Choices
;
4301 procedure Set_Discrete_Range
4302 (N
: Node_Id
; Val
: Node_Id
) is
4304 pragma Assert
(False
4305 or else NT
(N
).Nkind
= N_Slice
);
4306 Set_Node4_With_Parent
(N
, Val
);
4307 end Set_Discrete_Range
;
4309 procedure Set_Discrete_Subtype_Definition
4310 (N
: Node_Id
; Val
: Node_Id
) is
4312 pragma Assert
(False
4313 or else NT
(N
).Nkind
= N_Entry_Declaration
4314 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4315 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4316 Set_Node4_With_Parent
(N
, Val
);
4317 end Set_Discrete_Subtype_Definition
;
4319 procedure Set_Discrete_Subtype_Definitions
4320 (N
: Node_Id
; Val
: List_Id
) is
4322 pragma Assert
(False
4323 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4324 Set_List2_With_Parent
(N
, Val
);
4325 end Set_Discrete_Subtype_Definitions
;
4327 procedure Set_Discriminant_Specifications
4328 (N
: Node_Id
; Val
: List_Id
) is
4330 pragma Assert
(False
4331 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4332 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4333 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4334 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4335 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4336 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4337 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4338 Set_List4_With_Parent
(N
, Val
);
4339 end Set_Discriminant_Specifications
;
4341 procedure Set_Discriminant_Type
4342 (N
: Node_Id
; Val
: Node_Id
) is
4344 pragma Assert
(False
4345 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4346 Set_Node5_With_Parent
(N
, Val
);
4347 end Set_Discriminant_Type
;
4349 procedure Set_Do_Accessibility_Check
4350 (N
: Node_Id
; Val
: Boolean := True) is
4352 pragma Assert
(False
4353 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4354 Set_Flag13
(N
, Val
);
4355 end Set_Do_Accessibility_Check
;
4357 procedure Set_Do_Discriminant_Check
4358 (N
: Node_Id
; Val
: Boolean := True) is
4360 pragma Assert
(False
4361 or else NT
(N
).Nkind
= N_Assignment_Statement
4362 or else NT
(N
).Nkind
= N_Selected_Component
4363 or else NT
(N
).Nkind
= N_Type_Conversion
);
4365 end Set_Do_Discriminant_Check
;
4367 procedure Set_Do_Division_Check
4368 (N
: Node_Id
; Val
: Boolean := True) is
4370 pragma Assert
(False
4371 or else NT
(N
).Nkind
= N_Op_Divide
4372 or else NT
(N
).Nkind
= N_Op_Mod
4373 or else NT
(N
).Nkind
= N_Op_Rem
);
4374 Set_Flag13
(N
, Val
);
4375 end Set_Do_Division_Check
;
4377 procedure Set_Do_Length_Check
4378 (N
: Node_Id
; Val
: Boolean := True) is
4380 pragma Assert
(False
4381 or else NT
(N
).Nkind
= N_Assignment_Statement
4382 or else NT
(N
).Nkind
= N_Op_And
4383 or else NT
(N
).Nkind
= N_Op_Or
4384 or else NT
(N
).Nkind
= N_Op_Xor
4385 or else NT
(N
).Nkind
= N_Type_Conversion
);
4387 end Set_Do_Length_Check
;
4389 procedure Set_Do_Overflow_Check
4390 (N
: Node_Id
; Val
: Boolean := True) is
4392 pragma Assert
(False
4393 or else NT
(N
).Nkind
in N_Op
4394 or else NT
(N
).Nkind
= N_Attribute_Reference
4395 or else NT
(N
).Nkind
= N_Case_Expression
4396 or else NT
(N
).Nkind
= N_If_Expression
4397 or else NT
(N
).Nkind
= N_Type_Conversion
);
4398 Set_Flag17
(N
, Val
);
4399 end Set_Do_Overflow_Check
;
4401 procedure Set_Do_Range_Check
4402 (N
: Node_Id
; Val
: Boolean := True) is
4404 pragma Assert
(False
4405 or else NT
(N
).Nkind
in N_Subexpr
);
4407 end Set_Do_Range_Check
;
4409 procedure Set_Do_Storage_Check
4410 (N
: Node_Id
; Val
: Boolean := True) is
4412 pragma Assert
(False
4413 or else NT
(N
).Nkind
= N_Allocator
4414 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4415 Set_Flag17
(N
, Val
);
4416 end Set_Do_Storage_Check
;
4418 procedure Set_Do_Tag_Check
4419 (N
: Node_Id
; Val
: Boolean := True) is
4421 pragma Assert
(False
4422 or else NT
(N
).Nkind
= N_Assignment_Statement
4423 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4424 or else NT
(N
).Nkind
= N_Function_Call
4425 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4426 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4427 or else NT
(N
).Nkind
= N_Type_Conversion
);
4428 Set_Flag13
(N
, Val
);
4429 end Set_Do_Tag_Check
;
4431 procedure Set_Elaborate_All_Desirable
4432 (N
: Node_Id
; Val
: Boolean := True) is
4434 pragma Assert
(False
4435 or else NT
(N
).Nkind
= N_With_Clause
);
4437 end Set_Elaborate_All_Desirable
;
4439 procedure Set_Elaborate_All_Present
4440 (N
: Node_Id
; Val
: Boolean := True) is
4442 pragma Assert
(False
4443 or else NT
(N
).Nkind
= N_With_Clause
);
4444 Set_Flag14
(N
, Val
);
4445 end Set_Elaborate_All_Present
;
4447 procedure Set_Elaborate_Desirable
4448 (N
: Node_Id
; Val
: Boolean := True) is
4450 pragma Assert
(False
4451 or else NT
(N
).Nkind
= N_With_Clause
);
4452 Set_Flag11
(N
, Val
);
4453 end Set_Elaborate_Desirable
;
4455 procedure Set_Elaborate_Present
4456 (N
: Node_Id
; Val
: Boolean := True) is
4458 pragma Assert
(False
4459 or else NT
(N
).Nkind
= N_With_Clause
);
4461 end Set_Elaborate_Present
;
4463 procedure Set_Else_Actions
4464 (N
: Node_Id
; Val
: List_Id
) is
4466 pragma Assert
(False
4467 or else NT
(N
).Nkind
= N_If_Expression
);
4468 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4469 end Set_Else_Actions
;
4471 procedure Set_Else_Statements
4472 (N
: Node_Id
; Val
: List_Id
) is
4474 pragma Assert
(False
4475 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4476 or else NT
(N
).Nkind
= N_If_Statement
4477 or else NT
(N
).Nkind
= N_Selective_Accept
);
4478 Set_List4_With_Parent
(N
, Val
);
4479 end Set_Else_Statements
;
4481 procedure Set_Elsif_Parts
4482 (N
: Node_Id
; Val
: List_Id
) is
4484 pragma Assert
(False
4485 or else NT
(N
).Nkind
= N_If_Statement
);
4486 Set_List3_With_Parent
(N
, Val
);
4487 end Set_Elsif_Parts
;
4489 procedure Set_Enclosing_Variant
4490 (N
: Node_Id
; Val
: Node_Id
) is
4492 pragma Assert
(False
4493 or else NT
(N
).Nkind
= N_Variant
);
4494 Set_Node2
(N
, Val
); -- semantic field, no parent set
4495 end Set_Enclosing_Variant
;
4497 procedure Set_End_Label
4498 (N
: Node_Id
; Val
: Node_Id
) is
4500 pragma Assert
(False
4501 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4502 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4503 or else NT
(N
).Nkind
= N_Loop_Statement
4504 or else NT
(N
).Nkind
= N_Package_Specification
4505 or else NT
(N
).Nkind
= N_Protected_Body
4506 or else NT
(N
).Nkind
= N_Protected_Definition
4507 or else NT
(N
).Nkind
= N_Record_Definition
4508 or else NT
(N
).Nkind
= N_Task_Definition
);
4509 Set_Node4_With_Parent
(N
, Val
);
4512 procedure Set_End_Span
4513 (N
: Node_Id
; Val
: Uint
) is
4515 pragma Assert
(False
4516 or else NT
(N
).Nkind
= N_Case_Statement
4517 or else NT
(N
).Nkind
= N_If_Statement
);
4521 procedure Set_Entity
4522 (N
: Node_Id
; Val
: Node_Id
) is
4524 pragma Assert
(False
4525 or else NT
(N
).Nkind
in N_Has_Entity
4526 or else NT
(N
).Nkind
= N_Aspect_Specification
4527 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4528 or else NT
(N
).Nkind
= N_Freeze_Entity
4529 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4530 Set_Node4
(N
, Val
); -- semantic field, no parent set
4533 procedure Set_Entry_Body_Formal_Part
4534 (N
: Node_Id
; Val
: Node_Id
) is
4536 pragma Assert
(False
4537 or else NT
(N
).Nkind
= N_Entry_Body
);
4538 Set_Node5_With_Parent
(N
, Val
);
4539 end Set_Entry_Body_Formal_Part
;
4541 procedure Set_Entry_Call_Alternative
4542 (N
: Node_Id
; Val
: Node_Id
) is
4544 pragma Assert
(False
4545 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4546 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4547 Set_Node1_With_Parent
(N
, Val
);
4548 end Set_Entry_Call_Alternative
;
4550 procedure Set_Entry_Call_Statement
4551 (N
: Node_Id
; Val
: Node_Id
) is
4553 pragma Assert
(False
4554 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4555 Set_Node1_With_Parent
(N
, Val
);
4556 end Set_Entry_Call_Statement
;
4558 procedure Set_Entry_Direct_Name
4559 (N
: Node_Id
; Val
: Node_Id
) is
4561 pragma Assert
(False
4562 or else NT
(N
).Nkind
= N_Accept_Statement
);
4563 Set_Node1_With_Parent
(N
, Val
);
4564 end Set_Entry_Direct_Name
;
4566 procedure Set_Entry_Index
4567 (N
: Node_Id
; Val
: Node_Id
) is
4569 pragma Assert
(False
4570 or else NT
(N
).Nkind
= N_Accept_Statement
);
4571 Set_Node5_With_Parent
(N
, Val
);
4572 end Set_Entry_Index
;
4574 procedure Set_Entry_Index_Specification
4575 (N
: Node_Id
; Val
: Node_Id
) is
4577 pragma Assert
(False
4578 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4579 Set_Node4_With_Parent
(N
, Val
);
4580 end Set_Entry_Index_Specification
;
4583 (N
: Node_Id
; Val
: Node_Id
) is
4585 pragma Assert
(False
4586 or else NT
(N
).Nkind
in N_Has_Etype
);
4587 Set_Node5
(N
, Val
); -- semantic field, no parent set
4590 procedure Set_Exception_Choices
4591 (N
: Node_Id
; Val
: List_Id
) is
4593 pragma Assert
(False
4594 or else NT
(N
).Nkind
= N_Exception_Handler
);
4595 Set_List4_With_Parent
(N
, Val
);
4596 end Set_Exception_Choices
;
4598 procedure Set_Exception_Handlers
4599 (N
: Node_Id
; Val
: List_Id
) is
4601 pragma Assert
(False
4602 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4603 Set_List5_With_Parent
(N
, Val
);
4604 end Set_Exception_Handlers
;
4606 procedure Set_Exception_Junk
4607 (N
: Node_Id
; Val
: Boolean := True) is
4609 pragma Assert
(False
4610 or else NT
(N
).Nkind
= N_Block_Statement
4611 or else NT
(N
).Nkind
= N_Goto_Statement
4612 or else NT
(N
).Nkind
= N_Label
4613 or else NT
(N
).Nkind
= N_Object_Declaration
4614 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4616 end Set_Exception_Junk
;
4618 procedure Set_Exception_Label
4619 (N
: Node_Id
; Val
: Node_Id
) is
4621 pragma Assert
(False
4622 or else NT
(N
).Nkind
= N_Exception_Handler
4623 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4624 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4625 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4626 Set_Node5
(N
, Val
); -- semantic field, no parent set
4627 end Set_Exception_Label
;
4629 procedure Set_Expansion_Delayed
4630 (N
: Node_Id
; Val
: Boolean := True) is
4632 pragma Assert
(False
4633 or else NT
(N
).Nkind
= N_Aggregate
4634 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4635 Set_Flag11
(N
, Val
);
4636 end Set_Expansion_Delayed
;
4638 procedure Set_Explicit_Actual_Parameter
4639 (N
: Node_Id
; Val
: Node_Id
) is
4641 pragma Assert
(False
4642 or else NT
(N
).Nkind
= N_Parameter_Association
);
4643 Set_Node3_With_Parent
(N
, Val
);
4644 end Set_Explicit_Actual_Parameter
;
4646 procedure Set_Explicit_Generic_Actual_Parameter
4647 (N
: Node_Id
; Val
: Node_Id
) is
4649 pragma Assert
(False
4650 or else NT
(N
).Nkind
= N_Generic_Association
);
4651 Set_Node1_With_Parent
(N
, Val
);
4652 end Set_Explicit_Generic_Actual_Parameter
;
4654 procedure Set_Expression
4655 (N
: Node_Id
; Val
: Node_Id
) is
4657 pragma Assert
(False
4658 or else NT
(N
).Nkind
= N_Allocator
4659 or else NT
(N
).Nkind
= N_Aspect_Specification
4660 or else NT
(N
).Nkind
= N_Assignment_Statement
4661 or else NT
(N
).Nkind
= N_At_Clause
4662 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4663 or else NT
(N
).Nkind
= N_Case_Expression
4664 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4665 or else NT
(N
).Nkind
= N_Case_Statement
4666 or else NT
(N
).Nkind
= N_Code_Statement
4667 or else NT
(N
).Nkind
= N_Component_Association
4668 or else NT
(N
).Nkind
= N_Component_Declaration
4669 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4670 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4671 or else NT
(N
).Nkind
= N_Delta_Aggregate
4672 or else NT
(N
).Nkind
= N_Discriminant_Association
4673 or else NT
(N
).Nkind
= N_Discriminant_Specification
4674 or else NT
(N
).Nkind
= N_Exception_Declaration
4675 or else NT
(N
).Nkind
= N_Expression_Function
4676 or else NT
(N
).Nkind
= N_Expression_With_Actions
4677 or else NT
(N
).Nkind
= N_Free_Statement
4678 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4679 or else NT
(N
).Nkind
= N_Mod_Clause
4680 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4681 or else NT
(N
).Nkind
= N_Number_Declaration
4682 or else NT
(N
).Nkind
= N_Object_Declaration
4683 or else NT
(N
).Nkind
= N_Parameter_Specification
4684 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4685 or else NT
(N
).Nkind
= N_Qualified_Expression
4686 or else NT
(N
).Nkind
= N_Raise_Expression
4687 or else NT
(N
).Nkind
= N_Raise_Statement
4688 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4689 or else NT
(N
).Nkind
= N_Type_Conversion
4690 or else NT
(N
).Nkind
= N_Unchecked_Expression
4691 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4692 Set_Node3_With_Parent
(N
, Val
);
4695 procedure Set_Expression_Copy
4696 (N
: Node_Id
; Val
: Node_Id
) is
4698 pragma Assert
(False
4699 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4700 Set_Node2
(N
, Val
); -- semantic field, no parent set
4701 end Set_Expression_Copy
;
4703 procedure Set_Expressions
4704 (N
: Node_Id
; Val
: List_Id
) is
4706 pragma Assert
(False
4707 or else NT
(N
).Nkind
= N_Aggregate
4708 or else NT
(N
).Nkind
= N_Attribute_Reference
4709 or else NT
(N
).Nkind
= N_Extension_Aggregate
4710 or else NT
(N
).Nkind
= N_If_Expression
4711 or else NT
(N
).Nkind
= N_Indexed_Component
);
4712 Set_List1_With_Parent
(N
, Val
);
4713 end Set_Expressions
;
4715 procedure Set_First_Bit
4716 (N
: Node_Id
; Val
: Node_Id
) is
4718 pragma Assert
(False
4719 or else NT
(N
).Nkind
= N_Component_Clause
);
4720 Set_Node3_With_Parent
(N
, Val
);
4723 procedure Set_First_Inlined_Subprogram
4724 (N
: Node_Id
; Val
: Entity_Id
) is
4726 pragma Assert
(False
4727 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4728 Set_Node3
(N
, Val
); -- semantic field, no parent set
4729 end Set_First_Inlined_Subprogram
;
4731 procedure Set_First_Name
4732 (N
: Node_Id
; Val
: Boolean := True) is
4734 pragma Assert
(False
4735 or else NT
(N
).Nkind
= N_With_Clause
);
4739 procedure Set_First_Named_Actual
4740 (N
: Node_Id
; Val
: Node_Id
) is
4742 pragma Assert
(False
4743 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4744 or else NT
(N
).Nkind
= N_Function_Call
4745 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4746 Set_Node4
(N
, Val
); -- semantic field, no parent set
4747 end Set_First_Named_Actual
;
4749 procedure Set_First_Real_Statement
4750 (N
: Node_Id
; Val
: Node_Id
) is
4752 pragma Assert
(False
4753 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4754 Set_Node2
(N
, Val
); -- semantic field, no parent set
4755 end Set_First_Real_Statement
;
4757 procedure Set_First_Subtype_Link
4758 (N
: Node_Id
; Val
: Entity_Id
) is
4760 pragma Assert
(False
4761 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4762 Set_Node5
(N
, Val
); -- semantic field, no parent set
4763 end Set_First_Subtype_Link
;
4765 procedure Set_Float_Truncate
4766 (N
: Node_Id
; Val
: Boolean := True) is
4768 pragma Assert
(False
4769 or else NT
(N
).Nkind
= N_Type_Conversion
);
4770 Set_Flag11
(N
, Val
);
4771 end Set_Float_Truncate
;
4773 procedure Set_Formal_Type_Definition
4774 (N
: Node_Id
; Val
: Node_Id
) is
4776 pragma Assert
(False
4777 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4778 Set_Node3_With_Parent
(N
, Val
);
4779 end Set_Formal_Type_Definition
;
4781 procedure Set_Forwards_OK
4782 (N
: Node_Id
; Val
: Boolean := True) is
4784 pragma Assert
(False
4785 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4787 end Set_Forwards_OK
;
4789 procedure Set_From_Aspect_Specification
4790 (N
: Node_Id
; Val
: Boolean := True) is
4792 pragma Assert
(False
4793 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4794 or else NT
(N
).Nkind
= N_Pragma
);
4795 Set_Flag13
(N
, Val
);
4796 end Set_From_Aspect_Specification
;
4798 procedure Set_From_At_End
4799 (N
: Node_Id
; Val
: Boolean := True) is
4801 pragma Assert
(False
4802 or else NT
(N
).Nkind
= N_Raise_Statement
);
4804 end Set_From_At_End
;
4806 procedure Set_From_At_Mod
4807 (N
: Node_Id
; Val
: Boolean := True) is
4809 pragma Assert
(False
4810 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4812 end Set_From_At_Mod
;
4814 procedure Set_From_Conditional_Expression
4815 (N
: Node_Id
; Val
: Boolean := True) is
4817 pragma Assert
(False
4818 or else NT
(N
).Nkind
= N_Case_Statement
4819 or else NT
(N
).Nkind
= N_If_Statement
);
4821 end Set_From_Conditional_Expression
;
4823 procedure Set_From_Default
4824 (N
: Node_Id
; Val
: Boolean := True) is
4826 pragma Assert
(False
4827 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4829 end Set_From_Default
;
4831 procedure Set_Generalized_Indexing
4832 (N
: Node_Id
; Val
: Node_Id
) is
4834 pragma Assert
(False
4835 or else NT
(N
).Nkind
= N_Indexed_Component
);
4837 end Set_Generalized_Indexing
;
4839 procedure Set_Generic_Associations
4840 (N
: Node_Id
; Val
: List_Id
) is
4842 pragma Assert
(False
4843 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4844 or else NT
(N
).Nkind
= N_Function_Instantiation
4845 or else NT
(N
).Nkind
= N_Package_Instantiation
4846 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4847 Set_List3_With_Parent
(N
, Val
);
4848 end Set_Generic_Associations
;
4850 procedure Set_Generic_Formal_Declarations
4851 (N
: Node_Id
; Val
: List_Id
) is
4853 pragma Assert
(False
4854 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4855 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4856 Set_List2_With_Parent
(N
, Val
);
4857 end Set_Generic_Formal_Declarations
;
4859 procedure Set_Generic_Parent
4860 (N
: Node_Id
; Val
: Node_Id
) is
4862 pragma Assert
(False
4863 or else NT
(N
).Nkind
= N_Function_Specification
4864 or else NT
(N
).Nkind
= N_Package_Specification
4865 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4867 end Set_Generic_Parent
;
4869 procedure Set_Generic_Parent_Type
4870 (N
: Node_Id
; Val
: Node_Id
) is
4872 pragma Assert
(False
4873 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4875 end Set_Generic_Parent_Type
;
4877 procedure Set_Handled_Statement_Sequence
4878 (N
: Node_Id
; Val
: Node_Id
) is
4880 pragma Assert
(False
4881 or else NT
(N
).Nkind
= N_Accept_Statement
4882 or else NT
(N
).Nkind
= N_Block_Statement
4883 or else NT
(N
).Nkind
= N_Entry_Body
4884 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4885 or else NT
(N
).Nkind
= N_Package_Body
4886 or else NT
(N
).Nkind
= N_Subprogram_Body
4887 or else NT
(N
).Nkind
= N_Task_Body
);
4888 Set_Node4_With_Parent
(N
, Val
);
4889 end Set_Handled_Statement_Sequence
;
4891 procedure Set_Handler_List_Entry
4892 (N
: Node_Id
; Val
: Node_Id
) is
4894 pragma Assert
(False
4895 or else NT
(N
).Nkind
= N_Object_Declaration
);
4897 end Set_Handler_List_Entry
;
4899 procedure Set_Has_Created_Identifier
4900 (N
: Node_Id
; Val
: Boolean := True) is
4902 pragma Assert
(False
4903 or else NT
(N
).Nkind
= N_Block_Statement
4904 or else NT
(N
).Nkind
= N_Loop_Statement
);
4905 Set_Flag15
(N
, Val
);
4906 end Set_Has_Created_Identifier
;
4908 procedure Set_Has_Dereference_Action
4909 (N
: Node_Id
; Val
: Boolean := True) is
4911 pragma Assert
(False
4912 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4913 Set_Flag13
(N
, Val
);
4914 end Set_Has_Dereference_Action
;
4916 procedure Set_Has_Dynamic_Length_Check
4917 (N
: Node_Id
; Val
: Boolean := True) is
4919 pragma Assert
(False
4920 or else NT
(N
).Nkind
in N_Subexpr
);
4921 Set_Flag10
(N
, Val
);
4922 end Set_Has_Dynamic_Length_Check
;
4924 procedure Set_Has_Dynamic_Range_Check
4925 (N
: Node_Id
; Val
: Boolean := True) is
4927 pragma Assert
(False
4928 or else NT
(N
).Nkind
= N_Subtype_Declaration
4929 or else NT
(N
).Nkind
in N_Subexpr
);
4930 Set_Flag12
(N
, Val
);
4931 end Set_Has_Dynamic_Range_Check
;
4933 procedure Set_Has_Init_Expression
4934 (N
: Node_Id
; Val
: Boolean := True) is
4936 pragma Assert
(False
4937 or else NT
(N
).Nkind
= N_Object_Declaration
);
4938 Set_Flag14
(N
, Val
);
4939 end Set_Has_Init_Expression
;
4941 procedure Set_Has_Local_Raise
4942 (N
: Node_Id
; Val
: Boolean := True) is
4944 pragma Assert
(False
4945 or else NT
(N
).Nkind
= N_Exception_Handler
);
4947 end Set_Has_Local_Raise
;
4949 procedure Set_Has_No_Elaboration_Code
4950 (N
: Node_Id
; Val
: Boolean := True) is
4952 pragma Assert
(False
4953 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4954 Set_Flag17
(N
, Val
);
4955 end Set_Has_No_Elaboration_Code
;
4957 procedure Set_Has_Pragma_Suppress_All
4958 (N
: Node_Id
; Val
: Boolean := True) is
4960 pragma Assert
(False
4961 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4962 Set_Flag14
(N
, Val
);
4963 end Set_Has_Pragma_Suppress_All
;
4965 procedure Set_Has_Private_View
4966 (N
: Node_Id
; Val
: Boolean := True) is
4968 pragma Assert
(False
4969 or else NT
(N
).Nkind
in N_Op
4970 or else NT
(N
).Nkind
= N_Character_Literal
4971 or else NT
(N
).Nkind
= N_Expanded_Name
4972 or else NT
(N
).Nkind
= N_Identifier
4973 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4974 Set_Flag11
(N
, Val
);
4975 end Set_Has_Private_View
;
4977 procedure Set_Has_Relative_Deadline_Pragma
4978 (N
: Node_Id
; Val
: Boolean := True) is
4980 pragma Assert
(False
4981 or else NT
(N
).Nkind
= N_Subprogram_Body
4982 or else NT
(N
).Nkind
= N_Task_Definition
);
4984 end Set_Has_Relative_Deadline_Pragma
;
4986 procedure Set_Has_Self_Reference
4987 (N
: Node_Id
; Val
: Boolean := True) is
4989 pragma Assert
(False
4990 or else NT
(N
).Nkind
= N_Aggregate
4991 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4992 Set_Flag13
(N
, Val
);
4993 end Set_Has_Self_Reference
;
4995 procedure Set_Has_SP_Choice
4996 (N
: Node_Id
; Val
: Boolean := True) is
4998 pragma Assert
(False
4999 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5000 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5001 or else NT
(N
).Nkind
= N_Variant
);
5002 Set_Flag15
(N
, Val
);
5003 end Set_Has_SP_Choice
;
5005 procedure Set_Has_Storage_Size_Pragma
5006 (N
: Node_Id
; Val
: Boolean := True) is
5008 pragma Assert
(False
5009 or else NT
(N
).Nkind
= N_Task_Definition
);
5011 end Set_Has_Storage_Size_Pragma
;
5013 procedure Set_Has_Target_Names
5014 (N
: Node_Id
; Val
: Boolean := True) is
5016 pragma Assert
(False
5017 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5019 end Set_Has_Target_Names
;
5021 procedure Set_Has_Wide_Character
5022 (N
: Node_Id
; Val
: Boolean := True) is
5024 pragma Assert
(False
5025 or else NT
(N
).Nkind
= N_String_Literal
);
5026 Set_Flag11
(N
, Val
);
5027 end Set_Has_Wide_Character
;
5029 procedure Set_Has_Wide_Wide_Character
5030 (N
: Node_Id
; Val
: Boolean := True) is
5032 pragma Assert
(False
5033 or else NT
(N
).Nkind
= N_String_Literal
);
5034 Set_Flag13
(N
, Val
);
5035 end Set_Has_Wide_Wide_Character
;
5037 procedure Set_Header_Size_Added
5038 (N
: Node_Id
; Val
: Boolean := True) is
5040 pragma Assert
(False
5041 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5042 Set_Flag11
(N
, Val
);
5043 end Set_Header_Size_Added
;
5045 procedure Set_Hidden_By_Use_Clause
5046 (N
: Node_Id
; Val
: Elist_Id
) is
5048 pragma Assert
(False
5049 or else NT
(N
).Nkind
= N_Use_Package_Clause
5050 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5051 Set_Elist5
(N
, Val
);
5052 end Set_Hidden_By_Use_Clause
;
5054 procedure Set_High_Bound
5055 (N
: Node_Id
; Val
: Node_Id
) is
5057 pragma Assert
(False
5058 or else NT
(N
).Nkind
= N_Range
5059 or else NT
(N
).Nkind
= N_Real_Range_Specification
5060 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5061 Set_Node2_With_Parent
(N
, Val
);
5064 procedure Set_Identifier
5065 (N
: Node_Id
; Val
: Node_Id
) is
5067 pragma Assert
(False
5068 or else NT
(N
).Nkind
= N_Aspect_Specification
5069 or else NT
(N
).Nkind
= N_At_Clause
5070 or else NT
(N
).Nkind
= N_Block_Statement
5071 or else NT
(N
).Nkind
= N_Designator
5072 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5073 or else NT
(N
).Nkind
= N_Label
5074 or else NT
(N
).Nkind
= N_Loop_Statement
5075 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5076 Set_Node1_With_Parent
(N
, Val
);
5079 procedure Set_Implicit_With
5080 (N
: Node_Id
; Val
: Boolean := True) is
5082 pragma Assert
(False
5083 or else NT
(N
).Nkind
= N_With_Clause
);
5084 Set_Flag16
(N
, Val
);
5085 end Set_Implicit_With
;
5087 procedure Set_Implicit_With_From_Instantiation
5088 (N
: Node_Id
; Val
: Boolean := True) is
5090 pragma Assert
(False
5091 or else NT
(N
).Nkind
= N_With_Clause
);
5092 Set_Flag12
(N
, Val
);
5093 end Set_Implicit_With_From_Instantiation
;
5095 procedure Set_Interface_List
5096 (N
: Node_Id
; Val
: List_Id
) is
5098 pragma Assert
(False
5099 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5100 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5101 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5102 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5103 or else NT
(N
).Nkind
= N_Record_Definition
5104 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5105 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5106 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5107 Set_List2_With_Parent
(N
, Val
);
5108 end Set_Interface_List
;
5110 procedure Set_Interface_Present
5111 (N
: Node_Id
; Val
: Boolean := True) is
5113 pragma Assert
(False
5114 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5115 or else NT
(N
).Nkind
= N_Record_Definition
);
5116 Set_Flag16
(N
, Val
);
5117 end Set_Interface_Present
;
5119 procedure Set_Import_Interface_Present
5120 (N
: Node_Id
; Val
: Boolean := True) is
5122 pragma Assert
(False
5123 or else NT
(N
).Nkind
= N_Pragma
);
5124 Set_Flag16
(N
, Val
);
5125 end Set_Import_Interface_Present
;
5127 procedure Set_In_Present
5128 (N
: Node_Id
; Val
: Boolean := True) is
5130 pragma Assert
(False
5131 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5132 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5133 Set_Flag15
(N
, Val
);
5136 procedure Set_Includes_Infinities
5137 (N
: Node_Id
; Val
: Boolean := True) is
5139 pragma Assert
(False
5140 or else NT
(N
).Nkind
= N_Range
);
5141 Set_Flag11
(N
, Val
);
5142 end Set_Includes_Infinities
;
5144 procedure Set_Incomplete_View
5145 (N
: Node_Id
; Val
: Node_Id
) is
5147 pragma Assert
(False
5148 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5149 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5150 end Set_Incomplete_View
;
5152 procedure Set_Inherited_Discriminant
5153 (N
: Node_Id
; Val
: Boolean := True) is
5155 pragma Assert
(False
5156 or else NT
(N
).Nkind
= N_Component_Association
);
5157 Set_Flag13
(N
, Val
);
5158 end Set_Inherited_Discriminant
;
5160 procedure Set_Instance_Spec
5161 (N
: Node_Id
; Val
: Node_Id
) is
5163 pragma Assert
(False
5164 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5165 or else NT
(N
).Nkind
= N_Function_Instantiation
5166 or else NT
(N
).Nkind
= N_Package_Instantiation
5167 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5168 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5169 end Set_Instance_Spec
;
5171 procedure Set_Intval
5172 (N
: Node_Id
; Val
: Uint
) is
5174 pragma Assert
(False
5175 or else NT
(N
).Nkind
= N_Integer_Literal
);
5179 procedure Set_Is_Abort_Block
5180 (N
: Node_Id
; Val
: Boolean := True) is
5182 pragma Assert
(False
5183 or else NT
(N
).Nkind
= N_Block_Statement
);
5185 end Set_Is_Abort_Block
;
5187 procedure Set_Is_Accessibility_Actual
5188 (N
: Node_Id
; Val
: Boolean := True) is
5190 pragma Assert
(False
5191 or else NT
(N
).Nkind
= N_Parameter_Association
);
5192 Set_Flag13
(N
, Val
);
5193 end Set_Is_Accessibility_Actual
;
5195 procedure Set_Is_Analyzed_Pragma
5196 (N
: Node_Id
; Val
: Boolean := True) is
5198 pragma Assert
(False
5199 or else NT
(N
).Nkind
= N_Pragma
);
5201 end Set_Is_Analyzed_Pragma
;
5203 procedure Set_Is_Asynchronous_Call_Block
5204 (N
: Node_Id
; Val
: Boolean := True) is
5206 pragma Assert
(False
5207 or else NT
(N
).Nkind
= N_Block_Statement
);
5209 end Set_Is_Asynchronous_Call_Block
;
5211 procedure Set_Is_Boolean_Aspect
5212 (N
: Node_Id
; Val
: Boolean := True) is
5214 pragma Assert
(False
5215 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5216 Set_Flag16
(N
, Val
);
5217 end Set_Is_Boolean_Aspect
;
5219 procedure Set_Is_Checked
5220 (N
: Node_Id
; Val
: Boolean := True) is
5222 pragma Assert
(False
5223 or else NT
(N
).Nkind
= N_Aspect_Specification
5224 or else NT
(N
).Nkind
= N_Pragma
);
5225 Set_Flag11
(N
, Val
);
5228 procedure Set_Is_Checked_Ghost_Pragma
5229 (N
: Node_Id
; Val
: Boolean := True) is
5231 pragma Assert
(False
5232 or else NT
(N
).Nkind
= N_Pragma
);
5234 end Set_Is_Checked_Ghost_Pragma
;
5236 procedure Set_Is_Component_Left_Opnd
5237 (N
: Node_Id
; Val
: Boolean := True) is
5239 pragma Assert
(False
5240 or else NT
(N
).Nkind
= N_Op_Concat
);
5241 Set_Flag13
(N
, Val
);
5242 end Set_Is_Component_Left_Opnd
;
5244 procedure Set_Is_Component_Right_Opnd
5245 (N
: Node_Id
; Val
: Boolean := True) is
5247 pragma Assert
(False
5248 or else NT
(N
).Nkind
= N_Op_Concat
);
5249 Set_Flag14
(N
, Val
);
5250 end Set_Is_Component_Right_Opnd
;
5252 procedure Set_Is_Controlling_Actual
5253 (N
: Node_Id
; Val
: Boolean := True) is
5255 pragma Assert
(False
5256 or else NT
(N
).Nkind
in N_Subexpr
);
5257 Set_Flag16
(N
, Val
);
5258 end Set_Is_Controlling_Actual
;
5260 procedure Set_Is_Declaration_Level_Node
5261 (N
: Node_Id
; Val
: Boolean := True) is
5263 pragma Assert
(False
5264 or else NT
(N
).Nkind
= N_Call_Marker
5265 or else NT
(N
).Nkind
= N_Function_Instantiation
5266 or else NT
(N
).Nkind
= N_Package_Instantiation
5267 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5269 end Set_Is_Declaration_Level_Node
;
5271 procedure Set_Is_Delayed_Aspect
5272 (N
: Node_Id
; Val
: Boolean := True) is
5274 pragma Assert
(False
5275 or else NT
(N
).Nkind
= N_Aspect_Specification
5276 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5277 or else NT
(N
).Nkind
= N_Pragma
);
5278 Set_Flag14
(N
, Val
);
5279 end Set_Is_Delayed_Aspect
;
5281 procedure Set_Is_Disabled
5282 (N
: Node_Id
; Val
: Boolean := True) is
5284 pragma Assert
(False
5285 or else NT
(N
).Nkind
= N_Aspect_Specification
5286 or else NT
(N
).Nkind
= N_Pragma
);
5287 Set_Flag15
(N
, Val
);
5288 end Set_Is_Disabled
;
5290 procedure Set_Is_Dispatching_Call
5291 (N
: Node_Id
; Val
: Boolean := True) is
5293 pragma Assert
(False
5294 or else NT
(N
).Nkind
= N_Call_Marker
);
5296 end Set_Is_Dispatching_Call
;
5298 procedure Set_Is_Dynamic_Coextension
5299 (N
: Node_Id
; Val
: Boolean := True) is
5301 pragma Assert
(False
5302 or else NT
(N
).Nkind
= N_Allocator
);
5303 Set_Flag18
(N
, Val
);
5304 end Set_Is_Dynamic_Coextension
;
5306 procedure Set_Is_Effective_Use_Clause
5307 (N
: Node_Id
; Val
: Boolean := True) is
5309 pragma Assert
(False
5310 or else NT
(N
).Nkind
= N_Use_Package_Clause
5311 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5313 end Set_Is_Effective_Use_Clause
;
5315 procedure Set_Is_Elaboration_Checks_OK_Node
5316 (N
: Node_Id
; Val
: Boolean := True) is
5318 pragma Assert
(False
5319 or else NT
(N
).Nkind
= N_Assignment_Statement
5320 or else NT
(N
).Nkind
= N_Attribute_Reference
5321 or else NT
(N
).Nkind
= N_Call_Marker
5322 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5323 or else NT
(N
).Nkind
= N_Expanded_Name
5324 or else NT
(N
).Nkind
= N_Function_Call
5325 or else NT
(N
).Nkind
= N_Function_Instantiation
5326 or else NT
(N
).Nkind
= N_Identifier
5327 or else NT
(N
).Nkind
= N_Package_Instantiation
5328 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5329 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5330 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5332 end Set_Is_Elaboration_Checks_OK_Node
;
5334 procedure Set_Is_Elsif
5335 (N
: Node_Id
; Val
: Boolean := True) is
5337 pragma Assert
(False
5338 or else NT
(N
).Nkind
= N_If_Expression
);
5339 Set_Flag13
(N
, Val
);
5342 procedure Set_Is_Entry_Barrier_Function
5343 (N
: Node_Id
; Val
: Boolean := True) is
5345 pragma Assert
(False
5346 or else NT
(N
).Nkind
= N_Subprogram_Body
5347 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5349 end Set_Is_Entry_Barrier_Function
;
5351 procedure Set_Is_Expanded_Build_In_Place_Call
5352 (N
: Node_Id
; Val
: Boolean := True) is
5354 pragma Assert
(False
5355 or else NT
(N
).Nkind
= N_Function_Call
);
5356 Set_Flag11
(N
, Val
);
5357 end Set_Is_Expanded_Build_In_Place_Call
;
5359 procedure Set_Is_Expanded_Contract
5360 (N
: Node_Id
; Val
: Boolean := True) is
5362 pragma Assert
(False
5363 or else NT
(N
).Nkind
= N_Contract
);
5365 end Set_Is_Expanded_Contract
;
5367 procedure Set_Is_Finalization_Wrapper
5368 (N
: Node_Id
; Val
: Boolean := True) is
5370 pragma Assert
(False
5371 or else NT
(N
).Nkind
= N_Block_Statement
);
5373 end Set_Is_Finalization_Wrapper
;
5375 procedure Set_Is_Folded_In_Parser
5376 (N
: Node_Id
; Val
: Boolean := True) is
5378 pragma Assert
(False
5379 or else NT
(N
).Nkind
= N_String_Literal
);
5381 end Set_Is_Folded_In_Parser
;
5383 procedure Set_Is_Generic_Contract_Pragma
5384 (N
: Node_Id
; Val
: Boolean := True) is
5386 pragma Assert
(False
5387 or else NT
(N
).Nkind
= N_Pragma
);
5389 end Set_Is_Generic_Contract_Pragma
;
5391 procedure Set_Is_Ignored
5392 (N
: Node_Id
; Val
: Boolean := True) is
5394 pragma Assert
(False
5395 or else NT
(N
).Nkind
= N_Aspect_Specification
5396 or else NT
(N
).Nkind
= N_Pragma
);
5400 procedure Set_Is_Ignored_Ghost_Pragma
5401 (N
: Node_Id
; Val
: Boolean := True) is
5403 pragma Assert
(False
5404 or else NT
(N
).Nkind
= N_Pragma
);
5406 end Set_Is_Ignored_Ghost_Pragma
;
5408 procedure Set_Is_In_Discriminant_Check
5409 (N
: Node_Id
; Val
: Boolean := True) is
5411 pragma Assert
(False
5412 or else NT
(N
).Nkind
= N_Selected_Component
);
5413 Set_Flag11
(N
, Val
);
5414 end Set_Is_In_Discriminant_Check
;
5416 procedure Set_Is_Inherited_Pragma
5417 (N
: Node_Id
; Val
: Boolean := True) is
5419 pragma Assert
(False
5420 or else NT
(N
).Nkind
= N_Pragma
);
5422 end Set_Is_Inherited_Pragma
;
5424 procedure Set_Is_Initialization_Block
5425 (N
: Node_Id
; Val
: Boolean := True) is
5427 pragma Assert
(False
5428 or else NT
(N
).Nkind
= N_Block_Statement
);
5430 end Set_Is_Initialization_Block
;
5432 procedure Set_Is_Known_Guaranteed_ABE
5433 (N
: Node_Id
; Val
: Boolean := True) is
5435 pragma Assert
(False
5436 or else NT
(N
).Nkind
= N_Call_Marker
5437 or else NT
(N
).Nkind
= N_Function_Instantiation
5438 or else NT
(N
).Nkind
= N_Package_Instantiation
5439 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5440 Set_Flag18
(N
, Val
);
5441 end Set_Is_Known_Guaranteed_ABE
;
5443 procedure Set_Is_Machine_Number
5444 (N
: Node_Id
; Val
: Boolean := True) is
5446 pragma Assert
(False
5447 or else NT
(N
).Nkind
= N_Real_Literal
);
5448 Set_Flag11
(N
, Val
);
5449 end Set_Is_Machine_Number
;
5451 procedure Set_Is_Null_Loop
5452 (N
: Node_Id
; Val
: Boolean := True) is
5454 pragma Assert
(False
5455 or else NT
(N
).Nkind
= N_Loop_Statement
);
5456 Set_Flag16
(N
, Val
);
5457 end Set_Is_Null_Loop
;
5459 procedure Set_Is_Overloaded
5460 (N
: Node_Id
; Val
: Boolean := True) is
5462 pragma Assert
(False
5463 or else NT
(N
).Nkind
in N_Subexpr
);
5465 end Set_Is_Overloaded
;
5467 procedure Set_Is_Power_Of_2_For_Shift
5468 (N
: Node_Id
; Val
: Boolean := True) is
5470 pragma Assert
(False
5471 or else NT
(N
).Nkind
= N_Op_Expon
);
5472 Set_Flag13
(N
, Val
);
5473 end Set_Is_Power_Of_2_For_Shift
;
5475 procedure Set_Is_Prefixed_Call
5476 (N
: Node_Id
; Val
: Boolean := True) is
5478 pragma Assert
(False
5479 or else NT
(N
).Nkind
= N_Selected_Component
);
5480 Set_Flag17
(N
, Val
);
5481 end Set_Is_Prefixed_Call
;
5483 procedure Set_Is_Protected_Subprogram_Body
5484 (N
: Node_Id
; Val
: Boolean := True) is
5486 pragma Assert
(False
5487 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5489 end Set_Is_Protected_Subprogram_Body
;
5491 procedure Set_Is_Qualified_Universal_Literal
5492 (N
: Node_Id
; Val
: Boolean := True) is
5494 pragma Assert
(False
5495 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5497 end Set_Is_Qualified_Universal_Literal
;
5499 procedure Set_Is_Recorded_Scenario
5500 (N
: Node_Id
; Val
: Boolean := True) is
5502 pragma Assert
(False
5503 or else NT
(N
).Nkind
= N_Call_Marker
5504 or else NT
(N
).Nkind
= N_Function_Instantiation
5505 or else NT
(N
).Nkind
= N_Package_Instantiation
5506 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5508 end Set_Is_Recorded_Scenario
;
5510 procedure Set_Is_Source_Call
5511 (N
: Node_Id
; Val
: Boolean := True) is
5513 pragma Assert
(False
5514 or else NT
(N
).Nkind
= N_Call_Marker
);
5516 end Set_Is_Source_Call
;
5518 procedure Set_Is_SPARK_Mode_On_Node
5519 (N
: Node_Id
; Val
: Boolean := True) is
5521 pragma Assert
(False
5522 or else NT
(N
).Nkind
= N_Assignment_Statement
5523 or else NT
(N
).Nkind
= N_Attribute_Reference
5524 or else NT
(N
).Nkind
= N_Call_Marker
5525 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5526 or else NT
(N
).Nkind
= N_Expanded_Name
5527 or else NT
(N
).Nkind
= N_Function_Call
5528 or else NT
(N
).Nkind
= N_Function_Instantiation
5529 or else NT
(N
).Nkind
= N_Identifier
5530 or else NT
(N
).Nkind
= N_Package_Instantiation
5531 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5532 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5533 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5535 end Set_Is_SPARK_Mode_On_Node
;
5537 procedure Set_Is_Static_Coextension
5538 (N
: Node_Id
; Val
: Boolean := True) is
5540 pragma Assert
(False
5541 or else NT
(N
).Nkind
= N_Allocator
);
5542 Set_Flag14
(N
, Val
);
5543 end Set_Is_Static_Coextension
;
5545 procedure Set_Is_Static_Expression
5546 (N
: Node_Id
; Val
: Boolean := True) is
5548 pragma Assert
(False
5549 or else NT
(N
).Nkind
in N_Subexpr
);
5551 end Set_Is_Static_Expression
;
5553 procedure Set_Is_Subprogram_Descriptor
5554 (N
: Node_Id
; Val
: Boolean := True) is
5556 pragma Assert
(False
5557 or else NT
(N
).Nkind
= N_Object_Declaration
);
5558 Set_Flag16
(N
, Val
);
5559 end Set_Is_Subprogram_Descriptor
;
5561 procedure Set_Is_Task_Allocation_Block
5562 (N
: Node_Id
; Val
: Boolean := True) is
5564 pragma Assert
(False
5565 or else NT
(N
).Nkind
= N_Block_Statement
);
5567 end Set_Is_Task_Allocation_Block
;
5569 procedure Set_Is_Task_Body_Procedure
5570 (N
: Node_Id
; Val
: Boolean := True) is
5572 pragma Assert
(False
5573 or else NT
(N
).Nkind
= N_Subprogram_Body
5574 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5576 end Set_Is_Task_Body_Procedure
;
5578 procedure Set_Is_Task_Master
5579 (N
: Node_Id
; Val
: Boolean := True) is
5581 pragma Assert
(False
5582 or else NT
(N
).Nkind
= N_Block_Statement
5583 or else NT
(N
).Nkind
= N_Subprogram_Body
5584 or else NT
(N
).Nkind
= N_Task_Body
);
5586 end Set_Is_Task_Master
;
5588 procedure Set_Iteration_Scheme
5589 (N
: Node_Id
; Val
: Node_Id
) is
5591 pragma Assert
(False
5592 or else NT
(N
).Nkind
= N_Loop_Statement
);
5593 Set_Node2_With_Parent
(N
, Val
);
5594 end Set_Iteration_Scheme
;
5596 procedure Set_Iterator_Specification
5597 (N
: Node_Id
; Val
: Node_Id
) is
5599 pragma Assert
(False
5600 or else NT
(N
).Nkind
= N_Iteration_Scheme
5601 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5602 Set_Node2_With_Parent
(N
, Val
);
5603 end Set_Iterator_Specification
;
5606 (N
: Node_Id
; Val
: Entity_Id
) is
5608 pragma Assert
(False
5609 or else NT
(N
).Nkind
= N_Itype_Reference
);
5610 Set_Node1
(N
, Val
); -- no parent, semantic field
5613 procedure Set_Kill_Range_Check
5614 (N
: Node_Id
; Val
: Boolean := True) is
5616 pragma Assert
(False
5617 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5618 Set_Flag11
(N
, Val
);
5619 end Set_Kill_Range_Check
;
5621 procedure Set_Label_Construct
5622 (N
: Node_Id
; Val
: Node_Id
) is
5624 pragma Assert
(False
5625 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5626 Set_Node2
(N
, Val
); -- semantic field, no parent set
5627 end Set_Label_Construct
;
5629 procedure Set_Last_Bit
5630 (N
: Node_Id
; Val
: Node_Id
) is
5632 pragma Assert
(False
5633 or else NT
(N
).Nkind
= N_Component_Clause
);
5634 Set_Node4_With_Parent
(N
, Val
);
5637 procedure Set_Last_Name
5638 (N
: Node_Id
; Val
: Boolean := True) is
5640 pragma Assert
(False
5641 or else NT
(N
).Nkind
= N_With_Clause
);
5645 procedure Set_Left_Opnd
5646 (N
: Node_Id
; Val
: Node_Id
) is
5648 pragma Assert
(False
5649 or else NT
(N
).Nkind
= N_And_Then
5650 or else NT
(N
).Nkind
= N_In
5651 or else NT
(N
).Nkind
= N_Not_In
5652 or else NT
(N
).Nkind
= N_Or_Else
5653 or else NT
(N
).Nkind
in N_Binary_Op
);
5654 Set_Node2_With_Parent
(N
, Val
);
5657 procedure Set_Library_Unit
5658 (N
: Node_Id
; Val
: Node_Id
) is
5660 pragma Assert
(False
5661 or else NT
(N
).Nkind
= N_Compilation_Unit
5662 or else NT
(N
).Nkind
= N_Package_Body_Stub
5663 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5664 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5665 or else NT
(N
).Nkind
= N_Task_Body_Stub
5666 or else NT
(N
).Nkind
= N_With_Clause
);
5667 Set_Node4
(N
, Val
); -- semantic field, no parent set
5668 end Set_Library_Unit
;
5670 procedure Set_Limited_View_Installed
5671 (N
: Node_Id
; Val
: Boolean := True) is
5673 pragma Assert
(False
5674 or else NT
(N
).Nkind
= N_Package_Specification
5675 or else NT
(N
).Nkind
= N_With_Clause
);
5676 Set_Flag18
(N
, Val
);
5677 end Set_Limited_View_Installed
;
5679 procedure Set_Limited_Present
5680 (N
: Node_Id
; Val
: Boolean := True) is
5682 pragma Assert
(False
5683 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5684 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5685 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5686 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5687 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5688 or else NT
(N
).Nkind
= N_Record_Definition
5689 or else NT
(N
).Nkind
= N_With_Clause
);
5690 Set_Flag17
(N
, Val
);
5691 end Set_Limited_Present
;
5693 procedure Set_Literals
5694 (N
: Node_Id
; Val
: List_Id
) is
5696 pragma Assert
(False
5697 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5698 Set_List1_With_Parent
(N
, Val
);
5701 procedure Set_Local_Raise_Not_OK
5702 (N
: Node_Id
; Val
: Boolean := True) is
5704 pragma Assert
(False
5705 or else NT
(N
).Nkind
= N_Exception_Handler
);
5707 end Set_Local_Raise_Not_OK
;
5709 procedure Set_Local_Raise_Statements
5710 (N
: Node_Id
; Val
: Elist_Id
) is
5712 pragma Assert
(False
5713 or else NT
(N
).Nkind
= N_Exception_Handler
);
5714 Set_Elist1
(N
, Val
);
5715 end Set_Local_Raise_Statements
;
5717 procedure Set_Loop_Actions
5718 (N
: Node_Id
; Val
: List_Id
) is
5720 pragma Assert
(False
5721 or else NT
(N
).Nkind
= N_Component_Association
5722 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5723 Set_List2
(N
, Val
); -- semantic field, no parent set
5724 end Set_Loop_Actions
;
5726 procedure Set_Loop_Parameter_Specification
5727 (N
: Node_Id
; Val
: Node_Id
) is
5729 pragma Assert
(False
5730 or else NT
(N
).Nkind
= N_Iteration_Scheme
5731 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5732 Set_Node4_With_Parent
(N
, Val
);
5733 end Set_Loop_Parameter_Specification
;
5735 procedure Set_Low_Bound
5736 (N
: Node_Id
; Val
: Node_Id
) is
5738 pragma Assert
(False
5739 or else NT
(N
).Nkind
= N_Range
5740 or else NT
(N
).Nkind
= N_Real_Range_Specification
5741 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5742 Set_Node1_With_Parent
(N
, Val
);
5745 procedure Set_Mod_Clause
5746 (N
: Node_Id
; Val
: Node_Id
) is
5748 pragma Assert
(False
5749 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5750 Set_Node2_With_Parent
(N
, Val
);
5753 procedure Set_More_Ids
5754 (N
: Node_Id
; Val
: Boolean := True) is
5756 pragma Assert
(False
5757 or else NT
(N
).Nkind
= N_Component_Declaration
5758 or else NT
(N
).Nkind
= N_Discriminant_Specification
5759 or else NT
(N
).Nkind
= N_Exception_Declaration
5760 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5761 or else NT
(N
).Nkind
= N_Number_Declaration
5762 or else NT
(N
).Nkind
= N_Object_Declaration
5763 or else NT
(N
).Nkind
= N_Parameter_Specification
5764 or else NT
(N
).Nkind
= N_Use_Package_Clause
5765 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5769 procedure Set_Must_Be_Byte_Aligned
5770 (N
: Node_Id
; Val
: Boolean := True) is
5772 pragma Assert
(False
5773 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5774 Set_Flag14
(N
, Val
);
5775 end Set_Must_Be_Byte_Aligned
;
5777 procedure Set_Must_Not_Freeze
5778 (N
: Node_Id
; Val
: Boolean := True) is
5780 pragma Assert
(False
5781 or else NT
(N
).Nkind
= N_Subtype_Indication
5782 or else NT
(N
).Nkind
in N_Subexpr
);
5784 end Set_Must_Not_Freeze
;
5786 procedure Set_Must_Not_Override
5787 (N
: Node_Id
; Val
: Boolean := True) is
5789 pragma Assert
(False
5790 or else NT
(N
).Nkind
= N_Entry_Declaration
5791 or else NT
(N
).Nkind
= N_Function_Instantiation
5792 or else NT
(N
).Nkind
= N_Function_Specification
5793 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5794 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5795 Set_Flag15
(N
, Val
);
5796 end Set_Must_Not_Override
;
5798 procedure Set_Must_Override
5799 (N
: Node_Id
; Val
: Boolean := True) is
5801 pragma Assert
(False
5802 or else NT
(N
).Nkind
= N_Entry_Declaration
5803 or else NT
(N
).Nkind
= N_Function_Instantiation
5804 or else NT
(N
).Nkind
= N_Function_Specification
5805 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5806 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5807 Set_Flag14
(N
, Val
);
5808 end Set_Must_Override
;
5811 (N
: Node_Id
; Val
: Node_Id
) is
5813 pragma Assert
(False
5814 or else NT
(N
).Nkind
= N_Assignment_Statement
5815 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5816 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5817 or else NT
(N
).Nkind
= N_Designator
5818 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5819 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5820 or else NT
(N
).Nkind
= N_Exit_Statement
5821 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5822 or else NT
(N
).Nkind
= N_Function_Call
5823 or else NT
(N
).Nkind
= N_Function_Instantiation
5824 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5825 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5826 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5827 or else NT
(N
).Nkind
= N_Goto_Statement
5828 or else NT
(N
).Nkind
= N_Iterator_Specification
5829 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5830 or else NT
(N
).Nkind
= N_Package_Instantiation
5831 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5832 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5833 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5834 or else NT
(N
).Nkind
= N_Raise_Expression
5835 or else NT
(N
).Nkind
= N_Raise_Statement
5836 or else NT
(N
).Nkind
= N_Requeue_Statement
5837 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5838 or else NT
(N
).Nkind
= N_Subunit
5839 or else NT
(N
).Nkind
= N_Use_Package_Clause
5840 or else NT
(N
).Nkind
= N_Variant_Part
5841 or else NT
(N
).Nkind
= N_With_Clause
);
5842 Set_Node2_With_Parent
(N
, Val
);
5846 (N
: Node_Id
; Val
: List_Id
) is
5848 pragma Assert
(False
5849 or else NT
(N
).Nkind
= N_Abort_Statement
);
5850 Set_List2_With_Parent
(N
, Val
);
5853 procedure Set_Next_Entity
5854 (N
: Node_Id
; Val
: Node_Id
) is
5856 pragma Assert
(False
5857 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5858 or else NT
(N
).Nkind
= N_Defining_Identifier
5859 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5860 Set_Node2
(N
, Val
); -- semantic field, no parent set
5861 end Set_Next_Entity
;
5863 procedure Set_Next_Exit_Statement
5864 (N
: Node_Id
; Val
: Node_Id
) is
5866 pragma Assert
(False
5867 or else NT
(N
).Nkind
= N_Exit_Statement
);
5868 Set_Node3
(N
, Val
); -- semantic field, no parent set
5869 end Set_Next_Exit_Statement
;
5871 procedure Set_Next_Implicit_With
5872 (N
: Node_Id
; Val
: Node_Id
) is
5874 pragma Assert
(False
5875 or else NT
(N
).Nkind
= N_With_Clause
);
5876 Set_Node3
(N
, Val
); -- semantic field, no parent set
5877 end Set_Next_Implicit_With
;
5879 procedure Set_Next_Named_Actual
5880 (N
: Node_Id
; Val
: Node_Id
) is
5882 pragma Assert
(False
5883 or else NT
(N
).Nkind
= N_Parameter_Association
);
5884 Set_Node4
(N
, Val
); -- semantic field, no parent set
5885 end Set_Next_Named_Actual
;
5887 procedure Set_Next_Pragma
5888 (N
: Node_Id
; Val
: Node_Id
) is
5890 pragma Assert
(False
5891 or else NT
(N
).Nkind
= N_Pragma
);
5892 Set_Node1
(N
, Val
); -- semantic field, no parent set
5893 end Set_Next_Pragma
;
5895 procedure Set_Next_Rep_Item
5896 (N
: Node_Id
; Val
: Node_Id
) is
5898 pragma Assert
(False
5899 or else NT
(N
).Nkind
= N_Aspect_Specification
5900 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5901 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5902 or else NT
(N
).Nkind
= N_Pragma
5903 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5904 Set_Node5
(N
, Val
); -- semantic field, no parent set
5905 end Set_Next_Rep_Item
;
5907 procedure Set_Next_Use_Clause
5908 (N
: Node_Id
; Val
: Node_Id
) is
5910 pragma Assert
(False
5911 or else NT
(N
).Nkind
= N_Use_Package_Clause
5912 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5913 Set_Node3
(N
, Val
); -- semantic field, no parent set
5914 end Set_Next_Use_Clause
;
5916 procedure Set_No_Ctrl_Actions
5917 (N
: Node_Id
; Val
: Boolean := True) is
5919 pragma Assert
(False
5920 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5922 end Set_No_Ctrl_Actions
;
5924 procedure Set_No_Entities_Ref_In_Spec
5925 (N
: Node_Id
; Val
: Boolean := True) is
5927 pragma Assert
(False
5928 or else NT
(N
).Nkind
= N_With_Clause
);
5930 end Set_No_Entities_Ref_In_Spec
;
5932 procedure Set_No_Initialization
5933 (N
: Node_Id
; Val
: Boolean := True) is
5935 pragma Assert
(False
5936 or else NT
(N
).Nkind
= N_Allocator
5937 or else NT
(N
).Nkind
= N_Object_Declaration
);
5938 Set_Flag13
(N
, Val
);
5939 end Set_No_Initialization
;
5941 procedure Set_No_Minimize_Eliminate
5942 (N
: Node_Id
; Val
: Boolean := True) is
5944 pragma Assert
(False
5945 or else NT
(N
).Nkind
= N_In
5946 or else NT
(N
).Nkind
= N_Not_In
);
5947 Set_Flag17
(N
, Val
);
5948 end Set_No_Minimize_Eliminate
;
5950 procedure Set_No_Side_Effect_Removal
5951 (N
: Node_Id
; Val
: Boolean := True) is
5953 pragma Assert
(False
5954 or else NT
(N
).Nkind
= N_Function_Call
);
5955 Set_Flag17
(N
, Val
);
5956 end Set_No_Side_Effect_Removal
;
5958 procedure Set_No_Truncation
5959 (N
: Node_Id
; Val
: Boolean := True) is
5961 pragma Assert
(False
5962 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5963 Set_Flag17
(N
, Val
);
5964 end Set_No_Truncation
;
5966 procedure Set_Null_Excluding_Subtype
5967 (N
: Node_Id
; Val
: Boolean := True) is
5969 pragma Assert
(False
5970 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
5971 Set_Flag16
(N
, Val
);
5972 end Set_Null_Excluding_Subtype
;
5974 procedure Set_Null_Exclusion_Present
5975 (N
: Node_Id
; Val
: Boolean := True) is
5977 pragma Assert
(False
5978 or else NT
(N
).Nkind
= N_Access_Definition
5979 or else NT
(N
).Nkind
= N_Access_Function_Definition
5980 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5981 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5982 or else NT
(N
).Nkind
= N_Allocator
5983 or else NT
(N
).Nkind
= N_Component_Definition
5984 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5985 or else NT
(N
).Nkind
= N_Discriminant_Specification
5986 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5987 or else NT
(N
).Nkind
= N_Function_Specification
5988 or else NT
(N
).Nkind
= N_Object_Declaration
5989 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5990 or else NT
(N
).Nkind
= N_Parameter_Specification
5991 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
5992 Set_Flag11
(N
, Val
);
5993 end Set_Null_Exclusion_Present
;
5995 procedure Set_Null_Exclusion_In_Return_Present
5996 (N
: Node_Id
; Val
: Boolean := True) is
5998 pragma Assert
(False
5999 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6000 Set_Flag14
(N
, Val
);
6001 end Set_Null_Exclusion_In_Return_Present
;
6003 procedure Set_Null_Present
6004 (N
: Node_Id
; Val
: Boolean := True) is
6006 pragma Assert
(False
6007 or else NT
(N
).Nkind
= N_Component_List
6008 or else NT
(N
).Nkind
= N_Procedure_Specification
6009 or else NT
(N
).Nkind
= N_Record_Definition
);
6010 Set_Flag13
(N
, Val
);
6011 end Set_Null_Present
;
6013 procedure Set_Null_Record_Present
6014 (N
: Node_Id
; Val
: Boolean := True) is
6016 pragma Assert
(False
6017 or else NT
(N
).Nkind
= N_Aggregate
6018 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6019 Set_Flag17
(N
, Val
);
6020 end Set_Null_Record_Present
;
6022 procedure Set_Null_Statement
6023 (N
: Node_Id
; Val
: Node_Id
) is
6025 pragma Assert
(False
6026 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6028 end Set_Null_Statement
;
6030 procedure Set_Object_Definition
6031 (N
: Node_Id
; Val
: Node_Id
) is
6033 pragma Assert
(False
6034 or else NT
(N
).Nkind
= N_Object_Declaration
);
6035 Set_Node4_With_Parent
(N
, Val
);
6036 end Set_Object_Definition
;
6038 procedure Set_Of_Present
6039 (N
: Node_Id
; Val
: Boolean := True) is
6041 pragma Assert
(False
6042 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6043 Set_Flag16
(N
, Val
);
6046 procedure Set_Original_Discriminant
6047 (N
: Node_Id
; Val
: Node_Id
) is
6049 pragma Assert
(False
6050 or else NT
(N
).Nkind
= N_Identifier
);
6051 Set_Node2
(N
, Val
); -- semantic field, no parent set
6052 end Set_Original_Discriminant
;
6054 procedure Set_Original_Entity
6055 (N
: Node_Id
; Val
: Entity_Id
) is
6057 pragma Assert
(False
6058 or else NT
(N
).Nkind
= N_Integer_Literal
6059 or else NT
(N
).Nkind
= N_Real_Literal
);
6060 Set_Node2
(N
, Val
); -- semantic field, no parent set
6061 end Set_Original_Entity
;
6063 procedure Set_Others_Discrete_Choices
6064 (N
: Node_Id
; Val
: List_Id
) is
6066 pragma Assert
(False
6067 or else NT
(N
).Nkind
= N_Others_Choice
);
6068 Set_List1_With_Parent
(N
, Val
);
6069 end Set_Others_Discrete_Choices
;
6071 procedure Set_Out_Present
6072 (N
: Node_Id
; Val
: Boolean := True) is
6074 pragma Assert
(False
6075 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6076 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6077 Set_Flag17
(N
, Val
);
6078 end Set_Out_Present
;
6080 procedure Set_Parameter_Associations
6081 (N
: Node_Id
; Val
: List_Id
) is
6083 pragma Assert
(False
6084 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6085 or else NT
(N
).Nkind
= N_Function_Call
6086 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6087 Set_List3_With_Parent
(N
, Val
);
6088 end Set_Parameter_Associations
;
6090 procedure Set_Parameter_Specifications
6091 (N
: Node_Id
; Val
: List_Id
) is
6093 pragma Assert
(False
6094 or else NT
(N
).Nkind
= N_Accept_Statement
6095 or else NT
(N
).Nkind
= N_Access_Function_Definition
6096 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6097 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6098 or else NT
(N
).Nkind
= N_Entry_Declaration
6099 or else NT
(N
).Nkind
= N_Function_Specification
6100 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6101 Set_List3_With_Parent
(N
, Val
);
6102 end Set_Parameter_Specifications
;
6104 procedure Set_Parameter_Type
6105 (N
: Node_Id
; Val
: Node_Id
) is
6107 pragma Assert
(False
6108 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6109 Set_Node2_With_Parent
(N
, Val
);
6110 end Set_Parameter_Type
;
6112 procedure Set_Parent_Spec
6113 (N
: Node_Id
; Val
: Node_Id
) is
6115 pragma Assert
(False
6116 or else NT
(N
).Nkind
= N_Function_Instantiation
6117 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6118 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6119 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6120 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6121 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6122 or else NT
(N
).Nkind
= N_Package_Declaration
6123 or else NT
(N
).Nkind
= N_Package_Instantiation
6124 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6125 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6126 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6127 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6128 Set_Node4
(N
, Val
); -- semantic field, no parent set
6129 end Set_Parent_Spec
;
6131 procedure Set_Position
6132 (N
: Node_Id
; Val
: Node_Id
) is
6134 pragma Assert
(False
6135 or else NT
(N
).Nkind
= N_Component_Clause
);
6136 Set_Node2_With_Parent
(N
, Val
);
6139 procedure Set_Pragma_Argument_Associations
6140 (N
: Node_Id
; Val
: List_Id
) is
6142 pragma Assert
(False
6143 or else NT
(N
).Nkind
= N_Pragma
);
6144 Set_List2_With_Parent
(N
, Val
);
6145 end Set_Pragma_Argument_Associations
;
6147 procedure Set_Pragma_Identifier
6148 (N
: Node_Id
; Val
: Node_Id
) is
6150 pragma Assert
(False
6151 or else NT
(N
).Nkind
= N_Pragma
);
6152 Set_Node4_With_Parent
(N
, Val
);
6153 end Set_Pragma_Identifier
;
6155 procedure Set_Pragmas_After
6156 (N
: Node_Id
; Val
: List_Id
) is
6158 pragma Assert
(False
6159 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6160 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6161 Set_List5_With_Parent
(N
, Val
);
6162 end Set_Pragmas_After
;
6164 procedure Set_Pragmas_Before
6165 (N
: Node_Id
; Val
: List_Id
) is
6167 pragma Assert
(False
6168 or else NT
(N
).Nkind
= N_Accept_Alternative
6169 or else NT
(N
).Nkind
= N_Delay_Alternative
6170 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6171 or else NT
(N
).Nkind
= N_Mod_Clause
6172 or else NT
(N
).Nkind
= N_Terminate_Alternative
6173 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6174 Set_List4_With_Parent
(N
, Val
);
6175 end Set_Pragmas_Before
;
6177 procedure Set_Pre_Post_Conditions
6178 (N
: Node_Id
; Val
: Node_Id
) is
6180 pragma Assert
(False
6181 or else NT
(N
).Nkind
= N_Contract
);
6182 Set_Node1
(N
, Val
); -- semantic field, no parent set
6183 end Set_Pre_Post_Conditions
;
6185 procedure Set_Prefix
6186 (N
: Node_Id
; Val
: Node_Id
) is
6188 pragma Assert
(False
6189 or else NT
(N
).Nkind
= N_Attribute_Reference
6190 or else NT
(N
).Nkind
= N_Expanded_Name
6191 or else NT
(N
).Nkind
= N_Explicit_Dereference
6192 or else NT
(N
).Nkind
= N_Indexed_Component
6193 or else NT
(N
).Nkind
= N_Reference
6194 or else NT
(N
).Nkind
= N_Selected_Component
6195 or else NT
(N
).Nkind
= N_Slice
);
6196 Set_Node3_With_Parent
(N
, Val
);
6199 procedure Set_Premature_Use
6200 (N
: Node_Id
; Val
: Node_Id
) is
6202 pragma Assert
(False
6203 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6205 end Set_Premature_Use
;
6207 procedure Set_Present_Expr
6208 (N
: Node_Id
; Val
: Uint
) is
6210 pragma Assert
(False
6211 or else NT
(N
).Nkind
= N_Variant
);
6213 end Set_Present_Expr
;
6215 procedure Set_Prev_Ids
6216 (N
: Node_Id
; Val
: Boolean := True) is
6218 pragma Assert
(False
6219 or else NT
(N
).Nkind
= N_Component_Declaration
6220 or else NT
(N
).Nkind
= N_Discriminant_Specification
6221 or else NT
(N
).Nkind
= N_Exception_Declaration
6222 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6223 or else NT
(N
).Nkind
= N_Number_Declaration
6224 or else NT
(N
).Nkind
= N_Object_Declaration
6225 or else NT
(N
).Nkind
= N_Parameter_Specification
6226 or else NT
(N
).Nkind
= N_Use_Package_Clause
6227 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6231 procedure Set_Prev_Use_Clause
6232 (N
: Node_Id
; Val
: Node_Id
) is
6234 pragma Assert
(False
6235 or else NT
(N
).Nkind
= N_Use_Package_Clause
6236 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6237 Set_Node1
(N
, Val
); -- semantic field, no parent set
6238 end Set_Prev_Use_Clause
;
6240 procedure Set_Print_In_Hex
6241 (N
: Node_Id
; Val
: Boolean := True) is
6243 pragma Assert
(False
6244 or else NT
(N
).Nkind
= N_Integer_Literal
);
6245 Set_Flag13
(N
, Val
);
6246 end Set_Print_In_Hex
;
6248 procedure Set_Private_Declarations
6249 (N
: Node_Id
; Val
: List_Id
) is
6251 pragma Assert
(False
6252 or else NT
(N
).Nkind
= N_Package_Specification
6253 or else NT
(N
).Nkind
= N_Protected_Definition
6254 or else NT
(N
).Nkind
= N_Task_Definition
);
6255 Set_List3_With_Parent
(N
, Val
);
6256 end Set_Private_Declarations
;
6258 procedure Set_Private_Present
6259 (N
: Node_Id
; Val
: Boolean := True) is
6261 pragma Assert
(False
6262 or else NT
(N
).Nkind
= N_Compilation_Unit
6263 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6264 or else NT
(N
).Nkind
= N_With_Clause
);
6265 Set_Flag15
(N
, Val
);
6266 end Set_Private_Present
;
6268 procedure Set_Procedure_To_Call
6269 (N
: Node_Id
; Val
: Node_Id
) is
6271 pragma Assert
(False
6272 or else NT
(N
).Nkind
= N_Allocator
6273 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6274 or else NT
(N
).Nkind
= N_Free_Statement
6275 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6276 Set_Node2
(N
, Val
); -- semantic field, no parent set
6277 end Set_Procedure_To_Call
;
6279 procedure Set_Proper_Body
6280 (N
: Node_Id
; Val
: Node_Id
) is
6282 pragma Assert
(False
6283 or else NT
(N
).Nkind
= N_Subunit
);
6284 Set_Node1_With_Parent
(N
, Val
);
6285 end Set_Proper_Body
;
6287 procedure Set_Protected_Definition
6288 (N
: Node_Id
; Val
: Node_Id
) is
6290 pragma Assert
(False
6291 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6292 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6293 Set_Node3_With_Parent
(N
, Val
);
6294 end Set_Protected_Definition
;
6296 procedure Set_Protected_Present
6297 (N
: Node_Id
; Val
: Boolean := True) is
6299 pragma Assert
(False
6300 or else NT
(N
).Nkind
= N_Access_Function_Definition
6301 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6302 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6303 or else NT
(N
).Nkind
= N_Record_Definition
);
6305 end Set_Protected_Present
;
6307 procedure Set_Raises_Constraint_Error
6308 (N
: Node_Id
; Val
: Boolean := True) is
6310 pragma Assert
(False
6311 or else NT
(N
).Nkind
in N_Subexpr
);
6313 end Set_Raises_Constraint_Error
;
6315 procedure Set_Range_Constraint
6316 (N
: Node_Id
; Val
: Node_Id
) is
6318 pragma Assert
(False
6319 or else NT
(N
).Nkind
= N_Delta_Constraint
6320 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6321 Set_Node4_With_Parent
(N
, Val
);
6322 end Set_Range_Constraint
;
6324 procedure Set_Range_Expression
6325 (N
: Node_Id
; Val
: Node_Id
) is
6327 pragma Assert
(False
6328 or else NT
(N
).Nkind
= N_Range_Constraint
);
6329 Set_Node4_With_Parent
(N
, Val
);
6330 end Set_Range_Expression
;
6332 procedure Set_Real_Range_Specification
6333 (N
: Node_Id
; Val
: Node_Id
) is
6335 pragma Assert
(False
6336 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6337 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6338 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6339 Set_Node4_With_Parent
(N
, Val
);
6340 end Set_Real_Range_Specification
;
6342 procedure Set_Realval
6343 (N
: Node_Id
; Val
: Ureal
) is
6345 pragma Assert
(False
6346 or else NT
(N
).Nkind
= N_Real_Literal
);
6347 Set_Ureal3
(N
, Val
);
6350 procedure Set_Reason
6351 (N
: Node_Id
; Val
: Uint
) is
6353 pragma Assert
(False
6354 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6355 or else NT
(N
).Nkind
= N_Raise_Program_Error
6356 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6360 procedure Set_Record_Extension_Part
6361 (N
: Node_Id
; Val
: Node_Id
) is
6363 pragma Assert
(False
6364 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6365 Set_Node3_With_Parent
(N
, Val
);
6366 end Set_Record_Extension_Part
;
6368 procedure Set_Redundant_Use
6369 (N
: Node_Id
; Val
: Boolean := True) is
6371 pragma Assert
(False
6372 or else NT
(N
).Nkind
= N_Attribute_Reference
6373 or else NT
(N
).Nkind
= N_Expanded_Name
6374 or else NT
(N
).Nkind
= N_Identifier
);
6375 Set_Flag13
(N
, Val
);
6376 end Set_Redundant_Use
;
6378 procedure Set_Renaming_Exception
6379 (N
: Node_Id
; Val
: Node_Id
) is
6381 pragma Assert
(False
6382 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6384 end Set_Renaming_Exception
;
6386 procedure Set_Result_Definition
6387 (N
: Node_Id
; Val
: Node_Id
) is
6389 pragma Assert
(False
6390 or else NT
(N
).Nkind
= N_Access_Function_Definition
6391 or else NT
(N
).Nkind
= N_Function_Specification
);
6392 Set_Node4_With_Parent
(N
, Val
);
6393 end Set_Result_Definition
;
6395 procedure Set_Return_Object_Declarations
6396 (N
: Node_Id
; Val
: List_Id
) is
6398 pragma Assert
(False
6399 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6400 Set_List3_With_Parent
(N
, Val
);
6401 end Set_Return_Object_Declarations
;
6403 procedure Set_Return_Statement_Entity
6404 (N
: Node_Id
; Val
: Node_Id
) is
6406 pragma Assert
(False
6407 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6408 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6409 Set_Node5
(N
, Val
); -- semantic field, no parent set
6410 end Set_Return_Statement_Entity
;
6412 procedure Set_Reverse_Present
6413 (N
: Node_Id
; Val
: Boolean := True) is
6415 pragma Assert
(False
6416 or else NT
(N
).Nkind
= N_Iterator_Specification
6417 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6418 Set_Flag15
(N
, Val
);
6419 end Set_Reverse_Present
;
6421 procedure Set_Right_Opnd
6422 (N
: Node_Id
; Val
: Node_Id
) is
6424 pragma Assert
(False
6425 or else NT
(N
).Nkind
in N_Op
6426 or else NT
(N
).Nkind
= N_And_Then
6427 or else NT
(N
).Nkind
= N_In
6428 or else NT
(N
).Nkind
= N_Not_In
6429 or else NT
(N
).Nkind
= N_Or_Else
);
6430 Set_Node3_With_Parent
(N
, Val
);
6433 procedure Set_Rounded_Result
6434 (N
: Node_Id
; Val
: Boolean := True) is
6436 pragma Assert
(False
6437 or else NT
(N
).Nkind
= N_Op_Divide
6438 or else NT
(N
).Nkind
= N_Op_Multiply
6439 or else NT
(N
).Nkind
= N_Type_Conversion
);
6440 Set_Flag18
(N
, Val
);
6441 end Set_Rounded_Result
;
6443 procedure Set_SCIL_Controlling_Tag
6444 (N
: Node_Id
; Val
: Node_Id
) is
6446 pragma Assert
(False
6447 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6448 Set_Node5
(N
, Val
); -- semantic field, no parent set
6449 end Set_SCIL_Controlling_Tag
;
6451 procedure Set_SCIL_Entity
6452 (N
: Node_Id
; Val
: Node_Id
) is
6454 pragma Assert
(False
6455 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6456 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6457 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6458 Set_Node4
(N
, Val
); -- semantic field, no parent set
6459 end Set_SCIL_Entity
;
6461 procedure Set_SCIL_Tag_Value
6462 (N
: Node_Id
; Val
: Node_Id
) is
6464 pragma Assert
(False
6465 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6466 Set_Node5
(N
, Val
); -- semantic field, no parent set
6467 end Set_SCIL_Tag_Value
;
6469 procedure Set_SCIL_Target_Prim
6470 (N
: Node_Id
; Val
: Node_Id
) is
6472 pragma Assert
(False
6473 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6474 Set_Node2
(N
, Val
); -- semantic field, no parent set
6475 end Set_SCIL_Target_Prim
;
6478 (N
: Node_Id
; Val
: Node_Id
) is
6480 pragma Assert
(False
6481 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6482 or else NT
(N
).Nkind
= N_Defining_Identifier
6483 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6484 Set_Node3
(N
, Val
); -- semantic field, no parent set
6487 procedure Set_Select_Alternatives
6488 (N
: Node_Id
; Val
: List_Id
) is
6490 pragma Assert
(False
6491 or else NT
(N
).Nkind
= N_Selective_Accept
);
6492 Set_List1_With_Parent
(N
, Val
);
6493 end Set_Select_Alternatives
;
6495 procedure Set_Selector_Name
6496 (N
: Node_Id
; Val
: Node_Id
) is
6498 pragma Assert
(False
6499 or else NT
(N
).Nkind
= N_Expanded_Name
6500 or else NT
(N
).Nkind
= N_Generic_Association
6501 or else NT
(N
).Nkind
= N_Parameter_Association
6502 or else NT
(N
).Nkind
= N_Selected_Component
);
6503 Set_Node2_With_Parent
(N
, Val
);
6504 end Set_Selector_Name
;
6506 procedure Set_Selector_Names
6507 (N
: Node_Id
; Val
: List_Id
) is
6509 pragma Assert
(False
6510 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6511 Set_List1_With_Parent
(N
, Val
);
6512 end Set_Selector_Names
;
6514 procedure Set_Shift_Count_OK
6515 (N
: Node_Id
; Val
: Boolean := True) is
6517 pragma Assert
(False
6518 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6519 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6520 or else NT
(N
).Nkind
= N_Op_Shift_Left
6521 or else NT
(N
).Nkind
= N_Op_Shift_Right
6522 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6524 end Set_Shift_Count_OK
;
6526 procedure Set_Source_Type
6527 (N
: Node_Id
; Val
: Entity_Id
) is
6529 pragma Assert
(False
6530 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6531 Set_Node1
(N
, Val
); -- semantic field, no parent set
6532 end Set_Source_Type
;
6534 procedure Set_Specification
6535 (N
: Node_Id
; Val
: Node_Id
) is
6537 pragma Assert
(False
6538 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6539 or else NT
(N
).Nkind
= N_Expression_Function
6540 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6541 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6542 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6543 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6544 or else NT
(N
).Nkind
= N_Package_Declaration
6545 or else NT
(N
).Nkind
= N_Subprogram_Body
6546 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6547 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6548 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6549 Set_Node1_With_Parent
(N
, Val
);
6550 end Set_Specification
;
6552 procedure Set_Split_PPC
6553 (N
: Node_Id
; Val
: Boolean) is
6555 pragma Assert
(False
6556 or else NT
(N
).Nkind
= N_Aspect_Specification
6557 or else NT
(N
).Nkind
= N_Pragma
);
6558 Set_Flag17
(N
, Val
);
6561 procedure Set_Statements
6562 (N
: Node_Id
; Val
: List_Id
) is
6564 pragma Assert
(False
6565 or else NT
(N
).Nkind
= N_Abortable_Part
6566 or else NT
(N
).Nkind
= N_Accept_Alternative
6567 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6568 or else NT
(N
).Nkind
= N_Delay_Alternative
6569 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6570 or else NT
(N
).Nkind
= N_Exception_Handler
6571 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6572 or else NT
(N
).Nkind
= N_Loop_Statement
6573 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6574 Set_List3_With_Parent
(N
, Val
);
6577 procedure Set_Storage_Pool
6578 (N
: Node_Id
; Val
: Node_Id
) is
6580 pragma Assert
(False
6581 or else NT
(N
).Nkind
= N_Allocator
6582 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6583 or else NT
(N
).Nkind
= N_Free_Statement
6584 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6585 Set_Node1
(N
, Val
); -- semantic field, no parent set
6586 end Set_Storage_Pool
;
6588 procedure Set_Subpool_Handle_Name
6589 (N
: Node_Id
; Val
: Node_Id
) is
6591 pragma Assert
(False
6592 or else NT
(N
).Nkind
= N_Allocator
);
6593 Set_Node4_With_Parent
(N
, Val
);
6594 end Set_Subpool_Handle_Name
;
6596 procedure Set_Strval
6597 (N
: Node_Id
; Val
: String_Id
) is
6599 pragma Assert
(False
6600 or else NT
(N
).Nkind
= N_Operator_Symbol
6601 or else NT
(N
).Nkind
= N_String_Literal
);
6605 procedure Set_Subtype_Indication
6606 (N
: Node_Id
; Val
: Node_Id
) is
6608 pragma Assert
(False
6609 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6610 or else NT
(N
).Nkind
= N_Component_Definition
6611 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6612 or else NT
(N
).Nkind
= N_Iterator_Specification
6613 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6614 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6615 Set_Node5_With_Parent
(N
, Val
);
6616 end Set_Subtype_Indication
;
6618 procedure Set_Subtype_Mark
6619 (N
: Node_Id
; Val
: Node_Id
) is
6621 pragma Assert
(False
6622 or else NT
(N
).Nkind
= N_Access_Definition
6623 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6624 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6625 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6626 or else NT
(N
).Nkind
= N_Qualified_Expression
6627 or else NT
(N
).Nkind
= N_Subtype_Indication
6628 or else NT
(N
).Nkind
= N_Type_Conversion
6629 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6630 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6631 Set_Node4_With_Parent
(N
, Val
);
6632 end Set_Subtype_Mark
;
6634 procedure Set_Subtype_Marks
6635 (N
: Node_Id
; Val
: List_Id
) is
6637 pragma Assert
(False
6638 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6639 Set_List2_With_Parent
(N
, Val
);
6640 end Set_Subtype_Marks
;
6642 procedure Set_Suppress_Assignment_Checks
6643 (N
: Node_Id
; Val
: Boolean := True) is
6645 pragma Assert
(False
6646 or else NT
(N
).Nkind
= N_Assignment_Statement
6647 or else NT
(N
).Nkind
= N_Object_Declaration
);
6648 Set_Flag18
(N
, Val
);
6649 end Set_Suppress_Assignment_Checks
;
6651 procedure Set_Suppress_Loop_Warnings
6652 (N
: Node_Id
; Val
: Boolean := True) is
6654 pragma Assert
(False
6655 or else NT
(N
).Nkind
= N_Loop_Statement
);
6656 Set_Flag17
(N
, Val
);
6657 end Set_Suppress_Loop_Warnings
;
6659 procedure Set_Synchronized_Present
6660 (N
: Node_Id
; Val
: Boolean := True) is
6662 pragma Assert
(False
6663 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6664 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6665 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6666 or else NT
(N
).Nkind
= N_Record_Definition
);
6668 end Set_Synchronized_Present
;
6670 procedure Set_Tagged_Present
6671 (N
: Node_Id
; Val
: Boolean := True) is
6673 pragma Assert
(False
6674 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6675 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6676 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6677 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6678 or else NT
(N
).Nkind
= N_Record_Definition
);
6679 Set_Flag15
(N
, Val
);
6680 end Set_Tagged_Present
;
6682 procedure Set_Target
6683 (N
: Node_Id
; Val
: Entity_Id
) is
6685 pragma Assert
(False
6686 or else NT
(N
).Nkind
= N_Call_Marker
);
6687 Set_Node1
(N
, Val
); -- semantic field, no parent set
6690 procedure Set_Target_Type
6691 (N
: Node_Id
; Val
: Entity_Id
) is
6693 pragma Assert
(False
6694 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6695 Set_Node2
(N
, Val
); -- semantic field, no parent set
6696 end Set_Target_Type
;
6698 procedure Set_Task_Definition
6699 (N
: Node_Id
; Val
: Node_Id
) is
6701 pragma Assert
(False
6702 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6703 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6704 Set_Node3_With_Parent
(N
, Val
);
6705 end Set_Task_Definition
;
6707 procedure Set_Task_Present
6708 (N
: Node_Id
; Val
: Boolean := True) is
6710 pragma Assert
(False
6711 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6712 or else NT
(N
).Nkind
= N_Record_Definition
);
6714 end Set_Task_Present
;
6716 procedure Set_Then_Actions
6717 (N
: Node_Id
; Val
: List_Id
) is
6719 pragma Assert
(False
6720 or else NT
(N
).Nkind
= N_If_Expression
);
6721 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6722 end Set_Then_Actions
;
6724 procedure Set_Then_Statements
6725 (N
: Node_Id
; Val
: List_Id
) is
6727 pragma Assert
(False
6728 or else NT
(N
).Nkind
= N_Elsif_Part
6729 or else NT
(N
).Nkind
= N_If_Statement
);
6730 Set_List2_With_Parent
(N
, Val
);
6731 end Set_Then_Statements
;
6733 procedure Set_Treat_Fixed_As_Integer
6734 (N
: Node_Id
; Val
: Boolean := True) is
6736 pragma Assert
(False
6737 or else NT
(N
).Nkind
= N_Op_Divide
6738 or else NT
(N
).Nkind
= N_Op_Mod
6739 or else NT
(N
).Nkind
= N_Op_Multiply
6740 or else NT
(N
).Nkind
= N_Op_Rem
);
6741 Set_Flag14
(N
, Val
);
6742 end Set_Treat_Fixed_As_Integer
;
6744 procedure Set_Triggering_Alternative
6745 (N
: Node_Id
; Val
: Node_Id
) is
6747 pragma Assert
(False
6748 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6749 Set_Node1_With_Parent
(N
, Val
);
6750 end Set_Triggering_Alternative
;
6752 procedure Set_Triggering_Statement
6753 (N
: Node_Id
; Val
: Node_Id
) is
6755 pragma Assert
(False
6756 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6757 Set_Node1_With_Parent
(N
, Val
);
6758 end Set_Triggering_Statement
;
6760 procedure Set_TSS_Elist
6761 (N
: Node_Id
; Val
: Elist_Id
) is
6763 pragma Assert
(False
6764 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6765 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6768 procedure Set_Uneval_Old_Accept
6769 (N
: Node_Id
; Val
: Boolean := True) is
6771 pragma Assert
(False
6772 or else NT
(N
).Nkind
= N_Pragma
);
6774 end Set_Uneval_Old_Accept
;
6776 procedure Set_Uneval_Old_Warn
6777 (N
: Node_Id
; Val
: Boolean := True) is
6779 pragma Assert
(False
6780 or else NT
(N
).Nkind
= N_Pragma
);
6781 Set_Flag18
(N
, Val
);
6782 end Set_Uneval_Old_Warn
;
6784 procedure Set_Type_Definition
6785 (N
: Node_Id
; Val
: Node_Id
) is
6787 pragma Assert
(False
6788 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6789 Set_Node3_With_Parent
(N
, Val
);
6790 end Set_Type_Definition
;
6793 (N
: Node_Id
; Val
: Node_Id
) is
6795 pragma Assert
(False
6796 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6797 Set_Node2_With_Parent
(N
, Val
);
6800 procedure Set_Unknown_Discriminants_Present
6801 (N
: Node_Id
; Val
: Boolean := True) is
6803 pragma Assert
(False
6804 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6805 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6806 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6807 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6808 Set_Flag13
(N
, Val
);
6809 end Set_Unknown_Discriminants_Present
;
6811 procedure Set_Unreferenced_In_Spec
6812 (N
: Node_Id
; Val
: Boolean := True) is
6814 pragma Assert
(False
6815 or else NT
(N
).Nkind
= N_With_Clause
);
6817 end Set_Unreferenced_In_Spec
;
6819 procedure Set_Variant_Part
6820 (N
: Node_Id
; Val
: Node_Id
) is
6822 pragma Assert
(False
6823 or else NT
(N
).Nkind
= N_Component_List
);
6824 Set_Node4_With_Parent
(N
, Val
);
6825 end Set_Variant_Part
;
6827 procedure Set_Variants
6828 (N
: Node_Id
; Val
: List_Id
) is
6830 pragma Assert
(False
6831 or else NT
(N
).Nkind
= N_Variant_Part
);
6832 Set_List1_With_Parent
(N
, Val
);
6835 procedure Set_Visible_Declarations
6836 (N
: Node_Id
; Val
: List_Id
) is
6838 pragma Assert
(False
6839 or else NT
(N
).Nkind
= N_Package_Specification
6840 or else NT
(N
).Nkind
= N_Protected_Definition
6841 or else NT
(N
).Nkind
= N_Task_Definition
);
6842 Set_List2_With_Parent
(N
, Val
);
6843 end Set_Visible_Declarations
;
6845 procedure Set_Uninitialized_Variable
6846 (N
: Node_Id
; Val
: Node_Id
) is
6848 pragma Assert
(False
6849 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6850 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6852 end Set_Uninitialized_Variable
;
6854 procedure Set_Used_Operations
6855 (N
: Node_Id
; Val
: Elist_Id
) is
6857 pragma Assert
(False
6858 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6859 Set_Elist2
(N
, Val
);
6860 end Set_Used_Operations
;
6862 procedure Set_Was_Attribute_Reference
6863 (N
: Node_Id
; Val
: Boolean := True) is
6865 pragma Assert
(False
6866 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6868 end Set_Was_Attribute_Reference
;
6870 procedure Set_Was_Expression_Function
6871 (N
: Node_Id
; Val
: Boolean := True) is
6873 pragma Assert
(False
6874 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6875 Set_Flag18
(N
, Val
);
6876 end Set_Was_Expression_Function
;
6878 procedure Set_Was_Originally_Stub
6879 (N
: Node_Id
; Val
: Boolean := True) is
6881 pragma Assert
(False
6882 or else NT
(N
).Nkind
= N_Package_Body
6883 or else NT
(N
).Nkind
= N_Protected_Body
6884 or else NT
(N
).Nkind
= N_Subprogram_Body
6885 or else NT
(N
).Nkind
= N_Task_Body
);
6886 Set_Flag13
(N
, Val
);
6887 end Set_Was_Originally_Stub
;
6889 procedure Set_Withed_Body
6890 (N
: Node_Id
; Val
: Node_Id
) is
6892 pragma Assert
(False
6893 or else NT
(N
).Nkind
= N_With_Clause
);
6895 end Set_Withed_Body
;
6897 -------------------------
6898 -- Iterator Procedures --
6899 -------------------------
6901 procedure Next_Entity
(N
: in out Node_Id
) is
6903 N
:= Next_Entity
(N
);
6906 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6908 N
:= Next_Named_Actual
(N
);
6909 end Next_Named_Actual
;
6911 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6913 N
:= Next_Rep_Item
(N
);
6916 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6918 N
:= Next_Use_Clause
(N
);
6919 end Next_Use_Clause
;
6925 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6926 L
: constant Uint
:= End_Span
(N
);
6931 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6935 --------------------
6936 -- Get_Pragma_Arg --
6937 --------------------
6939 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6941 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6942 return Expression
(Arg
);
6948 ----------------------
6949 -- Set_End_Location --
6950 ----------------------
6952 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6955 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6956 end Set_End_Location
;
6965 V2
: Node_Kind
) return Boolean
6968 return T
= V1
or else
6976 V3
: Node_Kind
) return Boolean
6979 return T
= V1
or else
6989 V4
: Node_Kind
) return Boolean
6992 return T
= V1
or else
7004 V5
: Node_Kind
) return Boolean
7007 return T
= V1
or else
7021 V6
: Node_Kind
) return Boolean
7024 return T
= V1
or else
7040 V7
: Node_Kind
) return Boolean
7043 return T
= V1
or else
7061 V8
: Node_Kind
) return Boolean
7064 return T
= V1
or else
7084 V9
: Node_Kind
) return Boolean
7087 return T
= V1
or else
7102 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7104 return Chars
(Pragma_Identifier
(N
));
7105 end Pragma_Name_Unmapped
;
7107 ---------------------
7108 -- Map_Pragma_Name --
7109 ---------------------
7111 -- We don't want to introduce a dependence on some hash table package or
7112 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7113 -- search. Linear search is plenty efficient, given that we don't expect
7114 -- more than a couple of entries in the mapping.
7116 type Name_Pair
is record
7121 type Pragma_Map_Index
is range 1 .. 100;
7122 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7123 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7125 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7127 if Last_Pair
= Pragma_Map
'Last then
7128 raise Too_Many_Pragma_Mappings
;
7131 Last_Pair
:= Last_Pair
+ 1;
7132 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7133 end Map_Pragma_Name
;
7139 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7140 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7142 for J
in Pragma_Map
'First .. Last_Pair
loop
7143 if Result
= Pragma_Map
(J
).Key
then
7144 return Pragma_Map
(J
).Value
;