1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2018, 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
);
206 function Alloc_For_BIP_Return
207 (N
: Node_Id
) return Boolean is
210 or else NT
(N
).Nkind
= N_Allocator
);
212 end Alloc_For_BIP_Return
;
215 (N
: Node_Id
) return Boolean is
218 or else NT
(N
).Nkind
= N_Others_Choice
);
223 (N
: Node_Id
) return Boolean is
226 or else NT
(N
).Nkind
= N_Access_Definition
227 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
228 or else NT
(N
).Nkind
= N_Quantified_Expression
229 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
233 function Alternatives
234 (N
: Node_Id
) return List_Id
is
237 or else NT
(N
).Nkind
= N_Case_Expression
238 or else NT
(N
).Nkind
= N_Case_Statement
239 or else NT
(N
).Nkind
= N_In
240 or else NT
(N
).Nkind
= N_Not_In
);
244 function Ancestor_Part
245 (N
: Node_Id
) return Node_Id
is
248 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
252 function Atomic_Sync_Required
253 (N
: Node_Id
) return Boolean is
256 or else NT
(N
).Nkind
= N_Expanded_Name
257 or else NT
(N
).Nkind
= N_Explicit_Dereference
258 or else NT
(N
).Nkind
= N_Identifier
259 or else NT
(N
).Nkind
= N_Indexed_Component
260 or else NT
(N
).Nkind
= N_Selected_Component
);
262 end Atomic_Sync_Required
;
264 function Array_Aggregate
265 (N
: Node_Id
) return Node_Id
is
268 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
272 function Aspect_Rep_Item
273 (N
: Node_Id
) return Node_Id
is
276 or else NT
(N
).Nkind
= N_Aspect_Specification
);
280 function Assignment_OK
281 (N
: Node_Id
) return Boolean is
284 or else NT
(N
).Nkind
= N_Object_Declaration
285 or else NT
(N
).Nkind
in N_Subexpr
);
289 function Associated_Node
290 (N
: Node_Id
) return Node_Id
is
293 or else NT
(N
).Nkind
in N_Has_Entity
294 or else NT
(N
).Nkind
= N_Aggregate
295 or else NT
(N
).Nkind
= N_Extension_Aggregate
296 or else NT
(N
).Nkind
= N_Selected_Component
297 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
302 (N
: Node_Id
) return Node_Id
is
305 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
309 function Attribute_Name
310 (N
: Node_Id
) return Name_Id
is
313 or else NT
(N
).Nkind
= N_Attribute_Reference
);
317 function Aux_Decls_Node
318 (N
: Node_Id
) return Node_Id
is
321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
325 function Backwards_OK
326 (N
: Node_Id
) return Boolean is
329 or else NT
(N
).Nkind
= N_Assignment_Statement
);
333 function Bad_Is_Detected
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Subprogram_Body
);
341 function Body_Required
342 (N
: Node_Id
) return Boolean is
345 or else NT
(N
).Nkind
= N_Compilation_Unit
);
349 function Body_To_Inline
350 (N
: Node_Id
) return Node_Id
is
353 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
358 (N
: Node_Id
) return Boolean is
361 or else NT
(N
).Nkind
= N_Component_Association
362 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
363 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
364 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
365 or else NT
(N
).Nkind
= N_Generic_Association
366 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
371 (N
: Node_Id
) return Boolean is
374 or else NT
(N
).Nkind
= N_Extended_Return_Statement
375 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
379 function Char_Literal_Value
380 (N
: Node_Id
) return Uint
is
383 or else NT
(N
).Nkind
= N_Character_Literal
);
385 end Char_Literal_Value
;
388 (N
: Node_Id
) return Name_Id
is
391 or else NT
(N
).Nkind
in N_Has_Chars
);
395 function Check_Address_Alignment
396 (N
: Node_Id
) return Boolean is
399 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
401 end Check_Address_Alignment
;
403 function Choice_Parameter
404 (N
: Node_Id
) return Node_Id
is
407 or else NT
(N
).Nkind
= N_Exception_Handler
);
409 end Choice_Parameter
;
412 (N
: Node_Id
) return List_Id
is
415 or else NT
(N
).Nkind
= N_Component_Association
);
419 function Class_Present
420 (N
: Node_Id
) return Boolean is
423 or else NT
(N
).Nkind
= N_Aspect_Specification
424 or else NT
(N
).Nkind
= N_Pragma
);
428 function Classifications
429 (N
: Node_Id
) return Node_Id
is
432 or else NT
(N
).Nkind
= N_Contract
);
436 function Cleanup_Actions
437 (N
: Node_Id
) return List_Id
is
440 or else NT
(N
).Nkind
= N_Block_Statement
);
444 function Comes_From_Extended_Return_Statement
445 (N
: Node_Id
) return Boolean is
448 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
450 end Comes_From_Extended_Return_Statement
;
452 function Compile_Time_Known_Aggregate
453 (N
: Node_Id
) return Boolean is
456 or else NT
(N
).Nkind
= N_Aggregate
);
458 end Compile_Time_Known_Aggregate
;
460 function Component_Associations
461 (N
: Node_Id
) return List_Id
is
464 or else NT
(N
).Nkind
= N_Aggregate
465 or else NT
(N
).Nkind
= N_Delta_Aggregate
466 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
468 end Component_Associations
;
470 function Component_Clauses
471 (N
: Node_Id
) return List_Id
is
474 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
476 end Component_Clauses
;
478 function Component_Definition
479 (N
: Node_Id
) return Node_Id
is
482 or else NT
(N
).Nkind
= N_Component_Declaration
483 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
484 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
486 end Component_Definition
;
488 function Component_Items
489 (N
: Node_Id
) return List_Id
is
492 or else NT
(N
).Nkind
= N_Component_List
);
496 function Component_List
497 (N
: Node_Id
) return Node_Id
is
500 or else NT
(N
).Nkind
= N_Record_Definition
501 or else NT
(N
).Nkind
= N_Variant
);
505 function Component_Name
506 (N
: Node_Id
) return Node_Id
is
509 or else NT
(N
).Nkind
= N_Component_Clause
);
513 function Componentwise_Assignment
514 (N
: Node_Id
) return Boolean is
517 or else NT
(N
).Nkind
= N_Assignment_Statement
);
519 end Componentwise_Assignment
;
522 (N
: Node_Id
) return Node_Id
is
525 or else NT
(N
).Nkind
= N_Accept_Alternative
526 or else NT
(N
).Nkind
= N_Delay_Alternative
527 or else NT
(N
).Nkind
= N_Elsif_Part
528 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
529 or else NT
(N
).Nkind
= N_Exit_Statement
530 or else NT
(N
).Nkind
= N_If_Statement
531 or else NT
(N
).Nkind
= N_Iteration_Scheme
532 or else NT
(N
).Nkind
= N_Quantified_Expression
533 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
534 or else NT
(N
).Nkind
= N_Raise_Program_Error
535 or else NT
(N
).Nkind
= N_Raise_Storage_Error
536 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
540 function Condition_Actions
541 (N
: Node_Id
) return List_Id
is
544 or else NT
(N
).Nkind
= N_Elsif_Part
545 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
547 end Condition_Actions
;
549 function Config_Pragmas
550 (N
: Node_Id
) return List_Id
is
553 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
557 function Constant_Present
558 (N
: Node_Id
) return Boolean is
561 or else NT
(N
).Nkind
= N_Access_Definition
562 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
563 or else NT
(N
).Nkind
= N_Object_Declaration
);
565 end Constant_Present
;
568 (N
: Node_Id
) return Node_Id
is
571 or else NT
(N
).Nkind
= N_Subtype_Indication
);
576 (N
: Node_Id
) return List_Id
is
579 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
583 function Context_Installed
584 (N
: Node_Id
) return Boolean is
587 or else NT
(N
).Nkind
= N_With_Clause
);
589 end Context_Installed
;
591 function Context_Items
592 (N
: Node_Id
) return List_Id
is
595 or else NT
(N
).Nkind
= N_Compilation_Unit
);
599 function Context_Pending
600 (N
: Node_Id
) return Boolean is
603 or else NT
(N
).Nkind
= N_Compilation_Unit
);
607 function Contract_Test_Cases
608 (N
: Node_Id
) return Node_Id
is
611 or else NT
(N
).Nkind
= N_Contract
);
613 end Contract_Test_Cases
;
615 function Controlling_Argument
616 (N
: Node_Id
) return Node_Id
is
619 or else NT
(N
).Nkind
= N_Function_Call
620 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
622 end Controlling_Argument
;
624 function Conversion_OK
625 (N
: Node_Id
) return Boolean is
628 or else NT
(N
).Nkind
= N_Type_Conversion
);
632 function Convert_To_Return_False
633 (N
: Node_Id
) return Boolean is
636 or else NT
(N
).Nkind
= N_Raise_Expression
);
638 end Convert_To_Return_False
;
640 function Corresponding_Aspect
641 (N
: Node_Id
) return Node_Id
is
644 or else NT
(N
).Nkind
= N_Pragma
);
646 end Corresponding_Aspect
;
648 function Corresponding_Body
649 (N
: Node_Id
) return Node_Id
is
652 or else NT
(N
).Nkind
= N_Entry_Declaration
653 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
654 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
655 or else NT
(N
).Nkind
= N_Package_Body_Stub
656 or else NT
(N
).Nkind
= N_Package_Declaration
657 or else NT
(N
).Nkind
= N_Protected_Body_Stub
658 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
659 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
660 or else NT
(N
).Nkind
= N_Subprogram_Declaration
661 or else NT
(N
).Nkind
= N_Task_Body_Stub
662 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
664 end Corresponding_Body
;
666 function Corresponding_Formal_Spec
667 (N
: Node_Id
) return Node_Id
is
670 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
672 end Corresponding_Formal_Spec
;
674 function Corresponding_Generic_Association
675 (N
: Node_Id
) return Node_Id
is
678 or else NT
(N
).Nkind
= N_Object_Declaration
679 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
681 end Corresponding_Generic_Association
;
683 function Corresponding_Integer_Value
684 (N
: Node_Id
) return Uint
is
687 or else NT
(N
).Nkind
= N_Real_Literal
);
689 end Corresponding_Integer_Value
;
691 function Corresponding_Spec
692 (N
: Node_Id
) return Entity_Id
is
695 or else NT
(N
).Nkind
= N_Expression_Function
696 or else NT
(N
).Nkind
= N_Package_Body
697 or else NT
(N
).Nkind
= N_Protected_Body
698 or else NT
(N
).Nkind
= N_Subprogram_Body
699 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
700 or else NT
(N
).Nkind
= N_Task_Body
701 or else NT
(N
).Nkind
= N_With_Clause
);
703 end Corresponding_Spec
;
705 function Corresponding_Spec_Of_Stub
706 (N
: Node_Id
) return Entity_Id
is
709 or else NT
(N
).Nkind
= N_Package_Body_Stub
710 or else NT
(N
).Nkind
= N_Protected_Body_Stub
711 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
712 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
714 end Corresponding_Spec_Of_Stub
;
716 function Corresponding_Stub
717 (N
: Node_Id
) return Node_Id
is
720 or else NT
(N
).Nkind
= N_Subunit
);
722 end Corresponding_Stub
;
724 function Dcheck_Function
725 (N
: Node_Id
) return Entity_Id
is
728 or else NT
(N
).Nkind
= N_Variant
);
732 function Declarations
733 (N
: Node_Id
) return List_Id
is
736 or else NT
(N
).Nkind
= N_Accept_Statement
737 or else NT
(N
).Nkind
= N_Block_Statement
738 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
739 or else NT
(N
).Nkind
= N_Entry_Body
740 or else NT
(N
).Nkind
= N_Package_Body
741 or else NT
(N
).Nkind
= N_Protected_Body
742 or else NT
(N
).Nkind
= N_Subprogram_Body
743 or else NT
(N
).Nkind
= N_Task_Body
);
747 function Default_Expression
748 (N
: Node_Id
) return Node_Id
is
751 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
752 or else NT
(N
).Nkind
= N_Parameter_Specification
);
754 end Default_Expression
;
756 function Default_Storage_Pool
757 (N
: Node_Id
) return Node_Id
is
760 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
762 end Default_Storage_Pool
;
764 function Default_Name
765 (N
: Node_Id
) return Node_Id
is
768 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
769 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
773 function Defining_Identifier
774 (N
: Node_Id
) return Entity_Id
is
777 or else NT
(N
).Nkind
= N_Component_Declaration
778 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
779 or else NT
(N
).Nkind
= N_Discriminant_Specification
780 or else NT
(N
).Nkind
= N_Entry_Body
781 or else NT
(N
).Nkind
= N_Entry_Declaration
782 or else NT
(N
).Nkind
= N_Entry_Index_Specification
783 or else NT
(N
).Nkind
= N_Exception_Declaration
784 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
785 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
786 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
787 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
788 or else NT
(N
).Nkind
= N_Full_Type_Declaration
789 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
790 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
791 or else NT
(N
).Nkind
= N_Iterated_Component_Association
792 or else NT
(N
).Nkind
= N_Iterator_Specification
793 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
794 or else NT
(N
).Nkind
= N_Number_Declaration
795 or else NT
(N
).Nkind
= N_Object_Declaration
796 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
797 or else NT
(N
).Nkind
= N_Package_Body_Stub
798 or else NT
(N
).Nkind
= N_Parameter_Specification
799 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
800 or else NT
(N
).Nkind
= N_Private_Type_Declaration
801 or else NT
(N
).Nkind
= N_Protected_Body
802 or else NT
(N
).Nkind
= N_Protected_Body_Stub
803 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
804 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
805 or else NT
(N
).Nkind
= N_Single_Task_Declaration
806 or else NT
(N
).Nkind
= N_Subtype_Declaration
807 or else NT
(N
).Nkind
= N_Task_Body
808 or else NT
(N
).Nkind
= N_Task_Body_Stub
809 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
811 end Defining_Identifier
;
813 function Defining_Unit_Name
814 (N
: Node_Id
) return Node_Id
is
817 or else NT
(N
).Nkind
= N_Function_Instantiation
818 or else NT
(N
).Nkind
= N_Function_Specification
819 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
820 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
821 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
822 or else NT
(N
).Nkind
= N_Package_Body
823 or else NT
(N
).Nkind
= N_Package_Instantiation
824 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
825 or else NT
(N
).Nkind
= N_Package_Specification
826 or else NT
(N
).Nkind
= N_Procedure_Instantiation
827 or else NT
(N
).Nkind
= N_Procedure_Specification
);
829 end Defining_Unit_Name
;
831 function Delay_Alternative
832 (N
: Node_Id
) return Node_Id
is
835 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
837 end Delay_Alternative
;
839 function Delay_Statement
840 (N
: Node_Id
) return Node_Id
is
843 or else NT
(N
).Nkind
= N_Delay_Alternative
);
847 function Delta_Expression
848 (N
: Node_Id
) return Node_Id
is
851 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
852 or else NT
(N
).Nkind
= N_Delta_Constraint
853 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
855 end Delta_Expression
;
857 function Digits_Expression
858 (N
: Node_Id
) return Node_Id
is
861 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
862 or else NT
(N
).Nkind
= N_Digits_Constraint
863 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
865 end Digits_Expression
;
867 function Discr_Check_Funcs_Built
868 (N
: Node_Id
) return Boolean is
871 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
873 end Discr_Check_Funcs_Built
;
875 function Discrete_Choices
876 (N
: Node_Id
) return List_Id
is
879 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
880 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
881 or else NT
(N
).Nkind
= N_Iterated_Component_Association
882 or else NT
(N
).Nkind
= N_Variant
);
884 end Discrete_Choices
;
886 function Discrete_Range
887 (N
: Node_Id
) return Node_Id
is
890 or else NT
(N
).Nkind
= N_Slice
);
894 function Discrete_Subtype_Definition
895 (N
: Node_Id
) return Node_Id
is
898 or else NT
(N
).Nkind
= N_Entry_Declaration
899 or else NT
(N
).Nkind
= N_Entry_Index_Specification
900 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
902 end Discrete_Subtype_Definition
;
904 function Discrete_Subtype_Definitions
905 (N
: Node_Id
) return List_Id
is
908 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
910 end Discrete_Subtype_Definitions
;
912 function Discriminant_Specifications
913 (N
: Node_Id
) return List_Id
is
916 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
917 or else NT
(N
).Nkind
= N_Full_Type_Declaration
918 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
919 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
920 or else NT
(N
).Nkind
= N_Private_Type_Declaration
921 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
922 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
924 end Discriminant_Specifications
;
926 function Discriminant_Type
927 (N
: Node_Id
) return Node_Id
is
930 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
932 end Discriminant_Type
;
934 function Do_Accessibility_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
= N_Parameter_Specification
);
940 end Do_Accessibility_Check
;
942 function Do_Discriminant_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Assignment_Statement
947 or else NT
(N
).Nkind
= N_Selected_Component
948 or else NT
(N
).Nkind
= N_Type_Conversion
);
950 end Do_Discriminant_Check
;
952 function Do_Division_Check
953 (N
: Node_Id
) return Boolean is
956 or else NT
(N
).Nkind
= N_Op_Divide
957 or else NT
(N
).Nkind
= N_Op_Mod
958 or else NT
(N
).Nkind
= N_Op_Rem
);
960 end Do_Division_Check
;
962 function Do_Length_Check
963 (N
: Node_Id
) return Boolean is
966 or else NT
(N
).Nkind
= N_Assignment_Statement
967 or else NT
(N
).Nkind
= N_Op_And
968 or else NT
(N
).Nkind
= N_Op_Or
969 or else NT
(N
).Nkind
= N_Op_Xor
970 or else NT
(N
).Nkind
= N_Type_Conversion
);
974 function Do_Overflow_Check
975 (N
: Node_Id
) return Boolean is
978 or else NT
(N
).Nkind
in N_Op
979 or else NT
(N
).Nkind
= N_Attribute_Reference
980 or else NT
(N
).Nkind
= N_Case_Expression
981 or else NT
(N
).Nkind
= N_If_Expression
982 or else NT
(N
).Nkind
= N_Type_Conversion
);
984 end Do_Overflow_Check
;
986 function Do_Range_Check
987 (N
: Node_Id
) return Boolean is
990 or else NT
(N
).Nkind
in N_Subexpr
);
994 function Do_Storage_Check
995 (N
: Node_Id
) return Boolean is
998 or else NT
(N
).Nkind
= N_Allocator
999 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1001 end Do_Storage_Check
;
1003 function Do_Tag_Check
1004 (N
: Node_Id
) return Boolean is
1006 pragma Assert
(False
1007 or else NT
(N
).Nkind
= N_Assignment_Statement
1008 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1009 or else NT
(N
).Nkind
= N_Function_Call
1010 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1011 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1012 or else NT
(N
).Nkind
= N_Type_Conversion
);
1016 function Elaborate_All_Desirable
1017 (N
: Node_Id
) return Boolean is
1019 pragma Assert
(False
1020 or else NT
(N
).Nkind
= N_With_Clause
);
1022 end Elaborate_All_Desirable
;
1024 function Elaborate_All_Present
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_All_Present
;
1032 function Elaborate_Desirable
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_Desirable
;
1040 function Elaborate_Present
1041 (N
: Node_Id
) return Boolean is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_With_Clause
);
1046 end Elaborate_Present
;
1048 function Else_Actions
1049 (N
: Node_Id
) return List_Id
is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_If_Expression
);
1056 function Else_Statements
1057 (N
: Node_Id
) return List_Id
is
1059 pragma Assert
(False
1060 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1061 or else NT
(N
).Nkind
= N_If_Statement
1062 or else NT
(N
).Nkind
= N_Selective_Accept
);
1064 end Else_Statements
;
1066 function Elsif_Parts
1067 (N
: Node_Id
) return List_Id
is
1069 pragma Assert
(False
1070 or else NT
(N
).Nkind
= N_If_Statement
);
1074 function Enclosing_Variant
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_Variant
);
1080 end Enclosing_Variant
;
1083 (N
: Node_Id
) return Node_Id
is
1085 pragma Assert
(False
1086 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1087 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1088 or else NT
(N
).Nkind
= N_Loop_Statement
1089 or else NT
(N
).Nkind
= N_Package_Specification
1090 or else NT
(N
).Nkind
= N_Protected_Body
1091 or else NT
(N
).Nkind
= N_Protected_Definition
1092 or else NT
(N
).Nkind
= N_Record_Definition
1093 or else NT
(N
).Nkind
= N_Task_Definition
);
1098 (N
: Node_Id
) return Uint
is
1100 pragma Assert
(False
1101 or else NT
(N
).Nkind
= N_Case_Statement
1102 or else NT
(N
).Nkind
= N_If_Statement
);
1107 (N
: Node_Id
) return Node_Id
is
1109 pragma Assert
(False
1110 or else NT
(N
).Nkind
in N_Has_Entity
1111 or else NT
(N
).Nkind
= N_Aspect_Specification
1112 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1113 or else NT
(N
).Nkind
= N_Freeze_Entity
1114 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1118 function Entity_Or_Associated_Node
1119 (N
: Node_Id
) return Node_Id
is
1121 pragma Assert
(False
1122 or else NT
(N
).Nkind
in N_Has_Entity
1123 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1125 end Entity_Or_Associated_Node
;
1127 function Entry_Body_Formal_Part
1128 (N
: Node_Id
) return Node_Id
is
1130 pragma Assert
(False
1131 or else NT
(N
).Nkind
= N_Entry_Body
);
1133 end Entry_Body_Formal_Part
;
1135 function Entry_Call_Alternative
1136 (N
: Node_Id
) return Node_Id
is
1138 pragma Assert
(False
1139 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1140 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1142 end Entry_Call_Alternative
;
1144 function Entry_Call_Statement
1145 (N
: Node_Id
) return Node_Id
is
1147 pragma Assert
(False
1148 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1150 end Entry_Call_Statement
;
1152 function Entry_Direct_Name
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Accept_Statement
);
1158 end Entry_Direct_Name
;
1160 function Entry_Index
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Accept_Statement
);
1168 function Entry_Index_Specification
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1174 end Entry_Index_Specification
;
1177 (N
: Node_Id
) return Node_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
in N_Has_Etype
);
1184 function Exception_Choices
1185 (N
: Node_Id
) return List_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
= N_Exception_Handler
);
1190 end Exception_Choices
;
1192 function Exception_Handlers
1193 (N
: Node_Id
) return List_Id
is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1198 end Exception_Handlers
;
1200 function Exception_Junk
1201 (N
: Node_Id
) return Boolean is
1203 pragma Assert
(False
1204 or else NT
(N
).Nkind
= N_Block_Statement
1205 or else NT
(N
).Nkind
= N_Goto_Statement
1206 or else NT
(N
).Nkind
= N_Label
1207 or else NT
(N
).Nkind
= N_Object_Declaration
1208 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1212 function Exception_Label
1213 (N
: Node_Id
) return Node_Id
is
1215 pragma Assert
(False
1216 or else NT
(N
).Nkind
= N_Exception_Handler
1217 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1218 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1219 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1221 end Exception_Label
;
1223 function Expansion_Delayed
1224 (N
: Node_Id
) return Boolean is
1226 pragma Assert
(False
1227 or else NT
(N
).Nkind
= N_Aggregate
1228 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1230 end Expansion_Delayed
;
1232 function Explicit_Actual_Parameter
1233 (N
: Node_Id
) return Node_Id
is
1235 pragma Assert
(False
1236 or else NT
(N
).Nkind
= N_Parameter_Association
);
1238 end Explicit_Actual_Parameter
;
1240 function Explicit_Generic_Actual_Parameter
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Generic_Association
);
1246 end Explicit_Generic_Actual_Parameter
;
1249 (N
: Node_Id
) return Node_Id
is
1251 pragma Assert
(False
1252 or else NT
(N
).Nkind
= N_Allocator
1253 or else NT
(N
).Nkind
= N_Aspect_Specification
1254 or else NT
(N
).Nkind
= N_Assignment_Statement
1255 or else NT
(N
).Nkind
= N_At_Clause
1256 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1257 or else NT
(N
).Nkind
= N_Case_Expression
1258 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1259 or else NT
(N
).Nkind
= N_Case_Statement
1260 or else NT
(N
).Nkind
= N_Code_Statement
1261 or else NT
(N
).Nkind
= N_Component_Association
1262 or else NT
(N
).Nkind
= N_Component_Declaration
1263 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1264 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1265 or else NT
(N
).Nkind
= N_Delta_Aggregate
1266 or else NT
(N
).Nkind
= N_Discriminant_Association
1267 or else NT
(N
).Nkind
= N_Discriminant_Specification
1268 or else NT
(N
).Nkind
= N_Exception_Declaration
1269 or else NT
(N
).Nkind
= N_Expression_Function
1270 or else NT
(N
).Nkind
= N_Expression_With_Actions
1271 or else NT
(N
).Nkind
= N_Free_Statement
1272 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1273 or else NT
(N
).Nkind
= N_Mod_Clause
1274 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1275 or else NT
(N
).Nkind
= N_Number_Declaration
1276 or else NT
(N
).Nkind
= N_Object_Declaration
1277 or else NT
(N
).Nkind
= N_Parameter_Specification
1278 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1279 or else NT
(N
).Nkind
= N_Qualified_Expression
1280 or else NT
(N
).Nkind
= N_Raise_Expression
1281 or else NT
(N
).Nkind
= N_Raise_Statement
1282 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1283 or else NT
(N
).Nkind
= N_Type_Conversion
1284 or else NT
(N
).Nkind
= N_Unchecked_Expression
1285 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1289 function Expression_Copy
1290 (N
: Node_Id
) return Node_Id
is
1292 pragma Assert
(False
1293 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1295 end Expression_Copy
;
1297 function Expressions
1298 (N
: Node_Id
) return List_Id
is
1300 pragma Assert
(False
1301 or else NT
(N
).Nkind
= N_Aggregate
1302 or else NT
(N
).Nkind
= N_Attribute_Reference
1303 or else NT
(N
).Nkind
= N_Extension_Aggregate
1304 or else NT
(N
).Nkind
= N_If_Expression
1305 or else NT
(N
).Nkind
= N_Indexed_Component
);
1310 (N
: Node_Id
) return Node_Id
is
1312 pragma Assert
(False
1313 or else NT
(N
).Nkind
= N_Component_Clause
);
1317 function First_Inlined_Subprogram
1318 (N
: Node_Id
) return Entity_Id
is
1320 pragma Assert
(False
1321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1323 end First_Inlined_Subprogram
;
1326 (N
: Node_Id
) return Boolean is
1328 pragma Assert
(False
1329 or else NT
(N
).Nkind
= N_With_Clause
);
1333 function First_Named_Actual
1334 (N
: Node_Id
) return Node_Id
is
1336 pragma Assert
(False
1337 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1338 or else NT
(N
).Nkind
= N_Function_Call
1339 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1341 end First_Named_Actual
;
1343 function First_Real_Statement
1344 (N
: Node_Id
) return Node_Id
is
1346 pragma Assert
(False
1347 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1349 end First_Real_Statement
;
1351 function First_Subtype_Link
1352 (N
: Node_Id
) return Entity_Id
is
1354 pragma Assert
(False
1355 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1357 end First_Subtype_Link
;
1359 function Float_Truncate
1360 (N
: Node_Id
) return Boolean is
1362 pragma Assert
(False
1363 or else NT
(N
).Nkind
= N_Type_Conversion
);
1367 function Formal_Type_Definition
1368 (N
: Node_Id
) return Node_Id
is
1370 pragma Assert
(False
1371 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1373 end Formal_Type_Definition
;
1375 function Forwards_OK
1376 (N
: Node_Id
) return Boolean is
1378 pragma Assert
(False
1379 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1383 function From_Aspect_Specification
1384 (N
: Node_Id
) return Boolean is
1386 pragma Assert
(False
1387 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1388 or else NT
(N
).Nkind
= N_Pragma
);
1390 end From_Aspect_Specification
;
1392 function From_At_End
1393 (N
: Node_Id
) return Boolean is
1395 pragma Assert
(False
1396 or else NT
(N
).Nkind
= N_Raise_Statement
);
1400 function From_At_Mod
1401 (N
: Node_Id
) return Boolean is
1403 pragma Assert
(False
1404 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1408 function From_Conditional_Expression
1409 (N
: Node_Id
) return Boolean is
1411 pragma Assert
(False
1412 or else NT
(N
).Nkind
= N_Case_Statement
1413 or else NT
(N
).Nkind
= N_If_Statement
);
1415 end From_Conditional_Expression
;
1417 function From_Default
1418 (N
: Node_Id
) return Boolean is
1420 pragma Assert
(False
1421 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1425 function Generalized_Indexing
1426 (N
: Node_Id
) return Node_Id
is
1428 pragma Assert
(False
1429 or else NT
(N
).Nkind
= N_Indexed_Component
);
1431 end Generalized_Indexing
;
1433 function Generic_Associations
1434 (N
: Node_Id
) return List_Id
is
1436 pragma Assert
(False
1437 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1438 or else NT
(N
).Nkind
= N_Function_Instantiation
1439 or else NT
(N
).Nkind
= N_Package_Instantiation
1440 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1442 end Generic_Associations
;
1444 function Generic_Formal_Declarations
1445 (N
: Node_Id
) return List_Id
is
1447 pragma Assert
(False
1448 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1449 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1451 end Generic_Formal_Declarations
;
1453 function Generic_Parent
1454 (N
: Node_Id
) return Node_Id
is
1456 pragma Assert
(False
1457 or else NT
(N
).Nkind
= N_Function_Specification
1458 or else NT
(N
).Nkind
= N_Package_Specification
1459 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1463 function Generic_Parent_Type
1464 (N
: Node_Id
) return Node_Id
is
1466 pragma Assert
(False
1467 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1469 end Generic_Parent_Type
;
1471 function Handled_Statement_Sequence
1472 (N
: Node_Id
) return Node_Id
is
1474 pragma Assert
(False
1475 or else NT
(N
).Nkind
= N_Accept_Statement
1476 or else NT
(N
).Nkind
= N_Block_Statement
1477 or else NT
(N
).Nkind
= N_Entry_Body
1478 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1479 or else NT
(N
).Nkind
= N_Package_Body
1480 or else NT
(N
).Nkind
= N_Subprogram_Body
1481 or else NT
(N
).Nkind
= N_Task_Body
);
1483 end Handled_Statement_Sequence
;
1485 function Handler_List_Entry
1486 (N
: Node_Id
) return Node_Id
is
1488 pragma Assert
(False
1489 or else NT
(N
).Nkind
= N_Object_Declaration
);
1491 end Handler_List_Entry
;
1493 function Has_Created_Identifier
1494 (N
: Node_Id
) return Boolean is
1496 pragma Assert
(False
1497 or else NT
(N
).Nkind
= N_Block_Statement
1498 or else NT
(N
).Nkind
= N_Loop_Statement
);
1500 end Has_Created_Identifier
;
1502 function Has_Dereference_Action
1503 (N
: Node_Id
) return Boolean is
1505 pragma Assert
(False
1506 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1508 end Has_Dereference_Action
;
1510 function Has_Dynamic_Length_Check
1511 (N
: Node_Id
) return Boolean is
1513 pragma Assert
(False
1514 or else NT
(N
).Nkind
in N_Subexpr
);
1516 end Has_Dynamic_Length_Check
;
1518 function Has_Dynamic_Range_Check
1519 (N
: Node_Id
) return Boolean is
1521 pragma Assert
(False
1522 or else NT
(N
).Nkind
= N_Subtype_Declaration
1523 or else NT
(N
).Nkind
in N_Subexpr
);
1525 end Has_Dynamic_Range_Check
;
1527 function Has_Init_Expression
1528 (N
: Node_Id
) return Boolean is
1530 pragma Assert
(False
1531 or else NT
(N
).Nkind
= N_Object_Declaration
);
1533 end Has_Init_Expression
;
1535 function Has_Local_Raise
1536 (N
: Node_Id
) return Boolean is
1538 pragma Assert
(False
1539 or else NT
(N
).Nkind
= N_Exception_Handler
);
1541 end Has_Local_Raise
;
1543 function Has_No_Elaboration_Code
1544 (N
: Node_Id
) return Boolean is
1546 pragma Assert
(False
1547 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1549 end Has_No_Elaboration_Code
;
1551 function Has_Pragma_Suppress_All
1552 (N
: Node_Id
) return Boolean is
1554 pragma Assert
(False
1555 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1557 end Has_Pragma_Suppress_All
;
1559 function Has_Private_View
1560 (N
: Node_Id
) return Boolean is
1562 pragma Assert
(False
1563 or else NT
(N
).Nkind
in N_Op
1564 or else NT
(N
).Nkind
= N_Character_Literal
1565 or else NT
(N
).Nkind
= N_Expanded_Name
1566 or else NT
(N
).Nkind
= N_Identifier
1567 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1569 end Has_Private_View
;
1571 function Has_Relative_Deadline_Pragma
1572 (N
: Node_Id
) return Boolean is
1574 pragma Assert
(False
1575 or else NT
(N
).Nkind
= N_Subprogram_Body
1576 or else NT
(N
).Nkind
= N_Task_Definition
);
1578 end Has_Relative_Deadline_Pragma
;
1580 function Has_Self_Reference
1581 (N
: Node_Id
) return Boolean is
1583 pragma Assert
(False
1584 or else NT
(N
).Nkind
= N_Aggregate
1585 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1587 end Has_Self_Reference
;
1589 function Has_SP_Choice
1590 (N
: Node_Id
) return Boolean is
1592 pragma Assert
(False
1593 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1594 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1595 or else NT
(N
).Nkind
= N_Variant
);
1599 function Has_Storage_Size_Pragma
1600 (N
: Node_Id
) return Boolean is
1602 pragma Assert
(False
1603 or else NT
(N
).Nkind
= N_Task_Definition
);
1605 end Has_Storage_Size_Pragma
;
1607 function Has_Target_Names
1608 (N
: Node_Id
) return Boolean is
1610 pragma Assert
(False
1611 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1613 end Has_Target_Names
;
1615 function Has_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_Character
;
1623 function Has_Wide_Wide_Character
1624 (N
: Node_Id
) return Boolean is
1626 pragma Assert
(False
1627 or else NT
(N
).Nkind
= N_String_Literal
);
1629 end Has_Wide_Wide_Character
;
1631 function Header_Size_Added
1632 (N
: Node_Id
) return Boolean is
1634 pragma Assert
(False
1635 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1637 end Header_Size_Added
;
1639 function Hidden_By_Use_Clause
1640 (N
: Node_Id
) return Elist_Id
is
1642 pragma Assert
(False
1643 or else NT
(N
).Nkind
= N_Use_Package_Clause
1644 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1646 end Hidden_By_Use_Clause
;
1649 (N
: Node_Id
) return Node_Id
is
1651 pragma Assert
(False
1652 or else NT
(N
).Nkind
= N_Range
1653 or else NT
(N
).Nkind
= N_Real_Range_Specification
1654 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1659 (N
: Node_Id
) return Node_Id
is
1661 pragma Assert
(False
1662 or else NT
(N
).Nkind
= N_Aspect_Specification
1663 or else NT
(N
).Nkind
= N_At_Clause
1664 or else NT
(N
).Nkind
= N_Block_Statement
1665 or else NT
(N
).Nkind
= N_Designator
1666 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1667 or else NT
(N
).Nkind
= N_Label
1668 or else NT
(N
).Nkind
= N_Loop_Statement
1669 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1673 function Implicit_With
1674 (N
: Node_Id
) return Boolean is
1676 pragma Assert
(False
1677 or else NT
(N
).Nkind
= N_With_Clause
);
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
;
1920 function Is_Elaboration_Code
1921 (N
: Node_Id
) return Boolean is
1923 pragma Assert
(False
1924 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1926 end Is_Elaboration_Code
;
1928 function Is_Elaboration_Warnings_OK_Node
1929 (N
: Node_Id
) return Boolean is
1931 pragma Assert
(False
1932 or else NT
(N
).Nkind
= N_Attribute_Reference
1933 or else NT
(N
).Nkind
= N_Call_Marker
1934 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1935 or else NT
(N
).Nkind
= N_Function_Call
1936 or else NT
(N
).Nkind
= N_Function_Instantiation
1937 or else NT
(N
).Nkind
= N_Package_Instantiation
1938 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1939 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1940 or else NT
(N
).Nkind
= N_Requeue_Statement
);
1942 end Is_Elaboration_Warnings_OK_Node
;
1945 (N
: Node_Id
) return Boolean is
1947 pragma Assert
(False
1948 or else NT
(N
).Nkind
= N_If_Expression
);
1952 function Is_Entry_Barrier_Function
1953 (N
: Node_Id
) return Boolean is
1955 pragma Assert
(False
1956 or else NT
(N
).Nkind
= N_Subprogram_Body
1957 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1959 end Is_Entry_Barrier_Function
;
1961 function Is_Expanded_Build_In_Place_Call
1962 (N
: Node_Id
) return Boolean is
1964 pragma Assert
(False
1965 or else NT
(N
).Nkind
= N_Function_Call
);
1967 end Is_Expanded_Build_In_Place_Call
;
1969 function Is_Expanded_Contract
1970 (N
: Node_Id
) return Boolean is
1972 pragma Assert
(False
1973 or else NT
(N
).Nkind
= N_Contract
);
1975 end Is_Expanded_Contract
;
1977 function Is_Finalization_Wrapper
1978 (N
: Node_Id
) return Boolean is
1980 pragma Assert
(False
1981 or else NT
(N
).Nkind
= N_Block_Statement
);
1983 end Is_Finalization_Wrapper
;
1985 function Is_Folded_In_Parser
1986 (N
: Node_Id
) return Boolean is
1988 pragma Assert
(False
1989 or else NT
(N
).Nkind
= N_String_Literal
);
1991 end Is_Folded_In_Parser
;
1993 function Is_Generic_Contract_Pragma
1994 (N
: Node_Id
) return Boolean is
1996 pragma Assert
(False
1997 or else NT
(N
).Nkind
= N_Pragma
);
1999 end Is_Generic_Contract_Pragma
;
2002 (N
: Node_Id
) return Boolean is
2004 pragma Assert
(False
2005 or else NT
(N
).Nkind
= N_Aspect_Specification
2006 or else NT
(N
).Nkind
= N_Pragma
);
2010 function Is_Ignored_Ghost_Pragma
2011 (N
: Node_Id
) return Boolean is
2013 pragma Assert
(False
2014 or else NT
(N
).Nkind
= N_Pragma
);
2016 end Is_Ignored_Ghost_Pragma
;
2018 function Is_In_Discriminant_Check
2019 (N
: Node_Id
) return Boolean is
2021 pragma Assert
(False
2022 or else NT
(N
).Nkind
= N_Selected_Component
);
2024 end Is_In_Discriminant_Check
;
2026 function Is_Inherited_Pragma
2027 (N
: Node_Id
) return Boolean is
2029 pragma Assert
(False
2030 or else NT
(N
).Nkind
= N_Pragma
);
2032 end Is_Inherited_Pragma
;
2034 function Is_Initialization_Block
2035 (N
: Node_Id
) return Boolean is
2037 pragma Assert
(False
2038 or else NT
(N
).Nkind
= N_Block_Statement
);
2040 end Is_Initialization_Block
;
2042 function Is_Known_Guaranteed_ABE
2043 (N
: Node_Id
) return Boolean is
2045 pragma Assert
(False
2046 or else NT
(N
).Nkind
= N_Call_Marker
2047 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2048 or else NT
(N
).Nkind
= N_Function_Call
2049 or else NT
(N
).Nkind
= N_Function_Instantiation
2050 or else NT
(N
).Nkind
= N_Package_Instantiation
2051 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2052 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2054 end Is_Known_Guaranteed_ABE
;
2056 function Is_Machine_Number
2057 (N
: Node_Id
) return Boolean is
2059 pragma Assert
(False
2060 or else NT
(N
).Nkind
= N_Real_Literal
);
2062 end Is_Machine_Number
;
2064 function Is_Null_Loop
2065 (N
: Node_Id
) return Boolean is
2067 pragma Assert
(False
2068 or else NT
(N
).Nkind
= N_Loop_Statement
);
2072 function Is_OpenAcc_Environment
2073 (N
: Node_Id
) return Boolean is
2075 pragma Assert
(False
2076 or else NT
(N
).Nkind
= N_Loop_Statement
);
2078 end Is_OpenAcc_Environment
;
2080 function Is_OpenAcc_Loop
2081 (N
: Node_Id
) return Boolean is
2083 pragma Assert
(False
2084 or else NT
(N
).Nkind
= N_Loop_Statement
);
2086 end Is_OpenAcc_Loop
;
2088 function Is_Overloaded
2089 (N
: Node_Id
) return Boolean is
2091 pragma Assert
(False
2092 or else NT
(N
).Nkind
in N_Subexpr
);
2096 function Is_Power_Of_2_For_Shift
2097 (N
: Node_Id
) return Boolean is
2099 pragma Assert
(False
2100 or else NT
(N
).Nkind
= N_Op_Expon
);
2102 end Is_Power_Of_2_For_Shift
;
2104 function Is_Prefixed_Call
2105 (N
: Node_Id
) return Boolean is
2107 pragma Assert
(False
2108 or else NT
(N
).Nkind
= N_Selected_Component
);
2110 end Is_Prefixed_Call
;
2112 function Is_Protected_Subprogram_Body
2113 (N
: Node_Id
) return Boolean is
2115 pragma Assert
(False
2116 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2118 end Is_Protected_Subprogram_Body
;
2120 function Is_Qualified_Universal_Literal
2121 (N
: Node_Id
) return Boolean is
2123 pragma Assert
(False
2124 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2126 end Is_Qualified_Universal_Literal
;
2129 (N
: Node_Id
) return Boolean is
2131 pragma Assert
(False
2132 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2136 function Is_Source_Call
2137 (N
: Node_Id
) return Boolean is
2139 pragma Assert
(False
2140 or else NT
(N
).Nkind
= N_Call_Marker
);
2144 function Is_SPARK_Mode_On_Node
2145 (N
: Node_Id
) return Boolean is
2147 pragma Assert
(False
2148 or else NT
(N
).Nkind
= N_Assignment_Statement
2149 or else NT
(N
).Nkind
= N_Attribute_Reference
2150 or else NT
(N
).Nkind
= N_Call_Marker
2151 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2152 or else NT
(N
).Nkind
= N_Expanded_Name
2153 or else NT
(N
).Nkind
= N_Function_Call
2154 or else NT
(N
).Nkind
= N_Function_Instantiation
2155 or else NT
(N
).Nkind
= N_Identifier
2156 or else NT
(N
).Nkind
= N_Package_Instantiation
2157 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2158 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2159 or else NT
(N
).Nkind
= N_Requeue_Statement
);
2161 end Is_SPARK_Mode_On_Node
;
2163 function Is_Static_Coextension
2164 (N
: Node_Id
) return Boolean is
2166 pragma Assert
(False
2167 or else NT
(N
).Nkind
= N_Allocator
);
2169 end Is_Static_Coextension
;
2171 function Is_Static_Expression
2172 (N
: Node_Id
) return Boolean is
2174 pragma Assert
(False
2175 or else NT
(N
).Nkind
in N_Subexpr
);
2177 end Is_Static_Expression
;
2179 function Is_Subprogram_Descriptor
2180 (N
: Node_Id
) return Boolean is
2182 pragma Assert
(False
2183 or else NT
(N
).Nkind
= N_Object_Declaration
);
2185 end Is_Subprogram_Descriptor
;
2187 function Is_Task_Allocation_Block
2188 (N
: Node_Id
) return Boolean is
2190 pragma Assert
(False
2191 or else NT
(N
).Nkind
= N_Block_Statement
);
2193 end Is_Task_Allocation_Block
;
2195 function Is_Task_Body_Procedure
2196 (N
: Node_Id
) return Boolean is
2198 pragma Assert
(False
2199 or else NT
(N
).Nkind
= N_Subprogram_Body
2200 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2202 end Is_Task_Body_Procedure
;
2204 function Is_Task_Master
2205 (N
: Node_Id
) return Boolean is
2207 pragma Assert
(False
2208 or else NT
(N
).Nkind
= N_Block_Statement
2209 or else NT
(N
).Nkind
= N_Subprogram_Body
2210 or else NT
(N
).Nkind
= N_Task_Body
);
2215 (N
: Node_Id
) return Boolean is
2217 pragma Assert
(False
2218 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2222 function Iteration_Scheme
2223 (N
: Node_Id
) return Node_Id
is
2225 pragma Assert
(False
2226 or else NT
(N
).Nkind
= N_Loop_Statement
);
2228 end Iteration_Scheme
;
2230 function Iterator_Specification
2231 (N
: Node_Id
) return Node_Id
is
2233 pragma Assert
(False
2234 or else NT
(N
).Nkind
= N_Iteration_Scheme
2235 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2237 end Iterator_Specification
;
2240 (N
: Node_Id
) return Node_Id
is
2242 pragma Assert
(False
2243 or else NT
(N
).Nkind
= N_Itype_Reference
);
2247 function Kill_Range_Check
2248 (N
: Node_Id
) return Boolean is
2250 pragma Assert
(False
2251 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2253 end Kill_Range_Check
;
2255 function Label_Construct
2256 (N
: Node_Id
) return Node_Id
is
2258 pragma Assert
(False
2259 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2261 end Label_Construct
;
2264 (N
: Node_Id
) return Node_Id
is
2266 pragma Assert
(False
2267 or else NT
(N
).Nkind
= N_Component_Clause
);
2272 (N
: Node_Id
) return Boolean is
2274 pragma Assert
(False
2275 or else NT
(N
).Nkind
= N_With_Clause
);
2280 (N
: Node_Id
) return Node_Id
is
2282 pragma Assert
(False
2283 or else NT
(N
).Nkind
= N_And_Then
2284 or else NT
(N
).Nkind
= N_In
2285 or else NT
(N
).Nkind
= N_Not_In
2286 or else NT
(N
).Nkind
= N_Or_Else
2287 or else NT
(N
).Nkind
in N_Binary_Op
);
2291 function Library_Unit
2292 (N
: Node_Id
) return Node_Id
is
2294 pragma Assert
(False
2295 or else NT
(N
).Nkind
= N_Compilation_Unit
2296 or else NT
(N
).Nkind
= N_Package_Body_Stub
2297 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2298 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2299 or else NT
(N
).Nkind
= N_Task_Body_Stub
2300 or else NT
(N
).Nkind
= N_With_Clause
);
2304 function Limited_View_Installed
2305 (N
: Node_Id
) return Boolean is
2307 pragma Assert
(False
2308 or else NT
(N
).Nkind
= N_Package_Specification
2309 or else NT
(N
).Nkind
= N_With_Clause
);
2311 end Limited_View_Installed
;
2313 function Limited_Present
2314 (N
: Node_Id
) return Boolean is
2316 pragma Assert
(False
2317 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2318 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2319 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2320 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2321 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2322 or else NT
(N
).Nkind
= N_Record_Definition
2323 or else NT
(N
).Nkind
= N_With_Clause
);
2325 end Limited_Present
;
2328 (N
: Node_Id
) return List_Id
is
2330 pragma Assert
(False
2331 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2335 function Local_Raise_Not_OK
2336 (N
: Node_Id
) return Boolean is
2338 pragma Assert
(False
2339 or else NT
(N
).Nkind
= N_Exception_Handler
);
2341 end Local_Raise_Not_OK
;
2343 function Local_Raise_Statements
2344 (N
: Node_Id
) return Elist_Id
is
2346 pragma Assert
(False
2347 or else NT
(N
).Nkind
= N_Exception_Handler
);
2349 end Local_Raise_Statements
;
2351 function Loop_Actions
2352 (N
: Node_Id
) return List_Id
is
2354 pragma Assert
(False
2355 or else NT
(N
).Nkind
= N_Component_Association
2356 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2360 function Loop_Parameter_Specification
2361 (N
: Node_Id
) return Node_Id
is
2363 pragma Assert
(False
2364 or else NT
(N
).Nkind
= N_Iteration_Scheme
2365 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2367 end Loop_Parameter_Specification
;
2370 (N
: Node_Id
) return Node_Id
is
2372 pragma Assert
(False
2373 or else NT
(N
).Nkind
= N_Range
2374 or else NT
(N
).Nkind
= N_Real_Range_Specification
2375 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2380 (N
: Node_Id
) return Node_Id
is
2382 pragma Assert
(False
2383 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2388 (N
: Node_Id
) return Boolean is
2390 pragma Assert
(False
2391 or else NT
(N
).Nkind
= N_Component_Declaration
2392 or else NT
(N
).Nkind
= N_Discriminant_Specification
2393 or else NT
(N
).Nkind
= N_Exception_Declaration
2394 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2395 or else NT
(N
).Nkind
= N_Number_Declaration
2396 or else NT
(N
).Nkind
= N_Object_Declaration
2397 or else NT
(N
).Nkind
= N_Parameter_Specification
2398 or else NT
(N
).Nkind
= N_Use_Package_Clause
2399 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2403 function Must_Be_Byte_Aligned
2404 (N
: Node_Id
) return Boolean is
2406 pragma Assert
(False
2407 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2409 end Must_Be_Byte_Aligned
;
2411 function Must_Not_Freeze
2412 (N
: Node_Id
) return Boolean is
2414 pragma Assert
(False
2415 or else NT
(N
).Nkind
= N_Subtype_Indication
2416 or else NT
(N
).Nkind
in N_Subexpr
);
2418 end Must_Not_Freeze
;
2420 function Must_Not_Override
2421 (N
: Node_Id
) return Boolean is
2423 pragma Assert
(False
2424 or else NT
(N
).Nkind
= N_Entry_Declaration
2425 or else NT
(N
).Nkind
= N_Function_Instantiation
2426 or else NT
(N
).Nkind
= N_Function_Specification
2427 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2428 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2430 end Must_Not_Override
;
2432 function Must_Override
2433 (N
: Node_Id
) return Boolean is
2435 pragma Assert
(False
2436 or else NT
(N
).Nkind
= N_Entry_Declaration
2437 or else NT
(N
).Nkind
= N_Function_Instantiation
2438 or else NT
(N
).Nkind
= N_Function_Specification
2439 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2440 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2445 (N
: Node_Id
) return Node_Id
is
2447 pragma Assert
(False
2448 or else NT
(N
).Nkind
= N_Assignment_Statement
2449 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2450 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2451 or else NT
(N
).Nkind
= N_Designator
2452 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2453 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2454 or else NT
(N
).Nkind
= N_Exit_Statement
2455 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2456 or else NT
(N
).Nkind
= N_Function_Call
2457 or else NT
(N
).Nkind
= N_Function_Instantiation
2458 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2459 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2460 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2461 or else NT
(N
).Nkind
= N_Goto_Statement
2462 or else NT
(N
).Nkind
= N_Iterator_Specification
2463 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2464 or else NT
(N
).Nkind
= N_Package_Instantiation
2465 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2466 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2467 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2468 or else NT
(N
).Nkind
= N_Raise_Expression
2469 or else NT
(N
).Nkind
= N_Raise_Statement
2470 or else NT
(N
).Nkind
= N_Requeue_Statement
2471 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2472 or else NT
(N
).Nkind
= N_Subunit
2473 or else NT
(N
).Nkind
= N_Use_Package_Clause
2474 or else NT
(N
).Nkind
= N_Variant_Part
2475 or else NT
(N
).Nkind
= N_With_Clause
);
2480 (N
: Node_Id
) return List_Id
is
2482 pragma Assert
(False
2483 or else NT
(N
).Nkind
= N_Abort_Statement
);
2487 function Next_Entity
2488 (N
: Node_Id
) return Node_Id
is
2490 pragma Assert
(False
2491 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2492 or else NT
(N
).Nkind
= N_Defining_Identifier
2493 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2497 function Next_Exit_Statement
2498 (N
: Node_Id
) return Node_Id
is
2500 pragma Assert
(False
2501 or else NT
(N
).Nkind
= N_Exit_Statement
);
2503 end Next_Exit_Statement
;
2505 function Next_Implicit_With
2506 (N
: Node_Id
) return Node_Id
is
2508 pragma Assert
(False
2509 or else NT
(N
).Nkind
= N_With_Clause
);
2511 end Next_Implicit_With
;
2513 function Next_Named_Actual
2514 (N
: Node_Id
) return Node_Id
is
2516 pragma Assert
(False
2517 or else NT
(N
).Nkind
= N_Parameter_Association
);
2519 end Next_Named_Actual
;
2521 function Next_Pragma
2522 (N
: Node_Id
) return Node_Id
is
2524 pragma Assert
(False
2525 or else NT
(N
).Nkind
= N_Pragma
);
2529 function Next_Rep_Item
2530 (N
: Node_Id
) return Node_Id
is
2532 pragma Assert
(False
2533 or else NT
(N
).Nkind
= N_Aspect_Specification
2534 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2535 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2536 or else NT
(N
).Nkind
= N_Pragma
2537 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2541 function Next_Use_Clause
2542 (N
: Node_Id
) return Node_Id
is
2544 pragma Assert
(False
2545 or else NT
(N
).Nkind
= N_Use_Package_Clause
2546 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2548 end Next_Use_Clause
;
2550 function No_Ctrl_Actions
2551 (N
: Node_Id
) return Boolean is
2553 pragma Assert
(False
2554 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2556 end No_Ctrl_Actions
;
2558 function No_Elaboration_Check
2559 (N
: Node_Id
) return Boolean is
2561 pragma Assert
(False
2562 or else NT
(N
).Nkind
= N_Function_Call
2563 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2565 end No_Elaboration_Check
;
2567 function No_Entities_Ref_In_Spec
2568 (N
: Node_Id
) return Boolean is
2570 pragma Assert
(False
2571 or else NT
(N
).Nkind
= N_With_Clause
);
2573 end No_Entities_Ref_In_Spec
;
2575 function No_Initialization
2576 (N
: Node_Id
) return Boolean is
2578 pragma Assert
(False
2579 or else NT
(N
).Nkind
= N_Allocator
2580 or else NT
(N
).Nkind
= N_Object_Declaration
);
2582 end No_Initialization
;
2584 function No_Minimize_Eliminate
2585 (N
: Node_Id
) return Boolean is
2587 pragma Assert
(False
2588 or else NT
(N
).Nkind
= N_In
2589 or else NT
(N
).Nkind
= N_Not_In
);
2591 end No_Minimize_Eliminate
;
2593 function No_Side_Effect_Removal
2594 (N
: Node_Id
) return Boolean is
2596 pragma Assert
(False
2597 or else NT
(N
).Nkind
= N_Function_Call
);
2599 end No_Side_Effect_Removal
;
2601 function No_Truncation
2602 (N
: Node_Id
) return Boolean is
2604 pragma Assert
(False
2605 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2609 function Null_Excluding_Subtype
2610 (N
: Node_Id
) return Boolean is
2612 pragma Assert
(False
2613 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2615 end Null_Excluding_Subtype
;
2617 function Null_Exclusion_Present
2618 (N
: Node_Id
) return Boolean is
2620 pragma Assert
(False
2621 or else NT
(N
).Nkind
= N_Access_Definition
2622 or else NT
(N
).Nkind
= N_Access_Function_Definition
2623 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2624 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2625 or else NT
(N
).Nkind
= N_Allocator
2626 or else NT
(N
).Nkind
= N_Component_Definition
2627 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2628 or else NT
(N
).Nkind
= N_Discriminant_Specification
2629 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2630 or else NT
(N
).Nkind
= N_Function_Specification
2631 or else NT
(N
).Nkind
= N_Object_Declaration
2632 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2633 or else NT
(N
).Nkind
= N_Parameter_Specification
2634 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2636 end Null_Exclusion_Present
;
2638 function Null_Exclusion_In_Return_Present
2639 (N
: Node_Id
) return Boolean is
2641 pragma Assert
(False
2642 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2644 end Null_Exclusion_In_Return_Present
;
2646 function Null_Present
2647 (N
: Node_Id
) return Boolean is
2649 pragma Assert
(False
2650 or else NT
(N
).Nkind
= N_Component_List
2651 or else NT
(N
).Nkind
= N_Procedure_Specification
2652 or else NT
(N
).Nkind
= N_Record_Definition
);
2656 function Null_Record_Present
2657 (N
: Node_Id
) return Boolean is
2659 pragma Assert
(False
2660 or else NT
(N
).Nkind
= N_Aggregate
2661 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2663 end Null_Record_Present
;
2665 function Null_Statement
2666 (N
: Node_Id
) return Node_Id
is
2668 pragma Assert
(False
2669 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2673 function Object_Definition
2674 (N
: Node_Id
) return Node_Id
is
2676 pragma Assert
(False
2677 or else NT
(N
).Nkind
= N_Object_Declaration
);
2679 end Object_Definition
;
2682 (N
: Node_Id
) return Boolean is
2684 pragma Assert
(False
2685 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2689 function Original_Discriminant
2690 (N
: Node_Id
) return Node_Id
is
2692 pragma Assert
(False
2693 or else NT
(N
).Nkind
= N_Identifier
);
2695 end Original_Discriminant
;
2697 function Original_Entity
2698 (N
: Node_Id
) return Entity_Id
is
2700 pragma Assert
(False
2701 or else NT
(N
).Nkind
= N_Integer_Literal
2702 or else NT
(N
).Nkind
= N_Real_Literal
);
2704 end Original_Entity
;
2706 function Others_Discrete_Choices
2707 (N
: Node_Id
) return List_Id
is
2709 pragma Assert
(False
2710 or else NT
(N
).Nkind
= N_Others_Choice
);
2712 end Others_Discrete_Choices
;
2714 function Out_Present
2715 (N
: Node_Id
) return Boolean is
2717 pragma Assert
(False
2718 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2719 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2723 function Parameter_Associations
2724 (N
: Node_Id
) return List_Id
is
2726 pragma Assert
(False
2727 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2728 or else NT
(N
).Nkind
= N_Function_Call
2729 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2731 end Parameter_Associations
;
2733 function Parameter_Specifications
2734 (N
: Node_Id
) return List_Id
is
2736 pragma Assert
(False
2737 or else NT
(N
).Nkind
= N_Accept_Statement
2738 or else NT
(N
).Nkind
= N_Access_Function_Definition
2739 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2740 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2741 or else NT
(N
).Nkind
= N_Entry_Declaration
2742 or else NT
(N
).Nkind
= N_Function_Specification
2743 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2745 end Parameter_Specifications
;
2747 function Parameter_Type
2748 (N
: Node_Id
) return Node_Id
is
2750 pragma Assert
(False
2751 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2755 function Parent_Spec
2756 (N
: Node_Id
) return Node_Id
is
2758 pragma Assert
(False
2759 or else NT
(N
).Nkind
= N_Function_Instantiation
2760 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2761 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2762 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2763 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2764 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2765 or else NT
(N
).Nkind
= N_Package_Declaration
2766 or else NT
(N
).Nkind
= N_Package_Instantiation
2767 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2768 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2769 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2770 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2774 function Parent_With
2775 (N
: Node_Id
) return Boolean is
2777 pragma Assert
(False
2778 or else NT
(N
).Nkind
= N_With_Clause
);
2783 (N
: Node_Id
) return Node_Id
is
2785 pragma Assert
(False
2786 or else NT
(N
).Nkind
= N_Component_Clause
);
2790 function Pragma_Argument_Associations
2791 (N
: Node_Id
) return List_Id
is
2793 pragma Assert
(False
2794 or else NT
(N
).Nkind
= N_Pragma
);
2796 end Pragma_Argument_Associations
;
2798 function Pragma_Identifier
2799 (N
: Node_Id
) return Node_Id
is
2801 pragma Assert
(False
2802 or else NT
(N
).Nkind
= N_Pragma
);
2804 end Pragma_Identifier
;
2806 function Pragmas_After
2807 (N
: Node_Id
) return List_Id
is
2809 pragma Assert
(False
2810 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2811 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2815 function Pragmas_Before
2816 (N
: Node_Id
) return List_Id
is
2818 pragma Assert
(False
2819 or else NT
(N
).Nkind
= N_Accept_Alternative
2820 or else NT
(N
).Nkind
= N_Delay_Alternative
2821 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2822 or else NT
(N
).Nkind
= N_Mod_Clause
2823 or else NT
(N
).Nkind
= N_Terminate_Alternative
2824 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2828 function Pre_Post_Conditions
2829 (N
: Node_Id
) return Node_Id
is
2831 pragma Assert
(False
2832 or else NT
(N
).Nkind
= N_Contract
);
2834 end Pre_Post_Conditions
;
2837 (N
: Node_Id
) return Node_Id
is
2839 pragma Assert
(False
2840 or else NT
(N
).Nkind
= N_Attribute_Reference
2841 or else NT
(N
).Nkind
= N_Expanded_Name
2842 or else NT
(N
).Nkind
= N_Explicit_Dereference
2843 or else NT
(N
).Nkind
= N_Indexed_Component
2844 or else NT
(N
).Nkind
= N_Reference
2845 or else NT
(N
).Nkind
= N_Selected_Component
2846 or else NT
(N
).Nkind
= N_Slice
);
2850 function Premature_Use
2851 (N
: Node_Id
) return Node_Id
is
2853 pragma Assert
(False
2854 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2858 function Present_Expr
2859 (N
: Node_Id
) return Uint
is
2861 pragma Assert
(False
2862 or else NT
(N
).Nkind
= N_Variant
);
2867 (N
: Node_Id
) return Boolean is
2869 pragma Assert
(False
2870 or else NT
(N
).Nkind
= N_Component_Declaration
2871 or else NT
(N
).Nkind
= N_Discriminant_Specification
2872 or else NT
(N
).Nkind
= N_Exception_Declaration
2873 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2874 or else NT
(N
).Nkind
= N_Number_Declaration
2875 or else NT
(N
).Nkind
= N_Object_Declaration
2876 or else NT
(N
).Nkind
= N_Parameter_Specification
2877 or else NT
(N
).Nkind
= N_Use_Package_Clause
2878 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2882 function Prev_Use_Clause
2883 (N
: Node_Id
) return Node_Id
is
2885 pragma Assert
(False
2886 or else NT
(N
).Nkind
= N_Use_Package_Clause
2887 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2889 end Prev_Use_Clause
;
2891 function Print_In_Hex
2892 (N
: Node_Id
) return Boolean is
2894 pragma Assert
(False
2895 or else NT
(N
).Nkind
= N_Integer_Literal
);
2899 function Private_Declarations
2900 (N
: Node_Id
) return List_Id
is
2902 pragma Assert
(False
2903 or else NT
(N
).Nkind
= N_Package_Specification
2904 or else NT
(N
).Nkind
= N_Protected_Definition
2905 or else NT
(N
).Nkind
= N_Task_Definition
);
2907 end Private_Declarations
;
2909 function Private_Present
2910 (N
: Node_Id
) return Boolean is
2912 pragma Assert
(False
2913 or else NT
(N
).Nkind
= N_Compilation_Unit
2914 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2915 or else NT
(N
).Nkind
= N_With_Clause
);
2917 end Private_Present
;
2919 function Procedure_To_Call
2920 (N
: Node_Id
) return Node_Id
is
2922 pragma Assert
(False
2923 or else NT
(N
).Nkind
= N_Allocator
2924 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2925 or else NT
(N
).Nkind
= N_Free_Statement
2926 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2928 end Procedure_To_Call
;
2930 function Proper_Body
2931 (N
: Node_Id
) return Node_Id
is
2933 pragma Assert
(False
2934 or else NT
(N
).Nkind
= N_Subunit
);
2938 function Protected_Definition
2939 (N
: Node_Id
) return Node_Id
is
2941 pragma Assert
(False
2942 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2943 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2945 end Protected_Definition
;
2947 function Protected_Present
2948 (N
: Node_Id
) return Boolean is
2950 pragma Assert
(False
2951 or else NT
(N
).Nkind
= N_Access_Function_Definition
2952 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2953 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2954 or else NT
(N
).Nkind
= N_Record_Definition
);
2956 end Protected_Present
;
2958 function Raises_Constraint_Error
2959 (N
: Node_Id
) return Boolean is
2961 pragma Assert
(False
2962 or else NT
(N
).Nkind
in N_Subexpr
);
2964 end Raises_Constraint_Error
;
2966 function Range_Constraint
2967 (N
: Node_Id
) return Node_Id
is
2969 pragma Assert
(False
2970 or else NT
(N
).Nkind
= N_Delta_Constraint
2971 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2973 end Range_Constraint
;
2975 function Range_Expression
2976 (N
: Node_Id
) return Node_Id
is
2978 pragma Assert
(False
2979 or else NT
(N
).Nkind
= N_Range_Constraint
);
2981 end Range_Expression
;
2983 function Real_Range_Specification
2984 (N
: Node_Id
) return Node_Id
is
2986 pragma Assert
(False
2987 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2988 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2989 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2991 end Real_Range_Specification
;
2994 (N
: Node_Id
) return Ureal
is
2996 pragma Assert
(False
2997 or else NT
(N
).Nkind
= N_Real_Literal
);
3002 (N
: Node_Id
) return Uint
is
3004 pragma Assert
(False
3005 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3006 or else NT
(N
).Nkind
= N_Raise_Program_Error
3007 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
3011 function Record_Extension_Part
3012 (N
: Node_Id
) return Node_Id
is
3014 pragma Assert
(False
3015 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
3017 end Record_Extension_Part
;
3019 function Redundant_Use
3020 (N
: Node_Id
) return Boolean is
3022 pragma Assert
(False
3023 or else NT
(N
).Nkind
= N_Attribute_Reference
3024 or else NT
(N
).Nkind
= N_Expanded_Name
3025 or else NT
(N
).Nkind
= N_Identifier
);
3029 function Renaming_Exception
3030 (N
: Node_Id
) return Node_Id
is
3032 pragma Assert
(False
3033 or else NT
(N
).Nkind
= N_Exception_Declaration
);
3035 end Renaming_Exception
;
3037 function Result_Definition
3038 (N
: Node_Id
) return Node_Id
is
3040 pragma Assert
(False
3041 or else NT
(N
).Nkind
= N_Access_Function_Definition
3042 or else NT
(N
).Nkind
= N_Function_Specification
);
3044 end Result_Definition
;
3046 function Return_Object_Declarations
3047 (N
: Node_Id
) return List_Id
is
3049 pragma Assert
(False
3050 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
3052 end Return_Object_Declarations
;
3054 function Return_Statement_Entity
3055 (N
: Node_Id
) return Node_Id
is
3057 pragma Assert
(False
3058 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3059 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3061 end Return_Statement_Entity
;
3063 function Reverse_Present
3064 (N
: Node_Id
) return Boolean is
3066 pragma Assert
(False
3067 or else NT
(N
).Nkind
= N_Iterator_Specification
3068 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3070 end Reverse_Present
;
3073 (N
: Node_Id
) return Node_Id
is
3075 pragma Assert
(False
3076 or else NT
(N
).Nkind
in N_Op
3077 or else NT
(N
).Nkind
= N_And_Then
3078 or else NT
(N
).Nkind
= N_In
3079 or else NT
(N
).Nkind
= N_Not_In
3080 or else NT
(N
).Nkind
= N_Or_Else
);
3084 function Rounded_Result
3085 (N
: Node_Id
) return Boolean is
3087 pragma Assert
(False
3088 or else NT
(N
).Nkind
= N_Op_Divide
3089 or else NT
(N
).Nkind
= N_Op_Multiply
3090 or else NT
(N
).Nkind
= N_Type_Conversion
);
3094 function SCIL_Controlling_Tag
3095 (N
: Node_Id
) return Node_Id
is
3097 pragma Assert
(False
3098 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3100 end SCIL_Controlling_Tag
;
3102 function SCIL_Entity
3103 (N
: Node_Id
) return Node_Id
is
3105 pragma Assert
(False
3106 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3107 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3108 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3112 function SCIL_Tag_Value
3113 (N
: Node_Id
) return Node_Id
is
3115 pragma Assert
(False
3116 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3120 function SCIL_Target_Prim
3121 (N
: Node_Id
) return Node_Id
is
3123 pragma Assert
(False
3124 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3126 end SCIL_Target_Prim
;
3129 (N
: Node_Id
) return Node_Id
is
3131 pragma Assert
(False
3132 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3133 or else NT
(N
).Nkind
= N_Defining_Identifier
3134 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3138 function Select_Alternatives
3139 (N
: Node_Id
) return List_Id
is
3141 pragma Assert
(False
3142 or else NT
(N
).Nkind
= N_Selective_Accept
);
3144 end Select_Alternatives
;
3146 function Selector_Name
3147 (N
: Node_Id
) return Node_Id
is
3149 pragma Assert
(False
3150 or else NT
(N
).Nkind
= N_Expanded_Name
3151 or else NT
(N
).Nkind
= N_Generic_Association
3152 or else NT
(N
).Nkind
= N_Parameter_Association
3153 or else NT
(N
).Nkind
= N_Selected_Component
);
3157 function Selector_Names
3158 (N
: Node_Id
) return List_Id
is
3160 pragma Assert
(False
3161 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3165 function Shift_Count_OK
3166 (N
: Node_Id
) return Boolean is
3168 pragma Assert
(False
3169 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3170 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3171 or else NT
(N
).Nkind
= N_Op_Shift_Left
3172 or else NT
(N
).Nkind
= N_Op_Shift_Right
3173 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3177 function Source_Type
3178 (N
: Node_Id
) return Entity_Id
is
3180 pragma Assert
(False
3181 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3185 function Specification
3186 (N
: Node_Id
) return Node_Id
is
3188 pragma Assert
(False
3189 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3190 or else NT
(N
).Nkind
= N_Expression_Function
3191 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3192 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3193 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3194 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3195 or else NT
(N
).Nkind
= N_Package_Declaration
3196 or else NT
(N
).Nkind
= N_Subprogram_Body
3197 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3198 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3199 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3204 (N
: Node_Id
) return Boolean is
3206 pragma Assert
(False
3207 or else NT
(N
).Nkind
= N_Aspect_Specification
3208 or else NT
(N
).Nkind
= N_Pragma
);
3213 (N
: Node_Id
) return List_Id
is
3215 pragma Assert
(False
3216 or else NT
(N
).Nkind
= N_Abortable_Part
3217 or else NT
(N
).Nkind
= N_Accept_Alternative
3218 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3219 or else NT
(N
).Nkind
= N_Delay_Alternative
3220 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3221 or else NT
(N
).Nkind
= N_Exception_Handler
3222 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3223 or else NT
(N
).Nkind
= N_Loop_Statement
3224 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3228 function Storage_Pool
3229 (N
: Node_Id
) return Node_Id
is
3231 pragma Assert
(False
3232 or else NT
(N
).Nkind
= N_Allocator
3233 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3234 or else NT
(N
).Nkind
= N_Free_Statement
3235 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3239 function Subpool_Handle_Name
3240 (N
: Node_Id
) return Node_Id
is
3242 pragma Assert
(False
3243 or else NT
(N
).Nkind
= N_Allocator
);
3245 end Subpool_Handle_Name
;
3248 (N
: Node_Id
) return String_Id
is
3250 pragma Assert
(False
3251 or else NT
(N
).Nkind
= N_Operator_Symbol
3252 or else NT
(N
).Nkind
= N_String_Literal
);
3256 function Subtype_Indication
3257 (N
: Node_Id
) return Node_Id
is
3259 pragma Assert
(False
3260 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3261 or else NT
(N
).Nkind
= N_Component_Definition
3262 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3263 or else NT
(N
).Nkind
= N_Iterator_Specification
3264 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3265 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3267 end Subtype_Indication
;
3269 function Suppress_Assignment_Checks
3270 (N
: Node_Id
) return Boolean is
3272 pragma Assert
(False
3273 or else NT
(N
).Nkind
= N_Assignment_Statement
3274 or else NT
(N
).Nkind
= N_Object_Declaration
);
3276 end Suppress_Assignment_Checks
;
3278 function Suppress_Loop_Warnings
3279 (N
: Node_Id
) return Boolean is
3281 pragma Assert
(False
3282 or else NT
(N
).Nkind
= N_Loop_Statement
);
3284 end Suppress_Loop_Warnings
;
3286 function Subtype_Mark
3287 (N
: Node_Id
) return Node_Id
is
3289 pragma Assert
(False
3290 or else NT
(N
).Nkind
= N_Access_Definition
3291 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3292 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3293 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3294 or else NT
(N
).Nkind
= N_Qualified_Expression
3295 or else NT
(N
).Nkind
= N_Subtype_Indication
3296 or else NT
(N
).Nkind
= N_Type_Conversion
3297 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3298 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3302 function Subtype_Marks
3303 (N
: Node_Id
) return List_Id
is
3305 pragma Assert
(False
3306 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3310 function Synchronized_Present
3311 (N
: Node_Id
) return Boolean is
3313 pragma Assert
(False
3314 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3315 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3316 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3317 or else NT
(N
).Nkind
= N_Record_Definition
);
3319 end Synchronized_Present
;
3321 function Tagged_Present
3322 (N
: Node_Id
) return Boolean is
3324 pragma Assert
(False
3325 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3326 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3327 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3328 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3329 or else NT
(N
).Nkind
= N_Record_Definition
);
3334 (N
: Node_Id
) return Entity_Id
is
3336 pragma Assert
(False
3337 or else NT
(N
).Nkind
= N_Call_Marker
3338 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
3342 function Target_Type
3343 (N
: Node_Id
) return Entity_Id
is
3345 pragma Assert
(False
3346 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3350 function Task_Definition
3351 (N
: Node_Id
) return Node_Id
is
3353 pragma Assert
(False
3354 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3355 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3357 end Task_Definition
;
3359 function Task_Present
3360 (N
: Node_Id
) return Boolean is
3362 pragma Assert
(False
3363 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3364 or else NT
(N
).Nkind
= N_Record_Definition
);
3368 function Then_Actions
3369 (N
: Node_Id
) return List_Id
is
3371 pragma Assert
(False
3372 or else NT
(N
).Nkind
= N_If_Expression
);
3376 function Then_Statements
3377 (N
: Node_Id
) return List_Id
is
3379 pragma Assert
(False
3380 or else NT
(N
).Nkind
= N_Elsif_Part
3381 or else NT
(N
).Nkind
= N_If_Statement
);
3383 end Then_Statements
;
3385 function Treat_Fixed_As_Integer
3386 (N
: Node_Id
) return Boolean is
3388 pragma Assert
(False
3389 or else NT
(N
).Nkind
= N_Op_Divide
3390 or else NT
(N
).Nkind
= N_Op_Mod
3391 or else NT
(N
).Nkind
= N_Op_Multiply
3392 or else NT
(N
).Nkind
= N_Op_Rem
);
3394 end Treat_Fixed_As_Integer
;
3396 function Triggering_Alternative
3397 (N
: Node_Id
) return Node_Id
is
3399 pragma Assert
(False
3400 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3402 end Triggering_Alternative
;
3404 function Triggering_Statement
3405 (N
: Node_Id
) return Node_Id
is
3407 pragma Assert
(False
3408 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3410 end Triggering_Statement
;
3413 (N
: Node_Id
) return Elist_Id
is
3415 pragma Assert
(False
3416 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3420 function Type_Definition
3421 (N
: Node_Id
) return Node_Id
is
3423 pragma Assert
(False
3424 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3426 end Type_Definition
;
3428 function Uneval_Old_Accept
3429 (N
: Node_Id
) return Boolean is
3431 pragma Assert
(False
3432 or else NT
(N
).Nkind
= N_Pragma
);
3434 end Uneval_Old_Accept
;
3436 function Uneval_Old_Warn
3437 (N
: Node_Id
) return Boolean is
3439 pragma Assert
(False
3440 or else NT
(N
).Nkind
= N_Pragma
);
3442 end Uneval_Old_Warn
;
3445 (N
: Node_Id
) return Node_Id
is
3447 pragma Assert
(False
3448 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3452 function Unknown_Discriminants_Present
3453 (N
: Node_Id
) return Boolean is
3455 pragma Assert
(False
3456 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3457 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3458 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3459 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3461 end Unknown_Discriminants_Present
;
3463 function Unreferenced_In_Spec
3464 (N
: Node_Id
) return Boolean is
3466 pragma Assert
(False
3467 or else NT
(N
).Nkind
= N_With_Clause
);
3469 end Unreferenced_In_Spec
;
3471 function Variant_Part
3472 (N
: Node_Id
) return Node_Id
is
3474 pragma Assert
(False
3475 or else NT
(N
).Nkind
= N_Component_List
);
3480 (N
: Node_Id
) return List_Id
is
3482 pragma Assert
(False
3483 or else NT
(N
).Nkind
= N_Variant_Part
);
3487 function Visible_Declarations
3488 (N
: Node_Id
) return List_Id
is
3490 pragma Assert
(False
3491 or else NT
(N
).Nkind
= N_Package_Specification
3492 or else NT
(N
).Nkind
= N_Protected_Definition
3493 or else NT
(N
).Nkind
= N_Task_Definition
);
3495 end Visible_Declarations
;
3497 function Uninitialized_Variable
3498 (N
: Node_Id
) return Node_Id
is
3500 pragma Assert
(False
3501 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3502 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3504 end Uninitialized_Variable
;
3506 function Used_Operations
3507 (N
: Node_Id
) return Elist_Id
is
3509 pragma Assert
(False
3510 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3512 end Used_Operations
;
3514 function Was_Attribute_Reference
3515 (N
: Node_Id
) return Boolean is
3517 pragma Assert
(False
3518 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3520 end Was_Attribute_Reference
;
3522 function Was_Expression_Function
3523 (N
: Node_Id
) return Boolean is
3525 pragma Assert
(False
3526 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3528 end Was_Expression_Function
;
3530 function Was_Originally_Stub
3531 (N
: Node_Id
) return Boolean is
3533 pragma Assert
(False
3534 or else NT
(N
).Nkind
= N_Package_Body
3535 or else NT
(N
).Nkind
= N_Protected_Body
3536 or else NT
(N
).Nkind
= N_Subprogram_Body
3537 or else NT
(N
).Nkind
= N_Task_Body
);
3539 end Was_Originally_Stub
;
3541 --------------------------
3542 -- Field Set Procedures --
3543 --------------------------
3545 procedure Set_Abort_Present
3546 (N
: Node_Id
; Val
: Boolean := True) is
3548 pragma Assert
(False
3549 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3550 Set_Flag15
(N
, Val
);
3551 end Set_Abort_Present
;
3553 procedure Set_Abortable_Part
3554 (N
: Node_Id
; Val
: Node_Id
) is
3556 pragma Assert
(False
3557 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3558 Set_Node2_With_Parent
(N
, Val
);
3559 end Set_Abortable_Part
;
3561 procedure Set_Abstract_Present
3562 (N
: Node_Id
; Val
: Boolean := True) is
3564 pragma Assert
(False
3565 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3566 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3567 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3568 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3569 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3570 or else NT
(N
).Nkind
= N_Record_Definition
);
3572 end Set_Abstract_Present
;
3574 procedure Set_Accept_Handler_Records
3575 (N
: Node_Id
; Val
: List_Id
) is
3577 pragma Assert
(False
3578 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3579 Set_List5
(N
, Val
); -- semantic field, no parent set
3580 end Set_Accept_Handler_Records
;
3582 procedure Set_Accept_Statement
3583 (N
: Node_Id
; Val
: Node_Id
) is
3585 pragma Assert
(False
3586 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3587 Set_Node2_With_Parent
(N
, Val
);
3588 end Set_Accept_Statement
;
3590 procedure Set_Access_Definition
3591 (N
: Node_Id
; Val
: Node_Id
) is
3593 pragma Assert
(False
3594 or else NT
(N
).Nkind
= N_Component_Definition
3595 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3596 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3597 Set_Node3_With_Parent
(N
, Val
);
3598 end Set_Access_Definition
;
3600 procedure Set_Access_To_Subprogram_Definition
3601 (N
: Node_Id
; Val
: Node_Id
) is
3603 pragma Assert
(False
3604 or else NT
(N
).Nkind
= N_Access_Definition
);
3605 Set_Node3_With_Parent
(N
, Val
);
3606 end Set_Access_To_Subprogram_Definition
;
3608 procedure Set_Access_Types_To_Process
3609 (N
: Node_Id
; Val
: Elist_Id
) is
3611 pragma Assert
(False
3612 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3613 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3614 end Set_Access_Types_To_Process
;
3616 procedure Set_Actions
3617 (N
: Node_Id
; Val
: List_Id
) is
3619 pragma Assert
(False
3620 or else NT
(N
).Nkind
= N_And_Then
3621 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3622 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3623 or else NT
(N
).Nkind
= N_Compound_Statement
3624 or else NT
(N
).Nkind
= N_Expression_With_Actions
3625 or else NT
(N
).Nkind
= N_Freeze_Entity
3626 or else NT
(N
).Nkind
= N_Or_Else
);
3627 Set_List1_With_Parent
(N
, Val
);
3630 procedure Set_Activation_Chain_Entity
3631 (N
: Node_Id
; Val
: Node_Id
) is
3633 pragma Assert
(False
3634 or else NT
(N
).Nkind
= N_Block_Statement
3635 or else NT
(N
).Nkind
= N_Entry_Body
3636 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3637 or else NT
(N
).Nkind
= N_Package_Declaration
3638 or else NT
(N
).Nkind
= N_Subprogram_Body
3639 or else NT
(N
).Nkind
= N_Task_Body
);
3640 Set_Node3
(N
, Val
); -- semantic field, no parent set
3641 end Set_Activation_Chain_Entity
;
3643 procedure Set_Acts_As_Spec
3644 (N
: Node_Id
; Val
: Boolean := True) is
3646 pragma Assert
(False
3647 or else NT
(N
).Nkind
= N_Compilation_Unit
3648 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3650 end Set_Acts_As_Spec
;
3652 procedure Set_Actual_Designated_Subtype
3653 (N
: Node_Id
; Val
: Node_Id
) is
3655 pragma Assert
(False
3656 or else NT
(N
).Nkind
= N_Explicit_Dereference
3657 or else NT
(N
).Nkind
= N_Free_Statement
);
3659 end Set_Actual_Designated_Subtype
;
3661 procedure Set_Address_Warning_Posted
3662 (N
: Node_Id
; Val
: Boolean := True) is
3664 pragma Assert
(False
3665 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3666 Set_Flag18
(N
, Val
);
3667 end Set_Address_Warning_Posted
;
3669 procedure Set_Aggregate_Bounds
3670 (N
: Node_Id
; Val
: Node_Id
) is
3672 pragma Assert
(False
3673 or else NT
(N
).Nkind
= N_Aggregate
);
3674 Set_Node3
(N
, Val
); -- semantic field, no parent set
3675 end Set_Aggregate_Bounds
;
3677 procedure Set_Aliased_Present
3678 (N
: Node_Id
; Val
: Boolean := True) is
3680 pragma Assert
(False
3681 or else NT
(N
).Nkind
= N_Component_Definition
3682 or else NT
(N
).Nkind
= N_Object_Declaration
3683 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3685 end Set_Aliased_Present
;
3687 procedure Set_Alloc_For_BIP_Return
3688 (N
: Node_Id
; Val
: Boolean := True) is
3690 pragma Assert
(False
3691 or else NT
(N
).Nkind
= N_Allocator
);
3693 end Set_Alloc_For_BIP_Return
;
3695 procedure Set_All_Others
3696 (N
: Node_Id
; Val
: Boolean := True) is
3698 pragma Assert
(False
3699 or else NT
(N
).Nkind
= N_Others_Choice
);
3700 Set_Flag11
(N
, Val
);
3703 procedure Set_All_Present
3704 (N
: Node_Id
; Val
: Boolean := True) is
3706 pragma Assert
(False
3707 or else NT
(N
).Nkind
= N_Access_Definition
3708 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3709 or else NT
(N
).Nkind
= N_Quantified_Expression
3710 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3711 Set_Flag15
(N
, Val
);
3712 end Set_All_Present
;
3714 procedure Set_Alternatives
3715 (N
: Node_Id
; Val
: List_Id
) is
3717 pragma Assert
(False
3718 or else NT
(N
).Nkind
= N_Case_Expression
3719 or else NT
(N
).Nkind
= N_Case_Statement
3720 or else NT
(N
).Nkind
= N_In
3721 or else NT
(N
).Nkind
= N_Not_In
);
3722 Set_List4_With_Parent
(N
, Val
);
3723 end Set_Alternatives
;
3725 procedure Set_Ancestor_Part
3726 (N
: Node_Id
; Val
: Node_Id
) is
3728 pragma Assert
(False
3729 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3730 Set_Node3_With_Parent
(N
, Val
);
3731 end Set_Ancestor_Part
;
3733 procedure Set_Atomic_Sync_Required
3734 (N
: Node_Id
; Val
: Boolean := True) is
3736 pragma Assert
(False
3737 or else NT
(N
).Nkind
= N_Expanded_Name
3738 or else NT
(N
).Nkind
= N_Explicit_Dereference
3739 or else NT
(N
).Nkind
= N_Identifier
3740 or else NT
(N
).Nkind
= N_Indexed_Component
3741 or else NT
(N
).Nkind
= N_Selected_Component
);
3742 Set_Flag14
(N
, Val
);
3743 end Set_Atomic_Sync_Required
;
3745 procedure Set_Array_Aggregate
3746 (N
: Node_Id
; Val
: Node_Id
) is
3748 pragma Assert
(False
3749 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3750 Set_Node3_With_Parent
(N
, Val
);
3751 end Set_Array_Aggregate
;
3753 procedure Set_Aspect_Rep_Item
3754 (N
: Node_Id
; Val
: Node_Id
) is
3756 pragma Assert
(False
3757 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3759 end Set_Aspect_Rep_Item
;
3761 procedure Set_Assignment_OK
3762 (N
: Node_Id
; Val
: Boolean := True) is
3764 pragma Assert
(False
3765 or else NT
(N
).Nkind
= N_Object_Declaration
3766 or else NT
(N
).Nkind
in N_Subexpr
);
3767 Set_Flag15
(N
, Val
);
3768 end Set_Assignment_OK
;
3770 procedure Set_Associated_Node
3771 (N
: Node_Id
; Val
: Node_Id
) is
3773 pragma Assert
(False
3774 or else NT
(N
).Nkind
in N_Has_Entity
3775 or else NT
(N
).Nkind
= N_Aggregate
3776 or else NT
(N
).Nkind
= N_Extension_Aggregate
3777 or else NT
(N
).Nkind
= N_Selected_Component
3778 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3779 Set_Node4
(N
, Val
); -- semantic field, no parent set
3780 end Set_Associated_Node
;
3782 procedure Set_At_End_Proc
3783 (N
: Node_Id
; Val
: Node_Id
) is
3785 pragma Assert
(False
3786 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3788 end Set_At_End_Proc
;
3790 procedure Set_Attribute_Name
3791 (N
: Node_Id
; Val
: Name_Id
) is
3793 pragma Assert
(False
3794 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3796 end Set_Attribute_Name
;
3798 procedure Set_Aux_Decls_Node
3799 (N
: Node_Id
; Val
: Node_Id
) is
3801 pragma Assert
(False
3802 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3803 Set_Node5_With_Parent
(N
, Val
);
3804 end Set_Aux_Decls_Node
;
3806 procedure Set_Backwards_OK
3807 (N
: Node_Id
; Val
: Boolean := True) is
3809 pragma Assert
(False
3810 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3812 end Set_Backwards_OK
;
3814 procedure Set_Bad_Is_Detected
3815 (N
: Node_Id
; Val
: Boolean := True) is
3817 pragma Assert
(False
3818 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3819 Set_Flag15
(N
, Val
);
3820 end Set_Bad_Is_Detected
;
3822 procedure Set_Body_Required
3823 (N
: Node_Id
; Val
: Boolean := True) is
3825 pragma Assert
(False
3826 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3827 Set_Flag13
(N
, Val
);
3828 end Set_Body_Required
;
3830 procedure Set_Body_To_Inline
3831 (N
: Node_Id
; Val
: Node_Id
) is
3833 pragma Assert
(False
3834 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3836 end Set_Body_To_Inline
;
3838 procedure Set_Box_Present
3839 (N
: Node_Id
; Val
: Boolean := True) is
3841 pragma Assert
(False
3842 or else NT
(N
).Nkind
= N_Component_Association
3843 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3844 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3845 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3846 or else NT
(N
).Nkind
= N_Generic_Association
3847 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3848 Set_Flag15
(N
, Val
);
3849 end Set_Box_Present
;
3851 procedure Set_By_Ref
3852 (N
: Node_Id
; Val
: Boolean := True) is
3854 pragma Assert
(False
3855 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3856 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3860 procedure Set_Char_Literal_Value
3861 (N
: Node_Id
; Val
: Uint
) is
3863 pragma Assert
(False
3864 or else NT
(N
).Nkind
= N_Character_Literal
);
3866 end Set_Char_Literal_Value
;
3869 (N
: Node_Id
; Val
: Name_Id
) is
3871 pragma Assert
(False
3872 or else NT
(N
).Nkind
in N_Has_Chars
);
3876 procedure Set_Check_Address_Alignment
3877 (N
: Node_Id
; Val
: Boolean := True) is
3879 pragma Assert
(False
3880 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3881 Set_Flag11
(N
, Val
);
3882 end Set_Check_Address_Alignment
;
3884 procedure Set_Choice_Parameter
3885 (N
: Node_Id
; Val
: Node_Id
) is
3887 pragma Assert
(False
3888 or else NT
(N
).Nkind
= N_Exception_Handler
);
3889 Set_Node2_With_Parent
(N
, Val
);
3890 end Set_Choice_Parameter
;
3892 procedure Set_Choices
3893 (N
: Node_Id
; Val
: List_Id
) is
3895 pragma Assert
(False
3896 or else NT
(N
).Nkind
= N_Component_Association
);
3897 Set_List1_With_Parent
(N
, Val
);
3900 procedure Set_Class_Present
3901 (N
: Node_Id
; Val
: Boolean := True) is
3903 pragma Assert
(False
3904 or else NT
(N
).Nkind
= N_Aspect_Specification
3905 or else NT
(N
).Nkind
= N_Pragma
);
3907 end Set_Class_Present
;
3909 procedure Set_Classifications
3910 (N
: Node_Id
; Val
: Node_Id
) is
3912 pragma Assert
(False
3913 or else NT
(N
).Nkind
= N_Contract
);
3914 Set_Node3
(N
, Val
); -- semantic field, no parent set
3915 end Set_Classifications
;
3917 procedure Set_Cleanup_Actions
3918 (N
: Node_Id
; Val
: List_Id
) is
3920 pragma Assert
(False
3921 or else NT
(N
).Nkind
= N_Block_Statement
);
3922 Set_List5
(N
, Val
); -- semantic field, no parent set
3923 end Set_Cleanup_Actions
;
3925 procedure Set_Comes_From_Extended_Return_Statement
3926 (N
: Node_Id
; Val
: Boolean := True) is
3928 pragma Assert
(False
3929 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3930 Set_Flag18
(N
, Val
);
3931 end Set_Comes_From_Extended_Return_Statement
;
3933 procedure Set_Compile_Time_Known_Aggregate
3934 (N
: Node_Id
; Val
: Boolean := True) is
3936 pragma Assert
(False
3937 or else NT
(N
).Nkind
= N_Aggregate
);
3938 Set_Flag18
(N
, Val
);
3939 end Set_Compile_Time_Known_Aggregate
;
3941 procedure Set_Component_Associations
3942 (N
: Node_Id
; Val
: List_Id
) is
3944 pragma Assert
(False
3945 or else NT
(N
).Nkind
= N_Aggregate
3946 or else NT
(N
).Nkind
= N_Delta_Aggregate
3947 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3948 Set_List2_With_Parent
(N
, Val
);
3949 end Set_Component_Associations
;
3951 procedure Set_Component_Clauses
3952 (N
: Node_Id
; Val
: List_Id
) is
3954 pragma Assert
(False
3955 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3956 Set_List3_With_Parent
(N
, Val
);
3957 end Set_Component_Clauses
;
3959 procedure Set_Component_Definition
3960 (N
: Node_Id
; Val
: Node_Id
) is
3962 pragma Assert
(False
3963 or else NT
(N
).Nkind
= N_Component_Declaration
3964 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3965 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3966 Set_Node4_With_Parent
(N
, Val
);
3967 end Set_Component_Definition
;
3969 procedure Set_Component_Items
3970 (N
: Node_Id
; Val
: List_Id
) is
3972 pragma Assert
(False
3973 or else NT
(N
).Nkind
= N_Component_List
);
3974 Set_List3_With_Parent
(N
, Val
);
3975 end Set_Component_Items
;
3977 procedure Set_Component_List
3978 (N
: Node_Id
; Val
: Node_Id
) is
3980 pragma Assert
(False
3981 or else NT
(N
).Nkind
= N_Record_Definition
3982 or else NT
(N
).Nkind
= N_Variant
);
3983 Set_Node1_With_Parent
(N
, Val
);
3984 end Set_Component_List
;
3986 procedure Set_Component_Name
3987 (N
: Node_Id
; Val
: Node_Id
) is
3989 pragma Assert
(False
3990 or else NT
(N
).Nkind
= N_Component_Clause
);
3991 Set_Node1_With_Parent
(N
, Val
);
3992 end Set_Component_Name
;
3994 procedure Set_Componentwise_Assignment
3995 (N
: Node_Id
; Val
: Boolean := True) is
3997 pragma Assert
(False
3998 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3999 Set_Flag14
(N
, Val
);
4000 end Set_Componentwise_Assignment
;
4002 procedure Set_Condition
4003 (N
: Node_Id
; Val
: Node_Id
) is
4005 pragma Assert
(False
4006 or else NT
(N
).Nkind
= N_Accept_Alternative
4007 or else NT
(N
).Nkind
= N_Delay_Alternative
4008 or else NT
(N
).Nkind
= N_Elsif_Part
4009 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
4010 or else NT
(N
).Nkind
= N_Exit_Statement
4011 or else NT
(N
).Nkind
= N_If_Statement
4012 or else NT
(N
).Nkind
= N_Iteration_Scheme
4013 or else NT
(N
).Nkind
= N_Quantified_Expression
4014 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
4015 or else NT
(N
).Nkind
= N_Raise_Program_Error
4016 or else NT
(N
).Nkind
= N_Raise_Storage_Error
4017 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
4018 Set_Node1_With_Parent
(N
, Val
);
4021 procedure Set_Condition_Actions
4022 (N
: Node_Id
; Val
: List_Id
) is
4024 pragma Assert
(False
4025 or else NT
(N
).Nkind
= N_Elsif_Part
4026 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
4027 Set_List3
(N
, Val
); -- semantic field, no parent set
4028 end Set_Condition_Actions
;
4030 procedure Set_Config_Pragmas
4031 (N
: Node_Id
; Val
: List_Id
) is
4033 pragma Assert
(False
4034 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4035 Set_List4_With_Parent
(N
, Val
);
4036 end Set_Config_Pragmas
;
4038 procedure Set_Constant_Present
4039 (N
: Node_Id
; Val
: Boolean := True) is
4041 pragma Assert
(False
4042 or else NT
(N
).Nkind
= N_Access_Definition
4043 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
4044 or else NT
(N
).Nkind
= N_Object_Declaration
);
4045 Set_Flag17
(N
, Val
);
4046 end Set_Constant_Present
;
4048 procedure Set_Constraint
4049 (N
: Node_Id
; Val
: Node_Id
) is
4051 pragma Assert
(False
4052 or else NT
(N
).Nkind
= N_Subtype_Indication
);
4053 Set_Node3_With_Parent
(N
, Val
);
4056 procedure Set_Constraints
4057 (N
: Node_Id
; Val
: List_Id
) is
4059 pragma Assert
(False
4060 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
4061 Set_List1_With_Parent
(N
, Val
);
4062 end Set_Constraints
;
4064 procedure Set_Context_Installed
4065 (N
: Node_Id
; Val
: Boolean := True) is
4067 pragma Assert
(False
4068 or else NT
(N
).Nkind
= N_With_Clause
);
4069 Set_Flag13
(N
, Val
);
4070 end Set_Context_Installed
;
4072 procedure Set_Context_Items
4073 (N
: Node_Id
; Val
: List_Id
) is
4075 pragma Assert
(False
4076 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4077 Set_List1_With_Parent
(N
, Val
);
4078 end Set_Context_Items
;
4080 procedure Set_Context_Pending
4081 (N
: Node_Id
; Val
: Boolean := True) is
4083 pragma Assert
(False
4084 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4085 Set_Flag16
(N
, Val
);
4086 end Set_Context_Pending
;
4088 procedure Set_Contract_Test_Cases
4089 (N
: Node_Id
; Val
: Node_Id
) is
4091 pragma Assert
(False
4092 or else NT
(N
).Nkind
= N_Contract
);
4093 Set_Node2
(N
, Val
); -- semantic field, no parent set
4094 end Set_Contract_Test_Cases
;
4096 procedure Set_Controlling_Argument
4097 (N
: Node_Id
; Val
: Node_Id
) is
4099 pragma Assert
(False
4100 or else NT
(N
).Nkind
= N_Function_Call
4101 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4102 Set_Node1
(N
, Val
); -- semantic field, no parent set
4103 end Set_Controlling_Argument
;
4105 procedure Set_Conversion_OK
4106 (N
: Node_Id
; Val
: Boolean := True) is
4108 pragma Assert
(False
4109 or else NT
(N
).Nkind
= N_Type_Conversion
);
4110 Set_Flag14
(N
, Val
);
4111 end Set_Conversion_OK
;
4113 procedure Set_Convert_To_Return_False
4114 (N
: Node_Id
; Val
: Boolean := True) is
4116 pragma Assert
(False
4117 or else NT
(N
).Nkind
= N_Raise_Expression
);
4118 Set_Flag13
(N
, Val
);
4119 end Set_Convert_To_Return_False
;
4121 procedure Set_Corresponding_Aspect
4122 (N
: Node_Id
; Val
: Node_Id
) is
4124 pragma Assert
(False
4125 or else NT
(N
).Nkind
= N_Pragma
);
4127 end Set_Corresponding_Aspect
;
4129 procedure Set_Corresponding_Body
4130 (N
: Node_Id
; Val
: Node_Id
) is
4132 pragma Assert
(False
4133 or else NT
(N
).Nkind
= N_Entry_Declaration
4134 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4135 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4136 or else NT
(N
).Nkind
= N_Package_Body_Stub
4137 or else NT
(N
).Nkind
= N_Package_Declaration
4138 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4139 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4140 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4141 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4142 or else NT
(N
).Nkind
= N_Task_Body_Stub
4143 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4144 Set_Node5
(N
, Val
); -- semantic field, no parent set
4145 end Set_Corresponding_Body
;
4147 procedure Set_Corresponding_Formal_Spec
4148 (N
: Node_Id
; Val
: Node_Id
) is
4150 pragma Assert
(False
4151 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4152 Set_Node3
(N
, Val
); -- semantic field, no parent set
4153 end Set_Corresponding_Formal_Spec
;
4155 procedure Set_Corresponding_Generic_Association
4156 (N
: Node_Id
; Val
: Node_Id
) is
4158 pragma Assert
(False
4159 or else NT
(N
).Nkind
= N_Object_Declaration
4160 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4161 Set_Node5
(N
, Val
); -- semantic field, no parent set
4162 end Set_Corresponding_Generic_Association
;
4164 procedure Set_Corresponding_Integer_Value
4165 (N
: Node_Id
; Val
: Uint
) is
4167 pragma Assert
(False
4168 or else NT
(N
).Nkind
= N_Real_Literal
);
4169 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4170 end Set_Corresponding_Integer_Value
;
4172 procedure Set_Corresponding_Spec
4173 (N
: Node_Id
; Val
: Entity_Id
) is
4175 pragma Assert
(False
4176 or else NT
(N
).Nkind
= N_Expression_Function
4177 or else NT
(N
).Nkind
= N_Package_Body
4178 or else NT
(N
).Nkind
= N_Protected_Body
4179 or else NT
(N
).Nkind
= N_Subprogram_Body
4180 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4181 or else NT
(N
).Nkind
= N_Task_Body
4182 or else NT
(N
).Nkind
= N_With_Clause
);
4183 Set_Node5
(N
, Val
); -- semantic field, no parent set
4184 end Set_Corresponding_Spec
;
4186 procedure Set_Corresponding_Spec_Of_Stub
4187 (N
: Node_Id
; Val
: Entity_Id
) is
4189 pragma Assert
(False
4190 or else NT
(N
).Nkind
= N_Package_Body_Stub
4191 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4192 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4193 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4194 Set_Node2
(N
, Val
); -- semantic field, no parent set
4195 end Set_Corresponding_Spec_Of_Stub
;
4197 procedure Set_Corresponding_Stub
4198 (N
: Node_Id
; Val
: Node_Id
) is
4200 pragma Assert
(False
4201 or else NT
(N
).Nkind
= N_Subunit
);
4203 end Set_Corresponding_Stub
;
4205 procedure Set_Dcheck_Function
4206 (N
: Node_Id
; Val
: Entity_Id
) is
4208 pragma Assert
(False
4209 or else NT
(N
).Nkind
= N_Variant
);
4210 Set_Node5
(N
, Val
); -- semantic field, no parent set
4211 end Set_Dcheck_Function
;
4213 procedure Set_Declarations
4214 (N
: Node_Id
; Val
: List_Id
) is
4216 pragma Assert
(False
4217 or else NT
(N
).Nkind
= N_Accept_Statement
4218 or else NT
(N
).Nkind
= N_Block_Statement
4219 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4220 or else NT
(N
).Nkind
= N_Entry_Body
4221 or else NT
(N
).Nkind
= N_Package_Body
4222 or else NT
(N
).Nkind
= N_Protected_Body
4223 or else NT
(N
).Nkind
= N_Subprogram_Body
4224 or else NT
(N
).Nkind
= N_Task_Body
);
4225 Set_List2_With_Parent
(N
, Val
);
4226 end Set_Declarations
;
4228 procedure Set_Default_Expression
4229 (N
: Node_Id
; Val
: Node_Id
) is
4231 pragma Assert
(False
4232 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4233 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4234 Set_Node5
(N
, Val
); -- semantic field, no parent set
4235 end Set_Default_Expression
;
4237 procedure Set_Default_Storage_Pool
4238 (N
: Node_Id
; Val
: Node_Id
) is
4240 pragma Assert
(False
4241 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4242 Set_Node3
(N
, Val
); -- semantic field, no parent set
4243 end Set_Default_Storage_Pool
;
4245 procedure Set_Default_Name
4246 (N
: Node_Id
; Val
: Node_Id
) is
4248 pragma Assert
(False
4249 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4250 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4251 Set_Node2_With_Parent
(N
, Val
);
4252 end Set_Default_Name
;
4254 procedure Set_Defining_Identifier
4255 (N
: Node_Id
; Val
: Entity_Id
) is
4257 pragma Assert
(False
4258 or else NT
(N
).Nkind
= N_Component_Declaration
4259 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4260 or else NT
(N
).Nkind
= N_Discriminant_Specification
4261 or else NT
(N
).Nkind
= N_Entry_Body
4262 or else NT
(N
).Nkind
= N_Entry_Declaration
4263 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4264 or else NT
(N
).Nkind
= N_Exception_Declaration
4265 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4266 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4267 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4268 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4269 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4270 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4271 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4272 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4273 or else NT
(N
).Nkind
= N_Iterator_Specification
4274 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4275 or else NT
(N
).Nkind
= N_Number_Declaration
4276 or else NT
(N
).Nkind
= N_Object_Declaration
4277 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4278 or else NT
(N
).Nkind
= N_Package_Body_Stub
4279 or else NT
(N
).Nkind
= N_Parameter_Specification
4280 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4281 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4282 or else NT
(N
).Nkind
= N_Protected_Body
4283 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4284 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4285 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4286 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4287 or else NT
(N
).Nkind
= N_Subtype_Declaration
4288 or else NT
(N
).Nkind
= N_Task_Body
4289 or else NT
(N
).Nkind
= N_Task_Body_Stub
4290 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4291 Set_Node1_With_Parent
(N
, Val
);
4292 end Set_Defining_Identifier
;
4294 procedure Set_Defining_Unit_Name
4295 (N
: Node_Id
; Val
: Node_Id
) is
4297 pragma Assert
(False
4298 or else NT
(N
).Nkind
= N_Function_Instantiation
4299 or else NT
(N
).Nkind
= N_Function_Specification
4300 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4301 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4302 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4303 or else NT
(N
).Nkind
= N_Package_Body
4304 or else NT
(N
).Nkind
= N_Package_Instantiation
4305 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4306 or else NT
(N
).Nkind
= N_Package_Specification
4307 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4308 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4309 Set_Node1_With_Parent
(N
, Val
);
4310 end Set_Defining_Unit_Name
;
4312 procedure Set_Delay_Alternative
4313 (N
: Node_Id
; Val
: Node_Id
) is
4315 pragma Assert
(False
4316 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4317 Set_Node4_With_Parent
(N
, Val
);
4318 end Set_Delay_Alternative
;
4320 procedure Set_Delay_Statement
4321 (N
: Node_Id
; Val
: Node_Id
) is
4323 pragma Assert
(False
4324 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4325 Set_Node2_With_Parent
(N
, Val
);
4326 end Set_Delay_Statement
;
4328 procedure Set_Delta_Expression
4329 (N
: Node_Id
; Val
: Node_Id
) is
4331 pragma Assert
(False
4332 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4333 or else NT
(N
).Nkind
= N_Delta_Constraint
4334 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4335 Set_Node3_With_Parent
(N
, Val
);
4336 end Set_Delta_Expression
;
4338 procedure Set_Digits_Expression
4339 (N
: Node_Id
; Val
: Node_Id
) is
4341 pragma Assert
(False
4342 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4343 or else NT
(N
).Nkind
= N_Digits_Constraint
4344 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4345 Set_Node2_With_Parent
(N
, Val
);
4346 end Set_Digits_Expression
;
4348 procedure Set_Discr_Check_Funcs_Built
4349 (N
: Node_Id
; Val
: Boolean := True) is
4351 pragma Assert
(False
4352 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4353 Set_Flag11
(N
, Val
);
4354 end Set_Discr_Check_Funcs_Built
;
4356 procedure Set_Discrete_Choices
4357 (N
: Node_Id
; Val
: List_Id
) is
4359 pragma Assert
(False
4360 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4361 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4362 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4363 or else NT
(N
).Nkind
= N_Variant
);
4364 Set_List4_With_Parent
(N
, Val
);
4365 end Set_Discrete_Choices
;
4367 procedure Set_Discrete_Range
4368 (N
: Node_Id
; Val
: Node_Id
) is
4370 pragma Assert
(False
4371 or else NT
(N
).Nkind
= N_Slice
);
4372 Set_Node4_With_Parent
(N
, Val
);
4373 end Set_Discrete_Range
;
4375 procedure Set_Discrete_Subtype_Definition
4376 (N
: Node_Id
; Val
: Node_Id
) is
4378 pragma Assert
(False
4379 or else NT
(N
).Nkind
= N_Entry_Declaration
4380 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4381 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4382 Set_Node4_With_Parent
(N
, Val
);
4383 end Set_Discrete_Subtype_Definition
;
4385 procedure Set_Discrete_Subtype_Definitions
4386 (N
: Node_Id
; Val
: List_Id
) is
4388 pragma Assert
(False
4389 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4390 Set_List2_With_Parent
(N
, Val
);
4391 end Set_Discrete_Subtype_Definitions
;
4393 procedure Set_Discriminant_Specifications
4394 (N
: Node_Id
; Val
: List_Id
) is
4396 pragma Assert
(False
4397 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4398 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4399 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4400 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4401 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4402 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4403 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4404 Set_List4_With_Parent
(N
, Val
);
4405 end Set_Discriminant_Specifications
;
4407 procedure Set_Discriminant_Type
4408 (N
: Node_Id
; Val
: Node_Id
) is
4410 pragma Assert
(False
4411 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4412 Set_Node5_With_Parent
(N
, Val
);
4413 end Set_Discriminant_Type
;
4415 procedure Set_Do_Accessibility_Check
4416 (N
: Node_Id
; Val
: Boolean := True) is
4418 pragma Assert
(False
4419 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4420 Set_Flag13
(N
, Val
);
4421 end Set_Do_Accessibility_Check
;
4423 procedure Set_Do_Discriminant_Check
4424 (N
: Node_Id
; Val
: Boolean := True) is
4426 pragma Assert
(False
4427 or else NT
(N
).Nkind
= N_Assignment_Statement
4428 or else NT
(N
).Nkind
= N_Selected_Component
4429 or else NT
(N
).Nkind
= N_Type_Conversion
);
4431 end Set_Do_Discriminant_Check
;
4433 procedure Set_Do_Division_Check
4434 (N
: Node_Id
; Val
: Boolean := True) is
4436 pragma Assert
(False
4437 or else NT
(N
).Nkind
= N_Op_Divide
4438 or else NT
(N
).Nkind
= N_Op_Mod
4439 or else NT
(N
).Nkind
= N_Op_Rem
);
4440 Set_Flag13
(N
, Val
);
4441 end Set_Do_Division_Check
;
4443 procedure Set_Do_Length_Check
4444 (N
: Node_Id
; Val
: Boolean := True) is
4446 pragma Assert
(False
4447 or else NT
(N
).Nkind
= N_Assignment_Statement
4448 or else NT
(N
).Nkind
= N_Op_And
4449 or else NT
(N
).Nkind
= N_Op_Or
4450 or else NT
(N
).Nkind
= N_Op_Xor
4451 or else NT
(N
).Nkind
= N_Type_Conversion
);
4453 end Set_Do_Length_Check
;
4455 procedure Set_Do_Overflow_Check
4456 (N
: Node_Id
; Val
: Boolean := True) is
4458 pragma Assert
(False
4459 or else NT
(N
).Nkind
in N_Op
4460 or else NT
(N
).Nkind
= N_Attribute_Reference
4461 or else NT
(N
).Nkind
= N_Case_Expression
4462 or else NT
(N
).Nkind
= N_If_Expression
4463 or else NT
(N
).Nkind
= N_Type_Conversion
);
4464 Set_Flag17
(N
, Val
);
4465 end Set_Do_Overflow_Check
;
4467 procedure Set_Do_Range_Check
4468 (N
: Node_Id
; Val
: Boolean := True) is
4470 pragma Assert
(False
4471 or else NT
(N
).Nkind
in N_Subexpr
);
4473 end Set_Do_Range_Check
;
4475 procedure Set_Do_Storage_Check
4476 (N
: Node_Id
; Val
: Boolean := True) is
4478 pragma Assert
(False
4479 or else NT
(N
).Nkind
= N_Allocator
4480 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4481 Set_Flag17
(N
, Val
);
4482 end Set_Do_Storage_Check
;
4484 procedure Set_Do_Tag_Check
4485 (N
: Node_Id
; Val
: Boolean := True) is
4487 pragma Assert
(False
4488 or else NT
(N
).Nkind
= N_Assignment_Statement
4489 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4490 or else NT
(N
).Nkind
= N_Function_Call
4491 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4492 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4493 or else NT
(N
).Nkind
= N_Type_Conversion
);
4494 Set_Flag13
(N
, Val
);
4495 end Set_Do_Tag_Check
;
4497 procedure Set_Elaborate_All_Desirable
4498 (N
: Node_Id
; Val
: Boolean := True) is
4500 pragma Assert
(False
4501 or else NT
(N
).Nkind
= N_With_Clause
);
4503 end Set_Elaborate_All_Desirable
;
4505 procedure Set_Elaborate_All_Present
4506 (N
: Node_Id
; Val
: Boolean := True) is
4508 pragma Assert
(False
4509 or else NT
(N
).Nkind
= N_With_Clause
);
4510 Set_Flag14
(N
, Val
);
4511 end Set_Elaborate_All_Present
;
4513 procedure Set_Elaborate_Desirable
4514 (N
: Node_Id
; Val
: Boolean := True) is
4516 pragma Assert
(False
4517 or else NT
(N
).Nkind
= N_With_Clause
);
4518 Set_Flag11
(N
, Val
);
4519 end Set_Elaborate_Desirable
;
4521 procedure Set_Elaborate_Present
4522 (N
: Node_Id
; Val
: Boolean := True) is
4524 pragma Assert
(False
4525 or else NT
(N
).Nkind
= N_With_Clause
);
4527 end Set_Elaborate_Present
;
4529 procedure Set_Else_Actions
4530 (N
: Node_Id
; Val
: List_Id
) is
4532 pragma Assert
(False
4533 or else NT
(N
).Nkind
= N_If_Expression
);
4534 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4535 end Set_Else_Actions
;
4537 procedure Set_Else_Statements
4538 (N
: Node_Id
; Val
: List_Id
) is
4540 pragma Assert
(False
4541 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4542 or else NT
(N
).Nkind
= N_If_Statement
4543 or else NT
(N
).Nkind
= N_Selective_Accept
);
4544 Set_List4_With_Parent
(N
, Val
);
4545 end Set_Else_Statements
;
4547 procedure Set_Elsif_Parts
4548 (N
: Node_Id
; Val
: List_Id
) is
4550 pragma Assert
(False
4551 or else NT
(N
).Nkind
= N_If_Statement
);
4552 Set_List3_With_Parent
(N
, Val
);
4553 end Set_Elsif_Parts
;
4555 procedure Set_Enclosing_Variant
4556 (N
: Node_Id
; Val
: Node_Id
) is
4558 pragma Assert
(False
4559 or else NT
(N
).Nkind
= N_Variant
);
4560 Set_Node2
(N
, Val
); -- semantic field, no parent set
4561 end Set_Enclosing_Variant
;
4563 procedure Set_End_Label
4564 (N
: Node_Id
; Val
: Node_Id
) is
4566 pragma Assert
(False
4567 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4568 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4569 or else NT
(N
).Nkind
= N_Loop_Statement
4570 or else NT
(N
).Nkind
= N_Package_Specification
4571 or else NT
(N
).Nkind
= N_Protected_Body
4572 or else NT
(N
).Nkind
= N_Protected_Definition
4573 or else NT
(N
).Nkind
= N_Record_Definition
4574 or else NT
(N
).Nkind
= N_Task_Definition
);
4575 Set_Node4_With_Parent
(N
, Val
);
4578 procedure Set_End_Span
4579 (N
: Node_Id
; Val
: Uint
) is
4581 pragma Assert
(False
4582 or else NT
(N
).Nkind
= N_Case_Statement
4583 or else NT
(N
).Nkind
= N_If_Statement
);
4587 procedure Set_Entity
4588 (N
: Node_Id
; Val
: Node_Id
) is
4590 pragma Assert
(False
4591 or else NT
(N
).Nkind
in N_Has_Entity
4592 or else NT
(N
).Nkind
= N_Aspect_Specification
4593 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4594 or else NT
(N
).Nkind
= N_Freeze_Entity
4595 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4596 Set_Node4
(N
, Val
); -- semantic field, no parent set
4599 procedure Set_Entry_Body_Formal_Part
4600 (N
: Node_Id
; Val
: Node_Id
) is
4602 pragma Assert
(False
4603 or else NT
(N
).Nkind
= N_Entry_Body
);
4604 Set_Node5_With_Parent
(N
, Val
);
4605 end Set_Entry_Body_Formal_Part
;
4607 procedure Set_Entry_Call_Alternative
4608 (N
: Node_Id
; Val
: Node_Id
) is
4610 pragma Assert
(False
4611 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4612 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4613 Set_Node1_With_Parent
(N
, Val
);
4614 end Set_Entry_Call_Alternative
;
4616 procedure Set_Entry_Call_Statement
4617 (N
: Node_Id
; Val
: Node_Id
) is
4619 pragma Assert
(False
4620 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4621 Set_Node1_With_Parent
(N
, Val
);
4622 end Set_Entry_Call_Statement
;
4624 procedure Set_Entry_Direct_Name
4625 (N
: Node_Id
; Val
: Node_Id
) is
4627 pragma Assert
(False
4628 or else NT
(N
).Nkind
= N_Accept_Statement
);
4629 Set_Node1_With_Parent
(N
, Val
);
4630 end Set_Entry_Direct_Name
;
4632 procedure Set_Entry_Index
4633 (N
: Node_Id
; Val
: Node_Id
) is
4635 pragma Assert
(False
4636 or else NT
(N
).Nkind
= N_Accept_Statement
);
4637 Set_Node5_With_Parent
(N
, Val
);
4638 end Set_Entry_Index
;
4640 procedure Set_Entry_Index_Specification
4641 (N
: Node_Id
; Val
: Node_Id
) is
4643 pragma Assert
(False
4644 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4645 Set_Node4_With_Parent
(N
, Val
);
4646 end Set_Entry_Index_Specification
;
4649 (N
: Node_Id
; Val
: Node_Id
) is
4651 pragma Assert
(False
4652 or else NT
(N
).Nkind
in N_Has_Etype
);
4653 Set_Node5
(N
, Val
); -- semantic field, no parent set
4656 procedure Set_Exception_Choices
4657 (N
: Node_Id
; Val
: List_Id
) is
4659 pragma Assert
(False
4660 or else NT
(N
).Nkind
= N_Exception_Handler
);
4661 Set_List4_With_Parent
(N
, Val
);
4662 end Set_Exception_Choices
;
4664 procedure Set_Exception_Handlers
4665 (N
: Node_Id
; Val
: List_Id
) is
4667 pragma Assert
(False
4668 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4669 Set_List5_With_Parent
(N
, Val
);
4670 end Set_Exception_Handlers
;
4672 procedure Set_Exception_Junk
4673 (N
: Node_Id
; Val
: Boolean := True) is
4675 pragma Assert
(False
4676 or else NT
(N
).Nkind
= N_Block_Statement
4677 or else NT
(N
).Nkind
= N_Goto_Statement
4678 or else NT
(N
).Nkind
= N_Label
4679 or else NT
(N
).Nkind
= N_Object_Declaration
4680 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4682 end Set_Exception_Junk
;
4684 procedure Set_Exception_Label
4685 (N
: Node_Id
; Val
: Node_Id
) is
4687 pragma Assert
(False
4688 or else NT
(N
).Nkind
= N_Exception_Handler
4689 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4690 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4691 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4692 Set_Node5
(N
, Val
); -- semantic field, no parent set
4693 end Set_Exception_Label
;
4695 procedure Set_Expansion_Delayed
4696 (N
: Node_Id
; Val
: Boolean := True) is
4698 pragma Assert
(False
4699 or else NT
(N
).Nkind
= N_Aggregate
4700 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4701 Set_Flag11
(N
, Val
);
4702 end Set_Expansion_Delayed
;
4704 procedure Set_Explicit_Actual_Parameter
4705 (N
: Node_Id
; Val
: Node_Id
) is
4707 pragma Assert
(False
4708 or else NT
(N
).Nkind
= N_Parameter_Association
);
4709 Set_Node3_With_Parent
(N
, Val
);
4710 end Set_Explicit_Actual_Parameter
;
4712 procedure Set_Explicit_Generic_Actual_Parameter
4713 (N
: Node_Id
; Val
: Node_Id
) is
4715 pragma Assert
(False
4716 or else NT
(N
).Nkind
= N_Generic_Association
);
4717 Set_Node1_With_Parent
(N
, Val
);
4718 end Set_Explicit_Generic_Actual_Parameter
;
4720 procedure Set_Expression
4721 (N
: Node_Id
; Val
: Node_Id
) is
4723 pragma Assert
(False
4724 or else NT
(N
).Nkind
= N_Allocator
4725 or else NT
(N
).Nkind
= N_Aspect_Specification
4726 or else NT
(N
).Nkind
= N_Assignment_Statement
4727 or else NT
(N
).Nkind
= N_At_Clause
4728 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4729 or else NT
(N
).Nkind
= N_Case_Expression
4730 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4731 or else NT
(N
).Nkind
= N_Case_Statement
4732 or else NT
(N
).Nkind
= N_Code_Statement
4733 or else NT
(N
).Nkind
= N_Component_Association
4734 or else NT
(N
).Nkind
= N_Component_Declaration
4735 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4736 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4737 or else NT
(N
).Nkind
= N_Delta_Aggregate
4738 or else NT
(N
).Nkind
= N_Discriminant_Association
4739 or else NT
(N
).Nkind
= N_Discriminant_Specification
4740 or else NT
(N
).Nkind
= N_Exception_Declaration
4741 or else NT
(N
).Nkind
= N_Expression_Function
4742 or else NT
(N
).Nkind
= N_Expression_With_Actions
4743 or else NT
(N
).Nkind
= N_Free_Statement
4744 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4745 or else NT
(N
).Nkind
= N_Mod_Clause
4746 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4747 or else NT
(N
).Nkind
= N_Number_Declaration
4748 or else NT
(N
).Nkind
= N_Object_Declaration
4749 or else NT
(N
).Nkind
= N_Parameter_Specification
4750 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4751 or else NT
(N
).Nkind
= N_Qualified_Expression
4752 or else NT
(N
).Nkind
= N_Raise_Expression
4753 or else NT
(N
).Nkind
= N_Raise_Statement
4754 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4755 or else NT
(N
).Nkind
= N_Type_Conversion
4756 or else NT
(N
).Nkind
= N_Unchecked_Expression
4757 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4758 Set_Node3_With_Parent
(N
, Val
);
4761 procedure Set_Expression_Copy
4762 (N
: Node_Id
; Val
: Node_Id
) is
4764 pragma Assert
(False
4765 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4766 Set_Node2
(N
, Val
); -- semantic field, no parent set
4767 end Set_Expression_Copy
;
4769 procedure Set_Expressions
4770 (N
: Node_Id
; Val
: List_Id
) is
4772 pragma Assert
(False
4773 or else NT
(N
).Nkind
= N_Aggregate
4774 or else NT
(N
).Nkind
= N_Attribute_Reference
4775 or else NT
(N
).Nkind
= N_Extension_Aggregate
4776 or else NT
(N
).Nkind
= N_If_Expression
4777 or else NT
(N
).Nkind
= N_Indexed_Component
);
4778 Set_List1_With_Parent
(N
, Val
);
4779 end Set_Expressions
;
4781 procedure Set_First_Bit
4782 (N
: Node_Id
; Val
: Node_Id
) is
4784 pragma Assert
(False
4785 or else NT
(N
).Nkind
= N_Component_Clause
);
4786 Set_Node3_With_Parent
(N
, Val
);
4789 procedure Set_First_Inlined_Subprogram
4790 (N
: Node_Id
; Val
: Entity_Id
) is
4792 pragma Assert
(False
4793 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4794 Set_Node3
(N
, Val
); -- semantic field, no parent set
4795 end Set_First_Inlined_Subprogram
;
4797 procedure Set_First_Name
4798 (N
: Node_Id
; Val
: Boolean := True) is
4800 pragma Assert
(False
4801 or else NT
(N
).Nkind
= N_With_Clause
);
4805 procedure Set_First_Named_Actual
4806 (N
: Node_Id
; Val
: Node_Id
) is
4808 pragma Assert
(False
4809 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4810 or else NT
(N
).Nkind
= N_Function_Call
4811 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4812 Set_Node4
(N
, Val
); -- semantic field, no parent set
4813 end Set_First_Named_Actual
;
4815 procedure Set_First_Real_Statement
4816 (N
: Node_Id
; Val
: Node_Id
) is
4818 pragma Assert
(False
4819 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4820 Set_Node2
(N
, Val
); -- semantic field, no parent set
4821 end Set_First_Real_Statement
;
4823 procedure Set_First_Subtype_Link
4824 (N
: Node_Id
; Val
: Entity_Id
) is
4826 pragma Assert
(False
4827 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4828 Set_Node5
(N
, Val
); -- semantic field, no parent set
4829 end Set_First_Subtype_Link
;
4831 procedure Set_Float_Truncate
4832 (N
: Node_Id
; Val
: Boolean := True) is
4834 pragma Assert
(False
4835 or else NT
(N
).Nkind
= N_Type_Conversion
);
4836 Set_Flag11
(N
, Val
);
4837 end Set_Float_Truncate
;
4839 procedure Set_Formal_Type_Definition
4840 (N
: Node_Id
; Val
: Node_Id
) is
4842 pragma Assert
(False
4843 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4844 Set_Node3_With_Parent
(N
, Val
);
4845 end Set_Formal_Type_Definition
;
4847 procedure Set_Forwards_OK
4848 (N
: Node_Id
; Val
: Boolean := True) is
4850 pragma Assert
(False
4851 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4853 end Set_Forwards_OK
;
4855 procedure Set_From_Aspect_Specification
4856 (N
: Node_Id
; Val
: Boolean := True) is
4858 pragma Assert
(False
4859 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4860 or else NT
(N
).Nkind
= N_Pragma
);
4861 Set_Flag13
(N
, Val
);
4862 end Set_From_Aspect_Specification
;
4864 procedure Set_From_At_End
4865 (N
: Node_Id
; Val
: Boolean := True) is
4867 pragma Assert
(False
4868 or else NT
(N
).Nkind
= N_Raise_Statement
);
4870 end Set_From_At_End
;
4872 procedure Set_From_At_Mod
4873 (N
: Node_Id
; Val
: Boolean := True) is
4875 pragma Assert
(False
4876 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4878 end Set_From_At_Mod
;
4880 procedure Set_From_Conditional_Expression
4881 (N
: Node_Id
; Val
: Boolean := True) is
4883 pragma Assert
(False
4884 or else NT
(N
).Nkind
= N_Case_Statement
4885 or else NT
(N
).Nkind
= N_If_Statement
);
4887 end Set_From_Conditional_Expression
;
4889 procedure Set_From_Default
4890 (N
: Node_Id
; Val
: Boolean := True) is
4892 pragma Assert
(False
4893 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4895 end Set_From_Default
;
4897 procedure Set_Generalized_Indexing
4898 (N
: Node_Id
; Val
: Node_Id
) is
4900 pragma Assert
(False
4901 or else NT
(N
).Nkind
= N_Indexed_Component
);
4903 end Set_Generalized_Indexing
;
4905 procedure Set_Generic_Associations
4906 (N
: Node_Id
; Val
: List_Id
) is
4908 pragma Assert
(False
4909 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4910 or else NT
(N
).Nkind
= N_Function_Instantiation
4911 or else NT
(N
).Nkind
= N_Package_Instantiation
4912 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4913 Set_List3_With_Parent
(N
, Val
);
4914 end Set_Generic_Associations
;
4916 procedure Set_Generic_Formal_Declarations
4917 (N
: Node_Id
; Val
: List_Id
) is
4919 pragma Assert
(False
4920 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4921 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4922 Set_List2_With_Parent
(N
, Val
);
4923 end Set_Generic_Formal_Declarations
;
4925 procedure Set_Generic_Parent
4926 (N
: Node_Id
; Val
: Node_Id
) is
4928 pragma Assert
(False
4929 or else NT
(N
).Nkind
= N_Function_Specification
4930 or else NT
(N
).Nkind
= N_Package_Specification
4931 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4933 end Set_Generic_Parent
;
4935 procedure Set_Generic_Parent_Type
4936 (N
: Node_Id
; Val
: Node_Id
) is
4938 pragma Assert
(False
4939 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4941 end Set_Generic_Parent_Type
;
4943 procedure Set_Handled_Statement_Sequence
4944 (N
: Node_Id
; Val
: Node_Id
) is
4946 pragma Assert
(False
4947 or else NT
(N
).Nkind
= N_Accept_Statement
4948 or else NT
(N
).Nkind
= N_Block_Statement
4949 or else NT
(N
).Nkind
= N_Entry_Body
4950 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4951 or else NT
(N
).Nkind
= N_Package_Body
4952 or else NT
(N
).Nkind
= N_Subprogram_Body
4953 or else NT
(N
).Nkind
= N_Task_Body
);
4954 Set_Node4_With_Parent
(N
, Val
);
4955 end Set_Handled_Statement_Sequence
;
4957 procedure Set_Handler_List_Entry
4958 (N
: Node_Id
; Val
: Node_Id
) is
4960 pragma Assert
(False
4961 or else NT
(N
).Nkind
= N_Object_Declaration
);
4963 end Set_Handler_List_Entry
;
4965 procedure Set_Has_Created_Identifier
4966 (N
: Node_Id
; Val
: Boolean := True) is
4968 pragma Assert
(False
4969 or else NT
(N
).Nkind
= N_Block_Statement
4970 or else NT
(N
).Nkind
= N_Loop_Statement
);
4971 Set_Flag15
(N
, Val
);
4972 end Set_Has_Created_Identifier
;
4974 procedure Set_Has_Dereference_Action
4975 (N
: Node_Id
; Val
: Boolean := True) is
4977 pragma Assert
(False
4978 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4979 Set_Flag13
(N
, Val
);
4980 end Set_Has_Dereference_Action
;
4982 procedure Set_Has_Dynamic_Length_Check
4983 (N
: Node_Id
; Val
: Boolean := True) is
4985 pragma Assert
(False
4986 or else NT
(N
).Nkind
in N_Subexpr
);
4987 Set_Flag10
(N
, Val
);
4988 end Set_Has_Dynamic_Length_Check
;
4990 procedure Set_Has_Dynamic_Range_Check
4991 (N
: Node_Id
; Val
: Boolean := True) is
4993 pragma Assert
(False
4994 or else NT
(N
).Nkind
= N_Subtype_Declaration
4995 or else NT
(N
).Nkind
in N_Subexpr
);
4996 Set_Flag12
(N
, Val
);
4997 end Set_Has_Dynamic_Range_Check
;
4999 procedure Set_Has_Init_Expression
5000 (N
: Node_Id
; Val
: Boolean := True) is
5002 pragma Assert
(False
5003 or else NT
(N
).Nkind
= N_Object_Declaration
);
5004 Set_Flag14
(N
, Val
);
5005 end Set_Has_Init_Expression
;
5007 procedure Set_Has_Local_Raise
5008 (N
: Node_Id
; Val
: Boolean := True) is
5010 pragma Assert
(False
5011 or else NT
(N
).Nkind
= N_Exception_Handler
);
5013 end Set_Has_Local_Raise
;
5015 procedure Set_Has_No_Elaboration_Code
5016 (N
: Node_Id
; Val
: Boolean := True) is
5018 pragma Assert
(False
5019 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5020 Set_Flag17
(N
, Val
);
5021 end Set_Has_No_Elaboration_Code
;
5023 procedure Set_Has_Pragma_Suppress_All
5024 (N
: Node_Id
; Val
: Boolean := True) is
5026 pragma Assert
(False
5027 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5028 Set_Flag14
(N
, Val
);
5029 end Set_Has_Pragma_Suppress_All
;
5031 procedure Set_Has_Private_View
5032 (N
: Node_Id
; Val
: Boolean := True) is
5034 pragma Assert
(False
5035 or else NT
(N
).Nkind
in N_Op
5036 or else NT
(N
).Nkind
= N_Character_Literal
5037 or else NT
(N
).Nkind
= N_Expanded_Name
5038 or else NT
(N
).Nkind
= N_Identifier
5039 or else NT
(N
).Nkind
= N_Operator_Symbol
);
5040 Set_Flag11
(N
, Val
);
5041 end Set_Has_Private_View
;
5043 procedure Set_Has_Relative_Deadline_Pragma
5044 (N
: Node_Id
; Val
: Boolean := True) is
5046 pragma Assert
(False
5047 or else NT
(N
).Nkind
= N_Subprogram_Body
5048 or else NT
(N
).Nkind
= N_Task_Definition
);
5050 end Set_Has_Relative_Deadline_Pragma
;
5052 procedure Set_Has_Self_Reference
5053 (N
: Node_Id
; Val
: Boolean := True) is
5055 pragma Assert
(False
5056 or else NT
(N
).Nkind
= N_Aggregate
5057 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5058 Set_Flag13
(N
, Val
);
5059 end Set_Has_Self_Reference
;
5061 procedure Set_Has_SP_Choice
5062 (N
: Node_Id
; Val
: Boolean := True) is
5064 pragma Assert
(False
5065 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5066 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5067 or else NT
(N
).Nkind
= N_Variant
);
5068 Set_Flag15
(N
, Val
);
5069 end Set_Has_SP_Choice
;
5071 procedure Set_Has_Storage_Size_Pragma
5072 (N
: Node_Id
; Val
: Boolean := True) is
5074 pragma Assert
(False
5075 or else NT
(N
).Nkind
= N_Task_Definition
);
5077 end Set_Has_Storage_Size_Pragma
;
5079 procedure Set_Has_Target_Names
5080 (N
: Node_Id
; Val
: Boolean := True) is
5082 pragma Assert
(False
5083 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5085 end Set_Has_Target_Names
;
5087 procedure Set_Has_Wide_Character
5088 (N
: Node_Id
; Val
: Boolean := True) is
5090 pragma Assert
(False
5091 or else NT
(N
).Nkind
= N_String_Literal
);
5092 Set_Flag11
(N
, Val
);
5093 end Set_Has_Wide_Character
;
5095 procedure Set_Has_Wide_Wide_Character
5096 (N
: Node_Id
; Val
: Boolean := True) is
5098 pragma Assert
(False
5099 or else NT
(N
).Nkind
= N_String_Literal
);
5100 Set_Flag13
(N
, Val
);
5101 end Set_Has_Wide_Wide_Character
;
5103 procedure Set_Header_Size_Added
5104 (N
: Node_Id
; Val
: Boolean := True) is
5106 pragma Assert
(False
5107 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5108 Set_Flag11
(N
, Val
);
5109 end Set_Header_Size_Added
;
5111 procedure Set_Hidden_By_Use_Clause
5112 (N
: Node_Id
; Val
: Elist_Id
) is
5114 pragma Assert
(False
5115 or else NT
(N
).Nkind
= N_Use_Package_Clause
5116 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5117 Set_Elist5
(N
, Val
);
5118 end Set_Hidden_By_Use_Clause
;
5120 procedure Set_High_Bound
5121 (N
: Node_Id
; Val
: Node_Id
) is
5123 pragma Assert
(False
5124 or else NT
(N
).Nkind
= N_Range
5125 or else NT
(N
).Nkind
= N_Real_Range_Specification
5126 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5127 Set_Node2_With_Parent
(N
, Val
);
5130 procedure Set_Identifier
5131 (N
: Node_Id
; Val
: Node_Id
) is
5133 pragma Assert
(False
5134 or else NT
(N
).Nkind
= N_Aspect_Specification
5135 or else NT
(N
).Nkind
= N_At_Clause
5136 or else NT
(N
).Nkind
= N_Block_Statement
5137 or else NT
(N
).Nkind
= N_Designator
5138 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5139 or else NT
(N
).Nkind
= N_Label
5140 or else NT
(N
).Nkind
= N_Loop_Statement
5141 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5142 Set_Node1_With_Parent
(N
, Val
);
5145 procedure Set_Implicit_With
5146 (N
: Node_Id
; Val
: Boolean := True) is
5148 pragma Assert
(False
5149 or else NT
(N
).Nkind
= N_With_Clause
);
5150 Set_Flag16
(N
, Val
);
5151 end Set_Implicit_With
;
5153 procedure Set_Interface_List
5154 (N
: Node_Id
; Val
: List_Id
) is
5156 pragma Assert
(False
5157 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5158 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5159 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5160 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5161 or else NT
(N
).Nkind
= N_Record_Definition
5162 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5163 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5164 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5165 Set_List2_With_Parent
(N
, Val
);
5166 end Set_Interface_List
;
5168 procedure Set_Interface_Present
5169 (N
: Node_Id
; Val
: Boolean := True) is
5171 pragma Assert
(False
5172 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5173 or else NT
(N
).Nkind
= N_Record_Definition
);
5174 Set_Flag16
(N
, Val
);
5175 end Set_Interface_Present
;
5177 procedure Set_Import_Interface_Present
5178 (N
: Node_Id
; Val
: Boolean := True) is
5180 pragma Assert
(False
5181 or else NT
(N
).Nkind
= N_Pragma
);
5182 Set_Flag16
(N
, Val
);
5183 end Set_Import_Interface_Present
;
5185 procedure Set_In_Present
5186 (N
: Node_Id
; Val
: Boolean := True) is
5188 pragma Assert
(False
5189 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5190 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5191 Set_Flag15
(N
, Val
);
5194 procedure Set_Includes_Infinities
5195 (N
: Node_Id
; Val
: Boolean := True) is
5197 pragma Assert
(False
5198 or else NT
(N
).Nkind
= N_Range
);
5199 Set_Flag11
(N
, Val
);
5200 end Set_Includes_Infinities
;
5202 procedure Set_Incomplete_View
5203 (N
: Node_Id
; Val
: Node_Id
) is
5205 pragma Assert
(False
5206 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5207 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5208 end Set_Incomplete_View
;
5210 procedure Set_Inherited_Discriminant
5211 (N
: Node_Id
; Val
: Boolean := True) is
5213 pragma Assert
(False
5214 or else NT
(N
).Nkind
= N_Component_Association
);
5215 Set_Flag13
(N
, Val
);
5216 end Set_Inherited_Discriminant
;
5218 procedure Set_Instance_Spec
5219 (N
: Node_Id
; Val
: Node_Id
) is
5221 pragma Assert
(False
5222 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5223 or else NT
(N
).Nkind
= N_Function_Instantiation
5224 or else NT
(N
).Nkind
= N_Package_Instantiation
5225 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5226 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5227 end Set_Instance_Spec
;
5229 procedure Set_Intval
5230 (N
: Node_Id
; Val
: Uint
) is
5232 pragma Assert
(False
5233 or else NT
(N
).Nkind
= N_Integer_Literal
);
5237 procedure Set_Is_Abort_Block
5238 (N
: Node_Id
; Val
: Boolean := True) is
5240 pragma Assert
(False
5241 or else NT
(N
).Nkind
= N_Block_Statement
);
5243 end Set_Is_Abort_Block
;
5245 procedure Set_Is_Accessibility_Actual
5246 (N
: Node_Id
; Val
: Boolean := True) is
5248 pragma Assert
(False
5249 or else NT
(N
).Nkind
= N_Parameter_Association
);
5250 Set_Flag13
(N
, Val
);
5251 end Set_Is_Accessibility_Actual
;
5253 procedure Set_Is_Analyzed_Pragma
5254 (N
: Node_Id
; Val
: Boolean := True) is
5256 pragma Assert
(False
5257 or else NT
(N
).Nkind
= N_Pragma
);
5259 end Set_Is_Analyzed_Pragma
;
5261 procedure Set_Is_Asynchronous_Call_Block
5262 (N
: Node_Id
; Val
: Boolean := True) is
5264 pragma Assert
(False
5265 or else NT
(N
).Nkind
= N_Block_Statement
);
5267 end Set_Is_Asynchronous_Call_Block
;
5269 procedure Set_Is_Boolean_Aspect
5270 (N
: Node_Id
; Val
: Boolean := True) is
5272 pragma Assert
(False
5273 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5274 Set_Flag16
(N
, Val
);
5275 end Set_Is_Boolean_Aspect
;
5277 procedure Set_Is_Checked
5278 (N
: Node_Id
; Val
: Boolean := True) is
5280 pragma Assert
(False
5281 or else NT
(N
).Nkind
= N_Aspect_Specification
5282 or else NT
(N
).Nkind
= N_Pragma
);
5283 Set_Flag11
(N
, Val
);
5286 procedure Set_Is_Checked_Ghost_Pragma
5287 (N
: Node_Id
; Val
: Boolean := True) is
5289 pragma Assert
(False
5290 or else NT
(N
).Nkind
= N_Pragma
);
5292 end Set_Is_Checked_Ghost_Pragma
;
5294 procedure Set_Is_Component_Left_Opnd
5295 (N
: Node_Id
; Val
: Boolean := True) is
5297 pragma Assert
(False
5298 or else NT
(N
).Nkind
= N_Op_Concat
);
5299 Set_Flag13
(N
, Val
);
5300 end Set_Is_Component_Left_Opnd
;
5302 procedure Set_Is_Component_Right_Opnd
5303 (N
: Node_Id
; Val
: Boolean := True) is
5305 pragma Assert
(False
5306 or else NT
(N
).Nkind
= N_Op_Concat
);
5307 Set_Flag14
(N
, Val
);
5308 end Set_Is_Component_Right_Opnd
;
5310 procedure Set_Is_Controlling_Actual
5311 (N
: Node_Id
; Val
: Boolean := True) is
5313 pragma Assert
(False
5314 or else NT
(N
).Nkind
in N_Subexpr
);
5315 Set_Flag16
(N
, Val
);
5316 end Set_Is_Controlling_Actual
;
5318 procedure Set_Is_Declaration_Level_Node
5319 (N
: Node_Id
; Val
: Boolean := True) is
5321 pragma Assert
(False
5322 or else NT
(N
).Nkind
= N_Call_Marker
5323 or else NT
(N
).Nkind
= N_Function_Instantiation
5324 or else NT
(N
).Nkind
= N_Package_Instantiation
5325 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5327 end Set_Is_Declaration_Level_Node
;
5329 procedure Set_Is_Delayed_Aspect
5330 (N
: Node_Id
; Val
: Boolean := True) is
5332 pragma Assert
(False
5333 or else NT
(N
).Nkind
= N_Aspect_Specification
5334 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5335 or else NT
(N
).Nkind
= N_Pragma
);
5336 Set_Flag14
(N
, Val
);
5337 end Set_Is_Delayed_Aspect
;
5339 procedure Set_Is_Disabled
5340 (N
: Node_Id
; Val
: Boolean := True) is
5342 pragma Assert
(False
5343 or else NT
(N
).Nkind
= N_Aspect_Specification
5344 or else NT
(N
).Nkind
= N_Pragma
);
5345 Set_Flag15
(N
, Val
);
5346 end Set_Is_Disabled
;
5348 procedure Set_Is_Dispatching_Call
5349 (N
: Node_Id
; Val
: Boolean := True) is
5351 pragma Assert
(False
5352 or else NT
(N
).Nkind
= N_Call_Marker
);
5354 end Set_Is_Dispatching_Call
;
5356 procedure Set_Is_Dynamic_Coextension
5357 (N
: Node_Id
; Val
: Boolean := True) is
5359 pragma Assert
(False
5360 or else NT
(N
).Nkind
= N_Allocator
);
5361 pragma Assert
(not Val
5362 or else not Is_Static_Coextension
(N
));
5363 Set_Flag18
(N
, Val
);
5364 end Set_Is_Dynamic_Coextension
;
5366 procedure Set_Is_Effective_Use_Clause
5367 (N
: Node_Id
; Val
: Boolean := True) is
5369 pragma Assert
(False
5370 or else NT
(N
).Nkind
= N_Use_Package_Clause
5371 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5373 end Set_Is_Effective_Use_Clause
;
5375 procedure Set_Is_Elaboration_Checks_OK_Node
5376 (N
: Node_Id
; Val
: Boolean := True) is
5378 pragma Assert
(False
5379 or else NT
(N
).Nkind
= N_Assignment_Statement
5380 or else NT
(N
).Nkind
= N_Attribute_Reference
5381 or else NT
(N
).Nkind
= N_Call_Marker
5382 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5383 or else NT
(N
).Nkind
= N_Expanded_Name
5384 or else NT
(N
).Nkind
= N_Function_Call
5385 or else NT
(N
).Nkind
= N_Function_Instantiation
5386 or else NT
(N
).Nkind
= N_Identifier
5387 or else NT
(N
).Nkind
= N_Package_Instantiation
5388 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5389 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5390 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5392 end Set_Is_Elaboration_Checks_OK_Node
;
5394 procedure Set_Is_Elaboration_Code
5395 (N
: Node_Id
; Val
: Boolean := True) is
5397 pragma Assert
(False
5398 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5400 end Set_Is_Elaboration_Code
;
5402 procedure Set_Is_Elaboration_Warnings_OK_Node
5403 (N
: Node_Id
; Val
: Boolean := True) is
5405 pragma Assert
(False
5406 or else NT
(N
).Nkind
= N_Attribute_Reference
5407 or else NT
(N
).Nkind
= N_Call_Marker
5408 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5409 or else NT
(N
).Nkind
= N_Function_Call
5410 or else NT
(N
).Nkind
= N_Function_Instantiation
5411 or else NT
(N
).Nkind
= N_Package_Instantiation
5412 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5413 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5414 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5416 end Set_Is_Elaboration_Warnings_OK_Node
;
5418 procedure Set_Is_Elsif
5419 (N
: Node_Id
; Val
: Boolean := True) is
5421 pragma Assert
(False
5422 or else NT
(N
).Nkind
= N_If_Expression
);
5423 Set_Flag13
(N
, Val
);
5426 procedure Set_Is_Entry_Barrier_Function
5427 (N
: Node_Id
; Val
: Boolean := True) is
5429 pragma Assert
(False
5430 or else NT
(N
).Nkind
= N_Subprogram_Body
5431 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5433 end Set_Is_Entry_Barrier_Function
;
5435 procedure Set_Is_Expanded_Build_In_Place_Call
5436 (N
: Node_Id
; Val
: Boolean := True) is
5438 pragma Assert
(False
5439 or else NT
(N
).Nkind
= N_Function_Call
);
5440 Set_Flag11
(N
, Val
);
5441 end Set_Is_Expanded_Build_In_Place_Call
;
5443 procedure Set_Is_Expanded_Contract
5444 (N
: Node_Id
; Val
: Boolean := True) is
5446 pragma Assert
(False
5447 or else NT
(N
).Nkind
= N_Contract
);
5449 end Set_Is_Expanded_Contract
;
5451 procedure Set_Is_Finalization_Wrapper
5452 (N
: Node_Id
; Val
: Boolean := True) is
5454 pragma Assert
(False
5455 or else NT
(N
).Nkind
= N_Block_Statement
);
5457 end Set_Is_Finalization_Wrapper
;
5459 procedure Set_Is_Folded_In_Parser
5460 (N
: Node_Id
; Val
: Boolean := True) is
5462 pragma Assert
(False
5463 or else NT
(N
).Nkind
= N_String_Literal
);
5465 end Set_Is_Folded_In_Parser
;
5467 procedure Set_Is_Generic_Contract_Pragma
5468 (N
: Node_Id
; Val
: Boolean := True) is
5470 pragma Assert
(False
5471 or else NT
(N
).Nkind
= N_Pragma
);
5473 end Set_Is_Generic_Contract_Pragma
;
5475 procedure Set_Is_Ignored
5476 (N
: Node_Id
; Val
: Boolean := True) is
5478 pragma Assert
(False
5479 or else NT
(N
).Nkind
= N_Aspect_Specification
5480 or else NT
(N
).Nkind
= N_Pragma
);
5484 procedure Set_Is_Ignored_Ghost_Pragma
5485 (N
: Node_Id
; Val
: Boolean := True) is
5487 pragma Assert
(False
5488 or else NT
(N
).Nkind
= N_Pragma
);
5490 end Set_Is_Ignored_Ghost_Pragma
;
5492 procedure Set_Is_In_Discriminant_Check
5493 (N
: Node_Id
; Val
: Boolean := True) is
5495 pragma Assert
(False
5496 or else NT
(N
).Nkind
= N_Selected_Component
);
5497 Set_Flag11
(N
, Val
);
5498 end Set_Is_In_Discriminant_Check
;
5500 procedure Set_Is_Inherited_Pragma
5501 (N
: Node_Id
; Val
: Boolean := True) is
5503 pragma Assert
(False
5504 or else NT
(N
).Nkind
= N_Pragma
);
5506 end Set_Is_Inherited_Pragma
;
5508 procedure Set_Is_Initialization_Block
5509 (N
: Node_Id
; Val
: Boolean := True) is
5511 pragma Assert
(False
5512 or else NT
(N
).Nkind
= N_Block_Statement
);
5514 end Set_Is_Initialization_Block
;
5516 procedure Set_Is_Known_Guaranteed_ABE
5517 (N
: Node_Id
; Val
: Boolean := True) is
5519 pragma Assert
(False
5520 or else NT
(N
).Nkind
= N_Call_Marker
5521 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5522 or else NT
(N
).Nkind
= N_Function_Call
5523 or else NT
(N
).Nkind
= N_Function_Instantiation
5524 or else NT
(N
).Nkind
= N_Package_Instantiation
5525 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5526 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5527 Set_Flag18
(N
, Val
);
5528 end Set_Is_Known_Guaranteed_ABE
;
5530 procedure Set_Is_Machine_Number
5531 (N
: Node_Id
; Val
: Boolean := True) is
5533 pragma Assert
(False
5534 or else NT
(N
).Nkind
= N_Real_Literal
);
5535 Set_Flag11
(N
, Val
);
5536 end Set_Is_Machine_Number
;
5538 procedure Set_Is_Null_Loop
5539 (N
: Node_Id
; Val
: Boolean := True) is
5541 pragma Assert
(False
5542 or else NT
(N
).Nkind
= N_Loop_Statement
);
5543 Set_Flag16
(N
, Val
);
5544 end Set_Is_Null_Loop
;
5546 procedure Set_Is_OpenAcc_Environment
5547 (N
: Node_Id
; Val
: Boolean := True) is
5549 pragma Assert
(False
5550 or else NT
(N
).Nkind
= N_Loop_Statement
);
5551 Set_Flag13
(N
, Val
);
5552 end Set_Is_OpenAcc_Environment
;
5554 procedure Set_Is_OpenAcc_Loop
5555 (N
: Node_Id
; Val
: Boolean := True) is
5557 pragma Assert
(False
5558 or else NT
(N
).Nkind
= N_Loop_Statement
);
5559 Set_Flag14
(N
, Val
);
5560 end Set_Is_OpenAcc_Loop
;
5562 procedure Set_Is_Overloaded
5563 (N
: Node_Id
; Val
: Boolean := True) is
5565 pragma Assert
(False
5566 or else NT
(N
).Nkind
in N_Subexpr
);
5568 end Set_Is_Overloaded
;
5570 procedure Set_Is_Power_Of_2_For_Shift
5571 (N
: Node_Id
; Val
: Boolean := True) is
5573 pragma Assert
(False
5574 or else NT
(N
).Nkind
= N_Op_Expon
);
5575 Set_Flag13
(N
, Val
);
5576 end Set_Is_Power_Of_2_For_Shift
;
5578 procedure Set_Is_Prefixed_Call
5579 (N
: Node_Id
; Val
: Boolean := True) is
5581 pragma Assert
(False
5582 or else NT
(N
).Nkind
= N_Selected_Component
);
5583 Set_Flag17
(N
, Val
);
5584 end Set_Is_Prefixed_Call
;
5586 procedure Set_Is_Protected_Subprogram_Body
5587 (N
: Node_Id
; Val
: Boolean := True) is
5589 pragma Assert
(False
5590 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5592 end Set_Is_Protected_Subprogram_Body
;
5594 procedure Set_Is_Qualified_Universal_Literal
5595 (N
: Node_Id
; Val
: Boolean := True) is
5597 pragma Assert
(False
5598 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5600 end Set_Is_Qualified_Universal_Literal
;
5602 procedure Set_Is_Read
5603 (N
: Node_Id
; Val
: Boolean := True) is
5605 pragma Assert
(False
5606 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5610 procedure Set_Is_Source_Call
5611 (N
: Node_Id
; Val
: Boolean := True) is
5613 pragma Assert
(False
5614 or else NT
(N
).Nkind
= N_Call_Marker
);
5616 end Set_Is_Source_Call
;
5618 procedure Set_Is_SPARK_Mode_On_Node
5619 (N
: Node_Id
; Val
: Boolean := True) is
5621 pragma Assert
(False
5622 or else NT
(N
).Nkind
= N_Assignment_Statement
5623 or else NT
(N
).Nkind
= N_Attribute_Reference
5624 or else NT
(N
).Nkind
= N_Call_Marker
5625 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5626 or else NT
(N
).Nkind
= N_Expanded_Name
5627 or else NT
(N
).Nkind
= N_Function_Call
5628 or else NT
(N
).Nkind
= N_Function_Instantiation
5629 or else NT
(N
).Nkind
= N_Identifier
5630 or else NT
(N
).Nkind
= N_Package_Instantiation
5631 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5632 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5633 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5635 end Set_Is_SPARK_Mode_On_Node
;
5637 procedure Set_Is_Static_Coextension
5638 (N
: Node_Id
; Val
: Boolean := True) is
5640 pragma Assert
(False
5641 or else NT
(N
).Nkind
= N_Allocator
);
5642 pragma Assert
(not Val
5643 or else not Is_Dynamic_Coextension
(N
));
5644 Set_Flag14
(N
, Val
);
5645 end Set_Is_Static_Coextension
;
5647 procedure Set_Is_Static_Expression
5648 (N
: Node_Id
; Val
: Boolean := True) is
5650 pragma Assert
(False
5651 or else NT
(N
).Nkind
in N_Subexpr
);
5653 end Set_Is_Static_Expression
;
5655 procedure Set_Is_Subprogram_Descriptor
5656 (N
: Node_Id
; Val
: Boolean := True) is
5658 pragma Assert
(False
5659 or else NT
(N
).Nkind
= N_Object_Declaration
);
5660 Set_Flag16
(N
, Val
);
5661 end Set_Is_Subprogram_Descriptor
;
5663 procedure Set_Is_Task_Allocation_Block
5664 (N
: Node_Id
; Val
: Boolean := True) is
5666 pragma Assert
(False
5667 or else NT
(N
).Nkind
= N_Block_Statement
);
5669 end Set_Is_Task_Allocation_Block
;
5671 procedure Set_Is_Task_Body_Procedure
5672 (N
: Node_Id
; Val
: Boolean := True) is
5674 pragma Assert
(False
5675 or else NT
(N
).Nkind
= N_Subprogram_Body
5676 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5678 end Set_Is_Task_Body_Procedure
;
5680 procedure Set_Is_Task_Master
5681 (N
: Node_Id
; Val
: Boolean := True) is
5683 pragma Assert
(False
5684 or else NT
(N
).Nkind
= N_Block_Statement
5685 or else NT
(N
).Nkind
= N_Subprogram_Body
5686 or else NT
(N
).Nkind
= N_Task_Body
);
5688 end Set_Is_Task_Master
;
5690 procedure Set_Is_Write
5691 (N
: Node_Id
; Val
: Boolean := True) is
5693 pragma Assert
(False
5694 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5698 procedure Set_Iteration_Scheme
5699 (N
: Node_Id
; Val
: Node_Id
) is
5701 pragma Assert
(False
5702 or else NT
(N
).Nkind
= N_Loop_Statement
);
5703 Set_Node2_With_Parent
(N
, Val
);
5704 end Set_Iteration_Scheme
;
5706 procedure Set_Iterator_Specification
5707 (N
: Node_Id
; Val
: Node_Id
) is
5709 pragma Assert
(False
5710 or else NT
(N
).Nkind
= N_Iteration_Scheme
5711 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5712 Set_Node2_With_Parent
(N
, Val
);
5713 end Set_Iterator_Specification
;
5716 (N
: Node_Id
; Val
: Entity_Id
) is
5718 pragma Assert
(False
5719 or else NT
(N
).Nkind
= N_Itype_Reference
);
5720 Set_Node1
(N
, Val
); -- no parent, semantic field
5723 procedure Set_Kill_Range_Check
5724 (N
: Node_Id
; Val
: Boolean := True) is
5726 pragma Assert
(False
5727 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5728 Set_Flag11
(N
, Val
);
5729 end Set_Kill_Range_Check
;
5731 procedure Set_Label_Construct
5732 (N
: Node_Id
; Val
: Node_Id
) is
5734 pragma Assert
(False
5735 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5736 Set_Node2
(N
, Val
); -- semantic field, no parent set
5737 end Set_Label_Construct
;
5739 procedure Set_Last_Bit
5740 (N
: Node_Id
; Val
: Node_Id
) is
5742 pragma Assert
(False
5743 or else NT
(N
).Nkind
= N_Component_Clause
);
5744 Set_Node4_With_Parent
(N
, Val
);
5747 procedure Set_Last_Name
5748 (N
: Node_Id
; Val
: Boolean := True) is
5750 pragma Assert
(False
5751 or else NT
(N
).Nkind
= N_With_Clause
);
5755 procedure Set_Left_Opnd
5756 (N
: Node_Id
; Val
: Node_Id
) is
5758 pragma Assert
(False
5759 or else NT
(N
).Nkind
= N_And_Then
5760 or else NT
(N
).Nkind
= N_In
5761 or else NT
(N
).Nkind
= N_Not_In
5762 or else NT
(N
).Nkind
= N_Or_Else
5763 or else NT
(N
).Nkind
in N_Binary_Op
);
5764 Set_Node2_With_Parent
(N
, Val
);
5767 procedure Set_Library_Unit
5768 (N
: Node_Id
; Val
: Node_Id
) is
5770 pragma Assert
(False
5771 or else NT
(N
).Nkind
= N_Compilation_Unit
5772 or else NT
(N
).Nkind
= N_Package_Body_Stub
5773 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5774 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5775 or else NT
(N
).Nkind
= N_Task_Body_Stub
5776 or else NT
(N
).Nkind
= N_With_Clause
);
5777 Set_Node4
(N
, Val
); -- semantic field, no parent set
5778 end Set_Library_Unit
;
5780 procedure Set_Limited_View_Installed
5781 (N
: Node_Id
; Val
: Boolean := True) is
5783 pragma Assert
(False
5784 or else NT
(N
).Nkind
= N_Package_Specification
5785 or else NT
(N
).Nkind
= N_With_Clause
);
5786 Set_Flag18
(N
, Val
);
5787 end Set_Limited_View_Installed
;
5789 procedure Set_Limited_Present
5790 (N
: Node_Id
; Val
: Boolean := True) is
5792 pragma Assert
(False
5793 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5794 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5795 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5796 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5797 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5798 or else NT
(N
).Nkind
= N_Record_Definition
5799 or else NT
(N
).Nkind
= N_With_Clause
);
5800 Set_Flag17
(N
, Val
);
5801 end Set_Limited_Present
;
5803 procedure Set_Literals
5804 (N
: Node_Id
; Val
: List_Id
) is
5806 pragma Assert
(False
5807 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5808 Set_List1_With_Parent
(N
, Val
);
5811 procedure Set_Local_Raise_Not_OK
5812 (N
: Node_Id
; Val
: Boolean := True) is
5814 pragma Assert
(False
5815 or else NT
(N
).Nkind
= N_Exception_Handler
);
5817 end Set_Local_Raise_Not_OK
;
5819 procedure Set_Local_Raise_Statements
5820 (N
: Node_Id
; Val
: Elist_Id
) is
5822 pragma Assert
(False
5823 or else NT
(N
).Nkind
= N_Exception_Handler
);
5824 Set_Elist1
(N
, Val
);
5825 end Set_Local_Raise_Statements
;
5827 procedure Set_Loop_Actions
5828 (N
: Node_Id
; Val
: List_Id
) is
5830 pragma Assert
(False
5831 or else NT
(N
).Nkind
= N_Component_Association
5832 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5833 Set_List2
(N
, Val
); -- semantic field, no parent set
5834 end Set_Loop_Actions
;
5836 procedure Set_Loop_Parameter_Specification
5837 (N
: Node_Id
; Val
: Node_Id
) is
5839 pragma Assert
(False
5840 or else NT
(N
).Nkind
= N_Iteration_Scheme
5841 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5842 Set_Node4_With_Parent
(N
, Val
);
5843 end Set_Loop_Parameter_Specification
;
5845 procedure Set_Low_Bound
5846 (N
: Node_Id
; Val
: Node_Id
) is
5848 pragma Assert
(False
5849 or else NT
(N
).Nkind
= N_Range
5850 or else NT
(N
).Nkind
= N_Real_Range_Specification
5851 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5852 Set_Node1_With_Parent
(N
, Val
);
5855 procedure Set_Mod_Clause
5856 (N
: Node_Id
; Val
: Node_Id
) is
5858 pragma Assert
(False
5859 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5860 Set_Node2_With_Parent
(N
, Val
);
5863 procedure Set_More_Ids
5864 (N
: Node_Id
; Val
: Boolean := True) is
5866 pragma Assert
(False
5867 or else NT
(N
).Nkind
= N_Component_Declaration
5868 or else NT
(N
).Nkind
= N_Discriminant_Specification
5869 or else NT
(N
).Nkind
= N_Exception_Declaration
5870 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5871 or else NT
(N
).Nkind
= N_Number_Declaration
5872 or else NT
(N
).Nkind
= N_Object_Declaration
5873 or else NT
(N
).Nkind
= N_Parameter_Specification
5874 or else NT
(N
).Nkind
= N_Use_Package_Clause
5875 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5879 procedure Set_Must_Be_Byte_Aligned
5880 (N
: Node_Id
; Val
: Boolean := True) is
5882 pragma Assert
(False
5883 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5884 Set_Flag14
(N
, Val
);
5885 end Set_Must_Be_Byte_Aligned
;
5887 procedure Set_Must_Not_Freeze
5888 (N
: Node_Id
; Val
: Boolean := True) is
5890 pragma Assert
(False
5891 or else NT
(N
).Nkind
= N_Subtype_Indication
5892 or else NT
(N
).Nkind
in N_Subexpr
);
5894 end Set_Must_Not_Freeze
;
5896 procedure Set_Must_Not_Override
5897 (N
: Node_Id
; Val
: Boolean := True) is
5899 pragma Assert
(False
5900 or else NT
(N
).Nkind
= N_Entry_Declaration
5901 or else NT
(N
).Nkind
= N_Function_Instantiation
5902 or else NT
(N
).Nkind
= N_Function_Specification
5903 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5904 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5905 Set_Flag15
(N
, Val
);
5906 end Set_Must_Not_Override
;
5908 procedure Set_Must_Override
5909 (N
: Node_Id
; Val
: Boolean := True) is
5911 pragma Assert
(False
5912 or else NT
(N
).Nkind
= N_Entry_Declaration
5913 or else NT
(N
).Nkind
= N_Function_Instantiation
5914 or else NT
(N
).Nkind
= N_Function_Specification
5915 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5916 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5917 Set_Flag14
(N
, Val
);
5918 end Set_Must_Override
;
5921 (N
: Node_Id
; Val
: Node_Id
) is
5923 pragma Assert
(False
5924 or else NT
(N
).Nkind
= N_Assignment_Statement
5925 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5926 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5927 or else NT
(N
).Nkind
= N_Designator
5928 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5929 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5930 or else NT
(N
).Nkind
= N_Exit_Statement
5931 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5932 or else NT
(N
).Nkind
= N_Function_Call
5933 or else NT
(N
).Nkind
= N_Function_Instantiation
5934 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5935 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5936 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5937 or else NT
(N
).Nkind
= N_Goto_Statement
5938 or else NT
(N
).Nkind
= N_Iterator_Specification
5939 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5940 or else NT
(N
).Nkind
= N_Package_Instantiation
5941 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5942 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5943 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5944 or else NT
(N
).Nkind
= N_Raise_Expression
5945 or else NT
(N
).Nkind
= N_Raise_Statement
5946 or else NT
(N
).Nkind
= N_Requeue_Statement
5947 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5948 or else NT
(N
).Nkind
= N_Subunit
5949 or else NT
(N
).Nkind
= N_Use_Package_Clause
5950 or else NT
(N
).Nkind
= N_Variant_Part
5951 or else NT
(N
).Nkind
= N_With_Clause
);
5952 Set_Node2_With_Parent
(N
, Val
);
5956 (N
: Node_Id
; Val
: List_Id
) is
5958 pragma Assert
(False
5959 or else NT
(N
).Nkind
= N_Abort_Statement
);
5960 Set_List2_With_Parent
(N
, Val
);
5963 procedure Set_Next_Entity
5964 (N
: Node_Id
; Val
: Node_Id
) is
5966 pragma Assert
(False
5967 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5968 or else NT
(N
).Nkind
= N_Defining_Identifier
5969 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5970 Set_Node2
(N
, Val
); -- semantic field, no parent set
5971 end Set_Next_Entity
;
5973 procedure Set_Next_Exit_Statement
5974 (N
: Node_Id
; Val
: Node_Id
) is
5976 pragma Assert
(False
5977 or else NT
(N
).Nkind
= N_Exit_Statement
);
5978 Set_Node3
(N
, Val
); -- semantic field, no parent set
5979 end Set_Next_Exit_Statement
;
5981 procedure Set_Next_Implicit_With
5982 (N
: Node_Id
; Val
: Node_Id
) is
5984 pragma Assert
(False
5985 or else NT
(N
).Nkind
= N_With_Clause
);
5986 Set_Node3
(N
, Val
); -- semantic field, no parent set
5987 end Set_Next_Implicit_With
;
5989 procedure Set_Next_Named_Actual
5990 (N
: Node_Id
; Val
: Node_Id
) is
5992 pragma Assert
(False
5993 or else NT
(N
).Nkind
= N_Parameter_Association
);
5994 Set_Node4
(N
, Val
); -- semantic field, no parent set
5995 end Set_Next_Named_Actual
;
5997 procedure Set_Next_Pragma
5998 (N
: Node_Id
; Val
: Node_Id
) is
6000 pragma Assert
(False
6001 or else NT
(N
).Nkind
= N_Pragma
);
6002 Set_Node1
(N
, Val
); -- semantic field, no parent set
6003 end Set_Next_Pragma
;
6005 procedure Set_Next_Rep_Item
6006 (N
: Node_Id
; Val
: Node_Id
) is
6008 pragma Assert
(False
6009 or else NT
(N
).Nkind
= N_Aspect_Specification
6010 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
6011 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
6012 or else NT
(N
).Nkind
= N_Pragma
6013 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
6014 Set_Node5
(N
, Val
); -- semantic field, no parent set
6015 end Set_Next_Rep_Item
;
6017 procedure Set_Next_Use_Clause
6018 (N
: Node_Id
; Val
: Node_Id
) is
6020 pragma Assert
(False
6021 or else NT
(N
).Nkind
= N_Use_Package_Clause
6022 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6023 Set_Node3
(N
, Val
); -- semantic field, no parent set
6024 end Set_Next_Use_Clause
;
6026 procedure Set_No_Ctrl_Actions
6027 (N
: Node_Id
; Val
: Boolean := True) is
6029 pragma Assert
(False
6030 or else NT
(N
).Nkind
= N_Assignment_Statement
);
6032 end Set_No_Ctrl_Actions
;
6034 procedure Set_No_Elaboration_Check
6035 (N
: Node_Id
; Val
: Boolean := True) is
6037 pragma Assert
(False
6038 or else NT
(N
).Nkind
= N_Function_Call
6039 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6041 end Set_No_Elaboration_Check
;
6043 procedure Set_No_Entities_Ref_In_Spec
6044 (N
: Node_Id
; Val
: Boolean := True) is
6046 pragma Assert
(False
6047 or else NT
(N
).Nkind
= N_With_Clause
);
6049 end Set_No_Entities_Ref_In_Spec
;
6051 procedure Set_No_Initialization
6052 (N
: Node_Id
; Val
: Boolean := True) is
6054 pragma Assert
(False
6055 or else NT
(N
).Nkind
= N_Allocator
6056 or else NT
(N
).Nkind
= N_Object_Declaration
);
6057 Set_Flag13
(N
, Val
);
6058 end Set_No_Initialization
;
6060 procedure Set_No_Minimize_Eliminate
6061 (N
: Node_Id
; Val
: Boolean := True) is
6063 pragma Assert
(False
6064 or else NT
(N
).Nkind
= N_In
6065 or else NT
(N
).Nkind
= N_Not_In
);
6066 Set_Flag17
(N
, Val
);
6067 end Set_No_Minimize_Eliminate
;
6069 procedure Set_No_Side_Effect_Removal
6070 (N
: Node_Id
; Val
: Boolean := True) is
6072 pragma Assert
(False
6073 or else NT
(N
).Nkind
= N_Function_Call
);
6074 Set_Flag17
(N
, Val
);
6075 end Set_No_Side_Effect_Removal
;
6077 procedure Set_No_Truncation
6078 (N
: Node_Id
; Val
: Boolean := True) is
6080 pragma Assert
(False
6081 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6082 Set_Flag17
(N
, Val
);
6083 end Set_No_Truncation
;
6085 procedure Set_Null_Excluding_Subtype
6086 (N
: Node_Id
; Val
: Boolean := True) is
6088 pragma Assert
(False
6089 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
6090 Set_Flag16
(N
, Val
);
6091 end Set_Null_Excluding_Subtype
;
6093 procedure Set_Null_Exclusion_Present
6094 (N
: Node_Id
; Val
: Boolean := True) is
6096 pragma Assert
(False
6097 or else NT
(N
).Nkind
= N_Access_Definition
6098 or else NT
(N
).Nkind
= N_Access_Function_Definition
6099 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6100 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6101 or else NT
(N
).Nkind
= N_Allocator
6102 or else NT
(N
).Nkind
= N_Component_Definition
6103 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6104 or else NT
(N
).Nkind
= N_Discriminant_Specification
6105 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6106 or else NT
(N
).Nkind
= N_Function_Specification
6107 or else NT
(N
).Nkind
= N_Object_Declaration
6108 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6109 or else NT
(N
).Nkind
= N_Parameter_Specification
6110 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6111 Set_Flag11
(N
, Val
);
6112 end Set_Null_Exclusion_Present
;
6114 procedure Set_Null_Exclusion_In_Return_Present
6115 (N
: Node_Id
; Val
: Boolean := True) is
6117 pragma Assert
(False
6118 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6119 Set_Flag14
(N
, Val
);
6120 end Set_Null_Exclusion_In_Return_Present
;
6122 procedure Set_Null_Present
6123 (N
: Node_Id
; Val
: Boolean := True) is
6125 pragma Assert
(False
6126 or else NT
(N
).Nkind
= N_Component_List
6127 or else NT
(N
).Nkind
= N_Procedure_Specification
6128 or else NT
(N
).Nkind
= N_Record_Definition
);
6129 Set_Flag13
(N
, Val
);
6130 end Set_Null_Present
;
6132 procedure Set_Null_Record_Present
6133 (N
: Node_Id
; Val
: Boolean := True) is
6135 pragma Assert
(False
6136 or else NT
(N
).Nkind
= N_Aggregate
6137 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6138 Set_Flag17
(N
, Val
);
6139 end Set_Null_Record_Present
;
6141 procedure Set_Null_Statement
6142 (N
: Node_Id
; Val
: Node_Id
) is
6144 pragma Assert
(False
6145 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6147 end Set_Null_Statement
;
6149 procedure Set_Object_Definition
6150 (N
: Node_Id
; Val
: Node_Id
) is
6152 pragma Assert
(False
6153 or else NT
(N
).Nkind
= N_Object_Declaration
);
6154 Set_Node4_With_Parent
(N
, Val
);
6155 end Set_Object_Definition
;
6157 procedure Set_Of_Present
6158 (N
: Node_Id
; Val
: Boolean := True) is
6160 pragma Assert
(False
6161 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6162 Set_Flag16
(N
, Val
);
6165 procedure Set_Original_Discriminant
6166 (N
: Node_Id
; Val
: Node_Id
) is
6168 pragma Assert
(False
6169 or else NT
(N
).Nkind
= N_Identifier
);
6170 Set_Node2
(N
, Val
); -- semantic field, no parent set
6171 end Set_Original_Discriminant
;
6173 procedure Set_Original_Entity
6174 (N
: Node_Id
; Val
: Entity_Id
) is
6176 pragma Assert
(False
6177 or else NT
(N
).Nkind
= N_Integer_Literal
6178 or else NT
(N
).Nkind
= N_Real_Literal
);
6179 Set_Node2
(N
, Val
); -- semantic field, no parent set
6180 end Set_Original_Entity
;
6182 procedure Set_Others_Discrete_Choices
6183 (N
: Node_Id
; Val
: List_Id
) is
6185 pragma Assert
(False
6186 or else NT
(N
).Nkind
= N_Others_Choice
);
6187 Set_List1_With_Parent
(N
, Val
);
6188 end Set_Others_Discrete_Choices
;
6190 procedure Set_Out_Present
6191 (N
: Node_Id
; Val
: Boolean := True) is
6193 pragma Assert
(False
6194 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6195 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6196 Set_Flag17
(N
, Val
);
6197 end Set_Out_Present
;
6199 procedure Set_Parameter_Associations
6200 (N
: Node_Id
; Val
: List_Id
) is
6202 pragma Assert
(False
6203 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6204 or else NT
(N
).Nkind
= N_Function_Call
6205 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6206 Set_List3_With_Parent
(N
, Val
);
6207 end Set_Parameter_Associations
;
6209 procedure Set_Parameter_Specifications
6210 (N
: Node_Id
; Val
: List_Id
) is
6212 pragma Assert
(False
6213 or else NT
(N
).Nkind
= N_Accept_Statement
6214 or else NT
(N
).Nkind
= N_Access_Function_Definition
6215 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6216 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6217 or else NT
(N
).Nkind
= N_Entry_Declaration
6218 or else NT
(N
).Nkind
= N_Function_Specification
6219 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6220 Set_List3_With_Parent
(N
, Val
);
6221 end Set_Parameter_Specifications
;
6223 procedure Set_Parameter_Type
6224 (N
: Node_Id
; Val
: Node_Id
) is
6226 pragma Assert
(False
6227 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6228 Set_Node2_With_Parent
(N
, Val
);
6229 end Set_Parameter_Type
;
6231 procedure Set_Parent_Spec
6232 (N
: Node_Id
; Val
: Node_Id
) is
6234 pragma Assert
(False
6235 or else NT
(N
).Nkind
= N_Function_Instantiation
6236 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6237 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6238 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6239 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6240 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6241 or else NT
(N
).Nkind
= N_Package_Declaration
6242 or else NT
(N
).Nkind
= N_Package_Instantiation
6243 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6244 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6245 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6246 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6247 Set_Node4
(N
, Val
); -- semantic field, no parent set
6248 end Set_Parent_Spec
;
6250 procedure Set_Parent_With
6251 (N
: Node_Id
; Val
: Boolean := True) is
6253 pragma Assert
(False
6254 or else NT
(N
).Nkind
= N_With_Clause
);
6256 end Set_Parent_With
;
6258 procedure Set_Position
6259 (N
: Node_Id
; Val
: Node_Id
) is
6261 pragma Assert
(False
6262 or else NT
(N
).Nkind
= N_Component_Clause
);
6263 Set_Node2_With_Parent
(N
, Val
);
6266 procedure Set_Pragma_Argument_Associations
6267 (N
: Node_Id
; Val
: List_Id
) is
6269 pragma Assert
(False
6270 or else NT
(N
).Nkind
= N_Pragma
);
6271 Set_List2_With_Parent
(N
, Val
);
6272 end Set_Pragma_Argument_Associations
;
6274 procedure Set_Pragma_Identifier
6275 (N
: Node_Id
; Val
: Node_Id
) is
6277 pragma Assert
(False
6278 or else NT
(N
).Nkind
= N_Pragma
);
6279 Set_Node4_With_Parent
(N
, Val
);
6280 end Set_Pragma_Identifier
;
6282 procedure Set_Pragmas_After
6283 (N
: Node_Id
; Val
: List_Id
) is
6285 pragma Assert
(False
6286 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6287 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6288 Set_List5_With_Parent
(N
, Val
);
6289 end Set_Pragmas_After
;
6291 procedure Set_Pragmas_Before
6292 (N
: Node_Id
; Val
: List_Id
) is
6294 pragma Assert
(False
6295 or else NT
(N
).Nkind
= N_Accept_Alternative
6296 or else NT
(N
).Nkind
= N_Delay_Alternative
6297 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6298 or else NT
(N
).Nkind
= N_Mod_Clause
6299 or else NT
(N
).Nkind
= N_Terminate_Alternative
6300 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6301 Set_List4_With_Parent
(N
, Val
);
6302 end Set_Pragmas_Before
;
6304 procedure Set_Pre_Post_Conditions
6305 (N
: Node_Id
; Val
: Node_Id
) is
6307 pragma Assert
(False
6308 or else NT
(N
).Nkind
= N_Contract
);
6309 Set_Node1
(N
, Val
); -- semantic field, no parent set
6310 end Set_Pre_Post_Conditions
;
6312 procedure Set_Prefix
6313 (N
: Node_Id
; Val
: Node_Id
) is
6315 pragma Assert
(False
6316 or else NT
(N
).Nkind
= N_Attribute_Reference
6317 or else NT
(N
).Nkind
= N_Expanded_Name
6318 or else NT
(N
).Nkind
= N_Explicit_Dereference
6319 or else NT
(N
).Nkind
= N_Indexed_Component
6320 or else NT
(N
).Nkind
= N_Reference
6321 or else NT
(N
).Nkind
= N_Selected_Component
6322 or else NT
(N
).Nkind
= N_Slice
);
6323 Set_Node3_With_Parent
(N
, Val
);
6326 procedure Set_Premature_Use
6327 (N
: Node_Id
; Val
: Node_Id
) is
6329 pragma Assert
(False
6330 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6332 end Set_Premature_Use
;
6334 procedure Set_Present_Expr
6335 (N
: Node_Id
; Val
: Uint
) is
6337 pragma Assert
(False
6338 or else NT
(N
).Nkind
= N_Variant
);
6340 end Set_Present_Expr
;
6342 procedure Set_Prev_Ids
6343 (N
: Node_Id
; Val
: Boolean := True) is
6345 pragma Assert
(False
6346 or else NT
(N
).Nkind
= N_Component_Declaration
6347 or else NT
(N
).Nkind
= N_Discriminant_Specification
6348 or else NT
(N
).Nkind
= N_Exception_Declaration
6349 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6350 or else NT
(N
).Nkind
= N_Number_Declaration
6351 or else NT
(N
).Nkind
= N_Object_Declaration
6352 or else NT
(N
).Nkind
= N_Parameter_Specification
6353 or else NT
(N
).Nkind
= N_Use_Package_Clause
6354 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6358 procedure Set_Prev_Use_Clause
6359 (N
: Node_Id
; Val
: Node_Id
) is
6361 pragma Assert
(False
6362 or else NT
(N
).Nkind
= N_Use_Package_Clause
6363 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6364 Set_Node1
(N
, Val
); -- semantic field, no parent set
6365 end Set_Prev_Use_Clause
;
6367 procedure Set_Print_In_Hex
6368 (N
: Node_Id
; Val
: Boolean := True) is
6370 pragma Assert
(False
6371 or else NT
(N
).Nkind
= N_Integer_Literal
);
6372 Set_Flag13
(N
, Val
);
6373 end Set_Print_In_Hex
;
6375 procedure Set_Private_Declarations
6376 (N
: Node_Id
; Val
: List_Id
) is
6378 pragma Assert
(False
6379 or else NT
(N
).Nkind
= N_Package_Specification
6380 or else NT
(N
).Nkind
= N_Protected_Definition
6381 or else NT
(N
).Nkind
= N_Task_Definition
);
6382 Set_List3_With_Parent
(N
, Val
);
6383 end Set_Private_Declarations
;
6385 procedure Set_Private_Present
6386 (N
: Node_Id
; Val
: Boolean := True) is
6388 pragma Assert
(False
6389 or else NT
(N
).Nkind
= N_Compilation_Unit
6390 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6391 or else NT
(N
).Nkind
= N_With_Clause
);
6392 Set_Flag15
(N
, Val
);
6393 end Set_Private_Present
;
6395 procedure Set_Procedure_To_Call
6396 (N
: Node_Id
; Val
: Node_Id
) is
6398 pragma Assert
(False
6399 or else NT
(N
).Nkind
= N_Allocator
6400 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6401 or else NT
(N
).Nkind
= N_Free_Statement
6402 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6403 Set_Node2
(N
, Val
); -- semantic field, no parent set
6404 end Set_Procedure_To_Call
;
6406 procedure Set_Proper_Body
6407 (N
: Node_Id
; Val
: Node_Id
) is
6409 pragma Assert
(False
6410 or else NT
(N
).Nkind
= N_Subunit
);
6411 Set_Node1_With_Parent
(N
, Val
);
6412 end Set_Proper_Body
;
6414 procedure Set_Protected_Definition
6415 (N
: Node_Id
; Val
: Node_Id
) is
6417 pragma Assert
(False
6418 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6419 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6420 Set_Node3_With_Parent
(N
, Val
);
6421 end Set_Protected_Definition
;
6423 procedure Set_Protected_Present
6424 (N
: Node_Id
; Val
: Boolean := True) is
6426 pragma Assert
(False
6427 or else NT
(N
).Nkind
= N_Access_Function_Definition
6428 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6429 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6430 or else NT
(N
).Nkind
= N_Record_Definition
);
6432 end Set_Protected_Present
;
6434 procedure Set_Raises_Constraint_Error
6435 (N
: Node_Id
; Val
: Boolean := True) is
6437 pragma Assert
(False
6438 or else NT
(N
).Nkind
in N_Subexpr
);
6440 end Set_Raises_Constraint_Error
;
6442 procedure Set_Range_Constraint
6443 (N
: Node_Id
; Val
: Node_Id
) is
6445 pragma Assert
(False
6446 or else NT
(N
).Nkind
= N_Delta_Constraint
6447 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6448 Set_Node4_With_Parent
(N
, Val
);
6449 end Set_Range_Constraint
;
6451 procedure Set_Range_Expression
6452 (N
: Node_Id
; Val
: Node_Id
) is
6454 pragma Assert
(False
6455 or else NT
(N
).Nkind
= N_Range_Constraint
);
6456 Set_Node4_With_Parent
(N
, Val
);
6457 end Set_Range_Expression
;
6459 procedure Set_Real_Range_Specification
6460 (N
: Node_Id
; Val
: Node_Id
) is
6462 pragma Assert
(False
6463 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6464 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6465 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6466 Set_Node4_With_Parent
(N
, Val
);
6467 end Set_Real_Range_Specification
;
6469 procedure Set_Realval
6470 (N
: Node_Id
; Val
: Ureal
) is
6472 pragma Assert
(False
6473 or else NT
(N
).Nkind
= N_Real_Literal
);
6474 Set_Ureal3
(N
, Val
);
6477 procedure Set_Reason
6478 (N
: Node_Id
; Val
: Uint
) is
6480 pragma Assert
(False
6481 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6482 or else NT
(N
).Nkind
= N_Raise_Program_Error
6483 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6487 procedure Set_Record_Extension_Part
6488 (N
: Node_Id
; Val
: Node_Id
) is
6490 pragma Assert
(False
6491 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6492 Set_Node3_With_Parent
(N
, Val
);
6493 end Set_Record_Extension_Part
;
6495 procedure Set_Redundant_Use
6496 (N
: Node_Id
; Val
: Boolean := True) is
6498 pragma Assert
(False
6499 or else NT
(N
).Nkind
= N_Attribute_Reference
6500 or else NT
(N
).Nkind
= N_Expanded_Name
6501 or else NT
(N
).Nkind
= N_Identifier
);
6502 Set_Flag13
(N
, Val
);
6503 end Set_Redundant_Use
;
6505 procedure Set_Renaming_Exception
6506 (N
: Node_Id
; Val
: Node_Id
) is
6508 pragma Assert
(False
6509 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6511 end Set_Renaming_Exception
;
6513 procedure Set_Result_Definition
6514 (N
: Node_Id
; Val
: Node_Id
) is
6516 pragma Assert
(False
6517 or else NT
(N
).Nkind
= N_Access_Function_Definition
6518 or else NT
(N
).Nkind
= N_Function_Specification
);
6519 Set_Node4_With_Parent
(N
, Val
);
6520 end Set_Result_Definition
;
6522 procedure Set_Return_Object_Declarations
6523 (N
: Node_Id
; Val
: List_Id
) is
6525 pragma Assert
(False
6526 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6527 Set_List3_With_Parent
(N
, Val
);
6528 end Set_Return_Object_Declarations
;
6530 procedure Set_Return_Statement_Entity
6531 (N
: Node_Id
; Val
: Node_Id
) is
6533 pragma Assert
(False
6534 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6535 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6536 Set_Node5
(N
, Val
); -- semantic field, no parent set
6537 end Set_Return_Statement_Entity
;
6539 procedure Set_Reverse_Present
6540 (N
: Node_Id
; Val
: Boolean := True) is
6542 pragma Assert
(False
6543 or else NT
(N
).Nkind
= N_Iterator_Specification
6544 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6545 Set_Flag15
(N
, Val
);
6546 end Set_Reverse_Present
;
6548 procedure Set_Right_Opnd
6549 (N
: Node_Id
; Val
: Node_Id
) is
6551 pragma Assert
(False
6552 or else NT
(N
).Nkind
in N_Op
6553 or else NT
(N
).Nkind
= N_And_Then
6554 or else NT
(N
).Nkind
= N_In
6555 or else NT
(N
).Nkind
= N_Not_In
6556 or else NT
(N
).Nkind
= N_Or_Else
);
6557 Set_Node3_With_Parent
(N
, Val
);
6560 procedure Set_Rounded_Result
6561 (N
: Node_Id
; Val
: Boolean := True) is
6563 pragma Assert
(False
6564 or else NT
(N
).Nkind
= N_Op_Divide
6565 or else NT
(N
).Nkind
= N_Op_Multiply
6566 or else NT
(N
).Nkind
= N_Type_Conversion
);
6567 Set_Flag18
(N
, Val
);
6568 end Set_Rounded_Result
;
6570 procedure Set_SCIL_Controlling_Tag
6571 (N
: Node_Id
; Val
: Node_Id
) is
6573 pragma Assert
(False
6574 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6575 Set_Node5
(N
, Val
); -- semantic field, no parent set
6576 end Set_SCIL_Controlling_Tag
;
6578 procedure Set_SCIL_Entity
6579 (N
: Node_Id
; Val
: Node_Id
) is
6581 pragma Assert
(False
6582 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6583 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6584 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6585 Set_Node4
(N
, Val
); -- semantic field, no parent set
6586 end Set_SCIL_Entity
;
6588 procedure Set_SCIL_Tag_Value
6589 (N
: Node_Id
; Val
: Node_Id
) is
6591 pragma Assert
(False
6592 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6593 Set_Node5
(N
, Val
); -- semantic field, no parent set
6594 end Set_SCIL_Tag_Value
;
6596 procedure Set_SCIL_Target_Prim
6597 (N
: Node_Id
; Val
: Node_Id
) is
6599 pragma Assert
(False
6600 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6601 Set_Node2
(N
, Val
); -- semantic field, no parent set
6602 end Set_SCIL_Target_Prim
;
6605 (N
: Node_Id
; Val
: Node_Id
) is
6607 pragma Assert
(False
6608 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6609 or else NT
(N
).Nkind
= N_Defining_Identifier
6610 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6611 Set_Node3
(N
, Val
); -- semantic field, no parent set
6614 procedure Set_Select_Alternatives
6615 (N
: Node_Id
; Val
: List_Id
) is
6617 pragma Assert
(False
6618 or else NT
(N
).Nkind
= N_Selective_Accept
);
6619 Set_List1_With_Parent
(N
, Val
);
6620 end Set_Select_Alternatives
;
6622 procedure Set_Selector_Name
6623 (N
: Node_Id
; Val
: Node_Id
) is
6625 pragma Assert
(False
6626 or else NT
(N
).Nkind
= N_Expanded_Name
6627 or else NT
(N
).Nkind
= N_Generic_Association
6628 or else NT
(N
).Nkind
= N_Parameter_Association
6629 or else NT
(N
).Nkind
= N_Selected_Component
);
6630 Set_Node2_With_Parent
(N
, Val
);
6631 end Set_Selector_Name
;
6633 procedure Set_Selector_Names
6634 (N
: Node_Id
; Val
: List_Id
) is
6636 pragma Assert
(False
6637 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6638 Set_List1_With_Parent
(N
, Val
);
6639 end Set_Selector_Names
;
6641 procedure Set_Shift_Count_OK
6642 (N
: Node_Id
; Val
: Boolean := True) is
6644 pragma Assert
(False
6645 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6646 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6647 or else NT
(N
).Nkind
= N_Op_Shift_Left
6648 or else NT
(N
).Nkind
= N_Op_Shift_Right
6649 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6651 end Set_Shift_Count_OK
;
6653 procedure Set_Source_Type
6654 (N
: Node_Id
; Val
: Entity_Id
) is
6656 pragma Assert
(False
6657 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6658 Set_Node1
(N
, Val
); -- semantic field, no parent set
6659 end Set_Source_Type
;
6661 procedure Set_Specification
6662 (N
: Node_Id
; Val
: Node_Id
) is
6664 pragma Assert
(False
6665 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6666 or else NT
(N
).Nkind
= N_Expression_Function
6667 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6668 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6669 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6670 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6671 or else NT
(N
).Nkind
= N_Package_Declaration
6672 or else NT
(N
).Nkind
= N_Subprogram_Body
6673 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6674 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6675 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6676 Set_Node1_With_Parent
(N
, Val
);
6677 end Set_Specification
;
6679 procedure Set_Split_PPC
6680 (N
: Node_Id
; Val
: Boolean) is
6682 pragma Assert
(False
6683 or else NT
(N
).Nkind
= N_Aspect_Specification
6684 or else NT
(N
).Nkind
= N_Pragma
);
6685 Set_Flag17
(N
, Val
);
6688 procedure Set_Statements
6689 (N
: Node_Id
; Val
: List_Id
) is
6691 pragma Assert
(False
6692 or else NT
(N
).Nkind
= N_Abortable_Part
6693 or else NT
(N
).Nkind
= N_Accept_Alternative
6694 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6695 or else NT
(N
).Nkind
= N_Delay_Alternative
6696 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6697 or else NT
(N
).Nkind
= N_Exception_Handler
6698 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6699 or else NT
(N
).Nkind
= N_Loop_Statement
6700 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6701 Set_List3_With_Parent
(N
, Val
);
6704 procedure Set_Storage_Pool
6705 (N
: Node_Id
; Val
: Node_Id
) is
6707 pragma Assert
(False
6708 or else NT
(N
).Nkind
= N_Allocator
6709 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6710 or else NT
(N
).Nkind
= N_Free_Statement
6711 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6712 Set_Node1
(N
, Val
); -- semantic field, no parent set
6713 end Set_Storage_Pool
;
6715 procedure Set_Subpool_Handle_Name
6716 (N
: Node_Id
; Val
: Node_Id
) is
6718 pragma Assert
(False
6719 or else NT
(N
).Nkind
= N_Allocator
);
6720 Set_Node4_With_Parent
(N
, Val
);
6721 end Set_Subpool_Handle_Name
;
6723 procedure Set_Strval
6724 (N
: Node_Id
; Val
: String_Id
) is
6726 pragma Assert
(False
6727 or else NT
(N
).Nkind
= N_Operator_Symbol
6728 or else NT
(N
).Nkind
= N_String_Literal
);
6732 procedure Set_Subtype_Indication
6733 (N
: Node_Id
; Val
: Node_Id
) is
6735 pragma Assert
(False
6736 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6737 or else NT
(N
).Nkind
= N_Component_Definition
6738 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6739 or else NT
(N
).Nkind
= N_Iterator_Specification
6740 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6741 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6742 Set_Node5_With_Parent
(N
, Val
);
6743 end Set_Subtype_Indication
;
6745 procedure Set_Subtype_Mark
6746 (N
: Node_Id
; Val
: Node_Id
) is
6748 pragma Assert
(False
6749 or else NT
(N
).Nkind
= N_Access_Definition
6750 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6751 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6752 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6753 or else NT
(N
).Nkind
= N_Qualified_Expression
6754 or else NT
(N
).Nkind
= N_Subtype_Indication
6755 or else NT
(N
).Nkind
= N_Type_Conversion
6756 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6757 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6758 Set_Node4_With_Parent
(N
, Val
);
6759 end Set_Subtype_Mark
;
6761 procedure Set_Subtype_Marks
6762 (N
: Node_Id
; Val
: List_Id
) is
6764 pragma Assert
(False
6765 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6766 Set_List2_With_Parent
(N
, Val
);
6767 end Set_Subtype_Marks
;
6769 procedure Set_Suppress_Assignment_Checks
6770 (N
: Node_Id
; Val
: Boolean := True) is
6772 pragma Assert
(False
6773 or else NT
(N
).Nkind
= N_Assignment_Statement
6774 or else NT
(N
).Nkind
= N_Object_Declaration
);
6775 Set_Flag18
(N
, Val
);
6776 end Set_Suppress_Assignment_Checks
;
6778 procedure Set_Suppress_Loop_Warnings
6779 (N
: Node_Id
; Val
: Boolean := True) is
6781 pragma Assert
(False
6782 or else NT
(N
).Nkind
= N_Loop_Statement
);
6783 Set_Flag17
(N
, Val
);
6784 end Set_Suppress_Loop_Warnings
;
6786 procedure Set_Synchronized_Present
6787 (N
: Node_Id
; Val
: Boolean := True) is
6789 pragma Assert
(False
6790 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6791 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6792 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6793 or else NT
(N
).Nkind
= N_Record_Definition
);
6795 end Set_Synchronized_Present
;
6797 procedure Set_Tagged_Present
6798 (N
: Node_Id
; Val
: Boolean := True) is
6800 pragma Assert
(False
6801 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6802 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6803 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6804 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6805 or else NT
(N
).Nkind
= N_Record_Definition
);
6806 Set_Flag15
(N
, Val
);
6807 end Set_Tagged_Present
;
6809 procedure Set_Target
6810 (N
: Node_Id
; Val
: Entity_Id
) is
6812 pragma Assert
(False
6813 or else NT
(N
).Nkind
= N_Call_Marker
6814 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
6815 Set_Node1
(N
, Val
); -- semantic field, no parent set
6818 procedure Set_Target_Type
6819 (N
: Node_Id
; Val
: Entity_Id
) is
6821 pragma Assert
(False
6822 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6823 Set_Node2
(N
, Val
); -- semantic field, no parent set
6824 end Set_Target_Type
;
6826 procedure Set_Task_Definition
6827 (N
: Node_Id
; Val
: Node_Id
) is
6829 pragma Assert
(False
6830 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6831 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6832 Set_Node3_With_Parent
(N
, Val
);
6833 end Set_Task_Definition
;
6835 procedure Set_Task_Present
6836 (N
: Node_Id
; Val
: Boolean := True) is
6838 pragma Assert
(False
6839 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6840 or else NT
(N
).Nkind
= N_Record_Definition
);
6842 end Set_Task_Present
;
6844 procedure Set_Then_Actions
6845 (N
: Node_Id
; Val
: List_Id
) is
6847 pragma Assert
(False
6848 or else NT
(N
).Nkind
= N_If_Expression
);
6849 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6850 end Set_Then_Actions
;
6852 procedure Set_Then_Statements
6853 (N
: Node_Id
; Val
: List_Id
) is
6855 pragma Assert
(False
6856 or else NT
(N
).Nkind
= N_Elsif_Part
6857 or else NT
(N
).Nkind
= N_If_Statement
);
6858 Set_List2_With_Parent
(N
, Val
);
6859 end Set_Then_Statements
;
6861 procedure Set_Treat_Fixed_As_Integer
6862 (N
: Node_Id
; Val
: Boolean := True) is
6864 pragma Assert
(False
6865 or else NT
(N
).Nkind
= N_Op_Divide
6866 or else NT
(N
).Nkind
= N_Op_Mod
6867 or else NT
(N
).Nkind
= N_Op_Multiply
6868 or else NT
(N
).Nkind
= N_Op_Rem
);
6869 Set_Flag14
(N
, Val
);
6870 end Set_Treat_Fixed_As_Integer
;
6872 procedure Set_Triggering_Alternative
6873 (N
: Node_Id
; Val
: Node_Id
) is
6875 pragma Assert
(False
6876 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6877 Set_Node1_With_Parent
(N
, Val
);
6878 end Set_Triggering_Alternative
;
6880 procedure Set_Triggering_Statement
6881 (N
: Node_Id
; Val
: Node_Id
) is
6883 pragma Assert
(False
6884 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6885 Set_Node1_With_Parent
(N
, Val
);
6886 end Set_Triggering_Statement
;
6888 procedure Set_TSS_Elist
6889 (N
: Node_Id
; Val
: Elist_Id
) is
6891 pragma Assert
(False
6892 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6893 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6896 procedure Set_Uneval_Old_Accept
6897 (N
: Node_Id
; Val
: Boolean := True) is
6899 pragma Assert
(False
6900 or else NT
(N
).Nkind
= N_Pragma
);
6902 end Set_Uneval_Old_Accept
;
6904 procedure Set_Uneval_Old_Warn
6905 (N
: Node_Id
; Val
: Boolean := True) is
6907 pragma Assert
(False
6908 or else NT
(N
).Nkind
= N_Pragma
);
6909 Set_Flag18
(N
, Val
);
6910 end Set_Uneval_Old_Warn
;
6912 procedure Set_Type_Definition
6913 (N
: Node_Id
; Val
: Node_Id
) is
6915 pragma Assert
(False
6916 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6917 Set_Node3_With_Parent
(N
, Val
);
6918 end Set_Type_Definition
;
6921 (N
: Node_Id
; Val
: Node_Id
) is
6923 pragma Assert
(False
6924 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6925 Set_Node2_With_Parent
(N
, Val
);
6928 procedure Set_Unknown_Discriminants_Present
6929 (N
: Node_Id
; Val
: Boolean := True) is
6931 pragma Assert
(False
6932 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6933 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6934 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6935 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6936 Set_Flag13
(N
, Val
);
6937 end Set_Unknown_Discriminants_Present
;
6939 procedure Set_Unreferenced_In_Spec
6940 (N
: Node_Id
; Val
: Boolean := True) is
6942 pragma Assert
(False
6943 or else NT
(N
).Nkind
= N_With_Clause
);
6945 end Set_Unreferenced_In_Spec
;
6947 procedure Set_Variant_Part
6948 (N
: Node_Id
; Val
: Node_Id
) is
6950 pragma Assert
(False
6951 or else NT
(N
).Nkind
= N_Component_List
);
6952 Set_Node4_With_Parent
(N
, Val
);
6953 end Set_Variant_Part
;
6955 procedure Set_Variants
6956 (N
: Node_Id
; Val
: List_Id
) is
6958 pragma Assert
(False
6959 or else NT
(N
).Nkind
= N_Variant_Part
);
6960 Set_List1_With_Parent
(N
, Val
);
6963 procedure Set_Visible_Declarations
6964 (N
: Node_Id
; Val
: List_Id
) is
6966 pragma Assert
(False
6967 or else NT
(N
).Nkind
= N_Package_Specification
6968 or else NT
(N
).Nkind
= N_Protected_Definition
6969 or else NT
(N
).Nkind
= N_Task_Definition
);
6970 Set_List2_With_Parent
(N
, Val
);
6971 end Set_Visible_Declarations
;
6973 procedure Set_Uninitialized_Variable
6974 (N
: Node_Id
; Val
: Node_Id
) is
6976 pragma Assert
(False
6977 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6978 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6980 end Set_Uninitialized_Variable
;
6982 procedure Set_Used_Operations
6983 (N
: Node_Id
; Val
: Elist_Id
) is
6985 pragma Assert
(False
6986 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6987 Set_Elist2
(N
, Val
);
6988 end Set_Used_Operations
;
6990 procedure Set_Was_Attribute_Reference
6991 (N
: Node_Id
; Val
: Boolean := True) is
6993 pragma Assert
(False
6994 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6996 end Set_Was_Attribute_Reference
;
6998 procedure Set_Was_Expression_Function
6999 (N
: Node_Id
; Val
: Boolean := True) is
7001 pragma Assert
(False
7002 or else NT
(N
).Nkind
= N_Subprogram_Body
);
7003 Set_Flag18
(N
, Val
);
7004 end Set_Was_Expression_Function
;
7006 procedure Set_Was_Originally_Stub
7007 (N
: Node_Id
; Val
: Boolean := True) is
7009 pragma Assert
(False
7010 or else NT
(N
).Nkind
= N_Package_Body
7011 or else NT
(N
).Nkind
= N_Protected_Body
7012 or else NT
(N
).Nkind
= N_Subprogram_Body
7013 or else NT
(N
).Nkind
= N_Task_Body
);
7014 Set_Flag13
(N
, Val
);
7015 end Set_Was_Originally_Stub
;
7017 -------------------------
7018 -- Iterator Procedures --
7019 -------------------------
7021 procedure Next_Entity
(N
: in out Node_Id
) is
7023 N
:= Next_Entity
(N
);
7026 procedure Next_Named_Actual
(N
: in out Node_Id
) is
7028 N
:= Next_Named_Actual
(N
);
7029 end Next_Named_Actual
;
7031 procedure Next_Rep_Item
(N
: in out Node_Id
) is
7033 N
:= Next_Rep_Item
(N
);
7036 procedure Next_Use_Clause
(N
: in out Node_Id
) is
7038 N
:= Next_Use_Clause
(N
);
7039 end Next_Use_Clause
;
7045 function End_Location
(N
: Node_Id
) return Source_Ptr
is
7046 L
: constant Uint
:= End_Span
(N
);
7051 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
7055 --------------------
7056 -- Get_Pragma_Arg --
7057 --------------------
7059 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
7061 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
7062 return Expression
(Arg
);
7068 ----------------------
7069 -- Set_End_Location --
7070 ----------------------
7072 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
7075 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
7076 end Set_End_Location
;
7085 V2
: Node_Kind
) return Boolean
7088 return T
= V1
or else
7096 V3
: Node_Kind
) return Boolean
7099 return T
= V1
or else
7109 V4
: Node_Kind
) return Boolean
7112 return T
= V1
or else
7124 V5
: Node_Kind
) return Boolean
7127 return T
= V1
or else
7141 V6
: Node_Kind
) return Boolean
7144 return T
= V1
or else
7160 V7
: Node_Kind
) return Boolean
7163 return T
= V1
or else
7181 V8
: Node_Kind
) return Boolean
7184 return T
= V1
or else
7204 V9
: Node_Kind
) return Boolean
7207 return T
= V1
or else
7229 V10
: Node_Kind
) return Boolean
7232 return T
= V1
or else
7256 V11
: Node_Kind
) return Boolean
7259 return T
= V1
or else
7272 --------------------------
7273 -- Pragma_Name_Unmapped --
7274 --------------------------
7276 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7278 return Chars
(Pragma_Identifier
(N
));
7279 end Pragma_Name_Unmapped
;
7281 ---------------------
7282 -- Map_Pragma_Name --
7283 ---------------------
7285 -- We don't want to introduce a dependence on some hash table package or
7286 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7287 -- search. Linear search is plenty efficient, given that we don't expect
7288 -- more than a couple of entries in the mapping.
7290 type Name_Pair
is record
7295 type Pragma_Map_Index
is range 1 .. 100;
7296 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7297 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7299 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7301 if Last_Pair
= Pragma_Map
'Last then
7302 raise Too_Many_Pragma_Mappings
;
7305 Last_Pair
:= Last_Pair
+ 1;
7306 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7307 end Map_Pragma_Name
;
7313 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7314 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7316 for J
in Pragma_Map
'First .. Last_Pair
loop
7317 if Result
= Pragma_Map
(J
).Key
then
7318 return Pragma_Map
(J
).Value
;