1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2017, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks
(All_Checks
);
33 -- No subprogram ordering check, due to logical grouping
35 with Atree
; use Atree
;
39 use Atree
.Unchecked_Access
;
40 -- This package is one of the few packages which is allowed to make direct
41 -- references to tree nodes (since it is in the business of providing a
42 -- higher level of tree access which other clients are expected to use and
43 -- which implements checks).
45 use Atree_Private_Part
;
46 -- The only reason that we ask for direct access to the private part of
47 -- the tree package is so that we can directly reference the Nkind field
48 -- of nodes table entries. We do this since it helps the efficiency of
49 -- the Sinfo debugging checks considerably (note that when we are checking
50 -- Nkind values, we don't need to check for a valid node reference, because
51 -- we will check that anyway when we reference the field).
53 NT
: Nodes
.Table_Ptr
renames Nodes
.Table
;
54 -- A short hand abbreviation, useful for the debugging checks
56 ----------------------------
57 -- Field Access Functions --
58 ----------------------------
60 -- Note: The use of Assert (False or else ...) is just a device to allow
61 -- uniform format of the conditions following this. Note that csinfo
62 -- expects this uniform format.
64 function Abort_Present
65 (N
: Node_Id
) return Boolean is
68 or else NT
(N
).Nkind
= N_Requeue_Statement
);
72 function Abortable_Part
73 (N
: Node_Id
) return Node_Id
is
76 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
80 function Abstract_Present
81 (N
: Node_Id
) return Boolean is
84 or else NT
(N
).Nkind
= N_Derived_Type_Definition
85 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
86 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
87 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
88 or else NT
(N
).Nkind
= N_Private_Type_Declaration
89 or else NT
(N
).Nkind
= N_Record_Definition
);
93 function Accept_Handler_Records
94 (N
: Node_Id
) return List_Id
is
97 or else NT
(N
).Nkind
= N_Accept_Alternative
);
99 end Accept_Handler_Records
;
101 function Accept_Statement
102 (N
: Node_Id
) return Node_Id
is
105 or else NT
(N
).Nkind
= N_Accept_Alternative
);
107 end Accept_Statement
;
109 function Access_Definition
110 (N
: Node_Id
) return Node_Id
is
113 or else NT
(N
).Nkind
= N_Component_Definition
114 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
115 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
117 end Access_Definition
;
119 function Access_To_Subprogram_Definition
120 (N
: Node_Id
) return Node_Id
is
123 or else NT
(N
).Nkind
= N_Access_Definition
);
125 end Access_To_Subprogram_Definition
;
127 function Access_Types_To_Process
128 (N
: Node_Id
) return Elist_Id
is
131 or else NT
(N
).Nkind
= N_Freeze_Entity
);
133 end Access_Types_To_Process
;
136 (N
: Node_Id
) return List_Id
is
139 or else NT
(N
).Nkind
= N_And_Then
140 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
141 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
142 or else NT
(N
).Nkind
= N_Compound_Statement
143 or else NT
(N
).Nkind
= N_Expression_With_Actions
144 or else NT
(N
).Nkind
= N_Freeze_Entity
145 or else NT
(N
).Nkind
= N_Or_Else
);
149 function Activation_Chain_Entity
150 (N
: Node_Id
) return Node_Id
is
153 or else NT
(N
).Nkind
= N_Block_Statement
154 or else NT
(N
).Nkind
= N_Entry_Body
155 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
156 or else NT
(N
).Nkind
= N_Package_Declaration
157 or else NT
(N
).Nkind
= N_Subprogram_Body
158 or else NT
(N
).Nkind
= N_Task_Body
);
160 end Activation_Chain_Entity
;
162 function Acts_As_Spec
163 (N
: Node_Id
) return Boolean is
166 or else NT
(N
).Nkind
= N_Compilation_Unit
167 or else NT
(N
).Nkind
= N_Subprogram_Body
);
171 function Actual_Designated_Subtype
172 (N
: Node_Id
) return Node_Id
is
175 or else NT
(N
).Nkind
= N_Explicit_Dereference
176 or else NT
(N
).Nkind
= N_Free_Statement
);
178 end Actual_Designated_Subtype
;
180 function Address_Warning_Posted
181 (N
: Node_Id
) return Boolean is
184 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
186 end Address_Warning_Posted
;
188 function Aggregate_Bounds
189 (N
: Node_Id
) return Node_Id
is
192 or else NT
(N
).Nkind
= N_Aggregate
);
194 end Aggregate_Bounds
;
196 function Aliased_Present
197 (N
: Node_Id
) return Boolean is
200 or else NT
(N
).Nkind
= N_Component_Definition
201 or else NT
(N
).Nkind
= N_Object_Declaration
202 or else NT
(N
).Nkind
= N_Parameter_Specification
);
206 function Alloc_For_BIP_Return
207 (N
: Node_Id
) return Boolean is
210 or else NT
(N
).Nkind
= N_Allocator
);
212 end Alloc_For_BIP_Return
;
215 (N
: Node_Id
) return Boolean is
218 or else NT
(N
).Nkind
= N_Others_Choice
);
223 (N
: Node_Id
) return Boolean is
226 or else NT
(N
).Nkind
= N_Access_Definition
227 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
228 or else NT
(N
).Nkind
= N_Quantified_Expression
229 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
233 function Alternatives
234 (N
: Node_Id
) return List_Id
is
237 or else NT
(N
).Nkind
= N_Case_Expression
238 or else NT
(N
).Nkind
= N_Case_Statement
239 or else NT
(N
).Nkind
= N_In
240 or else NT
(N
).Nkind
= N_Not_In
);
244 function Ancestor_Part
245 (N
: Node_Id
) return Node_Id
is
248 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
252 function Atomic_Sync_Required
253 (N
: Node_Id
) return Boolean is
256 or else NT
(N
).Nkind
= N_Expanded_Name
257 or else NT
(N
).Nkind
= N_Explicit_Dereference
258 or else NT
(N
).Nkind
= N_Identifier
259 or else NT
(N
).Nkind
= N_Indexed_Component
260 or else NT
(N
).Nkind
= N_Selected_Component
);
262 end Atomic_Sync_Required
;
264 function Array_Aggregate
265 (N
: Node_Id
) return Node_Id
is
268 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
272 function Aspect_Rep_Item
273 (N
: Node_Id
) return Node_Id
is
276 or else NT
(N
).Nkind
= N_Aspect_Specification
);
280 function Assignment_OK
281 (N
: Node_Id
) return Boolean is
284 or else NT
(N
).Nkind
= N_Object_Declaration
285 or else NT
(N
).Nkind
in N_Subexpr
);
289 function Associated_Node
290 (N
: Node_Id
) return Node_Id
is
293 or else NT
(N
).Nkind
in N_Has_Entity
294 or else NT
(N
).Nkind
= N_Aggregate
295 or else NT
(N
).Nkind
= N_Extension_Aggregate
296 or else NT
(N
).Nkind
= N_Selected_Component
297 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
302 (N
: Node_Id
) return Node_Id
is
305 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
309 function Attribute_Name
310 (N
: Node_Id
) return Name_Id
is
313 or else NT
(N
).Nkind
= N_Attribute_Reference
);
317 function Aux_Decls_Node
318 (N
: Node_Id
) return Node_Id
is
321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
325 function Backwards_OK
326 (N
: Node_Id
) return Boolean is
329 or else NT
(N
).Nkind
= N_Assignment_Statement
);
333 function Bad_Is_Detected
334 (N
: Node_Id
) return Boolean is
337 or else NT
(N
).Nkind
= N_Subprogram_Body
);
341 function Body_Required
342 (N
: Node_Id
) return Boolean is
345 or else NT
(N
).Nkind
= N_Compilation_Unit
);
349 function Body_To_Inline
350 (N
: Node_Id
) return Node_Id
is
353 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
358 (N
: Node_Id
) return Boolean is
361 or else NT
(N
).Nkind
= N_Component_Association
362 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
363 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
364 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
365 or else NT
(N
).Nkind
= N_Generic_Association
366 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
371 (N
: Node_Id
) return Boolean is
374 or else NT
(N
).Nkind
= N_Extended_Return_Statement
375 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
379 function Char_Literal_Value
380 (N
: Node_Id
) return Uint
is
383 or else NT
(N
).Nkind
= N_Character_Literal
);
385 end Char_Literal_Value
;
388 (N
: Node_Id
) return Name_Id
is
391 or else NT
(N
).Nkind
in N_Has_Chars
);
395 function Check_Address_Alignment
396 (N
: Node_Id
) return Boolean is
399 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
401 end Check_Address_Alignment
;
403 function Choice_Parameter
404 (N
: Node_Id
) return Node_Id
is
407 or else NT
(N
).Nkind
= N_Exception_Handler
);
409 end Choice_Parameter
;
412 (N
: Node_Id
) return List_Id
is
415 or else NT
(N
).Nkind
= N_Component_Association
);
419 function Class_Present
420 (N
: Node_Id
) return Boolean is
423 or else NT
(N
).Nkind
= N_Aspect_Specification
424 or else NT
(N
).Nkind
= N_Pragma
);
428 function Classifications
429 (N
: Node_Id
) return Node_Id
is
432 or else NT
(N
).Nkind
= N_Contract
);
436 function Cleanup_Actions
437 (N
: Node_Id
) return List_Id
is
440 or else NT
(N
).Nkind
= N_Block_Statement
);
444 function Comes_From_Extended_Return_Statement
445 (N
: Node_Id
) return Boolean is
448 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
450 end Comes_From_Extended_Return_Statement
;
452 function Compile_Time_Known_Aggregate
453 (N
: Node_Id
) return Boolean is
456 or else NT
(N
).Nkind
= N_Aggregate
);
458 end Compile_Time_Known_Aggregate
;
460 function Component_Associations
461 (N
: Node_Id
) return List_Id
is
464 or else NT
(N
).Nkind
= N_Aggregate
465 or else NT
(N
).Nkind
= N_Delta_Aggregate
466 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
468 end Component_Associations
;
470 function Component_Clauses
471 (N
: Node_Id
) return List_Id
is
474 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
476 end Component_Clauses
;
478 function Component_Definition
479 (N
: Node_Id
) return Node_Id
is
482 or else NT
(N
).Nkind
= N_Component_Declaration
483 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
484 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
486 end Component_Definition
;
488 function Component_Items
489 (N
: Node_Id
) return List_Id
is
492 or else NT
(N
).Nkind
= N_Component_List
);
496 function Component_List
497 (N
: Node_Id
) return Node_Id
is
500 or else NT
(N
).Nkind
= N_Record_Definition
501 or else NT
(N
).Nkind
= N_Variant
);
505 function Component_Name
506 (N
: Node_Id
) return Node_Id
is
509 or else NT
(N
).Nkind
= N_Component_Clause
);
513 function Componentwise_Assignment
514 (N
: Node_Id
) return Boolean is
517 or else NT
(N
).Nkind
= N_Assignment_Statement
);
519 end Componentwise_Assignment
;
522 (N
: Node_Id
) return Node_Id
is
525 or else NT
(N
).Nkind
= N_Accept_Alternative
526 or else NT
(N
).Nkind
= N_Delay_Alternative
527 or else NT
(N
).Nkind
= N_Elsif_Part
528 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
529 or else NT
(N
).Nkind
= N_Exit_Statement
530 or else NT
(N
).Nkind
= N_If_Statement
531 or else NT
(N
).Nkind
= N_Iteration_Scheme
532 or else NT
(N
).Nkind
= N_Quantified_Expression
533 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
534 or else NT
(N
).Nkind
= N_Raise_Program_Error
535 or else NT
(N
).Nkind
= N_Raise_Storage_Error
536 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
540 function Condition_Actions
541 (N
: Node_Id
) return List_Id
is
544 or else NT
(N
).Nkind
= N_Elsif_Part
545 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
547 end Condition_Actions
;
549 function Config_Pragmas
550 (N
: Node_Id
) return List_Id
is
553 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
557 function Constant_Present
558 (N
: Node_Id
) return Boolean is
561 or else NT
(N
).Nkind
= N_Access_Definition
562 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
563 or else NT
(N
).Nkind
= N_Object_Declaration
);
565 end Constant_Present
;
568 (N
: Node_Id
) return Node_Id
is
571 or else NT
(N
).Nkind
= N_Subtype_Indication
);
576 (N
: Node_Id
) return List_Id
is
579 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
583 function Context_Installed
584 (N
: Node_Id
) return Boolean is
587 or else NT
(N
).Nkind
= N_With_Clause
);
589 end Context_Installed
;
591 function Context_Items
592 (N
: Node_Id
) return List_Id
is
595 or else NT
(N
).Nkind
= N_Compilation_Unit
);
599 function Context_Pending
600 (N
: Node_Id
) return Boolean is
603 or else NT
(N
).Nkind
= N_Compilation_Unit
);
607 function Contract_Test_Cases
608 (N
: Node_Id
) return Node_Id
is
611 or else NT
(N
).Nkind
= N_Contract
);
613 end Contract_Test_Cases
;
615 function Controlling_Argument
616 (N
: Node_Id
) return Node_Id
is
619 or else NT
(N
).Nkind
= N_Function_Call
620 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
622 end Controlling_Argument
;
624 function Conversion_OK
625 (N
: Node_Id
) return Boolean is
628 or else NT
(N
).Nkind
= N_Type_Conversion
);
632 function Convert_To_Return_False
633 (N
: Node_Id
) return Boolean is
636 or else NT
(N
).Nkind
= N_Raise_Expression
);
638 end Convert_To_Return_False
;
640 function Corresponding_Aspect
641 (N
: Node_Id
) return Node_Id
is
644 or else NT
(N
).Nkind
= N_Pragma
);
646 end Corresponding_Aspect
;
648 function Corresponding_Body
649 (N
: Node_Id
) return Node_Id
is
652 or else NT
(N
).Nkind
= N_Entry_Declaration
653 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
654 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
655 or else NT
(N
).Nkind
= N_Package_Body_Stub
656 or else NT
(N
).Nkind
= N_Package_Declaration
657 or else NT
(N
).Nkind
= N_Protected_Body_Stub
658 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
659 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
660 or else NT
(N
).Nkind
= N_Subprogram_Declaration
661 or else NT
(N
).Nkind
= N_Task_Body_Stub
662 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
664 end Corresponding_Body
;
666 function Corresponding_Formal_Spec
667 (N
: Node_Id
) return Node_Id
is
670 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
672 end Corresponding_Formal_Spec
;
674 function Corresponding_Generic_Association
675 (N
: Node_Id
) return Node_Id
is
678 or else NT
(N
).Nkind
= N_Object_Declaration
679 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
681 end Corresponding_Generic_Association
;
683 function Corresponding_Integer_Value
684 (N
: Node_Id
) return Uint
is
687 or else NT
(N
).Nkind
= N_Real_Literal
);
689 end Corresponding_Integer_Value
;
691 function Corresponding_Spec
692 (N
: Node_Id
) return Entity_Id
is
695 or else NT
(N
).Nkind
= N_Expression_Function
696 or else NT
(N
).Nkind
= N_Package_Body
697 or else NT
(N
).Nkind
= N_Protected_Body
698 or else NT
(N
).Nkind
= N_Subprogram_Body
699 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
700 or else NT
(N
).Nkind
= N_Task_Body
701 or else NT
(N
).Nkind
= N_With_Clause
);
703 end Corresponding_Spec
;
705 function Corresponding_Spec_Of_Stub
706 (N
: Node_Id
) return Entity_Id
is
709 or else NT
(N
).Nkind
= N_Package_Body_Stub
710 or else NT
(N
).Nkind
= N_Protected_Body_Stub
711 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
712 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
714 end Corresponding_Spec_Of_Stub
;
716 function Corresponding_Stub
717 (N
: Node_Id
) return Node_Id
is
720 or else NT
(N
).Nkind
= N_Subunit
);
722 end Corresponding_Stub
;
724 function Dcheck_Function
725 (N
: Node_Id
) return Entity_Id
is
728 or else NT
(N
).Nkind
= N_Variant
);
732 function Declarations
733 (N
: Node_Id
) return List_Id
is
736 or else NT
(N
).Nkind
= N_Accept_Statement
737 or else NT
(N
).Nkind
= N_Block_Statement
738 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
739 or else NT
(N
).Nkind
= N_Entry_Body
740 or else NT
(N
).Nkind
= N_Package_Body
741 or else NT
(N
).Nkind
= N_Protected_Body
742 or else NT
(N
).Nkind
= N_Subprogram_Body
743 or else NT
(N
).Nkind
= N_Task_Body
);
747 function Default_Expression
748 (N
: Node_Id
) return Node_Id
is
751 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
752 or else NT
(N
).Nkind
= N_Parameter_Specification
);
754 end Default_Expression
;
756 function Default_Storage_Pool
757 (N
: Node_Id
) return Node_Id
is
760 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
762 end Default_Storage_Pool
;
764 function Default_Name
765 (N
: Node_Id
) return Node_Id
is
768 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
769 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
773 function Defining_Identifier
774 (N
: Node_Id
) return Entity_Id
is
777 or else NT
(N
).Nkind
= N_Component_Declaration
778 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
779 or else NT
(N
).Nkind
= N_Discriminant_Specification
780 or else NT
(N
).Nkind
= N_Entry_Body
781 or else NT
(N
).Nkind
= N_Entry_Declaration
782 or else NT
(N
).Nkind
= N_Entry_Index_Specification
783 or else NT
(N
).Nkind
= N_Exception_Declaration
784 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
785 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
786 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
787 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
788 or else NT
(N
).Nkind
= N_Full_Type_Declaration
789 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
790 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
791 or else NT
(N
).Nkind
= N_Iterated_Component_Association
792 or else NT
(N
).Nkind
= N_Iterator_Specification
793 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
794 or else NT
(N
).Nkind
= N_Number_Declaration
795 or else NT
(N
).Nkind
= N_Object_Declaration
796 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
797 or else NT
(N
).Nkind
= N_Package_Body_Stub
798 or else NT
(N
).Nkind
= N_Parameter_Specification
799 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
800 or else NT
(N
).Nkind
= N_Private_Type_Declaration
801 or else NT
(N
).Nkind
= N_Protected_Body
802 or else NT
(N
).Nkind
= N_Protected_Body_Stub
803 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
804 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
805 or else NT
(N
).Nkind
= N_Single_Task_Declaration
806 or else NT
(N
).Nkind
= N_Subtype_Declaration
807 or else NT
(N
).Nkind
= N_Task_Body
808 or else NT
(N
).Nkind
= N_Task_Body_Stub
809 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
811 end Defining_Identifier
;
813 function Defining_Unit_Name
814 (N
: Node_Id
) return Node_Id
is
817 or else NT
(N
).Nkind
= N_Function_Instantiation
818 or else NT
(N
).Nkind
= N_Function_Specification
819 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
820 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
821 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
822 or else NT
(N
).Nkind
= N_Package_Body
823 or else NT
(N
).Nkind
= N_Package_Instantiation
824 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
825 or else NT
(N
).Nkind
= N_Package_Specification
826 or else NT
(N
).Nkind
= N_Procedure_Instantiation
827 or else NT
(N
).Nkind
= N_Procedure_Specification
);
829 end Defining_Unit_Name
;
831 function Delay_Alternative
832 (N
: Node_Id
) return Node_Id
is
835 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
837 end Delay_Alternative
;
839 function Delay_Statement
840 (N
: Node_Id
) return Node_Id
is
843 or else NT
(N
).Nkind
= N_Delay_Alternative
);
847 function Delta_Expression
848 (N
: Node_Id
) return Node_Id
is
851 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
852 or else NT
(N
).Nkind
= N_Delta_Constraint
853 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
855 end Delta_Expression
;
857 function Digits_Expression
858 (N
: Node_Id
) return Node_Id
is
861 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
862 or else NT
(N
).Nkind
= N_Digits_Constraint
863 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
865 end Digits_Expression
;
867 function Discr_Check_Funcs_Built
868 (N
: Node_Id
) return Boolean is
871 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
873 end Discr_Check_Funcs_Built
;
875 function Discrete_Choices
876 (N
: Node_Id
) return List_Id
is
879 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
880 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
881 or else NT
(N
).Nkind
= N_Iterated_Component_Association
882 or else NT
(N
).Nkind
= N_Variant
);
884 end Discrete_Choices
;
886 function Discrete_Range
887 (N
: Node_Id
) return Node_Id
is
890 or else NT
(N
).Nkind
= N_Slice
);
894 function Discrete_Subtype_Definition
895 (N
: Node_Id
) return Node_Id
is
898 or else NT
(N
).Nkind
= N_Entry_Declaration
899 or else NT
(N
).Nkind
= N_Entry_Index_Specification
900 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
902 end Discrete_Subtype_Definition
;
904 function Discrete_Subtype_Definitions
905 (N
: Node_Id
) return List_Id
is
908 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
910 end Discrete_Subtype_Definitions
;
912 function Discriminant_Specifications
913 (N
: Node_Id
) return List_Id
is
916 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
917 or else NT
(N
).Nkind
= N_Full_Type_Declaration
918 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
919 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
920 or else NT
(N
).Nkind
= N_Private_Type_Declaration
921 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
922 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
924 end Discriminant_Specifications
;
926 function Discriminant_Type
927 (N
: Node_Id
) return Node_Id
is
930 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
932 end Discriminant_Type
;
934 function Do_Accessibility_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
= N_Parameter_Specification
);
940 end Do_Accessibility_Check
;
942 function Do_Discriminant_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Assignment_Statement
947 or else NT
(N
).Nkind
= N_Selected_Component
948 or else NT
(N
).Nkind
= N_Type_Conversion
);
950 end Do_Discriminant_Check
;
952 function Do_Division_Check
953 (N
: Node_Id
) return Boolean is
956 or else NT
(N
).Nkind
= N_Op_Divide
957 or else NT
(N
).Nkind
= N_Op_Mod
958 or else NT
(N
).Nkind
= N_Op_Rem
);
960 end Do_Division_Check
;
962 function Do_Length_Check
963 (N
: Node_Id
) return Boolean is
966 or else NT
(N
).Nkind
= N_Assignment_Statement
967 or else NT
(N
).Nkind
= N_Op_And
968 or else NT
(N
).Nkind
= N_Op_Or
969 or else NT
(N
).Nkind
= N_Op_Xor
970 or else NT
(N
).Nkind
= N_Type_Conversion
);
974 function Do_Overflow_Check
975 (N
: Node_Id
) return Boolean is
978 or else NT
(N
).Nkind
in N_Op
979 or else NT
(N
).Nkind
= N_Attribute_Reference
980 or else NT
(N
).Nkind
= N_Case_Expression
981 or else NT
(N
).Nkind
= N_If_Expression
982 or else NT
(N
).Nkind
= N_Type_Conversion
);
984 end Do_Overflow_Check
;
986 function Do_Range_Check
987 (N
: Node_Id
) return Boolean is
990 or else NT
(N
).Nkind
in N_Subexpr
);
994 function Do_Storage_Check
995 (N
: Node_Id
) return Boolean is
998 or else NT
(N
).Nkind
= N_Allocator
999 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1001 end Do_Storage_Check
;
1003 function Do_Tag_Check
1004 (N
: Node_Id
) return Boolean is
1006 pragma Assert
(False
1007 or else NT
(N
).Nkind
= N_Assignment_Statement
1008 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1009 or else NT
(N
).Nkind
= N_Function_Call
1010 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1011 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1012 or else NT
(N
).Nkind
= N_Type_Conversion
);
1016 function Elaborate_All_Desirable
1017 (N
: Node_Id
) return Boolean is
1019 pragma Assert
(False
1020 or else NT
(N
).Nkind
= N_With_Clause
);
1022 end Elaborate_All_Desirable
;
1024 function Elaborate_All_Present
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_All_Present
;
1032 function Elaborate_Desirable
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_Desirable
;
1040 function Elaborate_Present
1041 (N
: Node_Id
) return Boolean is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_With_Clause
);
1046 end Elaborate_Present
;
1048 function Else_Actions
1049 (N
: Node_Id
) return List_Id
is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_If_Expression
);
1056 function Else_Statements
1057 (N
: Node_Id
) return List_Id
is
1059 pragma Assert
(False
1060 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1061 or else NT
(N
).Nkind
= N_If_Statement
1062 or else NT
(N
).Nkind
= N_Selective_Accept
);
1064 end Else_Statements
;
1066 function Elsif_Parts
1067 (N
: Node_Id
) return List_Id
is
1069 pragma Assert
(False
1070 or else NT
(N
).Nkind
= N_If_Statement
);
1074 function Enclosing_Variant
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_Variant
);
1080 end Enclosing_Variant
;
1083 (N
: Node_Id
) return Node_Id
is
1085 pragma Assert
(False
1086 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1087 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1088 or else NT
(N
).Nkind
= N_Loop_Statement
1089 or else NT
(N
).Nkind
= N_Package_Specification
1090 or else NT
(N
).Nkind
= N_Protected_Body
1091 or else NT
(N
).Nkind
= N_Protected_Definition
1092 or else NT
(N
).Nkind
= N_Record_Definition
1093 or else NT
(N
).Nkind
= N_Task_Definition
);
1098 (N
: Node_Id
) return Uint
is
1100 pragma Assert
(False
1101 or else NT
(N
).Nkind
= N_Case_Statement
1102 or else NT
(N
).Nkind
= N_If_Statement
);
1107 (N
: Node_Id
) return Node_Id
is
1109 pragma Assert
(False
1110 or else NT
(N
).Nkind
in N_Has_Entity
1111 or else NT
(N
).Nkind
= N_Aspect_Specification
1112 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1113 or else NT
(N
).Nkind
= N_Freeze_Entity
1114 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1118 function Entity_Or_Associated_Node
1119 (N
: Node_Id
) return Node_Id
is
1121 pragma Assert
(False
1122 or else NT
(N
).Nkind
in N_Has_Entity
1123 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1125 end Entity_Or_Associated_Node
;
1127 function Entry_Body_Formal_Part
1128 (N
: Node_Id
) return Node_Id
is
1130 pragma Assert
(False
1131 or else NT
(N
).Nkind
= N_Entry_Body
);
1133 end Entry_Body_Formal_Part
;
1135 function Entry_Call_Alternative
1136 (N
: Node_Id
) return Node_Id
is
1138 pragma Assert
(False
1139 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1140 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1142 end Entry_Call_Alternative
;
1144 function Entry_Call_Statement
1145 (N
: Node_Id
) return Node_Id
is
1147 pragma Assert
(False
1148 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1150 end Entry_Call_Statement
;
1152 function Entry_Direct_Name
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Accept_Statement
);
1158 end Entry_Direct_Name
;
1160 function Entry_Index
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Accept_Statement
);
1168 function Entry_Index_Specification
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1174 end Entry_Index_Specification
;
1177 (N
: Node_Id
) return Node_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
in N_Has_Etype
);
1184 function Exception_Choices
1185 (N
: Node_Id
) return List_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
= N_Exception_Handler
);
1190 end Exception_Choices
;
1192 function Exception_Handlers
1193 (N
: Node_Id
) return List_Id
is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1198 end Exception_Handlers
;
1200 function Exception_Junk
1201 (N
: Node_Id
) return Boolean is
1203 pragma Assert
(False
1204 or else NT
(N
).Nkind
= N_Block_Statement
1205 or else NT
(N
).Nkind
= N_Goto_Statement
1206 or else NT
(N
).Nkind
= N_Label
1207 or else NT
(N
).Nkind
= N_Object_Declaration
1208 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1212 function Exception_Label
1213 (N
: Node_Id
) return Node_Id
is
1215 pragma Assert
(False
1216 or else NT
(N
).Nkind
= N_Exception_Handler
1217 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1218 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1219 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1221 end Exception_Label
;
1223 function Expansion_Delayed
1224 (N
: Node_Id
) return Boolean is
1226 pragma Assert
(False
1227 or else NT
(N
).Nkind
= N_Aggregate
1228 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1230 end Expansion_Delayed
;
1232 function Explicit_Actual_Parameter
1233 (N
: Node_Id
) return Node_Id
is
1235 pragma Assert
(False
1236 or else NT
(N
).Nkind
= N_Parameter_Association
);
1238 end Explicit_Actual_Parameter
;
1240 function Explicit_Generic_Actual_Parameter
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Generic_Association
);
1246 end Explicit_Generic_Actual_Parameter
;
1249 (N
: Node_Id
) return Node_Id
is
1251 pragma Assert
(False
1252 or else NT
(N
).Nkind
= N_Allocator
1253 or else NT
(N
).Nkind
= N_Aspect_Specification
1254 or else NT
(N
).Nkind
= N_Assignment_Statement
1255 or else NT
(N
).Nkind
= N_At_Clause
1256 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1257 or else NT
(N
).Nkind
= N_Case_Expression
1258 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1259 or else NT
(N
).Nkind
= N_Case_Statement
1260 or else NT
(N
).Nkind
= N_Code_Statement
1261 or else NT
(N
).Nkind
= N_Component_Association
1262 or else NT
(N
).Nkind
= N_Component_Declaration
1263 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1264 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1265 or else NT
(N
).Nkind
= N_Delta_Aggregate
1266 or else NT
(N
).Nkind
= N_Discriminant_Association
1267 or else NT
(N
).Nkind
= N_Discriminant_Specification
1268 or else NT
(N
).Nkind
= N_Exception_Declaration
1269 or else NT
(N
).Nkind
= N_Expression_Function
1270 or else NT
(N
).Nkind
= N_Expression_With_Actions
1271 or else NT
(N
).Nkind
= N_Free_Statement
1272 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1273 or else NT
(N
).Nkind
= N_Mod_Clause
1274 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1275 or else NT
(N
).Nkind
= N_Number_Declaration
1276 or else NT
(N
).Nkind
= N_Object_Declaration
1277 or else NT
(N
).Nkind
= N_Parameter_Specification
1278 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1279 or else NT
(N
).Nkind
= N_Qualified_Expression
1280 or else NT
(N
).Nkind
= N_Raise_Expression
1281 or else NT
(N
).Nkind
= N_Raise_Statement
1282 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1283 or else NT
(N
).Nkind
= N_Type_Conversion
1284 or else NT
(N
).Nkind
= N_Unchecked_Expression
1285 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1289 function Expression_Copy
1290 (N
: Node_Id
) return Node_Id
is
1292 pragma Assert
(False
1293 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1295 end Expression_Copy
;
1297 function Expressions
1298 (N
: Node_Id
) return List_Id
is
1300 pragma Assert
(False
1301 or else NT
(N
).Nkind
= N_Aggregate
1302 or else NT
(N
).Nkind
= N_Attribute_Reference
1303 or else NT
(N
).Nkind
= N_Extension_Aggregate
1304 or else NT
(N
).Nkind
= N_If_Expression
1305 or else NT
(N
).Nkind
= N_Indexed_Component
);
1310 (N
: Node_Id
) return Node_Id
is
1312 pragma Assert
(False
1313 or else NT
(N
).Nkind
= N_Component_Clause
);
1317 function First_Inlined_Subprogram
1318 (N
: Node_Id
) return Entity_Id
is
1320 pragma Assert
(False
1321 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1323 end First_Inlined_Subprogram
;
1326 (N
: Node_Id
) return Boolean is
1328 pragma Assert
(False
1329 or else NT
(N
).Nkind
= N_With_Clause
);
1333 function First_Named_Actual
1334 (N
: Node_Id
) return Node_Id
is
1336 pragma Assert
(False
1337 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1338 or else NT
(N
).Nkind
= N_Function_Call
1339 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1341 end First_Named_Actual
;
1343 function First_Real_Statement
1344 (N
: Node_Id
) return Node_Id
is
1346 pragma Assert
(False
1347 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1349 end First_Real_Statement
;
1351 function First_Subtype_Link
1352 (N
: Node_Id
) return Entity_Id
is
1354 pragma Assert
(False
1355 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1357 end First_Subtype_Link
;
1359 function Float_Truncate
1360 (N
: Node_Id
) return Boolean is
1362 pragma Assert
(False
1363 or else NT
(N
).Nkind
= N_Type_Conversion
);
1367 function Formal_Type_Definition
1368 (N
: Node_Id
) return Node_Id
is
1370 pragma Assert
(False
1371 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1373 end Formal_Type_Definition
;
1375 function Forwards_OK
1376 (N
: Node_Id
) return Boolean is
1378 pragma Assert
(False
1379 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1383 function From_Aspect_Specification
1384 (N
: Node_Id
) return Boolean is
1386 pragma Assert
(False
1387 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1388 or else NT
(N
).Nkind
= N_Pragma
);
1390 end From_Aspect_Specification
;
1392 function From_At_End
1393 (N
: Node_Id
) return Boolean is
1395 pragma Assert
(False
1396 or else NT
(N
).Nkind
= N_Raise_Statement
);
1400 function From_At_Mod
1401 (N
: Node_Id
) return Boolean is
1403 pragma Assert
(False
1404 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1408 function From_Conditional_Expression
1409 (N
: Node_Id
) return Boolean is
1411 pragma Assert
(False
1412 or else NT
(N
).Nkind
= N_Case_Statement
1413 or else NT
(N
).Nkind
= N_If_Statement
);
1415 end From_Conditional_Expression
;
1417 function From_Default
1418 (N
: Node_Id
) return Boolean is
1420 pragma Assert
(False
1421 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1425 function Generalized_Indexing
1426 (N
: Node_Id
) return Node_Id
is
1428 pragma Assert
(False
1429 or else NT
(N
).Nkind
= N_Indexed_Component
);
1431 end Generalized_Indexing
;
1433 function Generic_Associations
1434 (N
: Node_Id
) return List_Id
is
1436 pragma Assert
(False
1437 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1438 or else NT
(N
).Nkind
= N_Function_Instantiation
1439 or else NT
(N
).Nkind
= N_Package_Instantiation
1440 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1442 end Generic_Associations
;
1444 function Generic_Formal_Declarations
1445 (N
: Node_Id
) return List_Id
is
1447 pragma Assert
(False
1448 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1449 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1451 end Generic_Formal_Declarations
;
1453 function Generic_Parent
1454 (N
: Node_Id
) return Node_Id
is
1456 pragma Assert
(False
1457 or else NT
(N
).Nkind
= N_Function_Specification
1458 or else NT
(N
).Nkind
= N_Package_Specification
1459 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1463 function Generic_Parent_Type
1464 (N
: Node_Id
) return Node_Id
is
1466 pragma Assert
(False
1467 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1469 end Generic_Parent_Type
;
1471 function Handled_Statement_Sequence
1472 (N
: Node_Id
) return Node_Id
is
1474 pragma Assert
(False
1475 or else NT
(N
).Nkind
= N_Accept_Statement
1476 or else NT
(N
).Nkind
= N_Block_Statement
1477 or else NT
(N
).Nkind
= N_Entry_Body
1478 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1479 or else NT
(N
).Nkind
= N_Package_Body
1480 or else NT
(N
).Nkind
= N_Subprogram_Body
1481 or else NT
(N
).Nkind
= N_Task_Body
);
1483 end Handled_Statement_Sequence
;
1485 function Handler_List_Entry
1486 (N
: Node_Id
) return Node_Id
is
1488 pragma Assert
(False
1489 or else NT
(N
).Nkind
= N_Object_Declaration
);
1491 end Handler_List_Entry
;
1493 function Has_Created_Identifier
1494 (N
: Node_Id
) return Boolean is
1496 pragma Assert
(False
1497 or else NT
(N
).Nkind
= N_Block_Statement
1498 or else NT
(N
).Nkind
= N_Loop_Statement
);
1500 end Has_Created_Identifier
;
1502 function Has_Dereference_Action
1503 (N
: Node_Id
) return Boolean is
1505 pragma Assert
(False
1506 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1508 end Has_Dereference_Action
;
1510 function Has_Dynamic_Length_Check
1511 (N
: Node_Id
) return Boolean is
1513 pragma Assert
(False
1514 or else NT
(N
).Nkind
in N_Subexpr
);
1516 end Has_Dynamic_Length_Check
;
1518 function Has_Dynamic_Range_Check
1519 (N
: Node_Id
) return Boolean is
1521 pragma Assert
(False
1522 or else NT
(N
).Nkind
= N_Subtype_Declaration
1523 or else NT
(N
).Nkind
in N_Subexpr
);
1525 end Has_Dynamic_Range_Check
;
1527 function Has_Init_Expression
1528 (N
: Node_Id
) return Boolean is
1530 pragma Assert
(False
1531 or else NT
(N
).Nkind
= N_Object_Declaration
);
1533 end Has_Init_Expression
;
1535 function Has_Local_Raise
1536 (N
: Node_Id
) return Boolean is
1538 pragma Assert
(False
1539 or else NT
(N
).Nkind
= N_Exception_Handler
);
1541 end Has_Local_Raise
;
1543 function Has_No_Elaboration_Code
1544 (N
: Node_Id
) return Boolean is
1546 pragma Assert
(False
1547 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1549 end Has_No_Elaboration_Code
;
1551 function Has_Pragma_Suppress_All
1552 (N
: Node_Id
) return Boolean is
1554 pragma Assert
(False
1555 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1557 end Has_Pragma_Suppress_All
;
1559 function Has_Private_View
1560 (N
: Node_Id
) return Boolean is
1562 pragma Assert
(False
1563 or else NT
(N
).Nkind
in N_Op
1564 or else NT
(N
).Nkind
= N_Character_Literal
1565 or else NT
(N
).Nkind
= N_Expanded_Name
1566 or else NT
(N
).Nkind
= N_Identifier
1567 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1569 end Has_Private_View
;
1571 function Has_Relative_Deadline_Pragma
1572 (N
: Node_Id
) return Boolean is
1574 pragma Assert
(False
1575 or else NT
(N
).Nkind
= N_Subprogram_Body
1576 or else NT
(N
).Nkind
= N_Task_Definition
);
1578 end Has_Relative_Deadline_Pragma
;
1580 function Has_Self_Reference
1581 (N
: Node_Id
) return Boolean is
1583 pragma Assert
(False
1584 or else NT
(N
).Nkind
= N_Aggregate
1585 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1587 end Has_Self_Reference
;
1589 function Has_SP_Choice
1590 (N
: Node_Id
) return Boolean is
1592 pragma Assert
(False
1593 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1594 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1595 or else NT
(N
).Nkind
= N_Variant
);
1599 function Has_Storage_Size_Pragma
1600 (N
: Node_Id
) return Boolean is
1602 pragma Assert
(False
1603 or else NT
(N
).Nkind
= N_Task_Definition
);
1605 end Has_Storage_Size_Pragma
;
1607 function Has_Target_Names
1608 (N
: Node_Id
) return Boolean is
1610 pragma Assert
(False
1611 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1613 end Has_Target_Names
;
1615 function Has_Wide_Character
1616 (N
: Node_Id
) return Boolean is
1618 pragma Assert
(False
1619 or else NT
(N
).Nkind
= N_String_Literal
);
1621 end Has_Wide_Character
;
1623 function Has_Wide_Wide_Character
1624 (N
: Node_Id
) return Boolean is
1626 pragma Assert
(False
1627 or else NT
(N
).Nkind
= N_String_Literal
);
1629 end Has_Wide_Wide_Character
;
1631 function Header_Size_Added
1632 (N
: Node_Id
) return Boolean is
1634 pragma Assert
(False
1635 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1637 end Header_Size_Added
;
1639 function Hidden_By_Use_Clause
1640 (N
: Node_Id
) return Elist_Id
is
1642 pragma Assert
(False
1643 or else NT
(N
).Nkind
= N_Use_Package_Clause
1644 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1646 end Hidden_By_Use_Clause
;
1649 (N
: Node_Id
) return Node_Id
is
1651 pragma Assert
(False
1652 or else NT
(N
).Nkind
= N_Range
1653 or else NT
(N
).Nkind
= N_Real_Range_Specification
1654 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1659 (N
: Node_Id
) return Node_Id
is
1661 pragma Assert
(False
1662 or else NT
(N
).Nkind
= N_Aspect_Specification
1663 or else NT
(N
).Nkind
= N_At_Clause
1664 or else NT
(N
).Nkind
= N_Block_Statement
1665 or else NT
(N
).Nkind
= N_Designator
1666 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1667 or else NT
(N
).Nkind
= N_Label
1668 or else NT
(N
).Nkind
= N_Loop_Statement
1669 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1673 function Implicit_With
1674 (N
: Node_Id
) return Boolean is
1676 pragma Assert
(False
1677 or else NT
(N
).Nkind
= N_With_Clause
);
1681 function Implicit_With_From_Instantiation
1682 (N
: Node_Id
) return Boolean is
1684 pragma Assert
(False
1685 or else NT
(N
).Nkind
= N_With_Clause
);
1687 end Implicit_With_From_Instantiation
;
1689 function Interface_List
1690 (N
: Node_Id
) return List_Id
is
1692 pragma Assert
(False
1693 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1694 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1695 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1696 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1697 or else NT
(N
).Nkind
= N_Record_Definition
1698 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1699 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1700 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1704 function Interface_Present
1705 (N
: Node_Id
) return Boolean is
1707 pragma Assert
(False
1708 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1709 or else NT
(N
).Nkind
= N_Record_Definition
);
1711 end Interface_Present
;
1713 function Import_Interface_Present
1714 (N
: Node_Id
) return Boolean is
1716 pragma Assert
(False
1717 or else NT
(N
).Nkind
= N_Pragma
);
1719 end Import_Interface_Present
;
1722 (N
: Node_Id
) return Boolean is
1724 pragma Assert
(False
1725 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1726 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1730 function Includes_Infinities
1731 (N
: Node_Id
) return Boolean is
1733 pragma Assert
(False
1734 or else NT
(N
).Nkind
= N_Range
);
1736 end Includes_Infinities
;
1738 function Incomplete_View
1739 (N
: Node_Id
) return Node_Id
is
1741 pragma Assert
(False
1742 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1744 end Incomplete_View
;
1746 function Inherited_Discriminant
1747 (N
: Node_Id
) return Boolean is
1749 pragma Assert
(False
1750 or else NT
(N
).Nkind
= N_Component_Association
);
1752 end Inherited_Discriminant
;
1754 function Instance_Spec
1755 (N
: Node_Id
) return Node_Id
is
1757 pragma Assert
(False
1758 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1759 or else NT
(N
).Nkind
= N_Function_Instantiation
1760 or else NT
(N
).Nkind
= N_Package_Instantiation
1761 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1766 (N
: Node_Id
) return Uint
is
1768 pragma Assert
(False
1769 or else NT
(N
).Nkind
= N_Integer_Literal
);
1773 function Is_Abort_Block
1774 (N
: Node_Id
) return Boolean is
1776 pragma Assert
(False
1777 or else NT
(N
).Nkind
= N_Block_Statement
);
1781 function Is_Accessibility_Actual
1782 (N
: Node_Id
) return Boolean is
1784 pragma Assert
(False
1785 or else NT
(N
).Nkind
= N_Parameter_Association
);
1787 end Is_Accessibility_Actual
;
1789 function Is_Analyzed_Pragma
1790 (N
: Node_Id
) return Boolean is
1792 pragma Assert
(False
1793 or else NT
(N
).Nkind
= N_Pragma
);
1795 end Is_Analyzed_Pragma
;
1797 function Is_Asynchronous_Call_Block
1798 (N
: Node_Id
) return Boolean is
1800 pragma Assert
(False
1801 or else NT
(N
).Nkind
= N_Block_Statement
);
1803 end Is_Asynchronous_Call_Block
;
1805 function Is_Boolean_Aspect
1806 (N
: Node_Id
) return Boolean is
1808 pragma Assert
(False
1809 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1811 end Is_Boolean_Aspect
;
1814 (N
: Node_Id
) return Boolean is
1816 pragma Assert
(False
1817 or else NT
(N
).Nkind
= N_Aspect_Specification
1818 or else NT
(N
).Nkind
= N_Pragma
);
1822 function Is_Checked_Ghost_Pragma
1823 (N
: Node_Id
) return Boolean is
1825 pragma Assert
(False
1826 or else NT
(N
).Nkind
= N_Pragma
);
1828 end Is_Checked_Ghost_Pragma
;
1830 function Is_Component_Left_Opnd
1831 (N
: Node_Id
) return Boolean is
1833 pragma Assert
(False
1834 or else NT
(N
).Nkind
= N_Op_Concat
);
1836 end Is_Component_Left_Opnd
;
1838 function Is_Component_Right_Opnd
1839 (N
: Node_Id
) return Boolean is
1841 pragma Assert
(False
1842 or else NT
(N
).Nkind
= N_Op_Concat
);
1844 end Is_Component_Right_Opnd
;
1846 function Is_Controlling_Actual
1847 (N
: Node_Id
) return Boolean is
1849 pragma Assert
(False
1850 or else NT
(N
).Nkind
in N_Subexpr
);
1852 end Is_Controlling_Actual
;
1854 function Is_Declaration_Level_Node
1855 (N
: Node_Id
) return Boolean is
1857 pragma Assert
(False
1858 or else NT
(N
).Nkind
= N_Call_Marker
1859 or else NT
(N
).Nkind
= N_Function_Instantiation
1860 or else NT
(N
).Nkind
= N_Package_Instantiation
1861 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1863 end Is_Declaration_Level_Node
;
1865 function Is_Delayed_Aspect
1866 (N
: Node_Id
) return Boolean is
1868 pragma Assert
(False
1869 or else NT
(N
).Nkind
= N_Aspect_Specification
1870 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1871 or else NT
(N
).Nkind
= N_Pragma
);
1873 end Is_Delayed_Aspect
;
1875 function Is_Disabled
1876 (N
: Node_Id
) return Boolean is
1878 pragma Assert
(False
1879 or else NT
(N
).Nkind
= N_Aspect_Specification
1880 or else NT
(N
).Nkind
= N_Pragma
);
1884 function Is_Dispatching_Call
1885 (N
: Node_Id
) return Boolean is
1887 pragma Assert
(False
1888 or else NT
(N
).Nkind
= N_Call_Marker
);
1890 end Is_Dispatching_Call
;
1892 function Is_Dynamic_Coextension
1893 (N
: Node_Id
) return Boolean is
1895 pragma Assert
(False
1896 or else NT
(N
).Nkind
= N_Allocator
);
1898 end Is_Dynamic_Coextension
;
1900 function Is_Effective_Use_Clause
1901 (N
: Node_Id
) return Boolean is
1903 pragma Assert
(False
1904 or else NT
(N
).Nkind
= N_Use_Package_Clause
1905 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1907 end Is_Effective_Use_Clause
;
1909 function Is_Elaboration_Checks_OK_Node
1910 (N
: Node_Id
) return Boolean is
1912 pragma Assert
(False
1913 or else NT
(N
).Nkind
= N_Assignment_Statement
1914 or else NT
(N
).Nkind
= N_Attribute_Reference
1915 or else NT
(N
).Nkind
= N_Call_Marker
1916 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1917 or else NT
(N
).Nkind
= N_Expanded_Name
1918 or else NT
(N
).Nkind
= N_Function_Call
1919 or else NT
(N
).Nkind
= N_Function_Instantiation
1920 or else NT
(N
).Nkind
= N_Identifier
1921 or else NT
(N
).Nkind
= N_Package_Instantiation
1922 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1923 or else NT
(N
).Nkind
= N_Procedure_Instantiation
1924 or else NT
(N
).Nkind
= N_Requeue_Statement
);
1926 end Is_Elaboration_Checks_OK_Node
;
1929 (N
: Node_Id
) return Boolean is
1931 pragma Assert
(False
1932 or else NT
(N
).Nkind
= N_If_Expression
);
1936 function Is_Entry_Barrier_Function
1937 (N
: Node_Id
) return Boolean is
1939 pragma Assert
(False
1940 or else NT
(N
).Nkind
= N_Subprogram_Body
1941 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1943 end Is_Entry_Barrier_Function
;
1945 function Is_Expanded_Build_In_Place_Call
1946 (N
: Node_Id
) return Boolean is
1948 pragma Assert
(False
1949 or else NT
(N
).Nkind
= N_Function_Call
);
1951 end Is_Expanded_Build_In_Place_Call
;
1953 function Is_Expanded_Contract
1954 (N
: Node_Id
) return Boolean is
1956 pragma Assert
(False
1957 or else NT
(N
).Nkind
= N_Contract
);
1959 end Is_Expanded_Contract
;
1961 function Is_Finalization_Wrapper
1962 (N
: Node_Id
) return Boolean is
1964 pragma Assert
(False
1965 or else NT
(N
).Nkind
= N_Block_Statement
);
1967 end Is_Finalization_Wrapper
;
1969 function Is_Folded_In_Parser
1970 (N
: Node_Id
) return Boolean is
1972 pragma Assert
(False
1973 or else NT
(N
).Nkind
= N_String_Literal
);
1975 end Is_Folded_In_Parser
;
1977 function Is_Generic_Contract_Pragma
1978 (N
: Node_Id
) return Boolean is
1980 pragma Assert
(False
1981 or else NT
(N
).Nkind
= N_Pragma
);
1983 end Is_Generic_Contract_Pragma
;
1986 (N
: Node_Id
) return Boolean is
1988 pragma Assert
(False
1989 or else NT
(N
).Nkind
= N_Aspect_Specification
1990 or else NT
(N
).Nkind
= N_Pragma
);
1994 function Is_Ignored_Ghost_Pragma
1995 (N
: Node_Id
) return Boolean is
1997 pragma Assert
(False
1998 or else NT
(N
).Nkind
= N_Pragma
);
2000 end Is_Ignored_Ghost_Pragma
;
2002 function Is_In_Discriminant_Check
2003 (N
: Node_Id
) return Boolean is
2005 pragma Assert
(False
2006 or else NT
(N
).Nkind
= N_Selected_Component
);
2008 end Is_In_Discriminant_Check
;
2010 function Is_Inherited_Pragma
2011 (N
: Node_Id
) return Boolean is
2013 pragma Assert
(False
2014 or else NT
(N
).Nkind
= N_Pragma
);
2016 end Is_Inherited_Pragma
;
2018 function Is_Initialization_Block
2019 (N
: Node_Id
) return Boolean is
2021 pragma Assert
(False
2022 or else NT
(N
).Nkind
= N_Block_Statement
);
2024 end Is_Initialization_Block
;
2026 function Is_Known_Guaranteed_ABE
2027 (N
: Node_Id
) return Boolean is
2029 pragma Assert
(False
2030 or else NT
(N
).Nkind
= N_Call_Marker
2031 or else NT
(N
).Nkind
= N_Function_Instantiation
2032 or else NT
(N
).Nkind
= N_Package_Instantiation
2033 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2035 end Is_Known_Guaranteed_ABE
;
2037 function Is_Machine_Number
2038 (N
: Node_Id
) return Boolean is
2040 pragma Assert
(False
2041 or else NT
(N
).Nkind
= N_Real_Literal
);
2043 end Is_Machine_Number
;
2045 function Is_Null_Loop
2046 (N
: Node_Id
) return Boolean is
2048 pragma Assert
(False
2049 or else NT
(N
).Nkind
= N_Loop_Statement
);
2053 function Is_Overloaded
2054 (N
: Node_Id
) return Boolean is
2056 pragma Assert
(False
2057 or else NT
(N
).Nkind
in N_Subexpr
);
2061 function Is_Power_Of_2_For_Shift
2062 (N
: Node_Id
) return Boolean is
2064 pragma Assert
(False
2065 or else NT
(N
).Nkind
= N_Op_Expon
);
2067 end Is_Power_Of_2_For_Shift
;
2069 function Is_Prefixed_Call
2070 (N
: Node_Id
) return Boolean is
2072 pragma Assert
(False
2073 or else NT
(N
).Nkind
= N_Selected_Component
);
2075 end Is_Prefixed_Call
;
2077 function Is_Protected_Subprogram_Body
2078 (N
: Node_Id
) return Boolean is
2080 pragma Assert
(False
2081 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2083 end Is_Protected_Subprogram_Body
;
2085 function Is_Qualified_Universal_Literal
2086 (N
: Node_Id
) return Boolean is
2088 pragma Assert
(False
2089 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2091 end Is_Qualified_Universal_Literal
;
2093 function Is_Recorded_Scenario
2094 (N
: Node_Id
) return Boolean is
2096 pragma Assert
(False
2097 or else NT
(N
).Nkind
= N_Call_Marker
2098 or else NT
(N
).Nkind
= N_Function_Instantiation
2099 or else NT
(N
).Nkind
= N_Package_Instantiation
2100 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
2102 end Is_Recorded_Scenario
;
2104 function Is_Source_Call
2105 (N
: Node_Id
) return Boolean is
2107 pragma Assert
(False
2108 or else NT
(N
).Nkind
= N_Call_Marker
);
2112 function Is_SPARK_Mode_On_Node
2113 (N
: Node_Id
) return Boolean is
2115 pragma Assert
(False
2116 or else NT
(N
).Nkind
= N_Assignment_Statement
2117 or else NT
(N
).Nkind
= N_Attribute_Reference
2118 or else NT
(N
).Nkind
= N_Call_Marker
2119 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2120 or else NT
(N
).Nkind
= N_Expanded_Name
2121 or else NT
(N
).Nkind
= N_Function_Call
2122 or else NT
(N
).Nkind
= N_Function_Instantiation
2123 or else NT
(N
).Nkind
= N_Identifier
2124 or else NT
(N
).Nkind
= N_Package_Instantiation
2125 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2126 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2127 or else NT
(N
).Nkind
= N_Requeue_Statement
);
2129 end Is_SPARK_Mode_On_Node
;
2131 function Is_Static_Coextension
2132 (N
: Node_Id
) return Boolean is
2134 pragma Assert
(False
2135 or else NT
(N
).Nkind
= N_Allocator
);
2137 end Is_Static_Coextension
;
2139 function Is_Static_Expression
2140 (N
: Node_Id
) return Boolean is
2142 pragma Assert
(False
2143 or else NT
(N
).Nkind
in N_Subexpr
);
2145 end Is_Static_Expression
;
2147 function Is_Subprogram_Descriptor
2148 (N
: Node_Id
) return Boolean is
2150 pragma Assert
(False
2151 or else NT
(N
).Nkind
= N_Object_Declaration
);
2153 end Is_Subprogram_Descriptor
;
2155 function Is_Task_Allocation_Block
2156 (N
: Node_Id
) return Boolean is
2158 pragma Assert
(False
2159 or else NT
(N
).Nkind
= N_Block_Statement
);
2161 end Is_Task_Allocation_Block
;
2163 function Is_Task_Body_Procedure
2164 (N
: Node_Id
) return Boolean is
2166 pragma Assert
(False
2167 or else NT
(N
).Nkind
= N_Subprogram_Body
2168 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2170 end Is_Task_Body_Procedure
;
2172 function Is_Task_Master
2173 (N
: Node_Id
) return Boolean is
2175 pragma Assert
(False
2176 or else NT
(N
).Nkind
= N_Block_Statement
2177 or else NT
(N
).Nkind
= N_Subprogram_Body
2178 or else NT
(N
).Nkind
= N_Task_Body
);
2182 function Iteration_Scheme
2183 (N
: Node_Id
) return Node_Id
is
2185 pragma Assert
(False
2186 or else NT
(N
).Nkind
= N_Loop_Statement
);
2188 end Iteration_Scheme
;
2190 function Iterator_Specification
2191 (N
: Node_Id
) return Node_Id
is
2193 pragma Assert
(False
2194 or else NT
(N
).Nkind
= N_Iteration_Scheme
2195 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2197 end Iterator_Specification
;
2200 (N
: Node_Id
) return Node_Id
is
2202 pragma Assert
(False
2203 or else NT
(N
).Nkind
= N_Itype_Reference
);
2207 function Kill_Range_Check
2208 (N
: Node_Id
) return Boolean is
2210 pragma Assert
(False
2211 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2213 end Kill_Range_Check
;
2215 function Label_Construct
2216 (N
: Node_Id
) return Node_Id
is
2218 pragma Assert
(False
2219 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2221 end Label_Construct
;
2224 (N
: Node_Id
) return Node_Id
is
2226 pragma Assert
(False
2227 or else NT
(N
).Nkind
= N_Component_Clause
);
2232 (N
: Node_Id
) return Boolean is
2234 pragma Assert
(False
2235 or else NT
(N
).Nkind
= N_With_Clause
);
2240 (N
: Node_Id
) return Node_Id
is
2242 pragma Assert
(False
2243 or else NT
(N
).Nkind
= N_And_Then
2244 or else NT
(N
).Nkind
= N_In
2245 or else NT
(N
).Nkind
= N_Not_In
2246 or else NT
(N
).Nkind
= N_Or_Else
2247 or else NT
(N
).Nkind
in N_Binary_Op
);
2251 function Library_Unit
2252 (N
: Node_Id
) return Node_Id
is
2254 pragma Assert
(False
2255 or else NT
(N
).Nkind
= N_Compilation_Unit
2256 or else NT
(N
).Nkind
= N_Package_Body_Stub
2257 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2258 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2259 or else NT
(N
).Nkind
= N_Task_Body_Stub
2260 or else NT
(N
).Nkind
= N_With_Clause
);
2264 function Limited_View_Installed
2265 (N
: Node_Id
) return Boolean is
2267 pragma Assert
(False
2268 or else NT
(N
).Nkind
= N_Package_Specification
2269 or else NT
(N
).Nkind
= N_With_Clause
);
2271 end Limited_View_Installed
;
2273 function Limited_Present
2274 (N
: Node_Id
) return Boolean is
2276 pragma Assert
(False
2277 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2278 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2279 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2280 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2281 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2282 or else NT
(N
).Nkind
= N_Record_Definition
2283 or else NT
(N
).Nkind
= N_With_Clause
);
2285 end Limited_Present
;
2288 (N
: Node_Id
) return List_Id
is
2290 pragma Assert
(False
2291 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2295 function Local_Raise_Not_OK
2296 (N
: Node_Id
) return Boolean is
2298 pragma Assert
(False
2299 or else NT
(N
).Nkind
= N_Exception_Handler
);
2301 end Local_Raise_Not_OK
;
2303 function Local_Raise_Statements
2304 (N
: Node_Id
) return Elist_Id
is
2306 pragma Assert
(False
2307 or else NT
(N
).Nkind
= N_Exception_Handler
);
2309 end Local_Raise_Statements
;
2311 function Loop_Actions
2312 (N
: Node_Id
) return List_Id
is
2314 pragma Assert
(False
2315 or else NT
(N
).Nkind
= N_Component_Association
2316 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2320 function Loop_Parameter_Specification
2321 (N
: Node_Id
) return Node_Id
is
2323 pragma Assert
(False
2324 or else NT
(N
).Nkind
= N_Iteration_Scheme
2325 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2327 end Loop_Parameter_Specification
;
2330 (N
: Node_Id
) return Node_Id
is
2332 pragma Assert
(False
2333 or else NT
(N
).Nkind
= N_Range
2334 or else NT
(N
).Nkind
= N_Real_Range_Specification
2335 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2340 (N
: Node_Id
) return Node_Id
is
2342 pragma Assert
(False
2343 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2348 (N
: Node_Id
) return Boolean is
2350 pragma Assert
(False
2351 or else NT
(N
).Nkind
= N_Component_Declaration
2352 or else NT
(N
).Nkind
= N_Discriminant_Specification
2353 or else NT
(N
).Nkind
= N_Exception_Declaration
2354 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2355 or else NT
(N
).Nkind
= N_Number_Declaration
2356 or else NT
(N
).Nkind
= N_Object_Declaration
2357 or else NT
(N
).Nkind
= N_Parameter_Specification
2358 or else NT
(N
).Nkind
= N_Use_Package_Clause
2359 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2363 function Must_Be_Byte_Aligned
2364 (N
: Node_Id
) return Boolean is
2366 pragma Assert
(False
2367 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2369 end Must_Be_Byte_Aligned
;
2371 function Must_Not_Freeze
2372 (N
: Node_Id
) return Boolean is
2374 pragma Assert
(False
2375 or else NT
(N
).Nkind
= N_Subtype_Indication
2376 or else NT
(N
).Nkind
in N_Subexpr
);
2378 end Must_Not_Freeze
;
2380 function Must_Not_Override
2381 (N
: Node_Id
) return Boolean is
2383 pragma Assert
(False
2384 or else NT
(N
).Nkind
= N_Entry_Declaration
2385 or else NT
(N
).Nkind
= N_Function_Instantiation
2386 or else NT
(N
).Nkind
= N_Function_Specification
2387 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2388 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2390 end Must_Not_Override
;
2392 function Must_Override
2393 (N
: Node_Id
) return Boolean is
2395 pragma Assert
(False
2396 or else NT
(N
).Nkind
= N_Entry_Declaration
2397 or else NT
(N
).Nkind
= N_Function_Instantiation
2398 or else NT
(N
).Nkind
= N_Function_Specification
2399 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2400 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2405 (N
: Node_Id
) return Node_Id
is
2407 pragma Assert
(False
2408 or else NT
(N
).Nkind
= N_Assignment_Statement
2409 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2410 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2411 or else NT
(N
).Nkind
= N_Designator
2412 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2413 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2414 or else NT
(N
).Nkind
= N_Exit_Statement
2415 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2416 or else NT
(N
).Nkind
= N_Function_Call
2417 or else NT
(N
).Nkind
= N_Function_Instantiation
2418 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2419 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2420 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2421 or else NT
(N
).Nkind
= N_Goto_Statement
2422 or else NT
(N
).Nkind
= N_Iterator_Specification
2423 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2424 or else NT
(N
).Nkind
= N_Package_Instantiation
2425 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2426 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2427 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2428 or else NT
(N
).Nkind
= N_Raise_Expression
2429 or else NT
(N
).Nkind
= N_Raise_Statement
2430 or else NT
(N
).Nkind
= N_Requeue_Statement
2431 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2432 or else NT
(N
).Nkind
= N_Subunit
2433 or else NT
(N
).Nkind
= N_Use_Package_Clause
2434 or else NT
(N
).Nkind
= N_Variant_Part
2435 or else NT
(N
).Nkind
= N_With_Clause
);
2440 (N
: Node_Id
) return List_Id
is
2442 pragma Assert
(False
2443 or else NT
(N
).Nkind
= N_Abort_Statement
);
2447 function Next_Entity
2448 (N
: Node_Id
) return Node_Id
is
2450 pragma Assert
(False
2451 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2452 or else NT
(N
).Nkind
= N_Defining_Identifier
2453 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2457 function Next_Exit_Statement
2458 (N
: Node_Id
) return Node_Id
is
2460 pragma Assert
(False
2461 or else NT
(N
).Nkind
= N_Exit_Statement
);
2463 end Next_Exit_Statement
;
2465 function Next_Implicit_With
2466 (N
: Node_Id
) return Node_Id
is
2468 pragma Assert
(False
2469 or else NT
(N
).Nkind
= N_With_Clause
);
2471 end Next_Implicit_With
;
2473 function Next_Named_Actual
2474 (N
: Node_Id
) return Node_Id
is
2476 pragma Assert
(False
2477 or else NT
(N
).Nkind
= N_Parameter_Association
);
2479 end Next_Named_Actual
;
2481 function Next_Pragma
2482 (N
: Node_Id
) return Node_Id
is
2484 pragma Assert
(False
2485 or else NT
(N
).Nkind
= N_Pragma
);
2489 function Next_Rep_Item
2490 (N
: Node_Id
) return Node_Id
is
2492 pragma Assert
(False
2493 or else NT
(N
).Nkind
= N_Aspect_Specification
2494 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2495 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2496 or else NT
(N
).Nkind
= N_Pragma
2497 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2501 function Next_Use_Clause
2502 (N
: Node_Id
) return Node_Id
is
2504 pragma Assert
(False
2505 or else NT
(N
).Nkind
= N_Use_Package_Clause
2506 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2508 end Next_Use_Clause
;
2510 function No_Ctrl_Actions
2511 (N
: Node_Id
) return Boolean is
2513 pragma Assert
(False
2514 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2516 end No_Ctrl_Actions
;
2518 function No_Entities_Ref_In_Spec
2519 (N
: Node_Id
) return Boolean is
2521 pragma Assert
(False
2522 or else NT
(N
).Nkind
= N_With_Clause
);
2524 end No_Entities_Ref_In_Spec
;
2526 function No_Initialization
2527 (N
: Node_Id
) return Boolean is
2529 pragma Assert
(False
2530 or else NT
(N
).Nkind
= N_Allocator
2531 or else NT
(N
).Nkind
= N_Object_Declaration
);
2533 end No_Initialization
;
2535 function No_Minimize_Eliminate
2536 (N
: Node_Id
) return Boolean is
2538 pragma Assert
(False
2539 or else NT
(N
).Nkind
= N_In
2540 or else NT
(N
).Nkind
= N_Not_In
);
2542 end No_Minimize_Eliminate
;
2544 function No_Side_Effect_Removal
2545 (N
: Node_Id
) return Boolean is
2547 pragma Assert
(False
2548 or else NT
(N
).Nkind
= N_Function_Call
);
2550 end No_Side_Effect_Removal
;
2552 function No_Truncation
2553 (N
: Node_Id
) return Boolean is
2555 pragma Assert
(False
2556 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2560 function Null_Excluding_Subtype
2561 (N
: Node_Id
) return Boolean is
2563 pragma Assert
(False
2564 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2566 end Null_Excluding_Subtype
;
2568 function Null_Exclusion_Present
2569 (N
: Node_Id
) return Boolean is
2571 pragma Assert
(False
2572 or else NT
(N
).Nkind
= N_Access_Definition
2573 or else NT
(N
).Nkind
= N_Access_Function_Definition
2574 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2575 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2576 or else NT
(N
).Nkind
= N_Allocator
2577 or else NT
(N
).Nkind
= N_Component_Definition
2578 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2579 or else NT
(N
).Nkind
= N_Discriminant_Specification
2580 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2581 or else NT
(N
).Nkind
= N_Function_Specification
2582 or else NT
(N
).Nkind
= N_Object_Declaration
2583 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2584 or else NT
(N
).Nkind
= N_Parameter_Specification
2585 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2587 end Null_Exclusion_Present
;
2589 function Null_Exclusion_In_Return_Present
2590 (N
: Node_Id
) return Boolean is
2592 pragma Assert
(False
2593 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2595 end Null_Exclusion_In_Return_Present
;
2597 function Null_Present
2598 (N
: Node_Id
) return Boolean is
2600 pragma Assert
(False
2601 or else NT
(N
).Nkind
= N_Component_List
2602 or else NT
(N
).Nkind
= N_Procedure_Specification
2603 or else NT
(N
).Nkind
= N_Record_Definition
);
2607 function Null_Record_Present
2608 (N
: Node_Id
) return Boolean is
2610 pragma Assert
(False
2611 or else NT
(N
).Nkind
= N_Aggregate
2612 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2614 end Null_Record_Present
;
2616 function Null_Statement
2617 (N
: Node_Id
) return Node_Id
is
2619 pragma Assert
(False
2620 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2624 function Object_Definition
2625 (N
: Node_Id
) return Node_Id
is
2627 pragma Assert
(False
2628 or else NT
(N
).Nkind
= N_Object_Declaration
);
2630 end Object_Definition
;
2633 (N
: Node_Id
) return Boolean is
2635 pragma Assert
(False
2636 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2640 function Original_Discriminant
2641 (N
: Node_Id
) return Node_Id
is
2643 pragma Assert
(False
2644 or else NT
(N
).Nkind
= N_Identifier
);
2646 end Original_Discriminant
;
2648 function Original_Entity
2649 (N
: Node_Id
) return Entity_Id
is
2651 pragma Assert
(False
2652 or else NT
(N
).Nkind
= N_Integer_Literal
2653 or else NT
(N
).Nkind
= N_Real_Literal
);
2655 end Original_Entity
;
2657 function Others_Discrete_Choices
2658 (N
: Node_Id
) return List_Id
is
2660 pragma Assert
(False
2661 or else NT
(N
).Nkind
= N_Others_Choice
);
2663 end Others_Discrete_Choices
;
2665 function Out_Present
2666 (N
: Node_Id
) return Boolean is
2668 pragma Assert
(False
2669 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2670 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2674 function Parameter_Associations
2675 (N
: Node_Id
) return List_Id
is
2677 pragma Assert
(False
2678 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2679 or else NT
(N
).Nkind
= N_Function_Call
2680 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2682 end Parameter_Associations
;
2684 function Parameter_Specifications
2685 (N
: Node_Id
) return List_Id
is
2687 pragma Assert
(False
2688 or else NT
(N
).Nkind
= N_Accept_Statement
2689 or else NT
(N
).Nkind
= N_Access_Function_Definition
2690 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2691 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2692 or else NT
(N
).Nkind
= N_Entry_Declaration
2693 or else NT
(N
).Nkind
= N_Function_Specification
2694 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2696 end Parameter_Specifications
;
2698 function Parameter_Type
2699 (N
: Node_Id
) return Node_Id
is
2701 pragma Assert
(False
2702 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2706 function Parent_Spec
2707 (N
: Node_Id
) return Node_Id
is
2709 pragma Assert
(False
2710 or else NT
(N
).Nkind
= N_Function_Instantiation
2711 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2712 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2713 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2714 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2715 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2716 or else NT
(N
).Nkind
= N_Package_Declaration
2717 or else NT
(N
).Nkind
= N_Package_Instantiation
2718 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2719 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2720 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2721 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2726 (N
: Node_Id
) return Node_Id
is
2728 pragma Assert
(False
2729 or else NT
(N
).Nkind
= N_Component_Clause
);
2733 function Pragma_Argument_Associations
2734 (N
: Node_Id
) return List_Id
is
2736 pragma Assert
(False
2737 or else NT
(N
).Nkind
= N_Pragma
);
2739 end Pragma_Argument_Associations
;
2741 function Pragma_Identifier
2742 (N
: Node_Id
) return Node_Id
is
2744 pragma Assert
(False
2745 or else NT
(N
).Nkind
= N_Pragma
);
2747 end Pragma_Identifier
;
2749 function Pragmas_After
2750 (N
: Node_Id
) return List_Id
is
2752 pragma Assert
(False
2753 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2754 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2758 function Pragmas_Before
2759 (N
: Node_Id
) return List_Id
is
2761 pragma Assert
(False
2762 or else NT
(N
).Nkind
= N_Accept_Alternative
2763 or else NT
(N
).Nkind
= N_Delay_Alternative
2764 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2765 or else NT
(N
).Nkind
= N_Mod_Clause
2766 or else NT
(N
).Nkind
= N_Terminate_Alternative
2767 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2771 function Pre_Post_Conditions
2772 (N
: Node_Id
) return Node_Id
is
2774 pragma Assert
(False
2775 or else NT
(N
).Nkind
= N_Contract
);
2777 end Pre_Post_Conditions
;
2780 (N
: Node_Id
) return Node_Id
is
2782 pragma Assert
(False
2783 or else NT
(N
).Nkind
= N_Attribute_Reference
2784 or else NT
(N
).Nkind
= N_Expanded_Name
2785 or else NT
(N
).Nkind
= N_Explicit_Dereference
2786 or else NT
(N
).Nkind
= N_Indexed_Component
2787 or else NT
(N
).Nkind
= N_Reference
2788 or else NT
(N
).Nkind
= N_Selected_Component
2789 or else NT
(N
).Nkind
= N_Slice
);
2793 function Premature_Use
2794 (N
: Node_Id
) return Node_Id
is
2796 pragma Assert
(False
2797 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2801 function Present_Expr
2802 (N
: Node_Id
) return Uint
is
2804 pragma Assert
(False
2805 or else NT
(N
).Nkind
= N_Variant
);
2810 (N
: Node_Id
) return Boolean is
2812 pragma Assert
(False
2813 or else NT
(N
).Nkind
= N_Component_Declaration
2814 or else NT
(N
).Nkind
= N_Discriminant_Specification
2815 or else NT
(N
).Nkind
= N_Exception_Declaration
2816 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2817 or else NT
(N
).Nkind
= N_Number_Declaration
2818 or else NT
(N
).Nkind
= N_Object_Declaration
2819 or else NT
(N
).Nkind
= N_Parameter_Specification
2820 or else NT
(N
).Nkind
= N_Use_Package_Clause
2821 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2825 function Prev_Use_Clause
2826 (N
: Node_Id
) return Node_Id
is
2828 pragma Assert
(False
2829 or else NT
(N
).Nkind
= N_Use_Package_Clause
2830 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2832 end Prev_Use_Clause
;
2834 function Print_In_Hex
2835 (N
: Node_Id
) return Boolean is
2837 pragma Assert
(False
2838 or else NT
(N
).Nkind
= N_Integer_Literal
);
2842 function Private_Declarations
2843 (N
: Node_Id
) return List_Id
is
2845 pragma Assert
(False
2846 or else NT
(N
).Nkind
= N_Package_Specification
2847 or else NT
(N
).Nkind
= N_Protected_Definition
2848 or else NT
(N
).Nkind
= N_Task_Definition
);
2850 end Private_Declarations
;
2852 function Private_Present
2853 (N
: Node_Id
) return Boolean is
2855 pragma Assert
(False
2856 or else NT
(N
).Nkind
= N_Compilation_Unit
2857 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2858 or else NT
(N
).Nkind
= N_With_Clause
);
2860 end Private_Present
;
2862 function Procedure_To_Call
2863 (N
: Node_Id
) return Node_Id
is
2865 pragma Assert
(False
2866 or else NT
(N
).Nkind
= N_Allocator
2867 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2868 or else NT
(N
).Nkind
= N_Free_Statement
2869 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2871 end Procedure_To_Call
;
2873 function Proper_Body
2874 (N
: Node_Id
) return Node_Id
is
2876 pragma Assert
(False
2877 or else NT
(N
).Nkind
= N_Subunit
);
2881 function Protected_Definition
2882 (N
: Node_Id
) return Node_Id
is
2884 pragma Assert
(False
2885 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2886 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2888 end Protected_Definition
;
2890 function Protected_Present
2891 (N
: Node_Id
) return Boolean is
2893 pragma Assert
(False
2894 or else NT
(N
).Nkind
= N_Access_Function_Definition
2895 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2896 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2897 or else NT
(N
).Nkind
= N_Record_Definition
);
2899 end Protected_Present
;
2901 function Raises_Constraint_Error
2902 (N
: Node_Id
) return Boolean is
2904 pragma Assert
(False
2905 or else NT
(N
).Nkind
in N_Subexpr
);
2907 end Raises_Constraint_Error
;
2909 function Range_Constraint
2910 (N
: Node_Id
) return Node_Id
is
2912 pragma Assert
(False
2913 or else NT
(N
).Nkind
= N_Delta_Constraint
2914 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2916 end Range_Constraint
;
2918 function Range_Expression
2919 (N
: Node_Id
) return Node_Id
is
2921 pragma Assert
(False
2922 or else NT
(N
).Nkind
= N_Range_Constraint
);
2924 end Range_Expression
;
2926 function Real_Range_Specification
2927 (N
: Node_Id
) return Node_Id
is
2929 pragma Assert
(False
2930 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2931 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2932 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2934 end Real_Range_Specification
;
2937 (N
: Node_Id
) return Ureal
is
2939 pragma Assert
(False
2940 or else NT
(N
).Nkind
= N_Real_Literal
);
2945 (N
: Node_Id
) return Uint
is
2947 pragma Assert
(False
2948 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2949 or else NT
(N
).Nkind
= N_Raise_Program_Error
2950 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2954 function Record_Extension_Part
2955 (N
: Node_Id
) return Node_Id
is
2957 pragma Assert
(False
2958 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2960 end Record_Extension_Part
;
2962 function Redundant_Use
2963 (N
: Node_Id
) return Boolean is
2965 pragma Assert
(False
2966 or else NT
(N
).Nkind
= N_Attribute_Reference
2967 or else NT
(N
).Nkind
= N_Expanded_Name
2968 or else NT
(N
).Nkind
= N_Identifier
);
2972 function Renaming_Exception
2973 (N
: Node_Id
) return Node_Id
is
2975 pragma Assert
(False
2976 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2978 end Renaming_Exception
;
2980 function Result_Definition
2981 (N
: Node_Id
) return Node_Id
is
2983 pragma Assert
(False
2984 or else NT
(N
).Nkind
= N_Access_Function_Definition
2985 or else NT
(N
).Nkind
= N_Function_Specification
);
2987 end Result_Definition
;
2989 function Return_Object_Declarations
2990 (N
: Node_Id
) return List_Id
is
2992 pragma Assert
(False
2993 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2995 end Return_Object_Declarations
;
2997 function Return_Statement_Entity
2998 (N
: Node_Id
) return Node_Id
is
3000 pragma Assert
(False
3001 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3002 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3004 end Return_Statement_Entity
;
3006 function Reverse_Present
3007 (N
: Node_Id
) return Boolean is
3009 pragma Assert
(False
3010 or else NT
(N
).Nkind
= N_Iterator_Specification
3011 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3013 end Reverse_Present
;
3016 (N
: Node_Id
) return Node_Id
is
3018 pragma Assert
(False
3019 or else NT
(N
).Nkind
in N_Op
3020 or else NT
(N
).Nkind
= N_And_Then
3021 or else NT
(N
).Nkind
= N_In
3022 or else NT
(N
).Nkind
= N_Not_In
3023 or else NT
(N
).Nkind
= N_Or_Else
);
3027 function Rounded_Result
3028 (N
: Node_Id
) return Boolean is
3030 pragma Assert
(False
3031 or else NT
(N
).Nkind
= N_Op_Divide
3032 or else NT
(N
).Nkind
= N_Op_Multiply
3033 or else NT
(N
).Nkind
= N_Type_Conversion
);
3037 function SCIL_Controlling_Tag
3038 (N
: Node_Id
) return Node_Id
is
3040 pragma Assert
(False
3041 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3043 end SCIL_Controlling_Tag
;
3045 function SCIL_Entity
3046 (N
: Node_Id
) return Node_Id
is
3048 pragma Assert
(False
3049 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
3050 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
3051 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3055 function SCIL_Tag_Value
3056 (N
: Node_Id
) return Node_Id
is
3058 pragma Assert
(False
3059 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
3063 function SCIL_Target_Prim
3064 (N
: Node_Id
) return Node_Id
is
3066 pragma Assert
(False
3067 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
3069 end SCIL_Target_Prim
;
3072 (N
: Node_Id
) return Node_Id
is
3074 pragma Assert
(False
3075 or else NT
(N
).Nkind
= N_Defining_Character_Literal
3076 or else NT
(N
).Nkind
= N_Defining_Identifier
3077 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
3081 function Select_Alternatives
3082 (N
: Node_Id
) return List_Id
is
3084 pragma Assert
(False
3085 or else NT
(N
).Nkind
= N_Selective_Accept
);
3087 end Select_Alternatives
;
3089 function Selector_Name
3090 (N
: Node_Id
) return Node_Id
is
3092 pragma Assert
(False
3093 or else NT
(N
).Nkind
= N_Expanded_Name
3094 or else NT
(N
).Nkind
= N_Generic_Association
3095 or else NT
(N
).Nkind
= N_Parameter_Association
3096 or else NT
(N
).Nkind
= N_Selected_Component
);
3100 function Selector_Names
3101 (N
: Node_Id
) return List_Id
is
3103 pragma Assert
(False
3104 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3108 function Shift_Count_OK
3109 (N
: Node_Id
) return Boolean is
3111 pragma Assert
(False
3112 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3113 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3114 or else NT
(N
).Nkind
= N_Op_Shift_Left
3115 or else NT
(N
).Nkind
= N_Op_Shift_Right
3116 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3120 function Source_Type
3121 (N
: Node_Id
) return Entity_Id
is
3123 pragma Assert
(False
3124 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3128 function Specification
3129 (N
: Node_Id
) return Node_Id
is
3131 pragma Assert
(False
3132 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3133 or else NT
(N
).Nkind
= N_Expression_Function
3134 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3135 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3136 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3137 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3138 or else NT
(N
).Nkind
= N_Package_Declaration
3139 or else NT
(N
).Nkind
= N_Subprogram_Body
3140 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3141 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3142 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3147 (N
: Node_Id
) return Boolean is
3149 pragma Assert
(False
3150 or else NT
(N
).Nkind
= N_Aspect_Specification
3151 or else NT
(N
).Nkind
= N_Pragma
);
3156 (N
: Node_Id
) return List_Id
is
3158 pragma Assert
(False
3159 or else NT
(N
).Nkind
= N_Abortable_Part
3160 or else NT
(N
).Nkind
= N_Accept_Alternative
3161 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3162 or else NT
(N
).Nkind
= N_Delay_Alternative
3163 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3164 or else NT
(N
).Nkind
= N_Exception_Handler
3165 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3166 or else NT
(N
).Nkind
= N_Loop_Statement
3167 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3171 function Storage_Pool
3172 (N
: Node_Id
) return Node_Id
is
3174 pragma Assert
(False
3175 or else NT
(N
).Nkind
= N_Allocator
3176 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3177 or else NT
(N
).Nkind
= N_Free_Statement
3178 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3182 function Subpool_Handle_Name
3183 (N
: Node_Id
) return Node_Id
is
3185 pragma Assert
(False
3186 or else NT
(N
).Nkind
= N_Allocator
);
3188 end Subpool_Handle_Name
;
3191 (N
: Node_Id
) return String_Id
is
3193 pragma Assert
(False
3194 or else NT
(N
).Nkind
= N_Operator_Symbol
3195 or else NT
(N
).Nkind
= N_String_Literal
);
3199 function Subtype_Indication
3200 (N
: Node_Id
) return Node_Id
is
3202 pragma Assert
(False
3203 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3204 or else NT
(N
).Nkind
= N_Component_Definition
3205 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3206 or else NT
(N
).Nkind
= N_Iterator_Specification
3207 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3208 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3210 end Subtype_Indication
;
3212 function Suppress_Assignment_Checks
3213 (N
: Node_Id
) return Boolean is
3215 pragma Assert
(False
3216 or else NT
(N
).Nkind
= N_Assignment_Statement
3217 or else NT
(N
).Nkind
= N_Object_Declaration
);
3219 end Suppress_Assignment_Checks
;
3221 function Suppress_Loop_Warnings
3222 (N
: Node_Id
) return Boolean is
3224 pragma Assert
(False
3225 or else NT
(N
).Nkind
= N_Loop_Statement
);
3227 end Suppress_Loop_Warnings
;
3229 function Subtype_Mark
3230 (N
: Node_Id
) return Node_Id
is
3232 pragma Assert
(False
3233 or else NT
(N
).Nkind
= N_Access_Definition
3234 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3235 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3236 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3237 or else NT
(N
).Nkind
= N_Qualified_Expression
3238 or else NT
(N
).Nkind
= N_Subtype_Indication
3239 or else NT
(N
).Nkind
= N_Type_Conversion
3240 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
3241 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3245 function Subtype_Marks
3246 (N
: Node_Id
) return List_Id
is
3248 pragma Assert
(False
3249 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3253 function Synchronized_Present
3254 (N
: Node_Id
) return Boolean is
3256 pragma Assert
(False
3257 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3258 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3259 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3260 or else NT
(N
).Nkind
= N_Record_Definition
);
3262 end Synchronized_Present
;
3264 function Tagged_Present
3265 (N
: Node_Id
) return Boolean is
3267 pragma Assert
(False
3268 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3269 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3270 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3271 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3272 or else NT
(N
).Nkind
= N_Record_Definition
);
3277 (N
: Node_Id
) return Entity_Id
is
3279 pragma Assert
(False
3280 or else NT
(N
).Nkind
= N_Call_Marker
);
3284 function Target_Type
3285 (N
: Node_Id
) return Entity_Id
is
3287 pragma Assert
(False
3288 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3292 function Task_Definition
3293 (N
: Node_Id
) return Node_Id
is
3295 pragma Assert
(False
3296 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3297 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3299 end Task_Definition
;
3301 function Task_Present
3302 (N
: Node_Id
) return Boolean is
3304 pragma Assert
(False
3305 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3306 or else NT
(N
).Nkind
= N_Record_Definition
);
3310 function Then_Actions
3311 (N
: Node_Id
) return List_Id
is
3313 pragma Assert
(False
3314 or else NT
(N
).Nkind
= N_If_Expression
);
3318 function Then_Statements
3319 (N
: Node_Id
) return List_Id
is
3321 pragma Assert
(False
3322 or else NT
(N
).Nkind
= N_Elsif_Part
3323 or else NT
(N
).Nkind
= N_If_Statement
);
3325 end Then_Statements
;
3327 function Treat_Fixed_As_Integer
3328 (N
: Node_Id
) return Boolean is
3330 pragma Assert
(False
3331 or else NT
(N
).Nkind
= N_Op_Divide
3332 or else NT
(N
).Nkind
= N_Op_Mod
3333 or else NT
(N
).Nkind
= N_Op_Multiply
3334 or else NT
(N
).Nkind
= N_Op_Rem
);
3336 end Treat_Fixed_As_Integer
;
3338 function Triggering_Alternative
3339 (N
: Node_Id
) return Node_Id
is
3341 pragma Assert
(False
3342 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3344 end Triggering_Alternative
;
3346 function Triggering_Statement
3347 (N
: Node_Id
) return Node_Id
is
3349 pragma Assert
(False
3350 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3352 end Triggering_Statement
;
3355 (N
: Node_Id
) return Elist_Id
is
3357 pragma Assert
(False
3358 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3362 function Type_Definition
3363 (N
: Node_Id
) return Node_Id
is
3365 pragma Assert
(False
3366 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3368 end Type_Definition
;
3370 function Uneval_Old_Accept
3371 (N
: Node_Id
) return Boolean is
3373 pragma Assert
(False
3374 or else NT
(N
).Nkind
= N_Pragma
);
3376 end Uneval_Old_Accept
;
3378 function Uneval_Old_Warn
3379 (N
: Node_Id
) return Boolean is
3381 pragma Assert
(False
3382 or else NT
(N
).Nkind
= N_Pragma
);
3384 end Uneval_Old_Warn
;
3387 (N
: Node_Id
) return Node_Id
is
3389 pragma Assert
(False
3390 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3394 function Unknown_Discriminants_Present
3395 (N
: Node_Id
) return Boolean is
3397 pragma Assert
(False
3398 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3399 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3400 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3401 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3403 end Unknown_Discriminants_Present
;
3405 function Unreferenced_In_Spec
3406 (N
: Node_Id
) return Boolean is
3408 pragma Assert
(False
3409 or else NT
(N
).Nkind
= N_With_Clause
);
3411 end Unreferenced_In_Spec
;
3413 function Variant_Part
3414 (N
: Node_Id
) return Node_Id
is
3416 pragma Assert
(False
3417 or else NT
(N
).Nkind
= N_Component_List
);
3422 (N
: Node_Id
) return List_Id
is
3424 pragma Assert
(False
3425 or else NT
(N
).Nkind
= N_Variant_Part
);
3429 function Visible_Declarations
3430 (N
: Node_Id
) return List_Id
is
3432 pragma Assert
(False
3433 or else NT
(N
).Nkind
= N_Package_Specification
3434 or else NT
(N
).Nkind
= N_Protected_Definition
3435 or else NT
(N
).Nkind
= N_Task_Definition
);
3437 end Visible_Declarations
;
3439 function Uninitialized_Variable
3440 (N
: Node_Id
) return Node_Id
is
3442 pragma Assert
(False
3443 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3444 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3446 end Uninitialized_Variable
;
3448 function Used_Operations
3449 (N
: Node_Id
) return Elist_Id
is
3451 pragma Assert
(False
3452 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3454 end Used_Operations
;
3456 function Was_Attribute_Reference
3457 (N
: Node_Id
) return Boolean is
3459 pragma Assert
(False
3460 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3462 end Was_Attribute_Reference
;
3464 function Was_Expression_Function
3465 (N
: Node_Id
) return Boolean is
3467 pragma Assert
(False
3468 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3470 end Was_Expression_Function
;
3472 function Was_Originally_Stub
3473 (N
: Node_Id
) return Boolean is
3475 pragma Assert
(False
3476 or else NT
(N
).Nkind
= N_Package_Body
3477 or else NT
(N
).Nkind
= N_Protected_Body
3478 or else NT
(N
).Nkind
= N_Subprogram_Body
3479 or else NT
(N
).Nkind
= N_Task_Body
);
3481 end Was_Originally_Stub
;
3483 function Withed_Body
3484 (N
: Node_Id
) return Node_Id
is
3486 pragma Assert
(False
3487 or else NT
(N
).Nkind
= N_With_Clause
);
3491 --------------------------
3492 -- Field Set Procedures --
3493 --------------------------
3495 procedure Set_Abort_Present
3496 (N
: Node_Id
; Val
: Boolean := True) is
3498 pragma Assert
(False
3499 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3500 Set_Flag15
(N
, Val
);
3501 end Set_Abort_Present
;
3503 procedure Set_Abortable_Part
3504 (N
: Node_Id
; Val
: Node_Id
) is
3506 pragma Assert
(False
3507 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3508 Set_Node2_With_Parent
(N
, Val
);
3509 end Set_Abortable_Part
;
3511 procedure Set_Abstract_Present
3512 (N
: Node_Id
; Val
: Boolean := True) is
3514 pragma Assert
(False
3515 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3516 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3517 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3518 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3519 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3520 or else NT
(N
).Nkind
= N_Record_Definition
);
3522 end Set_Abstract_Present
;
3524 procedure Set_Accept_Handler_Records
3525 (N
: Node_Id
; Val
: List_Id
) is
3527 pragma Assert
(False
3528 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3529 Set_List5
(N
, Val
); -- semantic field, no parent set
3530 end Set_Accept_Handler_Records
;
3532 procedure Set_Accept_Statement
3533 (N
: Node_Id
; Val
: Node_Id
) is
3535 pragma Assert
(False
3536 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3537 Set_Node2_With_Parent
(N
, Val
);
3538 end Set_Accept_Statement
;
3540 procedure Set_Access_Definition
3541 (N
: Node_Id
; Val
: Node_Id
) is
3543 pragma Assert
(False
3544 or else NT
(N
).Nkind
= N_Component_Definition
3545 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3546 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3547 Set_Node3_With_Parent
(N
, Val
);
3548 end Set_Access_Definition
;
3550 procedure Set_Access_To_Subprogram_Definition
3551 (N
: Node_Id
; Val
: Node_Id
) is
3553 pragma Assert
(False
3554 or else NT
(N
).Nkind
= N_Access_Definition
);
3555 Set_Node3_With_Parent
(N
, Val
);
3556 end Set_Access_To_Subprogram_Definition
;
3558 procedure Set_Access_Types_To_Process
3559 (N
: Node_Id
; Val
: Elist_Id
) is
3561 pragma Assert
(False
3562 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3563 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3564 end Set_Access_Types_To_Process
;
3566 procedure Set_Actions
3567 (N
: Node_Id
; Val
: List_Id
) is
3569 pragma Assert
(False
3570 or else NT
(N
).Nkind
= N_And_Then
3571 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3572 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3573 or else NT
(N
).Nkind
= N_Compound_Statement
3574 or else NT
(N
).Nkind
= N_Expression_With_Actions
3575 or else NT
(N
).Nkind
= N_Freeze_Entity
3576 or else NT
(N
).Nkind
= N_Or_Else
);
3577 Set_List1_With_Parent
(N
, Val
);
3580 procedure Set_Activation_Chain_Entity
3581 (N
: Node_Id
; Val
: Node_Id
) is
3583 pragma Assert
(False
3584 or else NT
(N
).Nkind
= N_Block_Statement
3585 or else NT
(N
).Nkind
= N_Entry_Body
3586 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3587 or else NT
(N
).Nkind
= N_Package_Declaration
3588 or else NT
(N
).Nkind
= N_Subprogram_Body
3589 or else NT
(N
).Nkind
= N_Task_Body
);
3590 Set_Node3
(N
, Val
); -- semantic field, no parent set
3591 end Set_Activation_Chain_Entity
;
3593 procedure Set_Acts_As_Spec
3594 (N
: Node_Id
; Val
: Boolean := True) is
3596 pragma Assert
(False
3597 or else NT
(N
).Nkind
= N_Compilation_Unit
3598 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3600 end Set_Acts_As_Spec
;
3602 procedure Set_Actual_Designated_Subtype
3603 (N
: Node_Id
; Val
: Node_Id
) is
3605 pragma Assert
(False
3606 or else NT
(N
).Nkind
= N_Explicit_Dereference
3607 or else NT
(N
).Nkind
= N_Free_Statement
);
3609 end Set_Actual_Designated_Subtype
;
3611 procedure Set_Address_Warning_Posted
3612 (N
: Node_Id
; Val
: Boolean := True) is
3614 pragma Assert
(False
3615 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3616 Set_Flag18
(N
, Val
);
3617 end Set_Address_Warning_Posted
;
3619 procedure Set_Aggregate_Bounds
3620 (N
: Node_Id
; Val
: Node_Id
) is
3622 pragma Assert
(False
3623 or else NT
(N
).Nkind
= N_Aggregate
);
3624 Set_Node3
(N
, Val
); -- semantic field, no parent set
3625 end Set_Aggregate_Bounds
;
3627 procedure Set_Aliased_Present
3628 (N
: Node_Id
; Val
: Boolean := True) is
3630 pragma Assert
(False
3631 or else NT
(N
).Nkind
= N_Component_Definition
3632 or else NT
(N
).Nkind
= N_Object_Declaration
3633 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3635 end Set_Aliased_Present
;
3637 procedure Set_Alloc_For_BIP_Return
3638 (N
: Node_Id
; Val
: Boolean := True) is
3640 pragma Assert
(False
3641 or else NT
(N
).Nkind
= N_Allocator
);
3643 end Set_Alloc_For_BIP_Return
;
3645 procedure Set_All_Others
3646 (N
: Node_Id
; Val
: Boolean := True) is
3648 pragma Assert
(False
3649 or else NT
(N
).Nkind
= N_Others_Choice
);
3650 Set_Flag11
(N
, Val
);
3653 procedure Set_All_Present
3654 (N
: Node_Id
; Val
: Boolean := True) is
3656 pragma Assert
(False
3657 or else NT
(N
).Nkind
= N_Access_Definition
3658 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3659 or else NT
(N
).Nkind
= N_Quantified_Expression
3660 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3661 Set_Flag15
(N
, Val
);
3662 end Set_All_Present
;
3664 procedure Set_Alternatives
3665 (N
: Node_Id
; Val
: List_Id
) is
3667 pragma Assert
(False
3668 or else NT
(N
).Nkind
= N_Case_Expression
3669 or else NT
(N
).Nkind
= N_Case_Statement
3670 or else NT
(N
).Nkind
= N_In
3671 or else NT
(N
).Nkind
= N_Not_In
);
3672 Set_List4_With_Parent
(N
, Val
);
3673 end Set_Alternatives
;
3675 procedure Set_Ancestor_Part
3676 (N
: Node_Id
; Val
: Node_Id
) is
3678 pragma Assert
(False
3679 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3680 Set_Node3_With_Parent
(N
, Val
);
3681 end Set_Ancestor_Part
;
3683 procedure Set_Atomic_Sync_Required
3684 (N
: Node_Id
; Val
: Boolean := True) is
3686 pragma Assert
(False
3687 or else NT
(N
).Nkind
= N_Expanded_Name
3688 or else NT
(N
).Nkind
= N_Explicit_Dereference
3689 or else NT
(N
).Nkind
= N_Identifier
3690 or else NT
(N
).Nkind
= N_Indexed_Component
3691 or else NT
(N
).Nkind
= N_Selected_Component
);
3692 Set_Flag14
(N
, Val
);
3693 end Set_Atomic_Sync_Required
;
3695 procedure Set_Array_Aggregate
3696 (N
: Node_Id
; Val
: Node_Id
) is
3698 pragma Assert
(False
3699 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3700 Set_Node3_With_Parent
(N
, Val
);
3701 end Set_Array_Aggregate
;
3703 procedure Set_Aspect_Rep_Item
3704 (N
: Node_Id
; Val
: Node_Id
) is
3706 pragma Assert
(False
3707 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3709 end Set_Aspect_Rep_Item
;
3711 procedure Set_Assignment_OK
3712 (N
: Node_Id
; Val
: Boolean := True) is
3714 pragma Assert
(False
3715 or else NT
(N
).Nkind
= N_Object_Declaration
3716 or else NT
(N
).Nkind
in N_Subexpr
);
3717 Set_Flag15
(N
, Val
);
3718 end Set_Assignment_OK
;
3720 procedure Set_Associated_Node
3721 (N
: Node_Id
; Val
: Node_Id
) is
3723 pragma Assert
(False
3724 or else NT
(N
).Nkind
in N_Has_Entity
3725 or else NT
(N
).Nkind
= N_Aggregate
3726 or else NT
(N
).Nkind
= N_Extension_Aggregate
3727 or else NT
(N
).Nkind
= N_Selected_Component
3728 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
3729 Set_Node4
(N
, Val
); -- semantic field, no parent set
3730 end Set_Associated_Node
;
3732 procedure Set_At_End_Proc
3733 (N
: Node_Id
; Val
: Node_Id
) is
3735 pragma Assert
(False
3736 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3738 end Set_At_End_Proc
;
3740 procedure Set_Attribute_Name
3741 (N
: Node_Id
; Val
: Name_Id
) is
3743 pragma Assert
(False
3744 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3746 end Set_Attribute_Name
;
3748 procedure Set_Aux_Decls_Node
3749 (N
: Node_Id
; Val
: Node_Id
) is
3751 pragma Assert
(False
3752 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3753 Set_Node5_With_Parent
(N
, Val
);
3754 end Set_Aux_Decls_Node
;
3756 procedure Set_Backwards_OK
3757 (N
: Node_Id
; Val
: Boolean := True) is
3759 pragma Assert
(False
3760 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3762 end Set_Backwards_OK
;
3764 procedure Set_Bad_Is_Detected
3765 (N
: Node_Id
; Val
: Boolean := True) is
3767 pragma Assert
(False
3768 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3769 Set_Flag15
(N
, Val
);
3770 end Set_Bad_Is_Detected
;
3772 procedure Set_Body_Required
3773 (N
: Node_Id
; Val
: Boolean := True) is
3775 pragma Assert
(False
3776 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3777 Set_Flag13
(N
, Val
);
3778 end Set_Body_Required
;
3780 procedure Set_Body_To_Inline
3781 (N
: Node_Id
; Val
: Node_Id
) is
3783 pragma Assert
(False
3784 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3786 end Set_Body_To_Inline
;
3788 procedure Set_Box_Present
3789 (N
: Node_Id
; Val
: Boolean := True) is
3791 pragma Assert
(False
3792 or else NT
(N
).Nkind
= N_Component_Association
3793 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3794 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3795 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3796 or else NT
(N
).Nkind
= N_Generic_Association
3797 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3798 Set_Flag15
(N
, Val
);
3799 end Set_Box_Present
;
3801 procedure Set_By_Ref
3802 (N
: Node_Id
; Val
: Boolean := True) is
3804 pragma Assert
(False
3805 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3806 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3810 procedure Set_Char_Literal_Value
3811 (N
: Node_Id
; Val
: Uint
) is
3813 pragma Assert
(False
3814 or else NT
(N
).Nkind
= N_Character_Literal
);
3816 end Set_Char_Literal_Value
;
3819 (N
: Node_Id
; Val
: Name_Id
) is
3821 pragma Assert
(False
3822 or else NT
(N
).Nkind
in N_Has_Chars
);
3826 procedure Set_Check_Address_Alignment
3827 (N
: Node_Id
; Val
: Boolean := True) is
3829 pragma Assert
(False
3830 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3831 Set_Flag11
(N
, Val
);
3832 end Set_Check_Address_Alignment
;
3834 procedure Set_Choice_Parameter
3835 (N
: Node_Id
; Val
: Node_Id
) is
3837 pragma Assert
(False
3838 or else NT
(N
).Nkind
= N_Exception_Handler
);
3839 Set_Node2_With_Parent
(N
, Val
);
3840 end Set_Choice_Parameter
;
3842 procedure Set_Choices
3843 (N
: Node_Id
; Val
: List_Id
) is
3845 pragma Assert
(False
3846 or else NT
(N
).Nkind
= N_Component_Association
);
3847 Set_List1_With_Parent
(N
, Val
);
3850 procedure Set_Class_Present
3851 (N
: Node_Id
; Val
: Boolean := True) is
3853 pragma Assert
(False
3854 or else NT
(N
).Nkind
= N_Aspect_Specification
3855 or else NT
(N
).Nkind
= N_Pragma
);
3857 end Set_Class_Present
;
3859 procedure Set_Classifications
3860 (N
: Node_Id
; Val
: Node_Id
) is
3862 pragma Assert
(False
3863 or else NT
(N
).Nkind
= N_Contract
);
3864 Set_Node3
(N
, Val
); -- semantic field, no parent set
3865 end Set_Classifications
;
3867 procedure Set_Cleanup_Actions
3868 (N
: Node_Id
; Val
: List_Id
) is
3870 pragma Assert
(False
3871 or else NT
(N
).Nkind
= N_Block_Statement
);
3872 Set_List5
(N
, Val
); -- semantic field, no parent set
3873 end Set_Cleanup_Actions
;
3875 procedure Set_Comes_From_Extended_Return_Statement
3876 (N
: Node_Id
; Val
: Boolean := True) is
3878 pragma Assert
(False
3879 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3880 Set_Flag18
(N
, Val
);
3881 end Set_Comes_From_Extended_Return_Statement
;
3883 procedure Set_Compile_Time_Known_Aggregate
3884 (N
: Node_Id
; Val
: Boolean := True) is
3886 pragma Assert
(False
3887 or else NT
(N
).Nkind
= N_Aggregate
);
3888 Set_Flag18
(N
, Val
);
3889 end Set_Compile_Time_Known_Aggregate
;
3891 procedure Set_Component_Associations
3892 (N
: Node_Id
; Val
: List_Id
) is
3894 pragma Assert
(False
3895 or else NT
(N
).Nkind
= N_Aggregate
3896 or else NT
(N
).Nkind
= N_Delta_Aggregate
3897 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3898 Set_List2_With_Parent
(N
, Val
);
3899 end Set_Component_Associations
;
3901 procedure Set_Component_Clauses
3902 (N
: Node_Id
; Val
: List_Id
) is
3904 pragma Assert
(False
3905 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3906 Set_List3_With_Parent
(N
, Val
);
3907 end Set_Component_Clauses
;
3909 procedure Set_Component_Definition
3910 (N
: Node_Id
; Val
: Node_Id
) is
3912 pragma Assert
(False
3913 or else NT
(N
).Nkind
= N_Component_Declaration
3914 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3915 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3916 Set_Node4_With_Parent
(N
, Val
);
3917 end Set_Component_Definition
;
3919 procedure Set_Component_Items
3920 (N
: Node_Id
; Val
: List_Id
) is
3922 pragma Assert
(False
3923 or else NT
(N
).Nkind
= N_Component_List
);
3924 Set_List3_With_Parent
(N
, Val
);
3925 end Set_Component_Items
;
3927 procedure Set_Component_List
3928 (N
: Node_Id
; Val
: Node_Id
) is
3930 pragma Assert
(False
3931 or else NT
(N
).Nkind
= N_Record_Definition
3932 or else NT
(N
).Nkind
= N_Variant
);
3933 Set_Node1_With_Parent
(N
, Val
);
3934 end Set_Component_List
;
3936 procedure Set_Component_Name
3937 (N
: Node_Id
; Val
: Node_Id
) is
3939 pragma Assert
(False
3940 or else NT
(N
).Nkind
= N_Component_Clause
);
3941 Set_Node1_With_Parent
(N
, Val
);
3942 end Set_Component_Name
;
3944 procedure Set_Componentwise_Assignment
3945 (N
: Node_Id
; Val
: Boolean := True) is
3947 pragma Assert
(False
3948 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3949 Set_Flag14
(N
, Val
);
3950 end Set_Componentwise_Assignment
;
3952 procedure Set_Condition
3953 (N
: Node_Id
; Val
: Node_Id
) is
3955 pragma Assert
(False
3956 or else NT
(N
).Nkind
= N_Accept_Alternative
3957 or else NT
(N
).Nkind
= N_Delay_Alternative
3958 or else NT
(N
).Nkind
= N_Elsif_Part
3959 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3960 or else NT
(N
).Nkind
= N_Exit_Statement
3961 or else NT
(N
).Nkind
= N_If_Statement
3962 or else NT
(N
).Nkind
= N_Iteration_Scheme
3963 or else NT
(N
).Nkind
= N_Quantified_Expression
3964 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3965 or else NT
(N
).Nkind
= N_Raise_Program_Error
3966 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3967 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3968 Set_Node1_With_Parent
(N
, Val
);
3971 procedure Set_Condition_Actions
3972 (N
: Node_Id
; Val
: List_Id
) is
3974 pragma Assert
(False
3975 or else NT
(N
).Nkind
= N_Elsif_Part
3976 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3977 Set_List3
(N
, Val
); -- semantic field, no parent set
3978 end Set_Condition_Actions
;
3980 procedure Set_Config_Pragmas
3981 (N
: Node_Id
; Val
: List_Id
) is
3983 pragma Assert
(False
3984 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3985 Set_List4_With_Parent
(N
, Val
);
3986 end Set_Config_Pragmas
;
3988 procedure Set_Constant_Present
3989 (N
: Node_Id
; Val
: Boolean := True) is
3991 pragma Assert
(False
3992 or else NT
(N
).Nkind
= N_Access_Definition
3993 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3994 or else NT
(N
).Nkind
= N_Object_Declaration
);
3995 Set_Flag17
(N
, Val
);
3996 end Set_Constant_Present
;
3998 procedure Set_Constraint
3999 (N
: Node_Id
; Val
: Node_Id
) is
4001 pragma Assert
(False
4002 or else NT
(N
).Nkind
= N_Subtype_Indication
);
4003 Set_Node3_With_Parent
(N
, Val
);
4006 procedure Set_Constraints
4007 (N
: Node_Id
; Val
: List_Id
) is
4009 pragma Assert
(False
4010 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
4011 Set_List1_With_Parent
(N
, Val
);
4012 end Set_Constraints
;
4014 procedure Set_Context_Installed
4015 (N
: Node_Id
; Val
: Boolean := True) is
4017 pragma Assert
(False
4018 or else NT
(N
).Nkind
= N_With_Clause
);
4019 Set_Flag13
(N
, Val
);
4020 end Set_Context_Installed
;
4022 procedure Set_Context_Items
4023 (N
: Node_Id
; Val
: List_Id
) is
4025 pragma Assert
(False
4026 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4027 Set_List1_With_Parent
(N
, Val
);
4028 end Set_Context_Items
;
4030 procedure Set_Context_Pending
4031 (N
: Node_Id
; Val
: Boolean := True) is
4033 pragma Assert
(False
4034 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4035 Set_Flag16
(N
, Val
);
4036 end Set_Context_Pending
;
4038 procedure Set_Contract_Test_Cases
4039 (N
: Node_Id
; Val
: Node_Id
) is
4041 pragma Assert
(False
4042 or else NT
(N
).Nkind
= N_Contract
);
4043 Set_Node2
(N
, Val
); -- semantic field, no parent set
4044 end Set_Contract_Test_Cases
;
4046 procedure Set_Controlling_Argument
4047 (N
: Node_Id
; Val
: Node_Id
) is
4049 pragma Assert
(False
4050 or else NT
(N
).Nkind
= N_Function_Call
4051 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4052 Set_Node1
(N
, Val
); -- semantic field, no parent set
4053 end Set_Controlling_Argument
;
4055 procedure Set_Conversion_OK
4056 (N
: Node_Id
; Val
: Boolean := True) is
4058 pragma Assert
(False
4059 or else NT
(N
).Nkind
= N_Type_Conversion
);
4060 Set_Flag14
(N
, Val
);
4061 end Set_Conversion_OK
;
4063 procedure Set_Convert_To_Return_False
4064 (N
: Node_Id
; Val
: Boolean := True) is
4066 pragma Assert
(False
4067 or else NT
(N
).Nkind
= N_Raise_Expression
);
4068 Set_Flag13
(N
, Val
);
4069 end Set_Convert_To_Return_False
;
4071 procedure Set_Corresponding_Aspect
4072 (N
: Node_Id
; Val
: Node_Id
) is
4074 pragma Assert
(False
4075 or else NT
(N
).Nkind
= N_Pragma
);
4077 end Set_Corresponding_Aspect
;
4079 procedure Set_Corresponding_Body
4080 (N
: Node_Id
; Val
: Node_Id
) is
4082 pragma Assert
(False
4083 or else NT
(N
).Nkind
= N_Entry_Declaration
4084 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4085 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
4086 or else NT
(N
).Nkind
= N_Package_Body_Stub
4087 or else NT
(N
).Nkind
= N_Package_Declaration
4088 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4089 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4090 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4091 or else NT
(N
).Nkind
= N_Subprogram_Declaration
4092 or else NT
(N
).Nkind
= N_Task_Body_Stub
4093 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4094 Set_Node5
(N
, Val
); -- semantic field, no parent set
4095 end Set_Corresponding_Body
;
4097 procedure Set_Corresponding_Formal_Spec
4098 (N
: Node_Id
; Val
: Node_Id
) is
4100 pragma Assert
(False
4101 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4102 Set_Node3
(N
, Val
); -- semantic field, no parent set
4103 end Set_Corresponding_Formal_Spec
;
4105 procedure Set_Corresponding_Generic_Association
4106 (N
: Node_Id
; Val
: Node_Id
) is
4108 pragma Assert
(False
4109 or else NT
(N
).Nkind
= N_Object_Declaration
4110 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4111 Set_Node5
(N
, Val
); -- semantic field, no parent set
4112 end Set_Corresponding_Generic_Association
;
4114 procedure Set_Corresponding_Integer_Value
4115 (N
: Node_Id
; Val
: Uint
) is
4117 pragma Assert
(False
4118 or else NT
(N
).Nkind
= N_Real_Literal
);
4119 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4120 end Set_Corresponding_Integer_Value
;
4122 procedure Set_Corresponding_Spec
4123 (N
: Node_Id
; Val
: Entity_Id
) is
4125 pragma Assert
(False
4126 or else NT
(N
).Nkind
= N_Expression_Function
4127 or else NT
(N
).Nkind
= N_Package_Body
4128 or else NT
(N
).Nkind
= N_Protected_Body
4129 or else NT
(N
).Nkind
= N_Subprogram_Body
4130 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4131 or else NT
(N
).Nkind
= N_Task_Body
4132 or else NT
(N
).Nkind
= N_With_Clause
);
4133 Set_Node5
(N
, Val
); -- semantic field, no parent set
4134 end Set_Corresponding_Spec
;
4136 procedure Set_Corresponding_Spec_Of_Stub
4137 (N
: Node_Id
; Val
: Entity_Id
) is
4139 pragma Assert
(False
4140 or else NT
(N
).Nkind
= N_Package_Body_Stub
4141 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4142 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4143 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4144 Set_Node2
(N
, Val
); -- semantic field, no parent set
4145 end Set_Corresponding_Spec_Of_Stub
;
4147 procedure Set_Corresponding_Stub
4148 (N
: Node_Id
; Val
: Node_Id
) is
4150 pragma Assert
(False
4151 or else NT
(N
).Nkind
= N_Subunit
);
4153 end Set_Corresponding_Stub
;
4155 procedure Set_Dcheck_Function
4156 (N
: Node_Id
; Val
: Entity_Id
) is
4158 pragma Assert
(False
4159 or else NT
(N
).Nkind
= N_Variant
);
4160 Set_Node5
(N
, Val
); -- semantic field, no parent set
4161 end Set_Dcheck_Function
;
4163 procedure Set_Declarations
4164 (N
: Node_Id
; Val
: List_Id
) is
4166 pragma Assert
(False
4167 or else NT
(N
).Nkind
= N_Accept_Statement
4168 or else NT
(N
).Nkind
= N_Block_Statement
4169 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4170 or else NT
(N
).Nkind
= N_Entry_Body
4171 or else NT
(N
).Nkind
= N_Package_Body
4172 or else NT
(N
).Nkind
= N_Protected_Body
4173 or else NT
(N
).Nkind
= N_Subprogram_Body
4174 or else NT
(N
).Nkind
= N_Task_Body
);
4175 Set_List2_With_Parent
(N
, Val
);
4176 end Set_Declarations
;
4178 procedure Set_Default_Expression
4179 (N
: Node_Id
; Val
: Node_Id
) is
4181 pragma Assert
(False
4182 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4183 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4184 Set_Node5
(N
, Val
); -- semantic field, no parent set
4185 end Set_Default_Expression
;
4187 procedure Set_Default_Storage_Pool
4188 (N
: Node_Id
; Val
: Node_Id
) is
4190 pragma Assert
(False
4191 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4192 Set_Node3
(N
, Val
); -- semantic field, no parent set
4193 end Set_Default_Storage_Pool
;
4195 procedure Set_Default_Name
4196 (N
: Node_Id
; Val
: Node_Id
) is
4198 pragma Assert
(False
4199 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4200 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4201 Set_Node2_With_Parent
(N
, Val
);
4202 end Set_Default_Name
;
4204 procedure Set_Defining_Identifier
4205 (N
: Node_Id
; Val
: Entity_Id
) is
4207 pragma Assert
(False
4208 or else NT
(N
).Nkind
= N_Component_Declaration
4209 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4210 or else NT
(N
).Nkind
= N_Discriminant_Specification
4211 or else NT
(N
).Nkind
= N_Entry_Body
4212 or else NT
(N
).Nkind
= N_Entry_Declaration
4213 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4214 or else NT
(N
).Nkind
= N_Exception_Declaration
4215 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4216 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4217 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4218 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4219 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4220 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4221 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4222 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4223 or else NT
(N
).Nkind
= N_Iterator_Specification
4224 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4225 or else NT
(N
).Nkind
= N_Number_Declaration
4226 or else NT
(N
).Nkind
= N_Object_Declaration
4227 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4228 or else NT
(N
).Nkind
= N_Package_Body_Stub
4229 or else NT
(N
).Nkind
= N_Parameter_Specification
4230 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4231 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4232 or else NT
(N
).Nkind
= N_Protected_Body
4233 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4234 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4235 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4236 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4237 or else NT
(N
).Nkind
= N_Subtype_Declaration
4238 or else NT
(N
).Nkind
= N_Task_Body
4239 or else NT
(N
).Nkind
= N_Task_Body_Stub
4240 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4241 Set_Node1_With_Parent
(N
, Val
);
4242 end Set_Defining_Identifier
;
4244 procedure Set_Defining_Unit_Name
4245 (N
: Node_Id
; Val
: Node_Id
) is
4247 pragma Assert
(False
4248 or else NT
(N
).Nkind
= N_Function_Instantiation
4249 or else NT
(N
).Nkind
= N_Function_Specification
4250 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4251 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4252 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4253 or else NT
(N
).Nkind
= N_Package_Body
4254 or else NT
(N
).Nkind
= N_Package_Instantiation
4255 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4256 or else NT
(N
).Nkind
= N_Package_Specification
4257 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4258 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4259 Set_Node1_With_Parent
(N
, Val
);
4260 end Set_Defining_Unit_Name
;
4262 procedure Set_Delay_Alternative
4263 (N
: Node_Id
; Val
: Node_Id
) is
4265 pragma Assert
(False
4266 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4267 Set_Node4_With_Parent
(N
, Val
);
4268 end Set_Delay_Alternative
;
4270 procedure Set_Delay_Statement
4271 (N
: Node_Id
; Val
: Node_Id
) is
4273 pragma Assert
(False
4274 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4275 Set_Node2_With_Parent
(N
, Val
);
4276 end Set_Delay_Statement
;
4278 procedure Set_Delta_Expression
4279 (N
: Node_Id
; Val
: Node_Id
) is
4281 pragma Assert
(False
4282 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4283 or else NT
(N
).Nkind
= N_Delta_Constraint
4284 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4285 Set_Node3_With_Parent
(N
, Val
);
4286 end Set_Delta_Expression
;
4288 procedure Set_Digits_Expression
4289 (N
: Node_Id
; Val
: Node_Id
) is
4291 pragma Assert
(False
4292 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4293 or else NT
(N
).Nkind
= N_Digits_Constraint
4294 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4295 Set_Node2_With_Parent
(N
, Val
);
4296 end Set_Digits_Expression
;
4298 procedure Set_Discr_Check_Funcs_Built
4299 (N
: Node_Id
; Val
: Boolean := True) is
4301 pragma Assert
(False
4302 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4303 Set_Flag11
(N
, Val
);
4304 end Set_Discr_Check_Funcs_Built
;
4306 procedure Set_Discrete_Choices
4307 (N
: Node_Id
; Val
: List_Id
) is
4309 pragma Assert
(False
4310 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4311 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4312 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4313 or else NT
(N
).Nkind
= N_Variant
);
4314 Set_List4_With_Parent
(N
, Val
);
4315 end Set_Discrete_Choices
;
4317 procedure Set_Discrete_Range
4318 (N
: Node_Id
; Val
: Node_Id
) is
4320 pragma Assert
(False
4321 or else NT
(N
).Nkind
= N_Slice
);
4322 Set_Node4_With_Parent
(N
, Val
);
4323 end Set_Discrete_Range
;
4325 procedure Set_Discrete_Subtype_Definition
4326 (N
: Node_Id
; Val
: Node_Id
) is
4328 pragma Assert
(False
4329 or else NT
(N
).Nkind
= N_Entry_Declaration
4330 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4331 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4332 Set_Node4_With_Parent
(N
, Val
);
4333 end Set_Discrete_Subtype_Definition
;
4335 procedure Set_Discrete_Subtype_Definitions
4336 (N
: Node_Id
; Val
: List_Id
) is
4338 pragma Assert
(False
4339 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4340 Set_List2_With_Parent
(N
, Val
);
4341 end Set_Discrete_Subtype_Definitions
;
4343 procedure Set_Discriminant_Specifications
4344 (N
: Node_Id
; Val
: List_Id
) is
4346 pragma Assert
(False
4347 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4348 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4349 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4350 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4351 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4352 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4353 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4354 Set_List4_With_Parent
(N
, Val
);
4355 end Set_Discriminant_Specifications
;
4357 procedure Set_Discriminant_Type
4358 (N
: Node_Id
; Val
: Node_Id
) is
4360 pragma Assert
(False
4361 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4362 Set_Node5_With_Parent
(N
, Val
);
4363 end Set_Discriminant_Type
;
4365 procedure Set_Do_Accessibility_Check
4366 (N
: Node_Id
; Val
: Boolean := True) is
4368 pragma Assert
(False
4369 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4370 Set_Flag13
(N
, Val
);
4371 end Set_Do_Accessibility_Check
;
4373 procedure Set_Do_Discriminant_Check
4374 (N
: Node_Id
; Val
: Boolean := True) is
4376 pragma Assert
(False
4377 or else NT
(N
).Nkind
= N_Assignment_Statement
4378 or else NT
(N
).Nkind
= N_Selected_Component
4379 or else NT
(N
).Nkind
= N_Type_Conversion
);
4381 end Set_Do_Discriminant_Check
;
4383 procedure Set_Do_Division_Check
4384 (N
: Node_Id
; Val
: Boolean := True) is
4386 pragma Assert
(False
4387 or else NT
(N
).Nkind
= N_Op_Divide
4388 or else NT
(N
).Nkind
= N_Op_Mod
4389 or else NT
(N
).Nkind
= N_Op_Rem
);
4390 Set_Flag13
(N
, Val
);
4391 end Set_Do_Division_Check
;
4393 procedure Set_Do_Length_Check
4394 (N
: Node_Id
; Val
: Boolean := True) is
4396 pragma Assert
(False
4397 or else NT
(N
).Nkind
= N_Assignment_Statement
4398 or else NT
(N
).Nkind
= N_Op_And
4399 or else NT
(N
).Nkind
= N_Op_Or
4400 or else NT
(N
).Nkind
= N_Op_Xor
4401 or else NT
(N
).Nkind
= N_Type_Conversion
);
4403 end Set_Do_Length_Check
;
4405 procedure Set_Do_Overflow_Check
4406 (N
: Node_Id
; Val
: Boolean := True) is
4408 pragma Assert
(False
4409 or else NT
(N
).Nkind
in N_Op
4410 or else NT
(N
).Nkind
= N_Attribute_Reference
4411 or else NT
(N
).Nkind
= N_Case_Expression
4412 or else NT
(N
).Nkind
= N_If_Expression
4413 or else NT
(N
).Nkind
= N_Type_Conversion
);
4414 Set_Flag17
(N
, Val
);
4415 end Set_Do_Overflow_Check
;
4417 procedure Set_Do_Range_Check
4418 (N
: Node_Id
; Val
: Boolean := True) is
4420 pragma Assert
(False
4421 or else NT
(N
).Nkind
in N_Subexpr
);
4423 end Set_Do_Range_Check
;
4425 procedure Set_Do_Storage_Check
4426 (N
: Node_Id
; Val
: Boolean := True) is
4428 pragma Assert
(False
4429 or else NT
(N
).Nkind
= N_Allocator
4430 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4431 Set_Flag17
(N
, Val
);
4432 end Set_Do_Storage_Check
;
4434 procedure Set_Do_Tag_Check
4435 (N
: Node_Id
; Val
: Boolean := True) is
4437 pragma Assert
(False
4438 or else NT
(N
).Nkind
= N_Assignment_Statement
4439 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4440 or else NT
(N
).Nkind
= N_Function_Call
4441 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4442 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4443 or else NT
(N
).Nkind
= N_Type_Conversion
);
4444 Set_Flag13
(N
, Val
);
4445 end Set_Do_Tag_Check
;
4447 procedure Set_Elaborate_All_Desirable
4448 (N
: Node_Id
; Val
: Boolean := True) is
4450 pragma Assert
(False
4451 or else NT
(N
).Nkind
= N_With_Clause
);
4453 end Set_Elaborate_All_Desirable
;
4455 procedure Set_Elaborate_All_Present
4456 (N
: Node_Id
; Val
: Boolean := True) is
4458 pragma Assert
(False
4459 or else NT
(N
).Nkind
= N_With_Clause
);
4460 Set_Flag14
(N
, Val
);
4461 end Set_Elaborate_All_Present
;
4463 procedure Set_Elaborate_Desirable
4464 (N
: Node_Id
; Val
: Boolean := True) is
4466 pragma Assert
(False
4467 or else NT
(N
).Nkind
= N_With_Clause
);
4468 Set_Flag11
(N
, Val
);
4469 end Set_Elaborate_Desirable
;
4471 procedure Set_Elaborate_Present
4472 (N
: Node_Id
; Val
: Boolean := True) is
4474 pragma Assert
(False
4475 or else NT
(N
).Nkind
= N_With_Clause
);
4477 end Set_Elaborate_Present
;
4479 procedure Set_Else_Actions
4480 (N
: Node_Id
; Val
: List_Id
) is
4482 pragma Assert
(False
4483 or else NT
(N
).Nkind
= N_If_Expression
);
4484 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4485 end Set_Else_Actions
;
4487 procedure Set_Else_Statements
4488 (N
: Node_Id
; Val
: List_Id
) is
4490 pragma Assert
(False
4491 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4492 or else NT
(N
).Nkind
= N_If_Statement
4493 or else NT
(N
).Nkind
= N_Selective_Accept
);
4494 Set_List4_With_Parent
(N
, Val
);
4495 end Set_Else_Statements
;
4497 procedure Set_Elsif_Parts
4498 (N
: Node_Id
; Val
: List_Id
) is
4500 pragma Assert
(False
4501 or else NT
(N
).Nkind
= N_If_Statement
);
4502 Set_List3_With_Parent
(N
, Val
);
4503 end Set_Elsif_Parts
;
4505 procedure Set_Enclosing_Variant
4506 (N
: Node_Id
; Val
: Node_Id
) is
4508 pragma Assert
(False
4509 or else NT
(N
).Nkind
= N_Variant
);
4510 Set_Node2
(N
, Val
); -- semantic field, no parent set
4511 end Set_Enclosing_Variant
;
4513 procedure Set_End_Label
4514 (N
: Node_Id
; Val
: Node_Id
) is
4516 pragma Assert
(False
4517 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4518 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4519 or else NT
(N
).Nkind
= N_Loop_Statement
4520 or else NT
(N
).Nkind
= N_Package_Specification
4521 or else NT
(N
).Nkind
= N_Protected_Body
4522 or else NT
(N
).Nkind
= N_Protected_Definition
4523 or else NT
(N
).Nkind
= N_Record_Definition
4524 or else NT
(N
).Nkind
= N_Task_Definition
);
4525 Set_Node4_With_Parent
(N
, Val
);
4528 procedure Set_End_Span
4529 (N
: Node_Id
; Val
: Uint
) is
4531 pragma Assert
(False
4532 or else NT
(N
).Nkind
= N_Case_Statement
4533 or else NT
(N
).Nkind
= N_If_Statement
);
4537 procedure Set_Entity
4538 (N
: Node_Id
; Val
: Node_Id
) is
4540 pragma Assert
(False
4541 or else NT
(N
).Nkind
in N_Has_Entity
4542 or else NT
(N
).Nkind
= N_Aspect_Specification
4543 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4544 or else NT
(N
).Nkind
= N_Freeze_Entity
4545 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4546 Set_Node4
(N
, Val
); -- semantic field, no parent set
4549 procedure Set_Entry_Body_Formal_Part
4550 (N
: Node_Id
; Val
: Node_Id
) is
4552 pragma Assert
(False
4553 or else NT
(N
).Nkind
= N_Entry_Body
);
4554 Set_Node5_With_Parent
(N
, Val
);
4555 end Set_Entry_Body_Formal_Part
;
4557 procedure Set_Entry_Call_Alternative
4558 (N
: Node_Id
; Val
: Node_Id
) is
4560 pragma Assert
(False
4561 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4562 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4563 Set_Node1_With_Parent
(N
, Val
);
4564 end Set_Entry_Call_Alternative
;
4566 procedure Set_Entry_Call_Statement
4567 (N
: Node_Id
; Val
: Node_Id
) is
4569 pragma Assert
(False
4570 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4571 Set_Node1_With_Parent
(N
, Val
);
4572 end Set_Entry_Call_Statement
;
4574 procedure Set_Entry_Direct_Name
4575 (N
: Node_Id
; Val
: Node_Id
) is
4577 pragma Assert
(False
4578 or else NT
(N
).Nkind
= N_Accept_Statement
);
4579 Set_Node1_With_Parent
(N
, Val
);
4580 end Set_Entry_Direct_Name
;
4582 procedure Set_Entry_Index
4583 (N
: Node_Id
; Val
: Node_Id
) is
4585 pragma Assert
(False
4586 or else NT
(N
).Nkind
= N_Accept_Statement
);
4587 Set_Node5_With_Parent
(N
, Val
);
4588 end Set_Entry_Index
;
4590 procedure Set_Entry_Index_Specification
4591 (N
: Node_Id
; Val
: Node_Id
) is
4593 pragma Assert
(False
4594 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4595 Set_Node4_With_Parent
(N
, Val
);
4596 end Set_Entry_Index_Specification
;
4599 (N
: Node_Id
; Val
: Node_Id
) is
4601 pragma Assert
(False
4602 or else NT
(N
).Nkind
in N_Has_Etype
);
4603 Set_Node5
(N
, Val
); -- semantic field, no parent set
4606 procedure Set_Exception_Choices
4607 (N
: Node_Id
; Val
: List_Id
) is
4609 pragma Assert
(False
4610 or else NT
(N
).Nkind
= N_Exception_Handler
);
4611 Set_List4_With_Parent
(N
, Val
);
4612 end Set_Exception_Choices
;
4614 procedure Set_Exception_Handlers
4615 (N
: Node_Id
; Val
: List_Id
) is
4617 pragma Assert
(False
4618 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4619 Set_List5_With_Parent
(N
, Val
);
4620 end Set_Exception_Handlers
;
4622 procedure Set_Exception_Junk
4623 (N
: Node_Id
; Val
: Boolean := True) is
4625 pragma Assert
(False
4626 or else NT
(N
).Nkind
= N_Block_Statement
4627 or else NT
(N
).Nkind
= N_Goto_Statement
4628 or else NT
(N
).Nkind
= N_Label
4629 or else NT
(N
).Nkind
= N_Object_Declaration
4630 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4632 end Set_Exception_Junk
;
4634 procedure Set_Exception_Label
4635 (N
: Node_Id
; Val
: Node_Id
) is
4637 pragma Assert
(False
4638 or else NT
(N
).Nkind
= N_Exception_Handler
4639 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4640 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4641 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4642 Set_Node5
(N
, Val
); -- semantic field, no parent set
4643 end Set_Exception_Label
;
4645 procedure Set_Expansion_Delayed
4646 (N
: Node_Id
; Val
: Boolean := True) is
4648 pragma Assert
(False
4649 or else NT
(N
).Nkind
= N_Aggregate
4650 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4651 Set_Flag11
(N
, Val
);
4652 end Set_Expansion_Delayed
;
4654 procedure Set_Explicit_Actual_Parameter
4655 (N
: Node_Id
; Val
: Node_Id
) is
4657 pragma Assert
(False
4658 or else NT
(N
).Nkind
= N_Parameter_Association
);
4659 Set_Node3_With_Parent
(N
, Val
);
4660 end Set_Explicit_Actual_Parameter
;
4662 procedure Set_Explicit_Generic_Actual_Parameter
4663 (N
: Node_Id
; Val
: Node_Id
) is
4665 pragma Assert
(False
4666 or else NT
(N
).Nkind
= N_Generic_Association
);
4667 Set_Node1_With_Parent
(N
, Val
);
4668 end Set_Explicit_Generic_Actual_Parameter
;
4670 procedure Set_Expression
4671 (N
: Node_Id
; Val
: Node_Id
) is
4673 pragma Assert
(False
4674 or else NT
(N
).Nkind
= N_Allocator
4675 or else NT
(N
).Nkind
= N_Aspect_Specification
4676 or else NT
(N
).Nkind
= N_Assignment_Statement
4677 or else NT
(N
).Nkind
= N_At_Clause
4678 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4679 or else NT
(N
).Nkind
= N_Case_Expression
4680 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4681 or else NT
(N
).Nkind
= N_Case_Statement
4682 or else NT
(N
).Nkind
= N_Code_Statement
4683 or else NT
(N
).Nkind
= N_Component_Association
4684 or else NT
(N
).Nkind
= N_Component_Declaration
4685 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4686 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4687 or else NT
(N
).Nkind
= N_Delta_Aggregate
4688 or else NT
(N
).Nkind
= N_Discriminant_Association
4689 or else NT
(N
).Nkind
= N_Discriminant_Specification
4690 or else NT
(N
).Nkind
= N_Exception_Declaration
4691 or else NT
(N
).Nkind
= N_Expression_Function
4692 or else NT
(N
).Nkind
= N_Expression_With_Actions
4693 or else NT
(N
).Nkind
= N_Free_Statement
4694 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4695 or else NT
(N
).Nkind
= N_Mod_Clause
4696 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4697 or else NT
(N
).Nkind
= N_Number_Declaration
4698 or else NT
(N
).Nkind
= N_Object_Declaration
4699 or else NT
(N
).Nkind
= N_Parameter_Specification
4700 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4701 or else NT
(N
).Nkind
= N_Qualified_Expression
4702 or else NT
(N
).Nkind
= N_Raise_Expression
4703 or else NT
(N
).Nkind
= N_Raise_Statement
4704 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4705 or else NT
(N
).Nkind
= N_Type_Conversion
4706 or else NT
(N
).Nkind
= N_Unchecked_Expression
4707 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4708 Set_Node3_With_Parent
(N
, Val
);
4711 procedure Set_Expression_Copy
4712 (N
: Node_Id
; Val
: Node_Id
) is
4714 pragma Assert
(False
4715 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4716 Set_Node2
(N
, Val
); -- semantic field, no parent set
4717 end Set_Expression_Copy
;
4719 procedure Set_Expressions
4720 (N
: Node_Id
; Val
: List_Id
) is
4722 pragma Assert
(False
4723 or else NT
(N
).Nkind
= N_Aggregate
4724 or else NT
(N
).Nkind
= N_Attribute_Reference
4725 or else NT
(N
).Nkind
= N_Extension_Aggregate
4726 or else NT
(N
).Nkind
= N_If_Expression
4727 or else NT
(N
).Nkind
= N_Indexed_Component
);
4728 Set_List1_With_Parent
(N
, Val
);
4729 end Set_Expressions
;
4731 procedure Set_First_Bit
4732 (N
: Node_Id
; Val
: Node_Id
) is
4734 pragma Assert
(False
4735 or else NT
(N
).Nkind
= N_Component_Clause
);
4736 Set_Node3_With_Parent
(N
, Val
);
4739 procedure Set_First_Inlined_Subprogram
4740 (N
: Node_Id
; Val
: Entity_Id
) is
4742 pragma Assert
(False
4743 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4744 Set_Node3
(N
, Val
); -- semantic field, no parent set
4745 end Set_First_Inlined_Subprogram
;
4747 procedure Set_First_Name
4748 (N
: Node_Id
; Val
: Boolean := True) is
4750 pragma Assert
(False
4751 or else NT
(N
).Nkind
= N_With_Clause
);
4755 procedure Set_First_Named_Actual
4756 (N
: Node_Id
; Val
: Node_Id
) is
4758 pragma Assert
(False
4759 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4760 or else NT
(N
).Nkind
= N_Function_Call
4761 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4762 Set_Node4
(N
, Val
); -- semantic field, no parent set
4763 end Set_First_Named_Actual
;
4765 procedure Set_First_Real_Statement
4766 (N
: Node_Id
; Val
: Node_Id
) is
4768 pragma Assert
(False
4769 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4770 Set_Node2
(N
, Val
); -- semantic field, no parent set
4771 end Set_First_Real_Statement
;
4773 procedure Set_First_Subtype_Link
4774 (N
: Node_Id
; Val
: Entity_Id
) is
4776 pragma Assert
(False
4777 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4778 Set_Node5
(N
, Val
); -- semantic field, no parent set
4779 end Set_First_Subtype_Link
;
4781 procedure Set_Float_Truncate
4782 (N
: Node_Id
; Val
: Boolean := True) is
4784 pragma Assert
(False
4785 or else NT
(N
).Nkind
= N_Type_Conversion
);
4786 Set_Flag11
(N
, Val
);
4787 end Set_Float_Truncate
;
4789 procedure Set_Formal_Type_Definition
4790 (N
: Node_Id
; Val
: Node_Id
) is
4792 pragma Assert
(False
4793 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4794 Set_Node3_With_Parent
(N
, Val
);
4795 end Set_Formal_Type_Definition
;
4797 procedure Set_Forwards_OK
4798 (N
: Node_Id
; Val
: Boolean := True) is
4800 pragma Assert
(False
4801 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4803 end Set_Forwards_OK
;
4805 procedure Set_From_Aspect_Specification
4806 (N
: Node_Id
; Val
: Boolean := True) is
4808 pragma Assert
(False
4809 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4810 or else NT
(N
).Nkind
= N_Pragma
);
4811 Set_Flag13
(N
, Val
);
4812 end Set_From_Aspect_Specification
;
4814 procedure Set_From_At_End
4815 (N
: Node_Id
; Val
: Boolean := True) is
4817 pragma Assert
(False
4818 or else NT
(N
).Nkind
= N_Raise_Statement
);
4820 end Set_From_At_End
;
4822 procedure Set_From_At_Mod
4823 (N
: Node_Id
; Val
: Boolean := True) is
4825 pragma Assert
(False
4826 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4828 end Set_From_At_Mod
;
4830 procedure Set_From_Conditional_Expression
4831 (N
: Node_Id
; Val
: Boolean := True) is
4833 pragma Assert
(False
4834 or else NT
(N
).Nkind
= N_Case_Statement
4835 or else NT
(N
).Nkind
= N_If_Statement
);
4837 end Set_From_Conditional_Expression
;
4839 procedure Set_From_Default
4840 (N
: Node_Id
; Val
: Boolean := True) is
4842 pragma Assert
(False
4843 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4845 end Set_From_Default
;
4847 procedure Set_Generalized_Indexing
4848 (N
: Node_Id
; Val
: Node_Id
) is
4850 pragma Assert
(False
4851 or else NT
(N
).Nkind
= N_Indexed_Component
);
4853 end Set_Generalized_Indexing
;
4855 procedure Set_Generic_Associations
4856 (N
: Node_Id
; Val
: List_Id
) is
4858 pragma Assert
(False
4859 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4860 or else NT
(N
).Nkind
= N_Function_Instantiation
4861 or else NT
(N
).Nkind
= N_Package_Instantiation
4862 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4863 Set_List3_With_Parent
(N
, Val
);
4864 end Set_Generic_Associations
;
4866 procedure Set_Generic_Formal_Declarations
4867 (N
: Node_Id
; Val
: List_Id
) is
4869 pragma Assert
(False
4870 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4871 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4872 Set_List2_With_Parent
(N
, Val
);
4873 end Set_Generic_Formal_Declarations
;
4875 procedure Set_Generic_Parent
4876 (N
: Node_Id
; Val
: Node_Id
) is
4878 pragma Assert
(False
4879 or else NT
(N
).Nkind
= N_Function_Specification
4880 or else NT
(N
).Nkind
= N_Package_Specification
4881 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4883 end Set_Generic_Parent
;
4885 procedure Set_Generic_Parent_Type
4886 (N
: Node_Id
; Val
: Node_Id
) is
4888 pragma Assert
(False
4889 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4891 end Set_Generic_Parent_Type
;
4893 procedure Set_Handled_Statement_Sequence
4894 (N
: Node_Id
; Val
: Node_Id
) is
4896 pragma Assert
(False
4897 or else NT
(N
).Nkind
= N_Accept_Statement
4898 or else NT
(N
).Nkind
= N_Block_Statement
4899 or else NT
(N
).Nkind
= N_Entry_Body
4900 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4901 or else NT
(N
).Nkind
= N_Package_Body
4902 or else NT
(N
).Nkind
= N_Subprogram_Body
4903 or else NT
(N
).Nkind
= N_Task_Body
);
4904 Set_Node4_With_Parent
(N
, Val
);
4905 end Set_Handled_Statement_Sequence
;
4907 procedure Set_Handler_List_Entry
4908 (N
: Node_Id
; Val
: Node_Id
) is
4910 pragma Assert
(False
4911 or else NT
(N
).Nkind
= N_Object_Declaration
);
4913 end Set_Handler_List_Entry
;
4915 procedure Set_Has_Created_Identifier
4916 (N
: Node_Id
; Val
: Boolean := True) is
4918 pragma Assert
(False
4919 or else NT
(N
).Nkind
= N_Block_Statement
4920 or else NT
(N
).Nkind
= N_Loop_Statement
);
4921 Set_Flag15
(N
, Val
);
4922 end Set_Has_Created_Identifier
;
4924 procedure Set_Has_Dereference_Action
4925 (N
: Node_Id
; Val
: Boolean := True) is
4927 pragma Assert
(False
4928 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4929 Set_Flag13
(N
, Val
);
4930 end Set_Has_Dereference_Action
;
4932 procedure Set_Has_Dynamic_Length_Check
4933 (N
: Node_Id
; Val
: Boolean := True) is
4935 pragma Assert
(False
4936 or else NT
(N
).Nkind
in N_Subexpr
);
4937 Set_Flag10
(N
, Val
);
4938 end Set_Has_Dynamic_Length_Check
;
4940 procedure Set_Has_Dynamic_Range_Check
4941 (N
: Node_Id
; Val
: Boolean := True) is
4943 pragma Assert
(False
4944 or else NT
(N
).Nkind
= N_Subtype_Declaration
4945 or else NT
(N
).Nkind
in N_Subexpr
);
4946 Set_Flag12
(N
, Val
);
4947 end Set_Has_Dynamic_Range_Check
;
4949 procedure Set_Has_Init_Expression
4950 (N
: Node_Id
; Val
: Boolean := True) is
4952 pragma Assert
(False
4953 or else NT
(N
).Nkind
= N_Object_Declaration
);
4954 Set_Flag14
(N
, Val
);
4955 end Set_Has_Init_Expression
;
4957 procedure Set_Has_Local_Raise
4958 (N
: Node_Id
; Val
: Boolean := True) is
4960 pragma Assert
(False
4961 or else NT
(N
).Nkind
= N_Exception_Handler
);
4963 end Set_Has_Local_Raise
;
4965 procedure Set_Has_No_Elaboration_Code
4966 (N
: Node_Id
; Val
: Boolean := True) is
4968 pragma Assert
(False
4969 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4970 Set_Flag17
(N
, Val
);
4971 end Set_Has_No_Elaboration_Code
;
4973 procedure Set_Has_Pragma_Suppress_All
4974 (N
: Node_Id
; Val
: Boolean := True) is
4976 pragma Assert
(False
4977 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4978 Set_Flag14
(N
, Val
);
4979 end Set_Has_Pragma_Suppress_All
;
4981 procedure Set_Has_Private_View
4982 (N
: Node_Id
; Val
: Boolean := True) is
4984 pragma Assert
(False
4985 or else NT
(N
).Nkind
in N_Op
4986 or else NT
(N
).Nkind
= N_Character_Literal
4987 or else NT
(N
).Nkind
= N_Expanded_Name
4988 or else NT
(N
).Nkind
= N_Identifier
4989 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4990 Set_Flag11
(N
, Val
);
4991 end Set_Has_Private_View
;
4993 procedure Set_Has_Relative_Deadline_Pragma
4994 (N
: Node_Id
; Val
: Boolean := True) is
4996 pragma Assert
(False
4997 or else NT
(N
).Nkind
= N_Subprogram_Body
4998 or else NT
(N
).Nkind
= N_Task_Definition
);
5000 end Set_Has_Relative_Deadline_Pragma
;
5002 procedure Set_Has_Self_Reference
5003 (N
: Node_Id
; Val
: Boolean := True) is
5005 pragma Assert
(False
5006 or else NT
(N
).Nkind
= N_Aggregate
5007 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5008 Set_Flag13
(N
, Val
);
5009 end Set_Has_Self_Reference
;
5011 procedure Set_Has_SP_Choice
5012 (N
: Node_Id
; Val
: Boolean := True) is
5014 pragma Assert
(False
5015 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
5016 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5017 or else NT
(N
).Nkind
= N_Variant
);
5018 Set_Flag15
(N
, Val
);
5019 end Set_Has_SP_Choice
;
5021 procedure Set_Has_Storage_Size_Pragma
5022 (N
: Node_Id
; Val
: Boolean := True) is
5024 pragma Assert
(False
5025 or else NT
(N
).Nkind
= N_Task_Definition
);
5027 end Set_Has_Storage_Size_Pragma
;
5029 procedure Set_Has_Target_Names
5030 (N
: Node_Id
; Val
: Boolean := True) is
5032 pragma Assert
(False
5033 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5035 end Set_Has_Target_Names
;
5037 procedure Set_Has_Wide_Character
5038 (N
: Node_Id
; Val
: Boolean := True) is
5040 pragma Assert
(False
5041 or else NT
(N
).Nkind
= N_String_Literal
);
5042 Set_Flag11
(N
, Val
);
5043 end Set_Has_Wide_Character
;
5045 procedure Set_Has_Wide_Wide_Character
5046 (N
: Node_Id
; Val
: Boolean := True) is
5048 pragma Assert
(False
5049 or else NT
(N
).Nkind
= N_String_Literal
);
5050 Set_Flag13
(N
, Val
);
5051 end Set_Has_Wide_Wide_Character
;
5053 procedure Set_Header_Size_Added
5054 (N
: Node_Id
; Val
: Boolean := True) is
5056 pragma Assert
(False
5057 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5058 Set_Flag11
(N
, Val
);
5059 end Set_Header_Size_Added
;
5061 procedure Set_Hidden_By_Use_Clause
5062 (N
: Node_Id
; Val
: Elist_Id
) is
5064 pragma Assert
(False
5065 or else NT
(N
).Nkind
= N_Use_Package_Clause
5066 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5067 Set_Elist5
(N
, Val
);
5068 end Set_Hidden_By_Use_Clause
;
5070 procedure Set_High_Bound
5071 (N
: Node_Id
; Val
: Node_Id
) is
5073 pragma Assert
(False
5074 or else NT
(N
).Nkind
= N_Range
5075 or else NT
(N
).Nkind
= N_Real_Range_Specification
5076 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5077 Set_Node2_With_Parent
(N
, Val
);
5080 procedure Set_Identifier
5081 (N
: Node_Id
; Val
: Node_Id
) is
5083 pragma Assert
(False
5084 or else NT
(N
).Nkind
= N_Aspect_Specification
5085 or else NT
(N
).Nkind
= N_At_Clause
5086 or else NT
(N
).Nkind
= N_Block_Statement
5087 or else NT
(N
).Nkind
= N_Designator
5088 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5089 or else NT
(N
).Nkind
= N_Label
5090 or else NT
(N
).Nkind
= N_Loop_Statement
5091 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5092 Set_Node1_With_Parent
(N
, Val
);
5095 procedure Set_Implicit_With
5096 (N
: Node_Id
; Val
: Boolean := True) is
5098 pragma Assert
(False
5099 or else NT
(N
).Nkind
= N_With_Clause
);
5100 Set_Flag16
(N
, Val
);
5101 end Set_Implicit_With
;
5103 procedure Set_Implicit_With_From_Instantiation
5104 (N
: Node_Id
; Val
: Boolean := True) is
5106 pragma Assert
(False
5107 or else NT
(N
).Nkind
= N_With_Clause
);
5108 Set_Flag12
(N
, Val
);
5109 end Set_Implicit_With_From_Instantiation
;
5111 procedure Set_Interface_List
5112 (N
: Node_Id
; Val
: List_Id
) is
5114 pragma Assert
(False
5115 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5116 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5117 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5118 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5119 or else NT
(N
).Nkind
= N_Record_Definition
5120 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5121 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5122 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5123 Set_List2_With_Parent
(N
, Val
);
5124 end Set_Interface_List
;
5126 procedure Set_Interface_Present
5127 (N
: Node_Id
; Val
: Boolean := True) is
5129 pragma Assert
(False
5130 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5131 or else NT
(N
).Nkind
= N_Record_Definition
);
5132 Set_Flag16
(N
, Val
);
5133 end Set_Interface_Present
;
5135 procedure Set_Import_Interface_Present
5136 (N
: Node_Id
; Val
: Boolean := True) is
5138 pragma Assert
(False
5139 or else NT
(N
).Nkind
= N_Pragma
);
5140 Set_Flag16
(N
, Val
);
5141 end Set_Import_Interface_Present
;
5143 procedure Set_In_Present
5144 (N
: Node_Id
; Val
: Boolean := True) is
5146 pragma Assert
(False
5147 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5148 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5149 Set_Flag15
(N
, Val
);
5152 procedure Set_Includes_Infinities
5153 (N
: Node_Id
; Val
: Boolean := True) is
5155 pragma Assert
(False
5156 or else NT
(N
).Nkind
= N_Range
);
5157 Set_Flag11
(N
, Val
);
5158 end Set_Includes_Infinities
;
5160 procedure Set_Incomplete_View
5161 (N
: Node_Id
; Val
: Node_Id
) is
5163 pragma Assert
(False
5164 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5165 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5166 end Set_Incomplete_View
;
5168 procedure Set_Inherited_Discriminant
5169 (N
: Node_Id
; Val
: Boolean := True) is
5171 pragma Assert
(False
5172 or else NT
(N
).Nkind
= N_Component_Association
);
5173 Set_Flag13
(N
, Val
);
5174 end Set_Inherited_Discriminant
;
5176 procedure Set_Instance_Spec
5177 (N
: Node_Id
; Val
: Node_Id
) is
5179 pragma Assert
(False
5180 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5181 or else NT
(N
).Nkind
= N_Function_Instantiation
5182 or else NT
(N
).Nkind
= N_Package_Instantiation
5183 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5184 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5185 end Set_Instance_Spec
;
5187 procedure Set_Intval
5188 (N
: Node_Id
; Val
: Uint
) is
5190 pragma Assert
(False
5191 or else NT
(N
).Nkind
= N_Integer_Literal
);
5195 procedure Set_Is_Abort_Block
5196 (N
: Node_Id
; Val
: Boolean := True) is
5198 pragma Assert
(False
5199 or else NT
(N
).Nkind
= N_Block_Statement
);
5201 end Set_Is_Abort_Block
;
5203 procedure Set_Is_Accessibility_Actual
5204 (N
: Node_Id
; Val
: Boolean := True) is
5206 pragma Assert
(False
5207 or else NT
(N
).Nkind
= N_Parameter_Association
);
5208 Set_Flag13
(N
, Val
);
5209 end Set_Is_Accessibility_Actual
;
5211 procedure Set_Is_Analyzed_Pragma
5212 (N
: Node_Id
; Val
: Boolean := True) is
5214 pragma Assert
(False
5215 or else NT
(N
).Nkind
= N_Pragma
);
5217 end Set_Is_Analyzed_Pragma
;
5219 procedure Set_Is_Asynchronous_Call_Block
5220 (N
: Node_Id
; Val
: Boolean := True) is
5222 pragma Assert
(False
5223 or else NT
(N
).Nkind
= N_Block_Statement
);
5225 end Set_Is_Asynchronous_Call_Block
;
5227 procedure Set_Is_Boolean_Aspect
5228 (N
: Node_Id
; Val
: Boolean := True) is
5230 pragma Assert
(False
5231 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5232 Set_Flag16
(N
, Val
);
5233 end Set_Is_Boolean_Aspect
;
5235 procedure Set_Is_Checked
5236 (N
: Node_Id
; Val
: Boolean := True) is
5238 pragma Assert
(False
5239 or else NT
(N
).Nkind
= N_Aspect_Specification
5240 or else NT
(N
).Nkind
= N_Pragma
);
5241 Set_Flag11
(N
, Val
);
5244 procedure Set_Is_Checked_Ghost_Pragma
5245 (N
: Node_Id
; Val
: Boolean := True) is
5247 pragma Assert
(False
5248 or else NT
(N
).Nkind
= N_Pragma
);
5250 end Set_Is_Checked_Ghost_Pragma
;
5252 procedure Set_Is_Component_Left_Opnd
5253 (N
: Node_Id
; Val
: Boolean := True) is
5255 pragma Assert
(False
5256 or else NT
(N
).Nkind
= N_Op_Concat
);
5257 Set_Flag13
(N
, Val
);
5258 end Set_Is_Component_Left_Opnd
;
5260 procedure Set_Is_Component_Right_Opnd
5261 (N
: Node_Id
; Val
: Boolean := True) is
5263 pragma Assert
(False
5264 or else NT
(N
).Nkind
= N_Op_Concat
);
5265 Set_Flag14
(N
, Val
);
5266 end Set_Is_Component_Right_Opnd
;
5268 procedure Set_Is_Controlling_Actual
5269 (N
: Node_Id
; Val
: Boolean := True) is
5271 pragma Assert
(False
5272 or else NT
(N
).Nkind
in N_Subexpr
);
5273 Set_Flag16
(N
, Val
);
5274 end Set_Is_Controlling_Actual
;
5276 procedure Set_Is_Declaration_Level_Node
5277 (N
: Node_Id
; Val
: Boolean := True) is
5279 pragma Assert
(False
5280 or else NT
(N
).Nkind
= N_Call_Marker
5281 or else NT
(N
).Nkind
= N_Function_Instantiation
5282 or else NT
(N
).Nkind
= N_Package_Instantiation
5283 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5285 end Set_Is_Declaration_Level_Node
;
5287 procedure Set_Is_Delayed_Aspect
5288 (N
: Node_Id
; Val
: Boolean := True) is
5290 pragma Assert
(False
5291 or else NT
(N
).Nkind
= N_Aspect_Specification
5292 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5293 or else NT
(N
).Nkind
= N_Pragma
);
5294 Set_Flag14
(N
, Val
);
5295 end Set_Is_Delayed_Aspect
;
5297 procedure Set_Is_Disabled
5298 (N
: Node_Id
; Val
: Boolean := True) is
5300 pragma Assert
(False
5301 or else NT
(N
).Nkind
= N_Aspect_Specification
5302 or else NT
(N
).Nkind
= N_Pragma
);
5303 Set_Flag15
(N
, Val
);
5304 end Set_Is_Disabled
;
5306 procedure Set_Is_Dispatching_Call
5307 (N
: Node_Id
; Val
: Boolean := True) is
5309 pragma Assert
(False
5310 or else NT
(N
).Nkind
= N_Call_Marker
);
5312 end Set_Is_Dispatching_Call
;
5314 procedure Set_Is_Dynamic_Coextension
5315 (N
: Node_Id
; Val
: Boolean := True) is
5317 pragma Assert
(False
5318 or else NT
(N
).Nkind
= N_Allocator
);
5319 Set_Flag18
(N
, Val
);
5320 end Set_Is_Dynamic_Coextension
;
5322 procedure Set_Is_Effective_Use_Clause
5323 (N
: Node_Id
; Val
: Boolean := True) is
5325 pragma Assert
(False
5326 or else NT
(N
).Nkind
= N_Use_Package_Clause
5327 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5329 end Set_Is_Effective_Use_Clause
;
5331 procedure Set_Is_Elaboration_Checks_OK_Node
5332 (N
: Node_Id
; Val
: Boolean := True) is
5334 pragma Assert
(False
5335 or else NT
(N
).Nkind
= N_Assignment_Statement
5336 or else NT
(N
).Nkind
= N_Attribute_Reference
5337 or else NT
(N
).Nkind
= N_Call_Marker
5338 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5339 or else NT
(N
).Nkind
= N_Expanded_Name
5340 or else NT
(N
).Nkind
= N_Function_Call
5341 or else NT
(N
).Nkind
= N_Function_Instantiation
5342 or else NT
(N
).Nkind
= N_Identifier
5343 or else NT
(N
).Nkind
= N_Package_Instantiation
5344 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5345 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5346 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5348 end Set_Is_Elaboration_Checks_OK_Node
;
5350 procedure Set_Is_Elsif
5351 (N
: Node_Id
; Val
: Boolean := True) is
5353 pragma Assert
(False
5354 or else NT
(N
).Nkind
= N_If_Expression
);
5355 Set_Flag13
(N
, Val
);
5358 procedure Set_Is_Entry_Barrier_Function
5359 (N
: Node_Id
; Val
: Boolean := True) is
5361 pragma Assert
(False
5362 or else NT
(N
).Nkind
= N_Subprogram_Body
5363 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5365 end Set_Is_Entry_Barrier_Function
;
5367 procedure Set_Is_Expanded_Build_In_Place_Call
5368 (N
: Node_Id
; Val
: Boolean := True) is
5370 pragma Assert
(False
5371 or else NT
(N
).Nkind
= N_Function_Call
);
5372 Set_Flag11
(N
, Val
);
5373 end Set_Is_Expanded_Build_In_Place_Call
;
5375 procedure Set_Is_Expanded_Contract
5376 (N
: Node_Id
; Val
: Boolean := True) is
5378 pragma Assert
(False
5379 or else NT
(N
).Nkind
= N_Contract
);
5381 end Set_Is_Expanded_Contract
;
5383 procedure Set_Is_Finalization_Wrapper
5384 (N
: Node_Id
; Val
: Boolean := True) is
5386 pragma Assert
(False
5387 or else NT
(N
).Nkind
= N_Block_Statement
);
5389 end Set_Is_Finalization_Wrapper
;
5391 procedure Set_Is_Folded_In_Parser
5392 (N
: Node_Id
; Val
: Boolean := True) is
5394 pragma Assert
(False
5395 or else NT
(N
).Nkind
= N_String_Literal
);
5397 end Set_Is_Folded_In_Parser
;
5399 procedure Set_Is_Generic_Contract_Pragma
5400 (N
: Node_Id
; Val
: Boolean := True) is
5402 pragma Assert
(False
5403 or else NT
(N
).Nkind
= N_Pragma
);
5405 end Set_Is_Generic_Contract_Pragma
;
5407 procedure Set_Is_Ignored
5408 (N
: Node_Id
; Val
: Boolean := True) is
5410 pragma Assert
(False
5411 or else NT
(N
).Nkind
= N_Aspect_Specification
5412 or else NT
(N
).Nkind
= N_Pragma
);
5416 procedure Set_Is_Ignored_Ghost_Pragma
5417 (N
: Node_Id
; Val
: Boolean := True) is
5419 pragma Assert
(False
5420 or else NT
(N
).Nkind
= N_Pragma
);
5422 end Set_Is_Ignored_Ghost_Pragma
;
5424 procedure Set_Is_In_Discriminant_Check
5425 (N
: Node_Id
; Val
: Boolean := True) is
5427 pragma Assert
(False
5428 or else NT
(N
).Nkind
= N_Selected_Component
);
5429 Set_Flag11
(N
, Val
);
5430 end Set_Is_In_Discriminant_Check
;
5432 procedure Set_Is_Inherited_Pragma
5433 (N
: Node_Id
; Val
: Boolean := True) is
5435 pragma Assert
(False
5436 or else NT
(N
).Nkind
= N_Pragma
);
5438 end Set_Is_Inherited_Pragma
;
5440 procedure Set_Is_Initialization_Block
5441 (N
: Node_Id
; Val
: Boolean := True) is
5443 pragma Assert
(False
5444 or else NT
(N
).Nkind
= N_Block_Statement
);
5446 end Set_Is_Initialization_Block
;
5448 procedure Set_Is_Known_Guaranteed_ABE
5449 (N
: Node_Id
; Val
: Boolean := True) is
5451 pragma Assert
(False
5452 or else NT
(N
).Nkind
= N_Call_Marker
5453 or else NT
(N
).Nkind
= N_Function_Instantiation
5454 or else NT
(N
).Nkind
= N_Package_Instantiation
5455 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5456 Set_Flag18
(N
, Val
);
5457 end Set_Is_Known_Guaranteed_ABE
;
5459 procedure Set_Is_Machine_Number
5460 (N
: Node_Id
; Val
: Boolean := True) is
5462 pragma Assert
(False
5463 or else NT
(N
).Nkind
= N_Real_Literal
);
5464 Set_Flag11
(N
, Val
);
5465 end Set_Is_Machine_Number
;
5467 procedure Set_Is_Null_Loop
5468 (N
: Node_Id
; Val
: Boolean := True) is
5470 pragma Assert
(False
5471 or else NT
(N
).Nkind
= N_Loop_Statement
);
5472 Set_Flag16
(N
, Val
);
5473 end Set_Is_Null_Loop
;
5475 procedure Set_Is_Overloaded
5476 (N
: Node_Id
; Val
: Boolean := True) is
5478 pragma Assert
(False
5479 or else NT
(N
).Nkind
in N_Subexpr
);
5481 end Set_Is_Overloaded
;
5483 procedure Set_Is_Power_Of_2_For_Shift
5484 (N
: Node_Id
; Val
: Boolean := True) is
5486 pragma Assert
(False
5487 or else NT
(N
).Nkind
= N_Op_Expon
);
5488 Set_Flag13
(N
, Val
);
5489 end Set_Is_Power_Of_2_For_Shift
;
5491 procedure Set_Is_Prefixed_Call
5492 (N
: Node_Id
; Val
: Boolean := True) is
5494 pragma Assert
(False
5495 or else NT
(N
).Nkind
= N_Selected_Component
);
5496 Set_Flag17
(N
, Val
);
5497 end Set_Is_Prefixed_Call
;
5499 procedure Set_Is_Protected_Subprogram_Body
5500 (N
: Node_Id
; Val
: Boolean := True) is
5502 pragma Assert
(False
5503 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5505 end Set_Is_Protected_Subprogram_Body
;
5507 procedure Set_Is_Qualified_Universal_Literal
5508 (N
: Node_Id
; Val
: Boolean := True) is
5510 pragma Assert
(False
5511 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5513 end Set_Is_Qualified_Universal_Literal
;
5515 procedure Set_Is_Recorded_Scenario
5516 (N
: Node_Id
; Val
: Boolean := True) is
5518 pragma Assert
(False
5519 or else NT
(N
).Nkind
= N_Call_Marker
5520 or else NT
(N
).Nkind
= N_Function_Instantiation
5521 or else NT
(N
).Nkind
= N_Package_Instantiation
5522 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5524 end Set_Is_Recorded_Scenario
;
5526 procedure Set_Is_Source_Call
5527 (N
: Node_Id
; Val
: Boolean := True) is
5529 pragma Assert
(False
5530 or else NT
(N
).Nkind
= N_Call_Marker
);
5532 end Set_Is_Source_Call
;
5534 procedure Set_Is_SPARK_Mode_On_Node
5535 (N
: Node_Id
; Val
: Boolean := True) is
5537 pragma Assert
(False
5538 or else NT
(N
).Nkind
= N_Assignment_Statement
5539 or else NT
(N
).Nkind
= N_Attribute_Reference
5540 or else NT
(N
).Nkind
= N_Call_Marker
5541 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5542 or else NT
(N
).Nkind
= N_Expanded_Name
5543 or else NT
(N
).Nkind
= N_Function_Call
5544 or else NT
(N
).Nkind
= N_Function_Instantiation
5545 or else NT
(N
).Nkind
= N_Identifier
5546 or else NT
(N
).Nkind
= N_Package_Instantiation
5547 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5548 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5549 or else NT
(N
).Nkind
= N_Requeue_Statement
);
5551 end Set_Is_SPARK_Mode_On_Node
;
5553 procedure Set_Is_Static_Coextension
5554 (N
: Node_Id
; Val
: Boolean := True) is
5556 pragma Assert
(False
5557 or else NT
(N
).Nkind
= N_Allocator
);
5558 Set_Flag14
(N
, Val
);
5559 end Set_Is_Static_Coextension
;
5561 procedure Set_Is_Static_Expression
5562 (N
: Node_Id
; Val
: Boolean := True) is
5564 pragma Assert
(False
5565 or else NT
(N
).Nkind
in N_Subexpr
);
5567 end Set_Is_Static_Expression
;
5569 procedure Set_Is_Subprogram_Descriptor
5570 (N
: Node_Id
; Val
: Boolean := True) is
5572 pragma Assert
(False
5573 or else NT
(N
).Nkind
= N_Object_Declaration
);
5574 Set_Flag16
(N
, Val
);
5575 end Set_Is_Subprogram_Descriptor
;
5577 procedure Set_Is_Task_Allocation_Block
5578 (N
: Node_Id
; Val
: Boolean := True) is
5580 pragma Assert
(False
5581 or else NT
(N
).Nkind
= N_Block_Statement
);
5583 end Set_Is_Task_Allocation_Block
;
5585 procedure Set_Is_Task_Body_Procedure
5586 (N
: Node_Id
; Val
: Boolean := True) is
5588 pragma Assert
(False
5589 or else NT
(N
).Nkind
= N_Subprogram_Body
5590 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5592 end Set_Is_Task_Body_Procedure
;
5594 procedure Set_Is_Task_Master
5595 (N
: Node_Id
; Val
: Boolean := True) is
5597 pragma Assert
(False
5598 or else NT
(N
).Nkind
= N_Block_Statement
5599 or else NT
(N
).Nkind
= N_Subprogram_Body
5600 or else NT
(N
).Nkind
= N_Task_Body
);
5602 end Set_Is_Task_Master
;
5604 procedure Set_Iteration_Scheme
5605 (N
: Node_Id
; Val
: Node_Id
) is
5607 pragma Assert
(False
5608 or else NT
(N
).Nkind
= N_Loop_Statement
);
5609 Set_Node2_With_Parent
(N
, Val
);
5610 end Set_Iteration_Scheme
;
5612 procedure Set_Iterator_Specification
5613 (N
: Node_Id
; Val
: Node_Id
) is
5615 pragma Assert
(False
5616 or else NT
(N
).Nkind
= N_Iteration_Scheme
5617 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5618 Set_Node2_With_Parent
(N
, Val
);
5619 end Set_Iterator_Specification
;
5622 (N
: Node_Id
; Val
: Entity_Id
) is
5624 pragma Assert
(False
5625 or else NT
(N
).Nkind
= N_Itype_Reference
);
5626 Set_Node1
(N
, Val
); -- no parent, semantic field
5629 procedure Set_Kill_Range_Check
5630 (N
: Node_Id
; Val
: Boolean := True) is
5632 pragma Assert
(False
5633 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5634 Set_Flag11
(N
, Val
);
5635 end Set_Kill_Range_Check
;
5637 procedure Set_Label_Construct
5638 (N
: Node_Id
; Val
: Node_Id
) is
5640 pragma Assert
(False
5641 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5642 Set_Node2
(N
, Val
); -- semantic field, no parent set
5643 end Set_Label_Construct
;
5645 procedure Set_Last_Bit
5646 (N
: Node_Id
; Val
: Node_Id
) is
5648 pragma Assert
(False
5649 or else NT
(N
).Nkind
= N_Component_Clause
);
5650 Set_Node4_With_Parent
(N
, Val
);
5653 procedure Set_Last_Name
5654 (N
: Node_Id
; Val
: Boolean := True) is
5656 pragma Assert
(False
5657 or else NT
(N
).Nkind
= N_With_Clause
);
5661 procedure Set_Left_Opnd
5662 (N
: Node_Id
; Val
: Node_Id
) is
5664 pragma Assert
(False
5665 or else NT
(N
).Nkind
= N_And_Then
5666 or else NT
(N
).Nkind
= N_In
5667 or else NT
(N
).Nkind
= N_Not_In
5668 or else NT
(N
).Nkind
= N_Or_Else
5669 or else NT
(N
).Nkind
in N_Binary_Op
);
5670 Set_Node2_With_Parent
(N
, Val
);
5673 procedure Set_Library_Unit
5674 (N
: Node_Id
; Val
: Node_Id
) is
5676 pragma Assert
(False
5677 or else NT
(N
).Nkind
= N_Compilation_Unit
5678 or else NT
(N
).Nkind
= N_Package_Body_Stub
5679 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5680 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5681 or else NT
(N
).Nkind
= N_Task_Body_Stub
5682 or else NT
(N
).Nkind
= N_With_Clause
);
5683 Set_Node4
(N
, Val
); -- semantic field, no parent set
5684 end Set_Library_Unit
;
5686 procedure Set_Limited_View_Installed
5687 (N
: Node_Id
; Val
: Boolean := True) is
5689 pragma Assert
(False
5690 or else NT
(N
).Nkind
= N_Package_Specification
5691 or else NT
(N
).Nkind
= N_With_Clause
);
5692 Set_Flag18
(N
, Val
);
5693 end Set_Limited_View_Installed
;
5695 procedure Set_Limited_Present
5696 (N
: Node_Id
; Val
: Boolean := True) is
5698 pragma Assert
(False
5699 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5700 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5701 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5702 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5703 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5704 or else NT
(N
).Nkind
= N_Record_Definition
5705 or else NT
(N
).Nkind
= N_With_Clause
);
5706 Set_Flag17
(N
, Val
);
5707 end Set_Limited_Present
;
5709 procedure Set_Literals
5710 (N
: Node_Id
; Val
: List_Id
) is
5712 pragma Assert
(False
5713 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5714 Set_List1_With_Parent
(N
, Val
);
5717 procedure Set_Local_Raise_Not_OK
5718 (N
: Node_Id
; Val
: Boolean := True) is
5720 pragma Assert
(False
5721 or else NT
(N
).Nkind
= N_Exception_Handler
);
5723 end Set_Local_Raise_Not_OK
;
5725 procedure Set_Local_Raise_Statements
5726 (N
: Node_Id
; Val
: Elist_Id
) is
5728 pragma Assert
(False
5729 or else NT
(N
).Nkind
= N_Exception_Handler
);
5730 Set_Elist1
(N
, Val
);
5731 end Set_Local_Raise_Statements
;
5733 procedure Set_Loop_Actions
5734 (N
: Node_Id
; Val
: List_Id
) is
5736 pragma Assert
(False
5737 or else NT
(N
).Nkind
= N_Component_Association
5738 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5739 Set_List2
(N
, Val
); -- semantic field, no parent set
5740 end Set_Loop_Actions
;
5742 procedure Set_Loop_Parameter_Specification
5743 (N
: Node_Id
; Val
: Node_Id
) is
5745 pragma Assert
(False
5746 or else NT
(N
).Nkind
= N_Iteration_Scheme
5747 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5748 Set_Node4_With_Parent
(N
, Val
);
5749 end Set_Loop_Parameter_Specification
;
5751 procedure Set_Low_Bound
5752 (N
: Node_Id
; Val
: Node_Id
) is
5754 pragma Assert
(False
5755 or else NT
(N
).Nkind
= N_Range
5756 or else NT
(N
).Nkind
= N_Real_Range_Specification
5757 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5758 Set_Node1_With_Parent
(N
, Val
);
5761 procedure Set_Mod_Clause
5762 (N
: Node_Id
; Val
: Node_Id
) is
5764 pragma Assert
(False
5765 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5766 Set_Node2_With_Parent
(N
, Val
);
5769 procedure Set_More_Ids
5770 (N
: Node_Id
; Val
: Boolean := True) is
5772 pragma Assert
(False
5773 or else NT
(N
).Nkind
= N_Component_Declaration
5774 or else NT
(N
).Nkind
= N_Discriminant_Specification
5775 or else NT
(N
).Nkind
= N_Exception_Declaration
5776 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5777 or else NT
(N
).Nkind
= N_Number_Declaration
5778 or else NT
(N
).Nkind
= N_Object_Declaration
5779 or else NT
(N
).Nkind
= N_Parameter_Specification
5780 or else NT
(N
).Nkind
= N_Use_Package_Clause
5781 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5785 procedure Set_Must_Be_Byte_Aligned
5786 (N
: Node_Id
; Val
: Boolean := True) is
5788 pragma Assert
(False
5789 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5790 Set_Flag14
(N
, Val
);
5791 end Set_Must_Be_Byte_Aligned
;
5793 procedure Set_Must_Not_Freeze
5794 (N
: Node_Id
; Val
: Boolean := True) is
5796 pragma Assert
(False
5797 or else NT
(N
).Nkind
= N_Subtype_Indication
5798 or else NT
(N
).Nkind
in N_Subexpr
);
5800 end Set_Must_Not_Freeze
;
5802 procedure Set_Must_Not_Override
5803 (N
: Node_Id
; Val
: Boolean := True) is
5805 pragma Assert
(False
5806 or else NT
(N
).Nkind
= N_Entry_Declaration
5807 or else NT
(N
).Nkind
= N_Function_Instantiation
5808 or else NT
(N
).Nkind
= N_Function_Specification
5809 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5810 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5811 Set_Flag15
(N
, Val
);
5812 end Set_Must_Not_Override
;
5814 procedure Set_Must_Override
5815 (N
: Node_Id
; Val
: Boolean := True) is
5817 pragma Assert
(False
5818 or else NT
(N
).Nkind
= N_Entry_Declaration
5819 or else NT
(N
).Nkind
= N_Function_Instantiation
5820 or else NT
(N
).Nkind
= N_Function_Specification
5821 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5822 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5823 Set_Flag14
(N
, Val
);
5824 end Set_Must_Override
;
5827 (N
: Node_Id
; Val
: Node_Id
) is
5829 pragma Assert
(False
5830 or else NT
(N
).Nkind
= N_Assignment_Statement
5831 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5832 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5833 or else NT
(N
).Nkind
= N_Designator
5834 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5835 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5836 or else NT
(N
).Nkind
= N_Exit_Statement
5837 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5838 or else NT
(N
).Nkind
= N_Function_Call
5839 or else NT
(N
).Nkind
= N_Function_Instantiation
5840 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5841 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5842 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5843 or else NT
(N
).Nkind
= N_Goto_Statement
5844 or else NT
(N
).Nkind
= N_Iterator_Specification
5845 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5846 or else NT
(N
).Nkind
= N_Package_Instantiation
5847 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5848 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5849 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5850 or else NT
(N
).Nkind
= N_Raise_Expression
5851 or else NT
(N
).Nkind
= N_Raise_Statement
5852 or else NT
(N
).Nkind
= N_Requeue_Statement
5853 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5854 or else NT
(N
).Nkind
= N_Subunit
5855 or else NT
(N
).Nkind
= N_Use_Package_Clause
5856 or else NT
(N
).Nkind
= N_Variant_Part
5857 or else NT
(N
).Nkind
= N_With_Clause
);
5858 Set_Node2_With_Parent
(N
, Val
);
5862 (N
: Node_Id
; Val
: List_Id
) is
5864 pragma Assert
(False
5865 or else NT
(N
).Nkind
= N_Abort_Statement
);
5866 Set_List2_With_Parent
(N
, Val
);
5869 procedure Set_Next_Entity
5870 (N
: Node_Id
; Val
: Node_Id
) is
5872 pragma Assert
(False
5873 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5874 or else NT
(N
).Nkind
= N_Defining_Identifier
5875 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5876 Set_Node2
(N
, Val
); -- semantic field, no parent set
5877 end Set_Next_Entity
;
5879 procedure Set_Next_Exit_Statement
5880 (N
: Node_Id
; Val
: Node_Id
) is
5882 pragma Assert
(False
5883 or else NT
(N
).Nkind
= N_Exit_Statement
);
5884 Set_Node3
(N
, Val
); -- semantic field, no parent set
5885 end Set_Next_Exit_Statement
;
5887 procedure Set_Next_Implicit_With
5888 (N
: Node_Id
; Val
: Node_Id
) is
5890 pragma Assert
(False
5891 or else NT
(N
).Nkind
= N_With_Clause
);
5892 Set_Node3
(N
, Val
); -- semantic field, no parent set
5893 end Set_Next_Implicit_With
;
5895 procedure Set_Next_Named_Actual
5896 (N
: Node_Id
; Val
: Node_Id
) is
5898 pragma Assert
(False
5899 or else NT
(N
).Nkind
= N_Parameter_Association
);
5900 Set_Node4
(N
, Val
); -- semantic field, no parent set
5901 end Set_Next_Named_Actual
;
5903 procedure Set_Next_Pragma
5904 (N
: Node_Id
; Val
: Node_Id
) is
5906 pragma Assert
(False
5907 or else NT
(N
).Nkind
= N_Pragma
);
5908 Set_Node1
(N
, Val
); -- semantic field, no parent set
5909 end Set_Next_Pragma
;
5911 procedure Set_Next_Rep_Item
5912 (N
: Node_Id
; Val
: Node_Id
) is
5914 pragma Assert
(False
5915 or else NT
(N
).Nkind
= N_Aspect_Specification
5916 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5917 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5918 or else NT
(N
).Nkind
= N_Pragma
5919 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5920 Set_Node5
(N
, Val
); -- semantic field, no parent set
5921 end Set_Next_Rep_Item
;
5923 procedure Set_Next_Use_Clause
5924 (N
: Node_Id
; Val
: Node_Id
) is
5926 pragma Assert
(False
5927 or else NT
(N
).Nkind
= N_Use_Package_Clause
5928 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5929 Set_Node3
(N
, Val
); -- semantic field, no parent set
5930 end Set_Next_Use_Clause
;
5932 procedure Set_No_Ctrl_Actions
5933 (N
: Node_Id
; Val
: Boolean := True) is
5935 pragma Assert
(False
5936 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5938 end Set_No_Ctrl_Actions
;
5940 procedure Set_No_Entities_Ref_In_Spec
5941 (N
: Node_Id
; Val
: Boolean := True) is
5943 pragma Assert
(False
5944 or else NT
(N
).Nkind
= N_With_Clause
);
5946 end Set_No_Entities_Ref_In_Spec
;
5948 procedure Set_No_Initialization
5949 (N
: Node_Id
; Val
: Boolean := True) is
5951 pragma Assert
(False
5952 or else NT
(N
).Nkind
= N_Allocator
5953 or else NT
(N
).Nkind
= N_Object_Declaration
);
5954 Set_Flag13
(N
, Val
);
5955 end Set_No_Initialization
;
5957 procedure Set_No_Minimize_Eliminate
5958 (N
: Node_Id
; Val
: Boolean := True) is
5960 pragma Assert
(False
5961 or else NT
(N
).Nkind
= N_In
5962 or else NT
(N
).Nkind
= N_Not_In
);
5963 Set_Flag17
(N
, Val
);
5964 end Set_No_Minimize_Eliminate
;
5966 procedure Set_No_Side_Effect_Removal
5967 (N
: Node_Id
; Val
: Boolean := True) is
5969 pragma Assert
(False
5970 or else NT
(N
).Nkind
= N_Function_Call
);
5971 Set_Flag17
(N
, Val
);
5972 end Set_No_Side_Effect_Removal
;
5974 procedure Set_No_Truncation
5975 (N
: Node_Id
; Val
: Boolean := True) is
5977 pragma Assert
(False
5978 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5979 Set_Flag17
(N
, Val
);
5980 end Set_No_Truncation
;
5982 procedure Set_Null_Excluding_Subtype
5983 (N
: Node_Id
; Val
: Boolean := True) is
5985 pragma Assert
(False
5986 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
5987 Set_Flag16
(N
, Val
);
5988 end Set_Null_Excluding_Subtype
;
5990 procedure Set_Null_Exclusion_Present
5991 (N
: Node_Id
; Val
: Boolean := True) is
5993 pragma Assert
(False
5994 or else NT
(N
).Nkind
= N_Access_Definition
5995 or else NT
(N
).Nkind
= N_Access_Function_Definition
5996 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5997 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5998 or else NT
(N
).Nkind
= N_Allocator
5999 or else NT
(N
).Nkind
= N_Component_Definition
6000 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6001 or else NT
(N
).Nkind
= N_Discriminant_Specification
6002 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6003 or else NT
(N
).Nkind
= N_Function_Specification
6004 or else NT
(N
).Nkind
= N_Object_Declaration
6005 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6006 or else NT
(N
).Nkind
= N_Parameter_Specification
6007 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6008 Set_Flag11
(N
, Val
);
6009 end Set_Null_Exclusion_Present
;
6011 procedure Set_Null_Exclusion_In_Return_Present
6012 (N
: Node_Id
; Val
: Boolean := True) is
6014 pragma Assert
(False
6015 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
6016 Set_Flag14
(N
, Val
);
6017 end Set_Null_Exclusion_In_Return_Present
;
6019 procedure Set_Null_Present
6020 (N
: Node_Id
; Val
: Boolean := True) is
6022 pragma Assert
(False
6023 or else NT
(N
).Nkind
= N_Component_List
6024 or else NT
(N
).Nkind
= N_Procedure_Specification
6025 or else NT
(N
).Nkind
= N_Record_Definition
);
6026 Set_Flag13
(N
, Val
);
6027 end Set_Null_Present
;
6029 procedure Set_Null_Record_Present
6030 (N
: Node_Id
; Val
: Boolean := True) is
6032 pragma Assert
(False
6033 or else NT
(N
).Nkind
= N_Aggregate
6034 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
6035 Set_Flag17
(N
, Val
);
6036 end Set_Null_Record_Present
;
6038 procedure Set_Null_Statement
6039 (N
: Node_Id
; Val
: Node_Id
) is
6041 pragma Assert
(False
6042 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6044 end Set_Null_Statement
;
6046 procedure Set_Object_Definition
6047 (N
: Node_Id
; Val
: Node_Id
) is
6049 pragma Assert
(False
6050 or else NT
(N
).Nkind
= N_Object_Declaration
);
6051 Set_Node4_With_Parent
(N
, Val
);
6052 end Set_Object_Definition
;
6054 procedure Set_Of_Present
6055 (N
: Node_Id
; Val
: Boolean := True) is
6057 pragma Assert
(False
6058 or else NT
(N
).Nkind
= N_Iterator_Specification
);
6059 Set_Flag16
(N
, Val
);
6062 procedure Set_Original_Discriminant
6063 (N
: Node_Id
; Val
: Node_Id
) is
6065 pragma Assert
(False
6066 or else NT
(N
).Nkind
= N_Identifier
);
6067 Set_Node2
(N
, Val
); -- semantic field, no parent set
6068 end Set_Original_Discriminant
;
6070 procedure Set_Original_Entity
6071 (N
: Node_Id
; Val
: Entity_Id
) is
6073 pragma Assert
(False
6074 or else NT
(N
).Nkind
= N_Integer_Literal
6075 or else NT
(N
).Nkind
= N_Real_Literal
);
6076 Set_Node2
(N
, Val
); -- semantic field, no parent set
6077 end Set_Original_Entity
;
6079 procedure Set_Others_Discrete_Choices
6080 (N
: Node_Id
; Val
: List_Id
) is
6082 pragma Assert
(False
6083 or else NT
(N
).Nkind
= N_Others_Choice
);
6084 Set_List1_With_Parent
(N
, Val
);
6085 end Set_Others_Discrete_Choices
;
6087 procedure Set_Out_Present
6088 (N
: Node_Id
; Val
: Boolean := True) is
6090 pragma Assert
(False
6091 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6092 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6093 Set_Flag17
(N
, Val
);
6094 end Set_Out_Present
;
6096 procedure Set_Parameter_Associations
6097 (N
: Node_Id
; Val
: List_Id
) is
6099 pragma Assert
(False
6100 or else NT
(N
).Nkind
= N_Entry_Call_Statement
6101 or else NT
(N
).Nkind
= N_Function_Call
6102 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
6103 Set_List3_With_Parent
(N
, Val
);
6104 end Set_Parameter_Associations
;
6106 procedure Set_Parameter_Specifications
6107 (N
: Node_Id
; Val
: List_Id
) is
6109 pragma Assert
(False
6110 or else NT
(N
).Nkind
= N_Accept_Statement
6111 or else NT
(N
).Nkind
= N_Access_Function_Definition
6112 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6113 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
6114 or else NT
(N
).Nkind
= N_Entry_Declaration
6115 or else NT
(N
).Nkind
= N_Function_Specification
6116 or else NT
(N
).Nkind
= N_Procedure_Specification
);
6117 Set_List3_With_Parent
(N
, Val
);
6118 end Set_Parameter_Specifications
;
6120 procedure Set_Parameter_Type
6121 (N
: Node_Id
; Val
: Node_Id
) is
6123 pragma Assert
(False
6124 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6125 Set_Node2_With_Parent
(N
, Val
);
6126 end Set_Parameter_Type
;
6128 procedure Set_Parent_Spec
6129 (N
: Node_Id
; Val
: Node_Id
) is
6131 pragma Assert
(False
6132 or else NT
(N
).Nkind
= N_Function_Instantiation
6133 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
6134 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6135 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
6136 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
6137 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6138 or else NT
(N
).Nkind
= N_Package_Declaration
6139 or else NT
(N
).Nkind
= N_Package_Instantiation
6140 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
6141 or else NT
(N
).Nkind
= N_Procedure_Instantiation
6142 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6143 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6144 Set_Node4
(N
, Val
); -- semantic field, no parent set
6145 end Set_Parent_Spec
;
6147 procedure Set_Position
6148 (N
: Node_Id
; Val
: Node_Id
) is
6150 pragma Assert
(False
6151 or else NT
(N
).Nkind
= N_Component_Clause
);
6152 Set_Node2_With_Parent
(N
, Val
);
6155 procedure Set_Pragma_Argument_Associations
6156 (N
: Node_Id
; Val
: List_Id
) is
6158 pragma Assert
(False
6159 or else NT
(N
).Nkind
= N_Pragma
);
6160 Set_List2_With_Parent
(N
, Val
);
6161 end Set_Pragma_Argument_Associations
;
6163 procedure Set_Pragma_Identifier
6164 (N
: Node_Id
; Val
: Node_Id
) is
6166 pragma Assert
(False
6167 or else NT
(N
).Nkind
= N_Pragma
);
6168 Set_Node4_With_Parent
(N
, Val
);
6169 end Set_Pragma_Identifier
;
6171 procedure Set_Pragmas_After
6172 (N
: Node_Id
; Val
: List_Id
) is
6174 pragma Assert
(False
6175 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
6176 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
6177 Set_List5_With_Parent
(N
, Val
);
6178 end Set_Pragmas_After
;
6180 procedure Set_Pragmas_Before
6181 (N
: Node_Id
; Val
: List_Id
) is
6183 pragma Assert
(False
6184 or else NT
(N
).Nkind
= N_Accept_Alternative
6185 or else NT
(N
).Nkind
= N_Delay_Alternative
6186 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6187 or else NT
(N
).Nkind
= N_Mod_Clause
6188 or else NT
(N
).Nkind
= N_Terminate_Alternative
6189 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6190 Set_List4_With_Parent
(N
, Val
);
6191 end Set_Pragmas_Before
;
6193 procedure Set_Pre_Post_Conditions
6194 (N
: Node_Id
; Val
: Node_Id
) is
6196 pragma Assert
(False
6197 or else NT
(N
).Nkind
= N_Contract
);
6198 Set_Node1
(N
, Val
); -- semantic field, no parent set
6199 end Set_Pre_Post_Conditions
;
6201 procedure Set_Prefix
6202 (N
: Node_Id
; Val
: Node_Id
) is
6204 pragma Assert
(False
6205 or else NT
(N
).Nkind
= N_Attribute_Reference
6206 or else NT
(N
).Nkind
= N_Expanded_Name
6207 or else NT
(N
).Nkind
= N_Explicit_Dereference
6208 or else NT
(N
).Nkind
= N_Indexed_Component
6209 or else NT
(N
).Nkind
= N_Reference
6210 or else NT
(N
).Nkind
= N_Selected_Component
6211 or else NT
(N
).Nkind
= N_Slice
);
6212 Set_Node3_With_Parent
(N
, Val
);
6215 procedure Set_Premature_Use
6216 (N
: Node_Id
; Val
: Node_Id
) is
6218 pragma Assert
(False
6219 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6221 end Set_Premature_Use
;
6223 procedure Set_Present_Expr
6224 (N
: Node_Id
; Val
: Uint
) is
6226 pragma Assert
(False
6227 or else NT
(N
).Nkind
= N_Variant
);
6229 end Set_Present_Expr
;
6231 procedure Set_Prev_Ids
6232 (N
: Node_Id
; Val
: Boolean := True) is
6234 pragma Assert
(False
6235 or else NT
(N
).Nkind
= N_Component_Declaration
6236 or else NT
(N
).Nkind
= N_Discriminant_Specification
6237 or else NT
(N
).Nkind
= N_Exception_Declaration
6238 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6239 or else NT
(N
).Nkind
= N_Number_Declaration
6240 or else NT
(N
).Nkind
= N_Object_Declaration
6241 or else NT
(N
).Nkind
= N_Parameter_Specification
6242 or else NT
(N
).Nkind
= N_Use_Package_Clause
6243 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6247 procedure Set_Prev_Use_Clause
6248 (N
: Node_Id
; Val
: Node_Id
) is
6250 pragma Assert
(False
6251 or else NT
(N
).Nkind
= N_Use_Package_Clause
6252 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6253 Set_Node1
(N
, Val
); -- semantic field, no parent set
6254 end Set_Prev_Use_Clause
;
6256 procedure Set_Print_In_Hex
6257 (N
: Node_Id
; Val
: Boolean := True) is
6259 pragma Assert
(False
6260 or else NT
(N
).Nkind
= N_Integer_Literal
);
6261 Set_Flag13
(N
, Val
);
6262 end Set_Print_In_Hex
;
6264 procedure Set_Private_Declarations
6265 (N
: Node_Id
; Val
: List_Id
) is
6267 pragma Assert
(False
6268 or else NT
(N
).Nkind
= N_Package_Specification
6269 or else NT
(N
).Nkind
= N_Protected_Definition
6270 or else NT
(N
).Nkind
= N_Task_Definition
);
6271 Set_List3_With_Parent
(N
, Val
);
6272 end Set_Private_Declarations
;
6274 procedure Set_Private_Present
6275 (N
: Node_Id
; Val
: Boolean := True) is
6277 pragma Assert
(False
6278 or else NT
(N
).Nkind
= N_Compilation_Unit
6279 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6280 or else NT
(N
).Nkind
= N_With_Clause
);
6281 Set_Flag15
(N
, Val
);
6282 end Set_Private_Present
;
6284 procedure Set_Procedure_To_Call
6285 (N
: Node_Id
; Val
: Node_Id
) is
6287 pragma Assert
(False
6288 or else NT
(N
).Nkind
= N_Allocator
6289 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6290 or else NT
(N
).Nkind
= N_Free_Statement
6291 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6292 Set_Node2
(N
, Val
); -- semantic field, no parent set
6293 end Set_Procedure_To_Call
;
6295 procedure Set_Proper_Body
6296 (N
: Node_Id
; Val
: Node_Id
) is
6298 pragma Assert
(False
6299 or else NT
(N
).Nkind
= N_Subunit
);
6300 Set_Node1_With_Parent
(N
, Val
);
6301 end Set_Proper_Body
;
6303 procedure Set_Protected_Definition
6304 (N
: Node_Id
; Val
: Node_Id
) is
6306 pragma Assert
(False
6307 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6308 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6309 Set_Node3_With_Parent
(N
, Val
);
6310 end Set_Protected_Definition
;
6312 procedure Set_Protected_Present
6313 (N
: Node_Id
; Val
: Boolean := True) is
6315 pragma Assert
(False
6316 or else NT
(N
).Nkind
= N_Access_Function_Definition
6317 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6318 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6319 or else NT
(N
).Nkind
= N_Record_Definition
);
6321 end Set_Protected_Present
;
6323 procedure Set_Raises_Constraint_Error
6324 (N
: Node_Id
; Val
: Boolean := True) is
6326 pragma Assert
(False
6327 or else NT
(N
).Nkind
in N_Subexpr
);
6329 end Set_Raises_Constraint_Error
;
6331 procedure Set_Range_Constraint
6332 (N
: Node_Id
; Val
: Node_Id
) is
6334 pragma Assert
(False
6335 or else NT
(N
).Nkind
= N_Delta_Constraint
6336 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6337 Set_Node4_With_Parent
(N
, Val
);
6338 end Set_Range_Constraint
;
6340 procedure Set_Range_Expression
6341 (N
: Node_Id
; Val
: Node_Id
) is
6343 pragma Assert
(False
6344 or else NT
(N
).Nkind
= N_Range_Constraint
);
6345 Set_Node4_With_Parent
(N
, Val
);
6346 end Set_Range_Expression
;
6348 procedure Set_Real_Range_Specification
6349 (N
: Node_Id
; Val
: Node_Id
) is
6351 pragma Assert
(False
6352 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6353 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6354 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6355 Set_Node4_With_Parent
(N
, Val
);
6356 end Set_Real_Range_Specification
;
6358 procedure Set_Realval
6359 (N
: Node_Id
; Val
: Ureal
) is
6361 pragma Assert
(False
6362 or else NT
(N
).Nkind
= N_Real_Literal
);
6363 Set_Ureal3
(N
, Val
);
6366 procedure Set_Reason
6367 (N
: Node_Id
; Val
: Uint
) is
6369 pragma Assert
(False
6370 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6371 or else NT
(N
).Nkind
= N_Raise_Program_Error
6372 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6376 procedure Set_Record_Extension_Part
6377 (N
: Node_Id
; Val
: Node_Id
) is
6379 pragma Assert
(False
6380 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6381 Set_Node3_With_Parent
(N
, Val
);
6382 end Set_Record_Extension_Part
;
6384 procedure Set_Redundant_Use
6385 (N
: Node_Id
; Val
: Boolean := True) is
6387 pragma Assert
(False
6388 or else NT
(N
).Nkind
= N_Attribute_Reference
6389 or else NT
(N
).Nkind
= N_Expanded_Name
6390 or else NT
(N
).Nkind
= N_Identifier
);
6391 Set_Flag13
(N
, Val
);
6392 end Set_Redundant_Use
;
6394 procedure Set_Renaming_Exception
6395 (N
: Node_Id
; Val
: Node_Id
) is
6397 pragma Assert
(False
6398 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6400 end Set_Renaming_Exception
;
6402 procedure Set_Result_Definition
6403 (N
: Node_Id
; Val
: Node_Id
) is
6405 pragma Assert
(False
6406 or else NT
(N
).Nkind
= N_Access_Function_Definition
6407 or else NT
(N
).Nkind
= N_Function_Specification
);
6408 Set_Node4_With_Parent
(N
, Val
);
6409 end Set_Result_Definition
;
6411 procedure Set_Return_Object_Declarations
6412 (N
: Node_Id
; Val
: List_Id
) is
6414 pragma Assert
(False
6415 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6416 Set_List3_With_Parent
(N
, Val
);
6417 end Set_Return_Object_Declarations
;
6419 procedure Set_Return_Statement_Entity
6420 (N
: Node_Id
; Val
: Node_Id
) is
6422 pragma Assert
(False
6423 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6424 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6425 Set_Node5
(N
, Val
); -- semantic field, no parent set
6426 end Set_Return_Statement_Entity
;
6428 procedure Set_Reverse_Present
6429 (N
: Node_Id
; Val
: Boolean := True) is
6431 pragma Assert
(False
6432 or else NT
(N
).Nkind
= N_Iterator_Specification
6433 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6434 Set_Flag15
(N
, Val
);
6435 end Set_Reverse_Present
;
6437 procedure Set_Right_Opnd
6438 (N
: Node_Id
; Val
: Node_Id
) is
6440 pragma Assert
(False
6441 or else NT
(N
).Nkind
in N_Op
6442 or else NT
(N
).Nkind
= N_And_Then
6443 or else NT
(N
).Nkind
= N_In
6444 or else NT
(N
).Nkind
= N_Not_In
6445 or else NT
(N
).Nkind
= N_Or_Else
);
6446 Set_Node3_With_Parent
(N
, Val
);
6449 procedure Set_Rounded_Result
6450 (N
: Node_Id
; Val
: Boolean := True) is
6452 pragma Assert
(False
6453 or else NT
(N
).Nkind
= N_Op_Divide
6454 or else NT
(N
).Nkind
= N_Op_Multiply
6455 or else NT
(N
).Nkind
= N_Type_Conversion
);
6456 Set_Flag18
(N
, Val
);
6457 end Set_Rounded_Result
;
6459 procedure Set_SCIL_Controlling_Tag
6460 (N
: Node_Id
; Val
: Node_Id
) is
6462 pragma Assert
(False
6463 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6464 Set_Node5
(N
, Val
); -- semantic field, no parent set
6465 end Set_SCIL_Controlling_Tag
;
6467 procedure Set_SCIL_Entity
6468 (N
: Node_Id
; Val
: Node_Id
) is
6470 pragma Assert
(False
6471 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6472 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6473 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6474 Set_Node4
(N
, Val
); -- semantic field, no parent set
6475 end Set_SCIL_Entity
;
6477 procedure Set_SCIL_Tag_Value
6478 (N
: Node_Id
; Val
: Node_Id
) is
6480 pragma Assert
(False
6481 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6482 Set_Node5
(N
, Val
); -- semantic field, no parent set
6483 end Set_SCIL_Tag_Value
;
6485 procedure Set_SCIL_Target_Prim
6486 (N
: Node_Id
; Val
: Node_Id
) is
6488 pragma Assert
(False
6489 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6490 Set_Node2
(N
, Val
); -- semantic field, no parent set
6491 end Set_SCIL_Target_Prim
;
6494 (N
: Node_Id
; Val
: Node_Id
) is
6496 pragma Assert
(False
6497 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6498 or else NT
(N
).Nkind
= N_Defining_Identifier
6499 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6500 Set_Node3
(N
, Val
); -- semantic field, no parent set
6503 procedure Set_Select_Alternatives
6504 (N
: Node_Id
; Val
: List_Id
) is
6506 pragma Assert
(False
6507 or else NT
(N
).Nkind
= N_Selective_Accept
);
6508 Set_List1_With_Parent
(N
, Val
);
6509 end Set_Select_Alternatives
;
6511 procedure Set_Selector_Name
6512 (N
: Node_Id
; Val
: Node_Id
) is
6514 pragma Assert
(False
6515 or else NT
(N
).Nkind
= N_Expanded_Name
6516 or else NT
(N
).Nkind
= N_Generic_Association
6517 or else NT
(N
).Nkind
= N_Parameter_Association
6518 or else NT
(N
).Nkind
= N_Selected_Component
);
6519 Set_Node2_With_Parent
(N
, Val
);
6520 end Set_Selector_Name
;
6522 procedure Set_Selector_Names
6523 (N
: Node_Id
; Val
: List_Id
) is
6525 pragma Assert
(False
6526 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6527 Set_List1_With_Parent
(N
, Val
);
6528 end Set_Selector_Names
;
6530 procedure Set_Shift_Count_OK
6531 (N
: Node_Id
; Val
: Boolean := True) is
6533 pragma Assert
(False
6534 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6535 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6536 or else NT
(N
).Nkind
= N_Op_Shift_Left
6537 or else NT
(N
).Nkind
= N_Op_Shift_Right
6538 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6540 end Set_Shift_Count_OK
;
6542 procedure Set_Source_Type
6543 (N
: Node_Id
; Val
: Entity_Id
) is
6545 pragma Assert
(False
6546 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6547 Set_Node1
(N
, Val
); -- semantic field, no parent set
6548 end Set_Source_Type
;
6550 procedure Set_Specification
6551 (N
: Node_Id
; Val
: Node_Id
) is
6553 pragma Assert
(False
6554 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6555 or else NT
(N
).Nkind
= N_Expression_Function
6556 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6557 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6558 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6559 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6560 or else NT
(N
).Nkind
= N_Package_Declaration
6561 or else NT
(N
).Nkind
= N_Subprogram_Body
6562 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6563 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6564 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6565 Set_Node1_With_Parent
(N
, Val
);
6566 end Set_Specification
;
6568 procedure Set_Split_PPC
6569 (N
: Node_Id
; Val
: Boolean) is
6571 pragma Assert
(False
6572 or else NT
(N
).Nkind
= N_Aspect_Specification
6573 or else NT
(N
).Nkind
= N_Pragma
);
6574 Set_Flag17
(N
, Val
);
6577 procedure Set_Statements
6578 (N
: Node_Id
; Val
: List_Id
) is
6580 pragma Assert
(False
6581 or else NT
(N
).Nkind
= N_Abortable_Part
6582 or else NT
(N
).Nkind
= N_Accept_Alternative
6583 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6584 or else NT
(N
).Nkind
= N_Delay_Alternative
6585 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6586 or else NT
(N
).Nkind
= N_Exception_Handler
6587 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6588 or else NT
(N
).Nkind
= N_Loop_Statement
6589 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6590 Set_List3_With_Parent
(N
, Val
);
6593 procedure Set_Storage_Pool
6594 (N
: Node_Id
; Val
: Node_Id
) is
6596 pragma Assert
(False
6597 or else NT
(N
).Nkind
= N_Allocator
6598 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6599 or else NT
(N
).Nkind
= N_Free_Statement
6600 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6601 Set_Node1
(N
, Val
); -- semantic field, no parent set
6602 end Set_Storage_Pool
;
6604 procedure Set_Subpool_Handle_Name
6605 (N
: Node_Id
; Val
: Node_Id
) is
6607 pragma Assert
(False
6608 or else NT
(N
).Nkind
= N_Allocator
);
6609 Set_Node4_With_Parent
(N
, Val
);
6610 end Set_Subpool_Handle_Name
;
6612 procedure Set_Strval
6613 (N
: Node_Id
; Val
: String_Id
) is
6615 pragma Assert
(False
6616 or else NT
(N
).Nkind
= N_Operator_Symbol
6617 or else NT
(N
).Nkind
= N_String_Literal
);
6621 procedure Set_Subtype_Indication
6622 (N
: Node_Id
; Val
: Node_Id
) is
6624 pragma Assert
(False
6625 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6626 or else NT
(N
).Nkind
= N_Component_Definition
6627 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6628 or else NT
(N
).Nkind
= N_Iterator_Specification
6629 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6630 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6631 Set_Node5_With_Parent
(N
, Val
);
6632 end Set_Subtype_Indication
;
6634 procedure Set_Subtype_Mark
6635 (N
: Node_Id
; Val
: Node_Id
) is
6637 pragma Assert
(False
6638 or else NT
(N
).Nkind
= N_Access_Definition
6639 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6640 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6641 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6642 or else NT
(N
).Nkind
= N_Qualified_Expression
6643 or else NT
(N
).Nkind
= N_Subtype_Indication
6644 or else NT
(N
).Nkind
= N_Type_Conversion
6645 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
6646 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6647 Set_Node4_With_Parent
(N
, Val
);
6648 end Set_Subtype_Mark
;
6650 procedure Set_Subtype_Marks
6651 (N
: Node_Id
; Val
: List_Id
) is
6653 pragma Assert
(False
6654 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
6655 Set_List2_With_Parent
(N
, Val
);
6656 end Set_Subtype_Marks
;
6658 procedure Set_Suppress_Assignment_Checks
6659 (N
: Node_Id
; Val
: Boolean := True) is
6661 pragma Assert
(False
6662 or else NT
(N
).Nkind
= N_Assignment_Statement
6663 or else NT
(N
).Nkind
= N_Object_Declaration
);
6664 Set_Flag18
(N
, Val
);
6665 end Set_Suppress_Assignment_Checks
;
6667 procedure Set_Suppress_Loop_Warnings
6668 (N
: Node_Id
; Val
: Boolean := True) is
6670 pragma Assert
(False
6671 or else NT
(N
).Nkind
= N_Loop_Statement
);
6672 Set_Flag17
(N
, Val
);
6673 end Set_Suppress_Loop_Warnings
;
6675 procedure Set_Synchronized_Present
6676 (N
: Node_Id
; Val
: Boolean := True) is
6678 pragma Assert
(False
6679 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6680 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6681 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6682 or else NT
(N
).Nkind
= N_Record_Definition
);
6684 end Set_Synchronized_Present
;
6686 procedure Set_Tagged_Present
6687 (N
: Node_Id
; Val
: Boolean := True) is
6689 pragma Assert
(False
6690 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6691 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6692 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6693 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6694 or else NT
(N
).Nkind
= N_Record_Definition
);
6695 Set_Flag15
(N
, Val
);
6696 end Set_Tagged_Present
;
6698 procedure Set_Target
6699 (N
: Node_Id
; Val
: Entity_Id
) is
6701 pragma Assert
(False
6702 or else NT
(N
).Nkind
= N_Call_Marker
);
6703 Set_Node1
(N
, Val
); -- semantic field, no parent set
6706 procedure Set_Target_Type
6707 (N
: Node_Id
; Val
: Entity_Id
) is
6709 pragma Assert
(False
6710 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6711 Set_Node2
(N
, Val
); -- semantic field, no parent set
6712 end Set_Target_Type
;
6714 procedure Set_Task_Definition
6715 (N
: Node_Id
; Val
: Node_Id
) is
6717 pragma Assert
(False
6718 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6719 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6720 Set_Node3_With_Parent
(N
, Val
);
6721 end Set_Task_Definition
;
6723 procedure Set_Task_Present
6724 (N
: Node_Id
; Val
: Boolean := True) is
6726 pragma Assert
(False
6727 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6728 or else NT
(N
).Nkind
= N_Record_Definition
);
6730 end Set_Task_Present
;
6732 procedure Set_Then_Actions
6733 (N
: Node_Id
; Val
: List_Id
) is
6735 pragma Assert
(False
6736 or else NT
(N
).Nkind
= N_If_Expression
);
6737 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6738 end Set_Then_Actions
;
6740 procedure Set_Then_Statements
6741 (N
: Node_Id
; Val
: List_Id
) is
6743 pragma Assert
(False
6744 or else NT
(N
).Nkind
= N_Elsif_Part
6745 or else NT
(N
).Nkind
= N_If_Statement
);
6746 Set_List2_With_Parent
(N
, Val
);
6747 end Set_Then_Statements
;
6749 procedure Set_Treat_Fixed_As_Integer
6750 (N
: Node_Id
; Val
: Boolean := True) is
6752 pragma Assert
(False
6753 or else NT
(N
).Nkind
= N_Op_Divide
6754 or else NT
(N
).Nkind
= N_Op_Mod
6755 or else NT
(N
).Nkind
= N_Op_Multiply
6756 or else NT
(N
).Nkind
= N_Op_Rem
);
6757 Set_Flag14
(N
, Val
);
6758 end Set_Treat_Fixed_As_Integer
;
6760 procedure Set_Triggering_Alternative
6761 (N
: Node_Id
; Val
: Node_Id
) is
6763 pragma Assert
(False
6764 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6765 Set_Node1_With_Parent
(N
, Val
);
6766 end Set_Triggering_Alternative
;
6768 procedure Set_Triggering_Statement
6769 (N
: Node_Id
; Val
: Node_Id
) is
6771 pragma Assert
(False
6772 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6773 Set_Node1_With_Parent
(N
, Val
);
6774 end Set_Triggering_Statement
;
6776 procedure Set_TSS_Elist
6777 (N
: Node_Id
; Val
: Elist_Id
) is
6779 pragma Assert
(False
6780 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6781 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6784 procedure Set_Uneval_Old_Accept
6785 (N
: Node_Id
; Val
: Boolean := True) is
6787 pragma Assert
(False
6788 or else NT
(N
).Nkind
= N_Pragma
);
6790 end Set_Uneval_Old_Accept
;
6792 procedure Set_Uneval_Old_Warn
6793 (N
: Node_Id
; Val
: Boolean := True) is
6795 pragma Assert
(False
6796 or else NT
(N
).Nkind
= N_Pragma
);
6797 Set_Flag18
(N
, Val
);
6798 end Set_Uneval_Old_Warn
;
6800 procedure Set_Type_Definition
6801 (N
: Node_Id
; Val
: Node_Id
) is
6803 pragma Assert
(False
6804 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6805 Set_Node3_With_Parent
(N
, Val
);
6806 end Set_Type_Definition
;
6809 (N
: Node_Id
; Val
: Node_Id
) is
6811 pragma Assert
(False
6812 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6813 Set_Node2_With_Parent
(N
, Val
);
6816 procedure Set_Unknown_Discriminants_Present
6817 (N
: Node_Id
; Val
: Boolean := True) is
6819 pragma Assert
(False
6820 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6821 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6822 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6823 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6824 Set_Flag13
(N
, Val
);
6825 end Set_Unknown_Discriminants_Present
;
6827 procedure Set_Unreferenced_In_Spec
6828 (N
: Node_Id
; Val
: Boolean := True) is
6830 pragma Assert
(False
6831 or else NT
(N
).Nkind
= N_With_Clause
);
6833 end Set_Unreferenced_In_Spec
;
6835 procedure Set_Variant_Part
6836 (N
: Node_Id
; Val
: Node_Id
) is
6838 pragma Assert
(False
6839 or else NT
(N
).Nkind
= N_Component_List
);
6840 Set_Node4_With_Parent
(N
, Val
);
6841 end Set_Variant_Part
;
6843 procedure Set_Variants
6844 (N
: Node_Id
; Val
: List_Id
) is
6846 pragma Assert
(False
6847 or else NT
(N
).Nkind
= N_Variant_Part
);
6848 Set_List1_With_Parent
(N
, Val
);
6851 procedure Set_Visible_Declarations
6852 (N
: Node_Id
; Val
: List_Id
) is
6854 pragma Assert
(False
6855 or else NT
(N
).Nkind
= N_Package_Specification
6856 or else NT
(N
).Nkind
= N_Protected_Definition
6857 or else NT
(N
).Nkind
= N_Task_Definition
);
6858 Set_List2_With_Parent
(N
, Val
);
6859 end Set_Visible_Declarations
;
6861 procedure Set_Uninitialized_Variable
6862 (N
: Node_Id
; Val
: Node_Id
) is
6864 pragma Assert
(False
6865 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6866 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6868 end Set_Uninitialized_Variable
;
6870 procedure Set_Used_Operations
6871 (N
: Node_Id
; Val
: Elist_Id
) is
6873 pragma Assert
(False
6874 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6875 Set_Elist2
(N
, Val
);
6876 end Set_Used_Operations
;
6878 procedure Set_Was_Attribute_Reference
6879 (N
: Node_Id
; Val
: Boolean := True) is
6881 pragma Assert
(False
6882 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6884 end Set_Was_Attribute_Reference
;
6886 procedure Set_Was_Expression_Function
6887 (N
: Node_Id
; Val
: Boolean := True) is
6889 pragma Assert
(False
6890 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6891 Set_Flag18
(N
, Val
);
6892 end Set_Was_Expression_Function
;
6894 procedure Set_Was_Originally_Stub
6895 (N
: Node_Id
; Val
: Boolean := True) is
6897 pragma Assert
(False
6898 or else NT
(N
).Nkind
= N_Package_Body
6899 or else NT
(N
).Nkind
= N_Protected_Body
6900 or else NT
(N
).Nkind
= N_Subprogram_Body
6901 or else NT
(N
).Nkind
= N_Task_Body
);
6902 Set_Flag13
(N
, Val
);
6903 end Set_Was_Originally_Stub
;
6905 procedure Set_Withed_Body
6906 (N
: Node_Id
; Val
: Node_Id
) is
6908 pragma Assert
(False
6909 or else NT
(N
).Nkind
= N_With_Clause
);
6911 end Set_Withed_Body
;
6913 -------------------------
6914 -- Iterator Procedures --
6915 -------------------------
6917 procedure Next_Entity
(N
: in out Node_Id
) is
6919 N
:= Next_Entity
(N
);
6922 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6924 N
:= Next_Named_Actual
(N
);
6925 end Next_Named_Actual
;
6927 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6929 N
:= Next_Rep_Item
(N
);
6932 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6934 N
:= Next_Use_Clause
(N
);
6935 end Next_Use_Clause
;
6941 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6942 L
: constant Uint
:= End_Span
(N
);
6947 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6951 --------------------
6952 -- Get_Pragma_Arg --
6953 --------------------
6955 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6957 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6958 return Expression
(Arg
);
6964 ----------------------
6965 -- Set_End_Location --
6966 ----------------------
6968 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6971 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6972 end Set_End_Location
;
6981 V2
: Node_Kind
) return Boolean
6984 return T
= V1
or else
6992 V3
: Node_Kind
) return Boolean
6995 return T
= V1
or else
7005 V4
: Node_Kind
) return Boolean
7008 return T
= V1
or else
7020 V5
: Node_Kind
) return Boolean
7023 return T
= V1
or else
7037 V6
: Node_Kind
) return Boolean
7040 return T
= V1
or else
7056 V7
: Node_Kind
) return Boolean
7059 return T
= V1
or else
7077 V8
: Node_Kind
) return Boolean
7080 return T
= V1
or else
7100 V9
: Node_Kind
) return Boolean
7103 return T
= V1
or else
7118 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
7120 return Chars
(Pragma_Identifier
(N
));
7121 end Pragma_Name_Unmapped
;
7123 ---------------------
7124 -- Map_Pragma_Name --
7125 ---------------------
7127 -- We don't want to introduce a dependence on some hash table package or
7128 -- similar, so we use a simple array of Key => Value pairs, and do a linear
7129 -- search. Linear search is plenty efficient, given that we don't expect
7130 -- more than a couple of entries in the mapping.
7132 type Name_Pair
is record
7137 type Pragma_Map_Index
is range 1 .. 100;
7138 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
7139 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
7141 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
7143 if Last_Pair
= Pragma_Map
'Last then
7144 raise Too_Many_Pragma_Mappings
;
7147 Last_Pair
:= Last_Pair
+ 1;
7148 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
7149 end Map_Pragma_Name
;
7155 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
7156 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
7158 for J
in Pragma_Map
'First .. Last_Pair
loop
7159 if Result
= Pragma_Map
(J
).Key
then
7160 return Pragma_Map
(J
).Value
;