1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2019, 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_On_Partial_View
273 (N
: Node_Id
) return Boolean is
276 or else NT
(N
).Nkind
= N_Aspect_Specification
);
278 end Aspect_On_Partial_View
;
280 function Aspect_Rep_Item
281 (N
: Node_Id
) return Node_Id
is
284 or else NT
(N
).Nkind
= N_Aspect_Specification
);
288 function Assignment_OK
289 (N
: Node_Id
) return Boolean is
292 or else NT
(N
).Nkind
= N_Object_Declaration
293 or else NT
(N
).Nkind
in N_Subexpr
);
297 function Associated_Node
298 (N
: Node_Id
) return Node_Id
is
301 or else NT
(N
).Nkind
in N_Has_Entity
302 or else NT
(N
).Nkind
= N_Aggregate
303 or else NT
(N
).Nkind
= N_Extension_Aggregate
304 or else NT
(N
).Nkind
= N_Selected_Component
305 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
310 (N
: Node_Id
) return Node_Id
is
313 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
317 function Attribute_Name
318 (N
: Node_Id
) return Name_Id
is
321 or else NT
(N
).Nkind
= N_Attribute_Reference
);
325 function Aux_Decls_Node
326 (N
: Node_Id
) return Node_Id
is
329 or else NT
(N
).Nkind
= N_Compilation_Unit
);
333 function Backwards_OK
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Assignment_Statement
);
341 function Bad_Is_Detected
342 (N
: Node_Id
) return Boolean is
345 or else NT
(N
).Nkind
= N_Subprogram_Body
);
349 function Body_Required
350 (N
: Node_Id
) return Boolean is
353 or else NT
(N
).Nkind
= N_Compilation_Unit
);
357 function Body_To_Inline
358 (N
: Node_Id
) return Node_Id
is
361 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
366 (N
: Node_Id
) return Boolean is
369 or else NT
(N
).Nkind
= N_Component_Association
370 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
371 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
372 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
373 or else NT
(N
).Nkind
= N_Generic_Association
374 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
379 (N
: Node_Id
) return Boolean is
382 or else NT
(N
).Nkind
= N_Extended_Return_Statement
383 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
387 function Char_Literal_Value
388 (N
: Node_Id
) return Uint
is
391 or else NT
(N
).Nkind
= N_Character_Literal
);
393 end Char_Literal_Value
;
396 (N
: Node_Id
) return Name_Id
is
399 or else NT
(N
).Nkind
in N_Has_Chars
);
403 function Check_Address_Alignment
404 (N
: Node_Id
) return Boolean is
407 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
409 end Check_Address_Alignment
;
411 function Choice_Parameter
412 (N
: Node_Id
) return Node_Id
is
415 or else NT
(N
).Nkind
= N_Exception_Handler
);
417 end Choice_Parameter
;
420 (N
: Node_Id
) return List_Id
is
423 or else NT
(N
).Nkind
= N_Component_Association
);
427 function Class_Present
428 (N
: Node_Id
) return Boolean is
431 or else NT
(N
).Nkind
= N_Aspect_Specification
432 or else NT
(N
).Nkind
= N_Pragma
);
436 function Classifications
437 (N
: Node_Id
) return Node_Id
is
440 or else NT
(N
).Nkind
= N_Contract
);
444 function Cleanup_Actions
445 (N
: Node_Id
) return List_Id
is
448 or else NT
(N
).Nkind
= N_Block_Statement
);
452 function Comes_From_Extended_Return_Statement
453 (N
: Node_Id
) return Boolean is
456 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
458 end Comes_From_Extended_Return_Statement
;
460 function Compile_Time_Known_Aggregate
461 (N
: Node_Id
) return Boolean is
464 or else NT
(N
).Nkind
= N_Aggregate
);
466 end Compile_Time_Known_Aggregate
;
468 function Component_Associations
469 (N
: Node_Id
) return List_Id
is
472 or else NT
(N
).Nkind
= N_Aggregate
473 or else NT
(N
).Nkind
= N_Delta_Aggregate
474 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
476 end Component_Associations
;
478 function Component_Clauses
479 (N
: Node_Id
) return List_Id
is
482 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
484 end Component_Clauses
;
486 function Component_Definition
487 (N
: Node_Id
) return Node_Id
is
490 or else NT
(N
).Nkind
= N_Component_Declaration
491 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
492 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
494 end Component_Definition
;
496 function Component_Items
497 (N
: Node_Id
) return List_Id
is
500 or else NT
(N
).Nkind
= N_Component_List
);
504 function Component_List
505 (N
: Node_Id
) return Node_Id
is
508 or else NT
(N
).Nkind
= N_Record_Definition
509 or else NT
(N
).Nkind
= N_Variant
);
513 function Component_Name
514 (N
: Node_Id
) return Node_Id
is
517 or else NT
(N
).Nkind
= N_Component_Clause
);
521 function Componentwise_Assignment
522 (N
: Node_Id
) return Boolean is
525 or else NT
(N
).Nkind
= N_Assignment_Statement
);
527 end Componentwise_Assignment
;
530 (N
: Node_Id
) return Node_Id
is
533 or else NT
(N
).Nkind
= N_Accept_Alternative
534 or else NT
(N
).Nkind
= N_Delay_Alternative
535 or else NT
(N
).Nkind
= N_Elsif_Part
536 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
537 or else NT
(N
).Nkind
= N_Exit_Statement
538 or else NT
(N
).Nkind
= N_If_Statement
539 or else NT
(N
).Nkind
= N_Iteration_Scheme
540 or else NT
(N
).Nkind
= N_Quantified_Expression
541 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
542 or else NT
(N
).Nkind
= N_Raise_Program_Error
543 or else NT
(N
).Nkind
= N_Raise_Storage_Error
544 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
548 function Condition_Actions
549 (N
: Node_Id
) return List_Id
is
552 or else NT
(N
).Nkind
= N_Elsif_Part
553 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
555 end Condition_Actions
;
557 function Config_Pragmas
558 (N
: Node_Id
) return List_Id
is
561 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
565 function Constant_Present
566 (N
: Node_Id
) return Boolean is
569 or else NT
(N
).Nkind
= N_Access_Definition
570 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
571 or else NT
(N
).Nkind
= N_Object_Declaration
);
573 end Constant_Present
;
576 (N
: Node_Id
) return Node_Id
is
579 or else NT
(N
).Nkind
= N_Subtype_Indication
);
584 (N
: Node_Id
) return List_Id
is
587 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
591 function Context_Installed
592 (N
: Node_Id
) return Boolean is
595 or else NT
(N
).Nkind
= N_With_Clause
);
597 end Context_Installed
;
599 function Context_Items
600 (N
: Node_Id
) return List_Id
is
603 or else NT
(N
).Nkind
= N_Compilation_Unit
);
607 function Context_Pending
608 (N
: Node_Id
) return Boolean is
611 or else NT
(N
).Nkind
= N_Compilation_Unit
);
615 function Contract_Test_Cases
616 (N
: Node_Id
) return Node_Id
is
619 or else NT
(N
).Nkind
= N_Contract
);
621 end Contract_Test_Cases
;
623 function Controlling_Argument
624 (N
: Node_Id
) return Node_Id
is
627 or else NT
(N
).Nkind
= N_Function_Call
628 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
630 end Controlling_Argument
;
632 function Conversion_OK
633 (N
: Node_Id
) return Boolean is
636 or else NT
(N
).Nkind
= N_Type_Conversion
);
640 function Convert_To_Return_False
641 (N
: Node_Id
) return Boolean is
644 or else NT
(N
).Nkind
= N_Raise_Expression
);
646 end Convert_To_Return_False
;
648 function Corresponding_Aspect
649 (N
: Node_Id
) return Node_Id
is
652 or else NT
(N
).Nkind
= N_Pragma
);
654 end Corresponding_Aspect
;
656 function Corresponding_Body
657 (N
: Node_Id
) return Node_Id
is
660 or else NT
(N
).Nkind
= N_Entry_Declaration
661 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
662 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
663 or else NT
(N
).Nkind
= N_Package_Body_Stub
664 or else NT
(N
).Nkind
= N_Package_Declaration
665 or else NT
(N
).Nkind
= N_Protected_Body_Stub
666 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
667 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
668 or else NT
(N
).Nkind
= N_Subprogram_Declaration
669 or else NT
(N
).Nkind
= N_Task_Body_Stub
670 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
672 end Corresponding_Body
;
674 function Corresponding_Formal_Spec
675 (N
: Node_Id
) return Node_Id
is
678 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
680 end Corresponding_Formal_Spec
;
682 function Corresponding_Generic_Association
683 (N
: Node_Id
) return Node_Id
is
686 or else NT
(N
).Nkind
= N_Object_Declaration
687 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
689 end Corresponding_Generic_Association
;
691 function Corresponding_Integer_Value
692 (N
: Node_Id
) return Uint
is
695 or else NT
(N
).Nkind
= N_Real_Literal
);
697 end Corresponding_Integer_Value
;
699 function Corresponding_Spec
700 (N
: Node_Id
) return Entity_Id
is
703 or else NT
(N
).Nkind
= N_Expression_Function
704 or else NT
(N
).Nkind
= N_Package_Body
705 or else NT
(N
).Nkind
= N_Protected_Body
706 or else NT
(N
).Nkind
= N_Subprogram_Body
707 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
708 or else NT
(N
).Nkind
= N_Task_Body
709 or else NT
(N
).Nkind
= N_With_Clause
);
711 end Corresponding_Spec
;
713 function Corresponding_Spec_Of_Stub
714 (N
: Node_Id
) return Entity_Id
is
717 or else NT
(N
).Nkind
= N_Package_Body_Stub
718 or else NT
(N
).Nkind
= N_Protected_Body_Stub
719 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
720 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
722 end Corresponding_Spec_Of_Stub
;
724 function Corresponding_Stub
725 (N
: Node_Id
) return Node_Id
is
728 or else NT
(N
).Nkind
= N_Subunit
);
730 end Corresponding_Stub
;
732 function Dcheck_Function
733 (N
: Node_Id
) return Entity_Id
is
736 or else NT
(N
).Nkind
= N_Variant
);
740 function Declarations
741 (N
: Node_Id
) return List_Id
is
744 or else NT
(N
).Nkind
= N_Accept_Statement
745 or else NT
(N
).Nkind
= N_Block_Statement
746 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
747 or else NT
(N
).Nkind
= N_Entry_Body
748 or else NT
(N
).Nkind
= N_Package_Body
749 or else NT
(N
).Nkind
= N_Protected_Body
750 or else NT
(N
).Nkind
= N_Subprogram_Body
751 or else NT
(N
).Nkind
= N_Task_Body
);
755 function Default_Expression
756 (N
: Node_Id
) return Node_Id
is
759 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
760 or else NT
(N
).Nkind
= N_Parameter_Specification
);
762 end Default_Expression
;
764 function Default_Storage_Pool
765 (N
: Node_Id
) return Node_Id
is
768 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
770 end Default_Storage_Pool
;
772 function Default_Name
773 (N
: Node_Id
) return Node_Id
is
776 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
777 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
781 function Defining_Identifier
782 (N
: Node_Id
) return Entity_Id
is
785 or else NT
(N
).Nkind
= N_Component_Declaration
786 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
787 or else NT
(N
).Nkind
= N_Discriminant_Specification
788 or else NT
(N
).Nkind
= N_Entry_Body
789 or else NT
(N
).Nkind
= N_Entry_Declaration
790 or else NT
(N
).Nkind
= N_Entry_Index_Specification
791 or else NT
(N
).Nkind
= N_Exception_Declaration
792 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
793 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
794 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
795 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
796 or else NT
(N
).Nkind
= N_Full_Type_Declaration
797 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
798 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
799 or else NT
(N
).Nkind
= N_Iterated_Component_Association
800 or else NT
(N
).Nkind
= N_Iterator_Specification
801 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
802 or else NT
(N
).Nkind
= N_Number_Declaration
803 or else NT
(N
).Nkind
= N_Object_Declaration
804 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
805 or else NT
(N
).Nkind
= N_Package_Body_Stub
806 or else NT
(N
).Nkind
= N_Parameter_Specification
807 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
808 or else NT
(N
).Nkind
= N_Private_Type_Declaration
809 or else NT
(N
).Nkind
= N_Protected_Body
810 or else NT
(N
).Nkind
= N_Protected_Body_Stub
811 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
812 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
813 or else NT
(N
).Nkind
= N_Single_Task_Declaration
814 or else NT
(N
).Nkind
= N_Subtype_Declaration
815 or else NT
(N
).Nkind
= N_Task_Body
816 or else NT
(N
).Nkind
= N_Task_Body_Stub
817 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
819 end Defining_Identifier
;
821 function Defining_Unit_Name
822 (N
: Node_Id
) return Node_Id
is
825 or else NT
(N
).Nkind
= N_Function_Instantiation
826 or else NT
(N
).Nkind
= N_Function_Specification
827 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
828 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
829 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
830 or else NT
(N
).Nkind
= N_Package_Body
831 or else NT
(N
).Nkind
= N_Package_Instantiation
832 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
833 or else NT
(N
).Nkind
= N_Package_Specification
834 or else NT
(N
).Nkind
= N_Procedure_Instantiation
835 or else NT
(N
).Nkind
= N_Procedure_Specification
);
837 end Defining_Unit_Name
;
839 function Delay_Alternative
840 (N
: Node_Id
) return Node_Id
is
843 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
845 end Delay_Alternative
;
847 function Delay_Statement
848 (N
: Node_Id
) return Node_Id
is
851 or else NT
(N
).Nkind
= N_Delay_Alternative
);
855 function Delta_Expression
856 (N
: Node_Id
) return Node_Id
is
859 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
860 or else NT
(N
).Nkind
= N_Delta_Constraint
861 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
863 end Delta_Expression
;
865 function Digits_Expression
866 (N
: Node_Id
) return Node_Id
is
869 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
870 or else NT
(N
).Nkind
= N_Digits_Constraint
871 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
873 end Digits_Expression
;
875 function Discr_Check_Funcs_Built
876 (N
: Node_Id
) return Boolean is
879 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
881 end Discr_Check_Funcs_Built
;
883 function Discrete_Choices
884 (N
: Node_Id
) return List_Id
is
887 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
888 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
889 or else NT
(N
).Nkind
= N_Iterated_Component_Association
890 or else NT
(N
).Nkind
= N_Variant
);
892 end Discrete_Choices
;
894 function Discrete_Range
895 (N
: Node_Id
) return Node_Id
is
898 or else NT
(N
).Nkind
= N_Slice
);
902 function Discrete_Subtype_Definition
903 (N
: Node_Id
) return Node_Id
is
906 or else NT
(N
).Nkind
= N_Entry_Declaration
907 or else NT
(N
).Nkind
= N_Entry_Index_Specification
908 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
910 end Discrete_Subtype_Definition
;
912 function Discrete_Subtype_Definitions
913 (N
: Node_Id
) return List_Id
is
916 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
918 end Discrete_Subtype_Definitions
;
920 function Discriminant_Specifications
921 (N
: Node_Id
) return List_Id
is
924 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
925 or else NT
(N
).Nkind
= N_Full_Type_Declaration
926 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
927 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
928 or else NT
(N
).Nkind
= N_Private_Type_Declaration
929 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
930 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
932 end Discriminant_Specifications
;
934 function Discriminant_Type
935 (N
: Node_Id
) return Node_Id
is
938 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
940 end Discriminant_Type
;
942 function Do_Accessibility_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Parameter_Specification
);
948 end Do_Accessibility_Check
;
950 function Do_Discriminant_Check
951 (N
: Node_Id
) return Boolean is
954 or else NT
(N
).Nkind
= N_Assignment_Statement
955 or else NT
(N
).Nkind
= N_Selected_Component
956 or else NT
(N
).Nkind
= N_Type_Conversion
);
958 end Do_Discriminant_Check
;
960 function Do_Division_Check
961 (N
: Node_Id
) return Boolean is
964 or else NT
(N
).Nkind
= N_Op_Divide
965 or else NT
(N
).Nkind
= N_Op_Mod
966 or else NT
(N
).Nkind
= N_Op_Rem
);
968 end Do_Division_Check
;
970 function Do_Length_Check
971 (N
: Node_Id
) return Boolean is
974 or else NT
(N
).Nkind
= N_Assignment_Statement
975 or else NT
(N
).Nkind
= N_Op_And
976 or else NT
(N
).Nkind
= N_Op_Or
977 or else NT
(N
).Nkind
= N_Op_Xor
978 or else NT
(N
).Nkind
= N_Type_Conversion
);
982 function Do_Overflow_Check
983 (N
: Node_Id
) return Boolean is
986 or else NT
(N
).Nkind
in N_Op
987 or else NT
(N
).Nkind
= N_Attribute_Reference
988 or else NT
(N
).Nkind
= N_Case_Expression
989 or else NT
(N
).Nkind
= N_If_Expression
990 or else NT
(N
).Nkind
= N_Type_Conversion
);
992 end Do_Overflow_Check
;
994 function Do_Range_Check
995 (N
: Node_Id
) return Boolean is
998 or else NT
(N
).Nkind
in N_Subexpr
);
1002 function Do_Storage_Check
1003 (N
: Node_Id
) return Boolean is
1005 pragma Assert
(False
1006 or else NT
(N
).Nkind
= N_Allocator
1007 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1009 end Do_Storage_Check
;
1011 function Do_Tag_Check
1012 (N
: Node_Id
) return Boolean is
1014 pragma Assert
(False
1015 or else NT
(N
).Nkind
= N_Assignment_Statement
1016 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1017 or else NT
(N
).Nkind
= N_Function_Call
1018 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1019 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1020 or else NT
(N
).Nkind
= N_Type_Conversion
);
1024 function Elaborate_All_Desirable
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_All_Desirable
;
1032 function Elaborate_All_Present
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_All_Present
;
1040 function Elaborate_Desirable
1041 (N
: Node_Id
) return Boolean is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_With_Clause
);
1046 end Elaborate_Desirable
;
1048 function Elaborate_Present
1049 (N
: Node_Id
) return Boolean is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_With_Clause
);
1054 end Elaborate_Present
;
1056 function Else_Actions
1057 (N
: Node_Id
) return List_Id
is
1059 pragma Assert
(False
1060 or else NT
(N
).Nkind
= N_If_Expression
);
1064 function Else_Statements
1065 (N
: Node_Id
) return List_Id
is
1067 pragma Assert
(False
1068 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1069 or else NT
(N
).Nkind
= N_If_Statement
1070 or else NT
(N
).Nkind
= N_Selective_Accept
);
1072 end Else_Statements
;
1074 function Elsif_Parts
1075 (N
: Node_Id
) return List_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_If_Statement
);
1082 function Enclosing_Variant
1083 (N
: Node_Id
) return Node_Id
is
1085 pragma Assert
(False
1086 or else NT
(N
).Nkind
= N_Variant
);
1088 end Enclosing_Variant
;
1091 (N
: Node_Id
) return Node_Id
is
1093 pragma Assert
(False
1094 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1095 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1096 or else NT
(N
).Nkind
= N_Loop_Statement
1097 or else NT
(N
).Nkind
= N_Package_Specification
1098 or else NT
(N
).Nkind
= N_Protected_Body
1099 or else NT
(N
).Nkind
= N_Protected_Definition
1100 or else NT
(N
).Nkind
= N_Record_Definition
1101 or else NT
(N
).Nkind
= N_Task_Definition
);
1106 (N
: Node_Id
) return Uint
is
1108 pragma Assert
(False
1109 or else NT
(N
).Nkind
= N_Case_Statement
1110 or else NT
(N
).Nkind
= N_If_Statement
);
1115 (N
: Node_Id
) return Node_Id
is
1117 pragma Assert
(False
1118 or else NT
(N
).Nkind
in N_Has_Entity
1119 or else NT
(N
).Nkind
= N_Aspect_Specification
1120 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1121 or else NT
(N
).Nkind
= N_Freeze_Entity
1122 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1126 function Entity_Or_Associated_Node
1127 (N
: Node_Id
) return Node_Id
is
1129 pragma Assert
(False
1130 or else NT
(N
).Nkind
in N_Has_Entity
1131 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1133 end Entity_Or_Associated_Node
;
1135 function Entry_Body_Formal_Part
1136 (N
: Node_Id
) return Node_Id
is
1138 pragma Assert
(False
1139 or else NT
(N
).Nkind
= N_Entry_Body
);
1141 end Entry_Body_Formal_Part
;
1143 function Entry_Call_Alternative
1144 (N
: Node_Id
) return Node_Id
is
1146 pragma Assert
(False
1147 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1148 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1150 end Entry_Call_Alternative
;
1152 function Entry_Call_Statement
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1158 end Entry_Call_Statement
;
1160 function Entry_Direct_Name
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Accept_Statement
);
1166 end Entry_Direct_Name
;
1168 function Entry_Index
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Accept_Statement
);
1176 function Entry_Index_Specification
1177 (N
: Node_Id
) return Node_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1182 end Entry_Index_Specification
;
1185 (N
: Node_Id
) return Node_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
in N_Has_Etype
);
1192 function Exception_Choices
1193 (N
: Node_Id
) return List_Id
is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Exception_Handler
);
1198 end Exception_Choices
;
1200 function Exception_Handlers
1201 (N
: Node_Id
) return List_Id
is
1203 pragma Assert
(False
1204 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1206 end Exception_Handlers
;
1208 function Exception_Junk
1209 (N
: Node_Id
) return Boolean is
1211 pragma Assert
(False
1212 or else NT
(N
).Nkind
= N_Block_Statement
1213 or else NT
(N
).Nkind
= N_Goto_Statement
1214 or else NT
(N
).Nkind
= N_Label
1215 or else NT
(N
).Nkind
= N_Object_Declaration
1216 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1220 function Exception_Label
1221 (N
: Node_Id
) return Node_Id
is
1223 pragma Assert
(False
1224 or else NT
(N
).Nkind
= N_Exception_Handler
1225 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1226 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1227 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1229 end Exception_Label
;
1231 function Expansion_Delayed
1232 (N
: Node_Id
) return Boolean is
1234 pragma Assert
(False
1235 or else NT
(N
).Nkind
= N_Aggregate
1236 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1238 end Expansion_Delayed
;
1240 function Explicit_Actual_Parameter
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Parameter_Association
);
1246 end Explicit_Actual_Parameter
;
1248 function Explicit_Generic_Actual_Parameter
1249 (N
: Node_Id
) return Node_Id
is
1251 pragma Assert
(False
1252 or else NT
(N
).Nkind
= N_Generic_Association
);
1254 end Explicit_Generic_Actual_Parameter
;
1257 (N
: Node_Id
) return Node_Id
is
1259 pragma Assert
(False
1260 or else NT
(N
).Nkind
= N_Allocator
1261 or else NT
(N
).Nkind
= N_Aspect_Specification
1262 or else NT
(N
).Nkind
= N_Assignment_Statement
1263 or else NT
(N
).Nkind
= N_At_Clause
1264 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1265 or else NT
(N
).Nkind
= N_Case_Expression
1266 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1267 or else NT
(N
).Nkind
= N_Case_Statement
1268 or else NT
(N
).Nkind
= N_Code_Statement
1269 or else NT
(N
).Nkind
= N_Component_Association
1270 or else NT
(N
).Nkind
= N_Component_Declaration
1271 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1272 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1273 or else NT
(N
).Nkind
= N_Delta_Aggregate
1274 or else NT
(N
).Nkind
= N_Discriminant_Association
1275 or else NT
(N
).Nkind
= N_Discriminant_Specification
1276 or else NT
(N
).Nkind
= N_Exception_Declaration
1277 or else NT
(N
).Nkind
= N_Expression_Function
1278 or else NT
(N
).Nkind
= N_Expression_With_Actions
1279 or else NT
(N
).Nkind
= N_Free_Statement
1280 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1281 or else NT
(N
).Nkind
= N_Mod_Clause
1282 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1283 or else NT
(N
).Nkind
= N_Number_Declaration
1284 or else NT
(N
).Nkind
= N_Object_Declaration
1285 or else NT
(N
).Nkind
= N_Parameter_Specification
1286 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1287 or else NT
(N
).Nkind
= N_Qualified_Expression
1288 or else NT
(N
).Nkind
= N_Raise_Expression
1289 or else NT
(N
).Nkind
= N_Raise_Statement
1290 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1291 or else NT
(N
).Nkind
= N_Type_Conversion
1292 or else NT
(N
).Nkind
= N_Unchecked_Expression
1293 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1297 function Expression_Copy
1298 (N
: Node_Id
) return Node_Id
is
1300 pragma Assert
(False
1301 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1303 end Expression_Copy
;
1305 function Expressions
1306 (N
: Node_Id
) return List_Id
is
1308 pragma Assert
(False
1309 or else NT
(N
).Nkind
= N_Aggregate
1310 or else NT
(N
).Nkind
= N_Attribute_Reference
1311 or else NT
(N
).Nkind
= N_Extension_Aggregate
1312 or else NT
(N
).Nkind
= N_If_Expression
1313 or else NT
(N
).Nkind
= N_Indexed_Component
);
1318 (N
: Node_Id
) return Node_Id
is
1320 pragma Assert
(False
1321 or else NT
(N
).Nkind
= N_Component_Clause
);
1325 function First_Inlined_Subprogram
1326 (N
: Node_Id
) return Entity_Id
is
1328 pragma Assert
(False
1329 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1331 end First_Inlined_Subprogram
;
1334 (N
: Node_Id
) return Boolean is
1336 pragma Assert
(False
1337 or else NT
(N
).Nkind
= N_With_Clause
);
1341 function First_Named_Actual
1342 (N
: Node_Id
) return Node_Id
is
1344 pragma Assert
(False
1345 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1346 or else NT
(N
).Nkind
= N_Function_Call
1347 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1349 end First_Named_Actual
;
1351 function First_Real_Statement
1352 (N
: Node_Id
) return Node_Id
is
1354 pragma Assert
(False
1355 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1357 end First_Real_Statement
;
1359 function First_Subtype_Link
1360 (N
: Node_Id
) return Entity_Id
is
1362 pragma Assert
(False
1363 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1365 end First_Subtype_Link
;
1367 function Float_Truncate
1368 (N
: Node_Id
) return Boolean is
1370 pragma Assert
(False
1371 or else NT
(N
).Nkind
= N_Type_Conversion
);
1375 function Formal_Type_Definition
1376 (N
: Node_Id
) return Node_Id
is
1378 pragma Assert
(False
1379 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1381 end Formal_Type_Definition
;
1383 function Forwards_OK
1384 (N
: Node_Id
) return Boolean is
1386 pragma Assert
(False
1387 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1391 function From_Aspect_Specification
1392 (N
: Node_Id
) return Boolean is
1394 pragma Assert
(False
1395 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1396 or else NT
(N
).Nkind
= N_Pragma
);
1398 end From_Aspect_Specification
;
1400 function From_At_End
1401 (N
: Node_Id
) return Boolean is
1403 pragma Assert
(False
1404 or else NT
(N
).Nkind
= N_Raise_Statement
);
1408 function From_At_Mod
1409 (N
: Node_Id
) return Boolean is
1411 pragma Assert
(False
1412 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1416 function From_Conditional_Expression
1417 (N
: Node_Id
) return Boolean is
1419 pragma Assert
(False
1420 or else NT
(N
).Nkind
= N_Case_Statement
1421 or else NT
(N
).Nkind
= N_If_Statement
);
1423 end From_Conditional_Expression
;
1425 function From_Default
1426 (N
: Node_Id
) return Boolean is
1428 pragma Assert
(False
1429 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1433 function Generalized_Indexing
1434 (N
: Node_Id
) return Node_Id
is
1436 pragma Assert
(False
1437 or else NT
(N
).Nkind
= N_Indexed_Component
);
1439 end Generalized_Indexing
;
1441 function Generic_Associations
1442 (N
: Node_Id
) return List_Id
is
1444 pragma Assert
(False
1445 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1446 or else NT
(N
).Nkind
= N_Function_Instantiation
1447 or else NT
(N
).Nkind
= N_Package_Instantiation
1448 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1450 end Generic_Associations
;
1452 function Generic_Formal_Declarations
1453 (N
: Node_Id
) return List_Id
is
1455 pragma Assert
(False
1456 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1457 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1459 end Generic_Formal_Declarations
;
1461 function Generic_Parent
1462 (N
: Node_Id
) return Node_Id
is
1464 pragma Assert
(False
1465 or else NT
(N
).Nkind
= N_Function_Specification
1466 or else NT
(N
).Nkind
= N_Package_Specification
1467 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1471 function Generic_Parent_Type
1472 (N
: Node_Id
) return Node_Id
is
1474 pragma Assert
(False
1475 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1477 end Generic_Parent_Type
;
1479 function Handled_Statement_Sequence
1480 (N
: Node_Id
) return Node_Id
is
1482 pragma Assert
(False
1483 or else NT
(N
).Nkind
= N_Accept_Statement
1484 or else NT
(N
).Nkind
= N_Block_Statement
1485 or else NT
(N
).Nkind
= N_Entry_Body
1486 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1487 or else NT
(N
).Nkind
= N_Package_Body
1488 or else NT
(N
).Nkind
= N_Subprogram_Body
1489 or else NT
(N
).Nkind
= N_Task_Body
);
1491 end Handled_Statement_Sequence
;
1493 function Handler_List_Entry
1494 (N
: Node_Id
) return Node_Id
is
1496 pragma Assert
(False
1497 or else NT
(N
).Nkind
= N_Object_Declaration
);
1499 end Handler_List_Entry
;
1501 function Has_Created_Identifier
1502 (N
: Node_Id
) return Boolean is
1504 pragma Assert
(False
1505 or else NT
(N
).Nkind
= N_Block_Statement
1506 or else NT
(N
).Nkind
= N_Loop_Statement
);
1508 end Has_Created_Identifier
;
1510 function Has_Dereference_Action
1511 (N
: Node_Id
) return Boolean is
1513 pragma Assert
(False
1514 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1516 end Has_Dereference_Action
;
1518 function Has_Dynamic_Length_Check
1519 (N
: Node_Id
) return Boolean is
1521 pragma Assert
(False
1522 or else NT
(N
).Nkind
in N_Subexpr
);
1524 end Has_Dynamic_Length_Check
;
1526 function Has_Dynamic_Range_Check
1527 (N
: Node_Id
) return Boolean is
1529 pragma Assert
(False
1530 or else NT
(N
).Nkind
= N_Subtype_Declaration
1531 or else NT
(N
).Nkind
in N_Subexpr
);
1533 end Has_Dynamic_Range_Check
;
1535 function Has_Init_Expression
1536 (N
: Node_Id
) return Boolean is
1538 pragma Assert
(False
1539 or else NT
(N
).Nkind
= N_Object_Declaration
);
1541 end Has_Init_Expression
;
1543 function Has_Local_Raise
1544 (N
: Node_Id
) return Boolean is
1546 pragma Assert
(False
1547 or else NT
(N
).Nkind
= N_Exception_Handler
);
1549 end Has_Local_Raise
;
1551 function Has_No_Elaboration_Code
1552 (N
: Node_Id
) return Boolean is
1554 pragma Assert
(False
1555 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1557 end Has_No_Elaboration_Code
;
1559 function Has_Pragma_Suppress_All
1560 (N
: Node_Id
) return Boolean is
1562 pragma Assert
(False
1563 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1565 end Has_Pragma_Suppress_All
;
1567 function Has_Private_View
1568 (N
: Node_Id
) return Boolean is
1570 pragma Assert
(False
1571 or else NT
(N
).Nkind
in N_Op
1572 or else NT
(N
).Nkind
= N_Character_Literal
1573 or else NT
(N
).Nkind
= N_Expanded_Name
1574 or else NT
(N
).Nkind
= N_Identifier
1575 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1577 end Has_Private_View
;
1579 function Has_Relative_Deadline_Pragma
1580 (N
: Node_Id
) return Boolean is
1582 pragma Assert
(False
1583 or else NT
(N
).Nkind
= N_Subprogram_Body
1584 or else NT
(N
).Nkind
= N_Task_Definition
);
1586 end Has_Relative_Deadline_Pragma
;
1588 function Has_Self_Reference
1589 (N
: Node_Id
) return Boolean is
1591 pragma Assert
(False
1592 or else NT
(N
).Nkind
= N_Aggregate
1593 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1595 end Has_Self_Reference
;
1597 function Has_SP_Choice
1598 (N
: Node_Id
) return Boolean is
1600 pragma Assert
(False
1601 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1602 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1603 or else NT
(N
).Nkind
= N_Variant
);
1607 function Has_Storage_Size_Pragma
1608 (N
: Node_Id
) return Boolean is
1610 pragma Assert
(False
1611 or else NT
(N
).Nkind
= N_Task_Definition
);
1613 end Has_Storage_Size_Pragma
;
1615 function Has_Target_Names
1616 (N
: Node_Id
) return Boolean is
1618 pragma Assert
(False
1619 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1621 end Has_Target_Names
;
1623 function Has_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_Character
;
1631 function Has_Wide_Wide_Character
1632 (N
: Node_Id
) return Boolean is
1634 pragma Assert
(False
1635 or else NT
(N
).Nkind
= N_String_Literal
);
1637 end Has_Wide_Wide_Character
;
1639 function Header_Size_Added
1640 (N
: Node_Id
) return Boolean is
1642 pragma Assert
(False
1643 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1645 end Header_Size_Added
;
1647 function Hidden_By_Use_Clause
1648 (N
: Node_Id
) return Elist_Id
is
1650 pragma Assert
(False
1651 or else NT
(N
).Nkind
= N_Use_Package_Clause
1652 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1654 end Hidden_By_Use_Clause
;
1657 (N
: Node_Id
) return Node_Id
is
1659 pragma Assert
(False
1660 or else NT
(N
).Nkind
= N_Range
1661 or else NT
(N
).Nkind
= N_Real_Range_Specification
1662 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1667 (N
: Node_Id
) return Node_Id
is
1669 pragma Assert
(False
1670 or else NT
(N
).Nkind
= N_Aspect_Specification
1671 or else NT
(N
).Nkind
= N_At_Clause
1672 or else NT
(N
).Nkind
= N_Block_Statement
1673 or else NT
(N
).Nkind
= N_Designator
1674 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1675 or else NT
(N
).Nkind
= N_Label
1676 or else NT
(N
).Nkind
= N_Loop_Statement
1677 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1681 function Implicit_With
1682 (N
: Node_Id
) return Boolean is
1684 pragma Assert
(False
1685 or else NT
(N
).Nkind
= N_With_Clause
);
1689 function Interface_List
1690 (N
: Node_Id
) return List_Id
is
1692 pragma Assert
(False
1693 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1694 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1695 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1696 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1697 or else NT
(N
).Nkind
= N_Record_Definition
1698 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1699 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1700 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1704 function Interface_Present
1705 (N
: Node_Id
) return Boolean is
1707 pragma Assert
(False
1708 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1709 or else NT
(N
).Nkind
= N_Record_Definition
);
1711 end Interface_Present
;
1713 function Import_Interface_Present
1714 (N
: Node_Id
) return Boolean is
1716 pragma Assert
(False
1717 or else NT
(N
).Nkind
= N_Pragma
);
1719 end Import_Interface_Present
;
1722 (N
: Node_Id
) return Boolean is
1724 pragma Assert
(False
1725 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1726 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1730 function Includes_Infinities
1731 (N
: Node_Id
) return Boolean is
1733 pragma Assert
(False
1734 or else NT
(N
).Nkind
= N_Range
);
1736 end Includes_Infinities
;
1738 function Incomplete_View
1739 (N
: Node_Id
) return Node_Id
is
1741 pragma Assert
(False
1742 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1744 end Incomplete_View
;
1746 function Inherited_Discriminant
1747 (N
: Node_Id
) return Boolean is
1749 pragma Assert
(False
1750 or else NT
(N
).Nkind
= N_Component_Association
);
1752 end Inherited_Discriminant
;
1754 function Instance_Spec
1755 (N
: Node_Id
) return Node_Id
is
1757 pragma Assert
(False
1758 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1759 or else NT
(N
).Nkind
= N_Function_Instantiation
1760 or else NT
(N
).Nkind
= N_Package_Instantiation
1761 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1766 (N
: Node_Id
) return Uint
is
1768 pragma Assert
(False
1769 or else NT
(N
).Nkind
= N_Integer_Literal
);
1773 function Is_Abort_Block
1774 (N
: Node_Id
) return Boolean is
1776 pragma Assert
(False
1777 or else NT
(N
).Nkind
= N_Block_Statement
);
1781 function Is_Accessibility_Actual
1782 (N
: Node_Id
) return Boolean is
1784 pragma Assert
(False
1785 or else NT
(N
).Nkind
= N_Parameter_Association
);
1787 end Is_Accessibility_Actual
;
1789 function Is_Analyzed_Pragma
1790 (N
: Node_Id
) return Boolean is
1792 pragma Assert
(False
1793 or else NT
(N
).Nkind
= N_Pragma
);
1795 end Is_Analyzed_Pragma
;
1797 function Is_Asynchronous_Call_Block
1798 (N
: Node_Id
) return Boolean is
1800 pragma Assert
(False
1801 or else NT
(N
).Nkind
= N_Block_Statement
);
1803 end Is_Asynchronous_Call_Block
;
1805 function Is_Boolean_Aspect
1806 (N
: Node_Id
) return Boolean is
1808 pragma Assert
(False
1809 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1811 end Is_Boolean_Aspect
;
1814 (N
: Node_Id
) return Boolean is
1816 pragma Assert
(False
1817 or else NT
(N
).Nkind
= N_Aspect_Specification
1818 or else NT
(N
).Nkind
= N_Pragma
);
1822 function Is_Checked_Ghost_Pragma
1823 (N
: Node_Id
) return Boolean is
1825 pragma Assert
(False
1826 or else NT
(N
).Nkind
= N_Pragma
);
1828 end Is_Checked_Ghost_Pragma
;
1830 function Is_Component_Left_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_Left_Opnd
;
1838 function Is_Component_Right_Opnd
1839 (N
: Node_Id
) return Boolean is
1841 pragma Assert
(False
1842 or else NT
(N
).Nkind
= N_Op_Concat
);
1844 end Is_Component_Right_Opnd
;
1846 function Is_Controlling_Actual
1847 (N
: Node_Id
) return Boolean is
1849 pragma Assert
(False
1850 or else NT
(N
).Nkind
in N_Subexpr
);
1852 end Is_Controlling_Actual
;
1854 function Is_Declaration_Level_Node
1855 (N
: Node_Id
) return Boolean is
1857 pragma Assert
(False
1858 or else NT
(N
).Nkind
= N_Call_Marker
1859 or else NT
(N
).Nkind
= N_Function_Instantiation
1860 or else NT
(N
).Nkind
= N_Package_Instantiation
1861 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1863 end Is_Declaration_Level_Node
;
1865 function Is_Delayed_Aspect
1866 (N
: Node_Id
) return Boolean is
1868 pragma Assert
(False
1869 or else NT
(N
).Nkind
= N_Aspect_Specification
1870 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1871 or else NT
(N
).Nkind
= N_Pragma
);
1873 end Is_Delayed_Aspect
;
1875 function Is_Disabled
1876 (N
: Node_Id
) return Boolean is
1878 pragma Assert
(False
1879 or else NT
(N
).Nkind
= N_Aspect_Specification
1880 or else NT
(N
).Nkind
= N_Pragma
);
1884 function Is_Dispatching_Call
1885 (N
: Node_Id
) return Boolean is
1887 pragma Assert
(False
1888 or else NT
(N
).Nkind
= N_Call_Marker
);
1890 end Is_Dispatching_Call
;
1892 function Is_Dynamic_Coextension
1893 (N
: Node_Id
) return Boolean is
1895 pragma Assert
(False
1896 or else NT
(N
).Nkind
= N_Allocator
);
1898 end Is_Dynamic_Coextension
;
1900 function Is_Effective_Use_Clause
1901 (N
: Node_Id
) return Boolean is
1903 pragma Assert
(False
1904 or else NT
(N
).Nkind
= N_Use_Package_Clause
1905 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1907 end Is_Effective_Use_Clause
;
1909 function Is_Elaboration_Checks_OK_Node
1910 (N
: Node_Id
) return Boolean is
1912 pragma Assert
(False
1913 or else NT
(N
).Nkind
= N_Assignment_Statement
1914 or else NT
(N
).Nkind
= N_Attribute_Reference
1915 or else NT
(N
).Nkind
= N_Call_Marker
1916 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1917 or else NT
(N
).Nkind
= N_Expanded_Name
1918 or else NT
(N
).Nkind
= N_Function_Call
1919 or else NT
(N
).Nkind
= N_Function_Instantiation
1920 or else NT
(N
).Nkind
= N_Identifier
1921 or else NT
(N
).Nkind
= N_Package_Instantiation
1922 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1923 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1924 or else NT
(N
).Nkind
= N_Requeue_Statement
1925 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
1927 end Is_Elaboration_Checks_OK_Node
;
1929 function Is_Elaboration_Code
1930 (N
: Node_Id
) return Boolean is
1932 pragma Assert
(False
1933 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1935 end Is_Elaboration_Code
;
1937 function Is_Elaboration_Warnings_OK_Node
1938 (N
: Node_Id
) return Boolean is
1940 pragma Assert
(False
1941 or else NT
(N
).Nkind
= N_Attribute_Reference
1942 or else NT
(N
).Nkind
= N_Call_Marker
1943 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1944 or else NT
(N
).Nkind
= N_Expanded_Name
1945 or else NT
(N
).Nkind
= N_Function_Call
1946 or else NT
(N
).Nkind
= N_Function_Instantiation
1947 or else NT
(N
).Nkind
= N_Identifier
1948 or else NT
(N
).Nkind
= N_Package_Instantiation
1949 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1950 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1951 or else NT
(N
).Nkind
= N_Requeue_Statement
1952 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
1954 end Is_Elaboration_Warnings_OK_Node
;
1957 (N
: Node_Id
) return Boolean is
1959 pragma Assert
(False
1960 or else NT
(N
).Nkind
= N_If_Expression
);
1964 function Is_Entry_Barrier_Function
1965 (N
: Node_Id
) return Boolean is
1967 pragma Assert
(False
1968 or else NT
(N
).Nkind
= N_Subprogram_Body
1969 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1971 end Is_Entry_Barrier_Function
;
1973 function Is_Expanded_Build_In_Place_Call
1974 (N
: Node_Id
) return Boolean is
1976 pragma Assert
(False
1977 or else NT
(N
).Nkind
= N_Function_Call
);
1979 end Is_Expanded_Build_In_Place_Call
;
1981 function Is_Expanded_Contract
1982 (N
: Node_Id
) return Boolean is
1984 pragma Assert
(False
1985 or else NT
(N
).Nkind
= N_Contract
);
1987 end Is_Expanded_Contract
;
1989 function Is_Finalization_Wrapper
1990 (N
: Node_Id
) return Boolean is
1992 pragma Assert
(False
1993 or else NT
(N
).Nkind
= N_Block_Statement
);
1995 end Is_Finalization_Wrapper
;
1997 function Is_Folded_In_Parser
1998 (N
: Node_Id
) return Boolean is
2000 pragma Assert
(False
2001 or else NT
(N
).Nkind
= N_String_Literal
);
2003 end Is_Folded_In_Parser
;
2005 function Is_Generic_Contract_Pragma
2006 (N
: Node_Id
) return Boolean is
2008 pragma Assert
(False
2009 or else NT
(N
).Nkind
= N_Pragma
);
2011 end Is_Generic_Contract_Pragma
;
2014 (N
: Node_Id
) return Boolean is
2016 pragma Assert
(False
2017 or else NT
(N
).Nkind
= N_Aspect_Specification
2018 or else NT
(N
).Nkind
= N_Pragma
);
2022 function Is_Ignored_Ghost_Pragma
2023 (N
: Node_Id
) return Boolean is
2025 pragma Assert
(False
2026 or else NT
(N
).Nkind
= N_Pragma
);
2028 end Is_Ignored_Ghost_Pragma
;
2030 function Is_In_Discriminant_Check
2031 (N
: Node_Id
) return Boolean is
2033 pragma Assert
(False
2034 or else NT
(N
).Nkind
= N_Selected_Component
);
2036 end Is_In_Discriminant_Check
;
2038 function Is_Inherited_Pragma
2039 (N
: Node_Id
) return Boolean is
2041 pragma Assert
(False
2042 or else NT
(N
).Nkind
= N_Pragma
);
2044 end Is_Inherited_Pragma
;
2046 function Is_Initialization_Block
2047 (N
: Node_Id
) return Boolean is
2049 pragma Assert
(False
2050 or else NT
(N
).Nkind
= N_Block_Statement
);
2052 end Is_Initialization_Block
;
2054 function Is_Known_Guaranteed_ABE
2055 (N
: Node_Id
) return Boolean is
2057 pragma Assert
(False
2058 or else NT
(N
).Nkind
= N_Call_Marker
2059 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2060 or else NT
(N
).Nkind
= N_Function_Call
2061 or else NT
(N
).Nkind
= N_Function_Instantiation
2062 or else NT
(N
).Nkind
= N_Package_Instantiation
2063 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2064 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2066 end Is_Known_Guaranteed_ABE
;
2068 function Is_Machine_Number
2069 (N
: Node_Id
) return Boolean is
2071 pragma Assert
(False
2072 or else NT
(N
).Nkind
= N_Real_Literal
);
2074 end Is_Machine_Number
;
2076 function Is_Null_Loop
2077 (N
: Node_Id
) return Boolean is
2079 pragma Assert
(False
2080 or else NT
(N
).Nkind
= N_Loop_Statement
);
2084 function Is_OpenAcc_Environment
2085 (N
: Node_Id
) return Boolean is
2087 pragma Assert
(False
2088 or else NT
(N
).Nkind
= N_Loop_Statement
);
2090 end Is_OpenAcc_Environment
;
2092 function Is_OpenAcc_Loop
2093 (N
: Node_Id
) return Boolean is
2095 pragma Assert
(False
2096 or else NT
(N
).Nkind
= N_Loop_Statement
);
2098 end Is_OpenAcc_Loop
;
2100 function Is_Overloaded
2101 (N
: Node_Id
) return Boolean is
2103 pragma Assert
(False
2104 or else NT
(N
).Nkind
in N_Subexpr
);
2108 function Is_Power_Of_2_For_Shift
2109 (N
: Node_Id
) return Boolean is
2111 pragma Assert
(False
2112 or else NT
(N
).Nkind
= N_Op_Expon
);
2114 end Is_Power_Of_2_For_Shift
;
2116 function Is_Prefixed_Call
2117 (N
: Node_Id
) return Boolean is
2119 pragma Assert
(False
2120 or else NT
(N
).Nkind
= N_Selected_Component
);
2122 end Is_Prefixed_Call
;
2124 function Is_Protected_Subprogram_Body
2125 (N
: Node_Id
) return Boolean is
2127 pragma Assert
(False
2128 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2130 end Is_Protected_Subprogram_Body
;
2132 function Is_Qualified_Universal_Literal
2133 (N
: Node_Id
) return Boolean is
2135 pragma Assert
(False
2136 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2138 end Is_Qualified_Universal_Literal
;
2141 (N
: Node_Id
) return Boolean is
2143 pragma Assert
(False
2144 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2148 function Is_Source_Call
2149 (N
: Node_Id
) return Boolean is
2151 pragma Assert
(False
2152 or else NT
(N
).Nkind
= N_Call_Marker
);
2156 function Is_SPARK_Mode_On_Node
2157 (N
: Node_Id
) return Boolean is
2159 pragma Assert
(False
2160 or else NT
(N
).Nkind
= N_Assignment_Statement
2161 or else NT
(N
).Nkind
= N_Attribute_Reference
2162 or else NT
(N
).Nkind
= N_Call_Marker
2163 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2164 or else NT
(N
).Nkind
= N_Expanded_Name
2165 or else NT
(N
).Nkind
= N_Function_Call
2166 or else NT
(N
).Nkind
= N_Function_Instantiation
2167 or else NT
(N
).Nkind
= N_Identifier
2168 or else NT
(N
).Nkind
= N_Package_Instantiation
2169 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2170 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2171 or else NT
(N
).Nkind
= N_Requeue_Statement
2172 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2174 end Is_SPARK_Mode_On_Node
;
2176 function Is_Static_Coextension
2177 (N
: Node_Id
) return Boolean is
2179 pragma Assert
(False
2180 or else NT
(N
).Nkind
= N_Allocator
);
2182 end Is_Static_Coextension
;
2184 function Is_Static_Expression
2185 (N
: Node_Id
) return Boolean is
2187 pragma Assert
(False
2188 or else NT
(N
).Nkind
in N_Subexpr
);
2190 end Is_Static_Expression
;
2192 function Is_Subprogram_Descriptor
2193 (N
: Node_Id
) return Boolean is
2195 pragma Assert
(False
2196 or else NT
(N
).Nkind
= N_Object_Declaration
);
2198 end Is_Subprogram_Descriptor
;
2200 function Is_Task_Allocation_Block
2201 (N
: Node_Id
) return Boolean is
2203 pragma Assert
(False
2204 or else NT
(N
).Nkind
= N_Block_Statement
);
2206 end Is_Task_Allocation_Block
;
2208 function Is_Task_Body_Procedure
2209 (N
: Node_Id
) return Boolean is
2211 pragma Assert
(False
2212 or else NT
(N
).Nkind
= N_Subprogram_Body
2213 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2215 end Is_Task_Body_Procedure
;
2217 function Is_Task_Master
2218 (N
: Node_Id
) return Boolean is
2220 pragma Assert
(False
2221 or else NT
(N
).Nkind
= N_Block_Statement
2222 or else NT
(N
).Nkind
= N_Subprogram_Body
2223 or else NT
(N
).Nkind
= N_Task_Body
);
2228 (N
: Node_Id
) return Boolean is
2230 pragma Assert
(False
2231 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2235 function Iteration_Scheme
2236 (N
: Node_Id
) return Node_Id
is
2238 pragma Assert
(False
2239 or else NT
(N
).Nkind
= N_Loop_Statement
);
2241 end Iteration_Scheme
;
2243 function Iterator_Specification
2244 (N
: Node_Id
) return Node_Id
is
2246 pragma Assert
(False
2247 or else NT
(N
).Nkind
= N_Iteration_Scheme
2248 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2250 end Iterator_Specification
;
2253 (N
: Node_Id
) return Node_Id
is
2255 pragma Assert
(False
2256 or else NT
(N
).Nkind
= N_Itype_Reference
);
2260 function Kill_Range_Check
2261 (N
: Node_Id
) return Boolean is
2263 pragma Assert
(False
2264 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2266 end Kill_Range_Check
;
2268 function Label_Construct
2269 (N
: Node_Id
) return Node_Id
is
2271 pragma Assert
(False
2272 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2274 end Label_Construct
;
2277 (N
: Node_Id
) return Node_Id
is
2279 pragma Assert
(False
2280 or else NT
(N
).Nkind
= N_Component_Clause
);
2285 (N
: Node_Id
) return Boolean is
2287 pragma Assert
(False
2288 or else NT
(N
).Nkind
= N_With_Clause
);
2293 (N
: Node_Id
) return Node_Id
is
2295 pragma Assert
(False
2296 or else NT
(N
).Nkind
= N_And_Then
2297 or else NT
(N
).Nkind
= N_In
2298 or else NT
(N
).Nkind
= N_Not_In
2299 or else NT
(N
).Nkind
= N_Or_Else
2300 or else NT
(N
).Nkind
in N_Binary_Op
);
2304 function Library_Unit
2305 (N
: Node_Id
) return Node_Id
is
2307 pragma Assert
(False
2308 or else NT
(N
).Nkind
= N_Compilation_Unit
2309 or else NT
(N
).Nkind
= N_Package_Body_Stub
2310 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2311 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2312 or else NT
(N
).Nkind
= N_Task_Body_Stub
2313 or else NT
(N
).Nkind
= N_With_Clause
);
2317 function Limited_View_Installed
2318 (N
: Node_Id
) return Boolean is
2320 pragma Assert
(False
2321 or else NT
(N
).Nkind
= N_Package_Specification
2322 or else NT
(N
).Nkind
= N_With_Clause
);
2324 end Limited_View_Installed
;
2326 function Limited_Present
2327 (N
: Node_Id
) return Boolean is
2329 pragma Assert
(False
2330 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2331 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2332 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2333 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2334 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2335 or else NT
(N
).Nkind
= N_Record_Definition
2336 or else NT
(N
).Nkind
= N_With_Clause
);
2338 end Limited_Present
;
2341 (N
: Node_Id
) return List_Id
is
2343 pragma Assert
(False
2344 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2348 function Local_Raise_Not_OK
2349 (N
: Node_Id
) return Boolean is
2351 pragma Assert
(False
2352 or else NT
(N
).Nkind
= N_Exception_Handler
);
2354 end Local_Raise_Not_OK
;
2356 function Local_Raise_Statements
2357 (N
: Node_Id
) return Elist_Id
is
2359 pragma Assert
(False
2360 or else NT
(N
).Nkind
= N_Exception_Handler
);
2362 end Local_Raise_Statements
;
2364 function Loop_Actions
2365 (N
: Node_Id
) return List_Id
is
2367 pragma Assert
(False
2368 or else NT
(N
).Nkind
= N_Component_Association
2369 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2373 function Loop_Parameter_Specification
2374 (N
: Node_Id
) return Node_Id
is
2376 pragma Assert
(False
2377 or else NT
(N
).Nkind
= N_Iteration_Scheme
2378 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2380 end Loop_Parameter_Specification
;
2383 (N
: Node_Id
) return Node_Id
is
2385 pragma Assert
(False
2386 or else NT
(N
).Nkind
= N_Range
2387 or else NT
(N
).Nkind
= N_Real_Range_Specification
2388 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2393 (N
: Node_Id
) return Node_Id
is
2395 pragma Assert
(False
2396 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2401 (N
: Node_Id
) return Boolean is
2403 pragma Assert
(False
2404 or else NT
(N
).Nkind
= N_Component_Declaration
2405 or else NT
(N
).Nkind
= N_Discriminant_Specification
2406 or else NT
(N
).Nkind
= N_Exception_Declaration
2407 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2408 or else NT
(N
).Nkind
= N_Number_Declaration
2409 or else NT
(N
).Nkind
= N_Object_Declaration
2410 or else NT
(N
).Nkind
= N_Parameter_Specification
2411 or else NT
(N
).Nkind
= N_Use_Package_Clause
2412 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2416 function Must_Be_Byte_Aligned
2417 (N
: Node_Id
) return Boolean is
2419 pragma Assert
(False
2420 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2422 end Must_Be_Byte_Aligned
;
2424 function Must_Not_Freeze
2425 (N
: Node_Id
) return Boolean is
2427 pragma Assert
(False
2428 or else NT
(N
).Nkind
= N_Subtype_Indication
2429 or else NT
(N
).Nkind
in N_Subexpr
);
2431 end Must_Not_Freeze
;
2433 function Must_Not_Override
2434 (N
: Node_Id
) return Boolean is
2436 pragma Assert
(False
2437 or else NT
(N
).Nkind
= N_Entry_Declaration
2438 or else NT
(N
).Nkind
= N_Function_Instantiation
2439 or else NT
(N
).Nkind
= N_Function_Specification
2440 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2441 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2443 end Must_Not_Override
;
2445 function Must_Override
2446 (N
: Node_Id
) return Boolean is
2448 pragma Assert
(False
2449 or else NT
(N
).Nkind
= N_Entry_Declaration
2450 or else NT
(N
).Nkind
= N_Function_Instantiation
2451 or else NT
(N
).Nkind
= N_Function_Specification
2452 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2453 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2458 (N
: Node_Id
) return Node_Id
is
2460 pragma Assert
(False
2461 or else NT
(N
).Nkind
= N_Assignment_Statement
2462 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2463 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2464 or else NT
(N
).Nkind
= N_Designator
2465 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2466 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2467 or else NT
(N
).Nkind
= N_Exit_Statement
2468 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2469 or else NT
(N
).Nkind
= N_Function_Call
2470 or else NT
(N
).Nkind
= N_Function_Instantiation
2471 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2472 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2473 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2474 or else NT
(N
).Nkind
= N_Goto_Statement
2475 or else NT
(N
).Nkind
= N_Iterator_Specification
2476 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2477 or else NT
(N
).Nkind
= N_Package_Instantiation
2478 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2479 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2480 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2481 or else NT
(N
).Nkind
= N_Raise_Expression
2482 or else NT
(N
).Nkind
= N_Raise_Statement
2483 or else NT
(N
).Nkind
= N_Requeue_Statement
2484 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2485 or else NT
(N
).Nkind
= N_Subunit
2486 or else NT
(N
).Nkind
= N_Use_Package_Clause
2487 or else NT
(N
).Nkind
= N_Variant_Part
2488 or else NT
(N
).Nkind
= N_With_Clause
);
2493 (N
: Node_Id
) return List_Id
is
2495 pragma Assert
(False
2496 or else NT
(N
).Nkind
= N_Abort_Statement
);
2500 function Next_Entity
2501 (N
: Node_Id
) return Node_Id
is
2503 pragma Assert
(False
2504 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2505 or else NT
(N
).Nkind
= N_Defining_Identifier
2506 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2510 function Next_Exit_Statement
2511 (N
: Node_Id
) return Node_Id
is
2513 pragma Assert
(False
2514 or else NT
(N
).Nkind
= N_Exit_Statement
);
2516 end Next_Exit_Statement
;
2518 function Next_Implicit_With
2519 (N
: Node_Id
) return Node_Id
is
2521 pragma Assert
(False
2522 or else NT
(N
).Nkind
= N_With_Clause
);
2524 end Next_Implicit_With
;
2526 function Next_Named_Actual
2527 (N
: Node_Id
) return Node_Id
is
2529 pragma Assert
(False
2530 or else NT
(N
).Nkind
= N_Parameter_Association
);
2532 end Next_Named_Actual
;
2534 function Next_Pragma
2535 (N
: Node_Id
) return Node_Id
is
2537 pragma Assert
(False
2538 or else NT
(N
).Nkind
= N_Pragma
);
2542 function Next_Rep_Item
2543 (N
: Node_Id
) return Node_Id
is
2545 pragma Assert
(False
2546 or else NT
(N
).Nkind
= N_Aspect_Specification
2547 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2548 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2549 or else NT
(N
).Nkind
= N_Pragma
2550 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2554 function Next_Use_Clause
2555 (N
: Node_Id
) return Node_Id
is
2557 pragma Assert
(False
2558 or else NT
(N
).Nkind
= N_Use_Package_Clause
2559 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2561 end Next_Use_Clause
;
2563 function No_Ctrl_Actions
2564 (N
: Node_Id
) return Boolean is
2566 pragma Assert
(False
2567 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2569 end No_Ctrl_Actions
;
2571 function No_Elaboration_Check
2572 (N
: Node_Id
) return Boolean is
2574 pragma Assert
(False
2575 or else NT
(N
).Nkind
= N_Function_Call
2576 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2578 end No_Elaboration_Check
;
2580 function No_Entities_Ref_In_Spec
2581 (N
: Node_Id
) return Boolean is
2583 pragma Assert
(False
2584 or else NT
(N
).Nkind
= N_With_Clause
);
2586 end No_Entities_Ref_In_Spec
;
2588 function No_Initialization
2589 (N
: Node_Id
) return Boolean is
2591 pragma Assert
(False
2592 or else NT
(N
).Nkind
= N_Allocator
2593 or else NT
(N
).Nkind
= N_Object_Declaration
);
2595 end No_Initialization
;
2597 function No_Minimize_Eliminate
2598 (N
: Node_Id
) return Boolean is
2600 pragma Assert
(False
2601 or else NT
(N
).Nkind
= N_In
2602 or else NT
(N
).Nkind
= N_Not_In
);
2604 end No_Minimize_Eliminate
;
2606 function No_Side_Effect_Removal
2607 (N
: Node_Id
) return Boolean is
2609 pragma Assert
(False
2610 or else NT
(N
).Nkind
= N_Function_Call
);
2612 end No_Side_Effect_Removal
;
2614 function No_Truncation
2615 (N
: Node_Id
) return Boolean is
2617 pragma Assert
(False
2618 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2622 function Null_Excluding_Subtype
2623 (N
: Node_Id
) return Boolean is
2625 pragma Assert
(False
2626 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2628 end Null_Excluding_Subtype
;
2630 function Null_Exclusion_Present
2631 (N
: Node_Id
) return Boolean is
2633 pragma Assert
(False
2634 or else NT
(N
).Nkind
= N_Access_Definition
2635 or else NT
(N
).Nkind
= N_Access_Function_Definition
2636 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2637 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2638 or else NT
(N
).Nkind
= N_Allocator
2639 or else NT
(N
).Nkind
= N_Component_Definition
2640 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2641 or else NT
(N
).Nkind
= N_Discriminant_Specification
2642 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2643 or else NT
(N
).Nkind
= N_Function_Specification
2644 or else NT
(N
).Nkind
= N_Object_Declaration
2645 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2646 or else NT
(N
).Nkind
= N_Parameter_Specification
2647 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2649 end Null_Exclusion_Present
;
2651 function Null_Exclusion_In_Return_Present
2652 (N
: Node_Id
) return Boolean is
2654 pragma Assert
(False
2655 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2657 end Null_Exclusion_In_Return_Present
;
2659 function Null_Present
2660 (N
: Node_Id
) return Boolean is
2662 pragma Assert
(False
2663 or else NT
(N
).Nkind
= N_Component_List
2664 or else NT
(N
).Nkind
= N_Procedure_Specification
2665 or else NT
(N
).Nkind
= N_Record_Definition
);
2669 function Null_Record_Present
2670 (N
: Node_Id
) return Boolean is
2672 pragma Assert
(False
2673 or else NT
(N
).Nkind
= N_Aggregate
2674 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2676 end Null_Record_Present
;
2678 function Null_Statement
2679 (N
: Node_Id
) return Node_Id
is
2681 pragma Assert
(False
2682 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2686 function Object_Definition
2687 (N
: Node_Id
) return Node_Id
is
2689 pragma Assert
(False
2690 or else NT
(N
).Nkind
= N_Object_Declaration
);
2692 end Object_Definition
;
2695 (N
: Node_Id
) return Boolean is
2697 pragma Assert
(False
2698 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2702 function Original_Discriminant
2703 (N
: Node_Id
) return Node_Id
is
2705 pragma Assert
(False
2706 or else NT
(N
).Nkind
= N_Identifier
);
2708 end Original_Discriminant
;
2710 function Original_Entity
2711 (N
: Node_Id
) return Entity_Id
is
2713 pragma Assert
(False
2714 or else NT
(N
).Nkind
= N_Integer_Literal
2715 or else NT
(N
).Nkind
= N_Real_Literal
);
2717 end Original_Entity
;
2719 function Others_Discrete_Choices
2720 (N
: Node_Id
) return List_Id
is
2722 pragma Assert
(False
2723 or else NT
(N
).Nkind
= N_Others_Choice
);
2725 end Others_Discrete_Choices
;
2727 function Out_Present
2728 (N
: Node_Id
) return Boolean is
2730 pragma Assert
(False
2731 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2732 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2736 function Parameter_Associations
2737 (N
: Node_Id
) return List_Id
is
2739 pragma Assert
(False
2740 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2741 or else NT
(N
).Nkind
= N_Function_Call
2742 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2744 end Parameter_Associations
;
2746 function Parameter_Specifications
2747 (N
: Node_Id
) return List_Id
is
2749 pragma Assert
(False
2750 or else NT
(N
).Nkind
= N_Accept_Statement
2751 or else NT
(N
).Nkind
= N_Access_Function_Definition
2752 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2753 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2754 or else NT
(N
).Nkind
= N_Entry_Declaration
2755 or else NT
(N
).Nkind
= N_Function_Specification
2756 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2758 end Parameter_Specifications
;
2760 function Parameter_Type
2761 (N
: Node_Id
) return Node_Id
is
2763 pragma Assert
(False
2764 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2768 function Parent_Spec
2769 (N
: Node_Id
) return Node_Id
is
2771 pragma Assert
(False
2772 or else NT
(N
).Nkind
= N_Function_Instantiation
2773 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2774 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2775 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2776 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2777 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2778 or else NT
(N
).Nkind
= N_Package_Declaration
2779 or else NT
(N
).Nkind
= N_Package_Instantiation
2780 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2781 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2782 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2783 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2787 function Parent_With
2788 (N
: Node_Id
) return Boolean is
2790 pragma Assert
(False
2791 or else NT
(N
).Nkind
= N_With_Clause
);
2796 (N
: Node_Id
) return Node_Id
is
2798 pragma Assert
(False
2799 or else NT
(N
).Nkind
= N_Component_Clause
);
2803 function Pragma_Argument_Associations
2804 (N
: Node_Id
) return List_Id
is
2806 pragma Assert
(False
2807 or else NT
(N
).Nkind
= N_Pragma
);
2809 end Pragma_Argument_Associations
;
2811 function Pragma_Identifier
2812 (N
: Node_Id
) return Node_Id
is
2814 pragma Assert
(False
2815 or else NT
(N
).Nkind
= N_Pragma
);
2817 end Pragma_Identifier
;
2819 function Pragmas_After
2820 (N
: Node_Id
) return List_Id
is
2822 pragma Assert
(False
2823 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2824 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2828 function Pragmas_Before
2829 (N
: Node_Id
) return List_Id
is
2831 pragma Assert
(False
2832 or else NT
(N
).Nkind
= N_Accept_Alternative
2833 or else NT
(N
).Nkind
= N_Delay_Alternative
2834 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2835 or else NT
(N
).Nkind
= N_Mod_Clause
2836 or else NT
(N
).Nkind
= N_Terminate_Alternative
2837 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2841 function Pre_Post_Conditions
2842 (N
: Node_Id
) return Node_Id
is
2844 pragma Assert
(False
2845 or else NT
(N
).Nkind
= N_Contract
);
2847 end Pre_Post_Conditions
;
2850 (N
: Node_Id
) return Node_Id
is
2852 pragma Assert
(False
2853 or else NT
(N
).Nkind
= N_Attribute_Reference
2854 or else NT
(N
).Nkind
= N_Expanded_Name
2855 or else NT
(N
).Nkind
= N_Explicit_Dereference
2856 or else NT
(N
).Nkind
= N_Indexed_Component
2857 or else NT
(N
).Nkind
= N_Reference
2858 or else NT
(N
).Nkind
= N_Selected_Component
2859 or else NT
(N
).Nkind
= N_Slice
);
2863 function Premature_Use
2864 (N
: Node_Id
) return Node_Id
is
2866 pragma Assert
(False
2867 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2871 function Present_Expr
2872 (N
: Node_Id
) return Uint
is
2874 pragma Assert
(False
2875 or else NT
(N
).Nkind
= N_Variant
);
2880 (N
: Node_Id
) return Boolean is
2882 pragma Assert
(False
2883 or else NT
(N
).Nkind
= N_Component_Declaration
2884 or else NT
(N
).Nkind
= N_Discriminant_Specification
2885 or else NT
(N
).Nkind
= N_Exception_Declaration
2886 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2887 or else NT
(N
).Nkind
= N_Number_Declaration
2888 or else NT
(N
).Nkind
= N_Object_Declaration
2889 or else NT
(N
).Nkind
= N_Parameter_Specification
2890 or else NT
(N
).Nkind
= N_Use_Package_Clause
2891 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2895 function Prev_Use_Clause
2896 (N
: Node_Id
) return Node_Id
is
2898 pragma Assert
(False
2899 or else NT
(N
).Nkind
= N_Use_Package_Clause
2900 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2902 end Prev_Use_Clause
;
2904 function Print_In_Hex
2905 (N
: Node_Id
) return Boolean is
2907 pragma Assert
(False
2908 or else NT
(N
).Nkind
= N_Integer_Literal
);
2912 function Private_Declarations
2913 (N
: Node_Id
) return List_Id
is
2915 pragma Assert
(False
2916 or else NT
(N
).Nkind
= N_Package_Specification
2917 or else NT
(N
).Nkind
= N_Protected_Definition
2918 or else NT
(N
).Nkind
= N_Task_Definition
);
2920 end Private_Declarations
;
2922 function Private_Present
2923 (N
: Node_Id
) return Boolean is
2925 pragma Assert
(False
2926 or else NT
(N
).Nkind
= N_Compilation_Unit
2927 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2928 or else NT
(N
).Nkind
= N_With_Clause
);
2930 end Private_Present
;
2932 function Procedure_To_Call
2933 (N
: Node_Id
) return Node_Id
is
2935 pragma Assert
(False
2936 or else NT
(N
).Nkind
= N_Allocator
2937 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2938 or else NT
(N
).Nkind
= N_Free_Statement
2939 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2941 end Procedure_To_Call
;
2943 function Proper_Body
2944 (N
: Node_Id
) return Node_Id
is
2946 pragma Assert
(False
2947 or else NT
(N
).Nkind
= N_Subunit
);
2951 function Protected_Definition
2952 (N
: Node_Id
) return Node_Id
is
2954 pragma Assert
(False
2955 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2956 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2958 end Protected_Definition
;
2960 function Protected_Present
2961 (N
: Node_Id
) return Boolean is
2963 pragma Assert
(False
2964 or else NT
(N
).Nkind
= N_Access_Function_Definition
2965 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2966 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2967 or else NT
(N
).Nkind
= N_Record_Definition
);
2969 end Protected_Present
;
2971 function Raises_Constraint_Error
2972 (N
: Node_Id
) return Boolean is
2974 pragma Assert
(False
2975 or else NT
(N
).Nkind
in N_Subexpr
);
2977 end Raises_Constraint_Error
;
2979 function Range_Constraint
2980 (N
: Node_Id
) return Node_Id
is
2982 pragma Assert
(False
2983 or else NT
(N
).Nkind
= N_Delta_Constraint
2984 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2986 end Range_Constraint
;
2988 function Range_Expression
2989 (N
: Node_Id
) return Node_Id
is
2991 pragma Assert
(False
2992 or else NT
(N
).Nkind
= N_Range_Constraint
);
2994 end Range_Expression
;
2996 function Real_Range_Specification
2997 (N
: Node_Id
) return Node_Id
is
2999 pragma Assert
(False
3000 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
3001 or else NT
(N
).Nkind
= N_Floating_Point_Definition
3002 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
3004 end Real_Range_Specification
;
3007 (N
: Node_Id
) return Ureal
is
3009 pragma Assert
(False
3010 or else NT
(N
).Nkind
= N_Real_Literal
);
3015 (N
: Node_Id
) return Uint
is
3017 pragma Assert
(False
3018 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3019 or else NT
(N
).Nkind
= N_Raise_Program_Error
3020 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
3024 function Record_Extension_Part
3025 (N
: Node_Id
) return Node_Id
is
3027 pragma Assert
(False
3028 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
3030 end Record_Extension_Part
;
3032 function Redundant_Use
3033 (N
: Node_Id
) return Boolean is
3035 pragma Assert
(False
3036 or else NT
(N
).Nkind
= N_Attribute_Reference
3037 or else NT
(N
).Nkind
= N_Expanded_Name
3038 or else NT
(N
).Nkind
= N_Identifier
);
3042 function Renaming_Exception
3043 (N
: Node_Id
) return Node_Id
is
3045 pragma Assert
(False
3046 or else NT
(N
).Nkind
= N_Exception_Declaration
);
3048 end Renaming_Exception
;
3050 function Result_Definition
3051 (N
: Node_Id
) return Node_Id
is
3053 pragma Assert
(False
3054 or else NT
(N
).Nkind
= N_Access_Function_Definition
3055 or else NT
(N
).Nkind
= N_Function_Specification
);
3057 end Result_Definition
;
3059 function Return_Object_Declarations
3060 (N
: Node_Id
) return List_Id
is
3062 pragma Assert
(False
3063 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
3065 end Return_Object_Declarations
;
3067 function Return_Statement_Entity
3068 (N
: Node_Id
) return Node_Id
is
3070 pragma Assert
(False
3071 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3072 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3074 end Return_Statement_Entity
;
3076 function Reverse_Present
3077 (N
: Node_Id
) return Boolean is
3079 pragma Assert
(False
3080 or else NT
(N
).Nkind
= N_Iterator_Specification
3081 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3083 end Reverse_Present
;
3086 (N
: Node_Id
) return Node_Id
is
3088 pragma Assert
(False
3089 or else NT
(N
).Nkind
in N_Op
3090 or else NT
(N
).Nkind
= N_And_Then
3091 or else NT
(N
).Nkind
= N_In
3092 or else NT
(N
).Nkind
= N_Not_In
3093 or else NT
(N
).Nkind
= N_Or_Else
);
3097 function Rounded_Result
3098 (N
: Node_Id
) return Boolean is
3100 pragma Assert
(False
3101 or else NT
(N
).Nkind
= N_Op_Divide
3102 or else NT
(N
).Nkind
= N_Op_Multiply
3103 or else NT
(N
).Nkind
= N_Type_Conversion
);
3107 function Save_Invocation_Graph_Of_Body
3108 (N
: Node_Id
) return Boolean is
3110 pragma Assert
(False
3111 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3113 end Save_Invocation_Graph_Of_Body
;
3115 function SCIL_Controlling_Tag
3116 (N
: Node_Id
) return Node_Id
is
3118 pragma Assert
(False
3119 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3121 end SCIL_Controlling_Tag
;
3123 function SCIL_Entity
3124 (N
: Node_Id
) return Node_Id
is
3126 pragma Assert
(False
3127 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3128 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3129 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3133 function SCIL_Tag_Value
3134 (N
: Node_Id
) return Node_Id
is
3136 pragma Assert
(False
3137 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3141 function SCIL_Target_Prim
3142 (N
: Node_Id
) return Node_Id
is
3144 pragma Assert
(False
3145 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3147 end SCIL_Target_Prim
;
3150 (N
: Node_Id
) return Node_Id
is
3152 pragma Assert
(False
3153 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3154 or else NT
(N
).Nkind
= N_Defining_Identifier
3155 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3159 function Select_Alternatives
3160 (N
: Node_Id
) return List_Id
is
3162 pragma Assert
(False
3163 or else NT
(N
).Nkind
= N_Selective_Accept
);
3165 end Select_Alternatives
;
3167 function Selector_Name
3168 (N
: Node_Id
) return Node_Id
is
3170 pragma Assert
(False
3171 or else NT
(N
).Nkind
= N_Expanded_Name
3172 or else NT
(N
).Nkind
= N_Generic_Association
3173 or else NT
(N
).Nkind
= N_Parameter_Association
3174 or else NT
(N
).Nkind
= N_Selected_Component
);
3178 function Selector_Names
3179 (N
: Node_Id
) return List_Id
is
3181 pragma Assert
(False
3182 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3186 function Shift_Count_OK
3187 (N
: Node_Id
) return Boolean is
3189 pragma Assert
(False
3190 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3191 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3192 or else NT
(N
).Nkind
= N_Op_Shift_Left
3193 or else NT
(N
).Nkind
= N_Op_Shift_Right
3194 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3198 function Source_Type
3199 (N
: Node_Id
) return Entity_Id
is
3201 pragma Assert
(False
3202 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3206 function Specification
3207 (N
: Node_Id
) return Node_Id
is
3209 pragma Assert
(False
3210 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3211 or else NT
(N
).Nkind
= N_Expression_Function
3212 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3213 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3214 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3215 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3216 or else NT
(N
).Nkind
= N_Package_Declaration
3217 or else NT
(N
).Nkind
= N_Subprogram_Body
3218 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3219 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3220 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3225 (N
: Node_Id
) return Boolean is
3227 pragma Assert
(False
3228 or else NT
(N
).Nkind
= N_Aspect_Specification
3229 or else NT
(N
).Nkind
= N_Pragma
);
3234 (N
: Node_Id
) return List_Id
is
3236 pragma Assert
(False
3237 or else NT
(N
).Nkind
= N_Abortable_Part
3238 or else NT
(N
).Nkind
= N_Accept_Alternative
3239 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3240 or else NT
(N
).Nkind
= N_Delay_Alternative
3241 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3242 or else NT
(N
).Nkind
= N_Exception_Handler
3243 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3244 or else NT
(N
).Nkind
= N_Loop_Statement
3245 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3249 function Storage_Pool
3250 (N
: Node_Id
) return Node_Id
is
3252 pragma Assert
(False
3253 or else NT
(N
).Nkind
= N_Allocator
3254 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3255 or else NT
(N
).Nkind
= N_Free_Statement
3256 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3260 function Subpool_Handle_Name
3261 (N
: Node_Id
) return Node_Id
is
3263 pragma Assert
(False
3264 or else NT
(N
).Nkind
= N_Allocator
);
3266 end Subpool_Handle_Name
;
3269 (N
: Node_Id
) return String_Id
is
3271 pragma Assert
(False
3272 or else NT
(N
).Nkind
= N_Operator_Symbol
3273 or else NT
(N
).Nkind
= N_String_Literal
);
3277 function Subtype_Indication
3278 (N
: Node_Id
) return Node_Id
is
3280 pragma Assert
(False
3281 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3282 or else NT
(N
).Nkind
= N_Component_Definition
3283 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3284 or else NT
(N
).Nkind
= N_Iterator_Specification
3285 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3286 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3288 end Subtype_Indication
;
3290 function Suppress_Assignment_Checks
3291 (N
: Node_Id
) return Boolean is
3293 pragma Assert
(False
3294 or else NT
(N
).Nkind
= N_Assignment_Statement
3295 or else NT
(N
).Nkind
= N_Object_Declaration
);
3297 end Suppress_Assignment_Checks
;
3299 function Suppress_Loop_Warnings
3300 (N
: Node_Id
) return Boolean is
3302 pragma Assert
(False
3303 or else NT
(N
).Nkind
= N_Loop_Statement
);
3305 end Suppress_Loop_Warnings
;
3307 function Subtype_Mark
3308 (N
: Node_Id
) return Node_Id
is
3310 pragma Assert
(False
3311 or else NT
(N
).Nkind
= N_Access_Definition
3312 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3313 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3314 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3315 or else NT
(N
).Nkind
= N_Qualified_Expression
3316 or else NT
(N
).Nkind
= N_Subtype_Indication
3317 or else NT
(N
).Nkind
= N_Type_Conversion
3318 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3319 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3323 function Subtype_Marks
3324 (N
: Node_Id
) return List_Id
is
3326 pragma Assert
(False
3327 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3331 function Synchronized_Present
3332 (N
: Node_Id
) return Boolean is
3334 pragma Assert
(False
3335 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3336 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3337 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3338 or else NT
(N
).Nkind
= N_Record_Definition
);
3340 end Synchronized_Present
;
3342 function Tagged_Present
3343 (N
: Node_Id
) return Boolean is
3345 pragma Assert
(False
3346 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3347 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3348 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3349 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3350 or else NT
(N
).Nkind
= N_Record_Definition
);
3355 (N
: Node_Id
) return Entity_Id
is
3357 pragma Assert
(False
3358 or else NT
(N
).Nkind
= N_Call_Marker
3359 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
3363 function Target_Type
3364 (N
: Node_Id
) return Entity_Id
is
3366 pragma Assert
(False
3367 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3371 function Task_Definition
3372 (N
: Node_Id
) return Node_Id
is
3374 pragma Assert
(False
3375 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3376 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3378 end Task_Definition
;
3380 function Task_Present
3381 (N
: Node_Id
) return Boolean is
3383 pragma Assert
(False
3384 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3385 or else NT
(N
).Nkind
= N_Record_Definition
);
3389 function Then_Actions
3390 (N
: Node_Id
) return List_Id
is
3392 pragma Assert
(False
3393 or else NT
(N
).Nkind
= N_If_Expression
);
3397 function Then_Statements
3398 (N
: Node_Id
) return List_Id
is
3400 pragma Assert
(False
3401 or else NT
(N
).Nkind
= N_Elsif_Part
3402 or else NT
(N
).Nkind
= N_If_Statement
);
3404 end Then_Statements
;
3406 function Treat_Fixed_As_Integer
3407 (N
: Node_Id
) return Boolean is
3409 pragma Assert
(False
3410 or else NT
(N
).Nkind
= N_Op_Divide
3411 or else NT
(N
).Nkind
= N_Op_Mod
3412 or else NT
(N
).Nkind
= N_Op_Multiply
3413 or else NT
(N
).Nkind
= N_Op_Rem
);
3415 end Treat_Fixed_As_Integer
;
3417 function Triggering_Alternative
3418 (N
: Node_Id
) return Node_Id
is
3420 pragma Assert
(False
3421 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3423 end Triggering_Alternative
;
3425 function Triggering_Statement
3426 (N
: Node_Id
) return Node_Id
is
3428 pragma Assert
(False
3429 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3431 end Triggering_Statement
;
3434 (N
: Node_Id
) return Elist_Id
is
3436 pragma Assert
(False
3437 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3441 function Type_Definition
3442 (N
: Node_Id
) return Node_Id
is
3444 pragma Assert
(False
3445 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3447 end Type_Definition
;
3449 function Uneval_Old_Accept
3450 (N
: Node_Id
) return Boolean is
3452 pragma Assert
(False
3453 or else NT
(N
).Nkind
= N_Pragma
);
3455 end Uneval_Old_Accept
;
3457 function Uneval_Old_Warn
3458 (N
: Node_Id
) return Boolean is
3460 pragma Assert
(False
3461 or else NT
(N
).Nkind
= N_Pragma
);
3463 end Uneval_Old_Warn
;
3466 (N
: Node_Id
) return Node_Id
is
3468 pragma Assert
(False
3469 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3473 function Unknown_Discriminants_Present
3474 (N
: Node_Id
) return Boolean is
3476 pragma Assert
(False
3477 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3478 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3479 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3480 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3482 end Unknown_Discriminants_Present
;
3484 function Unreferenced_In_Spec
3485 (N
: Node_Id
) return Boolean is
3487 pragma Assert
(False
3488 or else NT
(N
).Nkind
= N_With_Clause
);
3490 end Unreferenced_In_Spec
;
3492 function Variant_Part
3493 (N
: Node_Id
) return Node_Id
is
3495 pragma Assert
(False
3496 or else NT
(N
).Nkind
= N_Component_List
);
3501 (N
: Node_Id
) return List_Id
is
3503 pragma Assert
(False
3504 or else NT
(N
).Nkind
= N_Variant_Part
);
3508 function Visible_Declarations
3509 (N
: Node_Id
) return List_Id
is
3511 pragma Assert
(False
3512 or else NT
(N
).Nkind
= N_Package_Specification
3513 or else NT
(N
).Nkind
= N_Protected_Definition
3514 or else NT
(N
).Nkind
= N_Task_Definition
);
3516 end Visible_Declarations
;
3518 function Uninitialized_Variable
3519 (N
: Node_Id
) return Node_Id
is
3521 pragma Assert
(False
3522 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3523 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3525 end Uninitialized_Variable
;
3527 function Used_Operations
3528 (N
: Node_Id
) return Elist_Id
is
3530 pragma Assert
(False
3531 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3533 end Used_Operations
;
3535 function Was_Attribute_Reference
3536 (N
: Node_Id
) return Boolean is
3538 pragma Assert
(False
3539 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3541 end Was_Attribute_Reference
;
3543 function Was_Expression_Function
3544 (N
: Node_Id
) return Boolean is
3546 pragma Assert
(False
3547 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3549 end Was_Expression_Function
;
3551 function Was_Originally_Stub
3552 (N
: Node_Id
) return Boolean is
3554 pragma Assert
(False
3555 or else NT
(N
).Nkind
= N_Package_Body
3556 or else NT
(N
).Nkind
= N_Protected_Body
3557 or else NT
(N
).Nkind
= N_Subprogram_Body
3558 or else NT
(N
).Nkind
= N_Task_Body
);
3560 end Was_Originally_Stub
;
3562 --------------------------
3563 -- Field Set Procedures --
3564 --------------------------
3566 procedure Set_Abort_Present
3567 (N
: Node_Id
; Val
: Boolean := True) is
3569 pragma Assert
(False
3570 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3571 Set_Flag15
(N
, Val
);
3572 end Set_Abort_Present
;
3574 procedure Set_Abortable_Part
3575 (N
: Node_Id
; Val
: Node_Id
) is
3577 pragma Assert
(False
3578 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3579 Set_Node2_With_Parent
(N
, Val
);
3580 end Set_Abortable_Part
;
3582 procedure Set_Abstract_Present
3583 (N
: Node_Id
; Val
: Boolean := True) is
3585 pragma Assert
(False
3586 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3587 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3588 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3589 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3590 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3591 or else NT
(N
).Nkind
= N_Record_Definition
);
3593 end Set_Abstract_Present
;
3595 procedure Set_Accept_Handler_Records
3596 (N
: Node_Id
; Val
: List_Id
) is
3598 pragma Assert
(False
3599 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3600 Set_List5
(N
, Val
); -- semantic field, no parent set
3601 end Set_Accept_Handler_Records
;
3603 procedure Set_Accept_Statement
3604 (N
: Node_Id
; Val
: Node_Id
) is
3606 pragma Assert
(False
3607 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3608 Set_Node2_With_Parent
(N
, Val
);
3609 end Set_Accept_Statement
;
3611 procedure Set_Access_Definition
3612 (N
: Node_Id
; Val
: Node_Id
) is
3614 pragma Assert
(False
3615 or else NT
(N
).Nkind
= N_Component_Definition
3616 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3617 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3618 Set_Node3_With_Parent
(N
, Val
);
3619 end Set_Access_Definition
;
3621 procedure Set_Access_To_Subprogram_Definition
3622 (N
: Node_Id
; Val
: Node_Id
) is
3624 pragma Assert
(False
3625 or else NT
(N
).Nkind
= N_Access_Definition
);
3626 Set_Node3_With_Parent
(N
, Val
);
3627 end Set_Access_To_Subprogram_Definition
;
3629 procedure Set_Access_Types_To_Process
3630 (N
: Node_Id
; Val
: Elist_Id
) is
3632 pragma Assert
(False
3633 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3634 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3635 end Set_Access_Types_To_Process
;
3637 procedure Set_Actions
3638 (N
: Node_Id
; Val
: List_Id
) is
3640 pragma Assert
(False
3641 or else NT
(N
).Nkind
= N_And_Then
3642 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3643 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3644 or else NT
(N
).Nkind
= N_Compound_Statement
3645 or else NT
(N
).Nkind
= N_Expression_With_Actions
3646 or else NT
(N
).Nkind
= N_Freeze_Entity
3647 or else NT
(N
).Nkind
= N_Or_Else
);
3648 Set_List1_With_Parent
(N
, Val
);
3651 procedure Set_Activation_Chain_Entity
3652 (N
: Node_Id
; Val
: Node_Id
) is
3654 pragma Assert
(False
3655 or else NT
(N
).Nkind
= N_Block_Statement
3656 or else NT
(N
).Nkind
= N_Entry_Body
3657 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3658 or else NT
(N
).Nkind
= N_Package_Declaration
3659 or else NT
(N
).Nkind
= N_Subprogram_Body
3660 or else NT
(N
).Nkind
= N_Task_Body
);
3661 Set_Node3
(N
, Val
); -- semantic field, no parent set
3662 end Set_Activation_Chain_Entity
;
3664 procedure Set_Acts_As_Spec
3665 (N
: Node_Id
; Val
: Boolean := True) is
3667 pragma Assert
(False
3668 or else NT
(N
).Nkind
= N_Compilation_Unit
3669 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3671 end Set_Acts_As_Spec
;
3673 procedure Set_Actual_Designated_Subtype
3674 (N
: Node_Id
; Val
: Node_Id
) is
3676 pragma Assert
(False
3677 or else NT
(N
).Nkind
= N_Explicit_Dereference
3678 or else NT
(N
).Nkind
= N_Free_Statement
);
3680 end Set_Actual_Designated_Subtype
;
3682 procedure Set_Address_Warning_Posted
3683 (N
: Node_Id
; Val
: Boolean := True) is
3685 pragma Assert
(False
3686 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3687 Set_Flag18
(N
, Val
);
3688 end Set_Address_Warning_Posted
;
3690 procedure Set_Aggregate_Bounds
3691 (N
: Node_Id
; Val
: Node_Id
) is
3693 pragma Assert
(False
3694 or else NT
(N
).Nkind
= N_Aggregate
);
3695 Set_Node3
(N
, Val
); -- semantic field, no parent set
3696 end Set_Aggregate_Bounds
;
3698 procedure Set_Aliased_Present
3699 (N
: Node_Id
; Val
: Boolean := True) is
3701 pragma Assert
(False
3702 or else NT
(N
).Nkind
= N_Component_Definition
3703 or else NT
(N
).Nkind
= N_Object_Declaration
3704 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3706 end Set_Aliased_Present
;
3708 procedure Set_Alloc_For_BIP_Return
3709 (N
: Node_Id
; Val
: Boolean := True) is
3711 pragma Assert
(False
3712 or else NT
(N
).Nkind
= N_Allocator
);
3714 end Set_Alloc_For_BIP_Return
;
3716 procedure Set_All_Others
3717 (N
: Node_Id
; Val
: Boolean := True) is
3719 pragma Assert
(False
3720 or else NT
(N
).Nkind
= N_Others_Choice
);
3721 Set_Flag11
(N
, Val
);
3724 procedure Set_All_Present
3725 (N
: Node_Id
; Val
: Boolean := True) is
3727 pragma Assert
(False
3728 or else NT
(N
).Nkind
= N_Access_Definition
3729 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3730 or else NT
(N
).Nkind
= N_Quantified_Expression
3731 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3732 Set_Flag15
(N
, Val
);
3733 end Set_All_Present
;
3735 procedure Set_Alternatives
3736 (N
: Node_Id
; Val
: List_Id
) is
3738 pragma Assert
(False
3739 or else NT
(N
).Nkind
= N_Case_Expression
3740 or else NT
(N
).Nkind
= N_Case_Statement
3741 or else NT
(N
).Nkind
= N_In
3742 or else NT
(N
).Nkind
= N_Not_In
);
3743 Set_List4_With_Parent
(N
, Val
);
3744 end Set_Alternatives
;
3746 procedure Set_Ancestor_Part
3747 (N
: Node_Id
; Val
: Node_Id
) is
3749 pragma Assert
(False
3750 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3751 Set_Node3_With_Parent
(N
, Val
);
3752 end Set_Ancestor_Part
;
3754 procedure Set_Atomic_Sync_Required
3755 (N
: Node_Id
; Val
: Boolean := True) is
3757 pragma Assert
(False
3758 or else NT
(N
).Nkind
= N_Expanded_Name
3759 or else NT
(N
).Nkind
= N_Explicit_Dereference
3760 or else NT
(N
).Nkind
= N_Identifier
3761 or else NT
(N
).Nkind
= N_Indexed_Component
3762 or else NT
(N
).Nkind
= N_Selected_Component
);
3763 Set_Flag14
(N
, Val
);
3764 end Set_Atomic_Sync_Required
;
3766 procedure Set_Array_Aggregate
3767 (N
: Node_Id
; Val
: Node_Id
) is
3769 pragma Assert
(False
3770 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3771 Set_Node3_With_Parent
(N
, Val
);
3772 end Set_Array_Aggregate
;
3774 procedure Set_Aspect_On_Partial_View
3775 (N
: Node_Id
; Val
: Boolean := True) is
3777 pragma Assert
(False
3778 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3779 Set_Flag18
(N
, Val
);
3780 end Set_Aspect_On_Partial_View
;
3782 procedure Set_Aspect_Rep_Item
3783 (N
: Node_Id
; Val
: Node_Id
) is
3785 pragma Assert
(False
3786 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3788 end Set_Aspect_Rep_Item
;
3790 procedure Set_Assignment_OK
3791 (N
: Node_Id
; Val
: Boolean := True) is
3793 pragma Assert
(False
3794 or else NT
(N
).Nkind
= N_Object_Declaration
3795 or else NT
(N
).Nkind
in N_Subexpr
);
3796 Set_Flag15
(N
, Val
);
3797 end Set_Assignment_OK
;
3799 procedure Set_Associated_Node
3800 (N
: Node_Id
; Val
: Node_Id
) is
3802 pragma Assert
(False
3803 or else NT
(N
).Nkind
in N_Has_Entity
3804 or else NT
(N
).Nkind
= N_Aggregate
3805 or else NT
(N
).Nkind
= N_Extension_Aggregate
3806 or else NT
(N
).Nkind
= N_Selected_Component
3807 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3808 Set_Node4
(N
, Val
); -- semantic field, no parent set
3809 end Set_Associated_Node
;
3811 procedure Set_At_End_Proc
3812 (N
: Node_Id
; Val
: Node_Id
) is
3814 pragma Assert
(False
3815 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3817 end Set_At_End_Proc
;
3819 procedure Set_Attribute_Name
3820 (N
: Node_Id
; Val
: Name_Id
) is
3822 pragma Assert
(False
3823 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3825 end Set_Attribute_Name
;
3827 procedure Set_Aux_Decls_Node
3828 (N
: Node_Id
; Val
: Node_Id
) is
3830 pragma Assert
(False
3831 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3832 Set_Node5_With_Parent
(N
, Val
);
3833 end Set_Aux_Decls_Node
;
3835 procedure Set_Backwards_OK
3836 (N
: Node_Id
; Val
: Boolean := True) is
3838 pragma Assert
(False
3839 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3841 end Set_Backwards_OK
;
3843 procedure Set_Bad_Is_Detected
3844 (N
: Node_Id
; Val
: Boolean := True) is
3846 pragma Assert
(False
3847 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3848 Set_Flag15
(N
, Val
);
3849 end Set_Bad_Is_Detected
;
3851 procedure Set_Body_Required
3852 (N
: Node_Id
; Val
: Boolean := True) is
3854 pragma Assert
(False
3855 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3856 Set_Flag13
(N
, Val
);
3857 end Set_Body_Required
;
3859 procedure Set_Body_To_Inline
3860 (N
: Node_Id
; Val
: Node_Id
) is
3862 pragma Assert
(False
3863 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3865 end Set_Body_To_Inline
;
3867 procedure Set_Box_Present
3868 (N
: Node_Id
; Val
: Boolean := True) is
3870 pragma Assert
(False
3871 or else NT
(N
).Nkind
= N_Component_Association
3872 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3873 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3874 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3875 or else NT
(N
).Nkind
= N_Generic_Association
3876 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3877 Set_Flag15
(N
, Val
);
3878 end Set_Box_Present
;
3880 procedure Set_By_Ref
3881 (N
: Node_Id
; Val
: Boolean := True) is
3883 pragma Assert
(False
3884 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3885 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3889 procedure Set_Char_Literal_Value
3890 (N
: Node_Id
; Val
: Uint
) is
3892 pragma Assert
(False
3893 or else NT
(N
).Nkind
= N_Character_Literal
);
3895 end Set_Char_Literal_Value
;
3898 (N
: Node_Id
; Val
: Name_Id
) is
3900 pragma Assert
(False
3901 or else NT
(N
).Nkind
in N_Has_Chars
);
3905 procedure Set_Check_Address_Alignment
3906 (N
: Node_Id
; Val
: Boolean := True) is
3908 pragma Assert
(False
3909 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3910 Set_Flag11
(N
, Val
);
3911 end Set_Check_Address_Alignment
;
3913 procedure Set_Choice_Parameter
3914 (N
: Node_Id
; Val
: Node_Id
) is
3916 pragma Assert
(False
3917 or else NT
(N
).Nkind
= N_Exception_Handler
);
3918 Set_Node2_With_Parent
(N
, Val
);
3919 end Set_Choice_Parameter
;
3921 procedure Set_Choices
3922 (N
: Node_Id
; Val
: List_Id
) is
3924 pragma Assert
(False
3925 or else NT
(N
).Nkind
= N_Component_Association
);
3926 Set_List1_With_Parent
(N
, Val
);
3929 procedure Set_Class_Present
3930 (N
: Node_Id
; Val
: Boolean := True) is
3932 pragma Assert
(False
3933 or else NT
(N
).Nkind
= N_Aspect_Specification
3934 or else NT
(N
).Nkind
= N_Pragma
);
3936 end Set_Class_Present
;
3938 procedure Set_Classifications
3939 (N
: Node_Id
; Val
: Node_Id
) is
3941 pragma Assert
(False
3942 or else NT
(N
).Nkind
= N_Contract
);
3943 Set_Node3
(N
, Val
); -- semantic field, no parent set
3944 end Set_Classifications
;
3946 procedure Set_Cleanup_Actions
3947 (N
: Node_Id
; Val
: List_Id
) is
3949 pragma Assert
(False
3950 or else NT
(N
).Nkind
= N_Block_Statement
);
3951 Set_List5
(N
, Val
); -- semantic field, no parent set
3952 end Set_Cleanup_Actions
;
3954 procedure Set_Comes_From_Extended_Return_Statement
3955 (N
: Node_Id
; Val
: Boolean := True) is
3957 pragma Assert
(False
3958 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3959 Set_Flag18
(N
, Val
);
3960 end Set_Comes_From_Extended_Return_Statement
;
3962 procedure Set_Compile_Time_Known_Aggregate
3963 (N
: Node_Id
; Val
: Boolean := True) is
3965 pragma Assert
(False
3966 or else NT
(N
).Nkind
= N_Aggregate
);
3967 Set_Flag18
(N
, Val
);
3968 end Set_Compile_Time_Known_Aggregate
;
3970 procedure Set_Component_Associations
3971 (N
: Node_Id
; Val
: List_Id
) is
3973 pragma Assert
(False
3974 or else NT
(N
).Nkind
= N_Aggregate
3975 or else NT
(N
).Nkind
= N_Delta_Aggregate
3976 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3977 Set_List2_With_Parent
(N
, Val
);
3978 end Set_Component_Associations
;
3980 procedure Set_Component_Clauses
3981 (N
: Node_Id
; Val
: List_Id
) is
3983 pragma Assert
(False
3984 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3985 Set_List3_With_Parent
(N
, Val
);
3986 end Set_Component_Clauses
;
3988 procedure Set_Component_Definition
3989 (N
: Node_Id
; Val
: Node_Id
) is
3991 pragma Assert
(False
3992 or else NT
(N
).Nkind
= N_Component_Declaration
3993 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3994 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3995 Set_Node4_With_Parent
(N
, Val
);
3996 end Set_Component_Definition
;
3998 procedure Set_Component_Items
3999 (N
: Node_Id
; Val
: List_Id
) is
4001 pragma Assert
(False
4002 or else NT
(N
).Nkind
= N_Component_List
);
4003 Set_List3_With_Parent
(N
, Val
);
4004 end Set_Component_Items
;
4006 procedure Set_Component_List
4007 (N
: Node_Id
; Val
: Node_Id
) is
4009 pragma Assert
(False
4010 or else NT
(N
).Nkind
= N_Record_Definition
4011 or else NT
(N
).Nkind
= N_Variant
);
4012 Set_Node1_With_Parent
(N
, Val
);
4013 end Set_Component_List
;
4015 procedure Set_Component_Name
4016 (N
: Node_Id
; Val
: Node_Id
) is
4018 pragma Assert
(False
4019 or else NT
(N
).Nkind
= N_Component_Clause
);
4020 Set_Node1_With_Parent
(N
, Val
);
4021 end Set_Component_Name
;
4023 procedure Set_Componentwise_Assignment
4024 (N
: Node_Id
; Val
: Boolean := True) is
4026 pragma Assert
(False
4027 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4028 Set_Flag14
(N
, Val
);
4029 end Set_Componentwise_Assignment
;
4031 procedure Set_Condition
4032 (N
: Node_Id
; Val
: Node_Id
) is
4034 pragma Assert
(False
4035 or else NT
(N
).Nkind
= N_Accept_Alternative
4036 or else NT
(N
).Nkind
= N_Delay_Alternative
4037 or else NT
(N
).Nkind
= N_Elsif_Part
4038 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
4039 or else NT
(N
).Nkind
= N_Exit_Statement
4040 or else NT
(N
).Nkind
= N_If_Statement
4041 or else NT
(N
).Nkind
= N_Iteration_Scheme
4042 or else NT
(N
).Nkind
= N_Quantified_Expression
4043 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
4044 or else NT
(N
).Nkind
= N_Raise_Program_Error
4045 or else NT
(N
).Nkind
= N_Raise_Storage_Error
4046 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
4047 Set_Node1_With_Parent
(N
, Val
);
4050 procedure Set_Condition_Actions
4051 (N
: Node_Id
; Val
: List_Id
) is
4053 pragma Assert
(False
4054 or else NT
(N
).Nkind
= N_Elsif_Part
4055 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
4056 Set_List3
(N
, Val
); -- semantic field, no parent set
4057 end Set_Condition_Actions
;
4059 procedure Set_Config_Pragmas
4060 (N
: Node_Id
; Val
: List_Id
) is
4062 pragma Assert
(False
4063 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4064 Set_List4_With_Parent
(N
, Val
);
4065 end Set_Config_Pragmas
;
4067 procedure Set_Constant_Present
4068 (N
: Node_Id
; Val
: Boolean := True) is
4070 pragma Assert
(False
4071 or else NT
(N
).Nkind
= N_Access_Definition
4072 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
4073 or else NT
(N
).Nkind
= N_Object_Declaration
);
4074 Set_Flag17
(N
, Val
);
4075 end Set_Constant_Present
;
4077 procedure Set_Constraint
4078 (N
: Node_Id
; Val
: Node_Id
) is
4080 pragma Assert
(False
4081 or else NT
(N
).Nkind
= N_Subtype_Indication
);
4082 Set_Node3_With_Parent
(N
, Val
);
4085 procedure Set_Constraints
4086 (N
: Node_Id
; Val
: List_Id
) is
4088 pragma Assert
(False
4089 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
4090 Set_List1_With_Parent
(N
, Val
);
4091 end Set_Constraints
;
4093 procedure Set_Context_Installed
4094 (N
: Node_Id
; Val
: Boolean := True) is
4096 pragma Assert
(False
4097 or else NT
(N
).Nkind
= N_With_Clause
);
4098 Set_Flag13
(N
, Val
);
4099 end Set_Context_Installed
;
4101 procedure Set_Context_Items
4102 (N
: Node_Id
; Val
: List_Id
) is
4104 pragma Assert
(False
4105 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4106 Set_List1_With_Parent
(N
, Val
);
4107 end Set_Context_Items
;
4109 procedure Set_Context_Pending
4110 (N
: Node_Id
; Val
: Boolean := True) is
4112 pragma Assert
(False
4113 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4114 Set_Flag16
(N
, Val
);
4115 end Set_Context_Pending
;
4117 procedure Set_Contract_Test_Cases
4118 (N
: Node_Id
; Val
: Node_Id
) is
4120 pragma Assert
(False
4121 or else NT
(N
).Nkind
= N_Contract
);
4122 Set_Node2
(N
, Val
); -- semantic field, no parent set
4123 end Set_Contract_Test_Cases
;
4125 procedure Set_Controlling_Argument
4126 (N
: Node_Id
; Val
: Node_Id
) is
4128 pragma Assert
(False
4129 or else NT
(N
).Nkind
= N_Function_Call
4130 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4131 Set_Node1
(N
, Val
); -- semantic field, no parent set
4132 end Set_Controlling_Argument
;
4134 procedure Set_Conversion_OK
4135 (N
: Node_Id
; Val
: Boolean := True) is
4137 pragma Assert
(False
4138 or else NT
(N
).Nkind
= N_Type_Conversion
);
4139 Set_Flag14
(N
, Val
);
4140 end Set_Conversion_OK
;
4142 procedure Set_Convert_To_Return_False
4143 (N
: Node_Id
; Val
: Boolean := True) is
4145 pragma Assert
(False
4146 or else NT
(N
).Nkind
= N_Raise_Expression
);
4147 Set_Flag13
(N
, Val
);
4148 end Set_Convert_To_Return_False
;
4150 procedure Set_Corresponding_Aspect
4151 (N
: Node_Id
; Val
: Node_Id
) is
4153 pragma Assert
(False
4154 or else NT
(N
).Nkind
= N_Pragma
);
4156 end Set_Corresponding_Aspect
;
4158 procedure Set_Corresponding_Body
4159 (N
: Node_Id
; Val
: Node_Id
) is
4161 pragma Assert
(False
4162 or else NT
(N
).Nkind
= N_Entry_Declaration
4163 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4164 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4165 or else NT
(N
).Nkind
= N_Package_Body_Stub
4166 or else NT
(N
).Nkind
= N_Package_Declaration
4167 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4168 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4169 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4170 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4171 or else NT
(N
).Nkind
= N_Task_Body_Stub
4172 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4173 Set_Node5
(N
, Val
); -- semantic field, no parent set
4174 end Set_Corresponding_Body
;
4176 procedure Set_Corresponding_Formal_Spec
4177 (N
: Node_Id
; Val
: Node_Id
) is
4179 pragma Assert
(False
4180 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4181 Set_Node3
(N
, Val
); -- semantic field, no parent set
4182 end Set_Corresponding_Formal_Spec
;
4184 procedure Set_Corresponding_Generic_Association
4185 (N
: Node_Id
; Val
: Node_Id
) is
4187 pragma Assert
(False
4188 or else NT
(N
).Nkind
= N_Object_Declaration
4189 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4190 Set_Node5
(N
, Val
); -- semantic field, no parent set
4191 end Set_Corresponding_Generic_Association
;
4193 procedure Set_Corresponding_Integer_Value
4194 (N
: Node_Id
; Val
: Uint
) is
4196 pragma Assert
(False
4197 or else NT
(N
).Nkind
= N_Real_Literal
);
4198 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4199 end Set_Corresponding_Integer_Value
;
4201 procedure Set_Corresponding_Spec
4202 (N
: Node_Id
; Val
: Entity_Id
) is
4204 pragma Assert
(False
4205 or else NT
(N
).Nkind
= N_Expression_Function
4206 or else NT
(N
).Nkind
= N_Package_Body
4207 or else NT
(N
).Nkind
= N_Protected_Body
4208 or else NT
(N
).Nkind
= N_Subprogram_Body
4209 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4210 or else NT
(N
).Nkind
= N_Task_Body
4211 or else NT
(N
).Nkind
= N_With_Clause
);
4212 Set_Node5
(N
, Val
); -- semantic field, no parent set
4213 end Set_Corresponding_Spec
;
4215 procedure Set_Corresponding_Spec_Of_Stub
4216 (N
: Node_Id
; Val
: Entity_Id
) is
4218 pragma Assert
(False
4219 or else NT
(N
).Nkind
= N_Package_Body_Stub
4220 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4221 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4222 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4223 Set_Node2
(N
, Val
); -- semantic field, no parent set
4224 end Set_Corresponding_Spec_Of_Stub
;
4226 procedure Set_Corresponding_Stub
4227 (N
: Node_Id
; Val
: Node_Id
) is
4229 pragma Assert
(False
4230 or else NT
(N
).Nkind
= N_Subunit
);
4232 end Set_Corresponding_Stub
;
4234 procedure Set_Dcheck_Function
4235 (N
: Node_Id
; Val
: Entity_Id
) is
4237 pragma Assert
(False
4238 or else NT
(N
).Nkind
= N_Variant
);
4239 Set_Node5
(N
, Val
); -- semantic field, no parent set
4240 end Set_Dcheck_Function
;
4242 procedure Set_Declarations
4243 (N
: Node_Id
; Val
: List_Id
) is
4245 pragma Assert
(False
4246 or else NT
(N
).Nkind
= N_Accept_Statement
4247 or else NT
(N
).Nkind
= N_Block_Statement
4248 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4249 or else NT
(N
).Nkind
= N_Entry_Body
4250 or else NT
(N
).Nkind
= N_Package_Body
4251 or else NT
(N
).Nkind
= N_Protected_Body
4252 or else NT
(N
).Nkind
= N_Subprogram_Body
4253 or else NT
(N
).Nkind
= N_Task_Body
);
4254 Set_List2_With_Parent
(N
, Val
);
4255 end Set_Declarations
;
4257 procedure Set_Default_Expression
4258 (N
: Node_Id
; Val
: Node_Id
) is
4260 pragma Assert
(False
4261 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4262 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4263 Set_Node5
(N
, Val
); -- semantic field, no parent set
4264 end Set_Default_Expression
;
4266 procedure Set_Default_Storage_Pool
4267 (N
: Node_Id
; Val
: Node_Id
) is
4269 pragma Assert
(False
4270 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4271 Set_Node3
(N
, Val
); -- semantic field, no parent set
4272 end Set_Default_Storage_Pool
;
4274 procedure Set_Default_Name
4275 (N
: Node_Id
; Val
: Node_Id
) is
4277 pragma Assert
(False
4278 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4279 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4280 Set_Node2_With_Parent
(N
, Val
);
4281 end Set_Default_Name
;
4283 procedure Set_Defining_Identifier
4284 (N
: Node_Id
; Val
: Entity_Id
) is
4286 pragma Assert
(False
4287 or else NT
(N
).Nkind
= N_Component_Declaration
4288 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4289 or else NT
(N
).Nkind
= N_Discriminant_Specification
4290 or else NT
(N
).Nkind
= N_Entry_Body
4291 or else NT
(N
).Nkind
= N_Entry_Declaration
4292 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4293 or else NT
(N
).Nkind
= N_Exception_Declaration
4294 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4295 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4296 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4297 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4298 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4299 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4300 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4301 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4302 or else NT
(N
).Nkind
= N_Iterator_Specification
4303 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4304 or else NT
(N
).Nkind
= N_Number_Declaration
4305 or else NT
(N
).Nkind
= N_Object_Declaration
4306 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4307 or else NT
(N
).Nkind
= N_Package_Body_Stub
4308 or else NT
(N
).Nkind
= N_Parameter_Specification
4309 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4310 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4311 or else NT
(N
).Nkind
= N_Protected_Body
4312 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4313 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4314 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4315 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4316 or else NT
(N
).Nkind
= N_Subtype_Declaration
4317 or else NT
(N
).Nkind
= N_Task_Body
4318 or else NT
(N
).Nkind
= N_Task_Body_Stub
4319 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4320 Set_Node1_With_Parent
(N
, Val
);
4321 end Set_Defining_Identifier
;
4323 procedure Set_Defining_Unit_Name
4324 (N
: Node_Id
; Val
: Node_Id
) is
4326 pragma Assert
(False
4327 or else NT
(N
).Nkind
= N_Function_Instantiation
4328 or else NT
(N
).Nkind
= N_Function_Specification
4329 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4330 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4331 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4332 or else NT
(N
).Nkind
= N_Package_Body
4333 or else NT
(N
).Nkind
= N_Package_Instantiation
4334 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4335 or else NT
(N
).Nkind
= N_Package_Specification
4336 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4337 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4338 Set_Node1_With_Parent
(N
, Val
);
4339 end Set_Defining_Unit_Name
;
4341 procedure Set_Delay_Alternative
4342 (N
: Node_Id
; Val
: Node_Id
) is
4344 pragma Assert
(False
4345 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4346 Set_Node4_With_Parent
(N
, Val
);
4347 end Set_Delay_Alternative
;
4349 procedure Set_Delay_Statement
4350 (N
: Node_Id
; Val
: Node_Id
) is
4352 pragma Assert
(False
4353 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4354 Set_Node2_With_Parent
(N
, Val
);
4355 end Set_Delay_Statement
;
4357 procedure Set_Delta_Expression
4358 (N
: Node_Id
; Val
: Node_Id
) is
4360 pragma Assert
(False
4361 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4362 or else NT
(N
).Nkind
= N_Delta_Constraint
4363 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4364 Set_Node3_With_Parent
(N
, Val
);
4365 end Set_Delta_Expression
;
4367 procedure Set_Digits_Expression
4368 (N
: Node_Id
; Val
: Node_Id
) is
4370 pragma Assert
(False
4371 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4372 or else NT
(N
).Nkind
= N_Digits_Constraint
4373 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4374 Set_Node2_With_Parent
(N
, Val
);
4375 end Set_Digits_Expression
;
4377 procedure Set_Discr_Check_Funcs_Built
4378 (N
: Node_Id
; Val
: Boolean := True) is
4380 pragma Assert
(False
4381 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4382 Set_Flag11
(N
, Val
);
4383 end Set_Discr_Check_Funcs_Built
;
4385 procedure Set_Discrete_Choices
4386 (N
: Node_Id
; Val
: List_Id
) is
4388 pragma Assert
(False
4389 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4390 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4391 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4392 or else NT
(N
).Nkind
= N_Variant
);
4393 Set_List4_With_Parent
(N
, Val
);
4394 end Set_Discrete_Choices
;
4396 procedure Set_Discrete_Range
4397 (N
: Node_Id
; Val
: Node_Id
) is
4399 pragma Assert
(False
4400 or else NT
(N
).Nkind
= N_Slice
);
4401 Set_Node4_With_Parent
(N
, Val
);
4402 end Set_Discrete_Range
;
4404 procedure Set_Discrete_Subtype_Definition
4405 (N
: Node_Id
; Val
: Node_Id
) is
4407 pragma Assert
(False
4408 or else NT
(N
).Nkind
= N_Entry_Declaration
4409 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4410 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4411 Set_Node4_With_Parent
(N
, Val
);
4412 end Set_Discrete_Subtype_Definition
;
4414 procedure Set_Discrete_Subtype_Definitions
4415 (N
: Node_Id
; Val
: List_Id
) is
4417 pragma Assert
(False
4418 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4419 Set_List2_With_Parent
(N
, Val
);
4420 end Set_Discrete_Subtype_Definitions
;
4422 procedure Set_Discriminant_Specifications
4423 (N
: Node_Id
; Val
: List_Id
) is
4425 pragma Assert
(False
4426 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4427 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4428 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4429 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4430 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4431 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4432 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4433 Set_List4_With_Parent
(N
, Val
);
4434 end Set_Discriminant_Specifications
;
4436 procedure Set_Discriminant_Type
4437 (N
: Node_Id
; Val
: Node_Id
) is
4439 pragma Assert
(False
4440 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4441 Set_Node5_With_Parent
(N
, Val
);
4442 end Set_Discriminant_Type
;
4444 procedure Set_Do_Accessibility_Check
4445 (N
: Node_Id
; Val
: Boolean := True) is
4447 pragma Assert
(False
4448 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4449 Set_Flag13
(N
, Val
);
4450 end Set_Do_Accessibility_Check
;
4452 procedure Set_Do_Discriminant_Check
4453 (N
: Node_Id
; Val
: Boolean := True) is
4455 pragma Assert
(False
4456 or else NT
(N
).Nkind
= N_Assignment_Statement
4457 or else NT
(N
).Nkind
= N_Selected_Component
4458 or else NT
(N
).Nkind
= N_Type_Conversion
);
4460 end Set_Do_Discriminant_Check
;
4462 procedure Set_Do_Division_Check
4463 (N
: Node_Id
; Val
: Boolean := True) is
4465 pragma Assert
(False
4466 or else NT
(N
).Nkind
= N_Op_Divide
4467 or else NT
(N
).Nkind
= N_Op_Mod
4468 or else NT
(N
).Nkind
= N_Op_Rem
);
4469 Set_Flag13
(N
, Val
);
4470 end Set_Do_Division_Check
;
4472 procedure Set_Do_Length_Check
4473 (N
: Node_Id
; Val
: Boolean := True) is
4475 pragma Assert
(False
4476 or else NT
(N
).Nkind
= N_Assignment_Statement
4477 or else NT
(N
).Nkind
= N_Op_And
4478 or else NT
(N
).Nkind
= N_Op_Or
4479 or else NT
(N
).Nkind
= N_Op_Xor
4480 or else NT
(N
).Nkind
= N_Type_Conversion
);
4482 end Set_Do_Length_Check
;
4484 procedure Set_Do_Overflow_Check
4485 (N
: Node_Id
; Val
: Boolean := True) is
4487 pragma Assert
(False
4488 or else NT
(N
).Nkind
in N_Op
4489 or else NT
(N
).Nkind
= N_Attribute_Reference
4490 or else NT
(N
).Nkind
= N_Case_Expression
4491 or else NT
(N
).Nkind
= N_If_Expression
4492 or else NT
(N
).Nkind
= N_Type_Conversion
);
4493 Set_Flag17
(N
, Val
);
4494 end Set_Do_Overflow_Check
;
4496 procedure Set_Do_Range_Check
4497 (N
: Node_Id
; Val
: Boolean := True) is
4499 pragma Assert
(False
4500 or else NT
(N
).Nkind
in N_Subexpr
);
4502 end Set_Do_Range_Check
;
4504 procedure Set_Do_Storage_Check
4505 (N
: Node_Id
; Val
: Boolean := True) is
4507 pragma Assert
(False
4508 or else NT
(N
).Nkind
= N_Allocator
4509 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4510 Set_Flag17
(N
, Val
);
4511 end Set_Do_Storage_Check
;
4513 procedure Set_Do_Tag_Check
4514 (N
: Node_Id
; Val
: Boolean := True) is
4516 pragma Assert
(False
4517 or else NT
(N
).Nkind
= N_Assignment_Statement
4518 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4519 or else NT
(N
).Nkind
= N_Function_Call
4520 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4521 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4522 or else NT
(N
).Nkind
= N_Type_Conversion
);
4523 Set_Flag13
(N
, Val
);
4524 end Set_Do_Tag_Check
;
4526 procedure Set_Elaborate_All_Desirable
4527 (N
: Node_Id
; Val
: Boolean := True) is
4529 pragma Assert
(False
4530 or else NT
(N
).Nkind
= N_With_Clause
);
4532 end Set_Elaborate_All_Desirable
;
4534 procedure Set_Elaborate_All_Present
4535 (N
: Node_Id
; Val
: Boolean := True) is
4537 pragma Assert
(False
4538 or else NT
(N
).Nkind
= N_With_Clause
);
4539 Set_Flag14
(N
, Val
);
4540 end Set_Elaborate_All_Present
;
4542 procedure Set_Elaborate_Desirable
4543 (N
: Node_Id
; Val
: Boolean := True) is
4545 pragma Assert
(False
4546 or else NT
(N
).Nkind
= N_With_Clause
);
4547 Set_Flag11
(N
, Val
);
4548 end Set_Elaborate_Desirable
;
4550 procedure Set_Elaborate_Present
4551 (N
: Node_Id
; Val
: Boolean := True) is
4553 pragma Assert
(False
4554 or else NT
(N
).Nkind
= N_With_Clause
);
4556 end Set_Elaborate_Present
;
4558 procedure Set_Else_Actions
4559 (N
: Node_Id
; Val
: List_Id
) is
4561 pragma Assert
(False
4562 or else NT
(N
).Nkind
= N_If_Expression
);
4563 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4564 end Set_Else_Actions
;
4566 procedure Set_Else_Statements
4567 (N
: Node_Id
; Val
: List_Id
) is
4569 pragma Assert
(False
4570 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4571 or else NT
(N
).Nkind
= N_If_Statement
4572 or else NT
(N
).Nkind
= N_Selective_Accept
);
4573 Set_List4_With_Parent
(N
, Val
);
4574 end Set_Else_Statements
;
4576 procedure Set_Elsif_Parts
4577 (N
: Node_Id
; Val
: List_Id
) is
4579 pragma Assert
(False
4580 or else NT
(N
).Nkind
= N_If_Statement
);
4581 Set_List3_With_Parent
(N
, Val
);
4582 end Set_Elsif_Parts
;
4584 procedure Set_Enclosing_Variant
4585 (N
: Node_Id
; Val
: Node_Id
) is
4587 pragma Assert
(False
4588 or else NT
(N
).Nkind
= N_Variant
);
4589 Set_Node2
(N
, Val
); -- semantic field, no parent set
4590 end Set_Enclosing_Variant
;
4592 procedure Set_End_Label
4593 (N
: Node_Id
; Val
: Node_Id
) is
4595 pragma Assert
(False
4596 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4597 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4598 or else NT
(N
).Nkind
= N_Loop_Statement
4599 or else NT
(N
).Nkind
= N_Package_Specification
4600 or else NT
(N
).Nkind
= N_Protected_Body
4601 or else NT
(N
).Nkind
= N_Protected_Definition
4602 or else NT
(N
).Nkind
= N_Record_Definition
4603 or else NT
(N
).Nkind
= N_Task_Definition
);
4604 Set_Node4_With_Parent
(N
, Val
);
4607 procedure Set_End_Span
4608 (N
: Node_Id
; Val
: Uint
) is
4610 pragma Assert
(False
4611 or else NT
(N
).Nkind
= N_Case_Statement
4612 or else NT
(N
).Nkind
= N_If_Statement
);
4616 procedure Set_Entity
4617 (N
: Node_Id
; Val
: Node_Id
) is
4619 pragma Assert
(False
4620 or else NT
(N
).Nkind
in N_Has_Entity
4621 or else NT
(N
).Nkind
= N_Aspect_Specification
4622 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4623 or else NT
(N
).Nkind
= N_Freeze_Entity
4624 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4625 Set_Node4
(N
, Val
); -- semantic field, no parent set
4628 procedure Set_Entry_Body_Formal_Part
4629 (N
: Node_Id
; Val
: Node_Id
) is
4631 pragma Assert
(False
4632 or else NT
(N
).Nkind
= N_Entry_Body
);
4633 Set_Node5_With_Parent
(N
, Val
);
4634 end Set_Entry_Body_Formal_Part
;
4636 procedure Set_Entry_Call_Alternative
4637 (N
: Node_Id
; Val
: Node_Id
) is
4639 pragma Assert
(False
4640 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4641 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4642 Set_Node1_With_Parent
(N
, Val
);
4643 end Set_Entry_Call_Alternative
;
4645 procedure Set_Entry_Call_Statement
4646 (N
: Node_Id
; Val
: Node_Id
) is
4648 pragma Assert
(False
4649 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4650 Set_Node1_With_Parent
(N
, Val
);
4651 end Set_Entry_Call_Statement
;
4653 procedure Set_Entry_Direct_Name
4654 (N
: Node_Id
; Val
: Node_Id
) is
4656 pragma Assert
(False
4657 or else NT
(N
).Nkind
= N_Accept_Statement
);
4658 Set_Node1_With_Parent
(N
, Val
);
4659 end Set_Entry_Direct_Name
;
4661 procedure Set_Entry_Index
4662 (N
: Node_Id
; Val
: Node_Id
) is
4664 pragma Assert
(False
4665 or else NT
(N
).Nkind
= N_Accept_Statement
);
4666 Set_Node5_With_Parent
(N
, Val
);
4667 end Set_Entry_Index
;
4669 procedure Set_Entry_Index_Specification
4670 (N
: Node_Id
; Val
: Node_Id
) is
4672 pragma Assert
(False
4673 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4674 Set_Node4_With_Parent
(N
, Val
);
4675 end Set_Entry_Index_Specification
;
4678 (N
: Node_Id
; Val
: Node_Id
) is
4680 pragma Assert
(False
4681 or else NT
(N
).Nkind
in N_Has_Etype
);
4682 Set_Node5
(N
, Val
); -- semantic field, no parent set
4685 procedure Set_Exception_Choices
4686 (N
: Node_Id
; Val
: List_Id
) is
4688 pragma Assert
(False
4689 or else NT
(N
).Nkind
= N_Exception_Handler
);
4690 Set_List4_With_Parent
(N
, Val
);
4691 end Set_Exception_Choices
;
4693 procedure Set_Exception_Handlers
4694 (N
: Node_Id
; Val
: List_Id
) is
4696 pragma Assert
(False
4697 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4698 Set_List5_With_Parent
(N
, Val
);
4699 end Set_Exception_Handlers
;
4701 procedure Set_Exception_Junk
4702 (N
: Node_Id
; Val
: Boolean := True) is
4704 pragma Assert
(False
4705 or else NT
(N
).Nkind
= N_Block_Statement
4706 or else NT
(N
).Nkind
= N_Goto_Statement
4707 or else NT
(N
).Nkind
= N_Label
4708 or else NT
(N
).Nkind
= N_Object_Declaration
4709 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4711 end Set_Exception_Junk
;
4713 procedure Set_Exception_Label
4714 (N
: Node_Id
; Val
: Node_Id
) is
4716 pragma Assert
(False
4717 or else NT
(N
).Nkind
= N_Exception_Handler
4718 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4719 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4720 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4721 Set_Node5
(N
, Val
); -- semantic field, no parent set
4722 end Set_Exception_Label
;
4724 procedure Set_Expansion_Delayed
4725 (N
: Node_Id
; Val
: Boolean := True) is
4727 pragma Assert
(False
4728 or else NT
(N
).Nkind
= N_Aggregate
4729 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4730 Set_Flag11
(N
, Val
);
4731 end Set_Expansion_Delayed
;
4733 procedure Set_Explicit_Actual_Parameter
4734 (N
: Node_Id
; Val
: Node_Id
) is
4736 pragma Assert
(False
4737 or else NT
(N
).Nkind
= N_Parameter_Association
);
4738 Set_Node3_With_Parent
(N
, Val
);
4739 end Set_Explicit_Actual_Parameter
;
4741 procedure Set_Explicit_Generic_Actual_Parameter
4742 (N
: Node_Id
; Val
: Node_Id
) is
4744 pragma Assert
(False
4745 or else NT
(N
).Nkind
= N_Generic_Association
);
4746 Set_Node1_With_Parent
(N
, Val
);
4747 end Set_Explicit_Generic_Actual_Parameter
;
4749 procedure Set_Expression
4750 (N
: Node_Id
; Val
: Node_Id
) is
4752 pragma Assert
(False
4753 or else NT
(N
).Nkind
= N_Allocator
4754 or else NT
(N
).Nkind
= N_Aspect_Specification
4755 or else NT
(N
).Nkind
= N_Assignment_Statement
4756 or else NT
(N
).Nkind
= N_At_Clause
4757 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4758 or else NT
(N
).Nkind
= N_Case_Expression
4759 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4760 or else NT
(N
).Nkind
= N_Case_Statement
4761 or else NT
(N
).Nkind
= N_Code_Statement
4762 or else NT
(N
).Nkind
= N_Component_Association
4763 or else NT
(N
).Nkind
= N_Component_Declaration
4764 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4765 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4766 or else NT
(N
).Nkind
= N_Delta_Aggregate
4767 or else NT
(N
).Nkind
= N_Discriminant_Association
4768 or else NT
(N
).Nkind
= N_Discriminant_Specification
4769 or else NT
(N
).Nkind
= N_Exception_Declaration
4770 or else NT
(N
).Nkind
= N_Expression_Function
4771 or else NT
(N
).Nkind
= N_Expression_With_Actions
4772 or else NT
(N
).Nkind
= N_Free_Statement
4773 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4774 or else NT
(N
).Nkind
= N_Mod_Clause
4775 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4776 or else NT
(N
).Nkind
= N_Number_Declaration
4777 or else NT
(N
).Nkind
= N_Object_Declaration
4778 or else NT
(N
).Nkind
= N_Parameter_Specification
4779 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4780 or else NT
(N
).Nkind
= N_Qualified_Expression
4781 or else NT
(N
).Nkind
= N_Raise_Expression
4782 or else NT
(N
).Nkind
= N_Raise_Statement
4783 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4784 or else NT
(N
).Nkind
= N_Type_Conversion
4785 or else NT
(N
).Nkind
= N_Unchecked_Expression
4786 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4787 Set_Node3_With_Parent
(N
, Val
);
4790 procedure Set_Expression_Copy
4791 (N
: Node_Id
; Val
: Node_Id
) is
4793 pragma Assert
(False
4794 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4795 Set_Node2
(N
, Val
); -- semantic field, no parent set
4796 end Set_Expression_Copy
;
4798 procedure Set_Expressions
4799 (N
: Node_Id
; Val
: List_Id
) is
4801 pragma Assert
(False
4802 or else NT
(N
).Nkind
= N_Aggregate
4803 or else NT
(N
).Nkind
= N_Attribute_Reference
4804 or else NT
(N
).Nkind
= N_Extension_Aggregate
4805 or else NT
(N
).Nkind
= N_If_Expression
4806 or else NT
(N
).Nkind
= N_Indexed_Component
);
4807 Set_List1_With_Parent
(N
, Val
);
4808 end Set_Expressions
;
4810 procedure Set_First_Bit
4811 (N
: Node_Id
; Val
: Node_Id
) is
4813 pragma Assert
(False
4814 or else NT
(N
).Nkind
= N_Component_Clause
);
4815 Set_Node3_With_Parent
(N
, Val
);
4818 procedure Set_First_Inlined_Subprogram
4819 (N
: Node_Id
; Val
: Entity_Id
) is
4821 pragma Assert
(False
4822 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4823 Set_Node3
(N
, Val
); -- semantic field, no parent set
4824 end Set_First_Inlined_Subprogram
;
4826 procedure Set_First_Name
4827 (N
: Node_Id
; Val
: Boolean := True) is
4829 pragma Assert
(False
4830 or else NT
(N
).Nkind
= N_With_Clause
);
4834 procedure Set_First_Named_Actual
4835 (N
: Node_Id
; Val
: Node_Id
) is
4837 pragma Assert
(False
4838 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4839 or else NT
(N
).Nkind
= N_Function_Call
4840 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4841 Set_Node4
(N
, Val
); -- semantic field, no parent set
4842 end Set_First_Named_Actual
;
4844 procedure Set_First_Real_Statement
4845 (N
: Node_Id
; Val
: Node_Id
) is
4847 pragma Assert
(False
4848 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4849 Set_Node2
(N
, Val
); -- semantic field, no parent set
4850 end Set_First_Real_Statement
;
4852 procedure Set_First_Subtype_Link
4853 (N
: Node_Id
; Val
: Entity_Id
) is
4855 pragma Assert
(False
4856 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4857 Set_Node5
(N
, Val
); -- semantic field, no parent set
4858 end Set_First_Subtype_Link
;
4860 procedure Set_Float_Truncate
4861 (N
: Node_Id
; Val
: Boolean := True) is
4863 pragma Assert
(False
4864 or else NT
(N
).Nkind
= N_Type_Conversion
);
4865 Set_Flag11
(N
, Val
);
4866 end Set_Float_Truncate
;
4868 procedure Set_Formal_Type_Definition
4869 (N
: Node_Id
; Val
: Node_Id
) is
4871 pragma Assert
(False
4872 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4873 Set_Node3_With_Parent
(N
, Val
);
4874 end Set_Formal_Type_Definition
;
4876 procedure Set_Forwards_OK
4877 (N
: Node_Id
; Val
: Boolean := True) is
4879 pragma Assert
(False
4880 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4882 end Set_Forwards_OK
;
4884 procedure Set_From_Aspect_Specification
4885 (N
: Node_Id
; Val
: Boolean := True) is
4887 pragma Assert
(False
4888 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4889 or else NT
(N
).Nkind
= N_Pragma
);
4890 Set_Flag13
(N
, Val
);
4891 end Set_From_Aspect_Specification
;
4893 procedure Set_From_At_End
4894 (N
: Node_Id
; Val
: Boolean := True) is
4896 pragma Assert
(False
4897 or else NT
(N
).Nkind
= N_Raise_Statement
);
4899 end Set_From_At_End
;
4901 procedure Set_From_At_Mod
4902 (N
: Node_Id
; Val
: Boolean := True) is
4904 pragma Assert
(False
4905 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4907 end Set_From_At_Mod
;
4909 procedure Set_From_Conditional_Expression
4910 (N
: Node_Id
; Val
: Boolean := True) is
4912 pragma Assert
(False
4913 or else NT
(N
).Nkind
= N_Case_Statement
4914 or else NT
(N
).Nkind
= N_If_Statement
);
4916 end Set_From_Conditional_Expression
;
4918 procedure Set_From_Default
4919 (N
: Node_Id
; Val
: Boolean := True) is
4921 pragma Assert
(False
4922 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4924 end Set_From_Default
;
4926 procedure Set_Generalized_Indexing
4927 (N
: Node_Id
; Val
: Node_Id
) is
4929 pragma Assert
(False
4930 or else NT
(N
).Nkind
= N_Indexed_Component
);
4932 end Set_Generalized_Indexing
;
4934 procedure Set_Generic_Associations
4935 (N
: Node_Id
; Val
: List_Id
) is
4937 pragma Assert
(False
4938 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4939 or else NT
(N
).Nkind
= N_Function_Instantiation
4940 or else NT
(N
).Nkind
= N_Package_Instantiation
4941 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4942 Set_List3_With_Parent
(N
, Val
);
4943 end Set_Generic_Associations
;
4945 procedure Set_Generic_Formal_Declarations
4946 (N
: Node_Id
; Val
: List_Id
) is
4948 pragma Assert
(False
4949 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4950 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4951 Set_List2_With_Parent
(N
, Val
);
4952 end Set_Generic_Formal_Declarations
;
4954 procedure Set_Generic_Parent
4955 (N
: Node_Id
; Val
: Node_Id
) is
4957 pragma Assert
(False
4958 or else NT
(N
).Nkind
= N_Function_Specification
4959 or else NT
(N
).Nkind
= N_Package_Specification
4960 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4962 end Set_Generic_Parent
;
4964 procedure Set_Generic_Parent_Type
4965 (N
: Node_Id
; Val
: Node_Id
) is
4967 pragma Assert
(False
4968 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4970 end Set_Generic_Parent_Type
;
4972 procedure Set_Handled_Statement_Sequence
4973 (N
: Node_Id
; Val
: Node_Id
) is
4975 pragma Assert
(False
4976 or else NT
(N
).Nkind
= N_Accept_Statement
4977 or else NT
(N
).Nkind
= N_Block_Statement
4978 or else NT
(N
).Nkind
= N_Entry_Body
4979 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4980 or else NT
(N
).Nkind
= N_Package_Body
4981 or else NT
(N
).Nkind
= N_Subprogram_Body
4982 or else NT
(N
).Nkind
= N_Task_Body
);
4983 Set_Node4_With_Parent
(N
, Val
);
4984 end Set_Handled_Statement_Sequence
;
4986 procedure Set_Handler_List_Entry
4987 (N
: Node_Id
; Val
: Node_Id
) is
4989 pragma Assert
(False
4990 or else NT
(N
).Nkind
= N_Object_Declaration
);
4992 end Set_Handler_List_Entry
;
4994 procedure Set_Has_Created_Identifier
4995 (N
: Node_Id
; Val
: Boolean := True) is
4997 pragma Assert
(False
4998 or else NT
(N
).Nkind
= N_Block_Statement
4999 or else NT
(N
).Nkind
= N_Loop_Statement
);
5000 Set_Flag15
(N
, Val
);
5001 end Set_Has_Created_Identifier
;
5003 procedure Set_Has_Dereference_Action
5004 (N
: Node_Id
; Val
: Boolean := True) is
5006 pragma Assert
(False
5007 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
5008 Set_Flag13
(N
, Val
);
5009 end Set_Has_Dereference_Action
;
5011 procedure Set_Has_Dynamic_Length_Check
5012 (N
: Node_Id
; Val
: Boolean := True) is
5014 pragma Assert
(False
5015 or else NT
(N
).Nkind
in N_Subexpr
);
5016 Set_Flag10
(N
, Val
);
5017 end Set_Has_Dynamic_Length_Check
;
5019 procedure Set_Has_Dynamic_Range_Check
5020 (N
: Node_Id
; Val
: Boolean := True) is
5022 pragma Assert
(False
5023 or else NT
(N
).Nkind
= N_Subtype_Declaration
5024 or else NT
(N
).Nkind
in N_Subexpr
);
5025 Set_Flag12
(N
, Val
);
5026 end Set_Has_Dynamic_Range_Check
;
5028 procedure Set_Has_Init_Expression
5029 (N
: Node_Id
; Val
: Boolean := True) is
5031 pragma Assert
(False
5032 or else NT
(N
).Nkind
= N_Object_Declaration
);
5033 Set_Flag14
(N
, Val
);
5034 end Set_Has_Init_Expression
;
5036 procedure Set_Has_Local_Raise
5037 (N
: Node_Id
; Val
: Boolean := True) is
5039 pragma Assert
(False
5040 or else NT
(N
).Nkind
= N_Exception_Handler
);
5042 end Set_Has_Local_Raise
;
5044 procedure Set_Has_No_Elaboration_Code
5045 (N
: Node_Id
; Val
: Boolean := True) is
5047 pragma Assert
(False
5048 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5049 Set_Flag17
(N
, Val
);
5050 end Set_Has_No_Elaboration_Code
;
5052 procedure Set_Has_Pragma_Suppress_All
5053 (N
: Node_Id
; Val
: Boolean := True) is
5055 pragma Assert
(False
5056 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5057 Set_Flag14
(N
, Val
);
5058 end Set_Has_Pragma_Suppress_All
;
5060 procedure Set_Has_Private_View
5061 (N
: Node_Id
; Val
: Boolean := True) is
5063 pragma Assert
(False
5064 or else NT
(N
).Nkind
in N_Op
5065 or else NT
(N
).Nkind
= N_Character_Literal
5066 or else NT
(N
).Nkind
= N_Expanded_Name
5067 or else NT
(N
).Nkind
= N_Identifier
5068 or else NT
(N
).Nkind
= N_Operator_Symbol
);
5069 Set_Flag11
(N
, Val
);
5070 end Set_Has_Private_View
;
5072 procedure Set_Has_Relative_Deadline_Pragma
5073 (N
: Node_Id
; Val
: Boolean := True) is
5075 pragma Assert
(False
5076 or else NT
(N
).Nkind
= N_Subprogram_Body
5077 or else NT
(N
).Nkind
= N_Task_Definition
);
5079 end Set_Has_Relative_Deadline_Pragma
;
5081 procedure Set_Has_Self_Reference
5082 (N
: Node_Id
; Val
: Boolean := True) is
5084 pragma Assert
(False
5085 or else NT
(N
).Nkind
= N_Aggregate
5086 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5087 Set_Flag13
(N
, Val
);
5088 end Set_Has_Self_Reference
;
5090 procedure Set_Has_SP_Choice
5091 (N
: Node_Id
; Val
: Boolean := True) is
5093 pragma Assert
(False
5094 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5095 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5096 or else NT
(N
).Nkind
= N_Variant
);
5097 Set_Flag15
(N
, Val
);
5098 end Set_Has_SP_Choice
;
5100 procedure Set_Has_Storage_Size_Pragma
5101 (N
: Node_Id
; Val
: Boolean := True) is
5103 pragma Assert
(False
5104 or else NT
(N
).Nkind
= N_Task_Definition
);
5106 end Set_Has_Storage_Size_Pragma
;
5108 procedure Set_Has_Target_Names
5109 (N
: Node_Id
; Val
: Boolean := True) is
5111 pragma Assert
(False
5112 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5114 end Set_Has_Target_Names
;
5116 procedure Set_Has_Wide_Character
5117 (N
: Node_Id
; Val
: Boolean := True) is
5119 pragma Assert
(False
5120 or else NT
(N
).Nkind
= N_String_Literal
);
5121 Set_Flag11
(N
, Val
);
5122 end Set_Has_Wide_Character
;
5124 procedure Set_Has_Wide_Wide_Character
5125 (N
: Node_Id
; Val
: Boolean := True) is
5127 pragma Assert
(False
5128 or else NT
(N
).Nkind
= N_String_Literal
);
5129 Set_Flag13
(N
, Val
);
5130 end Set_Has_Wide_Wide_Character
;
5132 procedure Set_Header_Size_Added
5133 (N
: Node_Id
; Val
: Boolean := True) is
5135 pragma Assert
(False
5136 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5137 Set_Flag11
(N
, Val
);
5138 end Set_Header_Size_Added
;
5140 procedure Set_Hidden_By_Use_Clause
5141 (N
: Node_Id
; Val
: Elist_Id
) is
5143 pragma Assert
(False
5144 or else NT
(N
).Nkind
= N_Use_Package_Clause
5145 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5146 Set_Elist5
(N
, Val
);
5147 end Set_Hidden_By_Use_Clause
;
5149 procedure Set_High_Bound
5150 (N
: Node_Id
; Val
: Node_Id
) is
5152 pragma Assert
(False
5153 or else NT
(N
).Nkind
= N_Range
5154 or else NT
(N
).Nkind
= N_Real_Range_Specification
5155 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5156 Set_Node2_With_Parent
(N
, Val
);
5159 procedure Set_Identifier
5160 (N
: Node_Id
; Val
: Node_Id
) is
5162 pragma Assert
(False
5163 or else NT
(N
).Nkind
= N_Aspect_Specification
5164 or else NT
(N
).Nkind
= N_At_Clause
5165 or else NT
(N
).Nkind
= N_Block_Statement
5166 or else NT
(N
).Nkind
= N_Designator
5167 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5168 or else NT
(N
).Nkind
= N_Label
5169 or else NT
(N
).Nkind
= N_Loop_Statement
5170 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5171 Set_Node1_With_Parent
(N
, Val
);
5174 procedure Set_Implicit_With
5175 (N
: Node_Id
; Val
: Boolean := True) is
5177 pragma Assert
(False
5178 or else NT
(N
).Nkind
= N_With_Clause
);
5179 Set_Flag16
(N
, Val
);
5180 end Set_Implicit_With
;
5182 procedure Set_Interface_List
5183 (N
: Node_Id
; Val
: List_Id
) is
5185 pragma Assert
(False
5186 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5187 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5188 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5189 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5190 or else NT
(N
).Nkind
= N_Record_Definition
5191 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5192 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5193 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5194 Set_List2_With_Parent
(N
, Val
);
5195 end Set_Interface_List
;
5197 procedure Set_Interface_Present
5198 (N
: Node_Id
; Val
: Boolean := True) is
5200 pragma Assert
(False
5201 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5202 or else NT
(N
).Nkind
= N_Record_Definition
);
5203 Set_Flag16
(N
, Val
);
5204 end Set_Interface_Present
;
5206 procedure Set_Import_Interface_Present
5207 (N
: Node_Id
; Val
: Boolean := True) is
5209 pragma Assert
(False
5210 or else NT
(N
).Nkind
= N_Pragma
);
5211 Set_Flag16
(N
, Val
);
5212 end Set_Import_Interface_Present
;
5214 procedure Set_In_Present
5215 (N
: Node_Id
; Val
: Boolean := True) is
5217 pragma Assert
(False
5218 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5219 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5220 Set_Flag15
(N
, Val
);
5223 procedure Set_Includes_Infinities
5224 (N
: Node_Id
; Val
: Boolean := True) is
5226 pragma Assert
(False
5227 or else NT
(N
).Nkind
= N_Range
);
5228 Set_Flag11
(N
, Val
);
5229 end Set_Includes_Infinities
;
5231 procedure Set_Incomplete_View
5232 (N
: Node_Id
; Val
: Node_Id
) is
5234 pragma Assert
(False
5235 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5236 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5237 end Set_Incomplete_View
;
5239 procedure Set_Inherited_Discriminant
5240 (N
: Node_Id
; Val
: Boolean := True) is
5242 pragma Assert
(False
5243 or else NT
(N
).Nkind
= N_Component_Association
);
5244 Set_Flag13
(N
, Val
);
5245 end Set_Inherited_Discriminant
;
5247 procedure Set_Instance_Spec
5248 (N
: Node_Id
; Val
: Node_Id
) is
5250 pragma Assert
(False
5251 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5252 or else NT
(N
).Nkind
= N_Function_Instantiation
5253 or else NT
(N
).Nkind
= N_Package_Instantiation
5254 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5255 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5256 end Set_Instance_Spec
;
5258 procedure Set_Intval
5259 (N
: Node_Id
; Val
: Uint
) is
5261 pragma Assert
(False
5262 or else NT
(N
).Nkind
= N_Integer_Literal
);
5266 procedure Set_Is_Abort_Block
5267 (N
: Node_Id
; Val
: Boolean := True) is
5269 pragma Assert
(False
5270 or else NT
(N
).Nkind
= N_Block_Statement
);
5272 end Set_Is_Abort_Block
;
5274 procedure Set_Is_Accessibility_Actual
5275 (N
: Node_Id
; Val
: Boolean := True) is
5277 pragma Assert
(False
5278 or else NT
(N
).Nkind
= N_Parameter_Association
);
5279 Set_Flag13
(N
, Val
);
5280 end Set_Is_Accessibility_Actual
;
5282 procedure Set_Is_Analyzed_Pragma
5283 (N
: Node_Id
; Val
: Boolean := True) is
5285 pragma Assert
(False
5286 or else NT
(N
).Nkind
= N_Pragma
);
5288 end Set_Is_Analyzed_Pragma
;
5290 procedure Set_Is_Asynchronous_Call_Block
5291 (N
: Node_Id
; Val
: Boolean := True) is
5293 pragma Assert
(False
5294 or else NT
(N
).Nkind
= N_Block_Statement
);
5296 end Set_Is_Asynchronous_Call_Block
;
5298 procedure Set_Is_Boolean_Aspect
5299 (N
: Node_Id
; Val
: Boolean := True) is
5301 pragma Assert
(False
5302 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5303 Set_Flag16
(N
, Val
);
5304 end Set_Is_Boolean_Aspect
;
5306 procedure Set_Is_Checked
5307 (N
: Node_Id
; Val
: Boolean := True) is
5309 pragma Assert
(False
5310 or else NT
(N
).Nkind
= N_Aspect_Specification
5311 or else NT
(N
).Nkind
= N_Pragma
);
5312 Set_Flag11
(N
, Val
);
5315 procedure Set_Is_Checked_Ghost_Pragma
5316 (N
: Node_Id
; Val
: Boolean := True) is
5318 pragma Assert
(False
5319 or else NT
(N
).Nkind
= N_Pragma
);
5321 end Set_Is_Checked_Ghost_Pragma
;
5323 procedure Set_Is_Component_Left_Opnd
5324 (N
: Node_Id
; Val
: Boolean := True) is
5326 pragma Assert
(False
5327 or else NT
(N
).Nkind
= N_Op_Concat
);
5328 Set_Flag13
(N
, Val
);
5329 end Set_Is_Component_Left_Opnd
;
5331 procedure Set_Is_Component_Right_Opnd
5332 (N
: Node_Id
; Val
: Boolean := True) is
5334 pragma Assert
(False
5335 or else NT
(N
).Nkind
= N_Op_Concat
);
5336 Set_Flag14
(N
, Val
);
5337 end Set_Is_Component_Right_Opnd
;
5339 procedure Set_Is_Controlling_Actual
5340 (N
: Node_Id
; Val
: Boolean := True) is
5342 pragma Assert
(False
5343 or else NT
(N
).Nkind
in N_Subexpr
);
5344 Set_Flag16
(N
, Val
);
5345 end Set_Is_Controlling_Actual
;
5347 procedure Set_Is_Declaration_Level_Node
5348 (N
: Node_Id
; Val
: Boolean := True) is
5350 pragma Assert
(False
5351 or else NT
(N
).Nkind
= N_Call_Marker
5352 or else NT
(N
).Nkind
= N_Function_Instantiation
5353 or else NT
(N
).Nkind
= N_Package_Instantiation
5354 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5356 end Set_Is_Declaration_Level_Node
;
5358 procedure Set_Is_Delayed_Aspect
5359 (N
: Node_Id
; Val
: Boolean := True) is
5361 pragma Assert
(False
5362 or else NT
(N
).Nkind
= N_Aspect_Specification
5363 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5364 or else NT
(N
).Nkind
= N_Pragma
);
5365 Set_Flag14
(N
, Val
);
5366 end Set_Is_Delayed_Aspect
;
5368 procedure Set_Is_Disabled
5369 (N
: Node_Id
; Val
: Boolean := True) is
5371 pragma Assert
(False
5372 or else NT
(N
).Nkind
= N_Aspect_Specification
5373 or else NT
(N
).Nkind
= N_Pragma
);
5374 Set_Flag15
(N
, Val
);
5375 end Set_Is_Disabled
;
5377 procedure Set_Is_Dispatching_Call
5378 (N
: Node_Id
; Val
: Boolean := True) is
5380 pragma Assert
(False
5381 or else NT
(N
).Nkind
= N_Call_Marker
);
5383 end Set_Is_Dispatching_Call
;
5385 procedure Set_Is_Dynamic_Coextension
5386 (N
: Node_Id
; Val
: Boolean := True) is
5388 pragma Assert
(False
5389 or else NT
(N
).Nkind
= N_Allocator
);
5390 pragma Assert
(not Val
5391 or else not Is_Static_Coextension
(N
));
5392 Set_Flag18
(N
, Val
);
5393 end Set_Is_Dynamic_Coextension
;
5395 procedure Set_Is_Effective_Use_Clause
5396 (N
: Node_Id
; Val
: Boolean := True) is
5398 pragma Assert
(False
5399 or else NT
(N
).Nkind
= N_Use_Package_Clause
5400 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5402 end Set_Is_Effective_Use_Clause
;
5404 procedure Set_Is_Elaboration_Checks_OK_Node
5405 (N
: Node_Id
; Val
: Boolean := True) is
5407 pragma Assert
(False
5408 or else NT
(N
).Nkind
= N_Assignment_Statement
5409 or else NT
(N
).Nkind
= N_Attribute_Reference
5410 or else NT
(N
).Nkind
= N_Call_Marker
5411 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5412 or else NT
(N
).Nkind
= N_Expanded_Name
5413 or else NT
(N
).Nkind
= N_Function_Call
5414 or else NT
(N
).Nkind
= N_Function_Instantiation
5415 or else NT
(N
).Nkind
= N_Identifier
5416 or else NT
(N
).Nkind
= N_Package_Instantiation
5417 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5418 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5419 or else NT
(N
).Nkind
= N_Requeue_Statement
5420 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5422 end Set_Is_Elaboration_Checks_OK_Node
;
5424 procedure Set_Is_Elaboration_Code
5425 (N
: Node_Id
; Val
: Boolean := True) is
5427 pragma Assert
(False
5428 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5430 end Set_Is_Elaboration_Code
;
5432 procedure Set_Is_Elaboration_Warnings_OK_Node
5433 (N
: Node_Id
; Val
: Boolean := True) is
5435 pragma Assert
(False
5436 or else NT
(N
).Nkind
= N_Attribute_Reference
5437 or else NT
(N
).Nkind
= N_Call_Marker
5438 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5439 or else NT
(N
).Nkind
= N_Expanded_Name
5440 or else NT
(N
).Nkind
= N_Function_Call
5441 or else NT
(N
).Nkind
= N_Function_Instantiation
5442 or else NT
(N
).Nkind
= N_Identifier
5443 or else NT
(N
).Nkind
= N_Package_Instantiation
5444 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5445 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5446 or else NT
(N
).Nkind
= N_Requeue_Statement
5447 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5449 end Set_Is_Elaboration_Warnings_OK_Node
;
5451 procedure Set_Is_Elsif
5452 (N
: Node_Id
; Val
: Boolean := True) is
5454 pragma Assert
(False
5455 or else NT
(N
).Nkind
= N_If_Expression
);
5456 Set_Flag13
(N
, Val
);
5459 procedure Set_Is_Entry_Barrier_Function
5460 (N
: Node_Id
; Val
: Boolean := True) is
5462 pragma Assert
(False
5463 or else NT
(N
).Nkind
= N_Subprogram_Body
5464 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5466 end Set_Is_Entry_Barrier_Function
;
5468 procedure Set_Is_Expanded_Build_In_Place_Call
5469 (N
: Node_Id
; Val
: Boolean := True) is
5471 pragma Assert
(False
5472 or else NT
(N
).Nkind
= N_Function_Call
);
5473 Set_Flag11
(N
, Val
);
5474 end Set_Is_Expanded_Build_In_Place_Call
;
5476 procedure Set_Is_Expanded_Contract
5477 (N
: Node_Id
; Val
: Boolean := True) is
5479 pragma Assert
(False
5480 or else NT
(N
).Nkind
= N_Contract
);
5482 end Set_Is_Expanded_Contract
;
5484 procedure Set_Is_Finalization_Wrapper
5485 (N
: Node_Id
; Val
: Boolean := True) is
5487 pragma Assert
(False
5488 or else NT
(N
).Nkind
= N_Block_Statement
);
5490 end Set_Is_Finalization_Wrapper
;
5492 procedure Set_Is_Folded_In_Parser
5493 (N
: Node_Id
; Val
: Boolean := True) is
5495 pragma Assert
(False
5496 or else NT
(N
).Nkind
= N_String_Literal
);
5498 end Set_Is_Folded_In_Parser
;
5500 procedure Set_Is_Generic_Contract_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_Generic_Contract_Pragma
;
5508 procedure Set_Is_Ignored
5509 (N
: Node_Id
; Val
: Boolean := True) is
5511 pragma Assert
(False
5512 or else NT
(N
).Nkind
= N_Aspect_Specification
5513 or else NT
(N
).Nkind
= N_Pragma
);
5517 procedure Set_Is_Ignored_Ghost_Pragma
5518 (N
: Node_Id
; Val
: Boolean := True) is
5520 pragma Assert
(False
5521 or else NT
(N
).Nkind
= N_Pragma
);
5523 end Set_Is_Ignored_Ghost_Pragma
;
5525 procedure Set_Is_In_Discriminant_Check
5526 (N
: Node_Id
; Val
: Boolean := True) is
5528 pragma Assert
(False
5529 or else NT
(N
).Nkind
= N_Selected_Component
);
5530 Set_Flag11
(N
, Val
);
5531 end Set_Is_In_Discriminant_Check
;
5533 procedure Set_Is_Inherited_Pragma
5534 (N
: Node_Id
; Val
: Boolean := True) is
5536 pragma Assert
(False
5537 or else NT
(N
).Nkind
= N_Pragma
);
5539 end Set_Is_Inherited_Pragma
;
5541 procedure Set_Is_Initialization_Block
5542 (N
: Node_Id
; Val
: Boolean := True) is
5544 pragma Assert
(False
5545 or else NT
(N
).Nkind
= N_Block_Statement
);
5547 end Set_Is_Initialization_Block
;
5549 procedure Set_Is_Known_Guaranteed_ABE
5550 (N
: Node_Id
; Val
: Boolean := True) is
5552 pragma Assert
(False
5553 or else NT
(N
).Nkind
= N_Call_Marker
5554 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5555 or else NT
(N
).Nkind
= N_Function_Call
5556 or else NT
(N
).Nkind
= N_Function_Instantiation
5557 or else NT
(N
).Nkind
= N_Package_Instantiation
5558 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5559 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5560 Set_Flag18
(N
, Val
);
5561 end Set_Is_Known_Guaranteed_ABE
;
5563 procedure Set_Is_Machine_Number
5564 (N
: Node_Id
; Val
: Boolean := True) is
5566 pragma Assert
(False
5567 or else NT
(N
).Nkind
= N_Real_Literal
);
5568 Set_Flag11
(N
, Val
);
5569 end Set_Is_Machine_Number
;
5571 procedure Set_Is_Null_Loop
5572 (N
: Node_Id
; Val
: Boolean := True) is
5574 pragma Assert
(False
5575 or else NT
(N
).Nkind
= N_Loop_Statement
);
5576 Set_Flag16
(N
, Val
);
5577 end Set_Is_Null_Loop
;
5579 procedure Set_Is_OpenAcc_Environment
5580 (N
: Node_Id
; Val
: Boolean := True) is
5582 pragma Assert
(False
5583 or else NT
(N
).Nkind
= N_Loop_Statement
);
5584 Set_Flag13
(N
, Val
);
5585 end Set_Is_OpenAcc_Environment
;
5587 procedure Set_Is_OpenAcc_Loop
5588 (N
: Node_Id
; Val
: Boolean := True) is
5590 pragma Assert
(False
5591 or else NT
(N
).Nkind
= N_Loop_Statement
);
5592 Set_Flag14
(N
, Val
);
5593 end Set_Is_OpenAcc_Loop
;
5595 procedure Set_Is_Overloaded
5596 (N
: Node_Id
; Val
: Boolean := True) is
5598 pragma Assert
(False
5599 or else NT
(N
).Nkind
in N_Subexpr
);
5601 end Set_Is_Overloaded
;
5603 procedure Set_Is_Power_Of_2_For_Shift
5604 (N
: Node_Id
; Val
: Boolean := True) is
5606 pragma Assert
(False
5607 or else NT
(N
).Nkind
= N_Op_Expon
);
5608 Set_Flag13
(N
, Val
);
5609 end Set_Is_Power_Of_2_For_Shift
;
5611 procedure Set_Is_Prefixed_Call
5612 (N
: Node_Id
; Val
: Boolean := True) is
5614 pragma Assert
(False
5615 or else NT
(N
).Nkind
= N_Selected_Component
);
5616 Set_Flag17
(N
, Val
);
5617 end Set_Is_Prefixed_Call
;
5619 procedure Set_Is_Protected_Subprogram_Body
5620 (N
: Node_Id
; Val
: Boolean := True) is
5622 pragma Assert
(False
5623 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5625 end Set_Is_Protected_Subprogram_Body
;
5627 procedure Set_Is_Qualified_Universal_Literal
5628 (N
: Node_Id
; Val
: Boolean := True) is
5630 pragma Assert
(False
5631 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5633 end Set_Is_Qualified_Universal_Literal
;
5635 procedure Set_Is_Read
5636 (N
: Node_Id
; Val
: Boolean := True) is
5638 pragma Assert
(False
5639 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5643 procedure Set_Is_Source_Call
5644 (N
: Node_Id
; Val
: Boolean := True) is
5646 pragma Assert
(False
5647 or else NT
(N
).Nkind
= N_Call_Marker
);
5649 end Set_Is_Source_Call
;
5651 procedure Set_Is_SPARK_Mode_On_Node
5652 (N
: Node_Id
; Val
: Boolean := True) is
5654 pragma Assert
(False
5655 or else NT
(N
).Nkind
= N_Assignment_Statement
5656 or else NT
(N
).Nkind
= N_Attribute_Reference
5657 or else NT
(N
).Nkind
= N_Call_Marker
5658 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5659 or else NT
(N
).Nkind
= N_Expanded_Name
5660 or else NT
(N
).Nkind
= N_Function_Call
5661 or else NT
(N
).Nkind
= N_Function_Instantiation
5662 or else NT
(N
).Nkind
= N_Identifier
5663 or else NT
(N
).Nkind
= N_Package_Instantiation
5664 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5665 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5666 or else NT
(N
).Nkind
= N_Requeue_Statement
5667 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5669 end Set_Is_SPARK_Mode_On_Node
;
5671 procedure Set_Is_Static_Coextension
5672 (N
: Node_Id
; Val
: Boolean := True) is
5674 pragma Assert
(False
5675 or else NT
(N
).Nkind
= N_Allocator
);
5676 pragma Assert
(not Val
5677 or else not Is_Dynamic_Coextension
(N
));
5678 Set_Flag14
(N
, Val
);
5679 end Set_Is_Static_Coextension
;
5681 procedure Set_Is_Static_Expression
5682 (N
: Node_Id
; Val
: Boolean := True) is
5684 pragma Assert
(False
5685 or else NT
(N
).Nkind
in N_Subexpr
);
5687 end Set_Is_Static_Expression
;
5689 procedure Set_Is_Subprogram_Descriptor
5690 (N
: Node_Id
; Val
: Boolean := True) is
5692 pragma Assert
(False
5693 or else NT
(N
).Nkind
= N_Object_Declaration
);
5694 Set_Flag16
(N
, Val
);
5695 end Set_Is_Subprogram_Descriptor
;
5697 procedure Set_Is_Task_Allocation_Block
5698 (N
: Node_Id
; Val
: Boolean := True) is
5700 pragma Assert
(False
5701 or else NT
(N
).Nkind
= N_Block_Statement
);
5703 end Set_Is_Task_Allocation_Block
;
5705 procedure Set_Is_Task_Body_Procedure
5706 (N
: Node_Id
; Val
: Boolean := True) is
5708 pragma Assert
(False
5709 or else NT
(N
).Nkind
= N_Subprogram_Body
5710 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5712 end Set_Is_Task_Body_Procedure
;
5714 procedure Set_Is_Task_Master
5715 (N
: Node_Id
; Val
: Boolean := True) is
5717 pragma Assert
(False
5718 or else NT
(N
).Nkind
= N_Block_Statement
5719 or else NT
(N
).Nkind
= N_Subprogram_Body
5720 or else NT
(N
).Nkind
= N_Task_Body
);
5722 end Set_Is_Task_Master
;
5724 procedure Set_Is_Write
5725 (N
: Node_Id
; Val
: Boolean := True) is
5727 pragma Assert
(False
5728 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5732 procedure Set_Iteration_Scheme
5733 (N
: Node_Id
; Val
: Node_Id
) is
5735 pragma Assert
(False
5736 or else NT
(N
).Nkind
= N_Loop_Statement
);
5737 Set_Node2_With_Parent
(N
, Val
);
5738 end Set_Iteration_Scheme
;
5740 procedure Set_Iterator_Specification
5741 (N
: Node_Id
; Val
: Node_Id
) is
5743 pragma Assert
(False
5744 or else NT
(N
).Nkind
= N_Iteration_Scheme
5745 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5746 Set_Node2_With_Parent
(N
, Val
);
5747 end Set_Iterator_Specification
;
5750 (N
: Node_Id
; Val
: Entity_Id
) is
5752 pragma Assert
(False
5753 or else NT
(N
).Nkind
= N_Itype_Reference
);
5754 Set_Node1
(N
, Val
); -- no parent, semantic field
5757 procedure Set_Kill_Range_Check
5758 (N
: Node_Id
; Val
: Boolean := True) is
5760 pragma Assert
(False
5761 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5762 Set_Flag11
(N
, Val
);
5763 end Set_Kill_Range_Check
;
5765 procedure Set_Label_Construct
5766 (N
: Node_Id
; Val
: Node_Id
) is
5768 pragma Assert
(False
5769 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5770 Set_Node2
(N
, Val
); -- semantic field, no parent set
5771 end Set_Label_Construct
;
5773 procedure Set_Last_Bit
5774 (N
: Node_Id
; Val
: Node_Id
) is
5776 pragma Assert
(False
5777 or else NT
(N
).Nkind
= N_Component_Clause
);
5778 Set_Node4_With_Parent
(N
, Val
);
5781 procedure Set_Last_Name
5782 (N
: Node_Id
; Val
: Boolean := True) is
5784 pragma Assert
(False
5785 or else NT
(N
).Nkind
= N_With_Clause
);
5789 procedure Set_Left_Opnd
5790 (N
: Node_Id
; Val
: Node_Id
) is
5792 pragma Assert
(False
5793 or else NT
(N
).Nkind
= N_And_Then
5794 or else NT
(N
).Nkind
= N_In
5795 or else NT
(N
).Nkind
= N_Not_In
5796 or else NT
(N
).Nkind
= N_Or_Else
5797 or else NT
(N
).Nkind
in N_Binary_Op
);
5798 Set_Node2_With_Parent
(N
, Val
);
5801 procedure Set_Library_Unit
5802 (N
: Node_Id
; Val
: Node_Id
) is
5804 pragma Assert
(False
5805 or else NT
(N
).Nkind
= N_Compilation_Unit
5806 or else NT
(N
).Nkind
= N_Package_Body_Stub
5807 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5808 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5809 or else NT
(N
).Nkind
= N_Task_Body_Stub
5810 or else NT
(N
).Nkind
= N_With_Clause
);
5811 Set_Node4
(N
, Val
); -- semantic field, no parent set
5812 end Set_Library_Unit
;
5814 procedure Set_Limited_View_Installed
5815 (N
: Node_Id
; Val
: Boolean := True) is
5817 pragma Assert
(False
5818 or else NT
(N
).Nkind
= N_Package_Specification
5819 or else NT
(N
).Nkind
= N_With_Clause
);
5820 Set_Flag18
(N
, Val
);
5821 end Set_Limited_View_Installed
;
5823 procedure Set_Limited_Present
5824 (N
: Node_Id
; Val
: Boolean := True) is
5826 pragma Assert
(False
5827 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5828 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5829 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5830 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5831 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5832 or else NT
(N
).Nkind
= N_Record_Definition
5833 or else NT
(N
).Nkind
= N_With_Clause
);
5834 Set_Flag17
(N
, Val
);
5835 end Set_Limited_Present
;
5837 procedure Set_Literals
5838 (N
: Node_Id
; Val
: List_Id
) is
5840 pragma Assert
(False
5841 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5842 Set_List1_With_Parent
(N
, Val
);
5845 procedure Set_Local_Raise_Not_OK
5846 (N
: Node_Id
; Val
: Boolean := True) is
5848 pragma Assert
(False
5849 or else NT
(N
).Nkind
= N_Exception_Handler
);
5851 end Set_Local_Raise_Not_OK
;
5853 procedure Set_Local_Raise_Statements
5854 (N
: Node_Id
; Val
: Elist_Id
) is
5856 pragma Assert
(False
5857 or else NT
(N
).Nkind
= N_Exception_Handler
);
5858 Set_Elist1
(N
, Val
);
5859 end Set_Local_Raise_Statements
;
5861 procedure Set_Loop_Actions
5862 (N
: Node_Id
; Val
: List_Id
) is
5864 pragma Assert
(False
5865 or else NT
(N
).Nkind
= N_Component_Association
5866 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5867 Set_List2
(N
, Val
); -- semantic field, no parent set
5868 end Set_Loop_Actions
;
5870 procedure Set_Loop_Parameter_Specification
5871 (N
: Node_Id
; Val
: Node_Id
) is
5873 pragma Assert
(False
5874 or else NT
(N
).Nkind
= N_Iteration_Scheme
5875 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5876 Set_Node4_With_Parent
(N
, Val
);
5877 end Set_Loop_Parameter_Specification
;
5879 procedure Set_Low_Bound
5880 (N
: Node_Id
; Val
: Node_Id
) is
5882 pragma Assert
(False
5883 or else NT
(N
).Nkind
= N_Range
5884 or else NT
(N
).Nkind
= N_Real_Range_Specification
5885 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5886 Set_Node1_With_Parent
(N
, Val
);
5889 procedure Set_Mod_Clause
5890 (N
: Node_Id
; Val
: Node_Id
) is
5892 pragma Assert
(False
5893 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5894 Set_Node2_With_Parent
(N
, Val
);
5897 procedure Set_More_Ids
5898 (N
: Node_Id
; Val
: Boolean := True) is
5900 pragma Assert
(False
5901 or else NT
(N
).Nkind
= N_Component_Declaration
5902 or else NT
(N
).Nkind
= N_Discriminant_Specification
5903 or else NT
(N
).Nkind
= N_Exception_Declaration
5904 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5905 or else NT
(N
).Nkind
= N_Number_Declaration
5906 or else NT
(N
).Nkind
= N_Object_Declaration
5907 or else NT
(N
).Nkind
= N_Parameter_Specification
5908 or else NT
(N
).Nkind
= N_Use_Package_Clause
5909 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5913 procedure Set_Must_Be_Byte_Aligned
5914 (N
: Node_Id
; Val
: Boolean := True) is
5916 pragma Assert
(False
5917 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5918 Set_Flag14
(N
, Val
);
5919 end Set_Must_Be_Byte_Aligned
;
5921 procedure Set_Must_Not_Freeze
5922 (N
: Node_Id
; Val
: Boolean := True) is
5924 pragma Assert
(False
5925 or else NT
(N
).Nkind
= N_Subtype_Indication
5926 or else NT
(N
).Nkind
in N_Subexpr
);
5928 end Set_Must_Not_Freeze
;
5930 procedure Set_Must_Not_Override
5931 (N
: Node_Id
; Val
: Boolean := True) is
5933 pragma Assert
(False
5934 or else NT
(N
).Nkind
= N_Entry_Declaration
5935 or else NT
(N
).Nkind
= N_Function_Instantiation
5936 or else NT
(N
).Nkind
= N_Function_Specification
5937 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5938 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5939 Set_Flag15
(N
, Val
);
5940 end Set_Must_Not_Override
;
5942 procedure Set_Must_Override
5943 (N
: Node_Id
; Val
: Boolean := True) is
5945 pragma Assert
(False
5946 or else NT
(N
).Nkind
= N_Entry_Declaration
5947 or else NT
(N
).Nkind
= N_Function_Instantiation
5948 or else NT
(N
).Nkind
= N_Function_Specification
5949 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5950 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5951 Set_Flag14
(N
, Val
);
5952 end Set_Must_Override
;
5955 (N
: Node_Id
; Val
: Node_Id
) is
5957 pragma Assert
(False
5958 or else NT
(N
).Nkind
= N_Assignment_Statement
5959 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5960 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5961 or else NT
(N
).Nkind
= N_Designator
5962 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5963 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5964 or else NT
(N
).Nkind
= N_Exit_Statement
5965 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5966 or else NT
(N
).Nkind
= N_Function_Call
5967 or else NT
(N
).Nkind
= N_Function_Instantiation
5968 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5969 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5970 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5971 or else NT
(N
).Nkind
= N_Goto_Statement
5972 or else NT
(N
).Nkind
= N_Iterator_Specification
5973 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5974 or else NT
(N
).Nkind
= N_Package_Instantiation
5975 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5976 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5977 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5978 or else NT
(N
).Nkind
= N_Raise_Expression
5979 or else NT
(N
).Nkind
= N_Raise_Statement
5980 or else NT
(N
).Nkind
= N_Requeue_Statement
5981 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5982 or else NT
(N
).Nkind
= N_Subunit
5983 or else NT
(N
).Nkind
= N_Use_Package_Clause
5984 or else NT
(N
).Nkind
= N_Variant_Part
5985 or else NT
(N
).Nkind
= N_With_Clause
);
5986 Set_Node2_With_Parent
(N
, Val
);
5990 (N
: Node_Id
; Val
: List_Id
) is
5992 pragma Assert
(False
5993 or else NT
(N
).Nkind
= N_Abort_Statement
);
5994 Set_List2_With_Parent
(N
, Val
);
5997 procedure Set_Next_Entity
5998 (N
: Node_Id
; Val
: Node_Id
) is
6000 pragma Assert
(False
6001 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6002 or else NT
(N
).Nkind
= N_Defining_Identifier
6003 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6004 Set_Node2
(N
, Val
); -- semantic field, no parent set
6005 end Set_Next_Entity
;
6007 procedure Set_Next_Exit_Statement
6008 (N
: Node_Id
; Val
: Node_Id
) is
6010 pragma Assert
(False
6011 or else NT
(N
).Nkind
= N_Exit_Statement
);
6012 Set_Node3
(N
, Val
); -- semantic field, no parent set
6013 end Set_Next_Exit_Statement
;
6015 procedure Set_Next_Implicit_With
6016 (N
: Node_Id
; Val
: Node_Id
) is
6018 pragma Assert
(False
6019 or else NT
(N
).Nkind
= N_With_Clause
);
6020 Set_Node3
(N
, Val
); -- semantic field, no parent set
6021 end Set_Next_Implicit_With
;
6023 procedure Set_Next_Named_Actual
6024 (N
: Node_Id
; Val
: Node_Id
) is
6026 pragma Assert
(False
6027 or else NT
(N
).Nkind
= N_Parameter_Association
);
6028 Set_Node4
(N
, Val
); -- semantic field, no parent set
6029 end Set_Next_Named_Actual
;
6031 procedure Set_Next_Pragma
6032 (N
: Node_Id
; Val
: Node_Id
) is
6034 pragma Assert
(False
6035 or else NT
(N
).Nkind
= N_Pragma
);
6036 Set_Node1
(N
, Val
); -- semantic field, no parent set
6037 end Set_Next_Pragma
;
6039 procedure Set_Next_Rep_Item
6040 (N
: Node_Id
; Val
: Node_Id
) is
6042 pragma Assert
(False
6043 or else NT
(N
).Nkind
= N_Aspect_Specification
6044 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
6045 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
6046 or else NT
(N
).Nkind
= N_Pragma
6047 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
6048 Set_Node5
(N
, Val
); -- semantic field, no parent set
6049 end Set_Next_Rep_Item
;
6051 procedure Set_Next_Use_Clause
6052 (N
: Node_Id
; Val
: Node_Id
) is
6054 pragma Assert
(False
6055 or else NT
(N
).Nkind
= N_Use_Package_Clause
6056 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6057 Set_Node3
(N
, Val
); -- semantic field, no parent set
6058 end Set_Next_Use_Clause
;
6060 procedure Set_No_Ctrl_Actions
6061 (N
: Node_Id
; Val
: Boolean := True) is
6063 pragma Assert
(False
6064 or else NT
(N
).Nkind
= N_Assignment_Statement
);
6066 end Set_No_Ctrl_Actions
;
6068 procedure Set_No_Elaboration_Check
6069 (N
: Node_Id
; Val
: Boolean := True) is
6071 pragma Assert
(False
6072 or else NT
(N
).Nkind
= N_Function_Call
6073 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6075 end Set_No_Elaboration_Check
;
6077 procedure Set_No_Entities_Ref_In_Spec
6078 (N
: Node_Id
; Val
: Boolean := True) is
6080 pragma Assert
(False
6081 or else NT
(N
).Nkind
= N_With_Clause
);
6083 end Set_No_Entities_Ref_In_Spec
;
6085 procedure Set_No_Initialization
6086 (N
: Node_Id
; Val
: Boolean := True) is
6088 pragma Assert
(False
6089 or else NT
(N
).Nkind
= N_Allocator
6090 or else NT
(N
).Nkind
= N_Object_Declaration
);
6091 Set_Flag13
(N
, Val
);
6092 end Set_No_Initialization
;
6094 procedure Set_No_Minimize_Eliminate
6095 (N
: Node_Id
; Val
: Boolean := True) is
6097 pragma Assert
(False
6098 or else NT
(N
).Nkind
= N_In
6099 or else NT
(N
).Nkind
= N_Not_In
);
6100 Set_Flag17
(N
, Val
);
6101 end Set_No_Minimize_Eliminate
;
6103 procedure Set_No_Side_Effect_Removal
6104 (N
: Node_Id
; Val
: Boolean := True) is
6106 pragma Assert
(False
6107 or else NT
(N
).Nkind
= N_Function_Call
);
6108 Set_Flag17
(N
, Val
);
6109 end Set_No_Side_Effect_Removal
;
6111 procedure Set_No_Truncation
6112 (N
: Node_Id
; Val
: Boolean := True) is
6114 pragma Assert
(False
6115 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6116 Set_Flag17
(N
, Val
);
6117 end Set_No_Truncation
;
6119 procedure Set_Null_Excluding_Subtype
6120 (N
: Node_Id
; Val
: Boolean := True) is
6122 pragma Assert
(False
6123 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
6124 Set_Flag16
(N
, Val
);
6125 end Set_Null_Excluding_Subtype
;
6127 procedure Set_Null_Exclusion_Present
6128 (N
: Node_Id
; Val
: Boolean := True) is
6130 pragma Assert
(False
6131 or else NT
(N
).Nkind
= N_Access_Definition
6132 or else NT
(N
).Nkind
= N_Access_Function_Definition
6133 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6134 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6135 or else NT
(N
).Nkind
= N_Allocator
6136 or else NT
(N
).Nkind
= N_Component_Definition
6137 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6138 or else NT
(N
).Nkind
= N_Discriminant_Specification
6139 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6140 or else NT
(N
).Nkind
= N_Function_Specification
6141 or else NT
(N
).Nkind
= N_Object_Declaration
6142 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6143 or else NT
(N
).Nkind
= N_Parameter_Specification
6144 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6145 Set_Flag11
(N
, Val
);
6146 end Set_Null_Exclusion_Present
;
6148 procedure Set_Null_Exclusion_In_Return_Present
6149 (N
: Node_Id
; Val
: Boolean := True) is
6151 pragma Assert
(False
6152 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6153 Set_Flag14
(N
, Val
);
6154 end Set_Null_Exclusion_In_Return_Present
;
6156 procedure Set_Null_Present
6157 (N
: Node_Id
; Val
: Boolean := True) is
6159 pragma Assert
(False
6160 or else NT
(N
).Nkind
= N_Component_List
6161 or else NT
(N
).Nkind
= N_Procedure_Specification
6162 or else NT
(N
).Nkind
= N_Record_Definition
);
6163 Set_Flag13
(N
, Val
);
6164 end Set_Null_Present
;
6166 procedure Set_Null_Record_Present
6167 (N
: Node_Id
; Val
: Boolean := True) is
6169 pragma Assert
(False
6170 or else NT
(N
).Nkind
= N_Aggregate
6171 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6172 Set_Flag17
(N
, Val
);
6173 end Set_Null_Record_Present
;
6175 procedure Set_Null_Statement
6176 (N
: Node_Id
; Val
: Node_Id
) is
6178 pragma Assert
(False
6179 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6181 end Set_Null_Statement
;
6183 procedure Set_Object_Definition
6184 (N
: Node_Id
; Val
: Node_Id
) is
6186 pragma Assert
(False
6187 or else NT
(N
).Nkind
= N_Object_Declaration
);
6188 Set_Node4_With_Parent
(N
, Val
);
6189 end Set_Object_Definition
;
6191 procedure Set_Of_Present
6192 (N
: Node_Id
; Val
: Boolean := True) is
6194 pragma Assert
(False
6195 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6196 Set_Flag16
(N
, Val
);
6199 procedure Set_Original_Discriminant
6200 (N
: Node_Id
; Val
: Node_Id
) is
6202 pragma Assert
(False
6203 or else NT
(N
).Nkind
= N_Identifier
);
6204 Set_Node2
(N
, Val
); -- semantic field, no parent set
6205 end Set_Original_Discriminant
;
6207 procedure Set_Original_Entity
6208 (N
: Node_Id
; Val
: Entity_Id
) is
6210 pragma Assert
(False
6211 or else NT
(N
).Nkind
= N_Integer_Literal
6212 or else NT
(N
).Nkind
= N_Real_Literal
);
6213 Set_Node2
(N
, Val
); -- semantic field, no parent set
6214 end Set_Original_Entity
;
6216 procedure Set_Others_Discrete_Choices
6217 (N
: Node_Id
; Val
: List_Id
) is
6219 pragma Assert
(False
6220 or else NT
(N
).Nkind
= N_Others_Choice
);
6221 Set_List1_With_Parent
(N
, Val
);
6222 end Set_Others_Discrete_Choices
;
6224 procedure Set_Out_Present
6225 (N
: Node_Id
; Val
: Boolean := True) is
6227 pragma Assert
(False
6228 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6229 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6230 Set_Flag17
(N
, Val
);
6231 end Set_Out_Present
;
6233 procedure Set_Parameter_Associations
6234 (N
: Node_Id
; Val
: List_Id
) is
6236 pragma Assert
(False
6237 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6238 or else NT
(N
).Nkind
= N_Function_Call
6239 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6240 Set_List3_With_Parent
(N
, Val
);
6241 end Set_Parameter_Associations
;
6243 procedure Set_Parameter_Specifications
6244 (N
: Node_Id
; Val
: List_Id
) is
6246 pragma Assert
(False
6247 or else NT
(N
).Nkind
= N_Accept_Statement
6248 or else NT
(N
).Nkind
= N_Access_Function_Definition
6249 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6250 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6251 or else NT
(N
).Nkind
= N_Entry_Declaration
6252 or else NT
(N
).Nkind
= N_Function_Specification
6253 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6254 Set_List3_With_Parent
(N
, Val
);
6255 end Set_Parameter_Specifications
;
6257 procedure Set_Parameter_Type
6258 (N
: Node_Id
; Val
: Node_Id
) is
6260 pragma Assert
(False
6261 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6262 Set_Node2_With_Parent
(N
, Val
);
6263 end Set_Parameter_Type
;
6265 procedure Set_Parent_Spec
6266 (N
: Node_Id
; Val
: Node_Id
) is
6268 pragma Assert
(False
6269 or else NT
(N
).Nkind
= N_Function_Instantiation
6270 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6271 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6272 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6273 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6274 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6275 or else NT
(N
).Nkind
= N_Package_Declaration
6276 or else NT
(N
).Nkind
= N_Package_Instantiation
6277 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6278 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6279 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6280 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6281 Set_Node4
(N
, Val
); -- semantic field, no parent set
6282 end Set_Parent_Spec
;
6284 procedure Set_Parent_With
6285 (N
: Node_Id
; Val
: Boolean := True) is
6287 pragma Assert
(False
6288 or else NT
(N
).Nkind
= N_With_Clause
);
6290 end Set_Parent_With
;
6292 procedure Set_Position
6293 (N
: Node_Id
; Val
: Node_Id
) is
6295 pragma Assert
(False
6296 or else NT
(N
).Nkind
= N_Component_Clause
);
6297 Set_Node2_With_Parent
(N
, Val
);
6300 procedure Set_Pragma_Argument_Associations
6301 (N
: Node_Id
; Val
: List_Id
) is
6303 pragma Assert
(False
6304 or else NT
(N
).Nkind
= N_Pragma
);
6305 Set_List2_With_Parent
(N
, Val
);
6306 end Set_Pragma_Argument_Associations
;
6308 procedure Set_Pragma_Identifier
6309 (N
: Node_Id
; Val
: Node_Id
) is
6311 pragma Assert
(False
6312 or else NT
(N
).Nkind
= N_Pragma
);
6313 Set_Node4_With_Parent
(N
, Val
);
6314 end Set_Pragma_Identifier
;
6316 procedure Set_Pragmas_After
6317 (N
: Node_Id
; Val
: List_Id
) is
6319 pragma Assert
(False
6320 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6321 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6322 Set_List5_With_Parent
(N
, Val
);
6323 end Set_Pragmas_After
;
6325 procedure Set_Pragmas_Before
6326 (N
: Node_Id
; Val
: List_Id
) is
6328 pragma Assert
(False
6329 or else NT
(N
).Nkind
= N_Accept_Alternative
6330 or else NT
(N
).Nkind
= N_Delay_Alternative
6331 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6332 or else NT
(N
).Nkind
= N_Mod_Clause
6333 or else NT
(N
).Nkind
= N_Terminate_Alternative
6334 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6335 Set_List4_With_Parent
(N
, Val
);
6336 end Set_Pragmas_Before
;
6338 procedure Set_Pre_Post_Conditions
6339 (N
: Node_Id
; Val
: Node_Id
) is
6341 pragma Assert
(False
6342 or else NT
(N
).Nkind
= N_Contract
);
6343 Set_Node1
(N
, Val
); -- semantic field, no parent set
6344 end Set_Pre_Post_Conditions
;
6346 procedure Set_Prefix
6347 (N
: Node_Id
; Val
: Node_Id
) is
6349 pragma Assert
(False
6350 or else NT
(N
).Nkind
= N_Attribute_Reference
6351 or else NT
(N
).Nkind
= N_Expanded_Name
6352 or else NT
(N
).Nkind
= N_Explicit_Dereference
6353 or else NT
(N
).Nkind
= N_Indexed_Component
6354 or else NT
(N
).Nkind
= N_Reference
6355 or else NT
(N
).Nkind
= N_Selected_Component
6356 or else NT
(N
).Nkind
= N_Slice
);
6357 Set_Node3_With_Parent
(N
, Val
);
6360 procedure Set_Premature_Use
6361 (N
: Node_Id
; Val
: Node_Id
) is
6363 pragma Assert
(False
6364 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6366 end Set_Premature_Use
;
6368 procedure Set_Present_Expr
6369 (N
: Node_Id
; Val
: Uint
) is
6371 pragma Assert
(False
6372 or else NT
(N
).Nkind
= N_Variant
);
6374 end Set_Present_Expr
;
6376 procedure Set_Prev_Ids
6377 (N
: Node_Id
; Val
: Boolean := True) is
6379 pragma Assert
(False
6380 or else NT
(N
).Nkind
= N_Component_Declaration
6381 or else NT
(N
).Nkind
= N_Discriminant_Specification
6382 or else NT
(N
).Nkind
= N_Exception_Declaration
6383 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6384 or else NT
(N
).Nkind
= N_Number_Declaration
6385 or else NT
(N
).Nkind
= N_Object_Declaration
6386 or else NT
(N
).Nkind
= N_Parameter_Specification
6387 or else NT
(N
).Nkind
= N_Use_Package_Clause
6388 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6392 procedure Set_Prev_Use_Clause
6393 (N
: Node_Id
; Val
: Node_Id
) is
6395 pragma Assert
(False
6396 or else NT
(N
).Nkind
= N_Use_Package_Clause
6397 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6398 Set_Node1
(N
, Val
); -- semantic field, no parent set
6399 end Set_Prev_Use_Clause
;
6401 procedure Set_Print_In_Hex
6402 (N
: Node_Id
; Val
: Boolean := True) is
6404 pragma Assert
(False
6405 or else NT
(N
).Nkind
= N_Integer_Literal
);
6406 Set_Flag13
(N
, Val
);
6407 end Set_Print_In_Hex
;
6409 procedure Set_Private_Declarations
6410 (N
: Node_Id
; Val
: List_Id
) is
6412 pragma Assert
(False
6413 or else NT
(N
).Nkind
= N_Package_Specification
6414 or else NT
(N
).Nkind
= N_Protected_Definition
6415 or else NT
(N
).Nkind
= N_Task_Definition
);
6416 Set_List3_With_Parent
(N
, Val
);
6417 end Set_Private_Declarations
;
6419 procedure Set_Private_Present
6420 (N
: Node_Id
; Val
: Boolean := True) is
6422 pragma Assert
(False
6423 or else NT
(N
).Nkind
= N_Compilation_Unit
6424 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6425 or else NT
(N
).Nkind
= N_With_Clause
);
6426 Set_Flag15
(N
, Val
);
6427 end Set_Private_Present
;
6429 procedure Set_Procedure_To_Call
6430 (N
: Node_Id
; Val
: Node_Id
) is
6432 pragma Assert
(False
6433 or else NT
(N
).Nkind
= N_Allocator
6434 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6435 or else NT
(N
).Nkind
= N_Free_Statement
6436 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6437 Set_Node2
(N
, Val
); -- semantic field, no parent set
6438 end Set_Procedure_To_Call
;
6440 procedure Set_Proper_Body
6441 (N
: Node_Id
; Val
: Node_Id
) is
6443 pragma Assert
(False
6444 or else NT
(N
).Nkind
= N_Subunit
);
6445 Set_Node1_With_Parent
(N
, Val
);
6446 end Set_Proper_Body
;
6448 procedure Set_Protected_Definition
6449 (N
: Node_Id
; Val
: Node_Id
) is
6451 pragma Assert
(False
6452 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6453 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6454 Set_Node3_With_Parent
(N
, Val
);
6455 end Set_Protected_Definition
;
6457 procedure Set_Protected_Present
6458 (N
: Node_Id
; Val
: Boolean := True) is
6460 pragma Assert
(False
6461 or else NT
(N
).Nkind
= N_Access_Function_Definition
6462 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6463 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6464 or else NT
(N
).Nkind
= N_Record_Definition
);
6466 end Set_Protected_Present
;
6468 procedure Set_Raises_Constraint_Error
6469 (N
: Node_Id
; Val
: Boolean := True) is
6471 pragma Assert
(False
6472 or else NT
(N
).Nkind
in N_Subexpr
);
6474 end Set_Raises_Constraint_Error
;
6476 procedure Set_Range_Constraint
6477 (N
: Node_Id
; Val
: Node_Id
) is
6479 pragma Assert
(False
6480 or else NT
(N
).Nkind
= N_Delta_Constraint
6481 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6482 Set_Node4_With_Parent
(N
, Val
);
6483 end Set_Range_Constraint
;
6485 procedure Set_Range_Expression
6486 (N
: Node_Id
; Val
: Node_Id
) is
6488 pragma Assert
(False
6489 or else NT
(N
).Nkind
= N_Range_Constraint
);
6490 Set_Node4_With_Parent
(N
, Val
);
6491 end Set_Range_Expression
;
6493 procedure Set_Real_Range_Specification
6494 (N
: Node_Id
; Val
: Node_Id
) is
6496 pragma Assert
(False
6497 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6498 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6499 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6500 Set_Node4_With_Parent
(N
, Val
);
6501 end Set_Real_Range_Specification
;
6503 procedure Set_Realval
6504 (N
: Node_Id
; Val
: Ureal
) is
6506 pragma Assert
(False
6507 or else NT
(N
).Nkind
= N_Real_Literal
);
6508 Set_Ureal3
(N
, Val
);
6511 procedure Set_Reason
6512 (N
: Node_Id
; Val
: Uint
) is
6514 pragma Assert
(False
6515 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6516 or else NT
(N
).Nkind
= N_Raise_Program_Error
6517 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6521 procedure Set_Record_Extension_Part
6522 (N
: Node_Id
; Val
: Node_Id
) is
6524 pragma Assert
(False
6525 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6526 Set_Node3_With_Parent
(N
, Val
);
6527 end Set_Record_Extension_Part
;
6529 procedure Set_Redundant_Use
6530 (N
: Node_Id
; Val
: Boolean := True) is
6532 pragma Assert
(False
6533 or else NT
(N
).Nkind
= N_Attribute_Reference
6534 or else NT
(N
).Nkind
= N_Expanded_Name
6535 or else NT
(N
).Nkind
= N_Identifier
);
6536 Set_Flag13
(N
, Val
);
6537 end Set_Redundant_Use
;
6539 procedure Set_Renaming_Exception
6540 (N
: Node_Id
; Val
: Node_Id
) is
6542 pragma Assert
(False
6543 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6545 end Set_Renaming_Exception
;
6547 procedure Set_Result_Definition
6548 (N
: Node_Id
; Val
: Node_Id
) is
6550 pragma Assert
(False
6551 or else NT
(N
).Nkind
= N_Access_Function_Definition
6552 or else NT
(N
).Nkind
= N_Function_Specification
);
6553 Set_Node4_With_Parent
(N
, Val
);
6554 end Set_Result_Definition
;
6556 procedure Set_Return_Object_Declarations
6557 (N
: Node_Id
; Val
: List_Id
) is
6559 pragma Assert
(False
6560 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6561 Set_List3_With_Parent
(N
, Val
);
6562 end Set_Return_Object_Declarations
;
6564 procedure Set_Return_Statement_Entity
6565 (N
: Node_Id
; Val
: Node_Id
) is
6567 pragma Assert
(False
6568 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6569 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6570 Set_Node5
(N
, Val
); -- semantic field, no parent set
6571 end Set_Return_Statement_Entity
;
6573 procedure Set_Reverse_Present
6574 (N
: Node_Id
; Val
: Boolean := True) is
6576 pragma Assert
(False
6577 or else NT
(N
).Nkind
= N_Iterator_Specification
6578 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6579 Set_Flag15
(N
, Val
);
6580 end Set_Reverse_Present
;
6582 procedure Set_Right_Opnd
6583 (N
: Node_Id
; Val
: Node_Id
) is
6585 pragma Assert
(False
6586 or else NT
(N
).Nkind
in N_Op
6587 or else NT
(N
).Nkind
= N_And_Then
6588 or else NT
(N
).Nkind
= N_In
6589 or else NT
(N
).Nkind
= N_Not_In
6590 or else NT
(N
).Nkind
= N_Or_Else
);
6591 Set_Node3_With_Parent
(N
, Val
);
6594 procedure Set_Rounded_Result
6595 (N
: Node_Id
; Val
: Boolean := True) is
6597 pragma Assert
(False
6598 or else NT
(N
).Nkind
= N_Op_Divide
6599 or else NT
(N
).Nkind
= N_Op_Multiply
6600 or else NT
(N
).Nkind
= N_Type_Conversion
);
6601 Set_Flag18
(N
, Val
);
6602 end Set_Rounded_Result
;
6604 procedure Set_Save_Invocation_Graph_Of_Body
6605 (N
: Node_Id
; Val
: Boolean := True) is
6607 pragma Assert
(False
6608 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6610 end Set_Save_Invocation_Graph_Of_Body
;
6612 procedure Set_SCIL_Controlling_Tag
6613 (N
: Node_Id
; Val
: Node_Id
) is
6615 pragma Assert
(False
6616 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6617 Set_Node5
(N
, Val
); -- semantic field, no parent set
6618 end Set_SCIL_Controlling_Tag
;
6620 procedure Set_SCIL_Entity
6621 (N
: Node_Id
; Val
: Node_Id
) is
6623 pragma Assert
(False
6624 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6625 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6626 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6627 Set_Node4
(N
, Val
); -- semantic field, no parent set
6628 end Set_SCIL_Entity
;
6630 procedure Set_SCIL_Tag_Value
6631 (N
: Node_Id
; Val
: Node_Id
) is
6633 pragma Assert
(False
6634 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6635 Set_Node5
(N
, Val
); -- semantic field, no parent set
6636 end Set_SCIL_Tag_Value
;
6638 procedure Set_SCIL_Target_Prim
6639 (N
: Node_Id
; Val
: Node_Id
) is
6641 pragma Assert
(False
6642 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6643 Set_Node2
(N
, Val
); -- semantic field, no parent set
6644 end Set_SCIL_Target_Prim
;
6647 (N
: Node_Id
; Val
: Node_Id
) is
6649 pragma Assert
(False
6650 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6651 or else NT
(N
).Nkind
= N_Defining_Identifier
6652 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6653 Set_Node3
(N
, Val
); -- semantic field, no parent set
6656 procedure Set_Select_Alternatives
6657 (N
: Node_Id
; Val
: List_Id
) is
6659 pragma Assert
(False
6660 or else NT
(N
).Nkind
= N_Selective_Accept
);
6661 Set_List1_With_Parent
(N
, Val
);
6662 end Set_Select_Alternatives
;
6664 procedure Set_Selector_Name
6665 (N
: Node_Id
; Val
: Node_Id
) is
6667 pragma Assert
(False
6668 or else NT
(N
).Nkind
= N_Expanded_Name
6669 or else NT
(N
).Nkind
= N_Generic_Association
6670 or else NT
(N
).Nkind
= N_Parameter_Association
6671 or else NT
(N
).Nkind
= N_Selected_Component
);
6672 Set_Node2_With_Parent
(N
, Val
);
6673 end Set_Selector_Name
;
6675 procedure Set_Selector_Names
6676 (N
: Node_Id
; Val
: List_Id
) is
6678 pragma Assert
(False
6679 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6680 Set_List1_With_Parent
(N
, Val
);
6681 end Set_Selector_Names
;
6683 procedure Set_Shift_Count_OK
6684 (N
: Node_Id
; Val
: Boolean := True) is
6686 pragma Assert
(False
6687 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6688 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6689 or else NT
(N
).Nkind
= N_Op_Shift_Left
6690 or else NT
(N
).Nkind
= N_Op_Shift_Right
6691 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6693 end Set_Shift_Count_OK
;
6695 procedure Set_Source_Type
6696 (N
: Node_Id
; Val
: Entity_Id
) is
6698 pragma Assert
(False
6699 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6700 Set_Node1
(N
, Val
); -- semantic field, no parent set
6701 end Set_Source_Type
;
6703 procedure Set_Specification
6704 (N
: Node_Id
; Val
: Node_Id
) is
6706 pragma Assert
(False
6707 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6708 or else NT
(N
).Nkind
= N_Expression_Function
6709 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6710 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6711 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6712 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6713 or else NT
(N
).Nkind
= N_Package_Declaration
6714 or else NT
(N
).Nkind
= N_Subprogram_Body
6715 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6716 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6717 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6718 Set_Node1_With_Parent
(N
, Val
);
6719 end Set_Specification
;
6721 procedure Set_Split_PPC
6722 (N
: Node_Id
; Val
: Boolean) is
6724 pragma Assert
(False
6725 or else NT
(N
).Nkind
= N_Aspect_Specification
6726 or else NT
(N
).Nkind
= N_Pragma
);
6727 Set_Flag17
(N
, Val
);
6730 procedure Set_Statements
6731 (N
: Node_Id
; Val
: List_Id
) is
6733 pragma Assert
(False
6734 or else NT
(N
).Nkind
= N_Abortable_Part
6735 or else NT
(N
).Nkind
= N_Accept_Alternative
6736 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6737 or else NT
(N
).Nkind
= N_Delay_Alternative
6738 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6739 or else NT
(N
).Nkind
= N_Exception_Handler
6740 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6741 or else NT
(N
).Nkind
= N_Loop_Statement
6742 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6743 Set_List3_With_Parent
(N
, Val
);
6746 procedure Set_Storage_Pool
6747 (N
: Node_Id
; Val
: Node_Id
) is
6749 pragma Assert
(False
6750 or else NT
(N
).Nkind
= N_Allocator
6751 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6752 or else NT
(N
).Nkind
= N_Free_Statement
6753 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6754 Set_Node1
(N
, Val
); -- semantic field, no parent set
6755 end Set_Storage_Pool
;
6757 procedure Set_Subpool_Handle_Name
6758 (N
: Node_Id
; Val
: Node_Id
) is
6760 pragma Assert
(False
6761 or else NT
(N
).Nkind
= N_Allocator
);
6762 Set_Node4_With_Parent
(N
, Val
);
6763 end Set_Subpool_Handle_Name
;
6765 procedure Set_Strval
6766 (N
: Node_Id
; Val
: String_Id
) is
6768 pragma Assert
(False
6769 or else NT
(N
).Nkind
= N_Operator_Symbol
6770 or else NT
(N
).Nkind
= N_String_Literal
);
6774 procedure Set_Subtype_Indication
6775 (N
: Node_Id
; Val
: Node_Id
) is
6777 pragma Assert
(False
6778 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6779 or else NT
(N
).Nkind
= N_Component_Definition
6780 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6781 or else NT
(N
).Nkind
= N_Iterator_Specification
6782 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6783 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6784 Set_Node5_With_Parent
(N
, Val
);
6785 end Set_Subtype_Indication
;
6787 procedure Set_Subtype_Mark
6788 (N
: Node_Id
; Val
: Node_Id
) is
6790 pragma Assert
(False
6791 or else NT
(N
).Nkind
= N_Access_Definition
6792 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6793 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6794 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6795 or else NT
(N
).Nkind
= N_Qualified_Expression
6796 or else NT
(N
).Nkind
= N_Subtype_Indication
6797 or else NT
(N
).Nkind
= N_Type_Conversion
6798 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6799 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6800 Set_Node4_With_Parent
(N
, Val
);
6801 end Set_Subtype_Mark
;
6803 procedure Set_Subtype_Marks
6804 (N
: Node_Id
; Val
: List_Id
) is
6806 pragma Assert
(False
6807 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6808 Set_List2_With_Parent
(N
, Val
);
6809 end Set_Subtype_Marks
;
6811 procedure Set_Suppress_Assignment_Checks
6812 (N
: Node_Id
; Val
: Boolean := True) is
6814 pragma Assert
(False
6815 or else NT
(N
).Nkind
= N_Assignment_Statement
6816 or else NT
(N
).Nkind
= N_Object_Declaration
);
6817 Set_Flag18
(N
, Val
);
6818 end Set_Suppress_Assignment_Checks
;
6820 procedure Set_Suppress_Loop_Warnings
6821 (N
: Node_Id
; Val
: Boolean := True) is
6823 pragma Assert
(False
6824 or else NT
(N
).Nkind
= N_Loop_Statement
);
6825 Set_Flag17
(N
, Val
);
6826 end Set_Suppress_Loop_Warnings
;
6828 procedure Set_Synchronized_Present
6829 (N
: Node_Id
; Val
: Boolean := True) is
6831 pragma Assert
(False
6832 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6833 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6834 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6835 or else NT
(N
).Nkind
= N_Record_Definition
);
6837 end Set_Synchronized_Present
;
6839 procedure Set_Tagged_Present
6840 (N
: Node_Id
; Val
: Boolean := True) is
6842 pragma Assert
(False
6843 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6844 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6845 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6846 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6847 or else NT
(N
).Nkind
= N_Record_Definition
);
6848 Set_Flag15
(N
, Val
);
6849 end Set_Tagged_Present
;
6851 procedure Set_Target
6852 (N
: Node_Id
; Val
: Entity_Id
) is
6854 pragma Assert
(False
6855 or else NT
(N
).Nkind
= N_Call_Marker
6856 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
6857 Set_Node1
(N
, Val
); -- semantic field, no parent set
6860 procedure Set_Target_Type
6861 (N
: Node_Id
; Val
: Entity_Id
) is
6863 pragma Assert
(False
6864 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6865 Set_Node2
(N
, Val
); -- semantic field, no parent set
6866 end Set_Target_Type
;
6868 procedure Set_Task_Definition
6869 (N
: Node_Id
; Val
: Node_Id
) is
6871 pragma Assert
(False
6872 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6873 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6874 Set_Node3_With_Parent
(N
, Val
);
6875 end Set_Task_Definition
;
6877 procedure Set_Task_Present
6878 (N
: Node_Id
; Val
: Boolean := True) is
6880 pragma Assert
(False
6881 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6882 or else NT
(N
).Nkind
= N_Record_Definition
);
6884 end Set_Task_Present
;
6886 procedure Set_Then_Actions
6887 (N
: Node_Id
; Val
: List_Id
) is
6889 pragma Assert
(False
6890 or else NT
(N
).Nkind
= N_If_Expression
);
6891 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6892 end Set_Then_Actions
;
6894 procedure Set_Then_Statements
6895 (N
: Node_Id
; Val
: List_Id
) is
6897 pragma Assert
(False
6898 or else NT
(N
).Nkind
= N_Elsif_Part
6899 or else NT
(N
).Nkind
= N_If_Statement
);
6900 Set_List2_With_Parent
(N
, Val
);
6901 end Set_Then_Statements
;
6903 procedure Set_Treat_Fixed_As_Integer
6904 (N
: Node_Id
; Val
: Boolean := True) is
6906 pragma Assert
(False
6907 or else NT
(N
).Nkind
= N_Op_Divide
6908 or else NT
(N
).Nkind
= N_Op_Mod
6909 or else NT
(N
).Nkind
= N_Op_Multiply
6910 or else NT
(N
).Nkind
= N_Op_Rem
);
6911 Set_Flag14
(N
, Val
);
6912 end Set_Treat_Fixed_As_Integer
;
6914 procedure Set_Triggering_Alternative
6915 (N
: Node_Id
; Val
: Node_Id
) is
6917 pragma Assert
(False
6918 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6919 Set_Node1_With_Parent
(N
, Val
);
6920 end Set_Triggering_Alternative
;
6922 procedure Set_Triggering_Statement
6923 (N
: Node_Id
; Val
: Node_Id
) is
6925 pragma Assert
(False
6926 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6927 Set_Node1_With_Parent
(N
, Val
);
6928 end Set_Triggering_Statement
;
6930 procedure Set_TSS_Elist
6931 (N
: Node_Id
; Val
: Elist_Id
) is
6933 pragma Assert
(False
6934 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6935 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6938 procedure Set_Uneval_Old_Accept
6939 (N
: Node_Id
; Val
: Boolean := True) is
6941 pragma Assert
(False
6942 or else NT
(N
).Nkind
= N_Pragma
);
6944 end Set_Uneval_Old_Accept
;
6946 procedure Set_Uneval_Old_Warn
6947 (N
: Node_Id
; Val
: Boolean := True) is
6949 pragma Assert
(False
6950 or else NT
(N
).Nkind
= N_Pragma
);
6951 Set_Flag18
(N
, Val
);
6952 end Set_Uneval_Old_Warn
;
6954 procedure Set_Type_Definition
6955 (N
: Node_Id
; Val
: Node_Id
) is
6957 pragma Assert
(False
6958 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6959 Set_Node3_With_Parent
(N
, Val
);
6960 end Set_Type_Definition
;
6963 (N
: Node_Id
; Val
: Node_Id
) is
6965 pragma Assert
(False
6966 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6967 Set_Node2_With_Parent
(N
, Val
);
6970 procedure Set_Unknown_Discriminants_Present
6971 (N
: Node_Id
; Val
: Boolean := True) is
6973 pragma Assert
(False
6974 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6975 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6976 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6977 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6978 Set_Flag13
(N
, Val
);
6979 end Set_Unknown_Discriminants_Present
;
6981 procedure Set_Unreferenced_In_Spec
6982 (N
: Node_Id
; Val
: Boolean := True) is
6984 pragma Assert
(False
6985 or else NT
(N
).Nkind
= N_With_Clause
);
6987 end Set_Unreferenced_In_Spec
;
6989 procedure Set_Variant_Part
6990 (N
: Node_Id
; Val
: Node_Id
) is
6992 pragma Assert
(False
6993 or else NT
(N
).Nkind
= N_Component_List
);
6994 Set_Node4_With_Parent
(N
, Val
);
6995 end Set_Variant_Part
;
6997 procedure Set_Variants
6998 (N
: Node_Id
; Val
: List_Id
) is
7000 pragma Assert
(False
7001 or else NT
(N
).Nkind
= N_Variant_Part
);
7002 Set_List1_With_Parent
(N
, Val
);
7005 procedure Set_Visible_Declarations
7006 (N
: Node_Id
; Val
: List_Id
) is
7008 pragma Assert
(False
7009 or else NT
(N
).Nkind
= N_Package_Specification
7010 or else NT
(N
).Nkind
= N_Protected_Definition
7011 or else NT
(N
).Nkind
= N_Task_Definition
);
7012 Set_List2_With_Parent
(N
, Val
);
7013 end Set_Visible_Declarations
;
7015 procedure Set_Uninitialized_Variable
7016 (N
: Node_Id
; Val
: Node_Id
) is
7018 pragma Assert
(False
7019 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
7020 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
7022 end Set_Uninitialized_Variable
;
7024 procedure Set_Used_Operations
7025 (N
: Node_Id
; Val
: Elist_Id
) is
7027 pragma Assert
(False
7028 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
7029 Set_Elist2
(N
, Val
);
7030 end Set_Used_Operations
;
7032 procedure Set_Was_Attribute_Reference
7033 (N
: Node_Id
; Val
: Boolean := True) is
7035 pragma Assert
(False
7036 or else NT
(N
).Nkind
= N_Subprogram_Body
);
7038 end Set_Was_Attribute_Reference
;
7040 procedure Set_Was_Expression_Function
7041 (N
: Node_Id
; Val
: Boolean := True) is
7043 pragma Assert
(False
7044 or else NT
(N
).Nkind
= N_Subprogram_Body
);
7045 Set_Flag18
(N
, Val
);
7046 end Set_Was_Expression_Function
;
7048 procedure Set_Was_Originally_Stub
7049 (N
: Node_Id
; Val
: Boolean := True) is
7051 pragma Assert
(False
7052 or else NT
(N
).Nkind
= N_Package_Body
7053 or else NT
(N
).Nkind
= N_Protected_Body
7054 or else NT
(N
).Nkind
= N_Subprogram_Body
7055 or else NT
(N
).Nkind
= N_Task_Body
);
7056 Set_Flag13
(N
, Val
);
7057 end Set_Was_Originally_Stub
;
7059 -------------------------
7060 -- Iterator Procedures --
7061 -------------------------
7063 procedure Next_Entity
(N
: in out Node_Id
) is
7065 N
:= Next_Entity
(N
);
7068 procedure Next_Named_Actual
(N
: in out Node_Id
) is
7070 N
:= Next_Named_Actual
(N
);
7071 end Next_Named_Actual
;
7073 procedure Next_Rep_Item
(N
: in out Node_Id
) is
7075 N
:= Next_Rep_Item
(N
);
7078 procedure Next_Use_Clause
(N
: in out Node_Id
) is
7080 N
:= Next_Use_Clause
(N
);
7081 end Next_Use_Clause
;
7087 function End_Location
(N
: Node_Id
) return Source_Ptr
is
7088 L
: constant Uint
:= End_Span
(N
);
7093 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
7097 --------------------
7098 -- Get_Pragma_Arg --
7099 --------------------
7101 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
7103 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
7104 return Expression
(Arg
);
7110 ----------------------
7111 -- Set_End_Location --
7112 ----------------------
7114 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
7117 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
7118 end Set_End_Location
;
7127 V2
: Node_Kind
) return Boolean
7130 return T
= V1
or else
7138 V3
: Node_Kind
) return Boolean
7141 return T
= V1
or else
7151 V4
: Node_Kind
) return Boolean
7154 return T
= V1
or else
7166 V5
: Node_Kind
) return Boolean
7169 return T
= V1
or else
7183 V6
: Node_Kind
) return Boolean
7186 return T
= V1
or else
7202 V7
: Node_Kind
) return Boolean
7205 return T
= V1
or else
7223 V8
: Node_Kind
) return Boolean
7226 return T
= V1
or else
7246 V9
: Node_Kind
) return Boolean
7249 return T
= V1
or else
7271 V10
: Node_Kind
) return Boolean
7274 return T
= V1
or else
7298 V11
: Node_Kind
) return Boolean
7301 return T
= V1
or else
7331 V16
: Node_Kind
) return Boolean
7334 return T
= V1
or else
7352 --------------------------
7353 -- Pragma_Name_Unmapped --
7354 --------------------------
7356 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7358 return Chars
(Pragma_Identifier
(N
));
7359 end Pragma_Name_Unmapped
;
7361 ---------------------
7362 -- Map_Pragma_Name --
7363 ---------------------
7365 -- We don't want to introduce a dependence on some hash table package or
7366 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7367 -- search. Linear search is plenty efficient, given that we don't expect
7368 -- more than a couple of entries in the mapping.
7370 type Name_Pair
is record
7375 type Pragma_Map_Index
is range 1 .. 100;
7376 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7377 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7379 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7381 if Last_Pair
= Pragma_Map
'Last then
7382 raise Too_Many_Pragma_Mappings
;
7385 Last_Pair
:= Last_Pair
+ 1;
7386 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7387 end Map_Pragma_Name
;
7393 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7394 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7396 for J
in Pragma_Map
'First .. Last_Pair
loop
7397 if Result
= Pragma_Map
(J
).Key
then
7398 return Pragma_Map
(J
).Value
;