1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2014, 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 function ABE_Is_Certain
61 (N
: Node_Id
) return Boolean is
64 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
65 or else NT
(N
).Nkind
= N_Function_Call
66 or else NT
(N
).Nkind
= N_Function_Instantiation
67 or else NT
(N
).Nkind
= N_Package_Instantiation
68 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
69 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
73 function Abort_Present
74 (N
: Node_Id
) return Boolean is
77 or else NT
(N
).Nkind
= N_Requeue_Statement
);
81 function Abortable_Part
82 (N
: Node_Id
) return Node_Id
is
85 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
89 function Abstract_Present
90 (N
: Node_Id
) return Boolean is
93 or else NT
(N
).Nkind
= N_Derived_Type_Definition
94 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
95 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
96 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
97 or else NT
(N
).Nkind
= N_Private_Type_Declaration
98 or else NT
(N
).Nkind
= N_Record_Definition
);
100 end Abstract_Present
;
102 function Accept_Handler_Records
103 (N
: Node_Id
) return List_Id
is
106 or else NT
(N
).Nkind
= N_Accept_Alternative
);
108 end Accept_Handler_Records
;
110 function Accept_Statement
111 (N
: Node_Id
) return Node_Id
is
114 or else NT
(N
).Nkind
= N_Accept_Alternative
);
116 end Accept_Statement
;
118 function Access_Definition
119 (N
: Node_Id
) return Node_Id
is
122 or else NT
(N
).Nkind
= N_Component_Definition
123 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
124 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
126 end Access_Definition
;
128 function Access_To_Subprogram_Definition
129 (N
: Node_Id
) return Node_Id
is
132 or else NT
(N
).Nkind
= N_Access_Definition
);
134 end Access_To_Subprogram_Definition
;
136 function Access_Types_To_Process
137 (N
: Node_Id
) return Elist_Id
is
140 or else NT
(N
).Nkind
= N_Freeze_Entity
);
142 end Access_Types_To_Process
;
145 (N
: Node_Id
) return List_Id
is
148 or else NT
(N
).Nkind
= N_And_Then
149 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
150 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
151 or else NT
(N
).Nkind
= N_Compound_Statement
152 or else NT
(N
).Nkind
= N_Expression_With_Actions
153 or else NT
(N
).Nkind
= N_Freeze_Entity
154 or else NT
(N
).Nkind
= N_Or_Else
);
158 function Activation_Chain_Entity
159 (N
: Node_Id
) return Node_Id
is
162 or else NT
(N
).Nkind
= N_Block_Statement
163 or else NT
(N
).Nkind
= N_Entry_Body
164 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
165 or else NT
(N
).Nkind
= N_Package_Declaration
166 or else NT
(N
).Nkind
= N_Subprogram_Body
167 or else NT
(N
).Nkind
= N_Task_Body
);
169 end Activation_Chain_Entity
;
171 function Acts_As_Spec
172 (N
: Node_Id
) return Boolean is
175 or else NT
(N
).Nkind
= N_Compilation_Unit
176 or else NT
(N
).Nkind
= N_Subprogram_Body
);
180 function Actual_Designated_Subtype
181 (N
: Node_Id
) return Node_Id
is
184 or else NT
(N
).Nkind
= N_Explicit_Dereference
185 or else NT
(N
).Nkind
= N_Free_Statement
);
187 end Actual_Designated_Subtype
;
189 function Address_Warning_Posted
190 (N
: Node_Id
) return Boolean is
193 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
195 end Address_Warning_Posted
;
197 function Aggregate_Bounds
198 (N
: Node_Id
) return Node_Id
is
201 or else NT
(N
).Nkind
= N_Aggregate
);
203 end Aggregate_Bounds
;
205 function Aliased_Present
206 (N
: Node_Id
) return Boolean is
209 or else NT
(N
).Nkind
= N_Component_Definition
210 or else NT
(N
).Nkind
= N_Object_Declaration
211 or else NT
(N
).Nkind
= N_Parameter_Specification
);
216 (N
: Node_Id
) return Boolean is
219 or else NT
(N
).Nkind
= N_Others_Choice
);
224 (N
: Node_Id
) return Boolean is
227 or else NT
(N
).Nkind
= N_Access_Definition
228 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
229 or else NT
(N
).Nkind
= N_Quantified_Expression
230 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
234 function Alternatives
235 (N
: Node_Id
) return List_Id
is
238 or else NT
(N
).Nkind
= N_Case_Expression
239 or else NT
(N
).Nkind
= N_Case_Statement
240 or else NT
(N
).Nkind
= N_In
241 or else NT
(N
).Nkind
= N_Not_In
);
245 function Ancestor_Part
246 (N
: Node_Id
) return Node_Id
is
249 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
253 function Atomic_Sync_Required
254 (N
: Node_Id
) return Boolean is
257 or else NT
(N
).Nkind
= N_Expanded_Name
258 or else NT
(N
).Nkind
= N_Explicit_Dereference
259 or else NT
(N
).Nkind
= N_Identifier
260 or else NT
(N
).Nkind
= N_Indexed_Component
261 or else NT
(N
).Nkind
= N_Selected_Component
);
263 end Atomic_Sync_Required
;
265 function Array_Aggregate
266 (N
: Node_Id
) return Node_Id
is
269 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
273 function Aspect_Rep_Item
274 (N
: Node_Id
) return Node_Id
is
277 or else NT
(N
).Nkind
= N_Aspect_Specification
);
281 function Assignment_OK
282 (N
: Node_Id
) return Boolean is
285 or else NT
(N
).Nkind
= N_Object_Declaration
286 or else NT
(N
).Nkind
in N_Subexpr
);
290 function Associated_Node
291 (N
: Node_Id
) return Node_Id
is
294 or else NT
(N
).Nkind
in N_Has_Entity
295 or else NT
(N
).Nkind
= N_Aggregate
296 or else NT
(N
).Nkind
= N_Extension_Aggregate
297 or else NT
(N
).Nkind
= N_Selected_Component
);
302 (N
: Node_Id
) return Node_Id
is
305 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
309 function Attribute_Name
310 (N
: Node_Id
) return Name_Id
is
313 or else NT
(N
).Nkind
= N_Attribute_Reference
);
317 function Aux_Decls_Node
318 (N
: Node_Id
) return Node_Id
is
321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
325 function Backwards_OK
326 (N
: Node_Id
) return Boolean is
329 or else NT
(N
).Nkind
= N_Assignment_Statement
);
333 function Bad_Is_Detected
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Subprogram_Body
);
341 function Body_Required
342 (N
: Node_Id
) return Boolean is
345 or else NT
(N
).Nkind
= N_Compilation_Unit
);
349 function Body_To_Inline
350 (N
: Node_Id
) return Node_Id
is
353 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
358 (N
: Node_Id
) return Boolean is
361 or else NT
(N
).Nkind
= N_Component_Association
362 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
363 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
364 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
365 or else NT
(N
).Nkind
= N_Generic_Association
);
370 (N
: Node_Id
) return Boolean is
373 or else NT
(N
).Nkind
= N_Extended_Return_Statement
374 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
378 function Char_Literal_Value
379 (N
: Node_Id
) return Uint
is
382 or else NT
(N
).Nkind
= N_Character_Literal
);
384 end Char_Literal_Value
;
387 (N
: Node_Id
) return Name_Id
is
390 or else NT
(N
).Nkind
in N_Has_Chars
);
394 function Check_Address_Alignment
395 (N
: Node_Id
) return Boolean is
398 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
400 end Check_Address_Alignment
;
402 function Choice_Parameter
403 (N
: Node_Id
) return Node_Id
is
406 or else NT
(N
).Nkind
= N_Exception_Handler
);
408 end Choice_Parameter
;
411 (N
: Node_Id
) return List_Id
is
414 or else NT
(N
).Nkind
= N_Component_Association
);
418 function Class_Present
419 (N
: Node_Id
) return Boolean is
422 or else NT
(N
).Nkind
= N_Aspect_Specification
423 or else NT
(N
).Nkind
= N_Pragma
);
427 function Classifications
428 (N
: Node_Id
) return Node_Id
is
431 or else NT
(N
).Nkind
= N_Contract
);
435 function Cleanup_Actions
436 (N
: Node_Id
) return List_Id
is
439 or else NT
(N
).Nkind
= N_Block_Statement
);
443 function Comes_From_Extended_Return_Statement
444 (N
: Node_Id
) return Boolean is
447 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
449 end Comes_From_Extended_Return_Statement
;
451 function Compile_Time_Known_Aggregate
452 (N
: Node_Id
) return Boolean is
455 or else NT
(N
).Nkind
= N_Aggregate
);
457 end Compile_Time_Known_Aggregate
;
459 function Component_Associations
460 (N
: Node_Id
) return List_Id
is
463 or else NT
(N
).Nkind
= N_Aggregate
464 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
466 end Component_Associations
;
468 function Component_Clauses
469 (N
: Node_Id
) return List_Id
is
472 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
474 end Component_Clauses
;
476 function Component_Definition
477 (N
: Node_Id
) return Node_Id
is
480 or else NT
(N
).Nkind
= N_Component_Declaration
481 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
482 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
484 end Component_Definition
;
486 function Component_Items
487 (N
: Node_Id
) return List_Id
is
490 or else NT
(N
).Nkind
= N_Component_List
);
494 function Component_List
495 (N
: Node_Id
) return Node_Id
is
498 or else NT
(N
).Nkind
= N_Record_Definition
499 or else NT
(N
).Nkind
= N_Variant
);
503 function Component_Name
504 (N
: Node_Id
) return Node_Id
is
507 or else NT
(N
).Nkind
= N_Component_Clause
);
511 function Componentwise_Assignment
512 (N
: Node_Id
) return Boolean is
515 or else NT
(N
).Nkind
= N_Assignment_Statement
);
517 end Componentwise_Assignment
;
520 (N
: Node_Id
) return Node_Id
is
523 or else NT
(N
).Nkind
= N_Accept_Alternative
524 or else NT
(N
).Nkind
= N_Delay_Alternative
525 or else NT
(N
).Nkind
= N_Elsif_Part
526 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
527 or else NT
(N
).Nkind
= N_Exit_Statement
528 or else NT
(N
).Nkind
= N_If_Statement
529 or else NT
(N
).Nkind
= N_Iteration_Scheme
530 or else NT
(N
).Nkind
= N_Quantified_Expression
531 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
532 or else NT
(N
).Nkind
= N_Raise_Program_Error
533 or else NT
(N
).Nkind
= N_Raise_Storage_Error
534 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
538 function Condition_Actions
539 (N
: Node_Id
) return List_Id
is
542 or else NT
(N
).Nkind
= N_Elsif_Part
543 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
545 end Condition_Actions
;
547 function Config_Pragmas
548 (N
: Node_Id
) return List_Id
is
551 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
555 function Constant_Present
556 (N
: Node_Id
) return Boolean is
559 or else NT
(N
).Nkind
= N_Access_Definition
560 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
561 or else NT
(N
).Nkind
= N_Object_Declaration
);
563 end Constant_Present
;
566 (N
: Node_Id
) return Node_Id
is
569 or else NT
(N
).Nkind
= N_Subtype_Indication
);
574 (N
: Node_Id
) return List_Id
is
577 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
581 function Context_Installed
582 (N
: Node_Id
) return Boolean is
585 or else NT
(N
).Nkind
= N_With_Clause
);
587 end Context_Installed
;
589 function Context_Items
590 (N
: Node_Id
) return List_Id
is
593 or else NT
(N
).Nkind
= N_Compilation_Unit
);
597 function Context_Pending
598 (N
: Node_Id
) return Boolean is
601 or else NT
(N
).Nkind
= N_Compilation_Unit
);
605 function Contract_Test_Cases
606 (N
: Node_Id
) return Node_Id
is
609 or else NT
(N
).Nkind
= N_Contract
);
611 end Contract_Test_Cases
;
613 function Controlling_Argument
614 (N
: Node_Id
) return Node_Id
is
617 or else NT
(N
).Nkind
= N_Function_Call
618 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
620 end Controlling_Argument
;
622 function Conversion_OK
623 (N
: Node_Id
) return Boolean is
626 or else NT
(N
).Nkind
= N_Type_Conversion
);
630 function Convert_To_Return_False
631 (N
: Node_Id
) return Boolean is
634 or else NT
(N
).Nkind
= N_Raise_Expression
);
636 end Convert_To_Return_False
;
638 function Corresponding_Aspect
639 (N
: Node_Id
) return Node_Id
is
642 or else NT
(N
).Nkind
= N_Pragma
);
644 end Corresponding_Aspect
;
646 function Corresponding_Body
647 (N
: Node_Id
) return Node_Id
is
650 or else NT
(N
).Nkind
= N_Entry_Declaration
651 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
652 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
653 or else NT
(N
).Nkind
= N_Package_Body_Stub
654 or else NT
(N
).Nkind
= N_Package_Declaration
655 or else NT
(N
).Nkind
= N_Protected_Body_Stub
656 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
657 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
658 or else NT
(N
).Nkind
= N_Subprogram_Declaration
659 or else NT
(N
).Nkind
= N_Task_Body_Stub
660 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
662 end Corresponding_Body
;
664 function Corresponding_Formal_Spec
665 (N
: Node_Id
) return Node_Id
is
668 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
670 end Corresponding_Formal_Spec
;
672 function Corresponding_Generic_Association
673 (N
: Node_Id
) return Node_Id
is
676 or else NT
(N
).Nkind
= N_Object_Declaration
677 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
679 end Corresponding_Generic_Association
;
681 function Corresponding_Integer_Value
682 (N
: Node_Id
) return Uint
is
685 or else NT
(N
).Nkind
= N_Real_Literal
);
687 end Corresponding_Integer_Value
;
689 function Corresponding_Spec
690 (N
: Node_Id
) return Node_Id
is
693 or else NT
(N
).Nkind
= N_Expression_Function
694 or else NT
(N
).Nkind
= N_Package_Body
695 or else NT
(N
).Nkind
= N_Protected_Body
696 or else NT
(N
).Nkind
= N_Subprogram_Body
697 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
698 or else NT
(N
).Nkind
= N_Task_Body
699 or else NT
(N
).Nkind
= N_With_Clause
);
701 end Corresponding_Spec
;
703 function Corresponding_Spec_Of_Stub
704 (N
: Node_Id
) return Entity_Id
is
707 or else NT
(N
).Nkind
= N_Package_Body_Stub
708 or else NT
(N
).Nkind
= N_Protected_Body_Stub
709 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
710 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
712 end Corresponding_Spec_Of_Stub
;
714 function Corresponding_Stub
715 (N
: Node_Id
) return Node_Id
is
718 or else NT
(N
).Nkind
= N_Subunit
);
720 end Corresponding_Stub
;
722 function Dcheck_Function
723 (N
: Node_Id
) return Entity_Id
is
726 or else NT
(N
).Nkind
= N_Variant
);
730 function Declarations
731 (N
: Node_Id
) return List_Id
is
734 or else NT
(N
).Nkind
= N_Accept_Statement
735 or else NT
(N
).Nkind
= N_Block_Statement
736 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
737 or else NT
(N
).Nkind
= N_Entry_Body
738 or else NT
(N
).Nkind
= N_Package_Body
739 or else NT
(N
).Nkind
= N_Protected_Body
740 or else NT
(N
).Nkind
= N_Subprogram_Body
741 or else NT
(N
).Nkind
= N_Task_Body
);
745 function Default_Expression
746 (N
: Node_Id
) return Node_Id
is
749 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
750 or else NT
(N
).Nkind
= N_Parameter_Specification
);
752 end Default_Expression
;
754 function Default_Storage_Pool
755 (N
: Node_Id
) return Node_Id
is
758 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
760 end Default_Storage_Pool
;
762 function Default_Name
763 (N
: Node_Id
) return Node_Id
is
766 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
767 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
771 function Defining_Identifier
772 (N
: Node_Id
) return Entity_Id
is
775 or else NT
(N
).Nkind
= N_Component_Declaration
776 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
777 or else NT
(N
).Nkind
= N_Discriminant_Specification
778 or else NT
(N
).Nkind
= N_Entry_Body
779 or else NT
(N
).Nkind
= N_Entry_Declaration
780 or else NT
(N
).Nkind
= N_Entry_Index_Specification
781 or else NT
(N
).Nkind
= N_Exception_Declaration
782 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
783 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
784 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
785 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
786 or else NT
(N
).Nkind
= N_Full_Type_Declaration
787 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
788 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
789 or else NT
(N
).Nkind
= N_Iterator_Specification
790 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
791 or else NT
(N
).Nkind
= N_Number_Declaration
792 or else NT
(N
).Nkind
= N_Object_Declaration
793 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
794 or else NT
(N
).Nkind
= N_Package_Body_Stub
795 or else NT
(N
).Nkind
= N_Parameter_Specification
796 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
797 or else NT
(N
).Nkind
= N_Private_Type_Declaration
798 or else NT
(N
).Nkind
= N_Protected_Body
799 or else NT
(N
).Nkind
= N_Protected_Body_Stub
800 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
801 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
802 or else NT
(N
).Nkind
= N_Single_Task_Declaration
803 or else NT
(N
).Nkind
= N_Subtype_Declaration
804 or else NT
(N
).Nkind
= N_Task_Body
805 or else NT
(N
).Nkind
= N_Task_Body_Stub
806 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
808 end Defining_Identifier
;
810 function Defining_Unit_Name
811 (N
: Node_Id
) return Node_Id
is
814 or else NT
(N
).Nkind
= N_Function_Instantiation
815 or else NT
(N
).Nkind
= N_Function_Specification
816 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
817 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
818 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
819 or else NT
(N
).Nkind
= N_Package_Body
820 or else NT
(N
).Nkind
= N_Package_Instantiation
821 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
822 or else NT
(N
).Nkind
= N_Package_Specification
823 or else NT
(N
).Nkind
= N_Procedure_Instantiation
824 or else NT
(N
).Nkind
= N_Procedure_Specification
);
826 end Defining_Unit_Name
;
828 function Delay_Alternative
829 (N
: Node_Id
) return Node_Id
is
832 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
834 end Delay_Alternative
;
836 function Delay_Statement
837 (N
: Node_Id
) return Node_Id
is
840 or else NT
(N
).Nkind
= N_Delay_Alternative
);
844 function Delta_Expression
845 (N
: Node_Id
) return Node_Id
is
848 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
849 or else NT
(N
).Nkind
= N_Delta_Constraint
850 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
852 end Delta_Expression
;
854 function Digits_Expression
855 (N
: Node_Id
) return Node_Id
is
858 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
859 or else NT
(N
).Nkind
= N_Digits_Constraint
860 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
862 end Digits_Expression
;
864 function Discr_Check_Funcs_Built
865 (N
: Node_Id
) return Boolean is
868 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
870 end Discr_Check_Funcs_Built
;
872 function Discrete_Choices
873 (N
: Node_Id
) return List_Id
is
876 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
877 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
878 or else NT
(N
).Nkind
= N_Variant
);
880 end Discrete_Choices
;
882 function Discrete_Range
883 (N
: Node_Id
) return Node_Id
is
886 or else NT
(N
).Nkind
= N_Slice
);
890 function Discrete_Subtype_Definition
891 (N
: Node_Id
) return Node_Id
is
894 or else NT
(N
).Nkind
= N_Entry_Declaration
895 or else NT
(N
).Nkind
= N_Entry_Index_Specification
896 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
898 end Discrete_Subtype_Definition
;
900 function Discrete_Subtype_Definitions
901 (N
: Node_Id
) return List_Id
is
904 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
906 end Discrete_Subtype_Definitions
;
908 function Discriminant_Specifications
909 (N
: Node_Id
) return List_Id
is
912 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
913 or else NT
(N
).Nkind
= N_Full_Type_Declaration
914 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
915 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
916 or else NT
(N
).Nkind
= N_Private_Type_Declaration
917 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
918 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
920 end Discriminant_Specifications
;
922 function Discriminant_Type
923 (N
: Node_Id
) return Node_Id
is
926 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
928 end Discriminant_Type
;
930 function Do_Accessibility_Check
931 (N
: Node_Id
) return Boolean is
934 or else NT
(N
).Nkind
= N_Parameter_Specification
);
936 end Do_Accessibility_Check
;
938 function Do_Discriminant_Check
939 (N
: Node_Id
) return Boolean is
942 or else NT
(N
).Nkind
= N_Assignment_Statement
943 or else NT
(N
).Nkind
= N_Selected_Component
944 or else NT
(N
).Nkind
= N_Type_Conversion
);
946 end Do_Discriminant_Check
;
948 function Do_Division_Check
949 (N
: Node_Id
) return Boolean is
952 or else NT
(N
).Nkind
= N_Op_Divide
953 or else NT
(N
).Nkind
= N_Op_Mod
954 or else NT
(N
).Nkind
= N_Op_Rem
);
956 end Do_Division_Check
;
958 function Do_Length_Check
959 (N
: Node_Id
) return Boolean is
962 or else NT
(N
).Nkind
= N_Assignment_Statement
963 or else NT
(N
).Nkind
= N_Op_And
964 or else NT
(N
).Nkind
= N_Op_Or
965 or else NT
(N
).Nkind
= N_Op_Xor
966 or else NT
(N
).Nkind
= N_Type_Conversion
);
970 function Do_Overflow_Check
971 (N
: Node_Id
) return Boolean is
974 or else NT
(N
).Nkind
in N_Op
975 or else NT
(N
).Nkind
= N_Attribute_Reference
976 or else NT
(N
).Nkind
= N_Case_Expression
977 or else NT
(N
).Nkind
= N_If_Expression
978 or else NT
(N
).Nkind
= N_Type_Conversion
);
980 end Do_Overflow_Check
;
982 function Do_Range_Check
983 (N
: Node_Id
) return Boolean is
986 or else NT
(N
).Nkind
in N_Subexpr
);
990 function Do_Storage_Check
991 (N
: Node_Id
) return Boolean is
994 or else NT
(N
).Nkind
= N_Allocator
995 or else NT
(N
).Nkind
= N_Subprogram_Body
);
997 end Do_Storage_Check
;
999 function Do_Tag_Check
1000 (N
: Node_Id
) return Boolean is
1002 pragma Assert
(False
1003 or else NT
(N
).Nkind
= N_Assignment_Statement
1004 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1005 or else NT
(N
).Nkind
= N_Function_Call
1006 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1007 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1008 or else NT
(N
).Nkind
= N_Type_Conversion
);
1012 function Elaborate_All_Desirable
1013 (N
: Node_Id
) return Boolean is
1015 pragma Assert
(False
1016 or else NT
(N
).Nkind
= N_With_Clause
);
1018 end Elaborate_All_Desirable
;
1020 function Elaborate_All_Present
1021 (N
: Node_Id
) return Boolean is
1023 pragma Assert
(False
1024 or else NT
(N
).Nkind
= N_With_Clause
);
1026 end Elaborate_All_Present
;
1028 function Elaborate_Desirable
1029 (N
: Node_Id
) return Boolean is
1031 pragma Assert
(False
1032 or else NT
(N
).Nkind
= N_With_Clause
);
1034 end Elaborate_Desirable
;
1036 function Elaborate_Present
1037 (N
: Node_Id
) return Boolean is
1039 pragma Assert
(False
1040 or else NT
(N
).Nkind
= N_With_Clause
);
1042 end Elaborate_Present
;
1044 function Elaboration_Boolean
1045 (N
: Node_Id
) return Node_Id
is
1047 pragma Assert
(False
1048 or else NT
(N
).Nkind
= N_Function_Specification
1049 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1051 end Elaboration_Boolean
;
1053 function Else_Actions
1054 (N
: Node_Id
) return List_Id
is
1056 pragma Assert
(False
1057 or else NT
(N
).Nkind
= N_If_Expression
);
1061 function Else_Statements
1062 (N
: Node_Id
) return List_Id
is
1064 pragma Assert
(False
1065 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1066 or else NT
(N
).Nkind
= N_If_Statement
1067 or else NT
(N
).Nkind
= N_Selective_Accept
);
1069 end Else_Statements
;
1071 function Elsif_Parts
1072 (N
: Node_Id
) return List_Id
is
1074 pragma Assert
(False
1075 or else NT
(N
).Nkind
= N_If_Statement
);
1079 function Enclosing_Variant
1080 (N
: Node_Id
) return Node_Id
is
1082 pragma Assert
(False
1083 or else NT
(N
).Nkind
= N_Variant
);
1085 end Enclosing_Variant
;
1088 (N
: Node_Id
) return Node_Id
is
1090 pragma Assert
(False
1091 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1092 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1093 or else NT
(N
).Nkind
= N_Loop_Statement
1094 or else NT
(N
).Nkind
= N_Package_Specification
1095 or else NT
(N
).Nkind
= N_Protected_Body
1096 or else NT
(N
).Nkind
= N_Protected_Definition
1097 or else NT
(N
).Nkind
= N_Record_Definition
1098 or else NT
(N
).Nkind
= N_Task_Definition
);
1103 (N
: Node_Id
) return Uint
is
1105 pragma Assert
(False
1106 or else NT
(N
).Nkind
= N_Case_Statement
1107 or else NT
(N
).Nkind
= N_If_Statement
);
1112 (N
: Node_Id
) return Node_Id
is
1114 pragma Assert
(False
1115 or else NT
(N
).Nkind
in N_Has_Entity
1116 or else NT
(N
).Nkind
= N_Aspect_Specification
1117 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1118 or else NT
(N
).Nkind
= N_Freeze_Entity
1119 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1123 function Entity_Or_Associated_Node
1124 (N
: Node_Id
) return Node_Id
is
1126 pragma Assert
(False
1127 or else NT
(N
).Nkind
in N_Has_Entity
1128 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1130 end Entity_Or_Associated_Node
;
1132 function Entry_Body_Formal_Part
1133 (N
: Node_Id
) return Node_Id
is
1135 pragma Assert
(False
1136 or else NT
(N
).Nkind
= N_Entry_Body
);
1138 end Entry_Body_Formal_Part
;
1140 function Entry_Call_Alternative
1141 (N
: Node_Id
) return Node_Id
is
1143 pragma Assert
(False
1144 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1145 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1147 end Entry_Call_Alternative
;
1149 function Entry_Call_Statement
1150 (N
: Node_Id
) return Node_Id
is
1152 pragma Assert
(False
1153 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1155 end Entry_Call_Statement
;
1157 function Entry_Direct_Name
1158 (N
: Node_Id
) return Node_Id
is
1160 pragma Assert
(False
1161 or else NT
(N
).Nkind
= N_Accept_Statement
);
1163 end Entry_Direct_Name
;
1165 function Entry_Index
1166 (N
: Node_Id
) return Node_Id
is
1168 pragma Assert
(False
1169 or else NT
(N
).Nkind
= N_Accept_Statement
);
1173 function Entry_Index_Specification
1174 (N
: Node_Id
) return Node_Id
is
1176 pragma Assert
(False
1177 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1179 end Entry_Index_Specification
;
1182 (N
: Node_Id
) return Node_Id
is
1184 pragma Assert
(False
1185 or else NT
(N
).Nkind
in N_Has_Etype
);
1189 function Exception_Choices
1190 (N
: Node_Id
) return List_Id
is
1192 pragma Assert
(False
1193 or else NT
(N
).Nkind
= N_Exception_Handler
);
1195 end Exception_Choices
;
1197 function Exception_Handlers
1198 (N
: Node_Id
) return List_Id
is
1200 pragma Assert
(False
1201 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1203 end Exception_Handlers
;
1205 function Exception_Junk
1206 (N
: Node_Id
) return Boolean is
1208 pragma Assert
(False
1209 or else NT
(N
).Nkind
= N_Block_Statement
1210 or else NT
(N
).Nkind
= N_Goto_Statement
1211 or else NT
(N
).Nkind
= N_Label
1212 or else NT
(N
).Nkind
= N_Object_Declaration
1213 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1217 function Exception_Label
1218 (N
: Node_Id
) return Node_Id
is
1220 pragma Assert
(False
1221 or else NT
(N
).Nkind
= N_Exception_Handler
1222 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1223 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1224 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1226 end Exception_Label
;
1228 function Expansion_Delayed
1229 (N
: Node_Id
) return Boolean is
1231 pragma Assert
(False
1232 or else NT
(N
).Nkind
= N_Aggregate
1233 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1235 end Expansion_Delayed
;
1237 function Explicit_Actual_Parameter
1238 (N
: Node_Id
) return Node_Id
is
1240 pragma Assert
(False
1241 or else NT
(N
).Nkind
= N_Parameter_Association
);
1243 end Explicit_Actual_Parameter
;
1245 function Explicit_Generic_Actual_Parameter
1246 (N
: Node_Id
) return Node_Id
is
1248 pragma Assert
(False
1249 or else NT
(N
).Nkind
= N_Generic_Association
);
1251 end Explicit_Generic_Actual_Parameter
;
1254 (N
: Node_Id
) return Node_Id
is
1256 pragma Assert
(False
1257 or else NT
(N
).Nkind
= N_Allocator
1258 or else NT
(N
).Nkind
= N_Aspect_Specification
1259 or else NT
(N
).Nkind
= N_Assignment_Statement
1260 or else NT
(N
).Nkind
= N_At_Clause
1261 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1262 or else NT
(N
).Nkind
= N_Case_Expression
1263 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1264 or else NT
(N
).Nkind
= N_Case_Statement
1265 or else NT
(N
).Nkind
= N_Code_Statement
1266 or else NT
(N
).Nkind
= N_Component_Association
1267 or else NT
(N
).Nkind
= N_Component_Declaration
1268 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1269 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1270 or else NT
(N
).Nkind
= N_Discriminant_Association
1271 or else NT
(N
).Nkind
= N_Discriminant_Specification
1272 or else NT
(N
).Nkind
= N_Exception_Declaration
1273 or else NT
(N
).Nkind
= N_Expression_Function
1274 or else NT
(N
).Nkind
= N_Expression_With_Actions
1275 or else NT
(N
).Nkind
= N_Free_Statement
1276 or else NT
(N
).Nkind
= N_Mod_Clause
1277 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1278 or else NT
(N
).Nkind
= N_Number_Declaration
1279 or else NT
(N
).Nkind
= N_Object_Declaration
1280 or else NT
(N
).Nkind
= N_Parameter_Specification
1281 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1282 or else NT
(N
).Nkind
= N_Qualified_Expression
1283 or else NT
(N
).Nkind
= N_Raise_Expression
1284 or else NT
(N
).Nkind
= N_Raise_Statement
1285 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1286 or else NT
(N
).Nkind
= N_Type_Conversion
1287 or else NT
(N
).Nkind
= N_Unchecked_Expression
1288 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1292 function Expressions
1293 (N
: Node_Id
) return List_Id
is
1295 pragma Assert
(False
1296 or else NT
(N
).Nkind
= N_Aggregate
1297 or else NT
(N
).Nkind
= N_Attribute_Reference
1298 or else NT
(N
).Nkind
= N_Extension_Aggregate
1299 or else NT
(N
).Nkind
= N_If_Expression
1300 or else NT
(N
).Nkind
= N_Indexed_Component
);
1305 (N
: Node_Id
) return Node_Id
is
1307 pragma Assert
(False
1308 or else NT
(N
).Nkind
= N_Component_Clause
);
1312 function First_Inlined_Subprogram
1313 (N
: Node_Id
) return Entity_Id
is
1315 pragma Assert
(False
1316 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1318 end First_Inlined_Subprogram
;
1321 (N
: Node_Id
) return Boolean is
1323 pragma Assert
(False
1324 or else NT
(N
).Nkind
= N_With_Clause
);
1328 function First_Named_Actual
1329 (N
: Node_Id
) return Node_Id
is
1331 pragma Assert
(False
1332 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1333 or else NT
(N
).Nkind
= N_Function_Call
1334 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1336 end First_Named_Actual
;
1338 function First_Real_Statement
1339 (N
: Node_Id
) return Node_Id
is
1341 pragma Assert
(False
1342 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1344 end First_Real_Statement
;
1346 function First_Subtype_Link
1347 (N
: Node_Id
) return Entity_Id
is
1349 pragma Assert
(False
1350 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1352 end First_Subtype_Link
;
1354 function Float_Truncate
1355 (N
: Node_Id
) return Boolean is
1357 pragma Assert
(False
1358 or else NT
(N
).Nkind
= N_Type_Conversion
);
1362 function Formal_Type_Definition
1363 (N
: Node_Id
) return Node_Id
is
1365 pragma Assert
(False
1366 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1368 end Formal_Type_Definition
;
1370 function Forwards_OK
1371 (N
: Node_Id
) return Boolean is
1373 pragma Assert
(False
1374 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1378 function From_Aspect_Specification
1379 (N
: Node_Id
) return Boolean is
1381 pragma Assert
(False
1382 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1383 or else NT
(N
).Nkind
= N_Pragma
);
1385 end From_Aspect_Specification
;
1387 function From_At_End
1388 (N
: Node_Id
) return Boolean is
1390 pragma Assert
(False
1391 or else NT
(N
).Nkind
= N_Raise_Statement
);
1395 function From_At_Mod
1396 (N
: Node_Id
) return Boolean is
1398 pragma Assert
(False
1399 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1403 function From_Conditional_Expression
1404 (N
: Node_Id
) return Boolean is
1406 pragma Assert
(False
1407 or else NT
(N
).Nkind
= N_Case_Statement
1408 or else NT
(N
).Nkind
= N_If_Statement
);
1410 end From_Conditional_Expression
;
1412 function From_Default
1413 (N
: Node_Id
) return Boolean is
1415 pragma Assert
(False
1416 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1420 function Generalized_Indexing
1421 (N
: Node_Id
) return Node_Id
is
1423 pragma Assert
(False
1424 or else NT
(N
).Nkind
= N_Indexed_Component
);
1426 end Generalized_Indexing
;
1428 function Generic_Associations
1429 (N
: Node_Id
) return List_Id
is
1431 pragma Assert
(False
1432 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1433 or else NT
(N
).Nkind
= N_Function_Instantiation
1434 or else NT
(N
).Nkind
= N_Package_Instantiation
1435 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1437 end Generic_Associations
;
1439 function Generic_Formal_Declarations
1440 (N
: Node_Id
) return List_Id
is
1442 pragma Assert
(False
1443 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1444 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1446 end Generic_Formal_Declarations
;
1448 function Generic_Parent
1449 (N
: Node_Id
) return Node_Id
is
1451 pragma Assert
(False
1452 or else NT
(N
).Nkind
= N_Function_Specification
1453 or else NT
(N
).Nkind
= N_Package_Specification
1454 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1458 function Generic_Parent_Type
1459 (N
: Node_Id
) return Node_Id
is
1461 pragma Assert
(False
1462 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1464 end Generic_Parent_Type
;
1466 function Handled_Statement_Sequence
1467 (N
: Node_Id
) return Node_Id
is
1469 pragma Assert
(False
1470 or else NT
(N
).Nkind
= N_Accept_Statement
1471 or else NT
(N
).Nkind
= N_Block_Statement
1472 or else NT
(N
).Nkind
= N_Entry_Body
1473 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1474 or else NT
(N
).Nkind
= N_Package_Body
1475 or else NT
(N
).Nkind
= N_Subprogram_Body
1476 or else NT
(N
).Nkind
= N_Task_Body
);
1478 end Handled_Statement_Sequence
;
1480 function Handler_List_Entry
1481 (N
: Node_Id
) return Node_Id
is
1483 pragma Assert
(False
1484 or else NT
(N
).Nkind
= N_Object_Declaration
);
1486 end Handler_List_Entry
;
1488 function Has_Created_Identifier
1489 (N
: Node_Id
) return Boolean is
1491 pragma Assert
(False
1492 or else NT
(N
).Nkind
= N_Block_Statement
1493 or else NT
(N
).Nkind
= N_Loop_Statement
);
1495 end Has_Created_Identifier
;
1497 function Has_Dereference_Action
1498 (N
: Node_Id
) return Boolean is
1500 pragma Assert
(False
1501 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1503 end Has_Dereference_Action
;
1505 function Has_Dynamic_Length_Check
1506 (N
: Node_Id
) return Boolean is
1508 pragma Assert
(False
1509 or else NT
(N
).Nkind
in N_Subexpr
);
1511 end Has_Dynamic_Length_Check
;
1513 function Has_Dynamic_Range_Check
1514 (N
: Node_Id
) return Boolean is
1516 pragma Assert
(False
1517 or else NT
(N
).Nkind
= N_Subtype_Declaration
1518 or else NT
(N
).Nkind
in N_Subexpr
);
1520 end Has_Dynamic_Range_Check
;
1522 function Has_Init_Expression
1523 (N
: Node_Id
) return Boolean is
1525 pragma Assert
(False
1526 or else NT
(N
).Nkind
= N_Object_Declaration
);
1528 end Has_Init_Expression
;
1530 function Has_Local_Raise
1531 (N
: Node_Id
) return Boolean is
1533 pragma Assert
(False
1534 or else NT
(N
).Nkind
= N_Exception_Handler
);
1536 end Has_Local_Raise
;
1538 function Has_No_Elaboration_Code
1539 (N
: Node_Id
) return Boolean is
1541 pragma Assert
(False
1542 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1544 end Has_No_Elaboration_Code
;
1546 function Has_Pragma_Suppress_All
1547 (N
: Node_Id
) return Boolean is
1549 pragma Assert
(False
1550 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1552 end Has_Pragma_Suppress_All
;
1554 function Has_Private_View
1555 (N
: Node_Id
) return Boolean is
1557 pragma Assert
(False
1558 or else NT
(N
).Nkind
in N_Op
1559 or else NT
(N
).Nkind
= N_Character_Literal
1560 or else NT
(N
).Nkind
= N_Expanded_Name
1561 or else NT
(N
).Nkind
= N_Identifier
1562 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1564 end Has_Private_View
;
1566 function Has_Relative_Deadline_Pragma
1567 (N
: Node_Id
) return Boolean is
1569 pragma Assert
(False
1570 or else NT
(N
).Nkind
= N_Subprogram_Body
1571 or else NT
(N
).Nkind
= N_Task_Definition
);
1573 end Has_Relative_Deadline_Pragma
;
1575 function Has_Self_Reference
1576 (N
: Node_Id
) return Boolean is
1578 pragma Assert
(False
1579 or else NT
(N
).Nkind
= N_Aggregate
1580 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1582 end Has_Self_Reference
;
1584 function Has_SP_Choice
1585 (N
: Node_Id
) return Boolean is
1587 pragma Assert
(False
1588 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1589 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1590 or else NT
(N
).Nkind
= N_Variant
);
1594 function Has_Storage_Size_Pragma
1595 (N
: Node_Id
) return Boolean is
1597 pragma Assert
(False
1598 or else NT
(N
).Nkind
= N_Task_Definition
);
1600 end Has_Storage_Size_Pragma
;
1602 function Has_Wide_Character
1603 (N
: Node_Id
) return Boolean is
1605 pragma Assert
(False
1606 or else NT
(N
).Nkind
= N_String_Literal
);
1608 end Has_Wide_Character
;
1610 function Has_Wide_Wide_Character
1611 (N
: Node_Id
) return Boolean is
1613 pragma Assert
(False
1614 or else NT
(N
).Nkind
= N_String_Literal
);
1616 end Has_Wide_Wide_Character
;
1618 function Header_Size_Added
1619 (N
: Node_Id
) return Boolean is
1621 pragma Assert
(False
1622 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1624 end Header_Size_Added
;
1626 function Hidden_By_Use_Clause
1627 (N
: Node_Id
) return Elist_Id
is
1629 pragma Assert
(False
1630 or else NT
(N
).Nkind
= N_Use_Package_Clause
1631 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1633 end Hidden_By_Use_Clause
;
1636 (N
: Node_Id
) return Node_Id
is
1638 pragma Assert
(False
1639 or else NT
(N
).Nkind
= N_Range
1640 or else NT
(N
).Nkind
= N_Real_Range_Specification
1641 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1646 (N
: Node_Id
) return Node_Id
is
1648 pragma Assert
(False
1649 or else NT
(N
).Nkind
= N_Aspect_Specification
1650 or else NT
(N
).Nkind
= N_At_Clause
1651 or else NT
(N
).Nkind
= N_Block_Statement
1652 or else NT
(N
).Nkind
= N_Designator
1653 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1654 or else NT
(N
).Nkind
= N_Label
1655 or else NT
(N
).Nkind
= N_Loop_Statement
1656 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1660 function Implicit_With
1661 (N
: Node_Id
) return Boolean is
1663 pragma Assert
(False
1664 or else NT
(N
).Nkind
= N_With_Clause
);
1668 function Implicit_With_From_Instantiation
1669 (N
: Node_Id
) return Boolean is
1671 pragma Assert
(False
1672 or else NT
(N
).Nkind
= N_With_Clause
);
1674 end Implicit_With_From_Instantiation
;
1676 function Interface_List
1677 (N
: Node_Id
) return List_Id
is
1679 pragma Assert
(False
1680 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1681 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1682 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1683 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1684 or else NT
(N
).Nkind
= N_Record_Definition
1685 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1686 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1687 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1691 function Interface_Present
1692 (N
: Node_Id
) return Boolean is
1694 pragma Assert
(False
1695 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1696 or else NT
(N
).Nkind
= N_Record_Definition
);
1698 end Interface_Present
;
1700 function Import_Interface_Present
1701 (N
: Node_Id
) return Boolean is
1703 pragma Assert
(False
1704 or else NT
(N
).Nkind
= N_Pragma
);
1706 end Import_Interface_Present
;
1709 (N
: Node_Id
) return Boolean is
1711 pragma Assert
(False
1712 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1713 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1717 function Includes_Infinities
1718 (N
: Node_Id
) return Boolean is
1720 pragma Assert
(False
1721 or else NT
(N
).Nkind
= N_Range
);
1723 end Includes_Infinities
;
1725 function Incomplete_View
1726 (N
: Node_Id
) return Node_Id
is
1728 pragma Assert
(False
1729 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1731 end Incomplete_View
;
1733 function Inherited_Discriminant
1734 (N
: Node_Id
) return Boolean is
1736 pragma Assert
(False
1737 or else NT
(N
).Nkind
= N_Component_Association
);
1739 end Inherited_Discriminant
;
1741 function Instance_Spec
1742 (N
: Node_Id
) return Node_Id
is
1744 pragma Assert
(False
1745 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1746 or else NT
(N
).Nkind
= N_Function_Instantiation
1747 or else NT
(N
).Nkind
= N_Package_Instantiation
1748 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1753 (N
: Node_Id
) return Uint
is
1755 pragma Assert
(False
1756 or else NT
(N
).Nkind
= N_Integer_Literal
);
1760 function Is_Accessibility_Actual
1761 (N
: Node_Id
) return Boolean is
1763 pragma Assert
(False
1764 or else NT
(N
).Nkind
= N_Parameter_Association
);
1766 end Is_Accessibility_Actual
;
1768 function Is_Asynchronous_Call_Block
1769 (N
: Node_Id
) return Boolean is
1771 pragma Assert
(False
1772 or else NT
(N
).Nkind
= N_Block_Statement
);
1774 end Is_Asynchronous_Call_Block
;
1776 function Is_Boolean_Aspect
1777 (N
: Node_Id
) return Boolean is
1779 pragma Assert
(False
1780 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1782 end Is_Boolean_Aspect
;
1785 (N
: Node_Id
) return Boolean is
1787 pragma Assert
(False
1788 or else NT
(N
).Nkind
= N_Aspect_Specification
1789 or else NT
(N
).Nkind
= N_Pragma
);
1793 function Is_Component_Left_Opnd
1794 (N
: Node_Id
) return Boolean is
1796 pragma Assert
(False
1797 or else NT
(N
).Nkind
= N_Op_Concat
);
1799 end Is_Component_Left_Opnd
;
1801 function Is_Component_Right_Opnd
1802 (N
: Node_Id
) return Boolean is
1804 pragma Assert
(False
1805 or else NT
(N
).Nkind
= N_Op_Concat
);
1807 end Is_Component_Right_Opnd
;
1809 function Is_Controlling_Actual
1810 (N
: Node_Id
) return Boolean is
1812 pragma Assert
(False
1813 or else NT
(N
).Nkind
in N_Subexpr
);
1815 end Is_Controlling_Actual
;
1817 function Is_Disabled
1818 (N
: Node_Id
) return Boolean is
1820 pragma Assert
(False
1821 or else NT
(N
).Nkind
= N_Aspect_Specification
1822 or else NT
(N
).Nkind
= N_Pragma
);
1826 function Is_Delayed_Aspect
1827 (N
: Node_Id
) return Boolean is
1829 pragma Assert
(False
1830 or else NT
(N
).Nkind
= N_Aspect_Specification
1831 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1832 or else NT
(N
).Nkind
= N_Pragma
);
1834 end Is_Delayed_Aspect
;
1836 function Is_Dynamic_Coextension
1837 (N
: Node_Id
) return Boolean is
1839 pragma Assert
(False
1840 or else NT
(N
).Nkind
= N_Allocator
);
1842 end Is_Dynamic_Coextension
;
1845 (N
: Node_Id
) return Boolean is
1847 pragma Assert
(False
1848 or else NT
(N
).Nkind
= N_If_Expression
);
1852 function Is_Entry_Barrier_Function
1853 (N
: Node_Id
) return Boolean is
1855 pragma Assert
(False
1856 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1858 end Is_Entry_Barrier_Function
;
1860 function Is_Expanded_Build_In_Place_Call
1861 (N
: Node_Id
) return Boolean is
1863 pragma Assert
(False
1864 or else NT
(N
).Nkind
= N_Function_Call
);
1866 end Is_Expanded_Build_In_Place_Call
;
1868 function Is_Finalization_Wrapper
1869 (N
: Node_Id
) return Boolean is
1871 pragma Assert
(False
1872 or else NT
(N
).Nkind
= N_Block_Statement
);
1874 end Is_Finalization_Wrapper
;
1876 function Is_Folded_In_Parser
1877 (N
: Node_Id
) return Boolean is
1879 pragma Assert
(False
1880 or else NT
(N
).Nkind
= N_String_Literal
);
1882 end Is_Folded_In_Parser
;
1885 (N
: Node_Id
) return Boolean is
1887 pragma Assert
(False
1888 or else NT
(N
).Nkind
= N_Aspect_Specification
1889 or else NT
(N
).Nkind
= N_Pragma
);
1893 function Is_In_Discriminant_Check
1894 (N
: Node_Id
) return Boolean is
1896 pragma Assert
(False
1897 or else NT
(N
).Nkind
= N_Selected_Component
);
1899 end Is_In_Discriminant_Check
;
1901 function Is_Machine_Number
1902 (N
: Node_Id
) return Boolean is
1904 pragma Assert
(False
1905 or else NT
(N
).Nkind
= N_Real_Literal
);
1907 end Is_Machine_Number
;
1909 function Is_Null_Loop
1910 (N
: Node_Id
) return Boolean is
1912 pragma Assert
(False
1913 or else NT
(N
).Nkind
= N_Loop_Statement
);
1917 function Is_Overloaded
1918 (N
: Node_Id
) return Boolean is
1920 pragma Assert
(False
1921 or else NT
(N
).Nkind
in N_Subexpr
);
1925 function Is_Power_Of_2_For_Shift
1926 (N
: Node_Id
) return Boolean is
1928 pragma Assert
(False
1929 or else NT
(N
).Nkind
= N_Op_Expon
);
1931 end Is_Power_Of_2_For_Shift
;
1933 function Is_Prefixed_Call
1934 (N
: Node_Id
) return Boolean is
1936 pragma Assert
(False
1937 or else NT
(N
).Nkind
= N_Selected_Component
);
1939 end Is_Prefixed_Call
;
1941 function Is_Protected_Subprogram_Body
1942 (N
: Node_Id
) return Boolean is
1944 pragma Assert
(False
1945 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1947 end Is_Protected_Subprogram_Body
;
1949 function Is_Static_Coextension
1950 (N
: Node_Id
) return Boolean is
1952 pragma Assert
(False
1953 or else NT
(N
).Nkind
= N_Allocator
);
1955 end Is_Static_Coextension
;
1957 function Is_Static_Expression
1958 (N
: Node_Id
) return Boolean is
1960 pragma Assert
(False
1961 or else NT
(N
).Nkind
in N_Subexpr
);
1963 end Is_Static_Expression
;
1965 function Is_Subprogram_Descriptor
1966 (N
: Node_Id
) return Boolean is
1968 pragma Assert
(False
1969 or else NT
(N
).Nkind
= N_Object_Declaration
);
1971 end Is_Subprogram_Descriptor
;
1973 function Is_Task_Allocation_Block
1974 (N
: Node_Id
) return Boolean is
1976 pragma Assert
(False
1977 or else NT
(N
).Nkind
= N_Block_Statement
);
1979 end Is_Task_Allocation_Block
;
1981 function Is_Task_Master
1982 (N
: Node_Id
) return Boolean is
1984 pragma Assert
(False
1985 or else NT
(N
).Nkind
= N_Block_Statement
1986 or else NT
(N
).Nkind
= N_Subprogram_Body
1987 or else NT
(N
).Nkind
= N_Task_Body
);
1991 function Iteration_Scheme
1992 (N
: Node_Id
) return Node_Id
is
1994 pragma Assert
(False
1995 or else NT
(N
).Nkind
= N_Loop_Statement
);
1997 end Iteration_Scheme
;
1999 function Iterator_Specification
2000 (N
: Node_Id
) return Node_Id
is
2002 pragma Assert
(False
2003 or else NT
(N
).Nkind
= N_Iteration_Scheme
2004 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2006 end Iterator_Specification
;
2009 (N
: Node_Id
) return Node_Id
is
2011 pragma Assert
(False
2012 or else NT
(N
).Nkind
= N_Itype_Reference
);
2016 function Kill_Range_Check
2017 (N
: Node_Id
) return Boolean is
2019 pragma Assert
(False
2020 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2022 end Kill_Range_Check
;
2024 function Label_Construct
2025 (N
: Node_Id
) return Node_Id
is
2027 pragma Assert
(False
2028 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2030 end Label_Construct
;
2033 (N
: Node_Id
) return Node_Id
is
2035 pragma Assert
(False
2036 or else NT
(N
).Nkind
= N_Component_Clause
);
2041 (N
: Node_Id
) return Boolean is
2043 pragma Assert
(False
2044 or else NT
(N
).Nkind
= N_With_Clause
);
2049 (N
: Node_Id
) return Node_Id
is
2051 pragma Assert
(False
2052 or else NT
(N
).Nkind
= N_And_Then
2053 or else NT
(N
).Nkind
= N_In
2054 or else NT
(N
).Nkind
= N_Not_In
2055 or else NT
(N
).Nkind
= N_Or_Else
2056 or else NT
(N
).Nkind
in N_Binary_Op
);
2060 function Library_Unit
2061 (N
: Node_Id
) return Node_Id
is
2063 pragma Assert
(False
2064 or else NT
(N
).Nkind
= N_Compilation_Unit
2065 or else NT
(N
).Nkind
= N_Package_Body_Stub
2066 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2067 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2068 or else NT
(N
).Nkind
= N_Task_Body_Stub
2069 or else NT
(N
).Nkind
= N_With_Clause
);
2073 function Limited_View_Installed
2074 (N
: Node_Id
) return Boolean is
2076 pragma Assert
(False
2077 or else NT
(N
).Nkind
= N_Package_Specification
2078 or else NT
(N
).Nkind
= N_With_Clause
);
2080 end Limited_View_Installed
;
2082 function Limited_Present
2083 (N
: Node_Id
) return Boolean is
2085 pragma Assert
(False
2086 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2087 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2088 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2089 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2090 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2091 or else NT
(N
).Nkind
= N_Record_Definition
2092 or else NT
(N
).Nkind
= N_With_Clause
);
2094 end Limited_Present
;
2097 (N
: Node_Id
) return List_Id
is
2099 pragma Assert
(False
2100 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2104 function Local_Raise_Not_OK
2105 (N
: Node_Id
) return Boolean is
2107 pragma Assert
(False
2108 or else NT
(N
).Nkind
= N_Exception_Handler
);
2110 end Local_Raise_Not_OK
;
2112 function Local_Raise_Statements
2113 (N
: Node_Id
) return Elist_Id
is
2115 pragma Assert
(False
2116 or else NT
(N
).Nkind
= N_Exception_Handler
);
2118 end Local_Raise_Statements
;
2120 function Loop_Actions
2121 (N
: Node_Id
) return List_Id
is
2123 pragma Assert
(False
2124 or else NT
(N
).Nkind
= N_Component_Association
);
2128 function Loop_Parameter_Specification
2129 (N
: Node_Id
) return Node_Id
is
2131 pragma Assert
(False
2132 or else NT
(N
).Nkind
= N_Iteration_Scheme
2133 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2135 end Loop_Parameter_Specification
;
2138 (N
: Node_Id
) return Node_Id
is
2140 pragma Assert
(False
2141 or else NT
(N
).Nkind
= N_Range
2142 or else NT
(N
).Nkind
= N_Real_Range_Specification
2143 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2148 (N
: Node_Id
) return Node_Id
is
2150 pragma Assert
(False
2151 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2156 (N
: Node_Id
) return Boolean is
2158 pragma Assert
(False
2159 or else NT
(N
).Nkind
= N_Component_Declaration
2160 or else NT
(N
).Nkind
= N_Discriminant_Specification
2161 or else NT
(N
).Nkind
= N_Exception_Declaration
2162 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2163 or else NT
(N
).Nkind
= N_Number_Declaration
2164 or else NT
(N
).Nkind
= N_Object_Declaration
2165 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2169 function Must_Be_Byte_Aligned
2170 (N
: Node_Id
) return Boolean is
2172 pragma Assert
(False
2173 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2175 end Must_Be_Byte_Aligned
;
2177 function Must_Not_Freeze
2178 (N
: Node_Id
) return Boolean is
2180 pragma Assert
(False
2181 or else NT
(N
).Nkind
= N_Subtype_Indication
2182 or else NT
(N
).Nkind
in N_Subexpr
);
2184 end Must_Not_Freeze
;
2186 function Must_Not_Override
2187 (N
: Node_Id
) return Boolean is
2189 pragma Assert
(False
2190 or else NT
(N
).Nkind
= N_Entry_Declaration
2191 or else NT
(N
).Nkind
= N_Function_Instantiation
2192 or else NT
(N
).Nkind
= N_Function_Specification
2193 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2194 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2196 end Must_Not_Override
;
2198 function Must_Override
2199 (N
: Node_Id
) return Boolean is
2201 pragma Assert
(False
2202 or else NT
(N
).Nkind
= N_Entry_Declaration
2203 or else NT
(N
).Nkind
= N_Function_Instantiation
2204 or else NT
(N
).Nkind
= N_Function_Specification
2205 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2206 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2211 (N
: Node_Id
) return Node_Id
is
2213 pragma Assert
(False
2214 or else NT
(N
).Nkind
= N_Assignment_Statement
2215 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2216 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2217 or else NT
(N
).Nkind
= N_Designator
2218 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2219 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2220 or else NT
(N
).Nkind
= N_Exit_Statement
2221 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2222 or else NT
(N
).Nkind
= N_Function_Call
2223 or else NT
(N
).Nkind
= N_Function_Instantiation
2224 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2225 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2226 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2227 or else NT
(N
).Nkind
= N_Goto_Statement
2228 or else NT
(N
).Nkind
= N_Iterator_Specification
2229 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2230 or else NT
(N
).Nkind
= N_Package_Instantiation
2231 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2232 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2233 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2234 or else NT
(N
).Nkind
= N_Raise_Expression
2235 or else NT
(N
).Nkind
= N_Raise_Statement
2236 or else NT
(N
).Nkind
= N_Requeue_Statement
2237 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2238 or else NT
(N
).Nkind
= N_Subunit
2239 or else NT
(N
).Nkind
= N_Variant_Part
2240 or else NT
(N
).Nkind
= N_With_Clause
);
2245 (N
: Node_Id
) return List_Id
is
2247 pragma Assert
(False
2248 or else NT
(N
).Nkind
= N_Abort_Statement
2249 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
2253 function Next_Entity
2254 (N
: Node_Id
) return Node_Id
is
2256 pragma Assert
(False
2257 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2258 or else NT
(N
).Nkind
= N_Defining_Identifier
2259 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2263 function Next_Exit_Statement
2264 (N
: Node_Id
) return Node_Id
is
2266 pragma Assert
(False
2267 or else NT
(N
).Nkind
= N_Exit_Statement
);
2269 end Next_Exit_Statement
;
2271 function Next_Implicit_With
2272 (N
: Node_Id
) return Node_Id
is
2274 pragma Assert
(False
2275 or else NT
(N
).Nkind
= N_With_Clause
);
2277 end Next_Implicit_With
;
2279 function Next_Named_Actual
2280 (N
: Node_Id
) return Node_Id
is
2282 pragma Assert
(False
2283 or else NT
(N
).Nkind
= N_Parameter_Association
);
2285 end Next_Named_Actual
;
2287 function Next_Pragma
2288 (N
: Node_Id
) return Node_Id
is
2290 pragma Assert
(False
2291 or else NT
(N
).Nkind
= N_Pragma
);
2295 function Next_Rep_Item
2296 (N
: Node_Id
) return Node_Id
is
2298 pragma Assert
(False
2299 or else NT
(N
).Nkind
= N_Aspect_Specification
2300 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2301 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2302 or else NT
(N
).Nkind
= N_Pragma
2303 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2307 function Next_Use_Clause
2308 (N
: Node_Id
) return Node_Id
is
2310 pragma Assert
(False
2311 or else NT
(N
).Nkind
= N_Use_Package_Clause
2312 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2314 end Next_Use_Clause
;
2316 function No_Ctrl_Actions
2317 (N
: Node_Id
) return Boolean is
2319 pragma Assert
(False
2320 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2322 end No_Ctrl_Actions
;
2324 function No_Elaboration_Check
2325 (N
: Node_Id
) return Boolean is
2327 pragma Assert
(False
2328 or else NT
(N
).Nkind
= N_Function_Call
2329 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2331 end No_Elaboration_Check
;
2333 function No_Entities_Ref_In_Spec
2334 (N
: Node_Id
) return Boolean is
2336 pragma Assert
(False
2337 or else NT
(N
).Nkind
= N_With_Clause
);
2339 end No_Entities_Ref_In_Spec
;
2341 function No_Initialization
2342 (N
: Node_Id
) return Boolean is
2344 pragma Assert
(False
2345 or else NT
(N
).Nkind
= N_Allocator
2346 or else NT
(N
).Nkind
= N_Object_Declaration
);
2348 end No_Initialization
;
2350 function No_Minimize_Eliminate
2351 (N
: Node_Id
) return Boolean is
2353 pragma Assert
(False
2354 or else NT
(N
).Nkind
= N_In
2355 or else NT
(N
).Nkind
= N_Not_In
);
2357 end No_Minimize_Eliminate
;
2359 function No_Truncation
2360 (N
: Node_Id
) return Boolean is
2362 pragma Assert
(False
2363 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2367 function Non_Aliased_Prefix
2368 (N
: Node_Id
) return Boolean is
2370 pragma Assert
(False
2371 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2373 end Non_Aliased_Prefix
;
2375 function Null_Present
2376 (N
: Node_Id
) return Boolean is
2378 pragma Assert
(False
2379 or else NT
(N
).Nkind
= N_Component_List
2380 or else NT
(N
).Nkind
= N_Procedure_Specification
2381 or else NT
(N
).Nkind
= N_Record_Definition
);
2385 function Null_Excluding_Subtype
2386 (N
: Node_Id
) return Boolean is
2388 pragma Assert
(False
2389 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2391 end Null_Excluding_Subtype
;
2393 function Null_Exclusion_Present
2394 (N
: Node_Id
) return Boolean is
2396 pragma Assert
(False
2397 or else NT
(N
).Nkind
= N_Access_Definition
2398 or else NT
(N
).Nkind
= N_Access_Function_Definition
2399 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2400 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2401 or else NT
(N
).Nkind
= N_Allocator
2402 or else NT
(N
).Nkind
= N_Component_Definition
2403 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2404 or else NT
(N
).Nkind
= N_Discriminant_Specification
2405 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2406 or else NT
(N
).Nkind
= N_Function_Specification
2407 or else NT
(N
).Nkind
= N_Object_Declaration
2408 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2409 or else NT
(N
).Nkind
= N_Parameter_Specification
2410 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2412 end Null_Exclusion_Present
;
2414 function Null_Exclusion_In_Return_Present
2415 (N
: Node_Id
) return Boolean is
2417 pragma Assert
(False
2418 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2420 end Null_Exclusion_In_Return_Present
;
2422 function Null_Record_Present
2423 (N
: Node_Id
) return Boolean is
2425 pragma Assert
(False
2426 or else NT
(N
).Nkind
= N_Aggregate
2427 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2429 end Null_Record_Present
;
2431 function Object_Definition
2432 (N
: Node_Id
) return Node_Id
is
2434 pragma Assert
(False
2435 or else NT
(N
).Nkind
= N_Object_Declaration
);
2437 end Object_Definition
;
2440 (N
: Node_Id
) return Boolean is
2442 pragma Assert
(False
2443 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2447 function Original_Discriminant
2448 (N
: Node_Id
) return Node_Id
is
2450 pragma Assert
(False
2451 or else NT
(N
).Nkind
= N_Identifier
);
2453 end Original_Discriminant
;
2455 function Original_Entity
2456 (N
: Node_Id
) return Entity_Id
is
2458 pragma Assert
(False
2459 or else NT
(N
).Nkind
= N_Integer_Literal
2460 or else NT
(N
).Nkind
= N_Real_Literal
);
2462 end Original_Entity
;
2464 function Others_Discrete_Choices
2465 (N
: Node_Id
) return List_Id
is
2467 pragma Assert
(False
2468 or else NT
(N
).Nkind
= N_Others_Choice
);
2470 end Others_Discrete_Choices
;
2472 function Out_Present
2473 (N
: Node_Id
) return Boolean is
2475 pragma Assert
(False
2476 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2477 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2481 function Parameter_Associations
2482 (N
: Node_Id
) return List_Id
is
2484 pragma Assert
(False
2485 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2486 or else NT
(N
).Nkind
= N_Function_Call
2487 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2489 end Parameter_Associations
;
2491 function Parameter_Specifications
2492 (N
: Node_Id
) return List_Id
is
2494 pragma Assert
(False
2495 or else NT
(N
).Nkind
= N_Accept_Statement
2496 or else NT
(N
).Nkind
= N_Access_Function_Definition
2497 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2498 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2499 or else NT
(N
).Nkind
= N_Entry_Declaration
2500 or else NT
(N
).Nkind
= N_Function_Specification
2501 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2503 end Parameter_Specifications
;
2505 function Parameter_Type
2506 (N
: Node_Id
) return Node_Id
is
2508 pragma Assert
(False
2509 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2513 function Parent_Spec
2514 (N
: Node_Id
) return Node_Id
is
2516 pragma Assert
(False
2517 or else NT
(N
).Nkind
= N_Function_Instantiation
2518 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2519 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2520 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2521 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2522 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2523 or else NT
(N
).Nkind
= N_Package_Declaration
2524 or else NT
(N
).Nkind
= N_Package_Instantiation
2525 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2526 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2527 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2528 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2533 (N
: Node_Id
) return Node_Id
is
2535 pragma Assert
(False
2536 or else NT
(N
).Nkind
= N_Component_Clause
);
2540 function Pragma_Argument_Associations
2541 (N
: Node_Id
) return List_Id
is
2543 pragma Assert
(False
2544 or else NT
(N
).Nkind
= N_Pragma
);
2546 end Pragma_Argument_Associations
;
2548 function Pragma_Identifier
2549 (N
: Node_Id
) return Node_Id
is
2551 pragma Assert
(False
2552 or else NT
(N
).Nkind
= N_Pragma
);
2554 end Pragma_Identifier
;
2556 function Pragmas_After
2557 (N
: Node_Id
) return List_Id
is
2559 pragma Assert
(False
2560 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2561 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2565 function Pragmas_Before
2566 (N
: Node_Id
) return List_Id
is
2568 pragma Assert
(False
2569 or else NT
(N
).Nkind
= N_Accept_Alternative
2570 or else NT
(N
).Nkind
= N_Delay_Alternative
2571 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2572 or else NT
(N
).Nkind
= N_Mod_Clause
2573 or else NT
(N
).Nkind
= N_Terminate_Alternative
2574 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2578 function Pre_Post_Conditions
2579 (N
: Node_Id
) return Node_Id
is
2581 pragma Assert
(False
2582 or else NT
(N
).Nkind
= N_Contract
);
2584 end Pre_Post_Conditions
;
2587 (N
: Node_Id
) return Node_Id
is
2589 pragma Assert
(False
2590 or else NT
(N
).Nkind
= N_Attribute_Reference
2591 or else NT
(N
).Nkind
= N_Expanded_Name
2592 or else NT
(N
).Nkind
= N_Explicit_Dereference
2593 or else NT
(N
).Nkind
= N_Indexed_Component
2594 or else NT
(N
).Nkind
= N_Reference
2595 or else NT
(N
).Nkind
= N_Selected_Component
2596 or else NT
(N
).Nkind
= N_Slice
);
2600 function Premature_Use
2601 (N
: Node_Id
) return Node_Id
is
2603 pragma Assert
(False
2604 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2608 function Present_Expr
2609 (N
: Node_Id
) return Uint
is
2611 pragma Assert
(False
2612 or else NT
(N
).Nkind
= N_Variant
);
2617 (N
: Node_Id
) return Boolean is
2619 pragma Assert
(False
2620 or else NT
(N
).Nkind
= N_Component_Declaration
2621 or else NT
(N
).Nkind
= N_Discriminant_Specification
2622 or else NT
(N
).Nkind
= N_Exception_Declaration
2623 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2624 or else NT
(N
).Nkind
= N_Number_Declaration
2625 or else NT
(N
).Nkind
= N_Object_Declaration
2626 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2630 function Print_In_Hex
2631 (N
: Node_Id
) return Boolean is
2633 pragma Assert
(False
2634 or else NT
(N
).Nkind
= N_Integer_Literal
);
2638 function Private_Declarations
2639 (N
: Node_Id
) return List_Id
is
2641 pragma Assert
(False
2642 or else NT
(N
).Nkind
= N_Package_Specification
2643 or else NT
(N
).Nkind
= N_Protected_Definition
2644 or else NT
(N
).Nkind
= N_Task_Definition
);
2646 end Private_Declarations
;
2648 function Private_Present
2649 (N
: Node_Id
) return Boolean is
2651 pragma Assert
(False
2652 or else NT
(N
).Nkind
= N_Compilation_Unit
2653 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2654 or else NT
(N
).Nkind
= N_With_Clause
);
2656 end Private_Present
;
2658 function Procedure_To_Call
2659 (N
: Node_Id
) return Node_Id
is
2661 pragma Assert
(False
2662 or else NT
(N
).Nkind
= N_Allocator
2663 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2664 or else NT
(N
).Nkind
= N_Free_Statement
2665 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2667 end Procedure_To_Call
;
2669 function Proper_Body
2670 (N
: Node_Id
) return Node_Id
is
2672 pragma Assert
(False
2673 or else NT
(N
).Nkind
= N_Subunit
);
2677 function Protected_Definition
2678 (N
: Node_Id
) return Node_Id
is
2680 pragma Assert
(False
2681 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2682 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2684 end Protected_Definition
;
2686 function Protected_Present
2687 (N
: Node_Id
) return Boolean is
2689 pragma Assert
(False
2690 or else NT
(N
).Nkind
= N_Access_Function_Definition
2691 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2692 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2693 or else NT
(N
).Nkind
= N_Record_Definition
);
2695 end Protected_Present
;
2697 function Raises_Constraint_Error
2698 (N
: Node_Id
) return Boolean is
2700 pragma Assert
(False
2701 or else NT
(N
).Nkind
in N_Subexpr
);
2703 end Raises_Constraint_Error
;
2705 function Range_Constraint
2706 (N
: Node_Id
) return Node_Id
is
2708 pragma Assert
(False
2709 or else NT
(N
).Nkind
= N_Delta_Constraint
2710 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2712 end Range_Constraint
;
2714 function Range_Expression
2715 (N
: Node_Id
) return Node_Id
is
2717 pragma Assert
(False
2718 or else NT
(N
).Nkind
= N_Range_Constraint
);
2720 end Range_Expression
;
2722 function Real_Range_Specification
2723 (N
: Node_Id
) return Node_Id
is
2725 pragma Assert
(False
2726 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2727 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2728 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2730 end Real_Range_Specification
;
2733 (N
: Node_Id
) return Ureal
is
2735 pragma Assert
(False
2736 or else NT
(N
).Nkind
= N_Real_Literal
);
2741 (N
: Node_Id
) return Uint
is
2743 pragma Assert
(False
2744 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2745 or else NT
(N
).Nkind
= N_Raise_Program_Error
2746 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2750 function Record_Extension_Part
2751 (N
: Node_Id
) return Node_Id
is
2753 pragma Assert
(False
2754 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2756 end Record_Extension_Part
;
2758 function Redundant_Use
2759 (N
: Node_Id
) return Boolean is
2761 pragma Assert
(False
2762 or else NT
(N
).Nkind
= N_Attribute_Reference
2763 or else NT
(N
).Nkind
= N_Expanded_Name
2764 or else NT
(N
).Nkind
= N_Identifier
);
2768 function Renaming_Exception
2769 (N
: Node_Id
) return Node_Id
is
2771 pragma Assert
(False
2772 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2774 end Renaming_Exception
;
2776 function Result_Definition
2777 (N
: Node_Id
) return Node_Id
is
2779 pragma Assert
(False
2780 or else NT
(N
).Nkind
= N_Access_Function_Definition
2781 or else NT
(N
).Nkind
= N_Function_Specification
);
2783 end Result_Definition
;
2785 function Return_Object_Declarations
2786 (N
: Node_Id
) return List_Id
is
2788 pragma Assert
(False
2789 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2791 end Return_Object_Declarations
;
2793 function Return_Statement_Entity
2794 (N
: Node_Id
) return Node_Id
is
2796 pragma Assert
(False
2797 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2798 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2800 end Return_Statement_Entity
;
2802 function Reverse_Present
2803 (N
: Node_Id
) return Boolean is
2805 pragma Assert
(False
2806 or else NT
(N
).Nkind
= N_Iterator_Specification
2807 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
2809 end Reverse_Present
;
2812 (N
: Node_Id
) return Node_Id
is
2814 pragma Assert
(False
2815 or else NT
(N
).Nkind
in N_Op
2816 or else NT
(N
).Nkind
= N_And_Then
2817 or else NT
(N
).Nkind
= N_In
2818 or else NT
(N
).Nkind
= N_Not_In
2819 or else NT
(N
).Nkind
= N_Or_Else
);
2823 function Rounded_Result
2824 (N
: Node_Id
) return Boolean is
2826 pragma Assert
(False
2827 or else NT
(N
).Nkind
= N_Op_Divide
2828 or else NT
(N
).Nkind
= N_Op_Multiply
2829 or else NT
(N
).Nkind
= N_Type_Conversion
);
2833 function SCIL_Controlling_Tag
2834 (N
: Node_Id
) return Node_Id
is
2836 pragma Assert
(False
2837 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2839 end SCIL_Controlling_Tag
;
2841 function SCIL_Entity
2842 (N
: Node_Id
) return Node_Id
is
2844 pragma Assert
(False
2845 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
2846 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
2847 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2851 function SCIL_Tag_Value
2852 (N
: Node_Id
) return Node_Id
is
2854 pragma Assert
(False
2855 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2859 function SCIL_Target_Prim
2860 (N
: Node_Id
) return Node_Id
is
2862 pragma Assert
(False
2863 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2865 end SCIL_Target_Prim
;
2868 (N
: Node_Id
) return Node_Id
is
2870 pragma Assert
(False
2871 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2872 or else NT
(N
).Nkind
= N_Defining_Identifier
2873 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2877 function Select_Alternatives
2878 (N
: Node_Id
) return List_Id
is
2880 pragma Assert
(False
2881 or else NT
(N
).Nkind
= N_Selective_Accept
);
2883 end Select_Alternatives
;
2885 function Selector_Name
2886 (N
: Node_Id
) return Node_Id
is
2888 pragma Assert
(False
2889 or else NT
(N
).Nkind
= N_Expanded_Name
2890 or else NT
(N
).Nkind
= N_Generic_Association
2891 or else NT
(N
).Nkind
= N_Parameter_Association
2892 or else NT
(N
).Nkind
= N_Selected_Component
);
2896 function Selector_Names
2897 (N
: Node_Id
) return List_Id
is
2899 pragma Assert
(False
2900 or else NT
(N
).Nkind
= N_Discriminant_Association
);
2904 function Shift_Count_OK
2905 (N
: Node_Id
) return Boolean is
2907 pragma Assert
(False
2908 or else NT
(N
).Nkind
= N_Op_Rotate_Left
2909 or else NT
(N
).Nkind
= N_Op_Rotate_Right
2910 or else NT
(N
).Nkind
= N_Op_Shift_Left
2911 or else NT
(N
).Nkind
= N_Op_Shift_Right
2912 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
2916 function Source_Type
2917 (N
: Node_Id
) return Entity_Id
is
2919 pragma Assert
(False
2920 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
2924 function Specification
2925 (N
: Node_Id
) return Node_Id
is
2927 pragma Assert
(False
2928 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
2929 or else NT
(N
).Nkind
= N_Expression_Function
2930 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
2931 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
2932 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2933 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2934 or else NT
(N
).Nkind
= N_Package_Declaration
2935 or else NT
(N
).Nkind
= N_Subprogram_Body
2936 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2937 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2938 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2943 (N
: Node_Id
) return Boolean is
2945 pragma Assert
(False
2946 or else NT
(N
).Nkind
= N_Aspect_Specification
2947 or else NT
(N
).Nkind
= N_Pragma
);
2952 (N
: Node_Id
) return List_Id
is
2954 pragma Assert
(False
2955 or else NT
(N
).Nkind
= N_Abortable_Part
2956 or else NT
(N
).Nkind
= N_Accept_Alternative
2957 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
2958 or else NT
(N
).Nkind
= N_Delay_Alternative
2959 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2960 or else NT
(N
).Nkind
= N_Exception_Handler
2961 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
2962 or else NT
(N
).Nkind
= N_Loop_Statement
2963 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2967 function Storage_Pool
2968 (N
: Node_Id
) return Node_Id
is
2970 pragma Assert
(False
2971 or else NT
(N
).Nkind
= N_Allocator
2972 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2973 or else NT
(N
).Nkind
= N_Free_Statement
2974 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2978 function Subpool_Handle_Name
2979 (N
: Node_Id
) return Node_Id
is
2981 pragma Assert
(False
2982 or else NT
(N
).Nkind
= N_Allocator
);
2984 end Subpool_Handle_Name
;
2987 (N
: Node_Id
) return String_Id
is
2989 pragma Assert
(False
2990 or else NT
(N
).Nkind
= N_Operator_Symbol
2991 or else NT
(N
).Nkind
= N_String_Literal
);
2995 function Subtype_Indication
2996 (N
: Node_Id
) return Node_Id
is
2998 pragma Assert
(False
2999 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3000 or else NT
(N
).Nkind
= N_Component_Definition
3001 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3002 or else NT
(N
).Nkind
= N_Iterator_Specification
3003 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3004 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3006 end Subtype_Indication
;
3008 function Suppress_Assignment_Checks
3009 (N
: Node_Id
) return Boolean is
3011 pragma Assert
(False
3012 or else NT
(N
).Nkind
= N_Assignment_Statement
3013 or else NT
(N
).Nkind
= N_Object_Declaration
);
3015 end Suppress_Assignment_Checks
;
3017 function Suppress_Loop_Warnings
3018 (N
: Node_Id
) return Boolean is
3020 pragma Assert
(False
3021 or else NT
(N
).Nkind
= N_Loop_Statement
);
3023 end Suppress_Loop_Warnings
;
3025 function Subtype_Mark
3026 (N
: Node_Id
) return Node_Id
is
3028 pragma Assert
(False
3029 or else NT
(N
).Nkind
= N_Access_Definition
3030 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3031 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3032 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3033 or else NT
(N
).Nkind
= N_Qualified_Expression
3034 or else NT
(N
).Nkind
= N_Subtype_Indication
3035 or else NT
(N
).Nkind
= N_Type_Conversion
3036 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
3040 function Subtype_Marks
3041 (N
: Node_Id
) return List_Id
is
3043 pragma Assert
(False
3044 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
3045 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3049 function Synchronized_Present
3050 (N
: Node_Id
) return Boolean is
3052 pragma Assert
(False
3053 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3054 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3055 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3056 or else NT
(N
).Nkind
= N_Record_Definition
);
3058 end Synchronized_Present
;
3060 function Tagged_Present
3061 (N
: Node_Id
) return Boolean is
3063 pragma Assert
(False
3064 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3065 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3066 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3067 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3068 or else NT
(N
).Nkind
= N_Record_Definition
);
3072 function Target_Type
3073 (N
: Node_Id
) return Entity_Id
is
3075 pragma Assert
(False
3076 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3080 function Task_Definition
3081 (N
: Node_Id
) return Node_Id
is
3083 pragma Assert
(False
3084 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3085 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3087 end Task_Definition
;
3089 function Task_Present
3090 (N
: Node_Id
) return Boolean is
3092 pragma Assert
(False
3093 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3094 or else NT
(N
).Nkind
= N_Record_Definition
);
3098 function Then_Actions
3099 (N
: Node_Id
) return List_Id
is
3101 pragma Assert
(False
3102 or else NT
(N
).Nkind
= N_If_Expression
);
3106 function Then_Statements
3107 (N
: Node_Id
) return List_Id
is
3109 pragma Assert
(False
3110 or else NT
(N
).Nkind
= N_Elsif_Part
3111 or else NT
(N
).Nkind
= N_If_Statement
);
3113 end Then_Statements
;
3115 function Treat_Fixed_As_Integer
3116 (N
: Node_Id
) return Boolean is
3118 pragma Assert
(False
3119 or else NT
(N
).Nkind
= N_Op_Divide
3120 or else NT
(N
).Nkind
= N_Op_Mod
3121 or else NT
(N
).Nkind
= N_Op_Multiply
3122 or else NT
(N
).Nkind
= N_Op_Rem
);
3124 end Treat_Fixed_As_Integer
;
3126 function Triggering_Alternative
3127 (N
: Node_Id
) return Node_Id
is
3129 pragma Assert
(False
3130 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3132 end Triggering_Alternative
;
3134 function Triggering_Statement
3135 (N
: Node_Id
) return Node_Id
is
3137 pragma Assert
(False
3138 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3140 end Triggering_Statement
;
3143 (N
: Node_Id
) return Elist_Id
is
3145 pragma Assert
(False
3146 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3150 function Type_Definition
3151 (N
: Node_Id
) return Node_Id
is
3153 pragma Assert
(False
3154 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3156 end Type_Definition
;
3158 function Uneval_Old_Accept
3159 (N
: Node_Id
) return Boolean is
3161 pragma Assert
(False
3162 or else NT
(N
).Nkind
= N_Pragma
);
3164 end Uneval_Old_Accept
;
3166 function Uneval_Old_Warn
3167 (N
: Node_Id
) return Boolean is
3169 pragma Assert
(False
3170 or else NT
(N
).Nkind
= N_Pragma
);
3172 end Uneval_Old_Warn
;
3175 (N
: Node_Id
) return Node_Id
is
3177 pragma Assert
(False
3178 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3182 function Unknown_Discriminants_Present
3183 (N
: Node_Id
) return Boolean is
3185 pragma Assert
(False
3186 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3187 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3188 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3189 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3191 end Unknown_Discriminants_Present
;
3193 function Unreferenced_In_Spec
3194 (N
: Node_Id
) return Boolean is
3196 pragma Assert
(False
3197 or else NT
(N
).Nkind
= N_With_Clause
);
3199 end Unreferenced_In_Spec
;
3201 function Variant_Part
3202 (N
: Node_Id
) return Node_Id
is
3204 pragma Assert
(False
3205 or else NT
(N
).Nkind
= N_Component_List
);
3210 (N
: Node_Id
) return List_Id
is
3212 pragma Assert
(False
3213 or else NT
(N
).Nkind
= N_Variant_Part
);
3217 function Visible_Declarations
3218 (N
: Node_Id
) return List_Id
is
3220 pragma Assert
(False
3221 or else NT
(N
).Nkind
= N_Package_Specification
3222 or else NT
(N
).Nkind
= N_Protected_Definition
3223 or else NT
(N
).Nkind
= N_Task_Definition
);
3225 end Visible_Declarations
;
3227 function Uninitialized_Variable
3228 (N
: Node_Id
) return Node_Id
is
3230 pragma Assert
(False
3231 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3232 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3234 end Uninitialized_Variable
;
3236 function Used_Operations
3237 (N
: Node_Id
) return Elist_Id
is
3239 pragma Assert
(False
3240 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3242 end Used_Operations
;
3244 function Was_Originally_Stub
3245 (N
: Node_Id
) return Boolean is
3247 pragma Assert
(False
3248 or else NT
(N
).Nkind
= N_Package_Body
3249 or else NT
(N
).Nkind
= N_Protected_Body
3250 or else NT
(N
).Nkind
= N_Subprogram_Body
3251 or else NT
(N
).Nkind
= N_Task_Body
);
3253 end Was_Originally_Stub
;
3255 function Withed_Body
3256 (N
: Node_Id
) return Node_Id
is
3258 pragma Assert
(False
3259 or else NT
(N
).Nkind
= N_With_Clause
);
3263 --------------------------
3264 -- Field Set Procedures --
3265 --------------------------
3267 procedure Set_ABE_Is_Certain
3268 (N
: Node_Id
; Val
: Boolean := True) is
3270 pragma Assert
(False
3271 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3272 or else NT
(N
).Nkind
= N_Function_Call
3273 or else NT
(N
).Nkind
= N_Function_Instantiation
3274 or else NT
(N
).Nkind
= N_Package_Instantiation
3275 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
3276 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
3277 Set_Flag18
(N
, Val
);
3278 end Set_ABE_Is_Certain
;
3280 procedure Set_Abort_Present
3281 (N
: Node_Id
; Val
: Boolean := True) is
3283 pragma Assert
(False
3284 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3285 Set_Flag15
(N
, Val
);
3286 end Set_Abort_Present
;
3288 procedure Set_Abortable_Part
3289 (N
: Node_Id
; Val
: Node_Id
) is
3291 pragma Assert
(False
3292 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3293 Set_Node2_With_Parent
(N
, Val
);
3294 end Set_Abortable_Part
;
3296 procedure Set_Abstract_Present
3297 (N
: Node_Id
; Val
: Boolean := True) is
3299 pragma Assert
(False
3300 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3301 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3302 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3303 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3304 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3305 or else NT
(N
).Nkind
= N_Record_Definition
);
3307 end Set_Abstract_Present
;
3309 procedure Set_Accept_Handler_Records
3310 (N
: Node_Id
; Val
: List_Id
) is
3312 pragma Assert
(False
3313 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3314 Set_List5
(N
, Val
); -- semantic field, no parent set
3315 end Set_Accept_Handler_Records
;
3317 procedure Set_Accept_Statement
3318 (N
: Node_Id
; Val
: Node_Id
) is
3320 pragma Assert
(False
3321 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3322 Set_Node2_With_Parent
(N
, Val
);
3323 end Set_Accept_Statement
;
3325 procedure Set_Access_Definition
3326 (N
: Node_Id
; Val
: Node_Id
) is
3328 pragma Assert
(False
3329 or else NT
(N
).Nkind
= N_Component_Definition
3330 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3331 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3332 Set_Node3_With_Parent
(N
, Val
);
3333 end Set_Access_Definition
;
3335 procedure Set_Access_To_Subprogram_Definition
3336 (N
: Node_Id
; Val
: Node_Id
) is
3338 pragma Assert
(False
3339 or else NT
(N
).Nkind
= N_Access_Definition
);
3340 Set_Node3_With_Parent
(N
, Val
);
3341 end Set_Access_To_Subprogram_Definition
;
3343 procedure Set_Access_Types_To_Process
3344 (N
: Node_Id
; Val
: Elist_Id
) is
3346 pragma Assert
(False
3347 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3348 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3349 end Set_Access_Types_To_Process
;
3351 procedure Set_Actions
3352 (N
: Node_Id
; Val
: List_Id
) is
3354 pragma Assert
(False
3355 or else NT
(N
).Nkind
= N_And_Then
3356 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3357 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3358 or else NT
(N
).Nkind
= N_Compound_Statement
3359 or else NT
(N
).Nkind
= N_Expression_With_Actions
3360 or else NT
(N
).Nkind
= N_Freeze_Entity
3361 or else NT
(N
).Nkind
= N_Or_Else
);
3362 Set_List1_With_Parent
(N
, Val
);
3365 procedure Set_Activation_Chain_Entity
3366 (N
: Node_Id
; Val
: Node_Id
) is
3368 pragma Assert
(False
3369 or else NT
(N
).Nkind
= N_Block_Statement
3370 or else NT
(N
).Nkind
= N_Entry_Body
3371 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3372 or else NT
(N
).Nkind
= N_Package_Declaration
3373 or else NT
(N
).Nkind
= N_Subprogram_Body
3374 or else NT
(N
).Nkind
= N_Task_Body
);
3375 Set_Node3
(N
, Val
); -- semantic field, no parent set
3376 end Set_Activation_Chain_Entity
;
3378 procedure Set_Acts_As_Spec
3379 (N
: Node_Id
; Val
: Boolean := True) is
3381 pragma Assert
(False
3382 or else NT
(N
).Nkind
= N_Compilation_Unit
3383 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3385 end Set_Acts_As_Spec
;
3387 procedure Set_Actual_Designated_Subtype
3388 (N
: Node_Id
; Val
: Node_Id
) is
3390 pragma Assert
(False
3391 or else NT
(N
).Nkind
= N_Explicit_Dereference
3392 or else NT
(N
).Nkind
= N_Free_Statement
);
3394 end Set_Actual_Designated_Subtype
;
3396 procedure Set_Address_Warning_Posted
3397 (N
: Node_Id
; Val
: Boolean := True) is
3399 pragma Assert
(False
3400 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3401 Set_Flag18
(N
, Val
);
3402 end Set_Address_Warning_Posted
;
3404 procedure Set_Aggregate_Bounds
3405 (N
: Node_Id
; Val
: Node_Id
) is
3407 pragma Assert
(False
3408 or else NT
(N
).Nkind
= N_Aggregate
);
3409 Set_Node3
(N
, Val
); -- semantic field, no parent set
3410 end Set_Aggregate_Bounds
;
3412 procedure Set_Aliased_Present
3413 (N
: Node_Id
; Val
: Boolean := True) is
3415 pragma Assert
(False
3416 or else NT
(N
).Nkind
= N_Component_Definition
3417 or else NT
(N
).Nkind
= N_Object_Declaration
3418 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3420 end Set_Aliased_Present
;
3422 procedure Set_All_Others
3423 (N
: Node_Id
; Val
: Boolean := True) is
3425 pragma Assert
(False
3426 or else NT
(N
).Nkind
= N_Others_Choice
);
3427 Set_Flag11
(N
, Val
);
3430 procedure Set_All_Present
3431 (N
: Node_Id
; Val
: Boolean := True) is
3433 pragma Assert
(False
3434 or else NT
(N
).Nkind
= N_Access_Definition
3435 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3436 or else NT
(N
).Nkind
= N_Quantified_Expression
3437 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3438 Set_Flag15
(N
, Val
);
3439 end Set_All_Present
;
3441 procedure Set_Alternatives
3442 (N
: Node_Id
; Val
: List_Id
) is
3444 pragma Assert
(False
3445 or else NT
(N
).Nkind
= N_Case_Expression
3446 or else NT
(N
).Nkind
= N_Case_Statement
3447 or else NT
(N
).Nkind
= N_In
3448 or else NT
(N
).Nkind
= N_Not_In
);
3449 Set_List4_With_Parent
(N
, Val
);
3450 end Set_Alternatives
;
3452 procedure Set_Ancestor_Part
3453 (N
: Node_Id
; Val
: Node_Id
) is
3455 pragma Assert
(False
3456 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3457 Set_Node3_With_Parent
(N
, Val
);
3458 end Set_Ancestor_Part
;
3460 procedure Set_Atomic_Sync_Required
3461 (N
: Node_Id
; Val
: Boolean := True) is
3463 pragma Assert
(False
3464 or else NT
(N
).Nkind
= N_Expanded_Name
3465 or else NT
(N
).Nkind
= N_Explicit_Dereference
3466 or else NT
(N
).Nkind
= N_Identifier
3467 or else NT
(N
).Nkind
= N_Indexed_Component
3468 or else NT
(N
).Nkind
= N_Selected_Component
);
3469 Set_Flag14
(N
, Val
);
3470 end Set_Atomic_Sync_Required
;
3472 procedure Set_Array_Aggregate
3473 (N
: Node_Id
; Val
: Node_Id
) is
3475 pragma Assert
(False
3476 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3477 Set_Node3_With_Parent
(N
, Val
);
3478 end Set_Array_Aggregate
;
3480 procedure Set_Aspect_Rep_Item
3481 (N
: Node_Id
; Val
: Node_Id
) is
3483 pragma Assert
(False
3484 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3486 end Set_Aspect_Rep_Item
;
3488 procedure Set_Assignment_OK
3489 (N
: Node_Id
; Val
: Boolean := True) is
3491 pragma Assert
(False
3492 or else NT
(N
).Nkind
= N_Object_Declaration
3493 or else NT
(N
).Nkind
in N_Subexpr
);
3494 Set_Flag15
(N
, Val
);
3495 end Set_Assignment_OK
;
3497 procedure Set_Associated_Node
3498 (N
: Node_Id
; Val
: Node_Id
) is
3500 pragma Assert
(False
3501 or else NT
(N
).Nkind
in N_Has_Entity
3502 or else NT
(N
).Nkind
= N_Aggregate
3503 or else NT
(N
).Nkind
= N_Extension_Aggregate
3504 or else NT
(N
).Nkind
= N_Selected_Component
);
3505 Set_Node4
(N
, Val
); -- semantic field, no parent set
3506 end Set_Associated_Node
;
3508 procedure Set_At_End_Proc
3509 (N
: Node_Id
; Val
: Node_Id
) is
3511 pragma Assert
(False
3512 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3514 end Set_At_End_Proc
;
3516 procedure Set_Attribute_Name
3517 (N
: Node_Id
; Val
: Name_Id
) is
3519 pragma Assert
(False
3520 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3522 end Set_Attribute_Name
;
3524 procedure Set_Aux_Decls_Node
3525 (N
: Node_Id
; Val
: Node_Id
) is
3527 pragma Assert
(False
3528 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3529 Set_Node5_With_Parent
(N
, Val
);
3530 end Set_Aux_Decls_Node
;
3532 procedure Set_Backwards_OK
3533 (N
: Node_Id
; Val
: Boolean := True) is
3535 pragma Assert
(False
3536 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3538 end Set_Backwards_OK
;
3540 procedure Set_Bad_Is_Detected
3541 (N
: Node_Id
; Val
: Boolean := True) is
3543 pragma Assert
(False
3544 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3545 Set_Flag15
(N
, Val
);
3546 end Set_Bad_Is_Detected
;
3548 procedure Set_Body_Required
3549 (N
: Node_Id
; Val
: Boolean := True) is
3551 pragma Assert
(False
3552 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3553 Set_Flag13
(N
, Val
);
3554 end Set_Body_Required
;
3556 procedure Set_Body_To_Inline
3557 (N
: Node_Id
; Val
: Node_Id
) is
3559 pragma Assert
(False
3560 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3562 end Set_Body_To_Inline
;
3564 procedure Set_Box_Present
3565 (N
: Node_Id
; Val
: Boolean := True) is
3567 pragma Assert
(False
3568 or else NT
(N
).Nkind
= N_Component_Association
3569 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3570 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3571 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3572 or else NT
(N
).Nkind
= N_Generic_Association
);
3573 Set_Flag15
(N
, Val
);
3574 end Set_Box_Present
;
3576 procedure Set_By_Ref
3577 (N
: Node_Id
; Val
: Boolean := True) is
3579 pragma Assert
(False
3580 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3581 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3585 procedure Set_Char_Literal_Value
3586 (N
: Node_Id
; Val
: Uint
) is
3588 pragma Assert
(False
3589 or else NT
(N
).Nkind
= N_Character_Literal
);
3591 end Set_Char_Literal_Value
;
3594 (N
: Node_Id
; Val
: Name_Id
) is
3596 pragma Assert
(False
3597 or else NT
(N
).Nkind
in N_Has_Chars
);
3601 procedure Set_Check_Address_Alignment
3602 (N
: Node_Id
; Val
: Boolean := True) is
3604 pragma Assert
(False
3605 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3606 Set_Flag11
(N
, Val
);
3607 end Set_Check_Address_Alignment
;
3609 procedure Set_Choice_Parameter
3610 (N
: Node_Id
; Val
: Node_Id
) is
3612 pragma Assert
(False
3613 or else NT
(N
).Nkind
= N_Exception_Handler
);
3614 Set_Node2_With_Parent
(N
, Val
);
3615 end Set_Choice_Parameter
;
3617 procedure Set_Choices
3618 (N
: Node_Id
; Val
: List_Id
) is
3620 pragma Assert
(False
3621 or else NT
(N
).Nkind
= N_Component_Association
);
3622 Set_List1_With_Parent
(N
, Val
);
3625 procedure Set_Class_Present
3626 (N
: Node_Id
; Val
: Boolean := True) is
3628 pragma Assert
(False
3629 or else NT
(N
).Nkind
= N_Aspect_Specification
3630 or else NT
(N
).Nkind
= N_Pragma
);
3632 end Set_Class_Present
;
3634 procedure Set_Classifications
3635 (N
: Node_Id
; Val
: Node_Id
) is
3637 pragma Assert
(False
3638 or else NT
(N
).Nkind
= N_Contract
);
3639 Set_Node3
(N
, Val
); -- semantic field, no parent set
3640 end Set_Classifications
;
3642 procedure Set_Cleanup_Actions
3643 (N
: Node_Id
; Val
: List_Id
) is
3645 pragma Assert
(False
3646 or else NT
(N
).Nkind
= N_Block_Statement
);
3647 Set_List5
(N
, Val
); -- semantic field, no parent set
3648 end Set_Cleanup_Actions
;
3650 procedure Set_Comes_From_Extended_Return_Statement
3651 (N
: Node_Id
; Val
: Boolean := True) is
3653 pragma Assert
(False
3654 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3655 Set_Flag18
(N
, Val
);
3656 end Set_Comes_From_Extended_Return_Statement
;
3658 procedure Set_Compile_Time_Known_Aggregate
3659 (N
: Node_Id
; Val
: Boolean := True) is
3661 pragma Assert
(False
3662 or else NT
(N
).Nkind
= N_Aggregate
);
3663 Set_Flag18
(N
, Val
);
3664 end Set_Compile_Time_Known_Aggregate
;
3666 procedure Set_Component_Associations
3667 (N
: Node_Id
; Val
: List_Id
) is
3669 pragma Assert
(False
3670 or else NT
(N
).Nkind
= N_Aggregate
3671 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3672 Set_List2_With_Parent
(N
, Val
);
3673 end Set_Component_Associations
;
3675 procedure Set_Component_Clauses
3676 (N
: Node_Id
; Val
: List_Id
) is
3678 pragma Assert
(False
3679 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3680 Set_List3_With_Parent
(N
, Val
);
3681 end Set_Component_Clauses
;
3683 procedure Set_Component_Definition
3684 (N
: Node_Id
; Val
: Node_Id
) is
3686 pragma Assert
(False
3687 or else NT
(N
).Nkind
= N_Component_Declaration
3688 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3689 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3690 Set_Node4_With_Parent
(N
, Val
);
3691 end Set_Component_Definition
;
3693 procedure Set_Component_Items
3694 (N
: Node_Id
; Val
: List_Id
) is
3696 pragma Assert
(False
3697 or else NT
(N
).Nkind
= N_Component_List
);
3698 Set_List3_With_Parent
(N
, Val
);
3699 end Set_Component_Items
;
3701 procedure Set_Component_List
3702 (N
: Node_Id
; Val
: Node_Id
) is
3704 pragma Assert
(False
3705 or else NT
(N
).Nkind
= N_Record_Definition
3706 or else NT
(N
).Nkind
= N_Variant
);
3707 Set_Node1_With_Parent
(N
, Val
);
3708 end Set_Component_List
;
3710 procedure Set_Component_Name
3711 (N
: Node_Id
; Val
: Node_Id
) is
3713 pragma Assert
(False
3714 or else NT
(N
).Nkind
= N_Component_Clause
);
3715 Set_Node1_With_Parent
(N
, Val
);
3716 end Set_Component_Name
;
3718 procedure Set_Componentwise_Assignment
3719 (N
: Node_Id
; Val
: Boolean := True) is
3721 pragma Assert
(False
3722 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3723 Set_Flag14
(N
, Val
);
3724 end Set_Componentwise_Assignment
;
3726 procedure Set_Condition
3727 (N
: Node_Id
; Val
: Node_Id
) is
3729 pragma Assert
(False
3730 or else NT
(N
).Nkind
= N_Accept_Alternative
3731 or else NT
(N
).Nkind
= N_Delay_Alternative
3732 or else NT
(N
).Nkind
= N_Elsif_Part
3733 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3734 or else NT
(N
).Nkind
= N_Exit_Statement
3735 or else NT
(N
).Nkind
= N_If_Statement
3736 or else NT
(N
).Nkind
= N_Iteration_Scheme
3737 or else NT
(N
).Nkind
= N_Quantified_Expression
3738 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3739 or else NT
(N
).Nkind
= N_Raise_Program_Error
3740 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3741 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3742 Set_Node1_With_Parent
(N
, Val
);
3745 procedure Set_Condition_Actions
3746 (N
: Node_Id
; Val
: List_Id
) is
3748 pragma Assert
(False
3749 or else NT
(N
).Nkind
= N_Elsif_Part
3750 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3751 Set_List3
(N
, Val
); -- semantic field, no parent set
3752 end Set_Condition_Actions
;
3754 procedure Set_Config_Pragmas
3755 (N
: Node_Id
; Val
: List_Id
) is
3757 pragma Assert
(False
3758 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3759 Set_List4_With_Parent
(N
, Val
);
3760 end Set_Config_Pragmas
;
3762 procedure Set_Constant_Present
3763 (N
: Node_Id
; Val
: Boolean := True) is
3765 pragma Assert
(False
3766 or else NT
(N
).Nkind
= N_Access_Definition
3767 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3768 or else NT
(N
).Nkind
= N_Object_Declaration
);
3769 Set_Flag17
(N
, Val
);
3770 end Set_Constant_Present
;
3772 procedure Set_Constraint
3773 (N
: Node_Id
; Val
: Node_Id
) is
3775 pragma Assert
(False
3776 or else NT
(N
).Nkind
= N_Subtype_Indication
);
3777 Set_Node3_With_Parent
(N
, Val
);
3780 procedure Set_Constraints
3781 (N
: Node_Id
; Val
: List_Id
) is
3783 pragma Assert
(False
3784 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
3785 Set_List1_With_Parent
(N
, Val
);
3786 end Set_Constraints
;
3788 procedure Set_Context_Installed
3789 (N
: Node_Id
; Val
: Boolean := True) is
3791 pragma Assert
(False
3792 or else NT
(N
).Nkind
= N_With_Clause
);
3793 Set_Flag13
(N
, Val
);
3794 end Set_Context_Installed
;
3796 procedure Set_Context_Items
3797 (N
: Node_Id
; Val
: List_Id
) is
3799 pragma Assert
(False
3800 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3801 Set_List1_With_Parent
(N
, Val
);
3802 end Set_Context_Items
;
3804 procedure Set_Context_Pending
3805 (N
: Node_Id
; Val
: Boolean := True) is
3807 pragma Assert
(False
3808 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3809 Set_Flag16
(N
, Val
);
3810 end Set_Context_Pending
;
3812 procedure Set_Contract_Test_Cases
3813 (N
: Node_Id
; Val
: Node_Id
) is
3815 pragma Assert
(False
3816 or else NT
(N
).Nkind
= N_Contract
);
3817 Set_Node2
(N
, Val
); -- semantic field, no parent set
3818 end Set_Contract_Test_Cases
;
3820 procedure Set_Controlling_Argument
3821 (N
: Node_Id
; Val
: Node_Id
) is
3823 pragma Assert
(False
3824 or else NT
(N
).Nkind
= N_Function_Call
3825 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
3826 Set_Node1
(N
, Val
); -- semantic field, no parent set
3827 end Set_Controlling_Argument
;
3829 procedure Set_Conversion_OK
3830 (N
: Node_Id
; Val
: Boolean := True) is
3832 pragma Assert
(False
3833 or else NT
(N
).Nkind
= N_Type_Conversion
);
3834 Set_Flag14
(N
, Val
);
3835 end Set_Conversion_OK
;
3837 procedure Set_Convert_To_Return_False
3838 (N
: Node_Id
; Val
: Boolean := True) is
3840 pragma Assert
(False
3841 or else NT
(N
).Nkind
= N_Raise_Expression
);
3842 Set_Flag13
(N
, Val
);
3843 end Set_Convert_To_Return_False
;
3845 procedure Set_Corresponding_Aspect
3846 (N
: Node_Id
; Val
: Node_Id
) is
3848 pragma Assert
(False
3849 or else NT
(N
).Nkind
= N_Pragma
);
3851 end Set_Corresponding_Aspect
;
3853 procedure Set_Corresponding_Body
3854 (N
: Node_Id
; Val
: Node_Id
) is
3856 pragma Assert
(False
3857 or else NT
(N
).Nkind
= N_Entry_Declaration
3858 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3859 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3860 or else NT
(N
).Nkind
= N_Package_Body_Stub
3861 or else NT
(N
).Nkind
= N_Package_Declaration
3862 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3863 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3864 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3865 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3866 or else NT
(N
).Nkind
= N_Task_Body_Stub
3867 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3868 Set_Node5
(N
, Val
); -- semantic field, no parent set
3869 end Set_Corresponding_Body
;
3871 procedure Set_Corresponding_Formal_Spec
3872 (N
: Node_Id
; Val
: Node_Id
) is
3874 pragma Assert
(False
3875 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3876 Set_Node3
(N
, Val
); -- semantic field, no parent set
3877 end Set_Corresponding_Formal_Spec
;
3879 procedure Set_Corresponding_Generic_Association
3880 (N
: Node_Id
; Val
: Node_Id
) is
3882 pragma Assert
(False
3883 or else NT
(N
).Nkind
= N_Object_Declaration
3884 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3885 Set_Node5
(N
, Val
); -- semantic field, no parent set
3886 end Set_Corresponding_Generic_Association
;
3888 procedure Set_Corresponding_Integer_Value
3889 (N
: Node_Id
; Val
: Uint
) is
3891 pragma Assert
(False
3892 or else NT
(N
).Nkind
= N_Real_Literal
);
3893 Set_Uint4
(N
, Val
); -- semantic field, no parent set
3894 end Set_Corresponding_Integer_Value
;
3896 procedure Set_Corresponding_Spec
3897 (N
: Node_Id
; Val
: Node_Id
) is
3899 pragma Assert
(False
3900 or else NT
(N
).Nkind
= N_Expression_Function
3901 or else NT
(N
).Nkind
= N_Package_Body
3902 or else NT
(N
).Nkind
= N_Protected_Body
3903 or else NT
(N
).Nkind
= N_Subprogram_Body
3904 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
3905 or else NT
(N
).Nkind
= N_Task_Body
3906 or else NT
(N
).Nkind
= N_With_Clause
);
3907 Set_Node5
(N
, Val
); -- semantic field, no parent set
3908 end Set_Corresponding_Spec
;
3910 procedure Set_Corresponding_Spec_Of_Stub
3911 (N
: Node_Id
; Val
: Entity_Id
) is
3913 pragma Assert
(False
3914 or else NT
(N
).Nkind
= N_Package_Body_Stub
3915 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3916 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3917 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
3918 Set_Node2
(N
, Val
); -- semantic field, no parent set
3919 end Set_Corresponding_Spec_Of_Stub
;
3921 procedure Set_Corresponding_Stub
3922 (N
: Node_Id
; Val
: Node_Id
) is
3924 pragma Assert
(False
3925 or else NT
(N
).Nkind
= N_Subunit
);
3927 end Set_Corresponding_Stub
;
3929 procedure Set_Dcheck_Function
3930 (N
: Node_Id
; Val
: Entity_Id
) is
3932 pragma Assert
(False
3933 or else NT
(N
).Nkind
= N_Variant
);
3934 Set_Node5
(N
, Val
); -- semantic field, no parent set
3935 end Set_Dcheck_Function
;
3937 procedure Set_Declarations
3938 (N
: Node_Id
; Val
: List_Id
) is
3940 pragma Assert
(False
3941 or else NT
(N
).Nkind
= N_Accept_Statement
3942 or else NT
(N
).Nkind
= N_Block_Statement
3943 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3944 or else NT
(N
).Nkind
= N_Entry_Body
3945 or else NT
(N
).Nkind
= N_Package_Body
3946 or else NT
(N
).Nkind
= N_Protected_Body
3947 or else NT
(N
).Nkind
= N_Subprogram_Body
3948 or else NT
(N
).Nkind
= N_Task_Body
);
3949 Set_List2_With_Parent
(N
, Val
);
3950 end Set_Declarations
;
3952 procedure Set_Default_Expression
3953 (N
: Node_Id
; Val
: Node_Id
) is
3955 pragma Assert
(False
3956 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3957 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3958 Set_Node5
(N
, Val
); -- semantic field, no parent set
3959 end Set_Default_Expression
;
3961 procedure Set_Default_Storage_Pool
3962 (N
: Node_Id
; Val
: Node_Id
) is
3964 pragma Assert
(False
3965 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3966 Set_Node3
(N
, Val
); -- semantic field, no parent set
3967 end Set_Default_Storage_Pool
;
3969 procedure Set_Default_Name
3970 (N
: Node_Id
; Val
: Node_Id
) is
3972 pragma Assert
(False
3973 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3974 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
3975 Set_Node2_With_Parent
(N
, Val
);
3976 end Set_Default_Name
;
3978 procedure Set_Defining_Identifier
3979 (N
: Node_Id
; Val
: Entity_Id
) is
3981 pragma Assert
(False
3982 or else NT
(N
).Nkind
= N_Component_Declaration
3983 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
3984 or else NT
(N
).Nkind
= N_Discriminant_Specification
3985 or else NT
(N
).Nkind
= N_Entry_Body
3986 or else NT
(N
).Nkind
= N_Entry_Declaration
3987 or else NT
(N
).Nkind
= N_Entry_Index_Specification
3988 or else NT
(N
).Nkind
= N_Exception_Declaration
3989 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
3990 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3991 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3992 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3993 or else NT
(N
).Nkind
= N_Full_Type_Declaration
3994 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
3995 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3996 or else NT
(N
).Nkind
= N_Iterator_Specification
3997 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
3998 or else NT
(N
).Nkind
= N_Number_Declaration
3999 or else NT
(N
).Nkind
= N_Object_Declaration
4000 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4001 or else NT
(N
).Nkind
= N_Package_Body_Stub
4002 or else NT
(N
).Nkind
= N_Parameter_Specification
4003 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4004 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4005 or else NT
(N
).Nkind
= N_Protected_Body
4006 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4007 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4008 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4009 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4010 or else NT
(N
).Nkind
= N_Subtype_Declaration
4011 or else NT
(N
).Nkind
= N_Task_Body
4012 or else NT
(N
).Nkind
= N_Task_Body_Stub
4013 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4014 Set_Node1_With_Parent
(N
, Val
);
4015 end Set_Defining_Identifier
;
4017 procedure Set_Defining_Unit_Name
4018 (N
: Node_Id
; Val
: Node_Id
) is
4020 pragma Assert
(False
4021 or else NT
(N
).Nkind
= N_Function_Instantiation
4022 or else NT
(N
).Nkind
= N_Function_Specification
4023 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4024 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4025 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4026 or else NT
(N
).Nkind
= N_Package_Body
4027 or else NT
(N
).Nkind
= N_Package_Instantiation
4028 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4029 or else NT
(N
).Nkind
= N_Package_Specification
4030 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4031 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4032 Set_Node1_With_Parent
(N
, Val
);
4033 end Set_Defining_Unit_Name
;
4035 procedure Set_Delay_Alternative
4036 (N
: Node_Id
; Val
: Node_Id
) is
4038 pragma Assert
(False
4039 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4040 Set_Node4_With_Parent
(N
, Val
);
4041 end Set_Delay_Alternative
;
4043 procedure Set_Delay_Statement
4044 (N
: Node_Id
; Val
: Node_Id
) is
4046 pragma Assert
(False
4047 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4048 Set_Node2_With_Parent
(N
, Val
);
4049 end Set_Delay_Statement
;
4051 procedure Set_Delta_Expression
4052 (N
: Node_Id
; Val
: Node_Id
) is
4054 pragma Assert
(False
4055 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4056 or else NT
(N
).Nkind
= N_Delta_Constraint
4057 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4058 Set_Node3_With_Parent
(N
, Val
);
4059 end Set_Delta_Expression
;
4061 procedure Set_Digits_Expression
4062 (N
: Node_Id
; Val
: Node_Id
) is
4064 pragma Assert
(False
4065 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4066 or else NT
(N
).Nkind
= N_Digits_Constraint
4067 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4068 Set_Node2_With_Parent
(N
, Val
);
4069 end Set_Digits_Expression
;
4071 procedure Set_Discr_Check_Funcs_Built
4072 (N
: Node_Id
; Val
: Boolean := True) is
4074 pragma Assert
(False
4075 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4076 Set_Flag11
(N
, Val
);
4077 end Set_Discr_Check_Funcs_Built
;
4079 procedure Set_Discrete_Choices
4080 (N
: Node_Id
; Val
: List_Id
) is
4082 pragma Assert
(False
4083 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4084 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4085 or else NT
(N
).Nkind
= N_Variant
);
4086 Set_List4_With_Parent
(N
, Val
);
4087 end Set_Discrete_Choices
;
4089 procedure Set_Discrete_Range
4090 (N
: Node_Id
; Val
: Node_Id
) is
4092 pragma Assert
(False
4093 or else NT
(N
).Nkind
= N_Slice
);
4094 Set_Node4_With_Parent
(N
, Val
);
4095 end Set_Discrete_Range
;
4097 procedure Set_Discrete_Subtype_Definition
4098 (N
: Node_Id
; Val
: Node_Id
) is
4100 pragma Assert
(False
4101 or else NT
(N
).Nkind
= N_Entry_Declaration
4102 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4103 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4104 Set_Node4_With_Parent
(N
, Val
);
4105 end Set_Discrete_Subtype_Definition
;
4107 procedure Set_Discrete_Subtype_Definitions
4108 (N
: Node_Id
; Val
: List_Id
) is
4110 pragma Assert
(False
4111 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4112 Set_List2_With_Parent
(N
, Val
);
4113 end Set_Discrete_Subtype_Definitions
;
4115 procedure Set_Discriminant_Specifications
4116 (N
: Node_Id
; Val
: List_Id
) is
4118 pragma Assert
(False
4119 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4120 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4121 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4122 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4123 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4124 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4125 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4126 Set_List4_With_Parent
(N
, Val
);
4127 end Set_Discriminant_Specifications
;
4129 procedure Set_Discriminant_Type
4130 (N
: Node_Id
; Val
: Node_Id
) is
4132 pragma Assert
(False
4133 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4134 Set_Node5_With_Parent
(N
, Val
);
4135 end Set_Discriminant_Type
;
4137 procedure Set_Do_Accessibility_Check
4138 (N
: Node_Id
; Val
: Boolean := True) is
4140 pragma Assert
(False
4141 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4142 Set_Flag13
(N
, Val
);
4143 end Set_Do_Accessibility_Check
;
4145 procedure Set_Do_Discriminant_Check
4146 (N
: Node_Id
; Val
: Boolean := True) is
4148 pragma Assert
(False
4149 or else NT
(N
).Nkind
= N_Assignment_Statement
4150 or else NT
(N
).Nkind
= N_Selected_Component
4151 or else NT
(N
).Nkind
= N_Type_Conversion
);
4153 end Set_Do_Discriminant_Check
;
4155 procedure Set_Do_Division_Check
4156 (N
: Node_Id
; Val
: Boolean := True) is
4158 pragma Assert
(False
4159 or else NT
(N
).Nkind
= N_Op_Divide
4160 or else NT
(N
).Nkind
= N_Op_Mod
4161 or else NT
(N
).Nkind
= N_Op_Rem
);
4162 Set_Flag13
(N
, Val
);
4163 end Set_Do_Division_Check
;
4165 procedure Set_Do_Length_Check
4166 (N
: Node_Id
; Val
: Boolean := True) is
4168 pragma Assert
(False
4169 or else NT
(N
).Nkind
= N_Assignment_Statement
4170 or else NT
(N
).Nkind
= N_Op_And
4171 or else NT
(N
).Nkind
= N_Op_Or
4172 or else NT
(N
).Nkind
= N_Op_Xor
4173 or else NT
(N
).Nkind
= N_Type_Conversion
);
4175 end Set_Do_Length_Check
;
4177 procedure Set_Do_Overflow_Check
4178 (N
: Node_Id
; Val
: Boolean := True) is
4180 pragma Assert
(False
4181 or else NT
(N
).Nkind
in N_Op
4182 or else NT
(N
).Nkind
= N_Attribute_Reference
4183 or else NT
(N
).Nkind
= N_Case_Expression
4184 or else NT
(N
).Nkind
= N_If_Expression
4185 or else NT
(N
).Nkind
= N_Type_Conversion
);
4186 Set_Flag17
(N
, Val
);
4187 end Set_Do_Overflow_Check
;
4189 procedure Set_Do_Range_Check
4190 (N
: Node_Id
; Val
: Boolean := True) is
4192 pragma Assert
(False
4193 or else NT
(N
).Nkind
in N_Subexpr
);
4195 end Set_Do_Range_Check
;
4197 procedure Set_Do_Storage_Check
4198 (N
: Node_Id
; Val
: Boolean := True) is
4200 pragma Assert
(False
4201 or else NT
(N
).Nkind
= N_Allocator
4202 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4203 Set_Flag17
(N
, Val
);
4204 end Set_Do_Storage_Check
;
4206 procedure Set_Do_Tag_Check
4207 (N
: Node_Id
; Val
: Boolean := True) is
4209 pragma Assert
(False
4210 or else NT
(N
).Nkind
= N_Assignment_Statement
4211 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4212 or else NT
(N
).Nkind
= N_Function_Call
4213 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4214 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4215 or else NT
(N
).Nkind
= N_Type_Conversion
);
4216 Set_Flag13
(N
, Val
);
4217 end Set_Do_Tag_Check
;
4219 procedure Set_Elaborate_All_Desirable
4220 (N
: Node_Id
; Val
: Boolean := True) is
4222 pragma Assert
(False
4223 or else NT
(N
).Nkind
= N_With_Clause
);
4225 end Set_Elaborate_All_Desirable
;
4227 procedure Set_Elaborate_All_Present
4228 (N
: Node_Id
; Val
: Boolean := True) is
4230 pragma Assert
(False
4231 or else NT
(N
).Nkind
= N_With_Clause
);
4232 Set_Flag14
(N
, Val
);
4233 end Set_Elaborate_All_Present
;
4235 procedure Set_Elaborate_Desirable
4236 (N
: Node_Id
; Val
: Boolean := True) is
4238 pragma Assert
(False
4239 or else NT
(N
).Nkind
= N_With_Clause
);
4240 Set_Flag11
(N
, Val
);
4241 end Set_Elaborate_Desirable
;
4243 procedure Set_Elaborate_Present
4244 (N
: Node_Id
; Val
: Boolean := True) is
4246 pragma Assert
(False
4247 or else NT
(N
).Nkind
= N_With_Clause
);
4249 end Set_Elaborate_Present
;
4251 procedure Set_Elaboration_Boolean
4252 (N
: Node_Id
; Val
: Node_Id
) is
4254 pragma Assert
(False
4255 or else NT
(N
).Nkind
= N_Function_Specification
4256 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4258 end Set_Elaboration_Boolean
;
4260 procedure Set_Else_Actions
4261 (N
: Node_Id
; Val
: List_Id
) is
4263 pragma Assert
(False
4264 or else NT
(N
).Nkind
= N_If_Expression
);
4265 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4266 end Set_Else_Actions
;
4268 procedure Set_Else_Statements
4269 (N
: Node_Id
; Val
: List_Id
) is
4271 pragma Assert
(False
4272 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4273 or else NT
(N
).Nkind
= N_If_Statement
4274 or else NT
(N
).Nkind
= N_Selective_Accept
);
4275 Set_List4_With_Parent
(N
, Val
);
4276 end Set_Else_Statements
;
4278 procedure Set_Elsif_Parts
4279 (N
: Node_Id
; Val
: List_Id
) is
4281 pragma Assert
(False
4282 or else NT
(N
).Nkind
= N_If_Statement
);
4283 Set_List3_With_Parent
(N
, Val
);
4284 end Set_Elsif_Parts
;
4286 procedure Set_Enclosing_Variant
4287 (N
: Node_Id
; Val
: Node_Id
) is
4289 pragma Assert
(False
4290 or else NT
(N
).Nkind
= N_Variant
);
4291 Set_Node2
(N
, Val
); -- semantic field, no parent set
4292 end Set_Enclosing_Variant
;
4294 procedure Set_End_Label
4295 (N
: Node_Id
; Val
: Node_Id
) is
4297 pragma Assert
(False
4298 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4299 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4300 or else NT
(N
).Nkind
= N_Loop_Statement
4301 or else NT
(N
).Nkind
= N_Package_Specification
4302 or else NT
(N
).Nkind
= N_Protected_Body
4303 or else NT
(N
).Nkind
= N_Protected_Definition
4304 or else NT
(N
).Nkind
= N_Record_Definition
4305 or else NT
(N
).Nkind
= N_Task_Definition
);
4306 Set_Node4_With_Parent
(N
, Val
);
4309 procedure Set_End_Span
4310 (N
: Node_Id
; Val
: Uint
) is
4312 pragma Assert
(False
4313 or else NT
(N
).Nkind
= N_Case_Statement
4314 or else NT
(N
).Nkind
= N_If_Statement
);
4318 procedure Set_Entity
4319 (N
: Node_Id
; Val
: Node_Id
) is
4321 pragma Assert
(False
4322 or else NT
(N
).Nkind
in N_Has_Entity
4323 or else NT
(N
).Nkind
= N_Aspect_Specification
4324 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4325 or else NT
(N
).Nkind
= N_Freeze_Entity
4326 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4327 Set_Node4
(N
, Val
); -- semantic field, no parent set
4330 procedure Set_Entry_Body_Formal_Part
4331 (N
: Node_Id
; Val
: Node_Id
) is
4333 pragma Assert
(False
4334 or else NT
(N
).Nkind
= N_Entry_Body
);
4335 Set_Node5_With_Parent
(N
, Val
);
4336 end Set_Entry_Body_Formal_Part
;
4338 procedure Set_Entry_Call_Alternative
4339 (N
: Node_Id
; Val
: Node_Id
) is
4341 pragma Assert
(False
4342 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4343 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4344 Set_Node1_With_Parent
(N
, Val
);
4345 end Set_Entry_Call_Alternative
;
4347 procedure Set_Entry_Call_Statement
4348 (N
: Node_Id
; Val
: Node_Id
) is
4350 pragma Assert
(False
4351 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4352 Set_Node1_With_Parent
(N
, Val
);
4353 end Set_Entry_Call_Statement
;
4355 procedure Set_Entry_Direct_Name
4356 (N
: Node_Id
; Val
: Node_Id
) is
4358 pragma Assert
(False
4359 or else NT
(N
).Nkind
= N_Accept_Statement
);
4360 Set_Node1_With_Parent
(N
, Val
);
4361 end Set_Entry_Direct_Name
;
4363 procedure Set_Entry_Index
4364 (N
: Node_Id
; Val
: Node_Id
) is
4366 pragma Assert
(False
4367 or else NT
(N
).Nkind
= N_Accept_Statement
);
4368 Set_Node5_With_Parent
(N
, Val
);
4369 end Set_Entry_Index
;
4371 procedure Set_Entry_Index_Specification
4372 (N
: Node_Id
; Val
: Node_Id
) is
4374 pragma Assert
(False
4375 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4376 Set_Node4_With_Parent
(N
, Val
);
4377 end Set_Entry_Index_Specification
;
4380 (N
: Node_Id
; Val
: Node_Id
) is
4382 pragma Assert
(False
4383 or else NT
(N
).Nkind
in N_Has_Etype
);
4384 Set_Node5
(N
, Val
); -- semantic field, no parent set
4387 procedure Set_Exception_Choices
4388 (N
: Node_Id
; Val
: List_Id
) is
4390 pragma Assert
(False
4391 or else NT
(N
).Nkind
= N_Exception_Handler
);
4392 Set_List4_With_Parent
(N
, Val
);
4393 end Set_Exception_Choices
;
4395 procedure Set_Exception_Handlers
4396 (N
: Node_Id
; Val
: List_Id
) is
4398 pragma Assert
(False
4399 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4400 Set_List5_With_Parent
(N
, Val
);
4401 end Set_Exception_Handlers
;
4403 procedure Set_Exception_Junk
4404 (N
: Node_Id
; Val
: Boolean := True) is
4406 pragma Assert
(False
4407 or else NT
(N
).Nkind
= N_Block_Statement
4408 or else NT
(N
).Nkind
= N_Goto_Statement
4409 or else NT
(N
).Nkind
= N_Label
4410 or else NT
(N
).Nkind
= N_Object_Declaration
4411 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4413 end Set_Exception_Junk
;
4415 procedure Set_Exception_Label
4416 (N
: Node_Id
; Val
: Node_Id
) is
4418 pragma Assert
(False
4419 or else NT
(N
).Nkind
= N_Exception_Handler
4420 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4421 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4422 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4423 Set_Node5
(N
, Val
); -- semantic field, no parent set
4424 end Set_Exception_Label
;
4426 procedure Set_Expansion_Delayed
4427 (N
: Node_Id
; Val
: Boolean := True) is
4429 pragma Assert
(False
4430 or else NT
(N
).Nkind
= N_Aggregate
4431 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4432 Set_Flag11
(N
, Val
);
4433 end Set_Expansion_Delayed
;
4435 procedure Set_Explicit_Actual_Parameter
4436 (N
: Node_Id
; Val
: Node_Id
) is
4438 pragma Assert
(False
4439 or else NT
(N
).Nkind
= N_Parameter_Association
);
4440 Set_Node3_With_Parent
(N
, Val
);
4441 end Set_Explicit_Actual_Parameter
;
4443 procedure Set_Explicit_Generic_Actual_Parameter
4444 (N
: Node_Id
; Val
: Node_Id
) is
4446 pragma Assert
(False
4447 or else NT
(N
).Nkind
= N_Generic_Association
);
4448 Set_Node1_With_Parent
(N
, Val
);
4449 end Set_Explicit_Generic_Actual_Parameter
;
4451 procedure Set_Expression
4452 (N
: Node_Id
; Val
: Node_Id
) is
4454 pragma Assert
(False
4455 or else NT
(N
).Nkind
= N_Allocator
4456 or else NT
(N
).Nkind
= N_Aspect_Specification
4457 or else NT
(N
).Nkind
= N_Assignment_Statement
4458 or else NT
(N
).Nkind
= N_At_Clause
4459 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4460 or else NT
(N
).Nkind
= N_Case_Expression
4461 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4462 or else NT
(N
).Nkind
= N_Case_Statement
4463 or else NT
(N
).Nkind
= N_Code_Statement
4464 or else NT
(N
).Nkind
= N_Component_Association
4465 or else NT
(N
).Nkind
= N_Component_Declaration
4466 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4467 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4468 or else NT
(N
).Nkind
= N_Discriminant_Association
4469 or else NT
(N
).Nkind
= N_Discriminant_Specification
4470 or else NT
(N
).Nkind
= N_Exception_Declaration
4471 or else NT
(N
).Nkind
= N_Expression_Function
4472 or else NT
(N
).Nkind
= N_Expression_With_Actions
4473 or else NT
(N
).Nkind
= N_Free_Statement
4474 or else NT
(N
).Nkind
= N_Mod_Clause
4475 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4476 or else NT
(N
).Nkind
= N_Number_Declaration
4477 or else NT
(N
).Nkind
= N_Object_Declaration
4478 or else NT
(N
).Nkind
= N_Parameter_Specification
4479 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4480 or else NT
(N
).Nkind
= N_Qualified_Expression
4481 or else NT
(N
).Nkind
= N_Raise_Expression
4482 or else NT
(N
).Nkind
= N_Raise_Statement
4483 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4484 or else NT
(N
).Nkind
= N_Type_Conversion
4485 or else NT
(N
).Nkind
= N_Unchecked_Expression
4486 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4487 Set_Node3_With_Parent
(N
, Val
);
4490 procedure Set_Expressions
4491 (N
: Node_Id
; Val
: List_Id
) is
4493 pragma Assert
(False
4494 or else NT
(N
).Nkind
= N_Aggregate
4495 or else NT
(N
).Nkind
= N_Attribute_Reference
4496 or else NT
(N
).Nkind
= N_Extension_Aggregate
4497 or else NT
(N
).Nkind
= N_If_Expression
4498 or else NT
(N
).Nkind
= N_Indexed_Component
);
4499 Set_List1_With_Parent
(N
, Val
);
4500 end Set_Expressions
;
4502 procedure Set_First_Bit
4503 (N
: Node_Id
; Val
: Node_Id
) is
4505 pragma Assert
(False
4506 or else NT
(N
).Nkind
= N_Component_Clause
);
4507 Set_Node3_With_Parent
(N
, Val
);
4510 procedure Set_First_Inlined_Subprogram
4511 (N
: Node_Id
; Val
: Entity_Id
) is
4513 pragma Assert
(False
4514 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4515 Set_Node3
(N
, Val
); -- semantic field, no parent set
4516 end Set_First_Inlined_Subprogram
;
4518 procedure Set_First_Name
4519 (N
: Node_Id
; Val
: Boolean := True) is
4521 pragma Assert
(False
4522 or else NT
(N
).Nkind
= N_With_Clause
);
4526 procedure Set_First_Named_Actual
4527 (N
: Node_Id
; Val
: Node_Id
) is
4529 pragma Assert
(False
4530 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4531 or else NT
(N
).Nkind
= N_Function_Call
4532 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4533 Set_Node4
(N
, Val
); -- semantic field, no parent set
4534 end Set_First_Named_Actual
;
4536 procedure Set_First_Real_Statement
4537 (N
: Node_Id
; Val
: Node_Id
) is
4539 pragma Assert
(False
4540 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4541 Set_Node2
(N
, Val
); -- semantic field, no parent set
4542 end Set_First_Real_Statement
;
4544 procedure Set_First_Subtype_Link
4545 (N
: Node_Id
; Val
: Entity_Id
) is
4547 pragma Assert
(False
4548 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4549 Set_Node5
(N
, Val
); -- semantic field, no parent set
4550 end Set_First_Subtype_Link
;
4552 procedure Set_Float_Truncate
4553 (N
: Node_Id
; Val
: Boolean := True) is
4555 pragma Assert
(False
4556 or else NT
(N
).Nkind
= N_Type_Conversion
);
4557 Set_Flag11
(N
, Val
);
4558 end Set_Float_Truncate
;
4560 procedure Set_Formal_Type_Definition
4561 (N
: Node_Id
; Val
: Node_Id
) is
4563 pragma Assert
(False
4564 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4565 Set_Node3_With_Parent
(N
, Val
);
4566 end Set_Formal_Type_Definition
;
4568 procedure Set_Forwards_OK
4569 (N
: Node_Id
; Val
: Boolean := True) is
4571 pragma Assert
(False
4572 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4574 end Set_Forwards_OK
;
4576 procedure Set_From_Aspect_Specification
4577 (N
: Node_Id
; Val
: Boolean := True) is
4579 pragma Assert
(False
4580 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4581 or else NT
(N
).Nkind
= N_Pragma
);
4582 Set_Flag13
(N
, Val
);
4583 end Set_From_Aspect_Specification
;
4585 procedure Set_From_At_End
4586 (N
: Node_Id
; Val
: Boolean := True) is
4588 pragma Assert
(False
4589 or else NT
(N
).Nkind
= N_Raise_Statement
);
4591 end Set_From_At_End
;
4593 procedure Set_From_At_Mod
4594 (N
: Node_Id
; Val
: Boolean := True) is
4596 pragma Assert
(False
4597 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4599 end Set_From_At_Mod
;
4601 procedure Set_From_Conditional_Expression
4602 (N
: Node_Id
; Val
: Boolean := True) is
4604 pragma Assert
(False
4605 or else NT
(N
).Nkind
= N_Case_Statement
4606 or else NT
(N
).Nkind
= N_If_Statement
);
4608 end Set_From_Conditional_Expression
;
4610 procedure Set_From_Default
4611 (N
: Node_Id
; Val
: Boolean := True) is
4613 pragma Assert
(False
4614 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4616 end Set_From_Default
;
4618 procedure Set_Generalized_Indexing
4619 (N
: Node_Id
; Val
: Node_Id
) is
4621 pragma Assert
(False
4622 or else NT
(N
).Nkind
= N_Indexed_Component
);
4624 end Set_Generalized_Indexing
;
4626 procedure Set_Generic_Associations
4627 (N
: Node_Id
; Val
: List_Id
) is
4629 pragma Assert
(False
4630 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4631 or else NT
(N
).Nkind
= N_Function_Instantiation
4632 or else NT
(N
).Nkind
= N_Package_Instantiation
4633 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4634 Set_List3_With_Parent
(N
, Val
);
4635 end Set_Generic_Associations
;
4637 procedure Set_Generic_Formal_Declarations
4638 (N
: Node_Id
; Val
: List_Id
) is
4640 pragma Assert
(False
4641 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4642 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4643 Set_List2_With_Parent
(N
, Val
);
4644 end Set_Generic_Formal_Declarations
;
4646 procedure Set_Generic_Parent
4647 (N
: Node_Id
; Val
: Node_Id
) is
4649 pragma Assert
(False
4650 or else NT
(N
).Nkind
= N_Function_Specification
4651 or else NT
(N
).Nkind
= N_Package_Specification
4652 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4654 end Set_Generic_Parent
;
4656 procedure Set_Generic_Parent_Type
4657 (N
: Node_Id
; Val
: Node_Id
) is
4659 pragma Assert
(False
4660 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4662 end Set_Generic_Parent_Type
;
4664 procedure Set_Handled_Statement_Sequence
4665 (N
: Node_Id
; Val
: Node_Id
) is
4667 pragma Assert
(False
4668 or else NT
(N
).Nkind
= N_Accept_Statement
4669 or else NT
(N
).Nkind
= N_Block_Statement
4670 or else NT
(N
).Nkind
= N_Entry_Body
4671 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4672 or else NT
(N
).Nkind
= N_Package_Body
4673 or else NT
(N
).Nkind
= N_Subprogram_Body
4674 or else NT
(N
).Nkind
= N_Task_Body
);
4675 Set_Node4_With_Parent
(N
, Val
);
4676 end Set_Handled_Statement_Sequence
;
4678 procedure Set_Handler_List_Entry
4679 (N
: Node_Id
; Val
: Node_Id
) is
4681 pragma Assert
(False
4682 or else NT
(N
).Nkind
= N_Object_Declaration
);
4684 end Set_Handler_List_Entry
;
4686 procedure Set_Has_Created_Identifier
4687 (N
: Node_Id
; Val
: Boolean := True) is
4689 pragma Assert
(False
4690 or else NT
(N
).Nkind
= N_Block_Statement
4691 or else NT
(N
).Nkind
= N_Loop_Statement
);
4692 Set_Flag15
(N
, Val
);
4693 end Set_Has_Created_Identifier
;
4695 procedure Set_Has_Dereference_Action
4696 (N
: Node_Id
; Val
: Boolean := True) is
4698 pragma Assert
(False
4699 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4700 Set_Flag13
(N
, Val
);
4701 end Set_Has_Dereference_Action
;
4703 procedure Set_Has_Dynamic_Length_Check
4704 (N
: Node_Id
; Val
: Boolean := True) is
4706 pragma Assert
(False
4707 or else NT
(N
).Nkind
in N_Subexpr
);
4708 Set_Flag10
(N
, Val
);
4709 end Set_Has_Dynamic_Length_Check
;
4711 procedure Set_Has_Dynamic_Range_Check
4712 (N
: Node_Id
; Val
: Boolean := True) is
4714 pragma Assert
(False
4715 or else NT
(N
).Nkind
= N_Subtype_Declaration
4716 or else NT
(N
).Nkind
in N_Subexpr
);
4717 Set_Flag12
(N
, Val
);
4718 end Set_Has_Dynamic_Range_Check
;
4720 procedure Set_Has_Init_Expression
4721 (N
: Node_Id
; Val
: Boolean := True) is
4723 pragma Assert
(False
4724 or else NT
(N
).Nkind
= N_Object_Declaration
);
4725 Set_Flag14
(N
, Val
);
4726 end Set_Has_Init_Expression
;
4728 procedure Set_Has_Local_Raise
4729 (N
: Node_Id
; Val
: Boolean := True) is
4731 pragma Assert
(False
4732 or else NT
(N
).Nkind
= N_Exception_Handler
);
4734 end Set_Has_Local_Raise
;
4736 procedure Set_Has_No_Elaboration_Code
4737 (N
: Node_Id
; Val
: Boolean := True) is
4739 pragma Assert
(False
4740 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4741 Set_Flag17
(N
, Val
);
4742 end Set_Has_No_Elaboration_Code
;
4744 procedure Set_Has_Pragma_Suppress_All
4745 (N
: Node_Id
; Val
: Boolean := True) is
4747 pragma Assert
(False
4748 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4749 Set_Flag14
(N
, Val
);
4750 end Set_Has_Pragma_Suppress_All
;
4752 procedure Set_Has_Private_View
4753 (N
: Node_Id
; Val
: Boolean := True) is
4755 pragma Assert
(False
4756 or else NT
(N
).Nkind
in N_Op
4757 or else NT
(N
).Nkind
= N_Character_Literal
4758 or else NT
(N
).Nkind
= N_Expanded_Name
4759 or else NT
(N
).Nkind
= N_Identifier
4760 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4761 Set_Flag11
(N
, Val
);
4762 end Set_Has_Private_View
;
4764 procedure Set_Has_Relative_Deadline_Pragma
4765 (N
: Node_Id
; Val
: Boolean := True) is
4767 pragma Assert
(False
4768 or else NT
(N
).Nkind
= N_Subprogram_Body
4769 or else NT
(N
).Nkind
= N_Task_Definition
);
4771 end Set_Has_Relative_Deadline_Pragma
;
4773 procedure Set_Has_Self_Reference
4774 (N
: Node_Id
; Val
: Boolean := True) is
4776 pragma Assert
(False
4777 or else NT
(N
).Nkind
= N_Aggregate
4778 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4779 Set_Flag13
(N
, Val
);
4780 end Set_Has_Self_Reference
;
4782 procedure Set_Has_SP_Choice
4783 (N
: Node_Id
; Val
: Boolean := True) is
4785 pragma Assert
(False
4786 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4787 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4788 or else NT
(N
).Nkind
= N_Variant
);
4789 Set_Flag15
(N
, Val
);
4790 end Set_Has_SP_Choice
;
4792 procedure Set_Has_Storage_Size_Pragma
4793 (N
: Node_Id
; Val
: Boolean := True) is
4795 pragma Assert
(False
4796 or else NT
(N
).Nkind
= N_Task_Definition
);
4798 end Set_Has_Storage_Size_Pragma
;
4800 procedure Set_Has_Wide_Character
4801 (N
: Node_Id
; Val
: Boolean := True) is
4803 pragma Assert
(False
4804 or else NT
(N
).Nkind
= N_String_Literal
);
4805 Set_Flag11
(N
, Val
);
4806 end Set_Has_Wide_Character
;
4808 procedure Set_Has_Wide_Wide_Character
4809 (N
: Node_Id
; Val
: Boolean := True) is
4811 pragma Assert
(False
4812 or else NT
(N
).Nkind
= N_String_Literal
);
4813 Set_Flag13
(N
, Val
);
4814 end Set_Has_Wide_Wide_Character
;
4816 procedure Set_Header_Size_Added
4817 (N
: Node_Id
; Val
: Boolean := True) is
4819 pragma Assert
(False
4820 or else NT
(N
).Nkind
= N_Attribute_Reference
);
4821 Set_Flag11
(N
, Val
);
4822 end Set_Header_Size_Added
;
4824 procedure Set_Hidden_By_Use_Clause
4825 (N
: Node_Id
; Val
: Elist_Id
) is
4827 pragma Assert
(False
4828 or else NT
(N
).Nkind
= N_Use_Package_Clause
4829 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
4830 Set_Elist4
(N
, Val
);
4831 end Set_Hidden_By_Use_Clause
;
4833 procedure Set_High_Bound
4834 (N
: Node_Id
; Val
: Node_Id
) is
4836 pragma Assert
(False
4837 or else NT
(N
).Nkind
= N_Range
4838 or else NT
(N
).Nkind
= N_Real_Range_Specification
4839 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
4840 Set_Node2_With_Parent
(N
, Val
);
4843 procedure Set_Identifier
4844 (N
: Node_Id
; Val
: Node_Id
) is
4846 pragma Assert
(False
4847 or else NT
(N
).Nkind
= N_Aspect_Specification
4848 or else NT
(N
).Nkind
= N_At_Clause
4849 or else NT
(N
).Nkind
= N_Block_Statement
4850 or else NT
(N
).Nkind
= N_Designator
4851 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
4852 or else NT
(N
).Nkind
= N_Label
4853 or else NT
(N
).Nkind
= N_Loop_Statement
4854 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
4855 Set_Node1_With_Parent
(N
, Val
);
4858 procedure Set_Implicit_With
4859 (N
: Node_Id
; Val
: Boolean := True) is
4861 pragma Assert
(False
4862 or else NT
(N
).Nkind
= N_With_Clause
);
4863 Set_Flag16
(N
, Val
);
4864 end Set_Implicit_With
;
4866 procedure Set_Implicit_With_From_Instantiation
4867 (N
: Node_Id
; Val
: Boolean := True) is
4869 pragma Assert
(False
4870 or else NT
(N
).Nkind
= N_With_Clause
);
4871 Set_Flag12
(N
, Val
);
4872 end Set_Implicit_With_From_Instantiation
;
4874 procedure Set_Interface_List
4875 (N
: Node_Id
; Val
: List_Id
) is
4877 pragma Assert
(False
4878 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4879 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
4880 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4881 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4882 or else NT
(N
).Nkind
= N_Record_Definition
4883 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4884 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4885 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4886 Set_List2_With_Parent
(N
, Val
);
4887 end Set_Interface_List
;
4889 procedure Set_Interface_Present
4890 (N
: Node_Id
; Val
: Boolean := True) is
4892 pragma Assert
(False
4893 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4894 or else NT
(N
).Nkind
= N_Record_Definition
);
4895 Set_Flag16
(N
, Val
);
4896 end Set_Interface_Present
;
4898 procedure Set_Import_Interface_Present
4899 (N
: Node_Id
; Val
: Boolean := True) is
4901 pragma Assert
(False
4902 or else NT
(N
).Nkind
= N_Pragma
);
4903 Set_Flag16
(N
, Val
);
4904 end Set_Import_Interface_Present
;
4906 procedure Set_In_Present
4907 (N
: Node_Id
; Val
: Boolean := True) is
4909 pragma Assert
(False
4910 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4911 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4912 Set_Flag15
(N
, Val
);
4915 procedure Set_Includes_Infinities
4916 (N
: Node_Id
; Val
: Boolean := True) is
4918 pragma Assert
(False
4919 or else NT
(N
).Nkind
= N_Range
);
4920 Set_Flag11
(N
, Val
);
4921 end Set_Includes_Infinities
;
4923 procedure Set_Incomplete_View
4924 (N
: Node_Id
; Val
: Node_Id
) is
4926 pragma Assert
(False
4927 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4928 Set_Node2
(N
, Val
); -- semantic field, no Parent set
4929 end Set_Incomplete_View
;
4931 procedure Set_Inherited_Discriminant
4932 (N
: Node_Id
; Val
: Boolean := True) is
4934 pragma Assert
(False
4935 or else NT
(N
).Nkind
= N_Component_Association
);
4936 Set_Flag13
(N
, Val
);
4937 end Set_Inherited_Discriminant
;
4939 procedure Set_Instance_Spec
4940 (N
: Node_Id
; Val
: Node_Id
) is
4942 pragma Assert
(False
4943 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4944 or else NT
(N
).Nkind
= N_Function_Instantiation
4945 or else NT
(N
).Nkind
= N_Package_Instantiation
4946 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4947 Set_Node5
(N
, Val
); -- semantic field, no Parent set
4948 end Set_Instance_Spec
;
4950 procedure Set_Intval
4951 (N
: Node_Id
; Val
: Uint
) is
4953 pragma Assert
(False
4954 or else NT
(N
).Nkind
= N_Integer_Literal
);
4958 procedure Set_Is_Accessibility_Actual
4959 (N
: Node_Id
; Val
: Boolean := True) is
4961 pragma Assert
(False
4962 or else NT
(N
).Nkind
= N_Parameter_Association
);
4963 Set_Flag13
(N
, Val
);
4964 end Set_Is_Accessibility_Actual
;
4966 procedure Set_Is_Asynchronous_Call_Block
4967 (N
: Node_Id
; Val
: Boolean := True) is
4969 pragma Assert
(False
4970 or else NT
(N
).Nkind
= N_Block_Statement
);
4972 end Set_Is_Asynchronous_Call_Block
;
4974 procedure Set_Is_Boolean_Aspect
4975 (N
: Node_Id
; Val
: Boolean := True) is
4977 pragma Assert
(False
4978 or else NT
(N
).Nkind
= N_Aspect_Specification
);
4979 Set_Flag16
(N
, Val
);
4980 end Set_Is_Boolean_Aspect
;
4982 procedure Set_Is_Checked
4983 (N
: Node_Id
; Val
: Boolean := True) is
4985 pragma Assert
(False
4986 or else NT
(N
).Nkind
= N_Aspect_Specification
4987 or else NT
(N
).Nkind
= N_Pragma
);
4988 Set_Flag11
(N
, Val
);
4991 procedure Set_Is_Component_Left_Opnd
4992 (N
: Node_Id
; Val
: Boolean := True) is
4994 pragma Assert
(False
4995 or else NT
(N
).Nkind
= N_Op_Concat
);
4996 Set_Flag13
(N
, Val
);
4997 end Set_Is_Component_Left_Opnd
;
4999 procedure Set_Is_Component_Right_Opnd
5000 (N
: Node_Id
; Val
: Boolean := True) is
5002 pragma Assert
(False
5003 or else NT
(N
).Nkind
= N_Op_Concat
);
5004 Set_Flag14
(N
, Val
);
5005 end Set_Is_Component_Right_Opnd
;
5007 procedure Set_Is_Controlling_Actual
5008 (N
: Node_Id
; Val
: Boolean := True) is
5010 pragma Assert
(False
5011 or else NT
(N
).Nkind
in N_Subexpr
);
5012 Set_Flag16
(N
, Val
);
5013 end Set_Is_Controlling_Actual
;
5015 procedure Set_Is_Delayed_Aspect
5016 (N
: Node_Id
; Val
: Boolean := True) is
5018 pragma Assert
(False
5019 or else NT
(N
).Nkind
= N_Aspect_Specification
5020 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5021 or else NT
(N
).Nkind
= N_Pragma
);
5022 Set_Flag14
(N
, Val
);
5023 end Set_Is_Delayed_Aspect
;
5025 procedure Set_Is_Disabled
5026 (N
: Node_Id
; Val
: Boolean := True) is
5028 pragma Assert
(False
5029 or else NT
(N
).Nkind
= N_Aspect_Specification
5030 or else NT
(N
).Nkind
= N_Pragma
);
5031 Set_Flag15
(N
, Val
);
5032 end Set_Is_Disabled
;
5034 procedure Set_Is_Dynamic_Coextension
5035 (N
: Node_Id
; Val
: Boolean := True) is
5037 pragma Assert
(False
5038 or else NT
(N
).Nkind
= N_Allocator
);
5039 Set_Flag18
(N
, Val
);
5040 end Set_Is_Dynamic_Coextension
;
5042 procedure Set_Is_Elsif
5043 (N
: Node_Id
; Val
: Boolean := True) is
5045 pragma Assert
(False
5046 or else NT
(N
).Nkind
= N_If_Expression
);
5047 Set_Flag13
(N
, Val
);
5050 procedure Set_Is_Entry_Barrier_Function
5051 (N
: Node_Id
; Val
: Boolean := True) is
5053 pragma Assert
(False
5054 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5056 end Set_Is_Entry_Barrier_Function
;
5058 procedure Set_Is_Expanded_Build_In_Place_Call
5059 (N
: Node_Id
; Val
: Boolean := True) is
5061 pragma Assert
(False
5062 or else NT
(N
).Nkind
= N_Function_Call
);
5063 Set_Flag11
(N
, Val
);
5064 end Set_Is_Expanded_Build_In_Place_Call
;
5066 procedure Set_Is_Finalization_Wrapper
5067 (N
: Node_Id
; Val
: Boolean := True) is
5069 pragma Assert
(False
5070 or else NT
(N
).Nkind
= N_Block_Statement
);
5072 end Set_Is_Finalization_Wrapper
;
5074 procedure Set_Is_Folded_In_Parser
5075 (N
: Node_Id
; Val
: Boolean := True) is
5077 pragma Assert
(False
5078 or else NT
(N
).Nkind
= N_String_Literal
);
5080 end Set_Is_Folded_In_Parser
;
5082 procedure Set_Is_Ignored
5083 (N
: Node_Id
; Val
: Boolean := True) is
5085 pragma Assert
(False
5086 or else NT
(N
).Nkind
= N_Aspect_Specification
5087 or else NT
(N
).Nkind
= N_Pragma
);
5091 procedure Set_Is_In_Discriminant_Check
5092 (N
: Node_Id
; Val
: Boolean := True) is
5094 pragma Assert
(False
5095 or else NT
(N
).Nkind
= N_Selected_Component
);
5096 Set_Flag11
(N
, Val
);
5097 end Set_Is_In_Discriminant_Check
;
5099 procedure Set_Is_Machine_Number
5100 (N
: Node_Id
; Val
: Boolean := True) is
5102 pragma Assert
(False
5103 or else NT
(N
).Nkind
= N_Real_Literal
);
5104 Set_Flag11
(N
, Val
);
5105 end Set_Is_Machine_Number
;
5107 procedure Set_Is_Null_Loop
5108 (N
: Node_Id
; Val
: Boolean := True) is
5110 pragma Assert
(False
5111 or else NT
(N
).Nkind
= N_Loop_Statement
);
5112 Set_Flag16
(N
, Val
);
5113 end Set_Is_Null_Loop
;
5115 procedure Set_Is_Overloaded
5116 (N
: Node_Id
; Val
: Boolean := True) is
5118 pragma Assert
(False
5119 or else NT
(N
).Nkind
in N_Subexpr
);
5121 end Set_Is_Overloaded
;
5123 procedure Set_Is_Power_Of_2_For_Shift
5124 (N
: Node_Id
; Val
: Boolean := True) is
5126 pragma Assert
(False
5127 or else NT
(N
).Nkind
= N_Op_Expon
);
5128 Set_Flag13
(N
, Val
);
5129 end Set_Is_Power_Of_2_For_Shift
;
5131 procedure Set_Is_Prefixed_Call
5132 (N
: Node_Id
; Val
: Boolean := True) is
5134 pragma Assert
(False
5135 or else NT
(N
).Nkind
= N_Selected_Component
);
5136 Set_Flag17
(N
, Val
);
5137 end Set_Is_Prefixed_Call
;
5139 procedure Set_Is_Protected_Subprogram_Body
5140 (N
: Node_Id
; Val
: Boolean := True) is
5142 pragma Assert
(False
5143 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5145 end Set_Is_Protected_Subprogram_Body
;
5147 procedure Set_Is_Static_Coextension
5148 (N
: Node_Id
; Val
: Boolean := True) is
5150 pragma Assert
(False
5151 or else NT
(N
).Nkind
= N_Allocator
);
5152 Set_Flag14
(N
, Val
);
5153 end Set_Is_Static_Coextension
;
5155 procedure Set_Is_Static_Expression
5156 (N
: Node_Id
; Val
: Boolean := True) is
5158 pragma Assert
(False
5159 or else NT
(N
).Nkind
in N_Subexpr
);
5161 end Set_Is_Static_Expression
;
5163 procedure Set_Is_Subprogram_Descriptor
5164 (N
: Node_Id
; Val
: Boolean := True) is
5166 pragma Assert
(False
5167 or else NT
(N
).Nkind
= N_Object_Declaration
);
5168 Set_Flag16
(N
, Val
);
5169 end Set_Is_Subprogram_Descriptor
;
5171 procedure Set_Is_Task_Allocation_Block
5172 (N
: Node_Id
; Val
: Boolean := True) is
5174 pragma Assert
(False
5175 or else NT
(N
).Nkind
= N_Block_Statement
);
5177 end Set_Is_Task_Allocation_Block
;
5179 procedure Set_Is_Task_Master
5180 (N
: Node_Id
; Val
: Boolean := True) is
5182 pragma Assert
(False
5183 or else NT
(N
).Nkind
= N_Block_Statement
5184 or else NT
(N
).Nkind
= N_Subprogram_Body
5185 or else NT
(N
).Nkind
= N_Task_Body
);
5187 end Set_Is_Task_Master
;
5189 procedure Set_Iteration_Scheme
5190 (N
: Node_Id
; Val
: Node_Id
) is
5192 pragma Assert
(False
5193 or else NT
(N
).Nkind
= N_Loop_Statement
);
5194 Set_Node2_With_Parent
(N
, Val
);
5195 end Set_Iteration_Scheme
;
5197 procedure Set_Iterator_Specification
5198 (N
: Node_Id
; Val
: Node_Id
) is
5200 pragma Assert
(False
5201 or else NT
(N
).Nkind
= N_Iteration_Scheme
5202 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5203 Set_Node2_With_Parent
(N
, Val
);
5204 end Set_Iterator_Specification
;
5207 (N
: Node_Id
; Val
: Entity_Id
) is
5209 pragma Assert
(False
5210 or else NT
(N
).Nkind
= N_Itype_Reference
);
5211 Set_Node1
(N
, Val
); -- no parent, semantic field
5214 procedure Set_Kill_Range_Check
5215 (N
: Node_Id
; Val
: Boolean := True) is
5217 pragma Assert
(False
5218 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5219 Set_Flag11
(N
, Val
);
5220 end Set_Kill_Range_Check
;
5222 procedure Set_Label_Construct
5223 (N
: Node_Id
; Val
: Node_Id
) is
5225 pragma Assert
(False
5226 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5227 Set_Node2
(N
, Val
); -- semantic field, no parent set
5228 end Set_Label_Construct
;
5230 procedure Set_Last_Bit
5231 (N
: Node_Id
; Val
: Node_Id
) is
5233 pragma Assert
(False
5234 or else NT
(N
).Nkind
= N_Component_Clause
);
5235 Set_Node4_With_Parent
(N
, Val
);
5238 procedure Set_Last_Name
5239 (N
: Node_Id
; Val
: Boolean := True) is
5241 pragma Assert
(False
5242 or else NT
(N
).Nkind
= N_With_Clause
);
5246 procedure Set_Left_Opnd
5247 (N
: Node_Id
; Val
: Node_Id
) is
5249 pragma Assert
(False
5250 or else NT
(N
).Nkind
= N_And_Then
5251 or else NT
(N
).Nkind
= N_In
5252 or else NT
(N
).Nkind
= N_Not_In
5253 or else NT
(N
).Nkind
= N_Or_Else
5254 or else NT
(N
).Nkind
in N_Binary_Op
);
5255 Set_Node2_With_Parent
(N
, Val
);
5258 procedure Set_Library_Unit
5259 (N
: Node_Id
; Val
: Node_Id
) is
5261 pragma Assert
(False
5262 or else NT
(N
).Nkind
= N_Compilation_Unit
5263 or else NT
(N
).Nkind
= N_Package_Body_Stub
5264 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5265 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5266 or else NT
(N
).Nkind
= N_Task_Body_Stub
5267 or else NT
(N
).Nkind
= N_With_Clause
);
5268 Set_Node4
(N
, Val
); -- semantic field, no parent set
5269 end Set_Library_Unit
;
5271 procedure Set_Limited_View_Installed
5272 (N
: Node_Id
; Val
: Boolean := True) is
5274 pragma Assert
(False
5275 or else NT
(N
).Nkind
= N_Package_Specification
5276 or else NT
(N
).Nkind
= N_With_Clause
);
5277 Set_Flag18
(N
, Val
);
5278 end Set_Limited_View_Installed
;
5280 procedure Set_Limited_Present
5281 (N
: Node_Id
; Val
: Boolean := True) is
5283 pragma Assert
(False
5284 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5285 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5286 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5287 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5288 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5289 or else NT
(N
).Nkind
= N_Record_Definition
5290 or else NT
(N
).Nkind
= N_With_Clause
);
5291 Set_Flag17
(N
, Val
);
5292 end Set_Limited_Present
;
5294 procedure Set_Literals
5295 (N
: Node_Id
; Val
: List_Id
) is
5297 pragma Assert
(False
5298 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5299 Set_List1_With_Parent
(N
, Val
);
5302 procedure Set_Local_Raise_Not_OK
5303 (N
: Node_Id
; Val
: Boolean := True) is
5305 pragma Assert
(False
5306 or else NT
(N
).Nkind
= N_Exception_Handler
);
5308 end Set_Local_Raise_Not_OK
;
5310 procedure Set_Local_Raise_Statements
5311 (N
: Node_Id
; Val
: Elist_Id
) is
5313 pragma Assert
(False
5314 or else NT
(N
).Nkind
= N_Exception_Handler
);
5315 Set_Elist1
(N
, Val
);
5316 end Set_Local_Raise_Statements
;
5318 procedure Set_Loop_Actions
5319 (N
: Node_Id
; Val
: List_Id
) is
5321 pragma Assert
(False
5322 or else NT
(N
).Nkind
= N_Component_Association
);
5323 Set_List2
(N
, Val
); -- semantic field, no parent set
5324 end Set_Loop_Actions
;
5326 procedure Set_Loop_Parameter_Specification
5327 (N
: Node_Id
; Val
: Node_Id
) is
5329 pragma Assert
(False
5330 or else NT
(N
).Nkind
= N_Iteration_Scheme
5331 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5332 Set_Node4_With_Parent
(N
, Val
);
5333 end Set_Loop_Parameter_Specification
;
5335 procedure Set_Low_Bound
5336 (N
: Node_Id
; Val
: Node_Id
) is
5338 pragma Assert
(False
5339 or else NT
(N
).Nkind
= N_Range
5340 or else NT
(N
).Nkind
= N_Real_Range_Specification
5341 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5342 Set_Node1_With_Parent
(N
, Val
);
5345 procedure Set_Mod_Clause
5346 (N
: Node_Id
; Val
: Node_Id
) is
5348 pragma Assert
(False
5349 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5350 Set_Node2_With_Parent
(N
, Val
);
5353 procedure Set_More_Ids
5354 (N
: Node_Id
; Val
: Boolean := True) is
5356 pragma Assert
(False
5357 or else NT
(N
).Nkind
= N_Component_Declaration
5358 or else NT
(N
).Nkind
= N_Discriminant_Specification
5359 or else NT
(N
).Nkind
= N_Exception_Declaration
5360 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5361 or else NT
(N
).Nkind
= N_Number_Declaration
5362 or else NT
(N
).Nkind
= N_Object_Declaration
5363 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5367 procedure Set_Must_Be_Byte_Aligned
5368 (N
: Node_Id
; Val
: Boolean := True) is
5370 pragma Assert
(False
5371 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5372 Set_Flag14
(N
, Val
);
5373 end Set_Must_Be_Byte_Aligned
;
5375 procedure Set_Must_Not_Freeze
5376 (N
: Node_Id
; Val
: Boolean := True) is
5378 pragma Assert
(False
5379 or else NT
(N
).Nkind
= N_Subtype_Indication
5380 or else NT
(N
).Nkind
in N_Subexpr
);
5382 end Set_Must_Not_Freeze
;
5384 procedure Set_Must_Not_Override
5385 (N
: Node_Id
; Val
: Boolean := True) is
5387 pragma Assert
(False
5388 or else NT
(N
).Nkind
= N_Entry_Declaration
5389 or else NT
(N
).Nkind
= N_Function_Instantiation
5390 or else NT
(N
).Nkind
= N_Function_Specification
5391 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5392 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5393 Set_Flag15
(N
, Val
);
5394 end Set_Must_Not_Override
;
5396 procedure Set_Must_Override
5397 (N
: Node_Id
; Val
: Boolean := True) is
5399 pragma Assert
(False
5400 or else NT
(N
).Nkind
= N_Entry_Declaration
5401 or else NT
(N
).Nkind
= N_Function_Instantiation
5402 or else NT
(N
).Nkind
= N_Function_Specification
5403 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5404 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5405 Set_Flag14
(N
, Val
);
5406 end Set_Must_Override
;
5409 (N
: Node_Id
; Val
: Node_Id
) is
5411 pragma Assert
(False
5412 or else NT
(N
).Nkind
= N_Assignment_Statement
5413 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5414 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5415 or else NT
(N
).Nkind
= N_Designator
5416 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5417 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5418 or else NT
(N
).Nkind
= N_Exit_Statement
5419 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5420 or else NT
(N
).Nkind
= N_Function_Call
5421 or else NT
(N
).Nkind
= N_Function_Instantiation
5422 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5423 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5424 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5425 or else NT
(N
).Nkind
= N_Goto_Statement
5426 or else NT
(N
).Nkind
= N_Iterator_Specification
5427 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5428 or else NT
(N
).Nkind
= N_Package_Instantiation
5429 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5430 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5431 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5432 or else NT
(N
).Nkind
= N_Raise_Expression
5433 or else NT
(N
).Nkind
= N_Raise_Statement
5434 or else NT
(N
).Nkind
= N_Requeue_Statement
5435 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5436 or else NT
(N
).Nkind
= N_Subunit
5437 or else NT
(N
).Nkind
= N_Variant_Part
5438 or else NT
(N
).Nkind
= N_With_Clause
);
5439 Set_Node2_With_Parent
(N
, Val
);
5443 (N
: Node_Id
; Val
: List_Id
) is
5445 pragma Assert
(False
5446 or else NT
(N
).Nkind
= N_Abort_Statement
5447 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
5448 Set_List2_With_Parent
(N
, Val
);
5451 procedure Set_Next_Entity
5452 (N
: Node_Id
; Val
: Node_Id
) is
5454 pragma Assert
(False
5455 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5456 or else NT
(N
).Nkind
= N_Defining_Identifier
5457 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5458 Set_Node2
(N
, Val
); -- semantic field, no parent set
5459 end Set_Next_Entity
;
5461 procedure Set_Next_Exit_Statement
5462 (N
: Node_Id
; Val
: Node_Id
) is
5464 pragma Assert
(False
5465 or else NT
(N
).Nkind
= N_Exit_Statement
);
5466 Set_Node3
(N
, Val
); -- semantic field, no parent set
5467 end Set_Next_Exit_Statement
;
5469 procedure Set_Next_Implicit_With
5470 (N
: Node_Id
; Val
: Node_Id
) is
5472 pragma Assert
(False
5473 or else NT
(N
).Nkind
= N_With_Clause
);
5474 Set_Node3
(N
, Val
); -- semantic field, no parent set
5475 end Set_Next_Implicit_With
;
5477 procedure Set_Next_Named_Actual
5478 (N
: Node_Id
; Val
: Node_Id
) is
5480 pragma Assert
(False
5481 or else NT
(N
).Nkind
= N_Parameter_Association
);
5482 Set_Node4
(N
, Val
); -- semantic field, no parent set
5483 end Set_Next_Named_Actual
;
5485 procedure Set_Next_Pragma
5486 (N
: Node_Id
; Val
: Node_Id
) is
5488 pragma Assert
(False
5489 or else NT
(N
).Nkind
= N_Pragma
);
5490 Set_Node1
(N
, Val
); -- semantic field, no parent set
5491 end Set_Next_Pragma
;
5493 procedure Set_Next_Rep_Item
5494 (N
: Node_Id
; Val
: Node_Id
) is
5496 pragma Assert
(False
5497 or else NT
(N
).Nkind
= N_Aspect_Specification
5498 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5499 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5500 or else NT
(N
).Nkind
= N_Pragma
5501 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5502 Set_Node5
(N
, Val
); -- semantic field, no parent set
5503 end Set_Next_Rep_Item
;
5505 procedure Set_Next_Use_Clause
5506 (N
: Node_Id
; Val
: Node_Id
) is
5508 pragma Assert
(False
5509 or else NT
(N
).Nkind
= N_Use_Package_Clause
5510 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5511 Set_Node3
(N
, Val
); -- semantic field, no parent set
5512 end Set_Next_Use_Clause
;
5514 procedure Set_No_Ctrl_Actions
5515 (N
: Node_Id
; Val
: Boolean := True) is
5517 pragma Assert
(False
5518 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5520 end Set_No_Ctrl_Actions
;
5522 procedure Set_No_Elaboration_Check
5523 (N
: Node_Id
; Val
: Boolean := True) is
5525 pragma Assert
(False
5526 or else NT
(N
).Nkind
= N_Function_Call
5527 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5528 Set_Flag14
(N
, Val
);
5529 end Set_No_Elaboration_Check
;
5531 procedure Set_No_Entities_Ref_In_Spec
5532 (N
: Node_Id
; Val
: Boolean := True) is
5534 pragma Assert
(False
5535 or else NT
(N
).Nkind
= N_With_Clause
);
5537 end Set_No_Entities_Ref_In_Spec
;
5539 procedure Set_No_Initialization
5540 (N
: Node_Id
; Val
: Boolean := True) is
5542 pragma Assert
(False
5543 or else NT
(N
).Nkind
= N_Allocator
5544 or else NT
(N
).Nkind
= N_Object_Declaration
);
5545 Set_Flag13
(N
, Val
);
5546 end Set_No_Initialization
;
5548 procedure Set_No_Minimize_Eliminate
5549 (N
: Node_Id
; Val
: Boolean := True) is
5551 pragma Assert
(False
5552 or else NT
(N
).Nkind
= N_In
5553 or else NT
(N
).Nkind
= N_Not_In
);
5554 Set_Flag17
(N
, Val
);
5555 end Set_No_Minimize_Eliminate
;
5557 procedure Set_No_Truncation
5558 (N
: Node_Id
; Val
: Boolean := True) is
5560 pragma Assert
(False
5561 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5562 Set_Flag17
(N
, Val
);
5563 end Set_No_Truncation
;
5565 procedure Set_Non_Aliased_Prefix
5566 (N
: Node_Id
; Val
: Boolean := True) is
5568 pragma Assert
(False
5569 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5570 Set_Flag18
(N
, Val
);
5571 end Set_Non_Aliased_Prefix
;
5573 procedure Set_Null_Present
5574 (N
: Node_Id
; Val
: Boolean := True) is
5576 pragma Assert
(False
5577 or else NT
(N
).Nkind
= N_Component_List
5578 or else NT
(N
).Nkind
= N_Procedure_Specification
5579 or else NT
(N
).Nkind
= N_Record_Definition
);
5580 Set_Flag13
(N
, Val
);
5581 end Set_Null_Present
;
5583 procedure Set_Null_Excluding_Subtype
5584 (N
: Node_Id
; Val
: Boolean := True) is
5586 pragma Assert
(False
5587 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
5588 Set_Flag16
(N
, Val
);
5589 end Set_Null_Excluding_Subtype
;
5591 procedure Set_Null_Exclusion_Present
5592 (N
: Node_Id
; Val
: Boolean := True) is
5594 pragma Assert
(False
5595 or else NT
(N
).Nkind
= N_Access_Definition
5596 or else NT
(N
).Nkind
= N_Access_Function_Definition
5597 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5598 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5599 or else NT
(N
).Nkind
= N_Allocator
5600 or else NT
(N
).Nkind
= N_Component_Definition
5601 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5602 or else NT
(N
).Nkind
= N_Discriminant_Specification
5603 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5604 or else NT
(N
).Nkind
= N_Function_Specification
5605 or else NT
(N
).Nkind
= N_Object_Declaration
5606 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5607 or else NT
(N
).Nkind
= N_Parameter_Specification
5608 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
5609 Set_Flag11
(N
, Val
);
5610 end Set_Null_Exclusion_Present
;
5612 procedure Set_Null_Exclusion_In_Return_Present
5613 (N
: Node_Id
; Val
: Boolean := True) is
5615 pragma Assert
(False
5616 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
5617 Set_Flag14
(N
, Val
);
5618 end Set_Null_Exclusion_In_Return_Present
;
5620 procedure Set_Null_Record_Present
5621 (N
: Node_Id
; Val
: Boolean := True) is
5623 pragma Assert
(False
5624 or else NT
(N
).Nkind
= N_Aggregate
5625 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5626 Set_Flag17
(N
, Val
);
5627 end Set_Null_Record_Present
;
5629 procedure Set_Object_Definition
5630 (N
: Node_Id
; Val
: Node_Id
) is
5632 pragma Assert
(False
5633 or else NT
(N
).Nkind
= N_Object_Declaration
);
5634 Set_Node4_With_Parent
(N
, Val
);
5635 end Set_Object_Definition
;
5637 procedure Set_Of_Present
5638 (N
: Node_Id
; Val
: Boolean := True) is
5640 pragma Assert
(False
5641 or else NT
(N
).Nkind
= N_Iterator_Specification
);
5642 Set_Flag16
(N
, Val
);
5645 procedure Set_Original_Discriminant
5646 (N
: Node_Id
; Val
: Node_Id
) is
5648 pragma Assert
(False
5649 or else NT
(N
).Nkind
= N_Identifier
);
5650 Set_Node2
(N
, Val
); -- semantic field, no parent set
5651 end Set_Original_Discriminant
;
5653 procedure Set_Original_Entity
5654 (N
: Node_Id
; Val
: Entity_Id
) is
5656 pragma Assert
(False
5657 or else NT
(N
).Nkind
= N_Integer_Literal
5658 or else NT
(N
).Nkind
= N_Real_Literal
);
5659 Set_Node2
(N
, Val
); -- semantic field, no parent set
5660 end Set_Original_Entity
;
5662 procedure Set_Others_Discrete_Choices
5663 (N
: Node_Id
; Val
: List_Id
) is
5665 pragma Assert
(False
5666 or else NT
(N
).Nkind
= N_Others_Choice
);
5667 Set_List1_With_Parent
(N
, Val
);
5668 end Set_Others_Discrete_Choices
;
5670 procedure Set_Out_Present
5671 (N
: Node_Id
; Val
: Boolean := True) is
5673 pragma Assert
(False
5674 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5675 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5676 Set_Flag17
(N
, Val
);
5677 end Set_Out_Present
;
5679 procedure Set_Parameter_Associations
5680 (N
: Node_Id
; Val
: List_Id
) is
5682 pragma Assert
(False
5683 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5684 or else NT
(N
).Nkind
= N_Function_Call
5685 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5686 Set_List3_With_Parent
(N
, Val
);
5687 end Set_Parameter_Associations
;
5689 procedure Set_Parameter_Specifications
5690 (N
: Node_Id
; Val
: List_Id
) is
5692 pragma Assert
(False
5693 or else NT
(N
).Nkind
= N_Accept_Statement
5694 or else NT
(N
).Nkind
= N_Access_Function_Definition
5695 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5696 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
5697 or else NT
(N
).Nkind
= N_Entry_Declaration
5698 or else NT
(N
).Nkind
= N_Function_Specification
5699 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5700 Set_List3_With_Parent
(N
, Val
);
5701 end Set_Parameter_Specifications
;
5703 procedure Set_Parameter_Type
5704 (N
: Node_Id
; Val
: Node_Id
) is
5706 pragma Assert
(False
5707 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5708 Set_Node2_With_Parent
(N
, Val
);
5709 end Set_Parameter_Type
;
5711 procedure Set_Parent_Spec
5712 (N
: Node_Id
; Val
: Node_Id
) is
5714 pragma Assert
(False
5715 or else NT
(N
).Nkind
= N_Function_Instantiation
5716 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5717 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
5718 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5719 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5720 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
5721 or else NT
(N
).Nkind
= N_Package_Declaration
5722 or else NT
(N
).Nkind
= N_Package_Instantiation
5723 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5724 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5725 or else NT
(N
).Nkind
= N_Subprogram_Declaration
5726 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
5727 Set_Node4
(N
, Val
); -- semantic field, no parent set
5728 end Set_Parent_Spec
;
5730 procedure Set_Position
5731 (N
: Node_Id
; Val
: Node_Id
) is
5733 pragma Assert
(False
5734 or else NT
(N
).Nkind
= N_Component_Clause
);
5735 Set_Node2_With_Parent
(N
, Val
);
5738 procedure Set_Pragma_Argument_Associations
5739 (N
: Node_Id
; Val
: List_Id
) is
5741 pragma Assert
(False
5742 or else NT
(N
).Nkind
= N_Pragma
);
5743 Set_List2_With_Parent
(N
, Val
);
5744 end Set_Pragma_Argument_Associations
;
5746 procedure Set_Pragma_Identifier
5747 (N
: Node_Id
; Val
: Node_Id
) is
5749 pragma Assert
(False
5750 or else NT
(N
).Nkind
= N_Pragma
);
5751 Set_Node4_With_Parent
(N
, Val
);
5752 end Set_Pragma_Identifier
;
5754 procedure Set_Pragmas_After
5755 (N
: Node_Id
; Val
: List_Id
) is
5757 pragma Assert
(False
5758 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
5759 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
5760 Set_List5_With_Parent
(N
, Val
);
5761 end Set_Pragmas_After
;
5763 procedure Set_Pragmas_Before
5764 (N
: Node_Id
; Val
: List_Id
) is
5766 pragma Assert
(False
5767 or else NT
(N
).Nkind
= N_Accept_Alternative
5768 or else NT
(N
).Nkind
= N_Delay_Alternative
5769 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
5770 or else NT
(N
).Nkind
= N_Mod_Clause
5771 or else NT
(N
).Nkind
= N_Terminate_Alternative
5772 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
5773 Set_List4_With_Parent
(N
, Val
);
5774 end Set_Pragmas_Before
;
5776 procedure Set_Pre_Post_Conditions
5777 (N
: Node_Id
; Val
: Node_Id
) is
5779 pragma Assert
(False
5780 or else NT
(N
).Nkind
= N_Contract
);
5781 Set_Node1
(N
, Val
); -- semantic field, no parent set
5782 end Set_Pre_Post_Conditions
;
5784 procedure Set_Prefix
5785 (N
: Node_Id
; Val
: Node_Id
) is
5787 pragma Assert
(False
5788 or else NT
(N
).Nkind
= N_Attribute_Reference
5789 or else NT
(N
).Nkind
= N_Expanded_Name
5790 or else NT
(N
).Nkind
= N_Explicit_Dereference
5791 or else NT
(N
).Nkind
= N_Indexed_Component
5792 or else NT
(N
).Nkind
= N_Reference
5793 or else NT
(N
).Nkind
= N_Selected_Component
5794 or else NT
(N
).Nkind
= N_Slice
);
5795 Set_Node3_With_Parent
(N
, Val
);
5798 procedure Set_Premature_Use
5799 (N
: Node_Id
; Val
: Node_Id
) is
5801 pragma Assert
(False
5802 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
5804 end Set_Premature_Use
;
5806 procedure Set_Present_Expr
5807 (N
: Node_Id
; Val
: Uint
) is
5809 pragma Assert
(False
5810 or else NT
(N
).Nkind
= N_Variant
);
5812 end Set_Present_Expr
;
5814 procedure Set_Prev_Ids
5815 (N
: Node_Id
; Val
: Boolean := True) is
5817 pragma Assert
(False
5818 or else NT
(N
).Nkind
= N_Component_Declaration
5819 or else NT
(N
).Nkind
= N_Discriminant_Specification
5820 or else NT
(N
).Nkind
= N_Exception_Declaration
5821 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5822 or else NT
(N
).Nkind
= N_Number_Declaration
5823 or else NT
(N
).Nkind
= N_Object_Declaration
5824 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5828 procedure Set_Print_In_Hex
5829 (N
: Node_Id
; Val
: Boolean := True) is
5831 pragma Assert
(False
5832 or else NT
(N
).Nkind
= N_Integer_Literal
);
5833 Set_Flag13
(N
, Val
);
5834 end Set_Print_In_Hex
;
5836 procedure Set_Private_Declarations
5837 (N
: Node_Id
; Val
: List_Id
) is
5839 pragma Assert
(False
5840 or else NT
(N
).Nkind
= N_Package_Specification
5841 or else NT
(N
).Nkind
= N_Protected_Definition
5842 or else NT
(N
).Nkind
= N_Task_Definition
);
5843 Set_List3_With_Parent
(N
, Val
);
5844 end Set_Private_Declarations
;
5846 procedure Set_Private_Present
5847 (N
: Node_Id
; Val
: Boolean := True) is
5849 pragma Assert
(False
5850 or else NT
(N
).Nkind
= N_Compilation_Unit
5851 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5852 or else NT
(N
).Nkind
= N_With_Clause
);
5853 Set_Flag15
(N
, Val
);
5854 end Set_Private_Present
;
5856 procedure Set_Procedure_To_Call
5857 (N
: Node_Id
; Val
: Node_Id
) is
5859 pragma Assert
(False
5860 or else NT
(N
).Nkind
= N_Allocator
5861 or else NT
(N
).Nkind
= N_Extended_Return_Statement
5862 or else NT
(N
).Nkind
= N_Free_Statement
5863 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
5864 Set_Node2
(N
, Val
); -- semantic field, no parent set
5865 end Set_Procedure_To_Call
;
5867 procedure Set_Proper_Body
5868 (N
: Node_Id
; Val
: Node_Id
) is
5870 pragma Assert
(False
5871 or else NT
(N
).Nkind
= N_Subunit
);
5872 Set_Node1_With_Parent
(N
, Val
);
5873 end Set_Proper_Body
;
5875 procedure Set_Protected_Definition
5876 (N
: Node_Id
; Val
: Node_Id
) is
5878 pragma Assert
(False
5879 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5880 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
5881 Set_Node3_With_Parent
(N
, Val
);
5882 end Set_Protected_Definition
;
5884 procedure Set_Protected_Present
5885 (N
: Node_Id
; Val
: Boolean := True) is
5887 pragma Assert
(False
5888 or else NT
(N
).Nkind
= N_Access_Function_Definition
5889 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5890 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5891 or else NT
(N
).Nkind
= N_Record_Definition
);
5893 end Set_Protected_Present
;
5895 procedure Set_Raises_Constraint_Error
5896 (N
: Node_Id
; Val
: Boolean := True) is
5898 pragma Assert
(False
5899 or else NT
(N
).Nkind
in N_Subexpr
);
5901 end Set_Raises_Constraint_Error
;
5903 procedure Set_Range_Constraint
5904 (N
: Node_Id
; Val
: Node_Id
) is
5906 pragma Assert
(False
5907 or else NT
(N
).Nkind
= N_Delta_Constraint
5908 or else NT
(N
).Nkind
= N_Digits_Constraint
);
5909 Set_Node4_With_Parent
(N
, Val
);
5910 end Set_Range_Constraint
;
5912 procedure Set_Range_Expression
5913 (N
: Node_Id
; Val
: Node_Id
) is
5915 pragma Assert
(False
5916 or else NT
(N
).Nkind
= N_Range_Constraint
);
5917 Set_Node4_With_Parent
(N
, Val
);
5918 end Set_Range_Expression
;
5920 procedure Set_Real_Range_Specification
5921 (N
: Node_Id
; Val
: Node_Id
) is
5923 pragma Assert
(False
5924 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
5925 or else NT
(N
).Nkind
= N_Floating_Point_Definition
5926 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
5927 Set_Node4_With_Parent
(N
, Val
);
5928 end Set_Real_Range_Specification
;
5930 procedure Set_Realval
5931 (N
: Node_Id
; Val
: Ureal
) is
5933 pragma Assert
(False
5934 or else NT
(N
).Nkind
= N_Real_Literal
);
5935 Set_Ureal3
(N
, Val
);
5938 procedure Set_Reason
5939 (N
: Node_Id
; Val
: Uint
) is
5941 pragma Assert
(False
5942 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
5943 or else NT
(N
).Nkind
= N_Raise_Program_Error
5944 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
5948 procedure Set_Record_Extension_Part
5949 (N
: Node_Id
; Val
: Node_Id
) is
5951 pragma Assert
(False
5952 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
5953 Set_Node3_With_Parent
(N
, Val
);
5954 end Set_Record_Extension_Part
;
5956 procedure Set_Redundant_Use
5957 (N
: Node_Id
; Val
: Boolean := True) is
5959 pragma Assert
(False
5960 or else NT
(N
).Nkind
= N_Attribute_Reference
5961 or else NT
(N
).Nkind
= N_Expanded_Name
5962 or else NT
(N
).Nkind
= N_Identifier
);
5963 Set_Flag13
(N
, Val
);
5964 end Set_Redundant_Use
;
5966 procedure Set_Renaming_Exception
5967 (N
: Node_Id
; Val
: Node_Id
) is
5969 pragma Assert
(False
5970 or else NT
(N
).Nkind
= N_Exception_Declaration
);
5972 end Set_Renaming_Exception
;
5974 procedure Set_Result_Definition
5975 (N
: Node_Id
; Val
: Node_Id
) is
5977 pragma Assert
(False
5978 or else NT
(N
).Nkind
= N_Access_Function_Definition
5979 or else NT
(N
).Nkind
= N_Function_Specification
);
5980 Set_Node4_With_Parent
(N
, Val
);
5981 end Set_Result_Definition
;
5983 procedure Set_Return_Object_Declarations
5984 (N
: Node_Id
; Val
: List_Id
) is
5986 pragma Assert
(False
5987 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
5988 Set_List3_With_Parent
(N
, Val
);
5989 end Set_Return_Object_Declarations
;
5991 procedure Set_Return_Statement_Entity
5992 (N
: Node_Id
; Val
: Node_Id
) is
5994 pragma Assert
(False
5995 or else NT
(N
).Nkind
= N_Extended_Return_Statement
5996 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
5997 Set_Node5
(N
, Val
); -- semantic field, no parent set
5998 end Set_Return_Statement_Entity
;
6000 procedure Set_Reverse_Present
6001 (N
: Node_Id
; Val
: Boolean := True) is
6003 pragma Assert
(False
6004 or else NT
(N
).Nkind
= N_Iterator_Specification
6005 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6006 Set_Flag15
(N
, Val
);
6007 end Set_Reverse_Present
;
6009 procedure Set_Right_Opnd
6010 (N
: Node_Id
; Val
: Node_Id
) is
6012 pragma Assert
(False
6013 or else NT
(N
).Nkind
in N_Op
6014 or else NT
(N
).Nkind
= N_And_Then
6015 or else NT
(N
).Nkind
= N_In
6016 or else NT
(N
).Nkind
= N_Not_In
6017 or else NT
(N
).Nkind
= N_Or_Else
);
6018 Set_Node3_With_Parent
(N
, Val
);
6021 procedure Set_Rounded_Result
6022 (N
: Node_Id
; Val
: Boolean := True) is
6024 pragma Assert
(False
6025 or else NT
(N
).Nkind
= N_Op_Divide
6026 or else NT
(N
).Nkind
= N_Op_Multiply
6027 or else NT
(N
).Nkind
= N_Type_Conversion
);
6028 Set_Flag18
(N
, Val
);
6029 end Set_Rounded_Result
;
6031 procedure Set_SCIL_Controlling_Tag
6032 (N
: Node_Id
; Val
: Node_Id
) is
6034 pragma Assert
(False
6035 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6036 Set_Node5
(N
, Val
); -- semantic field, no parent set
6037 end Set_SCIL_Controlling_Tag
;
6039 procedure Set_SCIL_Entity
6040 (N
: Node_Id
; Val
: Node_Id
) is
6042 pragma Assert
(False
6043 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6044 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6045 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6046 Set_Node4
(N
, Val
); -- semantic field, no parent set
6047 end Set_SCIL_Entity
;
6049 procedure Set_SCIL_Tag_Value
6050 (N
: Node_Id
; Val
: Node_Id
) is
6052 pragma Assert
(False
6053 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6054 Set_Node5
(N
, Val
); -- semantic field, no parent set
6055 end Set_SCIL_Tag_Value
;
6057 procedure Set_SCIL_Target_Prim
6058 (N
: Node_Id
; Val
: Node_Id
) is
6060 pragma Assert
(False
6061 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6062 Set_Node2
(N
, Val
); -- semantic field, no parent set
6063 end Set_SCIL_Target_Prim
;
6066 (N
: Node_Id
; Val
: Node_Id
) is
6068 pragma Assert
(False
6069 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6070 or else NT
(N
).Nkind
= N_Defining_Identifier
6071 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6072 Set_Node3
(N
, Val
); -- semantic field, no parent set
6075 procedure Set_Select_Alternatives
6076 (N
: Node_Id
; Val
: List_Id
) is
6078 pragma Assert
(False
6079 or else NT
(N
).Nkind
= N_Selective_Accept
);
6080 Set_List1_With_Parent
(N
, Val
);
6081 end Set_Select_Alternatives
;
6083 procedure Set_Selector_Name
6084 (N
: Node_Id
; Val
: Node_Id
) is
6086 pragma Assert
(False
6087 or else NT
(N
).Nkind
= N_Expanded_Name
6088 or else NT
(N
).Nkind
= N_Generic_Association
6089 or else NT
(N
).Nkind
= N_Parameter_Association
6090 or else NT
(N
).Nkind
= N_Selected_Component
);
6091 Set_Node2_With_Parent
(N
, Val
);
6092 end Set_Selector_Name
;
6094 procedure Set_Selector_Names
6095 (N
: Node_Id
; Val
: List_Id
) is
6097 pragma Assert
(False
6098 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6099 Set_List1_With_Parent
(N
, Val
);
6100 end Set_Selector_Names
;
6102 procedure Set_Shift_Count_OK
6103 (N
: Node_Id
; Val
: Boolean := True) is
6105 pragma Assert
(False
6106 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6107 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6108 or else NT
(N
).Nkind
= N_Op_Shift_Left
6109 or else NT
(N
).Nkind
= N_Op_Shift_Right
6110 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6112 end Set_Shift_Count_OK
;
6114 procedure Set_Source_Type
6115 (N
: Node_Id
; Val
: Entity_Id
) is
6117 pragma Assert
(False
6118 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6119 Set_Node1
(N
, Val
); -- semantic field, no parent set
6120 end Set_Source_Type
;
6122 procedure Set_Specification
6123 (N
: Node_Id
; Val
: Node_Id
) is
6125 pragma Assert
(False
6126 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6127 or else NT
(N
).Nkind
= N_Expression_Function
6128 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6129 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6130 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6131 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6132 or else NT
(N
).Nkind
= N_Package_Declaration
6133 or else NT
(N
).Nkind
= N_Subprogram_Body
6134 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6135 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6136 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6137 Set_Node1_With_Parent
(N
, Val
);
6138 end Set_Specification
;
6140 procedure Set_Split_PPC
6141 (N
: Node_Id
; Val
: Boolean) is
6143 pragma Assert
(False
6144 or else NT
(N
).Nkind
= N_Aspect_Specification
6145 or else NT
(N
).Nkind
= N_Pragma
);
6146 Set_Flag17
(N
, Val
);
6149 procedure Set_Statements
6150 (N
: Node_Id
; Val
: List_Id
) is
6152 pragma Assert
(False
6153 or else NT
(N
).Nkind
= N_Abortable_Part
6154 or else NT
(N
).Nkind
= N_Accept_Alternative
6155 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6156 or else NT
(N
).Nkind
= N_Delay_Alternative
6157 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6158 or else NT
(N
).Nkind
= N_Exception_Handler
6159 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6160 or else NT
(N
).Nkind
= N_Loop_Statement
6161 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6162 Set_List3_With_Parent
(N
, Val
);
6165 procedure Set_Storage_Pool
6166 (N
: Node_Id
; Val
: Node_Id
) is
6168 pragma Assert
(False
6169 or else NT
(N
).Nkind
= N_Allocator
6170 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6171 or else NT
(N
).Nkind
= N_Free_Statement
6172 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6173 Set_Node1
(N
, Val
); -- semantic field, no parent set
6174 end Set_Storage_Pool
;
6176 procedure Set_Subpool_Handle_Name
6177 (N
: Node_Id
; Val
: Node_Id
) is
6179 pragma Assert
(False
6180 or else NT
(N
).Nkind
= N_Allocator
);
6181 Set_Node4_With_Parent
(N
, Val
);
6182 end Set_Subpool_Handle_Name
;
6184 procedure Set_Strval
6185 (N
: Node_Id
; Val
: String_Id
) is
6187 pragma Assert
(False
6188 or else NT
(N
).Nkind
= N_Operator_Symbol
6189 or else NT
(N
).Nkind
= N_String_Literal
);
6193 procedure Set_Subtype_Indication
6194 (N
: Node_Id
; Val
: Node_Id
) is
6196 pragma Assert
(False
6197 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6198 or else NT
(N
).Nkind
= N_Component_Definition
6199 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6200 or else NT
(N
).Nkind
= N_Iterator_Specification
6201 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6202 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6203 Set_Node5_With_Parent
(N
, Val
);
6204 end Set_Subtype_Indication
;
6206 procedure Set_Subtype_Mark
6207 (N
: Node_Id
; Val
: Node_Id
) is
6209 pragma Assert
(False
6210 or else NT
(N
).Nkind
= N_Access_Definition
6211 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6212 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6213 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6214 or else NT
(N
).Nkind
= N_Qualified_Expression
6215 or else NT
(N
).Nkind
= N_Subtype_Indication
6216 or else NT
(N
).Nkind
= N_Type_Conversion
6217 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6218 Set_Node4_With_Parent
(N
, Val
);
6219 end Set_Subtype_Mark
;
6221 procedure Set_Subtype_Marks
6222 (N
: Node_Id
; Val
: List_Id
) is
6224 pragma Assert
(False
6225 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
6226 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6227 Set_List2_With_Parent
(N
, Val
);
6228 end Set_Subtype_Marks
;
6230 procedure Set_Suppress_Assignment_Checks
6231 (N
: Node_Id
; Val
: Boolean := True) is
6233 pragma Assert
(False
6234 or else NT
(N
).Nkind
= N_Assignment_Statement
6235 or else NT
(N
).Nkind
= N_Object_Declaration
);
6236 Set_Flag18
(N
, Val
);
6237 end Set_Suppress_Assignment_Checks
;
6239 procedure Set_Suppress_Loop_Warnings
6240 (N
: Node_Id
; Val
: Boolean := True) is
6242 pragma Assert
(False
6243 or else NT
(N
).Nkind
= N_Loop_Statement
);
6244 Set_Flag17
(N
, Val
);
6245 end Set_Suppress_Loop_Warnings
;
6247 procedure Set_Synchronized_Present
6248 (N
: Node_Id
; Val
: Boolean := True) is
6250 pragma Assert
(False
6251 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6252 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6253 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6254 or else NT
(N
).Nkind
= N_Record_Definition
);
6256 end Set_Synchronized_Present
;
6258 procedure Set_Tagged_Present
6259 (N
: Node_Id
; Val
: Boolean := True) is
6261 pragma Assert
(False
6262 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6263 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6264 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6265 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6266 or else NT
(N
).Nkind
= N_Record_Definition
);
6267 Set_Flag15
(N
, Val
);
6268 end Set_Tagged_Present
;
6270 procedure Set_Target_Type
6271 (N
: Node_Id
; Val
: Entity_Id
) is
6273 pragma Assert
(False
6274 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6275 Set_Node2
(N
, Val
); -- semantic field, no parent set
6276 end Set_Target_Type
;
6278 procedure Set_Task_Definition
6279 (N
: Node_Id
; Val
: Node_Id
) is
6281 pragma Assert
(False
6282 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6283 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6284 Set_Node3_With_Parent
(N
, Val
);
6285 end Set_Task_Definition
;
6287 procedure Set_Task_Present
6288 (N
: Node_Id
; Val
: Boolean := True) is
6290 pragma Assert
(False
6291 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6292 or else NT
(N
).Nkind
= N_Record_Definition
);
6294 end Set_Task_Present
;
6296 procedure Set_Then_Actions
6297 (N
: Node_Id
; Val
: List_Id
) is
6299 pragma Assert
(False
6300 or else NT
(N
).Nkind
= N_If_Expression
);
6301 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6302 end Set_Then_Actions
;
6304 procedure Set_Then_Statements
6305 (N
: Node_Id
; Val
: List_Id
) is
6307 pragma Assert
(False
6308 or else NT
(N
).Nkind
= N_Elsif_Part
6309 or else NT
(N
).Nkind
= N_If_Statement
);
6310 Set_List2_With_Parent
(N
, Val
);
6311 end Set_Then_Statements
;
6313 procedure Set_Treat_Fixed_As_Integer
6314 (N
: Node_Id
; Val
: Boolean := True) is
6316 pragma Assert
(False
6317 or else NT
(N
).Nkind
= N_Op_Divide
6318 or else NT
(N
).Nkind
= N_Op_Mod
6319 or else NT
(N
).Nkind
= N_Op_Multiply
6320 or else NT
(N
).Nkind
= N_Op_Rem
);
6321 Set_Flag14
(N
, Val
);
6322 end Set_Treat_Fixed_As_Integer
;
6324 procedure Set_Triggering_Alternative
6325 (N
: Node_Id
; Val
: Node_Id
) is
6327 pragma Assert
(False
6328 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6329 Set_Node1_With_Parent
(N
, Val
);
6330 end Set_Triggering_Alternative
;
6332 procedure Set_Triggering_Statement
6333 (N
: Node_Id
; Val
: Node_Id
) is
6335 pragma Assert
(False
6336 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6337 Set_Node1_With_Parent
(N
, Val
);
6338 end Set_Triggering_Statement
;
6340 procedure Set_TSS_Elist
6341 (N
: Node_Id
; Val
: Elist_Id
) is
6343 pragma Assert
(False
6344 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6345 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6348 procedure Set_Uneval_Old_Accept
6349 (N
: Node_Id
; Val
: Boolean := True) is
6351 pragma Assert
(False
6352 or else NT
(N
).Nkind
= N_Pragma
);
6354 end Set_Uneval_Old_Accept
;
6356 procedure Set_Uneval_Old_Warn
6357 (N
: Node_Id
; Val
: Boolean := True) is
6359 pragma Assert
(False
6360 or else NT
(N
).Nkind
= N_Pragma
);
6361 Set_Flag18
(N
, Val
);
6362 end Set_Uneval_Old_Warn
;
6364 procedure Set_Type_Definition
6365 (N
: Node_Id
; Val
: Node_Id
) is
6367 pragma Assert
(False
6368 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6369 Set_Node3_With_Parent
(N
, Val
);
6370 end Set_Type_Definition
;
6373 (N
: Node_Id
; Val
: Node_Id
) is
6375 pragma Assert
(False
6376 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6377 Set_Node2_With_Parent
(N
, Val
);
6380 procedure Set_Unknown_Discriminants_Present
6381 (N
: Node_Id
; Val
: Boolean := True) is
6383 pragma Assert
(False
6384 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6385 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6386 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6387 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6388 Set_Flag13
(N
, Val
);
6389 end Set_Unknown_Discriminants_Present
;
6391 procedure Set_Unreferenced_In_Spec
6392 (N
: Node_Id
; Val
: Boolean := True) is
6394 pragma Assert
(False
6395 or else NT
(N
).Nkind
= N_With_Clause
);
6397 end Set_Unreferenced_In_Spec
;
6399 procedure Set_Variant_Part
6400 (N
: Node_Id
; Val
: Node_Id
) is
6402 pragma Assert
(False
6403 or else NT
(N
).Nkind
= N_Component_List
);
6404 Set_Node4_With_Parent
(N
, Val
);
6405 end Set_Variant_Part
;
6407 procedure Set_Variants
6408 (N
: Node_Id
; Val
: List_Id
) is
6410 pragma Assert
(False
6411 or else NT
(N
).Nkind
= N_Variant_Part
);
6412 Set_List1_With_Parent
(N
, Val
);
6415 procedure Set_Visible_Declarations
6416 (N
: Node_Id
; Val
: List_Id
) is
6418 pragma Assert
(False
6419 or else NT
(N
).Nkind
= N_Package_Specification
6420 or else NT
(N
).Nkind
= N_Protected_Definition
6421 or else NT
(N
).Nkind
= N_Task_Definition
);
6422 Set_List2_With_Parent
(N
, Val
);
6423 end Set_Visible_Declarations
;
6425 procedure Set_Uninitialized_Variable
6426 (N
: Node_Id
; Val
: Node_Id
) is
6428 pragma Assert
(False
6429 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6430 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6432 end Set_Uninitialized_Variable
;
6434 procedure Set_Used_Operations
6435 (N
: Node_Id
; Val
: Elist_Id
) is
6437 pragma Assert
(False
6438 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6439 Set_Elist5
(N
, Val
);
6440 end Set_Used_Operations
;
6442 procedure Set_Was_Originally_Stub
6443 (N
: Node_Id
; Val
: Boolean := True) is
6445 pragma Assert
(False
6446 or else NT
(N
).Nkind
= N_Package_Body
6447 or else NT
(N
).Nkind
= N_Protected_Body
6448 or else NT
(N
).Nkind
= N_Subprogram_Body
6449 or else NT
(N
).Nkind
= N_Task_Body
);
6450 Set_Flag13
(N
, Val
);
6451 end Set_Was_Originally_Stub
;
6453 procedure Set_Withed_Body
6454 (N
: Node_Id
; Val
: Node_Id
) is
6456 pragma Assert
(False
6457 or else NT
(N
).Nkind
= N_With_Clause
);
6459 end Set_Withed_Body
;
6461 -------------------------
6462 -- Iterator Procedures --
6463 -------------------------
6465 procedure Next_Entity
(N
: in out Node_Id
) is
6467 N
:= Next_Entity
(N
);
6470 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6472 N
:= Next_Named_Actual
(N
);
6473 end Next_Named_Actual
;
6475 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6477 N
:= Next_Rep_Item
(N
);
6480 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6482 N
:= Next_Use_Clause
(N
);
6483 end Next_Use_Clause
;
6489 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6490 L
: constant Uint
:= End_Span
(N
);
6495 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6499 --------------------
6500 -- Get_Pragma_Arg --
6501 --------------------
6503 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6505 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6506 return Expression
(Arg
);
6512 ----------------------
6513 -- Set_End_Location --
6514 ----------------------
6516 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6519 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6520 end Set_End_Location
;
6529 V2
: Node_Kind
) return Boolean
6532 return T
= V1
or else
6540 V3
: Node_Kind
) return Boolean
6543 return T
= V1
or else
6553 V4
: Node_Kind
) return Boolean
6556 return T
= V1
or else
6568 V5
: Node_Kind
) return Boolean
6571 return T
= V1
or else
6585 V6
: Node_Kind
) return Boolean
6588 return T
= V1
or else
6604 V7
: Node_Kind
) return Boolean
6607 return T
= V1
or else
6625 V8
: Node_Kind
) return Boolean
6628 return T
= V1
or else
6648 V9
: Node_Kind
) return Boolean
6651 return T
= V1
or else
6666 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
6668 return Chars
(Pragma_Identifier
(N
));