1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2018, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks
(All_Checks
);
33 -- No subprogram ordering check, due to logical grouping
35 with Atree
; use Atree
;
39 use Atree
.Unchecked_Access
;
40 -- This package is one of the few packages which is allowed to make direct
41 -- references to tree nodes (since it is in the business of providing a
42 -- higher level of tree access which other clients are expected to use and
43 -- which implements checks).
45 use Atree_Private_Part
;
46 -- The only reason that we ask for direct access to the private part of
47 -- the tree package is so that we can directly reference the Nkind field
48 -- of nodes table entries. We do this since it helps the efficiency of
49 -- the Sinfo debugging checks considerably (note that when we are checking
50 -- Nkind values, we don't need to check for a valid node reference, because
51 -- we will check that anyway when we reference the field).
53 NT
: Nodes
.Table_Ptr
renames Nodes
.Table
;
54 -- A short hand abbreviation, useful for the debugging checks
56 ----------------------------
57 -- Field Access Functions --
58 ----------------------------
60 -- Note: The use of Assert (False or else ...) is just a device to allow
61 -- uniform format of the conditions following this. Note that csinfo
62 -- expects this uniform format.
64 function Abort_Present
65 (N
: Node_Id
) return Boolean is
68 or else NT
(N
).Nkind
= N_Requeue_Statement
);
72 function Abortable_Part
73 (N
: Node_Id
) return Node_Id
is
76 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
80 function Abstract_Present
81 (N
: Node_Id
) return Boolean is
84 or else NT
(N
).Nkind
= N_Derived_Type_Definition
85 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
86 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
87 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
88 or else NT
(N
).Nkind
= N_Private_Type_Declaration
89 or else NT
(N
).Nkind
= N_Record_Definition
);
93 function Accept_Handler_Records
94 (N
: Node_Id
) return List_Id
is
97 or else NT
(N
).Nkind
= N_Accept_Alternative
);
99 end Accept_Handler_Records
;
101 function Accept_Statement
102 (N
: Node_Id
) return Node_Id
is
105 or else NT
(N
).Nkind
= N_Accept_Alternative
);
107 end Accept_Statement
;
109 function Access_Definition
110 (N
: Node_Id
) return Node_Id
is
113 or else NT
(N
).Nkind
= N_Component_Definition
114 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
115 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
117 end Access_Definition
;
119 function Access_To_Subprogram_Definition
120 (N
: Node_Id
) return Node_Id
is
123 or else NT
(N
).Nkind
= N_Access_Definition
);
125 end Access_To_Subprogram_Definition
;
127 function Access_Types_To_Process
128 (N
: Node_Id
) return Elist_Id
is
131 or else NT
(N
).Nkind
= N_Freeze_Entity
);
133 end Access_Types_To_Process
;
136 (N
: Node_Id
) return List_Id
is
139 or else NT
(N
).Nkind
= N_And_Then
140 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
141 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
142 or else NT
(N
).Nkind
= N_Compound_Statement
143 or else NT
(N
).Nkind
= N_Expression_With_Actions
144 or else NT
(N
).Nkind
= N_Freeze_Entity
145 or else NT
(N
).Nkind
= N_Or_Else
);
149 function Activation_Chain_Entity
150 (N
: Node_Id
) return Node_Id
is
153 or else NT
(N
).Nkind
= N_Block_Statement
154 or else NT
(N
).Nkind
= N_Entry_Body
155 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
156 or else NT
(N
).Nkind
= N_Package_Declaration
157 or else NT
(N
).Nkind
= N_Subprogram_Body
158 or else NT
(N
).Nkind
= N_Task_Body
);
160 end Activation_Chain_Entity
;
162 function Acts_As_Spec
163 (N
: Node_Id
) return Boolean is
166 or else NT
(N
).Nkind
= N_Compilation_Unit
167 or else NT
(N
).Nkind
= N_Subprogram_Body
);
171 function Actual_Designated_Subtype
172 (N
: Node_Id
) return Node_Id
is
175 or else NT
(N
).Nkind
= N_Explicit_Dereference
176 or else NT
(N
).Nkind
= N_Free_Statement
);
178 end Actual_Designated_Subtype
;
180 function Address_Warning_Posted
181 (N
: Node_Id
) return Boolean is
184 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
186 end Address_Warning_Posted
;
188 function Aggregate_Bounds
189 (N
: Node_Id
) return Node_Id
is
192 or else NT
(N
).Nkind
= N_Aggregate
);
194 end Aggregate_Bounds
;
196 function Aliased_Present
197 (N
: Node_Id
) return Boolean is
200 or else NT
(N
).Nkind
= N_Component_Definition
201 or else NT
(N
).Nkind
= N_Object_Declaration
202 or else NT
(N
).Nkind
= N_Parameter_Specification
);
206 function Alloc_For_BIP_Return
207 (N
: Node_Id
) return Boolean is
210 or else NT
(N
).Nkind
= N_Allocator
);
212 end Alloc_For_BIP_Return
;
215 (N
: Node_Id
) return Boolean is
218 or else NT
(N
).Nkind
= N_Others_Choice
);
223 (N
: Node_Id
) return Boolean is
226 or else NT
(N
).Nkind
= N_Access_Definition
227 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
228 or else NT
(N
).Nkind
= N_Quantified_Expression
229 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
233 function Alternatives
234 (N
: Node_Id
) return List_Id
is
237 or else NT
(N
).Nkind
= N_Case_Expression
238 or else NT
(N
).Nkind
= N_Case_Statement
239 or else NT
(N
).Nkind
= N_In
240 or else NT
(N
).Nkind
= N_Not_In
);
244 function Ancestor_Part
245 (N
: Node_Id
) return Node_Id
is
248 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
252 function Atomic_Sync_Required
253 (N
: Node_Id
) return Boolean is
256 or else NT
(N
).Nkind
= N_Expanded_Name
257 or else NT
(N
).Nkind
= N_Explicit_Dereference
258 or else NT
(N
).Nkind
= N_Identifier
259 or else NT
(N
).Nkind
= N_Indexed_Component
260 or else NT
(N
).Nkind
= N_Selected_Component
);
262 end Atomic_Sync_Required
;
264 function Array_Aggregate
265 (N
: Node_Id
) return Node_Id
is
268 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
272 function Aspect_Rep_Item
273 (N
: Node_Id
) return Node_Id
is
276 or else NT
(N
).Nkind
= N_Aspect_Specification
);
280 function Assignment_OK
281 (N
: Node_Id
) return Boolean is
284 or else NT
(N
).Nkind
= N_Object_Declaration
285 or else NT
(N
).Nkind
in N_Subexpr
);
289 function Associated_Node
290 (N
: Node_Id
) return Node_Id
is
293 or else NT
(N
).Nkind
in N_Has_Entity
294 or else NT
(N
).Nkind
= N_Aggregate
295 or else NT
(N
).Nkind
= N_Extension_Aggregate
296 or else NT
(N
).Nkind
= N_Selected_Component
297 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
302 (N
: Node_Id
) return Node_Id
is
305 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
309 function Attribute_Name
310 (N
: Node_Id
) return Name_Id
is
313 or else NT
(N
).Nkind
= N_Attribute_Reference
);
317 function Aux_Decls_Node
318 (N
: Node_Id
) return Node_Id
is
321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
325 function Backwards_OK
326 (N
: Node_Id
) return Boolean is
329 or else NT
(N
).Nkind
= N_Assignment_Statement
);
333 function Bad_Is_Detected
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Subprogram_Body
);
341 function Body_Required
342 (N
: Node_Id
) return Boolean is
345 or else NT
(N
).Nkind
= N_Compilation_Unit
);
349 function Body_To_Inline
350 (N
: Node_Id
) return Node_Id
is
353 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
358 (N
: Node_Id
) return Boolean is
361 or else NT
(N
).Nkind
= N_Component_Association
362 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
363 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
364 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
365 or else NT
(N
).Nkind
= N_Generic_Association
366 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
371 (N
: Node_Id
) return Boolean is
374 or else NT
(N
).Nkind
= N_Extended_Return_Statement
375 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
379 function Char_Literal_Value
380 (N
: Node_Id
) return Uint
is
383 or else NT
(N
).Nkind
= N_Character_Literal
);
385 end Char_Literal_Value
;
388 (N
: Node_Id
) return Name_Id
is
391 or else NT
(N
).Nkind
in N_Has_Chars
);
395 function Check_Address_Alignment
396 (N
: Node_Id
) return Boolean is
399 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
401 end Check_Address_Alignment
;
403 function Choice_Parameter
404 (N
: Node_Id
) return Node_Id
is
407 or else NT
(N
).Nkind
= N_Exception_Handler
);
409 end Choice_Parameter
;
412 (N
: Node_Id
) return List_Id
is
415 or else NT
(N
).Nkind
= N_Component_Association
);
419 function Class_Present
420 (N
: Node_Id
) return Boolean is
423 or else NT
(N
).Nkind
= N_Aspect_Specification
424 or else NT
(N
).Nkind
= N_Pragma
);
428 function Classifications
429 (N
: Node_Id
) return Node_Id
is
432 or else NT
(N
).Nkind
= N_Contract
);
436 function Cleanup_Actions
437 (N
: Node_Id
) return List_Id
is
440 or else NT
(N
).Nkind
= N_Block_Statement
);
444 function Comes_From_Extended_Return_Statement
445 (N
: Node_Id
) return Boolean is
448 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
450 end Comes_From_Extended_Return_Statement
;
452 function Compile_Time_Known_Aggregate
453 (N
: Node_Id
) return Boolean is
456 or else NT
(N
).Nkind
= N_Aggregate
);
458 end Compile_Time_Known_Aggregate
;
460 function Component_Associations
461 (N
: Node_Id
) return List_Id
is
464 or else NT
(N
).Nkind
= N_Aggregate
465 or else NT
(N
).Nkind
= N_Delta_Aggregate
466 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
468 end Component_Associations
;
470 function Component_Clauses
471 (N
: Node_Id
) return List_Id
is
474 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
476 end Component_Clauses
;
478 function Component_Definition
479 (N
: Node_Id
) return Node_Id
is
482 or else NT
(N
).Nkind
= N_Component_Declaration
483 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
484 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
486 end Component_Definition
;
488 function Component_Items
489 (N
: Node_Id
) return List_Id
is
492 or else NT
(N
).Nkind
= N_Component_List
);
496 function Component_List
497 (N
: Node_Id
) return Node_Id
is
500 or else NT
(N
).Nkind
= N_Record_Definition
501 or else NT
(N
).Nkind
= N_Variant
);
505 function Component_Name
506 (N
: Node_Id
) return Node_Id
is
509 or else NT
(N
).Nkind
= N_Component_Clause
);
513 function Componentwise_Assignment
514 (N
: Node_Id
) return Boolean is
517 or else NT
(N
).Nkind
= N_Assignment_Statement
);
519 end Componentwise_Assignment
;
522 (N
: Node_Id
) return Node_Id
is
525 or else NT
(N
).Nkind
= N_Accept_Alternative
526 or else NT
(N
).Nkind
= N_Delay_Alternative
527 or else NT
(N
).Nkind
= N_Elsif_Part
528 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
529 or else NT
(N
).Nkind
= N_Exit_Statement
530 or else NT
(N
).Nkind
= N_If_Statement
531 or else NT
(N
).Nkind
= N_Iteration_Scheme
532 or else NT
(N
).Nkind
= N_Quantified_Expression
533 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
534 or else NT
(N
).Nkind
= N_Raise_Program_Error
535 or else NT
(N
).Nkind
= N_Raise_Storage_Error
536 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
540 function Condition_Actions
541 (N
: Node_Id
) return List_Id
is
544 or else NT
(N
).Nkind
= N_Elsif_Part
545 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
547 end Condition_Actions
;
549 function Config_Pragmas
550 (N
: Node_Id
) return List_Id
is
553 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
557 function Constant_Present
558 (N
: Node_Id
) return Boolean is
561 or else NT
(N
).Nkind
= N_Access_Definition
562 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
563 or else NT
(N
).Nkind
= N_Object_Declaration
);
565 end Constant_Present
;
568 (N
: Node_Id
) return Node_Id
is
571 or else NT
(N
).Nkind
= N_Subtype_Indication
);
576 (N
: Node_Id
) return List_Id
is
579 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
583 function Context_Installed
584 (N
: Node_Id
) return Boolean is
587 or else NT
(N
).Nkind
= N_With_Clause
);
589 end Context_Installed
;
591 function Context_Items
592 (N
: Node_Id
) return List_Id
is
595 or else NT
(N
).Nkind
= N_Compilation_Unit
);
599 function Context_Pending
600 (N
: Node_Id
) return Boolean is
603 or else NT
(N
).Nkind
= N_Compilation_Unit
);
607 function Contract_Test_Cases
608 (N
: Node_Id
) return Node_Id
is
611 or else NT
(N
).Nkind
= N_Contract
);
613 end Contract_Test_Cases
;
615 function Controlling_Argument
616 (N
: Node_Id
) return Node_Id
is
619 or else NT
(N
).Nkind
= N_Function_Call
620 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
622 end Controlling_Argument
;
624 function Conversion_OK
625 (N
: Node_Id
) return Boolean is
628 or else NT
(N
).Nkind
= N_Type_Conversion
);
632 function Convert_To_Return_False
633 (N
: Node_Id
) return Boolean is
636 or else NT
(N
).Nkind
= N_Raise_Expression
);
638 end Convert_To_Return_False
;
640 function Corresponding_Aspect
641 (N
: Node_Id
) return Node_Id
is
644 or else NT
(N
).Nkind
= N_Pragma
);
646 end Corresponding_Aspect
;
648 function Corresponding_Body
649 (N
: Node_Id
) return Node_Id
is
652 or else NT
(N
).Nkind
= N_Entry_Declaration
653 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
654 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
655 or else NT
(N
).Nkind
= N_Package_Body_Stub
656 or else NT
(N
).Nkind
= N_Package_Declaration
657 or else NT
(N
).Nkind
= N_Protected_Body_Stub
658 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
659 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
660 or else NT
(N
).Nkind
= N_Subprogram_Declaration
661 or else NT
(N
).Nkind
= N_Task_Body_Stub
662 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
664 end Corresponding_Body
;
666 function Corresponding_Formal_Spec
667 (N
: Node_Id
) return Node_Id
is
670 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
672 end Corresponding_Formal_Spec
;
674 function Corresponding_Generic_Association
675 (N
: Node_Id
) return Node_Id
is
678 or else NT
(N
).Nkind
= N_Object_Declaration
679 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
681 end Corresponding_Generic_Association
;
683 function Corresponding_Integer_Value
684 (N
: Node_Id
) return Uint
is
687 or else NT
(N
).Nkind
= N_Real_Literal
);
689 end Corresponding_Integer_Value
;
691 function Corresponding_Spec
692 (N
: Node_Id
) return Entity_Id
is
695 or else NT
(N
).Nkind
= N_Expression_Function
696 or else NT
(N
).Nkind
= N_Package_Body
697 or else NT
(N
).Nkind
= N_Protected_Body
698 or else NT
(N
).Nkind
= N_Subprogram_Body
699 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
700 or else NT
(N
).Nkind
= N_Task_Body
701 or else NT
(N
).Nkind
= N_With_Clause
);
703 end Corresponding_Spec
;
705 function Corresponding_Spec_Of_Stub
706 (N
: Node_Id
) return Entity_Id
is
709 or else NT
(N
).Nkind
= N_Package_Body_Stub
710 or else NT
(N
).Nkind
= N_Protected_Body_Stub
711 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
712 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
714 end Corresponding_Spec_Of_Stub
;
716 function Corresponding_Stub
717 (N
: Node_Id
) return Node_Id
is
720 or else NT
(N
).Nkind
= N_Subunit
);
722 end Corresponding_Stub
;
724 function Dcheck_Function
725 (N
: Node_Id
) return Entity_Id
is
728 or else NT
(N
).Nkind
= N_Variant
);
732 function Declarations
733 (N
: Node_Id
) return List_Id
is
736 or else NT
(N
).Nkind
= N_Accept_Statement
737 or else NT
(N
).Nkind
= N_Block_Statement
738 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
739 or else NT
(N
).Nkind
= N_Entry_Body
740 or else NT
(N
).Nkind
= N_Package_Body
741 or else NT
(N
).Nkind
= N_Protected_Body
742 or else NT
(N
).Nkind
= N_Subprogram_Body
743 or else NT
(N
).Nkind
= N_Task_Body
);
747 function Default_Expression
748 (N
: Node_Id
) return Node_Id
is
751 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
752 or else NT
(N
).Nkind
= N_Parameter_Specification
);
754 end Default_Expression
;
756 function Default_Storage_Pool
757 (N
: Node_Id
) return Node_Id
is
760 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
762 end Default_Storage_Pool
;
764 function Default_Name
765 (N
: Node_Id
) return Node_Id
is
768 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
769 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
773 function Defining_Identifier
774 (N
: Node_Id
) return Entity_Id
is
777 or else NT
(N
).Nkind
= N_Component_Declaration
778 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
779 or else NT
(N
).Nkind
= N_Discriminant_Specification
780 or else NT
(N
).Nkind
= N_Entry_Body
781 or else NT
(N
).Nkind
= N_Entry_Declaration
782 or else NT
(N
).Nkind
= N_Entry_Index_Specification
783 or else NT
(N
).Nkind
= N_Exception_Declaration
784 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
785 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
786 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
787 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
788 or else NT
(N
).Nkind
= N_Full_Type_Declaration
789 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
790 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
791 or else NT
(N
).Nkind
= N_Iterated_Component_Association
792 or else NT
(N
).Nkind
= N_Iterator_Specification
793 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
794 or else NT
(N
).Nkind
= N_Number_Declaration
795 or else NT
(N
).Nkind
= N_Object_Declaration
796 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
797 or else NT
(N
).Nkind
= N_Package_Body_Stub
798 or else NT
(N
).Nkind
= N_Parameter_Specification
799 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
800 or else NT
(N
).Nkind
= N_Private_Type_Declaration
801 or else NT
(N
).Nkind
= N_Protected_Body
802 or else NT
(N
).Nkind
= N_Protected_Body_Stub
803 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
804 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
805 or else NT
(N
).Nkind
= N_Single_Task_Declaration
806 or else NT
(N
).Nkind
= N_Subtype_Declaration
807 or else NT
(N
).Nkind
= N_Task_Body
808 or else NT
(N
).Nkind
= N_Task_Body_Stub
809 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
811 end Defining_Identifier
;
813 function Defining_Unit_Name
814 (N
: Node_Id
) return Node_Id
is
817 or else NT
(N
).Nkind
= N_Function_Instantiation
818 or else NT
(N
).Nkind
= N_Function_Specification
819 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
820 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
821 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
822 or else NT
(N
).Nkind
= N_Package_Body
823 or else NT
(N
).Nkind
= N_Package_Instantiation
824 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
825 or else NT
(N
).Nkind
= N_Package_Specification
826 or else NT
(N
).Nkind
= N_Procedure_Instantiation
827 or else NT
(N
).Nkind
= N_Procedure_Specification
);
829 end Defining_Unit_Name
;
831 function Delay_Alternative
832 (N
: Node_Id
) return Node_Id
is
835 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
837 end Delay_Alternative
;
839 function Delay_Statement
840 (N
: Node_Id
) return Node_Id
is
843 or else NT
(N
).Nkind
= N_Delay_Alternative
);
847 function Delta_Expression
848 (N
: Node_Id
) return Node_Id
is
851 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
852 or else NT
(N
).Nkind
= N_Delta_Constraint
853 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
855 end Delta_Expression
;
857 function Digits_Expression
858 (N
: Node_Id
) return Node_Id
is
861 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
862 or else NT
(N
).Nkind
= N_Digits_Constraint
863 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
865 end Digits_Expression
;
867 function Discr_Check_Funcs_Built
868 (N
: Node_Id
) return Boolean is
871 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
873 end Discr_Check_Funcs_Built
;
875 function Discrete_Choices
876 (N
: Node_Id
) return List_Id
is
879 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
880 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
881 or else NT
(N
).Nkind
= N_Iterated_Component_Association
882 or else NT
(N
).Nkind
= N_Variant
);
884 end Discrete_Choices
;
886 function Discrete_Range
887 (N
: Node_Id
) return Node_Id
is
890 or else NT
(N
).Nkind
= N_Slice
);
894 function Discrete_Subtype_Definition
895 (N
: Node_Id
) return Node_Id
is
898 or else NT
(N
).Nkind
= N_Entry_Declaration
899 or else NT
(N
).Nkind
= N_Entry_Index_Specification
900 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
902 end Discrete_Subtype_Definition
;
904 function Discrete_Subtype_Definitions
905 (N
: Node_Id
) return List_Id
is
908 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
910 end Discrete_Subtype_Definitions
;
912 function Discriminant_Specifications
913 (N
: Node_Id
) return List_Id
is
916 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
917 or else NT
(N
).Nkind
= N_Full_Type_Declaration
918 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
919 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
920 or else NT
(N
).Nkind
= N_Private_Type_Declaration
921 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
922 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
924 end Discriminant_Specifications
;
926 function Discriminant_Type
927 (N
: Node_Id
) return Node_Id
is
930 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
932 end Discriminant_Type
;
934 function Do_Accessibility_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
= N_Parameter_Specification
);
940 end Do_Accessibility_Check
;
942 function Do_Discriminant_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Assignment_Statement
947 or else NT
(N
).Nkind
= N_Selected_Component
948 or else NT
(N
).Nkind
= N_Type_Conversion
);
950 end Do_Discriminant_Check
;
952 function Do_Division_Check
953 (N
: Node_Id
) return Boolean is
956 or else NT
(N
).Nkind
= N_Op_Divide
957 or else NT
(N
).Nkind
= N_Op_Mod
958 or else NT
(N
).Nkind
= N_Op_Rem
);
960 end Do_Division_Check
;
962 function Do_Length_Check
963 (N
: Node_Id
) return Boolean is
966 or else NT
(N
).Nkind
= N_Assignment_Statement
967 or else NT
(N
).Nkind
= N_Op_And
968 or else NT
(N
).Nkind
= N_Op_Or
969 or else NT
(N
).Nkind
= N_Op_Xor
970 or else NT
(N
).Nkind
= N_Type_Conversion
);
974 function Do_Overflow_Check
975 (N
: Node_Id
) return Boolean is
978 or else NT
(N
).Nkind
in N_Op
979 or else NT
(N
).Nkind
= N_Attribute_Reference
980 or else NT
(N
).Nkind
= N_Case_Expression
981 or else NT
(N
).Nkind
= N_If_Expression
982 or else NT
(N
).Nkind
= N_Type_Conversion
);
984 end Do_Overflow_Check
;
986 function Do_Range_Check
987 (N
: Node_Id
) return Boolean is
990 or else NT
(N
).Nkind
in N_Subexpr
);
994 function Do_Storage_Check
995 (N
: Node_Id
) return Boolean is
998 or else NT
(N
).Nkind
= N_Allocator
999 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1001 end Do_Storage_Check
;
1003 function Do_Tag_Check
1004 (N
: Node_Id
) return Boolean is
1006 pragma Assert
(False
1007 or else NT
(N
).Nkind
= N_Assignment_Statement
1008 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1009 or else NT
(N
).Nkind
= N_Function_Call
1010 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1011 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1012 or else NT
(N
).Nkind
= N_Type_Conversion
);
1016 function Elaborate_All_Desirable
1017 (N
: Node_Id
) return Boolean is
1019 pragma Assert
(False
1020 or else NT
(N
).Nkind
= N_With_Clause
);
1022 end Elaborate_All_Desirable
;
1024 function Elaborate_All_Present
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_All_Present
;
1032 function Elaborate_Desirable
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_Desirable
;
1040 function Elaborate_Present
1041 (N
: Node_Id
) return Boolean is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_With_Clause
);
1046 end Elaborate_Present
;
1048 function Else_Actions
1049 (N
: Node_Id
) return List_Id
is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_If_Expression
);
1056 function Else_Statements
1057 (N
: Node_Id
) return List_Id
is
1059 pragma Assert
(False
1060 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1061 or else NT
(N
).Nkind
= N_If_Statement
1062 or else NT
(N
).Nkind
= N_Selective_Accept
);
1064 end Else_Statements
;
1066 function Elsif_Parts
1067 (N
: Node_Id
) return List_Id
is
1069 pragma Assert
(False
1070 or else NT
(N
).Nkind
= N_If_Statement
);
1074 function Enclosing_Variant
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_Variant
);
1080 end Enclosing_Variant
;
1083 (N
: Node_Id
) return Node_Id
is
1085 pragma Assert
(False
1086 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1087 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1088 or else NT
(N
).Nkind
= N_Loop_Statement
1089 or else NT
(N
).Nkind
= N_Package_Specification
1090 or else NT
(N
).Nkind
= N_Protected_Body
1091 or else NT
(N
).Nkind
= N_Protected_Definition
1092 or else NT
(N
).Nkind
= N_Record_Definition
1093 or else NT
(N
).Nkind
= N_Task_Definition
);
1098 (N
: Node_Id
) return Uint
is
1100 pragma Assert
(False
1101 or else NT
(N
).Nkind
= N_Case_Statement
1102 or else NT
(N
).Nkind
= N_If_Statement
);
1107 (N
: Node_Id
) return Node_Id
is
1109 pragma Assert
(False
1110 or else NT
(N
).Nkind
in N_Has_Entity
1111 or else NT
(N
).Nkind
= N_Aspect_Specification
1112 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1113 or else NT
(N
).Nkind
= N_Freeze_Entity
1114 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1118 function Entity_Or_Associated_Node
1119 (N
: Node_Id
) return Node_Id
is
1121 pragma Assert
(False
1122 or else NT
(N
).Nkind
in N_Has_Entity
1123 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1125 end Entity_Or_Associated_Node
;
1127 function Entry_Body_Formal_Part
1128 (N
: Node_Id
) return Node_Id
is
1130 pragma Assert
(False
1131 or else NT
(N
).Nkind
= N_Entry_Body
);
1133 end Entry_Body_Formal_Part
;
1135 function Entry_Call_Alternative
1136 (N
: Node_Id
) return Node_Id
is
1138 pragma Assert
(False
1139 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1140 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1142 end Entry_Call_Alternative
;
1144 function Entry_Call_Statement
1145 (N
: Node_Id
) return Node_Id
is
1147 pragma Assert
(False
1148 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1150 end Entry_Call_Statement
;
1152 function Entry_Direct_Name
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Accept_Statement
);
1158 end Entry_Direct_Name
;
1160 function Entry_Index
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Accept_Statement
);
1168 function Entry_Index_Specification
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1174 end Entry_Index_Specification
;
1177 (N
: Node_Id
) return Node_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
in N_Has_Etype
);
1184 function Exception_Choices
1185 (N
: Node_Id
) return List_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
= N_Exception_Handler
);
1190 end Exception_Choices
;
1192 function Exception_Handlers
1193 (N
: Node_Id
) return List_Id
is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1198 end Exception_Handlers
;
1200 function Exception_Junk
1201 (N
: Node_Id
) return Boolean is
1203 pragma Assert
(False
1204 or else NT
(N
).Nkind
= N_Block_Statement
1205 or else NT
(N
).Nkind
= N_Goto_Statement
1206 or else NT
(N
).Nkind
= N_Label
1207 or else NT
(N
).Nkind
= N_Object_Declaration
1208 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1212 function Exception_Label
1213 (N
: Node_Id
) return Node_Id
is
1215 pragma Assert
(False
1216 or else NT
(N
).Nkind
= N_Exception_Handler
1217 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1218 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1219 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1221 end Exception_Label
;
1223 function Expansion_Delayed
1224 (N
: Node_Id
) return Boolean is
1226 pragma Assert
(False
1227 or else NT
(N
).Nkind
= N_Aggregate
1228 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1230 end Expansion_Delayed
;
1232 function Explicit_Actual_Parameter
1233 (N
: Node_Id
) return Node_Id
is
1235 pragma Assert
(False
1236 or else NT
(N
).Nkind
= N_Parameter_Association
);
1238 end Explicit_Actual_Parameter
;
1240 function Explicit_Generic_Actual_Parameter
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Generic_Association
);
1246 end Explicit_Generic_Actual_Parameter
;
1249 (N
: Node_Id
) return Node_Id
is
1251 pragma Assert
(False
1252 or else NT
(N
).Nkind
= N_Allocator
1253 or else NT
(N
).Nkind
= N_Aspect_Specification
1254 or else NT
(N
).Nkind
= N_Assignment_Statement
1255 or else NT
(N
).Nkind
= N_At_Clause
1256 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1257 or else NT
(N
).Nkind
= N_Case_Expression
1258 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1259 or else NT
(N
).Nkind
= N_Case_Statement
1260 or else NT
(N
).Nkind
= N_Code_Statement
1261 or else NT
(N
).Nkind
= N_Component_Association
1262 or else NT
(N
).Nkind
= N_Component_Declaration
1263 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1264 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1265 or else NT
(N
).Nkind
= N_Delta_Aggregate
1266 or else NT
(N
).Nkind
= N_Discriminant_Association
1267 or else NT
(N
).Nkind
= N_Discriminant_Specification
1268 or else NT
(N
).Nkind
= N_Exception_Declaration
1269 or else NT
(N
).Nkind
= N_Expression_Function
1270 or else NT
(N
).Nkind
= N_Expression_With_Actions
1271 or else NT
(N
).Nkind
= N_Free_Statement
1272 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1273 or else NT
(N
).Nkind
= N_Mod_Clause
1274 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1275 or else NT
(N
).Nkind
= N_Number_Declaration
1276 or else NT
(N
).Nkind
= N_Object_Declaration
1277 or else NT
(N
).Nkind
= N_Parameter_Specification
1278 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1279 or else NT
(N
).Nkind
= N_Qualified_Expression
1280 or else NT
(N
).Nkind
= N_Raise_Expression
1281 or else NT
(N
).Nkind
= N_Raise_Statement
1282 or else NT
(N
).Nkind
= N_Reduction_Expression
1283 or else NT
(N
).Nkind
= N_Reduction_Expression_Parameter
1284 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1285 or else NT
(N
).Nkind
= N_Type_Conversion
1286 or else NT
(N
).Nkind
= N_Unchecked_Expression
1287 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1291 function Expression_Copy
1292 (N
: Node_Id
) return Node_Id
is
1294 pragma Assert
(False
1295 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1297 end Expression_Copy
;
1299 function Expressions
1300 (N
: Node_Id
) return List_Id
is
1302 pragma Assert
(False
1303 or else NT
(N
).Nkind
= N_Aggregate
1304 or else NT
(N
).Nkind
= N_Attribute_Reference
1305 or else NT
(N
).Nkind
= N_Extension_Aggregate
1306 or else NT
(N
).Nkind
= N_If_Expression
1307 or else NT
(N
).Nkind
= N_Indexed_Component
);
1312 (N
: Node_Id
) return Node_Id
is
1314 pragma Assert
(False
1315 or else NT
(N
).Nkind
= N_Component_Clause
);
1319 function First_Inlined_Subprogram
1320 (N
: Node_Id
) return Entity_Id
is
1322 pragma Assert
(False
1323 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1325 end First_Inlined_Subprogram
;
1328 (N
: Node_Id
) return Boolean is
1330 pragma Assert
(False
1331 or else NT
(N
).Nkind
= N_With_Clause
);
1335 function First_Named_Actual
1336 (N
: Node_Id
) return Node_Id
is
1338 pragma Assert
(False
1339 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1340 or else NT
(N
).Nkind
= N_Function_Call
1341 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1343 end First_Named_Actual
;
1345 function First_Real_Statement
1346 (N
: Node_Id
) return Node_Id
is
1348 pragma Assert
(False
1349 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1351 end First_Real_Statement
;
1353 function First_Subtype_Link
1354 (N
: Node_Id
) return Entity_Id
is
1356 pragma Assert
(False
1357 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1359 end First_Subtype_Link
;
1361 function Float_Truncate
1362 (N
: Node_Id
) return Boolean is
1364 pragma Assert
(False
1365 or else NT
(N
).Nkind
= N_Type_Conversion
);
1369 function Formal_Type_Definition
1370 (N
: Node_Id
) return Node_Id
is
1372 pragma Assert
(False
1373 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1375 end Formal_Type_Definition
;
1377 function Forwards_OK
1378 (N
: Node_Id
) return Boolean is
1380 pragma Assert
(False
1381 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1385 function From_Aspect_Specification
1386 (N
: Node_Id
) return Boolean is
1388 pragma Assert
(False
1389 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1390 or else NT
(N
).Nkind
= N_Pragma
);
1392 end From_Aspect_Specification
;
1394 function From_At_End
1395 (N
: Node_Id
) return Boolean is
1397 pragma Assert
(False
1398 or else NT
(N
).Nkind
= N_Raise_Statement
);
1402 function From_At_Mod
1403 (N
: Node_Id
) return Boolean is
1405 pragma Assert
(False
1406 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1410 function From_Conditional_Expression
1411 (N
: Node_Id
) return Boolean is
1413 pragma Assert
(False
1414 or else NT
(N
).Nkind
= N_Case_Statement
1415 or else NT
(N
).Nkind
= N_If_Statement
);
1417 end From_Conditional_Expression
;
1419 function From_Default
1420 (N
: Node_Id
) return Boolean is
1422 pragma Assert
(False
1423 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1427 function Generalized_Indexing
1428 (N
: Node_Id
) return Node_Id
is
1430 pragma Assert
(False
1431 or else NT
(N
).Nkind
= N_Indexed_Component
);
1433 end Generalized_Indexing
;
1435 function Generic_Associations
1436 (N
: Node_Id
) return List_Id
is
1438 pragma Assert
(False
1439 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1440 or else NT
(N
).Nkind
= N_Function_Instantiation
1441 or else NT
(N
).Nkind
= N_Package_Instantiation
1442 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1444 end Generic_Associations
;
1446 function Generic_Formal_Declarations
1447 (N
: Node_Id
) return List_Id
is
1449 pragma Assert
(False
1450 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1451 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1453 end Generic_Formal_Declarations
;
1455 function Generic_Parent
1456 (N
: Node_Id
) return Node_Id
is
1458 pragma Assert
(False
1459 or else NT
(N
).Nkind
= N_Function_Specification
1460 or else NT
(N
).Nkind
= N_Package_Specification
1461 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1465 function Generic_Parent_Type
1466 (N
: Node_Id
) return Node_Id
is
1468 pragma Assert
(False
1469 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1471 end Generic_Parent_Type
;
1473 function Handled_Statement_Sequence
1474 (N
: Node_Id
) return Node_Id
is
1476 pragma Assert
(False
1477 or else NT
(N
).Nkind
= N_Accept_Statement
1478 or else NT
(N
).Nkind
= N_Block_Statement
1479 or else NT
(N
).Nkind
= N_Entry_Body
1480 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1481 or else NT
(N
).Nkind
= N_Package_Body
1482 or else NT
(N
).Nkind
= N_Subprogram_Body
1483 or else NT
(N
).Nkind
= N_Task_Body
);
1485 end Handled_Statement_Sequence
;
1487 function Handler_List_Entry
1488 (N
: Node_Id
) return Node_Id
is
1490 pragma Assert
(False
1491 or else NT
(N
).Nkind
= N_Object_Declaration
);
1493 end Handler_List_Entry
;
1495 function Has_Created_Identifier
1496 (N
: Node_Id
) return Boolean is
1498 pragma Assert
(False
1499 or else NT
(N
).Nkind
= N_Block_Statement
1500 or else NT
(N
).Nkind
= N_Loop_Statement
);
1502 end Has_Created_Identifier
;
1504 function Has_Dereference_Action
1505 (N
: Node_Id
) return Boolean is
1507 pragma Assert
(False
1508 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1510 end Has_Dereference_Action
;
1512 function Has_Dynamic_Length_Check
1513 (N
: Node_Id
) return Boolean is
1515 pragma Assert
(False
1516 or else NT
(N
).Nkind
in N_Subexpr
);
1518 end Has_Dynamic_Length_Check
;
1520 function Has_Dynamic_Range_Check
1521 (N
: Node_Id
) return Boolean is
1523 pragma Assert
(False
1524 or else NT
(N
).Nkind
= N_Subtype_Declaration
1525 or else NT
(N
).Nkind
in N_Subexpr
);
1527 end Has_Dynamic_Range_Check
;
1529 function Has_Init_Expression
1530 (N
: Node_Id
) return Boolean is
1532 pragma Assert
(False
1533 or else NT
(N
).Nkind
= N_Object_Declaration
);
1535 end Has_Init_Expression
;
1537 function Has_Local_Raise
1538 (N
: Node_Id
) return Boolean is
1540 pragma Assert
(False
1541 or else NT
(N
).Nkind
= N_Exception_Handler
);
1543 end Has_Local_Raise
;
1545 function Has_No_Elaboration_Code
1546 (N
: Node_Id
) return Boolean is
1548 pragma Assert
(False
1549 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1551 end Has_No_Elaboration_Code
;
1553 function Has_Pragma_Suppress_All
1554 (N
: Node_Id
) return Boolean is
1556 pragma Assert
(False
1557 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1559 end Has_Pragma_Suppress_All
;
1561 function Has_Private_View
1562 (N
: Node_Id
) return Boolean is
1564 pragma Assert
(False
1565 or else NT
(N
).Nkind
in N_Op
1566 or else NT
(N
).Nkind
= N_Character_Literal
1567 or else NT
(N
).Nkind
= N_Expanded_Name
1568 or else NT
(N
).Nkind
= N_Identifier
1569 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1571 end Has_Private_View
;
1573 function Has_Relative_Deadline_Pragma
1574 (N
: Node_Id
) return Boolean is
1576 pragma Assert
(False
1577 or else NT
(N
).Nkind
= N_Subprogram_Body
1578 or else NT
(N
).Nkind
= N_Task_Definition
);
1580 end Has_Relative_Deadline_Pragma
;
1582 function Has_Self_Reference
1583 (N
: Node_Id
) return Boolean is
1585 pragma Assert
(False
1586 or else NT
(N
).Nkind
= N_Aggregate
1587 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1589 end Has_Self_Reference
;
1591 function Has_SP_Choice
1592 (N
: Node_Id
) return Boolean is
1594 pragma Assert
(False
1595 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1596 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1597 or else NT
(N
).Nkind
= N_Variant
);
1601 function Has_Storage_Size_Pragma
1602 (N
: Node_Id
) return Boolean is
1604 pragma Assert
(False
1605 or else NT
(N
).Nkind
= N_Task_Definition
);
1607 end Has_Storage_Size_Pragma
;
1609 function Has_Target_Names
1610 (N
: Node_Id
) return Boolean is
1612 pragma Assert
(False
1613 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1615 end Has_Target_Names
;
1617 function Has_Wide_Character
1618 (N
: Node_Id
) return Boolean is
1620 pragma Assert
(False
1621 or else NT
(N
).Nkind
= N_String_Literal
);
1623 end Has_Wide_Character
;
1625 function Has_Wide_Wide_Character
1626 (N
: Node_Id
) return Boolean is
1628 pragma Assert
(False
1629 or else NT
(N
).Nkind
= N_String_Literal
);
1631 end Has_Wide_Wide_Character
;
1633 function Header_Size_Added
1634 (N
: Node_Id
) return Boolean is
1636 pragma Assert
(False
1637 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1639 end Header_Size_Added
;
1641 function Hidden_By_Use_Clause
1642 (N
: Node_Id
) return Elist_Id
is
1644 pragma Assert
(False
1645 or else NT
(N
).Nkind
= N_Use_Package_Clause
1646 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1648 end Hidden_By_Use_Clause
;
1651 (N
: Node_Id
) return Node_Id
is
1653 pragma Assert
(False
1654 or else NT
(N
).Nkind
= N_Range
1655 or else NT
(N
).Nkind
= N_Real_Range_Specification
1656 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1661 (N
: Node_Id
) return Node_Id
is
1663 pragma Assert
(False
1664 or else NT
(N
).Nkind
= N_Aspect_Specification
1665 or else NT
(N
).Nkind
= N_At_Clause
1666 or else NT
(N
).Nkind
= N_Block_Statement
1667 or else NT
(N
).Nkind
= N_Designator
1668 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1669 or else NT
(N
).Nkind
= N_Label
1670 or else NT
(N
).Nkind
= N_Loop_Statement
1671 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1675 function Implicit_With
1676 (N
: Node_Id
) return Boolean is
1678 pragma Assert
(False
1679 or else NT
(N
).Nkind
= N_With_Clause
);
1683 function Interface_List
1684 (N
: Node_Id
) return List_Id
is
1686 pragma Assert
(False
1687 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1688 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1689 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1690 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1691 or else NT
(N
).Nkind
= N_Record_Definition
1692 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1693 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1694 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1698 function Interface_Present
1699 (N
: Node_Id
) return Boolean is
1701 pragma Assert
(False
1702 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1703 or else NT
(N
).Nkind
= N_Record_Definition
);
1705 end Interface_Present
;
1707 function Import_Interface_Present
1708 (N
: Node_Id
) return Boolean is
1710 pragma Assert
(False
1711 or else NT
(N
).Nkind
= N_Pragma
);
1713 end Import_Interface_Present
;
1716 (N
: Node_Id
) return Boolean is
1718 pragma Assert
(False
1719 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1720 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1724 function Includes_Infinities
1725 (N
: Node_Id
) return Boolean is
1727 pragma Assert
(False
1728 or else NT
(N
).Nkind
= N_Range
);
1730 end Includes_Infinities
;
1732 function Incomplete_View
1733 (N
: Node_Id
) return Node_Id
is
1735 pragma Assert
(False
1736 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1738 end Incomplete_View
;
1740 function Inherited_Discriminant
1741 (N
: Node_Id
) return Boolean is
1743 pragma Assert
(False
1744 or else NT
(N
).Nkind
= N_Component_Association
);
1746 end Inherited_Discriminant
;
1748 function Instance_Spec
1749 (N
: Node_Id
) return Node_Id
is
1751 pragma Assert
(False
1752 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1753 or else NT
(N
).Nkind
= N_Function_Instantiation
1754 or else NT
(N
).Nkind
= N_Package_Instantiation
1755 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1760 (N
: Node_Id
) return Uint
is
1762 pragma Assert
(False
1763 or else NT
(N
).Nkind
= N_Integer_Literal
);
1767 function Is_Abort_Block
1768 (N
: Node_Id
) return Boolean is
1770 pragma Assert
(False
1771 or else NT
(N
).Nkind
= N_Block_Statement
);
1775 function Is_Accessibility_Actual
1776 (N
: Node_Id
) return Boolean is
1778 pragma Assert
(False
1779 or else NT
(N
).Nkind
= N_Parameter_Association
);
1781 end Is_Accessibility_Actual
;
1783 function Is_Analyzed_Pragma
1784 (N
: Node_Id
) return Boolean is
1786 pragma Assert
(False
1787 or else NT
(N
).Nkind
= N_Pragma
);
1789 end Is_Analyzed_Pragma
;
1791 function Is_Asynchronous_Call_Block
1792 (N
: Node_Id
) return Boolean is
1794 pragma Assert
(False
1795 or else NT
(N
).Nkind
= N_Block_Statement
);
1797 end Is_Asynchronous_Call_Block
;
1799 function Is_Boolean_Aspect
1800 (N
: Node_Id
) return Boolean is
1802 pragma Assert
(False
1803 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1805 end Is_Boolean_Aspect
;
1808 (N
: Node_Id
) return Boolean is
1810 pragma Assert
(False
1811 or else NT
(N
).Nkind
= N_Aspect_Specification
1812 or else NT
(N
).Nkind
= N_Pragma
);
1816 function Is_Checked_Ghost_Pragma
1817 (N
: Node_Id
) return Boolean is
1819 pragma Assert
(False
1820 or else NT
(N
).Nkind
= N_Pragma
);
1822 end Is_Checked_Ghost_Pragma
;
1824 function Is_Component_Left_Opnd
1825 (N
: Node_Id
) return Boolean is
1827 pragma Assert
(False
1828 or else NT
(N
).Nkind
= N_Op_Concat
);
1830 end Is_Component_Left_Opnd
;
1832 function Is_Component_Right_Opnd
1833 (N
: Node_Id
) return Boolean is
1835 pragma Assert
(False
1836 or else NT
(N
).Nkind
= N_Op_Concat
);
1838 end Is_Component_Right_Opnd
;
1840 function Is_Controlling_Actual
1841 (N
: Node_Id
) return Boolean is
1843 pragma Assert
(False
1844 or else NT
(N
).Nkind
in N_Subexpr
);
1846 end Is_Controlling_Actual
;
1848 function Is_Declaration_Level_Node
1849 (N
: Node_Id
) return Boolean is
1851 pragma Assert
(False
1852 or else NT
(N
).Nkind
= N_Call_Marker
1853 or else NT
(N
).Nkind
= N_Function_Instantiation
1854 or else NT
(N
).Nkind
= N_Package_Instantiation
1855 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1857 end Is_Declaration_Level_Node
;
1859 function Is_Delayed_Aspect
1860 (N
: Node_Id
) return Boolean is
1862 pragma Assert
(False
1863 or else NT
(N
).Nkind
= N_Aspect_Specification
1864 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1865 or else NT
(N
).Nkind
= N_Pragma
);
1867 end Is_Delayed_Aspect
;
1869 function Is_Disabled
1870 (N
: Node_Id
) return Boolean is
1872 pragma Assert
(False
1873 or else NT
(N
).Nkind
= N_Aspect_Specification
1874 or else NT
(N
).Nkind
= N_Pragma
);
1878 function Is_Dispatching_Call
1879 (N
: Node_Id
) return Boolean is
1881 pragma Assert
(False
1882 or else NT
(N
).Nkind
= N_Call_Marker
);
1884 end Is_Dispatching_Call
;
1886 function Is_Dynamic_Coextension
1887 (N
: Node_Id
) return Boolean is
1889 pragma Assert
(False
1890 or else NT
(N
).Nkind
= N_Allocator
);
1892 end Is_Dynamic_Coextension
;
1894 function Is_Effective_Use_Clause
1895 (N
: Node_Id
) return Boolean is
1897 pragma Assert
(False
1898 or else NT
(N
).Nkind
= N_Use_Package_Clause
1899 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1901 end Is_Effective_Use_Clause
;
1903 function Is_Elaboration_Checks_OK_Node
1904 (N
: Node_Id
) return Boolean is
1906 pragma Assert
(False
1907 or else NT
(N
).Nkind
= N_Assignment_Statement
1908 or else NT
(N
).Nkind
= N_Attribute_Reference
1909 or else NT
(N
).Nkind
= N_Call_Marker
1910 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1911 or else NT
(N
).Nkind
= N_Expanded_Name
1912 or else NT
(N
).Nkind
= N_Function_Call
1913 or else NT
(N
).Nkind
= N_Function_Instantiation
1914 or else NT
(N
).Nkind
= N_Identifier
1915 or else NT
(N
).Nkind
= N_Package_Instantiation
1916 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1917 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1918 or else NT
(N
).Nkind
= N_Requeue_Statement
);
1920 end Is_Elaboration_Checks_OK_Node
;
1922 function Is_Elaboration_Code
1923 (N
: Node_Id
) return Boolean is
1925 pragma Assert
(False
1926 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1928 end Is_Elaboration_Code
;
1930 function Is_Elaboration_Warnings_OK_Node
1931 (N
: Node_Id
) return Boolean is
1933 pragma Assert
(False
1934 or else NT
(N
).Nkind
= N_Call_Marker
1935 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1936 or else NT
(N
).Nkind
= N_Function_Call
1937 or else NT
(N
).Nkind
= N_Function_Instantiation
1938 or else NT
(N
).Nkind
= N_Package_Instantiation
1939 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1940 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1941 or else NT
(N
).Nkind
= N_Requeue_Statement
);
1943 end Is_Elaboration_Warnings_OK_Node
;
1946 (N
: Node_Id
) return Boolean is
1948 pragma Assert
(False
1949 or else NT
(N
).Nkind
= N_If_Expression
);
1953 function Is_Entry_Barrier_Function
1954 (N
: Node_Id
) return Boolean is
1956 pragma Assert
(False
1957 or else NT
(N
).Nkind
= N_Subprogram_Body
1958 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1960 end Is_Entry_Barrier_Function
;
1962 function Is_Expanded_Build_In_Place_Call
1963 (N
: Node_Id
) return Boolean is
1965 pragma Assert
(False
1966 or else NT
(N
).Nkind
= N_Function_Call
);
1968 end Is_Expanded_Build_In_Place_Call
;
1970 function Is_Expanded_Contract
1971 (N
: Node_Id
) return Boolean is
1973 pragma Assert
(False
1974 or else NT
(N
).Nkind
= N_Contract
);
1976 end Is_Expanded_Contract
;
1978 function Is_Finalization_Wrapper
1979 (N
: Node_Id
) return Boolean is
1981 pragma Assert
(False
1982 or else NT
(N
).Nkind
= N_Block_Statement
);
1984 end Is_Finalization_Wrapper
;
1986 function Is_Folded_In_Parser
1987 (N
: Node_Id
) return Boolean is
1989 pragma Assert
(False
1990 or else NT
(N
).Nkind
= N_String_Literal
);
1992 end Is_Folded_In_Parser
;
1994 function Is_Generic_Contract_Pragma
1995 (N
: Node_Id
) return Boolean is
1997 pragma Assert
(False
1998 or else NT
(N
).Nkind
= N_Pragma
);
2000 end Is_Generic_Contract_Pragma
;
2003 (N
: Node_Id
) return Boolean is
2005 pragma Assert
(False
2006 or else NT
(N
).Nkind
= N_Aspect_Specification
2007 or else NT
(N
).Nkind
= N_Pragma
);
2011 function Is_Ignored_Ghost_Pragma
2012 (N
: Node_Id
) return Boolean is
2014 pragma Assert
(False
2015 or else NT
(N
).Nkind
= N_Pragma
);
2017 end Is_Ignored_Ghost_Pragma
;
2019 function Is_In_Discriminant_Check
2020 (N
: Node_Id
) return Boolean is
2022 pragma Assert
(False
2023 or else NT
(N
).Nkind
= N_Selected_Component
);
2025 end Is_In_Discriminant_Check
;
2027 function Is_Inherited_Pragma
2028 (N
: Node_Id
) return Boolean is
2030 pragma Assert
(False
2031 or else NT
(N
).Nkind
= N_Pragma
);
2033 end Is_Inherited_Pragma
;
2035 function Is_Initialization_Block
2036 (N
: Node_Id
) return Boolean is
2038 pragma Assert
(False
2039 or else NT
(N
).Nkind
= N_Block_Statement
);
2041 end Is_Initialization_Block
;
2043 function Is_Known_Guaranteed_ABE
2044 (N
: Node_Id
) return Boolean is
2046 pragma Assert
(False
2047 or else NT
(N
).Nkind
= N_Call_Marker
2048 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2049 or else NT
(N
).Nkind
= N_Function_Call
2050 or else NT
(N
).Nkind
= N_Function_Instantiation
2051 or else NT
(N
).Nkind
= N_Package_Instantiation
2052 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2053 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2055 end Is_Known_Guaranteed_ABE
;
2057 function Is_Machine_Number
2058 (N
: Node_Id
) return Boolean is
2060 pragma Assert
(False
2061 or else NT
(N
).Nkind
= N_Real_Literal
);
2063 end Is_Machine_Number
;
2065 function Is_Null_Loop
2066 (N
: Node_Id
) return Boolean is
2068 pragma Assert
(False
2069 or else NT
(N
).Nkind
= N_Loop_Statement
);
2073 function Is_Overloaded
2074 (N
: Node_Id
) return Boolean is
2076 pragma Assert
(False
2077 or else NT
(N
).Nkind
in N_Subexpr
);
2081 function Is_Power_Of_2_For_Shift
2082 (N
: Node_Id
) return Boolean is
2084 pragma Assert
(False
2085 or else NT
(N
).Nkind
= N_Op_Expon
);
2087 end Is_Power_Of_2_For_Shift
;
2089 function Is_Prefixed_Call
2090 (N
: Node_Id
) return Boolean is
2092 pragma Assert
(False
2093 or else NT
(N
).Nkind
= N_Selected_Component
);
2095 end Is_Prefixed_Call
;
2097 function Is_Protected_Subprogram_Body
2098 (N
: Node_Id
) return Boolean is
2100 pragma Assert
(False
2101 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2103 end Is_Protected_Subprogram_Body
;
2105 function Is_Qualified_Universal_Literal
2106 (N
: Node_Id
) return Boolean is
2108 pragma Assert
(False
2109 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2111 end Is_Qualified_Universal_Literal
;
2114 (N
: Node_Id
) return Boolean is
2116 pragma Assert
(False
2117 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2121 function Is_Source_Call
2122 (N
: Node_Id
) return Boolean is
2124 pragma Assert
(False
2125 or else NT
(N
).Nkind
= N_Call_Marker
);
2129 function Is_SPARK_Mode_On_Node
2130 (N
: Node_Id
) return Boolean is
2132 pragma Assert
(False
2133 or else NT
(N
).Nkind
= N_Assignment_Statement
2134 or else NT
(N
).Nkind
= N_Attribute_Reference
2135 or else NT
(N
).Nkind
= N_Call_Marker
2136 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2137 or else NT
(N
).Nkind
= N_Expanded_Name
2138 or else NT
(N
).Nkind
= N_Function_Call
2139 or else NT
(N
).Nkind
= N_Function_Instantiation
2140 or else NT
(N
).Nkind
= N_Identifier
2141 or else NT
(N
).Nkind
= N_Package_Instantiation
2142 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2143 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2144 or else NT
(N
).Nkind
= N_Requeue_Statement
);
2146 end Is_SPARK_Mode_On_Node
;
2148 function Is_Static_Coextension
2149 (N
: Node_Id
) return Boolean is
2151 pragma Assert
(False
2152 or else NT
(N
).Nkind
= N_Allocator
);
2154 end Is_Static_Coextension
;
2156 function Is_Static_Expression
2157 (N
: Node_Id
) return Boolean is
2159 pragma Assert
(False
2160 or else NT
(N
).Nkind
in N_Subexpr
);
2162 end Is_Static_Expression
;
2164 function Is_Subprogram_Descriptor
2165 (N
: Node_Id
) return Boolean is
2167 pragma Assert
(False
2168 or else NT
(N
).Nkind
= N_Object_Declaration
);
2170 end Is_Subprogram_Descriptor
;
2172 function Is_Task_Allocation_Block
2173 (N
: Node_Id
) return Boolean is
2175 pragma Assert
(False
2176 or else NT
(N
).Nkind
= N_Block_Statement
);
2178 end Is_Task_Allocation_Block
;
2180 function Is_Task_Body_Procedure
2181 (N
: Node_Id
) return Boolean is
2183 pragma Assert
(False
2184 or else NT
(N
).Nkind
= N_Subprogram_Body
2185 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2187 end Is_Task_Body_Procedure
;
2189 function Is_Task_Master
2190 (N
: Node_Id
) return Boolean is
2192 pragma Assert
(False
2193 or else NT
(N
).Nkind
= N_Block_Statement
2194 or else NT
(N
).Nkind
= N_Subprogram_Body
2195 or else NT
(N
).Nkind
= N_Task_Body
);
2200 (N
: Node_Id
) return Boolean is
2202 pragma Assert
(False
2203 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
2207 function Iteration_Scheme
2208 (N
: Node_Id
) return Node_Id
is
2210 pragma Assert
(False
2211 or else NT
(N
).Nkind
= N_Loop_Statement
);
2213 end Iteration_Scheme
;
2215 function Iterator_Specification
2216 (N
: Node_Id
) return Node_Id
is
2218 pragma Assert
(False
2219 or else NT
(N
).Nkind
= N_Iteration_Scheme
2220 or else NT
(N
).Nkind
= N_Quantified_Expression
2221 or else NT
(N
).Nkind
= N_Reduction_Expression
);
2223 end Iterator_Specification
;
2226 (N
: Node_Id
) return Node_Id
is
2228 pragma Assert
(False
2229 or else NT
(N
).Nkind
= N_Itype_Reference
);
2233 function Kill_Range_Check
2234 (N
: Node_Id
) return Boolean is
2236 pragma Assert
(False
2237 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2239 end Kill_Range_Check
;
2241 function Label_Construct
2242 (N
: Node_Id
) return Node_Id
is
2244 pragma Assert
(False
2245 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2247 end Label_Construct
;
2250 (N
: Node_Id
) return Node_Id
is
2252 pragma Assert
(False
2253 or else NT
(N
).Nkind
= N_Component_Clause
);
2258 (N
: Node_Id
) return Boolean is
2260 pragma Assert
(False
2261 or else NT
(N
).Nkind
= N_With_Clause
);
2266 (N
: Node_Id
) return Node_Id
is
2268 pragma Assert
(False
2269 or else NT
(N
).Nkind
= N_And_Then
2270 or else NT
(N
).Nkind
= N_In
2271 or else NT
(N
).Nkind
= N_Not_In
2272 or else NT
(N
).Nkind
= N_Or_Else
2273 or else NT
(N
).Nkind
in N_Binary_Op
);
2277 function Library_Unit
2278 (N
: Node_Id
) return Node_Id
is
2280 pragma Assert
(False
2281 or else NT
(N
).Nkind
= N_Compilation_Unit
2282 or else NT
(N
).Nkind
= N_Package_Body_Stub
2283 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2284 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2285 or else NT
(N
).Nkind
= N_Task_Body_Stub
2286 or else NT
(N
).Nkind
= N_With_Clause
);
2290 function Limited_View_Installed
2291 (N
: Node_Id
) return Boolean is
2293 pragma Assert
(False
2294 or else NT
(N
).Nkind
= N_Package_Specification
2295 or else NT
(N
).Nkind
= N_With_Clause
);
2297 end Limited_View_Installed
;
2299 function Limited_Present
2300 (N
: Node_Id
) return Boolean is
2302 pragma Assert
(False
2303 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2304 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2305 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2306 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2307 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2308 or else NT
(N
).Nkind
= N_Record_Definition
2309 or else NT
(N
).Nkind
= N_With_Clause
);
2311 end Limited_Present
;
2314 (N
: Node_Id
) return List_Id
is
2316 pragma Assert
(False
2317 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2321 function Local_Raise_Not_OK
2322 (N
: Node_Id
) return Boolean is
2324 pragma Assert
(False
2325 or else NT
(N
).Nkind
= N_Exception_Handler
);
2327 end Local_Raise_Not_OK
;
2329 function Local_Raise_Statements
2330 (N
: Node_Id
) return Elist_Id
is
2332 pragma Assert
(False
2333 or else NT
(N
).Nkind
= N_Exception_Handler
);
2335 end Local_Raise_Statements
;
2337 function Loop_Actions
2338 (N
: Node_Id
) return List_Id
is
2340 pragma Assert
(False
2341 or else NT
(N
).Nkind
= N_Component_Association
2342 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2346 function Loop_Parameter_Specification
2347 (N
: Node_Id
) return Node_Id
is
2349 pragma Assert
(False
2350 or else NT
(N
).Nkind
= N_Iteration_Scheme
2351 or else NT
(N
).Nkind
= N_Quantified_Expression
2352 or else NT
(N
).Nkind
= N_Reduction_Expression
);
2354 end Loop_Parameter_Specification
;
2357 (N
: Node_Id
) return Node_Id
is
2359 pragma Assert
(False
2360 or else NT
(N
).Nkind
= N_Range
2361 or else NT
(N
).Nkind
= N_Real_Range_Specification
2362 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2367 (N
: Node_Id
) return Node_Id
is
2369 pragma Assert
(False
2370 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2375 (N
: Node_Id
) return Boolean is
2377 pragma Assert
(False
2378 or else NT
(N
).Nkind
= N_Component_Declaration
2379 or else NT
(N
).Nkind
= N_Discriminant_Specification
2380 or else NT
(N
).Nkind
= N_Exception_Declaration
2381 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2382 or else NT
(N
).Nkind
= N_Number_Declaration
2383 or else NT
(N
).Nkind
= N_Object_Declaration
2384 or else NT
(N
).Nkind
= N_Parameter_Specification
2385 or else NT
(N
).Nkind
= N_Use_Package_Clause
2386 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2390 function Must_Be_Byte_Aligned
2391 (N
: Node_Id
) return Boolean is
2393 pragma Assert
(False
2394 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2396 end Must_Be_Byte_Aligned
;
2398 function Must_Not_Freeze
2399 (N
: Node_Id
) return Boolean is
2401 pragma Assert
(False
2402 or else NT
(N
).Nkind
= N_Subtype_Indication
2403 or else NT
(N
).Nkind
in N_Subexpr
);
2405 end Must_Not_Freeze
;
2407 function Must_Not_Override
2408 (N
: Node_Id
) return Boolean is
2410 pragma Assert
(False
2411 or else NT
(N
).Nkind
= N_Entry_Declaration
2412 or else NT
(N
).Nkind
= N_Function_Instantiation
2413 or else NT
(N
).Nkind
= N_Function_Specification
2414 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2415 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2417 end Must_Not_Override
;
2419 function Must_Override
2420 (N
: Node_Id
) return Boolean is
2422 pragma Assert
(False
2423 or else NT
(N
).Nkind
= N_Entry_Declaration
2424 or else NT
(N
).Nkind
= N_Function_Instantiation
2425 or else NT
(N
).Nkind
= N_Function_Specification
2426 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2427 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2432 (N
: Node_Id
) return Node_Id
is
2434 pragma Assert
(False
2435 or else NT
(N
).Nkind
= N_Assignment_Statement
2436 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2437 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2438 or else NT
(N
).Nkind
= N_Designator
2439 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2440 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2441 or else NT
(N
).Nkind
= N_Exit_Statement
2442 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2443 or else NT
(N
).Nkind
= N_Function_Call
2444 or else NT
(N
).Nkind
= N_Function_Instantiation
2445 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2446 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2447 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2448 or else NT
(N
).Nkind
= N_Goto_Statement
2449 or else NT
(N
).Nkind
= N_Iterator_Specification
2450 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2451 or else NT
(N
).Nkind
= N_Package_Instantiation
2452 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2453 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2454 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2455 or else NT
(N
).Nkind
= N_Raise_Expression
2456 or else NT
(N
).Nkind
= N_Raise_Statement
2457 or else NT
(N
).Nkind
= N_Requeue_Statement
2458 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2459 or else NT
(N
).Nkind
= N_Subunit
2460 or else NT
(N
).Nkind
= N_Use_Package_Clause
2461 or else NT
(N
).Nkind
= N_Variant_Part
2462 or else NT
(N
).Nkind
= N_With_Clause
);
2467 (N
: Node_Id
) return List_Id
is
2469 pragma Assert
(False
2470 or else NT
(N
).Nkind
= N_Abort_Statement
);
2474 function Next_Entity
2475 (N
: Node_Id
) return Node_Id
is
2477 pragma Assert
(False
2478 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2479 or else NT
(N
).Nkind
= N_Defining_Identifier
2480 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2484 function Next_Exit_Statement
2485 (N
: Node_Id
) return Node_Id
is
2487 pragma Assert
(False
2488 or else NT
(N
).Nkind
= N_Exit_Statement
);
2490 end Next_Exit_Statement
;
2492 function Next_Implicit_With
2493 (N
: Node_Id
) return Node_Id
is
2495 pragma Assert
(False
2496 or else NT
(N
).Nkind
= N_With_Clause
);
2498 end Next_Implicit_With
;
2500 function Next_Named_Actual
2501 (N
: Node_Id
) return Node_Id
is
2503 pragma Assert
(False
2504 or else NT
(N
).Nkind
= N_Parameter_Association
);
2506 end Next_Named_Actual
;
2508 function Next_Pragma
2509 (N
: Node_Id
) return Node_Id
is
2511 pragma Assert
(False
2512 or else NT
(N
).Nkind
= N_Pragma
);
2516 function Next_Rep_Item
2517 (N
: Node_Id
) return Node_Id
is
2519 pragma Assert
(False
2520 or else NT
(N
).Nkind
= N_Aspect_Specification
2521 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2522 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2523 or else NT
(N
).Nkind
= N_Pragma
2524 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2528 function Next_Use_Clause
2529 (N
: Node_Id
) return Node_Id
is
2531 pragma Assert
(False
2532 or else NT
(N
).Nkind
= N_Use_Package_Clause
2533 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2535 end Next_Use_Clause
;
2537 function No_Ctrl_Actions
2538 (N
: Node_Id
) return Boolean is
2540 pragma Assert
(False
2541 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2543 end No_Ctrl_Actions
;
2545 function No_Elaboration_Check
2546 (N
: Node_Id
) return Boolean is
2548 pragma Assert
(False
2549 or else NT
(N
).Nkind
= N_Function_Call
2550 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2552 end No_Elaboration_Check
;
2554 function No_Entities_Ref_In_Spec
2555 (N
: Node_Id
) return Boolean is
2557 pragma Assert
(False
2558 or else NT
(N
).Nkind
= N_With_Clause
);
2560 end No_Entities_Ref_In_Spec
;
2562 function No_Initialization
2563 (N
: Node_Id
) return Boolean is
2565 pragma Assert
(False
2566 or else NT
(N
).Nkind
= N_Allocator
2567 or else NT
(N
).Nkind
= N_Object_Declaration
);
2569 end No_Initialization
;
2571 function No_Minimize_Eliminate
2572 (N
: Node_Id
) return Boolean is
2574 pragma Assert
(False
2575 or else NT
(N
).Nkind
= N_In
2576 or else NT
(N
).Nkind
= N_Not_In
);
2578 end No_Minimize_Eliminate
;
2580 function No_Side_Effect_Removal
2581 (N
: Node_Id
) return Boolean is
2583 pragma Assert
(False
2584 or else NT
(N
).Nkind
= N_Function_Call
);
2586 end No_Side_Effect_Removal
;
2588 function No_Truncation
2589 (N
: Node_Id
) return Boolean is
2591 pragma Assert
(False
2592 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2596 function Null_Excluding_Subtype
2597 (N
: Node_Id
) return Boolean is
2599 pragma Assert
(False
2600 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2602 end Null_Excluding_Subtype
;
2604 function Null_Exclusion_Present
2605 (N
: Node_Id
) return Boolean is
2607 pragma Assert
(False
2608 or else NT
(N
).Nkind
= N_Access_Definition
2609 or else NT
(N
).Nkind
= N_Access_Function_Definition
2610 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2611 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2612 or else NT
(N
).Nkind
= N_Allocator
2613 or else NT
(N
).Nkind
= N_Component_Definition
2614 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2615 or else NT
(N
).Nkind
= N_Discriminant_Specification
2616 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2617 or else NT
(N
).Nkind
= N_Function_Specification
2618 or else NT
(N
).Nkind
= N_Object_Declaration
2619 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2620 or else NT
(N
).Nkind
= N_Parameter_Specification
2621 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2623 end Null_Exclusion_Present
;
2625 function Null_Exclusion_In_Return_Present
2626 (N
: Node_Id
) return Boolean is
2628 pragma Assert
(False
2629 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2631 end Null_Exclusion_In_Return_Present
;
2633 function Null_Present
2634 (N
: Node_Id
) return Boolean is
2636 pragma Assert
(False
2637 or else NT
(N
).Nkind
= N_Component_List
2638 or else NT
(N
).Nkind
= N_Procedure_Specification
2639 or else NT
(N
).Nkind
= N_Record_Definition
);
2643 function Null_Record_Present
2644 (N
: Node_Id
) return Boolean is
2646 pragma Assert
(False
2647 or else NT
(N
).Nkind
= N_Aggregate
2648 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2650 end Null_Record_Present
;
2652 function Null_Statement
2653 (N
: Node_Id
) return Node_Id
is
2655 pragma Assert
(False
2656 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2660 function Object_Definition
2661 (N
: Node_Id
) return Node_Id
is
2663 pragma Assert
(False
2664 or else NT
(N
).Nkind
= N_Object_Declaration
);
2666 end Object_Definition
;
2669 (N
: Node_Id
) return Boolean is
2671 pragma Assert
(False
2672 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2676 function Original_Discriminant
2677 (N
: Node_Id
) return Node_Id
is
2679 pragma Assert
(False
2680 or else NT
(N
).Nkind
= N_Identifier
);
2682 end Original_Discriminant
;
2684 function Original_Entity
2685 (N
: Node_Id
) return Entity_Id
is
2687 pragma Assert
(False
2688 or else NT
(N
).Nkind
= N_Integer_Literal
2689 or else NT
(N
).Nkind
= N_Real_Literal
);
2691 end Original_Entity
;
2693 function Others_Discrete_Choices
2694 (N
: Node_Id
) return List_Id
is
2696 pragma Assert
(False
2697 or else NT
(N
).Nkind
= N_Others_Choice
);
2699 end Others_Discrete_Choices
;
2701 function Out_Present
2702 (N
: Node_Id
) return Boolean is
2704 pragma Assert
(False
2705 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2706 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2710 function Parameter_Associations
2711 (N
: Node_Id
) return List_Id
is
2713 pragma Assert
(False
2714 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2715 or else NT
(N
).Nkind
= N_Function_Call
2716 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2718 end Parameter_Associations
;
2720 function Parameter_Specifications
2721 (N
: Node_Id
) return List_Id
is
2723 pragma Assert
(False
2724 or else NT
(N
).Nkind
= N_Accept_Statement
2725 or else NT
(N
).Nkind
= N_Access_Function_Definition
2726 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2727 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2728 or else NT
(N
).Nkind
= N_Entry_Declaration
2729 or else NT
(N
).Nkind
= N_Function_Specification
2730 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2732 end Parameter_Specifications
;
2734 function Parameter_Type
2735 (N
: Node_Id
) return Node_Id
is
2737 pragma Assert
(False
2738 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2742 function Parent_Spec
2743 (N
: Node_Id
) return Node_Id
is
2745 pragma Assert
(False
2746 or else NT
(N
).Nkind
= N_Function_Instantiation
2747 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2748 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2749 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2750 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2751 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2752 or else NT
(N
).Nkind
= N_Package_Declaration
2753 or else NT
(N
).Nkind
= N_Package_Instantiation
2754 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2755 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2756 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2757 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2761 function Parent_With
2762 (N
: Node_Id
) return Boolean is
2764 pragma Assert
(False
2765 or else NT
(N
).Nkind
= N_With_Clause
);
2770 (N
: Node_Id
) return Node_Id
is
2772 pragma Assert
(False
2773 or else NT
(N
).Nkind
= N_Component_Clause
);
2777 function Pragma_Argument_Associations
2778 (N
: Node_Id
) return List_Id
is
2780 pragma Assert
(False
2781 or else NT
(N
).Nkind
= N_Pragma
);
2783 end Pragma_Argument_Associations
;
2785 function Pragma_Identifier
2786 (N
: Node_Id
) return Node_Id
is
2788 pragma Assert
(False
2789 or else NT
(N
).Nkind
= N_Pragma
);
2791 end Pragma_Identifier
;
2793 function Pragmas_After
2794 (N
: Node_Id
) return List_Id
is
2796 pragma Assert
(False
2797 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2798 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2802 function Pragmas_Before
2803 (N
: Node_Id
) return List_Id
is
2805 pragma Assert
(False
2806 or else NT
(N
).Nkind
= N_Accept_Alternative
2807 or else NT
(N
).Nkind
= N_Delay_Alternative
2808 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2809 or else NT
(N
).Nkind
= N_Mod_Clause
2810 or else NT
(N
).Nkind
= N_Terminate_Alternative
2811 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2815 function Pre_Post_Conditions
2816 (N
: Node_Id
) return Node_Id
is
2818 pragma Assert
(False
2819 or else NT
(N
).Nkind
= N_Contract
);
2821 end Pre_Post_Conditions
;
2824 (N
: Node_Id
) return Node_Id
is
2826 pragma Assert
(False
2827 or else NT
(N
).Nkind
= N_Attribute_Reference
2828 or else NT
(N
).Nkind
= N_Expanded_Name
2829 or else NT
(N
).Nkind
= N_Explicit_Dereference
2830 or else NT
(N
).Nkind
= N_Indexed_Component
2831 or else NT
(N
).Nkind
= N_Reference
2832 or else NT
(N
).Nkind
= N_Selected_Component
2833 or else NT
(N
).Nkind
= N_Slice
);
2837 function Premature_Use
2838 (N
: Node_Id
) return Node_Id
is
2840 pragma Assert
(False
2841 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2845 function Present_Expr
2846 (N
: Node_Id
) return Uint
is
2848 pragma Assert
(False
2849 or else NT
(N
).Nkind
= N_Variant
);
2854 (N
: Node_Id
) return Boolean is
2856 pragma Assert
(False
2857 or else NT
(N
).Nkind
= N_Component_Declaration
2858 or else NT
(N
).Nkind
= N_Discriminant_Specification
2859 or else NT
(N
).Nkind
= N_Exception_Declaration
2860 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2861 or else NT
(N
).Nkind
= N_Number_Declaration
2862 or else NT
(N
).Nkind
= N_Object_Declaration
2863 or else NT
(N
).Nkind
= N_Parameter_Specification
2864 or else NT
(N
).Nkind
= N_Use_Package_Clause
2865 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2869 function Prev_Use_Clause
2870 (N
: Node_Id
) return Node_Id
is
2872 pragma Assert
(False
2873 or else NT
(N
).Nkind
= N_Use_Package_Clause
2874 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2876 end Prev_Use_Clause
;
2878 function Print_In_Hex
2879 (N
: Node_Id
) return Boolean is
2881 pragma Assert
(False
2882 or else NT
(N
).Nkind
= N_Integer_Literal
);
2886 function Private_Declarations
2887 (N
: Node_Id
) return List_Id
is
2889 pragma Assert
(False
2890 or else NT
(N
).Nkind
= N_Package_Specification
2891 or else NT
(N
).Nkind
= N_Protected_Definition
2892 or else NT
(N
).Nkind
= N_Task_Definition
);
2894 end Private_Declarations
;
2896 function Private_Present
2897 (N
: Node_Id
) return Boolean is
2899 pragma Assert
(False
2900 or else NT
(N
).Nkind
= N_Compilation_Unit
2901 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2902 or else NT
(N
).Nkind
= N_With_Clause
);
2904 end Private_Present
;
2906 function Procedure_To_Call
2907 (N
: Node_Id
) return Node_Id
is
2909 pragma Assert
(False
2910 or else NT
(N
).Nkind
= N_Allocator
2911 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2912 or else NT
(N
).Nkind
= N_Free_Statement
2913 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2915 end Procedure_To_Call
;
2917 function Proper_Body
2918 (N
: Node_Id
) return Node_Id
is
2920 pragma Assert
(False
2921 or else NT
(N
).Nkind
= N_Subunit
);
2925 function Protected_Definition
2926 (N
: Node_Id
) return Node_Id
is
2928 pragma Assert
(False
2929 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2930 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2932 end Protected_Definition
;
2934 function Protected_Present
2935 (N
: Node_Id
) return Boolean is
2937 pragma Assert
(False
2938 or else NT
(N
).Nkind
= N_Access_Function_Definition
2939 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2940 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2941 or else NT
(N
).Nkind
= N_Record_Definition
);
2943 end Protected_Present
;
2945 function Raises_Constraint_Error
2946 (N
: Node_Id
) return Boolean is
2948 pragma Assert
(False
2949 or else NT
(N
).Nkind
in N_Subexpr
);
2951 end Raises_Constraint_Error
;
2953 function Range_Constraint
2954 (N
: Node_Id
) return Node_Id
is
2956 pragma Assert
(False
2957 or else NT
(N
).Nkind
= N_Delta_Constraint
2958 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2960 end Range_Constraint
;
2962 function Range_Expression
2963 (N
: Node_Id
) return Node_Id
is
2965 pragma Assert
(False
2966 or else NT
(N
).Nkind
= N_Range_Constraint
);
2968 end Range_Expression
;
2970 function Real_Range_Specification
2971 (N
: Node_Id
) return Node_Id
is
2973 pragma Assert
(False
2974 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2975 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2976 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2978 end Real_Range_Specification
;
2981 (N
: Node_Id
) return Ureal
is
2983 pragma Assert
(False
2984 or else NT
(N
).Nkind
= N_Real_Literal
);
2989 (N
: Node_Id
) return Uint
is
2991 pragma Assert
(False
2992 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2993 or else NT
(N
).Nkind
= N_Raise_Program_Error
2994 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2998 function Record_Extension_Part
2999 (N
: Node_Id
) return Node_Id
is
3001 pragma Assert
(False
3002 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
3004 end Record_Extension_Part
;
3006 function Redundant_Use
3007 (N
: Node_Id
) return Boolean is
3009 pragma Assert
(False
3010 or else NT
(N
).Nkind
= N_Attribute_Reference
3011 or else NT
(N
).Nkind
= N_Expanded_Name
3012 or else NT
(N
).Nkind
= N_Identifier
);
3016 function Renaming_Exception
3017 (N
: Node_Id
) return Node_Id
is
3019 pragma Assert
(False
3020 or else NT
(N
).Nkind
= N_Exception_Declaration
);
3022 end Renaming_Exception
;
3024 function Result_Definition
3025 (N
: Node_Id
) return Node_Id
is
3027 pragma Assert
(False
3028 or else NT
(N
).Nkind
= N_Access_Function_Definition
3029 or else NT
(N
).Nkind
= N_Function_Specification
);
3031 end Result_Definition
;
3033 function Return_Object_Declarations
3034 (N
: Node_Id
) return List_Id
is
3036 pragma Assert
(False
3037 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
3039 end Return_Object_Declarations
;
3041 function Return_Statement_Entity
3042 (N
: Node_Id
) return Node_Id
is
3044 pragma Assert
(False
3045 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3046 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3048 end Return_Statement_Entity
;
3050 function Reverse_Present
3051 (N
: Node_Id
) return Boolean is
3053 pragma Assert
(False
3054 or else NT
(N
).Nkind
= N_Iterator_Specification
3055 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3057 end Reverse_Present
;
3060 (N
: Node_Id
) return Node_Id
is
3062 pragma Assert
(False
3063 or else NT
(N
).Nkind
in N_Op
3064 or else NT
(N
).Nkind
= N_And_Then
3065 or else NT
(N
).Nkind
= N_In
3066 or else NT
(N
).Nkind
= N_Not_In
3067 or else NT
(N
).Nkind
= N_Or_Else
);
3071 function Rounded_Result
3072 (N
: Node_Id
) return Boolean is
3074 pragma Assert
(False
3075 or else NT
(N
).Nkind
= N_Op_Divide
3076 or else NT
(N
).Nkind
= N_Op_Multiply
3077 or else NT
(N
).Nkind
= N_Type_Conversion
);
3081 function SCIL_Controlling_Tag
3082 (N
: Node_Id
) return Node_Id
is
3084 pragma Assert
(False
3085 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3087 end SCIL_Controlling_Tag
;
3089 function SCIL_Entity
3090 (N
: Node_Id
) return Node_Id
is
3092 pragma Assert
(False
3093 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3094 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3095 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3099 function SCIL_Tag_Value
3100 (N
: Node_Id
) return Node_Id
is
3102 pragma Assert
(False
3103 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3107 function SCIL_Target_Prim
3108 (N
: Node_Id
) return Node_Id
is
3110 pragma Assert
(False
3111 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3113 end SCIL_Target_Prim
;
3116 (N
: Node_Id
) return Node_Id
is
3118 pragma Assert
(False
3119 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3120 or else NT
(N
).Nkind
= N_Defining_Identifier
3121 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3125 function Select_Alternatives
3126 (N
: Node_Id
) return List_Id
is
3128 pragma Assert
(False
3129 or else NT
(N
).Nkind
= N_Selective_Accept
);
3131 end Select_Alternatives
;
3133 function Selector_Name
3134 (N
: Node_Id
) return Node_Id
is
3136 pragma Assert
(False
3137 or else NT
(N
).Nkind
= N_Expanded_Name
3138 or else NT
(N
).Nkind
= N_Generic_Association
3139 or else NT
(N
).Nkind
= N_Parameter_Association
3140 or else NT
(N
).Nkind
= N_Selected_Component
);
3144 function Selector_Names
3145 (N
: Node_Id
) return List_Id
is
3147 pragma Assert
(False
3148 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3152 function Shift_Count_OK
3153 (N
: Node_Id
) return Boolean is
3155 pragma Assert
(False
3156 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3157 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3158 or else NT
(N
).Nkind
= N_Op_Shift_Left
3159 or else NT
(N
).Nkind
= N_Op_Shift_Right
3160 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3164 function Source_Type
3165 (N
: Node_Id
) return Entity_Id
is
3167 pragma Assert
(False
3168 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3172 function Specification
3173 (N
: Node_Id
) return Node_Id
is
3175 pragma Assert
(False
3176 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3177 or else NT
(N
).Nkind
= N_Expression_Function
3178 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3179 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3180 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3181 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3182 or else NT
(N
).Nkind
= N_Package_Declaration
3183 or else NT
(N
).Nkind
= N_Subprogram_Body
3184 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3185 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3186 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3191 (N
: Node_Id
) return Boolean is
3193 pragma Assert
(False
3194 or else NT
(N
).Nkind
= N_Aspect_Specification
3195 or else NT
(N
).Nkind
= N_Pragma
);
3200 (N
: Node_Id
) return List_Id
is
3202 pragma Assert
(False
3203 or else NT
(N
).Nkind
= N_Abortable_Part
3204 or else NT
(N
).Nkind
= N_Accept_Alternative
3205 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3206 or else NT
(N
).Nkind
= N_Delay_Alternative
3207 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3208 or else NT
(N
).Nkind
= N_Exception_Handler
3209 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3210 or else NT
(N
).Nkind
= N_Loop_Statement
3211 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3215 function Storage_Pool
3216 (N
: Node_Id
) return Node_Id
is
3218 pragma Assert
(False
3219 or else NT
(N
).Nkind
= N_Allocator
3220 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3221 or else NT
(N
).Nkind
= N_Free_Statement
3222 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3226 function Subpool_Handle_Name
3227 (N
: Node_Id
) return Node_Id
is
3229 pragma Assert
(False
3230 or else NT
(N
).Nkind
= N_Allocator
);
3232 end Subpool_Handle_Name
;
3235 (N
: Node_Id
) return String_Id
is
3237 pragma Assert
(False
3238 or else NT
(N
).Nkind
= N_Operator_Symbol
3239 or else NT
(N
).Nkind
= N_String_Literal
);
3243 function Subtype_Indication
3244 (N
: Node_Id
) return Node_Id
is
3246 pragma Assert
(False
3247 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3248 or else NT
(N
).Nkind
= N_Component_Definition
3249 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3250 or else NT
(N
).Nkind
= N_Iterator_Specification
3251 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3252 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3254 end Subtype_Indication
;
3256 function Suppress_Assignment_Checks
3257 (N
: Node_Id
) return Boolean is
3259 pragma Assert
(False
3260 or else NT
(N
).Nkind
= N_Assignment_Statement
3261 or else NT
(N
).Nkind
= N_Object_Declaration
);
3263 end Suppress_Assignment_Checks
;
3265 function Suppress_Loop_Warnings
3266 (N
: Node_Id
) return Boolean is
3268 pragma Assert
(False
3269 or else NT
(N
).Nkind
= N_Loop_Statement
);
3271 end Suppress_Loop_Warnings
;
3273 function Subtype_Mark
3274 (N
: Node_Id
) return Node_Id
is
3276 pragma Assert
(False
3277 or else NT
(N
).Nkind
= N_Access_Definition
3278 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3279 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3280 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3281 or else NT
(N
).Nkind
= N_Qualified_Expression
3282 or else NT
(N
).Nkind
= N_Subtype_Indication
3283 or else NT
(N
).Nkind
= N_Type_Conversion
3284 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3285 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3289 function Subtype_Marks
3290 (N
: Node_Id
) return List_Id
is
3292 pragma Assert
(False
3293 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3297 function Synchronized_Present
3298 (N
: Node_Id
) return Boolean is
3300 pragma Assert
(False
3301 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3302 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3303 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3304 or else NT
(N
).Nkind
= N_Record_Definition
);
3306 end Synchronized_Present
;
3308 function Tagged_Present
3309 (N
: Node_Id
) return Boolean is
3311 pragma Assert
(False
3312 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3313 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3314 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3315 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3316 or else NT
(N
).Nkind
= N_Record_Definition
);
3321 (N
: Node_Id
) return Entity_Id
is
3323 pragma Assert
(False
3324 or else NT
(N
).Nkind
= N_Call_Marker
3325 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
3329 function Target_Type
3330 (N
: Node_Id
) return Entity_Id
is
3332 pragma Assert
(False
3333 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3337 function Task_Definition
3338 (N
: Node_Id
) return Node_Id
is
3340 pragma Assert
(False
3341 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3342 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3344 end Task_Definition
;
3346 function Task_Present
3347 (N
: Node_Id
) return Boolean is
3349 pragma Assert
(False
3350 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3351 or else NT
(N
).Nkind
= N_Record_Definition
);
3355 function Then_Actions
3356 (N
: Node_Id
) return List_Id
is
3358 pragma Assert
(False
3359 or else NT
(N
).Nkind
= N_If_Expression
);
3363 function Then_Statements
3364 (N
: Node_Id
) return List_Id
is
3366 pragma Assert
(False
3367 or else NT
(N
).Nkind
= N_Elsif_Part
3368 or else NT
(N
).Nkind
= N_If_Statement
);
3370 end Then_Statements
;
3372 function Treat_Fixed_As_Integer
3373 (N
: Node_Id
) return Boolean is
3375 pragma Assert
(False
3376 or else NT
(N
).Nkind
= N_Op_Divide
3377 or else NT
(N
).Nkind
= N_Op_Mod
3378 or else NT
(N
).Nkind
= N_Op_Multiply
3379 or else NT
(N
).Nkind
= N_Op_Rem
);
3381 end Treat_Fixed_As_Integer
;
3383 function Triggering_Alternative
3384 (N
: Node_Id
) return Node_Id
is
3386 pragma Assert
(False
3387 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3389 end Triggering_Alternative
;
3391 function Triggering_Statement
3392 (N
: Node_Id
) return Node_Id
is
3394 pragma Assert
(False
3395 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3397 end Triggering_Statement
;
3400 (N
: Node_Id
) return Elist_Id
is
3402 pragma Assert
(False
3403 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3407 function Type_Definition
3408 (N
: Node_Id
) return Node_Id
is
3410 pragma Assert
(False
3411 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3413 end Type_Definition
;
3415 function Uneval_Old_Accept
3416 (N
: Node_Id
) return Boolean is
3418 pragma Assert
(False
3419 or else NT
(N
).Nkind
= N_Pragma
);
3421 end Uneval_Old_Accept
;
3423 function Uneval_Old_Warn
3424 (N
: Node_Id
) return Boolean is
3426 pragma Assert
(False
3427 or else NT
(N
).Nkind
= N_Pragma
);
3429 end Uneval_Old_Warn
;
3432 (N
: Node_Id
) return Node_Id
is
3434 pragma Assert
(False
3435 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3439 function Unknown_Discriminants_Present
3440 (N
: Node_Id
) return Boolean is
3442 pragma Assert
(False
3443 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3444 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3445 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3446 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3448 end Unknown_Discriminants_Present
;
3450 function Unreferenced_In_Spec
3451 (N
: Node_Id
) return Boolean is
3453 pragma Assert
(False
3454 or else NT
(N
).Nkind
= N_With_Clause
);
3456 end Unreferenced_In_Spec
;
3458 function Variant_Part
3459 (N
: Node_Id
) return Node_Id
is
3461 pragma Assert
(False
3462 or else NT
(N
).Nkind
= N_Component_List
);
3467 (N
: Node_Id
) return List_Id
is
3469 pragma Assert
(False
3470 or else NT
(N
).Nkind
= N_Variant_Part
);
3474 function Visible_Declarations
3475 (N
: Node_Id
) return List_Id
is
3477 pragma Assert
(False
3478 or else NT
(N
).Nkind
= N_Package_Specification
3479 or else NT
(N
).Nkind
= N_Protected_Definition
3480 or else NT
(N
).Nkind
= N_Task_Definition
);
3482 end Visible_Declarations
;
3484 function Uninitialized_Variable
3485 (N
: Node_Id
) return Node_Id
is
3487 pragma Assert
(False
3488 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3489 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3491 end Uninitialized_Variable
;
3493 function Used_Operations
3494 (N
: Node_Id
) return Elist_Id
is
3496 pragma Assert
(False
3497 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3499 end Used_Operations
;
3501 function Was_Attribute_Reference
3502 (N
: Node_Id
) return Boolean is
3504 pragma Assert
(False
3505 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3507 end Was_Attribute_Reference
;
3509 function Was_Expression_Function
3510 (N
: Node_Id
) return Boolean is
3512 pragma Assert
(False
3513 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3515 end Was_Expression_Function
;
3517 function Was_Originally_Stub
3518 (N
: Node_Id
) return Boolean is
3520 pragma Assert
(False
3521 or else NT
(N
).Nkind
= N_Package_Body
3522 or else NT
(N
).Nkind
= N_Protected_Body
3523 or else NT
(N
).Nkind
= N_Subprogram_Body
3524 or else NT
(N
).Nkind
= N_Task_Body
);
3526 end Was_Originally_Stub
;
3528 function Withed_Body
3529 (N
: Node_Id
) return Node_Id
is
3531 pragma Assert
(False
3532 or else NT
(N
).Nkind
= N_With_Clause
);
3536 --------------------------
3537 -- Field Set Procedures --
3538 --------------------------
3540 procedure Set_Abort_Present
3541 (N
: Node_Id
; Val
: Boolean := True) is
3543 pragma Assert
(False
3544 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3545 Set_Flag15
(N
, Val
);
3546 end Set_Abort_Present
;
3548 procedure Set_Abortable_Part
3549 (N
: Node_Id
; Val
: Node_Id
) is
3551 pragma Assert
(False
3552 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3553 Set_Node2_With_Parent
(N
, Val
);
3554 end Set_Abortable_Part
;
3556 procedure Set_Abstract_Present
3557 (N
: Node_Id
; Val
: Boolean := True) is
3559 pragma Assert
(False
3560 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3561 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3562 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3563 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3564 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3565 or else NT
(N
).Nkind
= N_Record_Definition
);
3567 end Set_Abstract_Present
;
3569 procedure Set_Accept_Handler_Records
3570 (N
: Node_Id
; Val
: List_Id
) is
3572 pragma Assert
(False
3573 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3574 Set_List5
(N
, Val
); -- semantic field, no parent set
3575 end Set_Accept_Handler_Records
;
3577 procedure Set_Accept_Statement
3578 (N
: Node_Id
; Val
: Node_Id
) is
3580 pragma Assert
(False
3581 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3582 Set_Node2_With_Parent
(N
, Val
);
3583 end Set_Accept_Statement
;
3585 procedure Set_Access_Definition
3586 (N
: Node_Id
; Val
: Node_Id
) is
3588 pragma Assert
(False
3589 or else NT
(N
).Nkind
= N_Component_Definition
3590 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3591 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3592 Set_Node3_With_Parent
(N
, Val
);
3593 end Set_Access_Definition
;
3595 procedure Set_Access_To_Subprogram_Definition
3596 (N
: Node_Id
; Val
: Node_Id
) is
3598 pragma Assert
(False
3599 or else NT
(N
).Nkind
= N_Access_Definition
);
3600 Set_Node3_With_Parent
(N
, Val
);
3601 end Set_Access_To_Subprogram_Definition
;
3603 procedure Set_Access_Types_To_Process
3604 (N
: Node_Id
; Val
: Elist_Id
) is
3606 pragma Assert
(False
3607 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3608 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3609 end Set_Access_Types_To_Process
;
3611 procedure Set_Actions
3612 (N
: Node_Id
; Val
: List_Id
) is
3614 pragma Assert
(False
3615 or else NT
(N
).Nkind
= N_And_Then
3616 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3617 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3618 or else NT
(N
).Nkind
= N_Compound_Statement
3619 or else NT
(N
).Nkind
= N_Expression_With_Actions
3620 or else NT
(N
).Nkind
= N_Freeze_Entity
3621 or else NT
(N
).Nkind
= N_Or_Else
);
3622 Set_List1_With_Parent
(N
, Val
);
3625 procedure Set_Activation_Chain_Entity
3626 (N
: Node_Id
; Val
: Node_Id
) is
3628 pragma Assert
(False
3629 or else NT
(N
).Nkind
= N_Block_Statement
3630 or else NT
(N
).Nkind
= N_Entry_Body
3631 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3632 or else NT
(N
).Nkind
= N_Package_Declaration
3633 or else NT
(N
).Nkind
= N_Subprogram_Body
3634 or else NT
(N
).Nkind
= N_Task_Body
);
3635 Set_Node3
(N
, Val
); -- semantic field, no parent set
3636 end Set_Activation_Chain_Entity
;
3638 procedure Set_Acts_As_Spec
3639 (N
: Node_Id
; Val
: Boolean := True) is
3641 pragma Assert
(False
3642 or else NT
(N
).Nkind
= N_Compilation_Unit
3643 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3645 end Set_Acts_As_Spec
;
3647 procedure Set_Actual_Designated_Subtype
3648 (N
: Node_Id
; Val
: Node_Id
) is
3650 pragma Assert
(False
3651 or else NT
(N
).Nkind
= N_Explicit_Dereference
3652 or else NT
(N
).Nkind
= N_Free_Statement
);
3654 end Set_Actual_Designated_Subtype
;
3656 procedure Set_Address_Warning_Posted
3657 (N
: Node_Id
; Val
: Boolean := True) is
3659 pragma Assert
(False
3660 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3661 Set_Flag18
(N
, Val
);
3662 end Set_Address_Warning_Posted
;
3664 procedure Set_Aggregate_Bounds
3665 (N
: Node_Id
; Val
: Node_Id
) is
3667 pragma Assert
(False
3668 or else NT
(N
).Nkind
= N_Aggregate
);
3669 Set_Node3
(N
, Val
); -- semantic field, no parent set
3670 end Set_Aggregate_Bounds
;
3672 procedure Set_Aliased_Present
3673 (N
: Node_Id
; Val
: Boolean := True) is
3675 pragma Assert
(False
3676 or else NT
(N
).Nkind
= N_Component_Definition
3677 or else NT
(N
).Nkind
= N_Object_Declaration
3678 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3680 end Set_Aliased_Present
;
3682 procedure Set_Alloc_For_BIP_Return
3683 (N
: Node_Id
; Val
: Boolean := True) is
3685 pragma Assert
(False
3686 or else NT
(N
).Nkind
= N_Allocator
);
3688 end Set_Alloc_For_BIP_Return
;
3690 procedure Set_All_Others
3691 (N
: Node_Id
; Val
: Boolean := True) is
3693 pragma Assert
(False
3694 or else NT
(N
).Nkind
= N_Others_Choice
);
3695 Set_Flag11
(N
, Val
);
3698 procedure Set_All_Present
3699 (N
: Node_Id
; Val
: Boolean := True) is
3701 pragma Assert
(False
3702 or else NT
(N
).Nkind
= N_Access_Definition
3703 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3704 or else NT
(N
).Nkind
= N_Quantified_Expression
3705 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3706 Set_Flag15
(N
, Val
);
3707 end Set_All_Present
;
3709 procedure Set_Alternatives
3710 (N
: Node_Id
; Val
: List_Id
) is
3712 pragma Assert
(False
3713 or else NT
(N
).Nkind
= N_Case_Expression
3714 or else NT
(N
).Nkind
= N_Case_Statement
3715 or else NT
(N
).Nkind
= N_In
3716 or else NT
(N
).Nkind
= N_Not_In
);
3717 Set_List4_With_Parent
(N
, Val
);
3718 end Set_Alternatives
;
3720 procedure Set_Ancestor_Part
3721 (N
: Node_Id
; Val
: Node_Id
) is
3723 pragma Assert
(False
3724 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3725 Set_Node3_With_Parent
(N
, Val
);
3726 end Set_Ancestor_Part
;
3728 procedure Set_Atomic_Sync_Required
3729 (N
: Node_Id
; Val
: Boolean := True) is
3731 pragma Assert
(False
3732 or else NT
(N
).Nkind
= N_Expanded_Name
3733 or else NT
(N
).Nkind
= N_Explicit_Dereference
3734 or else NT
(N
).Nkind
= N_Identifier
3735 or else NT
(N
).Nkind
= N_Indexed_Component
3736 or else NT
(N
).Nkind
= N_Selected_Component
);
3737 Set_Flag14
(N
, Val
);
3738 end Set_Atomic_Sync_Required
;
3740 procedure Set_Array_Aggregate
3741 (N
: Node_Id
; Val
: Node_Id
) is
3743 pragma Assert
(False
3744 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3745 Set_Node3_With_Parent
(N
, Val
);
3746 end Set_Array_Aggregate
;
3748 procedure Set_Aspect_Rep_Item
3749 (N
: Node_Id
; Val
: Node_Id
) is
3751 pragma Assert
(False
3752 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3754 end Set_Aspect_Rep_Item
;
3756 procedure Set_Assignment_OK
3757 (N
: Node_Id
; Val
: Boolean := True) is
3759 pragma Assert
(False
3760 or else NT
(N
).Nkind
= N_Object_Declaration
3761 or else NT
(N
).Nkind
in N_Subexpr
);
3762 Set_Flag15
(N
, Val
);
3763 end Set_Assignment_OK
;
3765 procedure Set_Associated_Node
3766 (N
: Node_Id
; Val
: Node_Id
) is
3768 pragma Assert
(False
3769 or else NT
(N
).Nkind
in N_Has_Entity
3770 or else NT
(N
).Nkind
= N_Aggregate
3771 or else NT
(N
).Nkind
= N_Extension_Aggregate
3772 or else NT
(N
).Nkind
= N_Selected_Component
3773 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3774 Set_Node4
(N
, Val
); -- semantic field, no parent set
3775 end Set_Associated_Node
;
3777 procedure Set_At_End_Proc
3778 (N
: Node_Id
; Val
: Node_Id
) is
3780 pragma Assert
(False
3781 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3783 end Set_At_End_Proc
;
3785 procedure Set_Attribute_Name
3786 (N
: Node_Id
; Val
: Name_Id
) is
3788 pragma Assert
(False
3789 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3791 end Set_Attribute_Name
;
3793 procedure Set_Aux_Decls_Node
3794 (N
: Node_Id
; Val
: Node_Id
) is
3796 pragma Assert
(False
3797 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3798 Set_Node5_With_Parent
(N
, Val
);
3799 end Set_Aux_Decls_Node
;
3801 procedure Set_Backwards_OK
3802 (N
: Node_Id
; Val
: Boolean := True) is
3804 pragma Assert
(False
3805 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3807 end Set_Backwards_OK
;
3809 procedure Set_Bad_Is_Detected
3810 (N
: Node_Id
; Val
: Boolean := True) is
3812 pragma Assert
(False
3813 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3814 Set_Flag15
(N
, Val
);
3815 end Set_Bad_Is_Detected
;
3817 procedure Set_Body_Required
3818 (N
: Node_Id
; Val
: Boolean := True) is
3820 pragma Assert
(False
3821 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3822 Set_Flag13
(N
, Val
);
3823 end Set_Body_Required
;
3825 procedure Set_Body_To_Inline
3826 (N
: Node_Id
; Val
: Node_Id
) is
3828 pragma Assert
(False
3829 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3831 end Set_Body_To_Inline
;
3833 procedure Set_Box_Present
3834 (N
: Node_Id
; Val
: Boolean := True) is
3836 pragma Assert
(False
3837 or else NT
(N
).Nkind
= N_Component_Association
3838 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3839 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3840 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3841 or else NT
(N
).Nkind
= N_Generic_Association
3842 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3843 Set_Flag15
(N
, Val
);
3844 end Set_Box_Present
;
3846 procedure Set_By_Ref
3847 (N
: Node_Id
; Val
: Boolean := True) is
3849 pragma Assert
(False
3850 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3851 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3855 procedure Set_Char_Literal_Value
3856 (N
: Node_Id
; Val
: Uint
) is
3858 pragma Assert
(False
3859 or else NT
(N
).Nkind
= N_Character_Literal
);
3861 end Set_Char_Literal_Value
;
3864 (N
: Node_Id
; Val
: Name_Id
) is
3866 pragma Assert
(False
3867 or else NT
(N
).Nkind
in N_Has_Chars
);
3871 procedure Set_Check_Address_Alignment
3872 (N
: Node_Id
; Val
: Boolean := True) is
3874 pragma Assert
(False
3875 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3876 Set_Flag11
(N
, Val
);
3877 end Set_Check_Address_Alignment
;
3879 procedure Set_Choice_Parameter
3880 (N
: Node_Id
; Val
: Node_Id
) is
3882 pragma Assert
(False
3883 or else NT
(N
).Nkind
= N_Exception_Handler
);
3884 Set_Node2_With_Parent
(N
, Val
);
3885 end Set_Choice_Parameter
;
3887 procedure Set_Choices
3888 (N
: Node_Id
; Val
: List_Id
) is
3890 pragma Assert
(False
3891 or else NT
(N
).Nkind
= N_Component_Association
);
3892 Set_List1_With_Parent
(N
, Val
);
3895 procedure Set_Class_Present
3896 (N
: Node_Id
; Val
: Boolean := True) is
3898 pragma Assert
(False
3899 or else NT
(N
).Nkind
= N_Aspect_Specification
3900 or else NT
(N
).Nkind
= N_Pragma
);
3902 end Set_Class_Present
;
3904 procedure Set_Classifications
3905 (N
: Node_Id
; Val
: Node_Id
) is
3907 pragma Assert
(False
3908 or else NT
(N
).Nkind
= N_Contract
);
3909 Set_Node3
(N
, Val
); -- semantic field, no parent set
3910 end Set_Classifications
;
3912 procedure Set_Cleanup_Actions
3913 (N
: Node_Id
; Val
: List_Id
) is
3915 pragma Assert
(False
3916 or else NT
(N
).Nkind
= N_Block_Statement
);
3917 Set_List5
(N
, Val
); -- semantic field, no parent set
3918 end Set_Cleanup_Actions
;
3920 procedure Set_Comes_From_Extended_Return_Statement
3921 (N
: Node_Id
; Val
: Boolean := True) is
3923 pragma Assert
(False
3924 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3925 Set_Flag18
(N
, Val
);
3926 end Set_Comes_From_Extended_Return_Statement
;
3928 procedure Set_Compile_Time_Known_Aggregate
3929 (N
: Node_Id
; Val
: Boolean := True) is
3931 pragma Assert
(False
3932 or else NT
(N
).Nkind
= N_Aggregate
);
3933 Set_Flag18
(N
, Val
);
3934 end Set_Compile_Time_Known_Aggregate
;
3936 procedure Set_Component_Associations
3937 (N
: Node_Id
; Val
: List_Id
) is
3939 pragma Assert
(False
3940 or else NT
(N
).Nkind
= N_Aggregate
3941 or else NT
(N
).Nkind
= N_Delta_Aggregate
3942 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3943 Set_List2_With_Parent
(N
, Val
);
3944 end Set_Component_Associations
;
3946 procedure Set_Component_Clauses
3947 (N
: Node_Id
; Val
: List_Id
) is
3949 pragma Assert
(False
3950 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3951 Set_List3_With_Parent
(N
, Val
);
3952 end Set_Component_Clauses
;
3954 procedure Set_Component_Definition
3955 (N
: Node_Id
; Val
: Node_Id
) is
3957 pragma Assert
(False
3958 or else NT
(N
).Nkind
= N_Component_Declaration
3959 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3960 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3961 Set_Node4_With_Parent
(N
, Val
);
3962 end Set_Component_Definition
;
3964 procedure Set_Component_Items
3965 (N
: Node_Id
; Val
: List_Id
) is
3967 pragma Assert
(False
3968 or else NT
(N
).Nkind
= N_Component_List
);
3969 Set_List3_With_Parent
(N
, Val
);
3970 end Set_Component_Items
;
3972 procedure Set_Component_List
3973 (N
: Node_Id
; Val
: Node_Id
) is
3975 pragma Assert
(False
3976 or else NT
(N
).Nkind
= N_Record_Definition
3977 or else NT
(N
).Nkind
= N_Variant
);
3978 Set_Node1_With_Parent
(N
, Val
);
3979 end Set_Component_List
;
3981 procedure Set_Component_Name
3982 (N
: Node_Id
; Val
: Node_Id
) is
3984 pragma Assert
(False
3985 or else NT
(N
).Nkind
= N_Component_Clause
);
3986 Set_Node1_With_Parent
(N
, Val
);
3987 end Set_Component_Name
;
3989 procedure Set_Componentwise_Assignment
3990 (N
: Node_Id
; Val
: Boolean := True) is
3992 pragma Assert
(False
3993 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3994 Set_Flag14
(N
, Val
);
3995 end Set_Componentwise_Assignment
;
3997 procedure Set_Condition
3998 (N
: Node_Id
; Val
: Node_Id
) is
4000 pragma Assert
(False
4001 or else NT
(N
).Nkind
= N_Accept_Alternative
4002 or else NT
(N
).Nkind
= N_Delay_Alternative
4003 or else NT
(N
).Nkind
= N_Elsif_Part
4004 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
4005 or else NT
(N
).Nkind
= N_Exit_Statement
4006 or else NT
(N
).Nkind
= N_If_Statement
4007 or else NT
(N
).Nkind
= N_Iteration_Scheme
4008 or else NT
(N
).Nkind
= N_Quantified_Expression
4009 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
4010 or else NT
(N
).Nkind
= N_Raise_Program_Error
4011 or else NT
(N
).Nkind
= N_Raise_Storage_Error
4012 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
4013 Set_Node1_With_Parent
(N
, Val
);
4016 procedure Set_Condition_Actions
4017 (N
: Node_Id
; Val
: List_Id
) is
4019 pragma Assert
(False
4020 or else NT
(N
).Nkind
= N_Elsif_Part
4021 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
4022 Set_List3
(N
, Val
); -- semantic field, no parent set
4023 end Set_Condition_Actions
;
4025 procedure Set_Config_Pragmas
4026 (N
: Node_Id
; Val
: List_Id
) is
4028 pragma Assert
(False
4029 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4030 Set_List4_With_Parent
(N
, Val
);
4031 end Set_Config_Pragmas
;
4033 procedure Set_Constant_Present
4034 (N
: Node_Id
; Val
: Boolean := True) is
4036 pragma Assert
(False
4037 or else NT
(N
).Nkind
= N_Access_Definition
4038 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
4039 or else NT
(N
).Nkind
= N_Object_Declaration
);
4040 Set_Flag17
(N
, Val
);
4041 end Set_Constant_Present
;
4043 procedure Set_Constraint
4044 (N
: Node_Id
; Val
: Node_Id
) is
4046 pragma Assert
(False
4047 or else NT
(N
).Nkind
= N_Subtype_Indication
);
4048 Set_Node3_With_Parent
(N
, Val
);
4051 procedure Set_Constraints
4052 (N
: Node_Id
; Val
: List_Id
) is
4054 pragma Assert
(False
4055 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
4056 Set_List1_With_Parent
(N
, Val
);
4057 end Set_Constraints
;
4059 procedure Set_Context_Installed
4060 (N
: Node_Id
; Val
: Boolean := True) is
4062 pragma Assert
(False
4063 or else NT
(N
).Nkind
= N_With_Clause
);
4064 Set_Flag13
(N
, Val
);
4065 end Set_Context_Installed
;
4067 procedure Set_Context_Items
4068 (N
: Node_Id
; Val
: List_Id
) is
4070 pragma Assert
(False
4071 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4072 Set_List1_With_Parent
(N
, Val
);
4073 end Set_Context_Items
;
4075 procedure Set_Context_Pending
4076 (N
: Node_Id
; Val
: Boolean := True) is
4078 pragma Assert
(False
4079 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4080 Set_Flag16
(N
, Val
);
4081 end Set_Context_Pending
;
4083 procedure Set_Contract_Test_Cases
4084 (N
: Node_Id
; Val
: Node_Id
) is
4086 pragma Assert
(False
4087 or else NT
(N
).Nkind
= N_Contract
);
4088 Set_Node2
(N
, Val
); -- semantic field, no parent set
4089 end Set_Contract_Test_Cases
;
4091 procedure Set_Controlling_Argument
4092 (N
: Node_Id
; Val
: Node_Id
) is
4094 pragma Assert
(False
4095 or else NT
(N
).Nkind
= N_Function_Call
4096 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4097 Set_Node1
(N
, Val
); -- semantic field, no parent set
4098 end Set_Controlling_Argument
;
4100 procedure Set_Conversion_OK
4101 (N
: Node_Id
; Val
: Boolean := True) is
4103 pragma Assert
(False
4104 or else NT
(N
).Nkind
= N_Type_Conversion
);
4105 Set_Flag14
(N
, Val
);
4106 end Set_Conversion_OK
;
4108 procedure Set_Convert_To_Return_False
4109 (N
: Node_Id
; Val
: Boolean := True) is
4111 pragma Assert
(False
4112 or else NT
(N
).Nkind
= N_Raise_Expression
);
4113 Set_Flag13
(N
, Val
);
4114 end Set_Convert_To_Return_False
;
4116 procedure Set_Corresponding_Aspect
4117 (N
: Node_Id
; Val
: Node_Id
) is
4119 pragma Assert
(False
4120 or else NT
(N
).Nkind
= N_Pragma
);
4122 end Set_Corresponding_Aspect
;
4124 procedure Set_Corresponding_Body
4125 (N
: Node_Id
; Val
: Node_Id
) is
4127 pragma Assert
(False
4128 or else NT
(N
).Nkind
= N_Entry_Declaration
4129 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4130 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4131 or else NT
(N
).Nkind
= N_Package_Body_Stub
4132 or else NT
(N
).Nkind
= N_Package_Declaration
4133 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4134 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4135 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4136 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4137 or else NT
(N
).Nkind
= N_Task_Body_Stub
4138 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4139 Set_Node5
(N
, Val
); -- semantic field, no parent set
4140 end Set_Corresponding_Body
;
4142 procedure Set_Corresponding_Formal_Spec
4143 (N
: Node_Id
; Val
: Node_Id
) is
4145 pragma Assert
(False
4146 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4147 Set_Node3
(N
, Val
); -- semantic field, no parent set
4148 end Set_Corresponding_Formal_Spec
;
4150 procedure Set_Corresponding_Generic_Association
4151 (N
: Node_Id
; Val
: Node_Id
) is
4153 pragma Assert
(False
4154 or else NT
(N
).Nkind
= N_Object_Declaration
4155 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4156 Set_Node5
(N
, Val
); -- semantic field, no parent set
4157 end Set_Corresponding_Generic_Association
;
4159 procedure Set_Corresponding_Integer_Value
4160 (N
: Node_Id
; Val
: Uint
) is
4162 pragma Assert
(False
4163 or else NT
(N
).Nkind
= N_Real_Literal
);
4164 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4165 end Set_Corresponding_Integer_Value
;
4167 procedure Set_Corresponding_Spec
4168 (N
: Node_Id
; Val
: Entity_Id
) is
4170 pragma Assert
(False
4171 or else NT
(N
).Nkind
= N_Expression_Function
4172 or else NT
(N
).Nkind
= N_Package_Body
4173 or else NT
(N
).Nkind
= N_Protected_Body
4174 or else NT
(N
).Nkind
= N_Subprogram_Body
4175 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4176 or else NT
(N
).Nkind
= N_Task_Body
4177 or else NT
(N
).Nkind
= N_With_Clause
);
4178 Set_Node5
(N
, Val
); -- semantic field, no parent set
4179 end Set_Corresponding_Spec
;
4181 procedure Set_Corresponding_Spec_Of_Stub
4182 (N
: Node_Id
; Val
: Entity_Id
) is
4184 pragma Assert
(False
4185 or else NT
(N
).Nkind
= N_Package_Body_Stub
4186 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4187 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4188 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4189 Set_Node2
(N
, Val
); -- semantic field, no parent set
4190 end Set_Corresponding_Spec_Of_Stub
;
4192 procedure Set_Corresponding_Stub
4193 (N
: Node_Id
; Val
: Node_Id
) is
4195 pragma Assert
(False
4196 or else NT
(N
).Nkind
= N_Subunit
);
4198 end Set_Corresponding_Stub
;
4200 procedure Set_Dcheck_Function
4201 (N
: Node_Id
; Val
: Entity_Id
) is
4203 pragma Assert
(False
4204 or else NT
(N
).Nkind
= N_Variant
);
4205 Set_Node5
(N
, Val
); -- semantic field, no parent set
4206 end Set_Dcheck_Function
;
4208 procedure Set_Declarations
4209 (N
: Node_Id
; Val
: List_Id
) is
4211 pragma Assert
(False
4212 or else NT
(N
).Nkind
= N_Accept_Statement
4213 or else NT
(N
).Nkind
= N_Block_Statement
4214 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4215 or else NT
(N
).Nkind
= N_Entry_Body
4216 or else NT
(N
).Nkind
= N_Package_Body
4217 or else NT
(N
).Nkind
= N_Protected_Body
4218 or else NT
(N
).Nkind
= N_Subprogram_Body
4219 or else NT
(N
).Nkind
= N_Task_Body
);
4220 Set_List2_With_Parent
(N
, Val
);
4221 end Set_Declarations
;
4223 procedure Set_Default_Expression
4224 (N
: Node_Id
; Val
: Node_Id
) is
4226 pragma Assert
(False
4227 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4228 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4229 Set_Node5
(N
, Val
); -- semantic field, no parent set
4230 end Set_Default_Expression
;
4232 procedure Set_Default_Storage_Pool
4233 (N
: Node_Id
; Val
: Node_Id
) is
4235 pragma Assert
(False
4236 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4237 Set_Node3
(N
, Val
); -- semantic field, no parent set
4238 end Set_Default_Storage_Pool
;
4240 procedure Set_Default_Name
4241 (N
: Node_Id
; Val
: Node_Id
) is
4243 pragma Assert
(False
4244 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4245 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4246 Set_Node2_With_Parent
(N
, Val
);
4247 end Set_Default_Name
;
4249 procedure Set_Defining_Identifier
4250 (N
: Node_Id
; Val
: Entity_Id
) is
4252 pragma Assert
(False
4253 or else NT
(N
).Nkind
= N_Component_Declaration
4254 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4255 or else NT
(N
).Nkind
= N_Discriminant_Specification
4256 or else NT
(N
).Nkind
= N_Entry_Body
4257 or else NT
(N
).Nkind
= N_Entry_Declaration
4258 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4259 or else NT
(N
).Nkind
= N_Exception_Declaration
4260 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4261 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4262 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4263 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4264 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4265 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4266 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4267 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4268 or else NT
(N
).Nkind
= N_Iterator_Specification
4269 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4270 or else NT
(N
).Nkind
= N_Number_Declaration
4271 or else NT
(N
).Nkind
= N_Object_Declaration
4272 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4273 or else NT
(N
).Nkind
= N_Package_Body_Stub
4274 or else NT
(N
).Nkind
= N_Parameter_Specification
4275 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4276 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4277 or else NT
(N
).Nkind
= N_Protected_Body
4278 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4279 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4280 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4281 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4282 or else NT
(N
).Nkind
= N_Subtype_Declaration
4283 or else NT
(N
).Nkind
= N_Task_Body
4284 or else NT
(N
).Nkind
= N_Task_Body_Stub
4285 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4286 Set_Node1_With_Parent
(N
, Val
);
4287 end Set_Defining_Identifier
;
4289 procedure Set_Defining_Unit_Name
4290 (N
: Node_Id
; Val
: Node_Id
) is
4292 pragma Assert
(False
4293 or else NT
(N
).Nkind
= N_Function_Instantiation
4294 or else NT
(N
).Nkind
= N_Function_Specification
4295 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4296 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4297 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4298 or else NT
(N
).Nkind
= N_Package_Body
4299 or else NT
(N
).Nkind
= N_Package_Instantiation
4300 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4301 or else NT
(N
).Nkind
= N_Package_Specification
4302 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4303 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4304 Set_Node1_With_Parent
(N
, Val
);
4305 end Set_Defining_Unit_Name
;
4307 procedure Set_Delay_Alternative
4308 (N
: Node_Id
; Val
: Node_Id
) is
4310 pragma Assert
(False
4311 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4312 Set_Node4_With_Parent
(N
, Val
);
4313 end Set_Delay_Alternative
;
4315 procedure Set_Delay_Statement
4316 (N
: Node_Id
; Val
: Node_Id
) is
4318 pragma Assert
(False
4319 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4320 Set_Node2_With_Parent
(N
, Val
);
4321 end Set_Delay_Statement
;
4323 procedure Set_Delta_Expression
4324 (N
: Node_Id
; Val
: Node_Id
) is
4326 pragma Assert
(False
4327 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4328 or else NT
(N
).Nkind
= N_Delta_Constraint
4329 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4330 Set_Node3_With_Parent
(N
, Val
);
4331 end Set_Delta_Expression
;
4333 procedure Set_Digits_Expression
4334 (N
: Node_Id
; Val
: Node_Id
) is
4336 pragma Assert
(False
4337 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4338 or else NT
(N
).Nkind
= N_Digits_Constraint
4339 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4340 Set_Node2_With_Parent
(N
, Val
);
4341 end Set_Digits_Expression
;
4343 procedure Set_Discr_Check_Funcs_Built
4344 (N
: Node_Id
; Val
: Boolean := True) is
4346 pragma Assert
(False
4347 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4348 Set_Flag11
(N
, Val
);
4349 end Set_Discr_Check_Funcs_Built
;
4351 procedure Set_Discrete_Choices
4352 (N
: Node_Id
; Val
: List_Id
) is
4354 pragma Assert
(False
4355 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4356 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4357 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4358 or else NT
(N
).Nkind
= N_Variant
);
4359 Set_List4_With_Parent
(N
, Val
);
4360 end Set_Discrete_Choices
;
4362 procedure Set_Discrete_Range
4363 (N
: Node_Id
; Val
: Node_Id
) is
4365 pragma Assert
(False
4366 or else NT
(N
).Nkind
= N_Slice
);
4367 Set_Node4_With_Parent
(N
, Val
);
4368 end Set_Discrete_Range
;
4370 procedure Set_Discrete_Subtype_Definition
4371 (N
: Node_Id
; Val
: Node_Id
) is
4373 pragma Assert
(False
4374 or else NT
(N
).Nkind
= N_Entry_Declaration
4375 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4376 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4377 Set_Node4_With_Parent
(N
, Val
);
4378 end Set_Discrete_Subtype_Definition
;
4380 procedure Set_Discrete_Subtype_Definitions
4381 (N
: Node_Id
; Val
: List_Id
) is
4383 pragma Assert
(False
4384 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4385 Set_List2_With_Parent
(N
, Val
);
4386 end Set_Discrete_Subtype_Definitions
;
4388 procedure Set_Discriminant_Specifications
4389 (N
: Node_Id
; Val
: List_Id
) is
4391 pragma Assert
(False
4392 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4393 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4394 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4395 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4396 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4397 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4398 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4399 Set_List4_With_Parent
(N
, Val
);
4400 end Set_Discriminant_Specifications
;
4402 procedure Set_Discriminant_Type
4403 (N
: Node_Id
; Val
: Node_Id
) is
4405 pragma Assert
(False
4406 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4407 Set_Node5_With_Parent
(N
, Val
);
4408 end Set_Discriminant_Type
;
4410 procedure Set_Do_Accessibility_Check
4411 (N
: Node_Id
; Val
: Boolean := True) is
4413 pragma Assert
(False
4414 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4415 Set_Flag13
(N
, Val
);
4416 end Set_Do_Accessibility_Check
;
4418 procedure Set_Do_Discriminant_Check
4419 (N
: Node_Id
; Val
: Boolean := True) is
4421 pragma Assert
(False
4422 or else NT
(N
).Nkind
= N_Assignment_Statement
4423 or else NT
(N
).Nkind
= N_Selected_Component
4424 or else NT
(N
).Nkind
= N_Type_Conversion
);
4426 end Set_Do_Discriminant_Check
;
4428 procedure Set_Do_Division_Check
4429 (N
: Node_Id
; Val
: Boolean := True) is
4431 pragma Assert
(False
4432 or else NT
(N
).Nkind
= N_Op_Divide
4433 or else NT
(N
).Nkind
= N_Op_Mod
4434 or else NT
(N
).Nkind
= N_Op_Rem
);
4435 Set_Flag13
(N
, Val
);
4436 end Set_Do_Division_Check
;
4438 procedure Set_Do_Length_Check
4439 (N
: Node_Id
; Val
: Boolean := True) is
4441 pragma Assert
(False
4442 or else NT
(N
).Nkind
= N_Assignment_Statement
4443 or else NT
(N
).Nkind
= N_Op_And
4444 or else NT
(N
).Nkind
= N_Op_Or
4445 or else NT
(N
).Nkind
= N_Op_Xor
4446 or else NT
(N
).Nkind
= N_Type_Conversion
);
4448 end Set_Do_Length_Check
;
4450 procedure Set_Do_Overflow_Check
4451 (N
: Node_Id
; Val
: Boolean := True) is
4453 pragma Assert
(False
4454 or else NT
(N
).Nkind
in N_Op
4455 or else NT
(N
).Nkind
= N_Attribute_Reference
4456 or else NT
(N
).Nkind
= N_Case_Expression
4457 or else NT
(N
).Nkind
= N_If_Expression
4458 or else NT
(N
).Nkind
= N_Type_Conversion
);
4459 Set_Flag17
(N
, Val
);
4460 end Set_Do_Overflow_Check
;
4462 procedure Set_Do_Range_Check
4463 (N
: Node_Id
; Val
: Boolean := True) is
4465 pragma Assert
(False
4466 or else NT
(N
).Nkind
in N_Subexpr
);
4468 end Set_Do_Range_Check
;
4470 procedure Set_Do_Storage_Check
4471 (N
: Node_Id
; Val
: Boolean := True) is
4473 pragma Assert
(False
4474 or else NT
(N
).Nkind
= N_Allocator
4475 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4476 Set_Flag17
(N
, Val
);
4477 end Set_Do_Storage_Check
;
4479 procedure Set_Do_Tag_Check
4480 (N
: Node_Id
; Val
: Boolean := True) is
4482 pragma Assert
(False
4483 or else NT
(N
).Nkind
= N_Assignment_Statement
4484 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4485 or else NT
(N
).Nkind
= N_Function_Call
4486 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4487 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4488 or else NT
(N
).Nkind
= N_Type_Conversion
);
4489 Set_Flag13
(N
, Val
);
4490 end Set_Do_Tag_Check
;
4492 procedure Set_Elaborate_All_Desirable
4493 (N
: Node_Id
; Val
: Boolean := True) is
4495 pragma Assert
(False
4496 or else NT
(N
).Nkind
= N_With_Clause
);
4498 end Set_Elaborate_All_Desirable
;
4500 procedure Set_Elaborate_All_Present
4501 (N
: Node_Id
; Val
: Boolean := True) is
4503 pragma Assert
(False
4504 or else NT
(N
).Nkind
= N_With_Clause
);
4505 Set_Flag14
(N
, Val
);
4506 end Set_Elaborate_All_Present
;
4508 procedure Set_Elaborate_Desirable
4509 (N
: Node_Id
; Val
: Boolean := True) is
4511 pragma Assert
(False
4512 or else NT
(N
).Nkind
= N_With_Clause
);
4513 Set_Flag11
(N
, Val
);
4514 end Set_Elaborate_Desirable
;
4516 procedure Set_Elaborate_Present
4517 (N
: Node_Id
; Val
: Boolean := True) is
4519 pragma Assert
(False
4520 or else NT
(N
).Nkind
= N_With_Clause
);
4522 end Set_Elaborate_Present
;
4524 procedure Set_Else_Actions
4525 (N
: Node_Id
; Val
: List_Id
) is
4527 pragma Assert
(False
4528 or else NT
(N
).Nkind
= N_If_Expression
);
4529 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4530 end Set_Else_Actions
;
4532 procedure Set_Else_Statements
4533 (N
: Node_Id
; Val
: List_Id
) is
4535 pragma Assert
(False
4536 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4537 or else NT
(N
).Nkind
= N_If_Statement
4538 or else NT
(N
).Nkind
= N_Selective_Accept
);
4539 Set_List4_With_Parent
(N
, Val
);
4540 end Set_Else_Statements
;
4542 procedure Set_Elsif_Parts
4543 (N
: Node_Id
; Val
: List_Id
) is
4545 pragma Assert
(False
4546 or else NT
(N
).Nkind
= N_If_Statement
);
4547 Set_List3_With_Parent
(N
, Val
);
4548 end Set_Elsif_Parts
;
4550 procedure Set_Enclosing_Variant
4551 (N
: Node_Id
; Val
: Node_Id
) is
4553 pragma Assert
(False
4554 or else NT
(N
).Nkind
= N_Variant
);
4555 Set_Node2
(N
, Val
); -- semantic field, no parent set
4556 end Set_Enclosing_Variant
;
4558 procedure Set_End_Label
4559 (N
: Node_Id
; Val
: Node_Id
) is
4561 pragma Assert
(False
4562 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4563 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4564 or else NT
(N
).Nkind
= N_Loop_Statement
4565 or else NT
(N
).Nkind
= N_Package_Specification
4566 or else NT
(N
).Nkind
= N_Protected_Body
4567 or else NT
(N
).Nkind
= N_Protected_Definition
4568 or else NT
(N
).Nkind
= N_Record_Definition
4569 or else NT
(N
).Nkind
= N_Task_Definition
);
4570 Set_Node4_With_Parent
(N
, Val
);
4573 procedure Set_End_Span
4574 (N
: Node_Id
; Val
: Uint
) is
4576 pragma Assert
(False
4577 or else NT
(N
).Nkind
= N_Case_Statement
4578 or else NT
(N
).Nkind
= N_If_Statement
);
4582 procedure Set_Entity
4583 (N
: Node_Id
; Val
: Node_Id
) is
4585 pragma Assert
(False
4586 or else NT
(N
).Nkind
in N_Has_Entity
4587 or else NT
(N
).Nkind
= N_Aspect_Specification
4588 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4589 or else NT
(N
).Nkind
= N_Freeze_Entity
4590 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4591 Set_Node4
(N
, Val
); -- semantic field, no parent set
4594 procedure Set_Entry_Body_Formal_Part
4595 (N
: Node_Id
; Val
: Node_Id
) is
4597 pragma Assert
(False
4598 or else NT
(N
).Nkind
= N_Entry_Body
);
4599 Set_Node5_With_Parent
(N
, Val
);
4600 end Set_Entry_Body_Formal_Part
;
4602 procedure Set_Entry_Call_Alternative
4603 (N
: Node_Id
; Val
: Node_Id
) is
4605 pragma Assert
(False
4606 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4607 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4608 Set_Node1_With_Parent
(N
, Val
);
4609 end Set_Entry_Call_Alternative
;
4611 procedure Set_Entry_Call_Statement
4612 (N
: Node_Id
; Val
: Node_Id
) is
4614 pragma Assert
(False
4615 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4616 Set_Node1_With_Parent
(N
, Val
);
4617 end Set_Entry_Call_Statement
;
4619 procedure Set_Entry_Direct_Name
4620 (N
: Node_Id
; Val
: Node_Id
) is
4622 pragma Assert
(False
4623 or else NT
(N
).Nkind
= N_Accept_Statement
);
4624 Set_Node1_With_Parent
(N
, Val
);
4625 end Set_Entry_Direct_Name
;
4627 procedure Set_Entry_Index
4628 (N
: Node_Id
; Val
: Node_Id
) is
4630 pragma Assert
(False
4631 or else NT
(N
).Nkind
= N_Accept_Statement
);
4632 Set_Node5_With_Parent
(N
, Val
);
4633 end Set_Entry_Index
;
4635 procedure Set_Entry_Index_Specification
4636 (N
: Node_Id
; Val
: Node_Id
) is
4638 pragma Assert
(False
4639 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4640 Set_Node4_With_Parent
(N
, Val
);
4641 end Set_Entry_Index_Specification
;
4644 (N
: Node_Id
; Val
: Node_Id
) is
4646 pragma Assert
(False
4647 or else NT
(N
).Nkind
in N_Has_Etype
);
4648 Set_Node5
(N
, Val
); -- semantic field, no parent set
4651 procedure Set_Exception_Choices
4652 (N
: Node_Id
; Val
: List_Id
) is
4654 pragma Assert
(False
4655 or else NT
(N
).Nkind
= N_Exception_Handler
);
4656 Set_List4_With_Parent
(N
, Val
);
4657 end Set_Exception_Choices
;
4659 procedure Set_Exception_Handlers
4660 (N
: Node_Id
; Val
: List_Id
) is
4662 pragma Assert
(False
4663 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4664 Set_List5_With_Parent
(N
, Val
);
4665 end Set_Exception_Handlers
;
4667 procedure Set_Exception_Junk
4668 (N
: Node_Id
; Val
: Boolean := True) is
4670 pragma Assert
(False
4671 or else NT
(N
).Nkind
= N_Block_Statement
4672 or else NT
(N
).Nkind
= N_Goto_Statement
4673 or else NT
(N
).Nkind
= N_Label
4674 or else NT
(N
).Nkind
= N_Object_Declaration
4675 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4677 end Set_Exception_Junk
;
4679 procedure Set_Exception_Label
4680 (N
: Node_Id
; Val
: Node_Id
) is
4682 pragma Assert
(False
4683 or else NT
(N
).Nkind
= N_Exception_Handler
4684 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4685 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4686 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4687 Set_Node5
(N
, Val
); -- semantic field, no parent set
4688 end Set_Exception_Label
;
4690 procedure Set_Expansion_Delayed
4691 (N
: Node_Id
; Val
: Boolean := True) is
4693 pragma Assert
(False
4694 or else NT
(N
).Nkind
= N_Aggregate
4695 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4696 Set_Flag11
(N
, Val
);
4697 end Set_Expansion_Delayed
;
4699 procedure Set_Explicit_Actual_Parameter
4700 (N
: Node_Id
; Val
: Node_Id
) is
4702 pragma Assert
(False
4703 or else NT
(N
).Nkind
= N_Parameter_Association
);
4704 Set_Node3_With_Parent
(N
, Val
);
4705 end Set_Explicit_Actual_Parameter
;
4707 procedure Set_Explicit_Generic_Actual_Parameter
4708 (N
: Node_Id
; Val
: Node_Id
) is
4710 pragma Assert
(False
4711 or else NT
(N
).Nkind
= N_Generic_Association
);
4712 Set_Node1_With_Parent
(N
, Val
);
4713 end Set_Explicit_Generic_Actual_Parameter
;
4715 procedure Set_Expression
4716 (N
: Node_Id
; Val
: Node_Id
) is
4718 pragma Assert
(False
4719 or else NT
(N
).Nkind
= N_Allocator
4720 or else NT
(N
).Nkind
= N_Aspect_Specification
4721 or else NT
(N
).Nkind
= N_Assignment_Statement
4722 or else NT
(N
).Nkind
= N_At_Clause
4723 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4724 or else NT
(N
).Nkind
= N_Case_Expression
4725 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4726 or else NT
(N
).Nkind
= N_Case_Statement
4727 or else NT
(N
).Nkind
= N_Code_Statement
4728 or else NT
(N
).Nkind
= N_Component_Association
4729 or else NT
(N
).Nkind
= N_Component_Declaration
4730 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4731 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4732 or else NT
(N
).Nkind
= N_Delta_Aggregate
4733 or else NT
(N
).Nkind
= N_Discriminant_Association
4734 or else NT
(N
).Nkind
= N_Discriminant_Specification
4735 or else NT
(N
).Nkind
= N_Exception_Declaration
4736 or else NT
(N
).Nkind
= N_Expression_Function
4737 or else NT
(N
).Nkind
= N_Expression_With_Actions
4738 or else NT
(N
).Nkind
= N_Free_Statement
4739 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4740 or else NT
(N
).Nkind
= N_Mod_Clause
4741 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4742 or else NT
(N
).Nkind
= N_Number_Declaration
4743 or else NT
(N
).Nkind
= N_Object_Declaration
4744 or else NT
(N
).Nkind
= N_Parameter_Specification
4745 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4746 or else NT
(N
).Nkind
= N_Qualified_Expression
4747 or else NT
(N
).Nkind
= N_Raise_Expression
4748 or else NT
(N
).Nkind
= N_Raise_Statement
4749 or else NT
(N
).Nkind
= N_Reduction_Expression
4750 or else NT
(N
).Nkind
= N_Reduction_Expression_Parameter
4751 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4752 or else NT
(N
).Nkind
= N_Type_Conversion
4753 or else NT
(N
).Nkind
= N_Unchecked_Expression
4754 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4755 Set_Node3_With_Parent
(N
, Val
);
4758 procedure Set_Expression_Copy
4759 (N
: Node_Id
; Val
: Node_Id
) is
4761 pragma Assert
(False
4762 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4763 Set_Node2
(N
, Val
); -- semantic field, no parent set
4764 end Set_Expression_Copy
;
4766 procedure Set_Expressions
4767 (N
: Node_Id
; Val
: List_Id
) is
4769 pragma Assert
(False
4770 or else NT
(N
).Nkind
= N_Aggregate
4771 or else NT
(N
).Nkind
= N_Attribute_Reference
4772 or else NT
(N
).Nkind
= N_Extension_Aggregate
4773 or else NT
(N
).Nkind
= N_If_Expression
4774 or else NT
(N
).Nkind
= N_Indexed_Component
);
4775 Set_List1_With_Parent
(N
, Val
);
4776 end Set_Expressions
;
4778 procedure Set_First_Bit
4779 (N
: Node_Id
; Val
: Node_Id
) is
4781 pragma Assert
(False
4782 or else NT
(N
).Nkind
= N_Component_Clause
);
4783 Set_Node3_With_Parent
(N
, Val
);
4786 procedure Set_First_Inlined_Subprogram
4787 (N
: Node_Id
; Val
: Entity_Id
) is
4789 pragma Assert
(False
4790 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4791 Set_Node3
(N
, Val
); -- semantic field, no parent set
4792 end Set_First_Inlined_Subprogram
;
4794 procedure Set_First_Name
4795 (N
: Node_Id
; Val
: Boolean := True) is
4797 pragma Assert
(False
4798 or else NT
(N
).Nkind
= N_With_Clause
);
4802 procedure Set_First_Named_Actual
4803 (N
: Node_Id
; Val
: Node_Id
) is
4805 pragma Assert
(False
4806 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4807 or else NT
(N
).Nkind
= N_Function_Call
4808 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4809 Set_Node4
(N
, Val
); -- semantic field, no parent set
4810 end Set_First_Named_Actual
;
4812 procedure Set_First_Real_Statement
4813 (N
: Node_Id
; Val
: Node_Id
) is
4815 pragma Assert
(False
4816 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4817 Set_Node2
(N
, Val
); -- semantic field, no parent set
4818 end Set_First_Real_Statement
;
4820 procedure Set_First_Subtype_Link
4821 (N
: Node_Id
; Val
: Entity_Id
) is
4823 pragma Assert
(False
4824 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4825 Set_Node5
(N
, Val
); -- semantic field, no parent set
4826 end Set_First_Subtype_Link
;
4828 procedure Set_Float_Truncate
4829 (N
: Node_Id
; Val
: Boolean := True) is
4831 pragma Assert
(False
4832 or else NT
(N
).Nkind
= N_Type_Conversion
);
4833 Set_Flag11
(N
, Val
);
4834 end Set_Float_Truncate
;
4836 procedure Set_Formal_Type_Definition
4837 (N
: Node_Id
; Val
: Node_Id
) is
4839 pragma Assert
(False
4840 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4841 Set_Node3_With_Parent
(N
, Val
);
4842 end Set_Formal_Type_Definition
;
4844 procedure Set_Forwards_OK
4845 (N
: Node_Id
; Val
: Boolean := True) is
4847 pragma Assert
(False
4848 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4850 end Set_Forwards_OK
;
4852 procedure Set_From_Aspect_Specification
4853 (N
: Node_Id
; Val
: Boolean := True) is
4855 pragma Assert
(False
4856 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4857 or else NT
(N
).Nkind
= N_Pragma
);
4858 Set_Flag13
(N
, Val
);
4859 end Set_From_Aspect_Specification
;
4861 procedure Set_From_At_End
4862 (N
: Node_Id
; Val
: Boolean := True) is
4864 pragma Assert
(False
4865 or else NT
(N
).Nkind
= N_Raise_Statement
);
4867 end Set_From_At_End
;
4869 procedure Set_From_At_Mod
4870 (N
: Node_Id
; Val
: Boolean := True) is
4872 pragma Assert
(False
4873 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4875 end Set_From_At_Mod
;
4877 procedure Set_From_Conditional_Expression
4878 (N
: Node_Id
; Val
: Boolean := True) is
4880 pragma Assert
(False
4881 or else NT
(N
).Nkind
= N_Case_Statement
4882 or else NT
(N
).Nkind
= N_If_Statement
);
4884 end Set_From_Conditional_Expression
;
4886 procedure Set_From_Default
4887 (N
: Node_Id
; Val
: Boolean := True) is
4889 pragma Assert
(False
4890 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4892 end Set_From_Default
;
4894 procedure Set_Generalized_Indexing
4895 (N
: Node_Id
; Val
: Node_Id
) is
4897 pragma Assert
(False
4898 or else NT
(N
).Nkind
= N_Indexed_Component
);
4900 end Set_Generalized_Indexing
;
4902 procedure Set_Generic_Associations
4903 (N
: Node_Id
; Val
: List_Id
) is
4905 pragma Assert
(False
4906 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4907 or else NT
(N
).Nkind
= N_Function_Instantiation
4908 or else NT
(N
).Nkind
= N_Package_Instantiation
4909 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4910 Set_List3_With_Parent
(N
, Val
);
4911 end Set_Generic_Associations
;
4913 procedure Set_Generic_Formal_Declarations
4914 (N
: Node_Id
; Val
: List_Id
) is
4916 pragma Assert
(False
4917 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4918 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4919 Set_List2_With_Parent
(N
, Val
);
4920 end Set_Generic_Formal_Declarations
;
4922 procedure Set_Generic_Parent
4923 (N
: Node_Id
; Val
: Node_Id
) is
4925 pragma Assert
(False
4926 or else NT
(N
).Nkind
= N_Function_Specification
4927 or else NT
(N
).Nkind
= N_Package_Specification
4928 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4930 end Set_Generic_Parent
;
4932 procedure Set_Generic_Parent_Type
4933 (N
: Node_Id
; Val
: Node_Id
) is
4935 pragma Assert
(False
4936 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4938 end Set_Generic_Parent_Type
;
4940 procedure Set_Handled_Statement_Sequence
4941 (N
: Node_Id
; Val
: Node_Id
) is
4943 pragma Assert
(False
4944 or else NT
(N
).Nkind
= N_Accept_Statement
4945 or else NT
(N
).Nkind
= N_Block_Statement
4946 or else NT
(N
).Nkind
= N_Entry_Body
4947 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4948 or else NT
(N
).Nkind
= N_Package_Body
4949 or else NT
(N
).Nkind
= N_Subprogram_Body
4950 or else NT
(N
).Nkind
= N_Task_Body
);
4951 Set_Node4_With_Parent
(N
, Val
);
4952 end Set_Handled_Statement_Sequence
;
4954 procedure Set_Handler_List_Entry
4955 (N
: Node_Id
; Val
: Node_Id
) is
4957 pragma Assert
(False
4958 or else NT
(N
).Nkind
= N_Object_Declaration
);
4960 end Set_Handler_List_Entry
;
4962 procedure Set_Has_Created_Identifier
4963 (N
: Node_Id
; Val
: Boolean := True) is
4965 pragma Assert
(False
4966 or else NT
(N
).Nkind
= N_Block_Statement
4967 or else NT
(N
).Nkind
= N_Loop_Statement
);
4968 Set_Flag15
(N
, Val
);
4969 end Set_Has_Created_Identifier
;
4971 procedure Set_Has_Dereference_Action
4972 (N
: Node_Id
; Val
: Boolean := True) is
4974 pragma Assert
(False
4975 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4976 Set_Flag13
(N
, Val
);
4977 end Set_Has_Dereference_Action
;
4979 procedure Set_Has_Dynamic_Length_Check
4980 (N
: Node_Id
; Val
: Boolean := True) is
4982 pragma Assert
(False
4983 or else NT
(N
).Nkind
in N_Subexpr
);
4984 Set_Flag10
(N
, Val
);
4985 end Set_Has_Dynamic_Length_Check
;
4987 procedure Set_Has_Dynamic_Range_Check
4988 (N
: Node_Id
; Val
: Boolean := True) is
4990 pragma Assert
(False
4991 or else NT
(N
).Nkind
= N_Subtype_Declaration
4992 or else NT
(N
).Nkind
in N_Subexpr
);
4993 Set_Flag12
(N
, Val
);
4994 end Set_Has_Dynamic_Range_Check
;
4996 procedure Set_Has_Init_Expression
4997 (N
: Node_Id
; Val
: Boolean := True) is
4999 pragma Assert
(False
5000 or else NT
(N
).Nkind
= N_Object_Declaration
);
5001 Set_Flag14
(N
, Val
);
5002 end Set_Has_Init_Expression
;
5004 procedure Set_Has_Local_Raise
5005 (N
: Node_Id
; Val
: Boolean := True) is
5007 pragma Assert
(False
5008 or else NT
(N
).Nkind
= N_Exception_Handler
);
5010 end Set_Has_Local_Raise
;
5012 procedure Set_Has_No_Elaboration_Code
5013 (N
: Node_Id
; Val
: Boolean := True) is
5015 pragma Assert
(False
5016 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5017 Set_Flag17
(N
, Val
);
5018 end Set_Has_No_Elaboration_Code
;
5020 procedure Set_Has_Pragma_Suppress_All
5021 (N
: Node_Id
; Val
: Boolean := True) is
5023 pragma Assert
(False
5024 or else NT
(N
).Nkind
= N_Compilation_Unit
);
5025 Set_Flag14
(N
, Val
);
5026 end Set_Has_Pragma_Suppress_All
;
5028 procedure Set_Has_Private_View
5029 (N
: Node_Id
; Val
: Boolean := True) is
5031 pragma Assert
(False
5032 or else NT
(N
).Nkind
in N_Op
5033 or else NT
(N
).Nkind
= N_Character_Literal
5034 or else NT
(N
).Nkind
= N_Expanded_Name
5035 or else NT
(N
).Nkind
= N_Identifier
5036 or else NT
(N
).Nkind
= N_Operator_Symbol
);
5037 Set_Flag11
(N
, Val
);
5038 end Set_Has_Private_View
;
5040 procedure Set_Has_Relative_Deadline_Pragma
5041 (N
: Node_Id
; Val
: Boolean := True) is
5043 pragma Assert
(False
5044 or else NT
(N
).Nkind
= N_Subprogram_Body
5045 or else NT
(N
).Nkind
= N_Task_Definition
);
5047 end Set_Has_Relative_Deadline_Pragma
;
5049 procedure Set_Has_Self_Reference
5050 (N
: Node_Id
; Val
: Boolean := True) is
5052 pragma Assert
(False
5053 or else NT
(N
).Nkind
= N_Aggregate
5054 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5055 Set_Flag13
(N
, Val
);
5056 end Set_Has_Self_Reference
;
5058 procedure Set_Has_SP_Choice
5059 (N
: Node_Id
; Val
: Boolean := True) is
5061 pragma Assert
(False
5062 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5063 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5064 or else NT
(N
).Nkind
= N_Variant
);
5065 Set_Flag15
(N
, Val
);
5066 end Set_Has_SP_Choice
;
5068 procedure Set_Has_Storage_Size_Pragma
5069 (N
: Node_Id
; Val
: Boolean := True) is
5071 pragma Assert
(False
5072 or else NT
(N
).Nkind
= N_Task_Definition
);
5074 end Set_Has_Storage_Size_Pragma
;
5076 procedure Set_Has_Target_Names
5077 (N
: Node_Id
; Val
: Boolean := True) is
5079 pragma Assert
(False
5080 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5082 end Set_Has_Target_Names
;
5084 procedure Set_Has_Wide_Character
5085 (N
: Node_Id
; Val
: Boolean := True) is
5087 pragma Assert
(False
5088 or else NT
(N
).Nkind
= N_String_Literal
);
5089 Set_Flag11
(N
, Val
);
5090 end Set_Has_Wide_Character
;
5092 procedure Set_Has_Wide_Wide_Character
5093 (N
: Node_Id
; Val
: Boolean := True) is
5095 pragma Assert
(False
5096 or else NT
(N
).Nkind
= N_String_Literal
);
5097 Set_Flag13
(N
, Val
);
5098 end Set_Has_Wide_Wide_Character
;
5100 procedure Set_Header_Size_Added
5101 (N
: Node_Id
; Val
: Boolean := True) is
5103 pragma Assert
(False
5104 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5105 Set_Flag11
(N
, Val
);
5106 end Set_Header_Size_Added
;
5108 procedure Set_Hidden_By_Use_Clause
5109 (N
: Node_Id
; Val
: Elist_Id
) is
5111 pragma Assert
(False
5112 or else NT
(N
).Nkind
= N_Use_Package_Clause
5113 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5114 Set_Elist5
(N
, Val
);
5115 end Set_Hidden_By_Use_Clause
;
5117 procedure Set_High_Bound
5118 (N
: Node_Id
; Val
: Node_Id
) is
5120 pragma Assert
(False
5121 or else NT
(N
).Nkind
= N_Range
5122 or else NT
(N
).Nkind
= N_Real_Range_Specification
5123 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5124 Set_Node2_With_Parent
(N
, Val
);
5127 procedure Set_Identifier
5128 (N
: Node_Id
; Val
: Node_Id
) is
5130 pragma Assert
(False
5131 or else NT
(N
).Nkind
= N_Aspect_Specification
5132 or else NT
(N
).Nkind
= N_At_Clause
5133 or else NT
(N
).Nkind
= N_Block_Statement
5134 or else NT
(N
).Nkind
= N_Designator
5135 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5136 or else NT
(N
).Nkind
= N_Label
5137 or else NT
(N
).Nkind
= N_Loop_Statement
5138 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5139 Set_Node1_With_Parent
(N
, Val
);
5142 procedure Set_Implicit_With
5143 (N
: Node_Id
; Val
: Boolean := True) is
5145 pragma Assert
(False
5146 or else NT
(N
).Nkind
= N_With_Clause
);
5147 Set_Flag16
(N
, Val
);
5148 end Set_Implicit_With
;
5150 procedure Set_Interface_List
5151 (N
: Node_Id
; Val
: List_Id
) is
5153 pragma Assert
(False
5154 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5155 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5156 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5157 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5158 or else NT
(N
).Nkind
= N_Record_Definition
5159 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5160 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5161 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5162 Set_List2_With_Parent
(N
, Val
);
5163 end Set_Interface_List
;
5165 procedure Set_Interface_Present
5166 (N
: Node_Id
; Val
: Boolean := True) is
5168 pragma Assert
(False
5169 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5170 or else NT
(N
).Nkind
= N_Record_Definition
);
5171 Set_Flag16
(N
, Val
);
5172 end Set_Interface_Present
;
5174 procedure Set_Import_Interface_Present
5175 (N
: Node_Id
; Val
: Boolean := True) is
5177 pragma Assert
(False
5178 or else NT
(N
).Nkind
= N_Pragma
);
5179 Set_Flag16
(N
, Val
);
5180 end Set_Import_Interface_Present
;
5182 procedure Set_In_Present
5183 (N
: Node_Id
; Val
: Boolean := True) is
5185 pragma Assert
(False
5186 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5187 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5188 Set_Flag15
(N
, Val
);
5191 procedure Set_Includes_Infinities
5192 (N
: Node_Id
; Val
: Boolean := True) is
5194 pragma Assert
(False
5195 or else NT
(N
).Nkind
= N_Range
);
5196 Set_Flag11
(N
, Val
);
5197 end Set_Includes_Infinities
;
5199 procedure Set_Incomplete_View
5200 (N
: Node_Id
; Val
: Node_Id
) is
5202 pragma Assert
(False
5203 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5204 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5205 end Set_Incomplete_View
;
5207 procedure Set_Inherited_Discriminant
5208 (N
: Node_Id
; Val
: Boolean := True) is
5210 pragma Assert
(False
5211 or else NT
(N
).Nkind
= N_Component_Association
);
5212 Set_Flag13
(N
, Val
);
5213 end Set_Inherited_Discriminant
;
5215 procedure Set_Instance_Spec
5216 (N
: Node_Id
; Val
: Node_Id
) is
5218 pragma Assert
(False
5219 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5220 or else NT
(N
).Nkind
= N_Function_Instantiation
5221 or else NT
(N
).Nkind
= N_Package_Instantiation
5222 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5223 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5224 end Set_Instance_Spec
;
5226 procedure Set_Intval
5227 (N
: Node_Id
; Val
: Uint
) is
5229 pragma Assert
(False
5230 or else NT
(N
).Nkind
= N_Integer_Literal
);
5234 procedure Set_Is_Abort_Block
5235 (N
: Node_Id
; Val
: Boolean := True) is
5237 pragma Assert
(False
5238 or else NT
(N
).Nkind
= N_Block_Statement
);
5240 end Set_Is_Abort_Block
;
5242 procedure Set_Is_Accessibility_Actual
5243 (N
: Node_Id
; Val
: Boolean := True) is
5245 pragma Assert
(False
5246 or else NT
(N
).Nkind
= N_Parameter_Association
);
5247 Set_Flag13
(N
, Val
);
5248 end Set_Is_Accessibility_Actual
;
5250 procedure Set_Is_Analyzed_Pragma
5251 (N
: Node_Id
; Val
: Boolean := True) is
5253 pragma Assert
(False
5254 or else NT
(N
).Nkind
= N_Pragma
);
5256 end Set_Is_Analyzed_Pragma
;
5258 procedure Set_Is_Asynchronous_Call_Block
5259 (N
: Node_Id
; Val
: Boolean := True) is
5261 pragma Assert
(False
5262 or else NT
(N
).Nkind
= N_Block_Statement
);
5264 end Set_Is_Asynchronous_Call_Block
;
5266 procedure Set_Is_Boolean_Aspect
5267 (N
: Node_Id
; Val
: Boolean := True) is
5269 pragma Assert
(False
5270 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5271 Set_Flag16
(N
, Val
);
5272 end Set_Is_Boolean_Aspect
;
5274 procedure Set_Is_Checked
5275 (N
: Node_Id
; Val
: Boolean := True) is
5277 pragma Assert
(False
5278 or else NT
(N
).Nkind
= N_Aspect_Specification
5279 or else NT
(N
).Nkind
= N_Pragma
);
5280 Set_Flag11
(N
, Val
);
5283 procedure Set_Is_Checked_Ghost_Pragma
5284 (N
: Node_Id
; Val
: Boolean := True) is
5286 pragma Assert
(False
5287 or else NT
(N
).Nkind
= N_Pragma
);
5289 end Set_Is_Checked_Ghost_Pragma
;
5291 procedure Set_Is_Component_Left_Opnd
5292 (N
: Node_Id
; Val
: Boolean := True) is
5294 pragma Assert
(False
5295 or else NT
(N
).Nkind
= N_Op_Concat
);
5296 Set_Flag13
(N
, Val
);
5297 end Set_Is_Component_Left_Opnd
;
5299 procedure Set_Is_Component_Right_Opnd
5300 (N
: Node_Id
; Val
: Boolean := True) is
5302 pragma Assert
(False
5303 or else NT
(N
).Nkind
= N_Op_Concat
);
5304 Set_Flag14
(N
, Val
);
5305 end Set_Is_Component_Right_Opnd
;
5307 procedure Set_Is_Controlling_Actual
5308 (N
: Node_Id
; Val
: Boolean := True) is
5310 pragma Assert
(False
5311 or else NT
(N
).Nkind
in N_Subexpr
);
5312 Set_Flag16
(N
, Val
);
5313 end Set_Is_Controlling_Actual
;
5315 procedure Set_Is_Declaration_Level_Node
5316 (N
: Node_Id
; Val
: Boolean := True) is
5318 pragma Assert
(False
5319 or else NT
(N
).Nkind
= N_Call_Marker
5320 or else NT
(N
).Nkind
= N_Function_Instantiation
5321 or else NT
(N
).Nkind
= N_Package_Instantiation
5322 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5324 end Set_Is_Declaration_Level_Node
;
5326 procedure Set_Is_Delayed_Aspect
5327 (N
: Node_Id
; Val
: Boolean := True) is
5329 pragma Assert
(False
5330 or else NT
(N
).Nkind
= N_Aspect_Specification
5331 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5332 or else NT
(N
).Nkind
= N_Pragma
);
5333 Set_Flag14
(N
, Val
);
5334 end Set_Is_Delayed_Aspect
;
5336 procedure Set_Is_Disabled
5337 (N
: Node_Id
; Val
: Boolean := True) is
5339 pragma Assert
(False
5340 or else NT
(N
).Nkind
= N_Aspect_Specification
5341 or else NT
(N
).Nkind
= N_Pragma
);
5342 Set_Flag15
(N
, Val
);
5343 end Set_Is_Disabled
;
5345 procedure Set_Is_Dispatching_Call
5346 (N
: Node_Id
; Val
: Boolean := True) is
5348 pragma Assert
(False
5349 or else NT
(N
).Nkind
= N_Call_Marker
);
5351 end Set_Is_Dispatching_Call
;
5353 procedure Set_Is_Dynamic_Coextension
5354 (N
: Node_Id
; Val
: Boolean := True) is
5356 pragma Assert
(False
5357 or else NT
(N
).Nkind
= N_Allocator
);
5358 Set_Flag18
(N
, Val
);
5359 end Set_Is_Dynamic_Coextension
;
5361 procedure Set_Is_Effective_Use_Clause
5362 (N
: Node_Id
; Val
: Boolean := True) is
5364 pragma Assert
(False
5365 or else NT
(N
).Nkind
= N_Use_Package_Clause
5366 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5368 end Set_Is_Effective_Use_Clause
;
5370 procedure Set_Is_Elaboration_Checks_OK_Node
5371 (N
: Node_Id
; Val
: Boolean := True) is
5373 pragma Assert
(False
5374 or else NT
(N
).Nkind
= N_Assignment_Statement
5375 or else NT
(N
).Nkind
= N_Attribute_Reference
5376 or else NT
(N
).Nkind
= N_Call_Marker
5377 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5378 or else NT
(N
).Nkind
= N_Expanded_Name
5379 or else NT
(N
).Nkind
= N_Function_Call
5380 or else NT
(N
).Nkind
= N_Function_Instantiation
5381 or else NT
(N
).Nkind
= N_Identifier
5382 or else NT
(N
).Nkind
= N_Package_Instantiation
5383 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5384 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5385 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5387 end Set_Is_Elaboration_Checks_OK_Node
;
5389 procedure Set_Is_Elaboration_Code
5390 (N
: Node_Id
; Val
: Boolean := True) is
5392 pragma Assert
(False
5393 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5395 end Set_Is_Elaboration_Code
;
5397 procedure Set_Is_Elaboration_Warnings_OK_Node
5398 (N
: Node_Id
; Val
: Boolean := True) is
5400 pragma Assert
(False
5401 or else NT
(N
).Nkind
= N_Call_Marker
5402 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5403 or else NT
(N
).Nkind
= N_Function_Call
5404 or else NT
(N
).Nkind
= N_Function_Instantiation
5405 or else NT
(N
).Nkind
= N_Package_Instantiation
5406 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5407 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5408 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5410 end Set_Is_Elaboration_Warnings_OK_Node
;
5412 procedure Set_Is_Elsif
5413 (N
: Node_Id
; Val
: Boolean := True) is
5415 pragma Assert
(False
5416 or else NT
(N
).Nkind
= N_If_Expression
);
5417 Set_Flag13
(N
, Val
);
5420 procedure Set_Is_Entry_Barrier_Function
5421 (N
: Node_Id
; Val
: Boolean := True) is
5423 pragma Assert
(False
5424 or else NT
(N
).Nkind
= N_Subprogram_Body
5425 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5427 end Set_Is_Entry_Barrier_Function
;
5429 procedure Set_Is_Expanded_Build_In_Place_Call
5430 (N
: Node_Id
; Val
: Boolean := True) is
5432 pragma Assert
(False
5433 or else NT
(N
).Nkind
= N_Function_Call
);
5434 Set_Flag11
(N
, Val
);
5435 end Set_Is_Expanded_Build_In_Place_Call
;
5437 procedure Set_Is_Expanded_Contract
5438 (N
: Node_Id
; Val
: Boolean := True) is
5440 pragma Assert
(False
5441 or else NT
(N
).Nkind
= N_Contract
);
5443 end Set_Is_Expanded_Contract
;
5445 procedure Set_Is_Finalization_Wrapper
5446 (N
: Node_Id
; Val
: Boolean := True) is
5448 pragma Assert
(False
5449 or else NT
(N
).Nkind
= N_Block_Statement
);
5451 end Set_Is_Finalization_Wrapper
;
5453 procedure Set_Is_Folded_In_Parser
5454 (N
: Node_Id
; Val
: Boolean := True) is
5456 pragma Assert
(False
5457 or else NT
(N
).Nkind
= N_String_Literal
);
5459 end Set_Is_Folded_In_Parser
;
5461 procedure Set_Is_Generic_Contract_Pragma
5462 (N
: Node_Id
; Val
: Boolean := True) is
5464 pragma Assert
(False
5465 or else NT
(N
).Nkind
= N_Pragma
);
5467 end Set_Is_Generic_Contract_Pragma
;
5469 procedure Set_Is_Ignored
5470 (N
: Node_Id
; Val
: Boolean := True) is
5472 pragma Assert
(False
5473 or else NT
(N
).Nkind
= N_Aspect_Specification
5474 or else NT
(N
).Nkind
= N_Pragma
);
5478 procedure Set_Is_Ignored_Ghost_Pragma
5479 (N
: Node_Id
; Val
: Boolean := True) is
5481 pragma Assert
(False
5482 or else NT
(N
).Nkind
= N_Pragma
);
5484 end Set_Is_Ignored_Ghost_Pragma
;
5486 procedure Set_Is_In_Discriminant_Check
5487 (N
: Node_Id
; Val
: Boolean := True) is
5489 pragma Assert
(False
5490 or else NT
(N
).Nkind
= N_Selected_Component
);
5491 Set_Flag11
(N
, Val
);
5492 end Set_Is_In_Discriminant_Check
;
5494 procedure Set_Is_Inherited_Pragma
5495 (N
: Node_Id
; Val
: Boolean := True) is
5497 pragma Assert
(False
5498 or else NT
(N
).Nkind
= N_Pragma
);
5500 end Set_Is_Inherited_Pragma
;
5502 procedure Set_Is_Initialization_Block
5503 (N
: Node_Id
; Val
: Boolean := True) is
5505 pragma Assert
(False
5506 or else NT
(N
).Nkind
= N_Block_Statement
);
5508 end Set_Is_Initialization_Block
;
5510 procedure Set_Is_Known_Guaranteed_ABE
5511 (N
: Node_Id
; Val
: Boolean := True) is
5513 pragma Assert
(False
5514 or else NT
(N
).Nkind
= N_Call_Marker
5515 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5516 or else NT
(N
).Nkind
= N_Function_Call
5517 or else NT
(N
).Nkind
= N_Function_Instantiation
5518 or else NT
(N
).Nkind
= N_Package_Instantiation
5519 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5520 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5521 Set_Flag18
(N
, Val
);
5522 end Set_Is_Known_Guaranteed_ABE
;
5524 procedure Set_Is_Machine_Number
5525 (N
: Node_Id
; Val
: Boolean := True) is
5527 pragma Assert
(False
5528 or else NT
(N
).Nkind
= N_Real_Literal
);
5529 Set_Flag11
(N
, Val
);
5530 end Set_Is_Machine_Number
;
5532 procedure Set_Is_Null_Loop
5533 (N
: Node_Id
; Val
: Boolean := True) is
5535 pragma Assert
(False
5536 or else NT
(N
).Nkind
= N_Loop_Statement
);
5537 Set_Flag16
(N
, Val
);
5538 end Set_Is_Null_Loop
;
5540 procedure Set_Is_Overloaded
5541 (N
: Node_Id
; Val
: Boolean := True) is
5543 pragma Assert
(False
5544 or else NT
(N
).Nkind
in N_Subexpr
);
5546 end Set_Is_Overloaded
;
5548 procedure Set_Is_Power_Of_2_For_Shift
5549 (N
: Node_Id
; Val
: Boolean := True) is
5551 pragma Assert
(False
5552 or else NT
(N
).Nkind
= N_Op_Expon
);
5553 Set_Flag13
(N
, Val
);
5554 end Set_Is_Power_Of_2_For_Shift
;
5556 procedure Set_Is_Prefixed_Call
5557 (N
: Node_Id
; Val
: Boolean := True) is
5559 pragma Assert
(False
5560 or else NT
(N
).Nkind
= N_Selected_Component
);
5561 Set_Flag17
(N
, Val
);
5562 end Set_Is_Prefixed_Call
;
5564 procedure Set_Is_Protected_Subprogram_Body
5565 (N
: Node_Id
; Val
: Boolean := True) is
5567 pragma Assert
(False
5568 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5570 end Set_Is_Protected_Subprogram_Body
;
5572 procedure Set_Is_Qualified_Universal_Literal
5573 (N
: Node_Id
; Val
: Boolean := True) is
5575 pragma Assert
(False
5576 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5578 end Set_Is_Qualified_Universal_Literal
;
5580 procedure Set_Is_Read
5581 (N
: Node_Id
; Val
: Boolean := True) is
5583 pragma Assert
(False
5584 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5588 procedure Set_Is_Source_Call
5589 (N
: Node_Id
; Val
: Boolean := True) is
5591 pragma Assert
(False
5592 or else NT
(N
).Nkind
= N_Call_Marker
);
5594 end Set_Is_Source_Call
;
5596 procedure Set_Is_SPARK_Mode_On_Node
5597 (N
: Node_Id
; Val
: Boolean := True) is
5599 pragma Assert
(False
5600 or else NT
(N
).Nkind
= N_Assignment_Statement
5601 or else NT
(N
).Nkind
= N_Attribute_Reference
5602 or else NT
(N
).Nkind
= N_Call_Marker
5603 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5604 or else NT
(N
).Nkind
= N_Expanded_Name
5605 or else NT
(N
).Nkind
= N_Function_Call
5606 or else NT
(N
).Nkind
= N_Function_Instantiation
5607 or else NT
(N
).Nkind
= N_Identifier
5608 or else NT
(N
).Nkind
= N_Package_Instantiation
5609 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5610 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5611 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5613 end Set_Is_SPARK_Mode_On_Node
;
5615 procedure Set_Is_Static_Coextension
5616 (N
: Node_Id
; Val
: Boolean := True) is
5618 pragma Assert
(False
5619 or else NT
(N
).Nkind
= N_Allocator
);
5620 Set_Flag14
(N
, Val
);
5621 end Set_Is_Static_Coextension
;
5623 procedure Set_Is_Static_Expression
5624 (N
: Node_Id
; Val
: Boolean := True) is
5626 pragma Assert
(False
5627 or else NT
(N
).Nkind
in N_Subexpr
);
5629 end Set_Is_Static_Expression
;
5631 procedure Set_Is_Subprogram_Descriptor
5632 (N
: Node_Id
; Val
: Boolean := True) is
5634 pragma Assert
(False
5635 or else NT
(N
).Nkind
= N_Object_Declaration
);
5636 Set_Flag16
(N
, Val
);
5637 end Set_Is_Subprogram_Descriptor
;
5639 procedure Set_Is_Task_Allocation_Block
5640 (N
: Node_Id
; Val
: Boolean := True) is
5642 pragma Assert
(False
5643 or else NT
(N
).Nkind
= N_Block_Statement
);
5645 end Set_Is_Task_Allocation_Block
;
5647 procedure Set_Is_Task_Body_Procedure
5648 (N
: Node_Id
; Val
: Boolean := True) is
5650 pragma Assert
(False
5651 or else NT
(N
).Nkind
= N_Subprogram_Body
5652 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5654 end Set_Is_Task_Body_Procedure
;
5656 procedure Set_Is_Task_Master
5657 (N
: Node_Id
; Val
: Boolean := True) is
5659 pragma Assert
(False
5660 or else NT
(N
).Nkind
= N_Block_Statement
5661 or else NT
(N
).Nkind
= N_Subprogram_Body
5662 or else NT
(N
).Nkind
= N_Task_Body
);
5664 end Set_Is_Task_Master
;
5666 procedure Set_Is_Write
5667 (N
: Node_Id
; Val
: Boolean := True) is
5669 pragma Assert
(False
5670 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
5674 procedure Set_Iteration_Scheme
5675 (N
: Node_Id
; Val
: Node_Id
) is
5677 pragma Assert
(False
5678 or else NT
(N
).Nkind
= N_Loop_Statement
);
5679 Set_Node2_With_Parent
(N
, Val
);
5680 end Set_Iteration_Scheme
;
5682 procedure Set_Iterator_Specification
5683 (N
: Node_Id
; Val
: Node_Id
) is
5685 pragma Assert
(False
5686 or else NT
(N
).Nkind
= N_Iteration_Scheme
5687 or else NT
(N
).Nkind
= N_Quantified_Expression
5688 or else NT
(N
).Nkind
= N_Reduction_Expression
);
5689 Set_Node2_With_Parent
(N
, Val
);
5690 end Set_Iterator_Specification
;
5693 (N
: Node_Id
; Val
: Entity_Id
) is
5695 pragma Assert
(False
5696 or else NT
(N
).Nkind
= N_Itype_Reference
);
5697 Set_Node1
(N
, Val
); -- no parent, semantic field
5700 procedure Set_Kill_Range_Check
5701 (N
: Node_Id
; Val
: Boolean := True) is
5703 pragma Assert
(False
5704 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5705 Set_Flag11
(N
, Val
);
5706 end Set_Kill_Range_Check
;
5708 procedure Set_Label_Construct
5709 (N
: Node_Id
; Val
: Node_Id
) is
5711 pragma Assert
(False
5712 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5713 Set_Node2
(N
, Val
); -- semantic field, no parent set
5714 end Set_Label_Construct
;
5716 procedure Set_Last_Bit
5717 (N
: Node_Id
; Val
: Node_Id
) is
5719 pragma Assert
(False
5720 or else NT
(N
).Nkind
= N_Component_Clause
);
5721 Set_Node4_With_Parent
(N
, Val
);
5724 procedure Set_Last_Name
5725 (N
: Node_Id
; Val
: Boolean := True) is
5727 pragma Assert
(False
5728 or else NT
(N
).Nkind
= N_With_Clause
);
5732 procedure Set_Left_Opnd
5733 (N
: Node_Id
; Val
: Node_Id
) is
5735 pragma Assert
(False
5736 or else NT
(N
).Nkind
= N_And_Then
5737 or else NT
(N
).Nkind
= N_In
5738 or else NT
(N
).Nkind
= N_Not_In
5739 or else NT
(N
).Nkind
= N_Or_Else
5740 or else NT
(N
).Nkind
in N_Binary_Op
);
5741 Set_Node2_With_Parent
(N
, Val
);
5744 procedure Set_Library_Unit
5745 (N
: Node_Id
; Val
: Node_Id
) is
5747 pragma Assert
(False
5748 or else NT
(N
).Nkind
= N_Compilation_Unit
5749 or else NT
(N
).Nkind
= N_Package_Body_Stub
5750 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5751 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5752 or else NT
(N
).Nkind
= N_Task_Body_Stub
5753 or else NT
(N
).Nkind
= N_With_Clause
);
5754 Set_Node4
(N
, Val
); -- semantic field, no parent set
5755 end Set_Library_Unit
;
5757 procedure Set_Limited_View_Installed
5758 (N
: Node_Id
; Val
: Boolean := True) is
5760 pragma Assert
(False
5761 or else NT
(N
).Nkind
= N_Package_Specification
5762 or else NT
(N
).Nkind
= N_With_Clause
);
5763 Set_Flag18
(N
, Val
);
5764 end Set_Limited_View_Installed
;
5766 procedure Set_Limited_Present
5767 (N
: Node_Id
; Val
: Boolean := True) is
5769 pragma Assert
(False
5770 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5771 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5772 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5773 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5774 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5775 or else NT
(N
).Nkind
= N_Record_Definition
5776 or else NT
(N
).Nkind
= N_With_Clause
);
5777 Set_Flag17
(N
, Val
);
5778 end Set_Limited_Present
;
5780 procedure Set_Literals
5781 (N
: Node_Id
; Val
: List_Id
) is
5783 pragma Assert
(False
5784 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5785 Set_List1_With_Parent
(N
, Val
);
5788 procedure Set_Local_Raise_Not_OK
5789 (N
: Node_Id
; Val
: Boolean := True) is
5791 pragma Assert
(False
5792 or else NT
(N
).Nkind
= N_Exception_Handler
);
5794 end Set_Local_Raise_Not_OK
;
5796 procedure Set_Local_Raise_Statements
5797 (N
: Node_Id
; Val
: Elist_Id
) is
5799 pragma Assert
(False
5800 or else NT
(N
).Nkind
= N_Exception_Handler
);
5801 Set_Elist1
(N
, Val
);
5802 end Set_Local_Raise_Statements
;
5804 procedure Set_Loop_Actions
5805 (N
: Node_Id
; Val
: List_Id
) is
5807 pragma Assert
(False
5808 or else NT
(N
).Nkind
= N_Component_Association
5809 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5810 Set_List2
(N
, Val
); -- semantic field, no parent set
5811 end Set_Loop_Actions
;
5813 procedure Set_Loop_Parameter_Specification
5814 (N
: Node_Id
; Val
: Node_Id
) is
5816 pragma Assert
(False
5817 or else NT
(N
).Nkind
= N_Iteration_Scheme
5818 or else NT
(N
).Nkind
= N_Quantified_Expression
5819 or else NT
(N
).Nkind
= N_Reduction_Expression
);
5820 Set_Node4_With_Parent
(N
, Val
);
5821 end Set_Loop_Parameter_Specification
;
5823 procedure Set_Low_Bound
5824 (N
: Node_Id
; Val
: Node_Id
) is
5826 pragma Assert
(False
5827 or else NT
(N
).Nkind
= N_Range
5828 or else NT
(N
).Nkind
= N_Real_Range_Specification
5829 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5830 Set_Node1_With_Parent
(N
, Val
);
5833 procedure Set_Mod_Clause
5834 (N
: Node_Id
; Val
: Node_Id
) is
5836 pragma Assert
(False
5837 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5838 Set_Node2_With_Parent
(N
, Val
);
5841 procedure Set_More_Ids
5842 (N
: Node_Id
; Val
: Boolean := True) is
5844 pragma Assert
(False
5845 or else NT
(N
).Nkind
= N_Component_Declaration
5846 or else NT
(N
).Nkind
= N_Discriminant_Specification
5847 or else NT
(N
).Nkind
= N_Exception_Declaration
5848 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5849 or else NT
(N
).Nkind
= N_Number_Declaration
5850 or else NT
(N
).Nkind
= N_Object_Declaration
5851 or else NT
(N
).Nkind
= N_Parameter_Specification
5852 or else NT
(N
).Nkind
= N_Use_Package_Clause
5853 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5857 procedure Set_Must_Be_Byte_Aligned
5858 (N
: Node_Id
; Val
: Boolean := True) is
5860 pragma Assert
(False
5861 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5862 Set_Flag14
(N
, Val
);
5863 end Set_Must_Be_Byte_Aligned
;
5865 procedure Set_Must_Not_Freeze
5866 (N
: Node_Id
; Val
: Boolean := True) is
5868 pragma Assert
(False
5869 or else NT
(N
).Nkind
= N_Subtype_Indication
5870 or else NT
(N
).Nkind
in N_Subexpr
);
5872 end Set_Must_Not_Freeze
;
5874 procedure Set_Must_Not_Override
5875 (N
: Node_Id
; Val
: Boolean := True) is
5877 pragma Assert
(False
5878 or else NT
(N
).Nkind
= N_Entry_Declaration
5879 or else NT
(N
).Nkind
= N_Function_Instantiation
5880 or else NT
(N
).Nkind
= N_Function_Specification
5881 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5882 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5883 Set_Flag15
(N
, Val
);
5884 end Set_Must_Not_Override
;
5886 procedure Set_Must_Override
5887 (N
: Node_Id
; Val
: Boolean := True) is
5889 pragma Assert
(False
5890 or else NT
(N
).Nkind
= N_Entry_Declaration
5891 or else NT
(N
).Nkind
= N_Function_Instantiation
5892 or else NT
(N
).Nkind
= N_Function_Specification
5893 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5894 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5895 Set_Flag14
(N
, Val
);
5896 end Set_Must_Override
;
5899 (N
: Node_Id
; Val
: Node_Id
) is
5901 pragma Assert
(False
5902 or else NT
(N
).Nkind
= N_Assignment_Statement
5903 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5904 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5905 or else NT
(N
).Nkind
= N_Designator
5906 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5907 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5908 or else NT
(N
).Nkind
= N_Exit_Statement
5909 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5910 or else NT
(N
).Nkind
= N_Function_Call
5911 or else NT
(N
).Nkind
= N_Function_Instantiation
5912 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5913 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5914 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5915 or else NT
(N
).Nkind
= N_Goto_Statement
5916 or else NT
(N
).Nkind
= N_Iterator_Specification
5917 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5918 or else NT
(N
).Nkind
= N_Package_Instantiation
5919 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5920 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5921 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5922 or else NT
(N
).Nkind
= N_Raise_Expression
5923 or else NT
(N
).Nkind
= N_Raise_Statement
5924 or else NT
(N
).Nkind
= N_Requeue_Statement
5925 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5926 or else NT
(N
).Nkind
= N_Subunit
5927 or else NT
(N
).Nkind
= N_Use_Package_Clause
5928 or else NT
(N
).Nkind
= N_Variant_Part
5929 or else NT
(N
).Nkind
= N_With_Clause
);
5930 Set_Node2_With_Parent
(N
, Val
);
5934 (N
: Node_Id
; Val
: List_Id
) is
5936 pragma Assert
(False
5937 or else NT
(N
).Nkind
= N_Abort_Statement
);
5938 Set_List2_With_Parent
(N
, Val
);
5941 procedure Set_Next_Entity
5942 (N
: Node_Id
; Val
: Node_Id
) is
5944 pragma Assert
(False
5945 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5946 or else NT
(N
).Nkind
= N_Defining_Identifier
5947 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5948 Set_Node2
(N
, Val
); -- semantic field, no parent set
5949 end Set_Next_Entity
;
5951 procedure Set_Next_Exit_Statement
5952 (N
: Node_Id
; Val
: Node_Id
) is
5954 pragma Assert
(False
5955 or else NT
(N
).Nkind
= N_Exit_Statement
);
5956 Set_Node3
(N
, Val
); -- semantic field, no parent set
5957 end Set_Next_Exit_Statement
;
5959 procedure Set_Next_Implicit_With
5960 (N
: Node_Id
; Val
: Node_Id
) is
5962 pragma Assert
(False
5963 or else NT
(N
).Nkind
= N_With_Clause
);
5964 Set_Node3
(N
, Val
); -- semantic field, no parent set
5965 end Set_Next_Implicit_With
;
5967 procedure Set_Next_Named_Actual
5968 (N
: Node_Id
; Val
: Node_Id
) is
5970 pragma Assert
(False
5971 or else NT
(N
).Nkind
= N_Parameter_Association
);
5972 Set_Node4
(N
, Val
); -- semantic field, no parent set
5973 end Set_Next_Named_Actual
;
5975 procedure Set_Next_Pragma
5976 (N
: Node_Id
; Val
: Node_Id
) is
5978 pragma Assert
(False
5979 or else NT
(N
).Nkind
= N_Pragma
);
5980 Set_Node1
(N
, Val
); -- semantic field, no parent set
5981 end Set_Next_Pragma
;
5983 procedure Set_Next_Rep_Item
5984 (N
: Node_Id
; Val
: Node_Id
) is
5986 pragma Assert
(False
5987 or else NT
(N
).Nkind
= N_Aspect_Specification
5988 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5989 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5990 or else NT
(N
).Nkind
= N_Pragma
5991 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5992 Set_Node5
(N
, Val
); -- semantic field, no parent set
5993 end Set_Next_Rep_Item
;
5995 procedure Set_Next_Use_Clause
5996 (N
: Node_Id
; Val
: Node_Id
) is
5998 pragma Assert
(False
5999 or else NT
(N
).Nkind
= N_Use_Package_Clause
6000 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6001 Set_Node3
(N
, Val
); -- semantic field, no parent set
6002 end Set_Next_Use_Clause
;
6004 procedure Set_No_Ctrl_Actions
6005 (N
: Node_Id
; Val
: Boolean := True) is
6007 pragma Assert
(False
6008 or else NT
(N
).Nkind
= N_Assignment_Statement
);
6010 end Set_No_Ctrl_Actions
;
6012 procedure Set_No_Elaboration_Check
6013 (N
: Node_Id
; Val
: Boolean := True) is
6015 pragma Assert
(False
6016 or else NT
(N
).Nkind
= N_Function_Call
6017 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6019 end Set_No_Elaboration_Check
;
6021 procedure Set_No_Entities_Ref_In_Spec
6022 (N
: Node_Id
; Val
: Boolean := True) is
6024 pragma Assert
(False
6025 or else NT
(N
).Nkind
= N_With_Clause
);
6027 end Set_No_Entities_Ref_In_Spec
;
6029 procedure Set_No_Initialization
6030 (N
: Node_Id
; Val
: Boolean := True) is
6032 pragma Assert
(False
6033 or else NT
(N
).Nkind
= N_Allocator
6034 or else NT
(N
).Nkind
= N_Object_Declaration
);
6035 Set_Flag13
(N
, Val
);
6036 end Set_No_Initialization
;
6038 procedure Set_No_Minimize_Eliminate
6039 (N
: Node_Id
; Val
: Boolean := True) is
6041 pragma Assert
(False
6042 or else NT
(N
).Nkind
= N_In
6043 or else NT
(N
).Nkind
= N_Not_In
);
6044 Set_Flag17
(N
, Val
);
6045 end Set_No_Minimize_Eliminate
;
6047 procedure Set_No_Side_Effect_Removal
6048 (N
: Node_Id
; Val
: Boolean := True) is
6050 pragma Assert
(False
6051 or else NT
(N
).Nkind
= N_Function_Call
);
6052 Set_Flag17
(N
, Val
);
6053 end Set_No_Side_Effect_Removal
;
6055 procedure Set_No_Truncation
6056 (N
: Node_Id
; Val
: Boolean := True) is
6058 pragma Assert
(False
6059 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6060 Set_Flag17
(N
, Val
);
6061 end Set_No_Truncation
;
6063 procedure Set_Null_Excluding_Subtype
6064 (N
: Node_Id
; Val
: Boolean := True) is
6066 pragma Assert
(False
6067 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
6068 Set_Flag16
(N
, Val
);
6069 end Set_Null_Excluding_Subtype
;
6071 procedure Set_Null_Exclusion_Present
6072 (N
: Node_Id
; Val
: Boolean := True) is
6074 pragma Assert
(False
6075 or else NT
(N
).Nkind
= N_Access_Definition
6076 or else NT
(N
).Nkind
= N_Access_Function_Definition
6077 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6078 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6079 or else NT
(N
).Nkind
= N_Allocator
6080 or else NT
(N
).Nkind
= N_Component_Definition
6081 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6082 or else NT
(N
).Nkind
= N_Discriminant_Specification
6083 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6084 or else NT
(N
).Nkind
= N_Function_Specification
6085 or else NT
(N
).Nkind
= N_Object_Declaration
6086 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6087 or else NT
(N
).Nkind
= N_Parameter_Specification
6088 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6089 Set_Flag11
(N
, Val
);
6090 end Set_Null_Exclusion_Present
;
6092 procedure Set_Null_Exclusion_In_Return_Present
6093 (N
: Node_Id
; Val
: Boolean := True) is
6095 pragma Assert
(False
6096 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6097 Set_Flag14
(N
, Val
);
6098 end Set_Null_Exclusion_In_Return_Present
;
6100 procedure Set_Null_Present
6101 (N
: Node_Id
; Val
: Boolean := True) is
6103 pragma Assert
(False
6104 or else NT
(N
).Nkind
= N_Component_List
6105 or else NT
(N
).Nkind
= N_Procedure_Specification
6106 or else NT
(N
).Nkind
= N_Record_Definition
);
6107 Set_Flag13
(N
, Val
);
6108 end Set_Null_Present
;
6110 procedure Set_Null_Record_Present
6111 (N
: Node_Id
; Val
: Boolean := True) is
6113 pragma Assert
(False
6114 or else NT
(N
).Nkind
= N_Aggregate
6115 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6116 Set_Flag17
(N
, Val
);
6117 end Set_Null_Record_Present
;
6119 procedure Set_Null_Statement
6120 (N
: Node_Id
; Val
: Node_Id
) is
6122 pragma Assert
(False
6123 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6125 end Set_Null_Statement
;
6127 procedure Set_Object_Definition
6128 (N
: Node_Id
; Val
: Node_Id
) is
6130 pragma Assert
(False
6131 or else NT
(N
).Nkind
= N_Object_Declaration
);
6132 Set_Node4_With_Parent
(N
, Val
);
6133 end Set_Object_Definition
;
6135 procedure Set_Of_Present
6136 (N
: Node_Id
; Val
: Boolean := True) is
6138 pragma Assert
(False
6139 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6140 Set_Flag16
(N
, Val
);
6143 procedure Set_Original_Discriminant
6144 (N
: Node_Id
; Val
: Node_Id
) is
6146 pragma Assert
(False
6147 or else NT
(N
).Nkind
= N_Identifier
);
6148 Set_Node2
(N
, Val
); -- semantic field, no parent set
6149 end Set_Original_Discriminant
;
6151 procedure Set_Original_Entity
6152 (N
: Node_Id
; Val
: Entity_Id
) is
6154 pragma Assert
(False
6155 or else NT
(N
).Nkind
= N_Integer_Literal
6156 or else NT
(N
).Nkind
= N_Real_Literal
);
6157 Set_Node2
(N
, Val
); -- semantic field, no parent set
6158 end Set_Original_Entity
;
6160 procedure Set_Others_Discrete_Choices
6161 (N
: Node_Id
; Val
: List_Id
) is
6163 pragma Assert
(False
6164 or else NT
(N
).Nkind
= N_Others_Choice
);
6165 Set_List1_With_Parent
(N
, Val
);
6166 end Set_Others_Discrete_Choices
;
6168 procedure Set_Out_Present
6169 (N
: Node_Id
; Val
: Boolean := True) is
6171 pragma Assert
(False
6172 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6173 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6174 Set_Flag17
(N
, Val
);
6175 end Set_Out_Present
;
6177 procedure Set_Parameter_Associations
6178 (N
: Node_Id
; Val
: List_Id
) is
6180 pragma Assert
(False
6181 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6182 or else NT
(N
).Nkind
= N_Function_Call
6183 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6184 Set_List3_With_Parent
(N
, Val
);
6185 end Set_Parameter_Associations
;
6187 procedure Set_Parameter_Specifications
6188 (N
: Node_Id
; Val
: List_Id
) is
6190 pragma Assert
(False
6191 or else NT
(N
).Nkind
= N_Accept_Statement
6192 or else NT
(N
).Nkind
= N_Access_Function_Definition
6193 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6194 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6195 or else NT
(N
).Nkind
= N_Entry_Declaration
6196 or else NT
(N
).Nkind
= N_Function_Specification
6197 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6198 Set_List3_With_Parent
(N
, Val
);
6199 end Set_Parameter_Specifications
;
6201 procedure Set_Parameter_Type
6202 (N
: Node_Id
; Val
: Node_Id
) is
6204 pragma Assert
(False
6205 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6206 Set_Node2_With_Parent
(N
, Val
);
6207 end Set_Parameter_Type
;
6209 procedure Set_Parent_Spec
6210 (N
: Node_Id
; Val
: Node_Id
) is
6212 pragma Assert
(False
6213 or else NT
(N
).Nkind
= N_Function_Instantiation
6214 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6215 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6216 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6217 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6218 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6219 or else NT
(N
).Nkind
= N_Package_Declaration
6220 or else NT
(N
).Nkind
= N_Package_Instantiation
6221 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6222 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6223 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6224 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6225 Set_Node4
(N
, Val
); -- semantic field, no parent set
6226 end Set_Parent_Spec
;
6228 procedure Set_Parent_With
6229 (N
: Node_Id
; Val
: Boolean := True) is
6231 pragma Assert
(False
6232 or else NT
(N
).Nkind
= N_With_Clause
);
6234 end Set_Parent_With
;
6236 procedure Set_Position
6237 (N
: Node_Id
; Val
: Node_Id
) is
6239 pragma Assert
(False
6240 or else NT
(N
).Nkind
= N_Component_Clause
);
6241 Set_Node2_With_Parent
(N
, Val
);
6244 procedure Set_Pragma_Argument_Associations
6245 (N
: Node_Id
; Val
: List_Id
) is
6247 pragma Assert
(False
6248 or else NT
(N
).Nkind
= N_Pragma
);
6249 Set_List2_With_Parent
(N
, Val
);
6250 end Set_Pragma_Argument_Associations
;
6252 procedure Set_Pragma_Identifier
6253 (N
: Node_Id
; Val
: Node_Id
) is
6255 pragma Assert
(False
6256 or else NT
(N
).Nkind
= N_Pragma
);
6257 Set_Node4_With_Parent
(N
, Val
);
6258 end Set_Pragma_Identifier
;
6260 procedure Set_Pragmas_After
6261 (N
: Node_Id
; Val
: List_Id
) is
6263 pragma Assert
(False
6264 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6265 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6266 Set_List5_With_Parent
(N
, Val
);
6267 end Set_Pragmas_After
;
6269 procedure Set_Pragmas_Before
6270 (N
: Node_Id
; Val
: List_Id
) is
6272 pragma Assert
(False
6273 or else NT
(N
).Nkind
= N_Accept_Alternative
6274 or else NT
(N
).Nkind
= N_Delay_Alternative
6275 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6276 or else NT
(N
).Nkind
= N_Mod_Clause
6277 or else NT
(N
).Nkind
= N_Terminate_Alternative
6278 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6279 Set_List4_With_Parent
(N
, Val
);
6280 end Set_Pragmas_Before
;
6282 procedure Set_Pre_Post_Conditions
6283 (N
: Node_Id
; Val
: Node_Id
) is
6285 pragma Assert
(False
6286 or else NT
(N
).Nkind
= N_Contract
);
6287 Set_Node1
(N
, Val
); -- semantic field, no parent set
6288 end Set_Pre_Post_Conditions
;
6290 procedure Set_Prefix
6291 (N
: Node_Id
; Val
: Node_Id
) is
6293 pragma Assert
(False
6294 or else NT
(N
).Nkind
= N_Attribute_Reference
6295 or else NT
(N
).Nkind
= N_Expanded_Name
6296 or else NT
(N
).Nkind
= N_Explicit_Dereference
6297 or else NT
(N
).Nkind
= N_Indexed_Component
6298 or else NT
(N
).Nkind
= N_Reference
6299 or else NT
(N
).Nkind
= N_Selected_Component
6300 or else NT
(N
).Nkind
= N_Slice
);
6301 Set_Node3_With_Parent
(N
, Val
);
6304 procedure Set_Premature_Use
6305 (N
: Node_Id
; Val
: Node_Id
) is
6307 pragma Assert
(False
6308 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6310 end Set_Premature_Use
;
6312 procedure Set_Present_Expr
6313 (N
: Node_Id
; Val
: Uint
) is
6315 pragma Assert
(False
6316 or else NT
(N
).Nkind
= N_Variant
);
6318 end Set_Present_Expr
;
6320 procedure Set_Prev_Ids
6321 (N
: Node_Id
; Val
: Boolean := True) is
6323 pragma Assert
(False
6324 or else NT
(N
).Nkind
= N_Component_Declaration
6325 or else NT
(N
).Nkind
= N_Discriminant_Specification
6326 or else NT
(N
).Nkind
= N_Exception_Declaration
6327 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6328 or else NT
(N
).Nkind
= N_Number_Declaration
6329 or else NT
(N
).Nkind
= N_Object_Declaration
6330 or else NT
(N
).Nkind
= N_Parameter_Specification
6331 or else NT
(N
).Nkind
= N_Use_Package_Clause
6332 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6336 procedure Set_Prev_Use_Clause
6337 (N
: Node_Id
; Val
: Node_Id
) is
6339 pragma Assert
(False
6340 or else NT
(N
).Nkind
= N_Use_Package_Clause
6341 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6342 Set_Node1
(N
, Val
); -- semantic field, no parent set
6343 end Set_Prev_Use_Clause
;
6345 procedure Set_Print_In_Hex
6346 (N
: Node_Id
; Val
: Boolean := True) is
6348 pragma Assert
(False
6349 or else NT
(N
).Nkind
= N_Integer_Literal
);
6350 Set_Flag13
(N
, Val
);
6351 end Set_Print_In_Hex
;
6353 procedure Set_Private_Declarations
6354 (N
: Node_Id
; Val
: List_Id
) is
6356 pragma Assert
(False
6357 or else NT
(N
).Nkind
= N_Package_Specification
6358 or else NT
(N
).Nkind
= N_Protected_Definition
6359 or else NT
(N
).Nkind
= N_Task_Definition
);
6360 Set_List3_With_Parent
(N
, Val
);
6361 end Set_Private_Declarations
;
6363 procedure Set_Private_Present
6364 (N
: Node_Id
; Val
: Boolean := True) is
6366 pragma Assert
(False
6367 or else NT
(N
).Nkind
= N_Compilation_Unit
6368 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6369 or else NT
(N
).Nkind
= N_With_Clause
);
6370 Set_Flag15
(N
, Val
);
6371 end Set_Private_Present
;
6373 procedure Set_Procedure_To_Call
6374 (N
: Node_Id
; Val
: Node_Id
) is
6376 pragma Assert
(False
6377 or else NT
(N
).Nkind
= N_Allocator
6378 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6379 or else NT
(N
).Nkind
= N_Free_Statement
6380 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6381 Set_Node2
(N
, Val
); -- semantic field, no parent set
6382 end Set_Procedure_To_Call
;
6384 procedure Set_Proper_Body
6385 (N
: Node_Id
; Val
: Node_Id
) is
6387 pragma Assert
(False
6388 or else NT
(N
).Nkind
= N_Subunit
);
6389 Set_Node1_With_Parent
(N
, Val
);
6390 end Set_Proper_Body
;
6392 procedure Set_Protected_Definition
6393 (N
: Node_Id
; Val
: Node_Id
) is
6395 pragma Assert
(False
6396 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6397 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6398 Set_Node3_With_Parent
(N
, Val
);
6399 end Set_Protected_Definition
;
6401 procedure Set_Protected_Present
6402 (N
: Node_Id
; Val
: Boolean := True) is
6404 pragma Assert
(False
6405 or else NT
(N
).Nkind
= N_Access_Function_Definition
6406 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6407 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6408 or else NT
(N
).Nkind
= N_Record_Definition
);
6410 end Set_Protected_Present
;
6412 procedure Set_Raises_Constraint_Error
6413 (N
: Node_Id
; Val
: Boolean := True) is
6415 pragma Assert
(False
6416 or else NT
(N
).Nkind
in N_Subexpr
);
6418 end Set_Raises_Constraint_Error
;
6420 procedure Set_Range_Constraint
6421 (N
: Node_Id
; Val
: Node_Id
) is
6423 pragma Assert
(False
6424 or else NT
(N
).Nkind
= N_Delta_Constraint
6425 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6426 Set_Node4_With_Parent
(N
, Val
);
6427 end Set_Range_Constraint
;
6429 procedure Set_Range_Expression
6430 (N
: Node_Id
; Val
: Node_Id
) is
6432 pragma Assert
(False
6433 or else NT
(N
).Nkind
= N_Range_Constraint
);
6434 Set_Node4_With_Parent
(N
, Val
);
6435 end Set_Range_Expression
;
6437 procedure Set_Real_Range_Specification
6438 (N
: Node_Id
; Val
: Node_Id
) is
6440 pragma Assert
(False
6441 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6442 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6443 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6444 Set_Node4_With_Parent
(N
, Val
);
6445 end Set_Real_Range_Specification
;
6447 procedure Set_Realval
6448 (N
: Node_Id
; Val
: Ureal
) is
6450 pragma Assert
(False
6451 or else NT
(N
).Nkind
= N_Real_Literal
);
6452 Set_Ureal3
(N
, Val
);
6455 procedure Set_Reason
6456 (N
: Node_Id
; Val
: Uint
) is
6458 pragma Assert
(False
6459 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6460 or else NT
(N
).Nkind
= N_Raise_Program_Error
6461 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6465 procedure Set_Record_Extension_Part
6466 (N
: Node_Id
; Val
: Node_Id
) is
6468 pragma Assert
(False
6469 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6470 Set_Node3_With_Parent
(N
, Val
);
6471 end Set_Record_Extension_Part
;
6473 procedure Set_Redundant_Use
6474 (N
: Node_Id
; Val
: Boolean := True) is
6476 pragma Assert
(False
6477 or else NT
(N
).Nkind
= N_Attribute_Reference
6478 or else NT
(N
).Nkind
= N_Expanded_Name
6479 or else NT
(N
).Nkind
= N_Identifier
);
6480 Set_Flag13
(N
, Val
);
6481 end Set_Redundant_Use
;
6483 procedure Set_Renaming_Exception
6484 (N
: Node_Id
; Val
: Node_Id
) is
6486 pragma Assert
(False
6487 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6489 end Set_Renaming_Exception
;
6491 procedure Set_Result_Definition
6492 (N
: Node_Id
; Val
: Node_Id
) is
6494 pragma Assert
(False
6495 or else NT
(N
).Nkind
= N_Access_Function_Definition
6496 or else NT
(N
).Nkind
= N_Function_Specification
);
6497 Set_Node4_With_Parent
(N
, Val
);
6498 end Set_Result_Definition
;
6500 procedure Set_Return_Object_Declarations
6501 (N
: Node_Id
; Val
: List_Id
) is
6503 pragma Assert
(False
6504 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6505 Set_List3_With_Parent
(N
, Val
);
6506 end Set_Return_Object_Declarations
;
6508 procedure Set_Return_Statement_Entity
6509 (N
: Node_Id
; Val
: Node_Id
) is
6511 pragma Assert
(False
6512 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6513 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6514 Set_Node5
(N
, Val
); -- semantic field, no parent set
6515 end Set_Return_Statement_Entity
;
6517 procedure Set_Reverse_Present
6518 (N
: Node_Id
; Val
: Boolean := True) is
6520 pragma Assert
(False
6521 or else NT
(N
).Nkind
= N_Iterator_Specification
6522 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6523 Set_Flag15
(N
, Val
);
6524 end Set_Reverse_Present
;
6526 procedure Set_Right_Opnd
6527 (N
: Node_Id
; Val
: Node_Id
) is
6529 pragma Assert
(False
6530 or else NT
(N
).Nkind
in N_Op
6531 or else NT
(N
).Nkind
= N_And_Then
6532 or else NT
(N
).Nkind
= N_In
6533 or else NT
(N
).Nkind
= N_Not_In
6534 or else NT
(N
).Nkind
= N_Or_Else
);
6535 Set_Node3_With_Parent
(N
, Val
);
6538 procedure Set_Rounded_Result
6539 (N
: Node_Id
; Val
: Boolean := True) is
6541 pragma Assert
(False
6542 or else NT
(N
).Nkind
= N_Op_Divide
6543 or else NT
(N
).Nkind
= N_Op_Multiply
6544 or else NT
(N
).Nkind
= N_Type_Conversion
);
6545 Set_Flag18
(N
, Val
);
6546 end Set_Rounded_Result
;
6548 procedure Set_SCIL_Controlling_Tag
6549 (N
: Node_Id
; Val
: Node_Id
) is
6551 pragma Assert
(False
6552 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6553 Set_Node5
(N
, Val
); -- semantic field, no parent set
6554 end Set_SCIL_Controlling_Tag
;
6556 procedure Set_SCIL_Entity
6557 (N
: Node_Id
; Val
: Node_Id
) is
6559 pragma Assert
(False
6560 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6561 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6562 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6563 Set_Node4
(N
, Val
); -- semantic field, no parent set
6564 end Set_SCIL_Entity
;
6566 procedure Set_SCIL_Tag_Value
6567 (N
: Node_Id
; Val
: Node_Id
) is
6569 pragma Assert
(False
6570 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6571 Set_Node5
(N
, Val
); -- semantic field, no parent set
6572 end Set_SCIL_Tag_Value
;
6574 procedure Set_SCIL_Target_Prim
6575 (N
: Node_Id
; Val
: Node_Id
) is
6577 pragma Assert
(False
6578 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6579 Set_Node2
(N
, Val
); -- semantic field, no parent set
6580 end Set_SCIL_Target_Prim
;
6583 (N
: Node_Id
; Val
: Node_Id
) is
6585 pragma Assert
(False
6586 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6587 or else NT
(N
).Nkind
= N_Defining_Identifier
6588 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6589 Set_Node3
(N
, Val
); -- semantic field, no parent set
6592 procedure Set_Select_Alternatives
6593 (N
: Node_Id
; Val
: List_Id
) is
6595 pragma Assert
(False
6596 or else NT
(N
).Nkind
= N_Selective_Accept
);
6597 Set_List1_With_Parent
(N
, Val
);
6598 end Set_Select_Alternatives
;
6600 procedure Set_Selector_Name
6601 (N
: Node_Id
; Val
: Node_Id
) is
6603 pragma Assert
(False
6604 or else NT
(N
).Nkind
= N_Expanded_Name
6605 or else NT
(N
).Nkind
= N_Generic_Association
6606 or else NT
(N
).Nkind
= N_Parameter_Association
6607 or else NT
(N
).Nkind
= N_Selected_Component
);
6608 Set_Node2_With_Parent
(N
, Val
);
6609 end Set_Selector_Name
;
6611 procedure Set_Selector_Names
6612 (N
: Node_Id
; Val
: List_Id
) is
6614 pragma Assert
(False
6615 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6616 Set_List1_With_Parent
(N
, Val
);
6617 end Set_Selector_Names
;
6619 procedure Set_Shift_Count_OK
6620 (N
: Node_Id
; Val
: Boolean := True) is
6622 pragma Assert
(False
6623 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6624 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6625 or else NT
(N
).Nkind
= N_Op_Shift_Left
6626 or else NT
(N
).Nkind
= N_Op_Shift_Right
6627 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6629 end Set_Shift_Count_OK
;
6631 procedure Set_Source_Type
6632 (N
: Node_Id
; Val
: Entity_Id
) is
6634 pragma Assert
(False
6635 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6636 Set_Node1
(N
, Val
); -- semantic field, no parent set
6637 end Set_Source_Type
;
6639 procedure Set_Specification
6640 (N
: Node_Id
; Val
: Node_Id
) is
6642 pragma Assert
(False
6643 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6644 or else NT
(N
).Nkind
= N_Expression_Function
6645 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6646 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6647 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6648 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6649 or else NT
(N
).Nkind
= N_Package_Declaration
6650 or else NT
(N
).Nkind
= N_Subprogram_Body
6651 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6652 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6653 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6654 Set_Node1_With_Parent
(N
, Val
);
6655 end Set_Specification
;
6657 procedure Set_Split_PPC
6658 (N
: Node_Id
; Val
: Boolean) is
6660 pragma Assert
(False
6661 or else NT
(N
).Nkind
= N_Aspect_Specification
6662 or else NT
(N
).Nkind
= N_Pragma
);
6663 Set_Flag17
(N
, Val
);
6666 procedure Set_Statements
6667 (N
: Node_Id
; Val
: List_Id
) is
6669 pragma Assert
(False
6670 or else NT
(N
).Nkind
= N_Abortable_Part
6671 or else NT
(N
).Nkind
= N_Accept_Alternative
6672 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6673 or else NT
(N
).Nkind
= N_Delay_Alternative
6674 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6675 or else NT
(N
).Nkind
= N_Exception_Handler
6676 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6677 or else NT
(N
).Nkind
= N_Loop_Statement
6678 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6679 Set_List3_With_Parent
(N
, Val
);
6682 procedure Set_Storage_Pool
6683 (N
: Node_Id
; Val
: Node_Id
) is
6685 pragma Assert
(False
6686 or else NT
(N
).Nkind
= N_Allocator
6687 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6688 or else NT
(N
).Nkind
= N_Free_Statement
6689 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6690 Set_Node1
(N
, Val
); -- semantic field, no parent set
6691 end Set_Storage_Pool
;
6693 procedure Set_Subpool_Handle_Name
6694 (N
: Node_Id
; Val
: Node_Id
) is
6696 pragma Assert
(False
6697 or else NT
(N
).Nkind
= N_Allocator
);
6698 Set_Node4_With_Parent
(N
, Val
);
6699 end Set_Subpool_Handle_Name
;
6701 procedure Set_Strval
6702 (N
: Node_Id
; Val
: String_Id
) is
6704 pragma Assert
(False
6705 or else NT
(N
).Nkind
= N_Operator_Symbol
6706 or else NT
(N
).Nkind
= N_String_Literal
);
6710 procedure Set_Subtype_Indication
6711 (N
: Node_Id
; Val
: Node_Id
) is
6713 pragma Assert
(False
6714 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6715 or else NT
(N
).Nkind
= N_Component_Definition
6716 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6717 or else NT
(N
).Nkind
= N_Iterator_Specification
6718 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6719 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6720 Set_Node5_With_Parent
(N
, Val
);
6721 end Set_Subtype_Indication
;
6723 procedure Set_Subtype_Mark
6724 (N
: Node_Id
; Val
: Node_Id
) is
6726 pragma Assert
(False
6727 or else NT
(N
).Nkind
= N_Access_Definition
6728 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6729 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6730 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6731 or else NT
(N
).Nkind
= N_Qualified_Expression
6732 or else NT
(N
).Nkind
= N_Subtype_Indication
6733 or else NT
(N
).Nkind
= N_Type_Conversion
6734 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6735 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6736 Set_Node4_With_Parent
(N
, Val
);
6737 end Set_Subtype_Mark
;
6739 procedure Set_Subtype_Marks
6740 (N
: Node_Id
; Val
: List_Id
) is
6742 pragma Assert
(False
6743 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6744 Set_List2_With_Parent
(N
, Val
);
6745 end Set_Subtype_Marks
;
6747 procedure Set_Suppress_Assignment_Checks
6748 (N
: Node_Id
; Val
: Boolean := True) is
6750 pragma Assert
(False
6751 or else NT
(N
).Nkind
= N_Assignment_Statement
6752 or else NT
(N
).Nkind
= N_Object_Declaration
);
6753 Set_Flag18
(N
, Val
);
6754 end Set_Suppress_Assignment_Checks
;
6756 procedure Set_Suppress_Loop_Warnings
6757 (N
: Node_Id
; Val
: Boolean := True) is
6759 pragma Assert
(False
6760 or else NT
(N
).Nkind
= N_Loop_Statement
);
6761 Set_Flag17
(N
, Val
);
6762 end Set_Suppress_Loop_Warnings
;
6764 procedure Set_Synchronized_Present
6765 (N
: Node_Id
; Val
: Boolean := True) is
6767 pragma Assert
(False
6768 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6769 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6770 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6771 or else NT
(N
).Nkind
= N_Record_Definition
);
6773 end Set_Synchronized_Present
;
6775 procedure Set_Tagged_Present
6776 (N
: Node_Id
; Val
: Boolean := True) is
6778 pragma Assert
(False
6779 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6780 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6781 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6782 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6783 or else NT
(N
).Nkind
= N_Record_Definition
);
6784 Set_Flag15
(N
, Val
);
6785 end Set_Tagged_Present
;
6787 procedure Set_Target
6788 (N
: Node_Id
; Val
: Entity_Id
) is
6790 pragma Assert
(False
6791 or else NT
(N
).Nkind
= N_Call_Marker
6792 or else NT
(N
).Nkind
= N_Variable_Reference_Marker
);
6793 Set_Node1
(N
, Val
); -- semantic field, no parent set
6796 procedure Set_Target_Type
6797 (N
: Node_Id
; Val
: Entity_Id
) is
6799 pragma Assert
(False
6800 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6801 Set_Node2
(N
, Val
); -- semantic field, no parent set
6802 end Set_Target_Type
;
6804 procedure Set_Task_Definition
6805 (N
: Node_Id
; Val
: Node_Id
) is
6807 pragma Assert
(False
6808 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6809 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6810 Set_Node3_With_Parent
(N
, Val
);
6811 end Set_Task_Definition
;
6813 procedure Set_Task_Present
6814 (N
: Node_Id
; Val
: Boolean := True) is
6816 pragma Assert
(False
6817 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6818 or else NT
(N
).Nkind
= N_Record_Definition
);
6820 end Set_Task_Present
;
6822 procedure Set_Then_Actions
6823 (N
: Node_Id
; Val
: List_Id
) is
6825 pragma Assert
(False
6826 or else NT
(N
).Nkind
= N_If_Expression
);
6827 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6828 end Set_Then_Actions
;
6830 procedure Set_Then_Statements
6831 (N
: Node_Id
; Val
: List_Id
) is
6833 pragma Assert
(False
6834 or else NT
(N
).Nkind
= N_Elsif_Part
6835 or else NT
(N
).Nkind
= N_If_Statement
);
6836 Set_List2_With_Parent
(N
, Val
);
6837 end Set_Then_Statements
;
6839 procedure Set_Treat_Fixed_As_Integer
6840 (N
: Node_Id
; Val
: Boolean := True) is
6842 pragma Assert
(False
6843 or else NT
(N
).Nkind
= N_Op_Divide
6844 or else NT
(N
).Nkind
= N_Op_Mod
6845 or else NT
(N
).Nkind
= N_Op_Multiply
6846 or else NT
(N
).Nkind
= N_Op_Rem
);
6847 Set_Flag14
(N
, Val
);
6848 end Set_Treat_Fixed_As_Integer
;
6850 procedure Set_Triggering_Alternative
6851 (N
: Node_Id
; Val
: Node_Id
) is
6853 pragma Assert
(False
6854 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6855 Set_Node1_With_Parent
(N
, Val
);
6856 end Set_Triggering_Alternative
;
6858 procedure Set_Triggering_Statement
6859 (N
: Node_Id
; Val
: Node_Id
) is
6861 pragma Assert
(False
6862 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6863 Set_Node1_With_Parent
(N
, Val
);
6864 end Set_Triggering_Statement
;
6866 procedure Set_TSS_Elist
6867 (N
: Node_Id
; Val
: Elist_Id
) is
6869 pragma Assert
(False
6870 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6871 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6874 procedure Set_Uneval_Old_Accept
6875 (N
: Node_Id
; Val
: Boolean := True) is
6877 pragma Assert
(False
6878 or else NT
(N
).Nkind
= N_Pragma
);
6880 end Set_Uneval_Old_Accept
;
6882 procedure Set_Uneval_Old_Warn
6883 (N
: Node_Id
; Val
: Boolean := True) is
6885 pragma Assert
(False
6886 or else NT
(N
).Nkind
= N_Pragma
);
6887 Set_Flag18
(N
, Val
);
6888 end Set_Uneval_Old_Warn
;
6890 procedure Set_Type_Definition
6891 (N
: Node_Id
; Val
: Node_Id
) is
6893 pragma Assert
(False
6894 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6895 Set_Node3_With_Parent
(N
, Val
);
6896 end Set_Type_Definition
;
6899 (N
: Node_Id
; Val
: Node_Id
) is
6901 pragma Assert
(False
6902 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6903 Set_Node2_With_Parent
(N
, Val
);
6906 procedure Set_Unknown_Discriminants_Present
6907 (N
: Node_Id
; Val
: Boolean := True) is
6909 pragma Assert
(False
6910 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6911 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6912 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6913 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6914 Set_Flag13
(N
, Val
);
6915 end Set_Unknown_Discriminants_Present
;
6917 procedure Set_Unreferenced_In_Spec
6918 (N
: Node_Id
; Val
: Boolean := True) is
6920 pragma Assert
(False
6921 or else NT
(N
).Nkind
= N_With_Clause
);
6923 end Set_Unreferenced_In_Spec
;
6925 procedure Set_Variant_Part
6926 (N
: Node_Id
; Val
: Node_Id
) is
6928 pragma Assert
(False
6929 or else NT
(N
).Nkind
= N_Component_List
);
6930 Set_Node4_With_Parent
(N
, Val
);
6931 end Set_Variant_Part
;
6933 procedure Set_Variants
6934 (N
: Node_Id
; Val
: List_Id
) is
6936 pragma Assert
(False
6937 or else NT
(N
).Nkind
= N_Variant_Part
);
6938 Set_List1_With_Parent
(N
, Val
);
6941 procedure Set_Visible_Declarations
6942 (N
: Node_Id
; Val
: List_Id
) is
6944 pragma Assert
(False
6945 or else NT
(N
).Nkind
= N_Package_Specification
6946 or else NT
(N
).Nkind
= N_Protected_Definition
6947 or else NT
(N
).Nkind
= N_Task_Definition
);
6948 Set_List2_With_Parent
(N
, Val
);
6949 end Set_Visible_Declarations
;
6951 procedure Set_Uninitialized_Variable
6952 (N
: Node_Id
; Val
: Node_Id
) is
6954 pragma Assert
(False
6955 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6956 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6958 end Set_Uninitialized_Variable
;
6960 procedure Set_Used_Operations
6961 (N
: Node_Id
; Val
: Elist_Id
) is
6963 pragma Assert
(False
6964 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6965 Set_Elist2
(N
, Val
);
6966 end Set_Used_Operations
;
6968 procedure Set_Was_Attribute_Reference
6969 (N
: Node_Id
; Val
: Boolean := True) is
6971 pragma Assert
(False
6972 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6974 end Set_Was_Attribute_Reference
;
6976 procedure Set_Was_Expression_Function
6977 (N
: Node_Id
; Val
: Boolean := True) is
6979 pragma Assert
(False
6980 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6981 Set_Flag18
(N
, Val
);
6982 end Set_Was_Expression_Function
;
6984 procedure Set_Was_Originally_Stub
6985 (N
: Node_Id
; Val
: Boolean := True) is
6987 pragma Assert
(False
6988 or else NT
(N
).Nkind
= N_Package_Body
6989 or else NT
(N
).Nkind
= N_Protected_Body
6990 or else NT
(N
).Nkind
= N_Subprogram_Body
6991 or else NT
(N
).Nkind
= N_Task_Body
);
6992 Set_Flag13
(N
, Val
);
6993 end Set_Was_Originally_Stub
;
6995 procedure Set_Withed_Body
6996 (N
: Node_Id
; Val
: Node_Id
) is
6998 pragma Assert
(False
6999 or else NT
(N
).Nkind
= N_With_Clause
);
7001 end Set_Withed_Body
;
7003 -------------------------
7004 -- Iterator Procedures --
7005 -------------------------
7007 procedure Next_Entity
(N
: in out Node_Id
) is
7009 N
:= Next_Entity
(N
);
7012 procedure Next_Named_Actual
(N
: in out Node_Id
) is
7014 N
:= Next_Named_Actual
(N
);
7015 end Next_Named_Actual
;
7017 procedure Next_Rep_Item
(N
: in out Node_Id
) is
7019 N
:= Next_Rep_Item
(N
);
7022 procedure Next_Use_Clause
(N
: in out Node_Id
) is
7024 N
:= Next_Use_Clause
(N
);
7025 end Next_Use_Clause
;
7031 function End_Location
(N
: Node_Id
) return Source_Ptr
is
7032 L
: constant Uint
:= End_Span
(N
);
7037 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
7041 --------------------
7042 -- Get_Pragma_Arg --
7043 --------------------
7045 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
7047 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
7048 return Expression
(Arg
);
7054 ----------------------
7055 -- Set_End_Location --
7056 ----------------------
7058 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
7061 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
7062 end Set_End_Location
;
7071 V2
: Node_Kind
) return Boolean
7074 return T
= V1
or else
7082 V3
: Node_Kind
) return Boolean
7085 return T
= V1
or else
7095 V4
: Node_Kind
) return Boolean
7098 return T
= V1
or else
7110 V5
: Node_Kind
) return Boolean
7113 return T
= V1
or else
7127 V6
: Node_Kind
) return Boolean
7130 return T
= V1
or else
7146 V7
: Node_Kind
) return Boolean
7149 return T
= V1
or else
7167 V8
: Node_Kind
) return Boolean
7170 return T
= V1
or else
7190 V9
: Node_Kind
) return Boolean
7193 return T
= V1
or else
7215 V10
: Node_Kind
) return Boolean
7218 return T
= V1
or else
7242 V11
: Node_Kind
) return Boolean
7245 return T
= V1
or else
7262 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7264 return Chars
(Pragma_Identifier
(N
));
7265 end Pragma_Name_Unmapped
;
7267 ---------------------
7268 -- Map_Pragma_Name --
7269 ---------------------
7271 -- We don't want to introduce a dependence on some hash table package or
7272 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7273 -- search. Linear search is plenty efficient, given that we don't expect
7274 -- more than a couple of entries in the mapping.
7276 type Name_Pair
is record
7281 type Pragma_Map_Index
is range 1 .. 100;
7282 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7283 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7285 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7287 if Last_Pair
= Pragma_Map
'Last then
7288 raise Too_Many_Pragma_Mappings
;
7291 Last_Pair
:= Last_Pair
+ 1;
7292 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7293 end Map_Pragma_Name
;
7299 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7300 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7302 for J
in Pragma_Map
'First .. Last_Pair
loop
7303 if Result
= Pragma_Map
(J
).Key
then
7304 return Pragma_Map
(J
).Value
;