1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2016, 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 ABE_Is_Certain
65 (N
: Node_Id
) return Boolean is
68 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
69 or else NT
(N
).Nkind
= N_Function_Call
70 or else NT
(N
).Nkind
= N_Function_Instantiation
71 or else NT
(N
).Nkind
= N_Package_Instantiation
72 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
73 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
77 function Abort_Present
78 (N
: Node_Id
) return Boolean is
81 or else NT
(N
).Nkind
= N_Requeue_Statement
);
85 function Abortable_Part
86 (N
: Node_Id
) return Node_Id
is
89 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
93 function Abstract_Present
94 (N
: Node_Id
) return Boolean is
97 or else NT
(N
).Nkind
= N_Derived_Type_Definition
98 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
99 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
100 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
101 or else NT
(N
).Nkind
= N_Private_Type_Declaration
102 or else NT
(N
).Nkind
= N_Record_Definition
);
104 end Abstract_Present
;
106 function Accept_Handler_Records
107 (N
: Node_Id
) return List_Id
is
110 or else NT
(N
).Nkind
= N_Accept_Alternative
);
112 end Accept_Handler_Records
;
114 function Accept_Statement
115 (N
: Node_Id
) return Node_Id
is
118 or else NT
(N
).Nkind
= N_Accept_Alternative
);
120 end Accept_Statement
;
122 function Access_Definition
123 (N
: Node_Id
) return Node_Id
is
126 or else NT
(N
).Nkind
= N_Component_Definition
127 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
128 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
130 end Access_Definition
;
132 function Access_To_Subprogram_Definition
133 (N
: Node_Id
) return Node_Id
is
136 or else NT
(N
).Nkind
= N_Access_Definition
);
138 end Access_To_Subprogram_Definition
;
140 function Access_Types_To_Process
141 (N
: Node_Id
) return Elist_Id
is
144 or else NT
(N
).Nkind
= N_Freeze_Entity
);
146 end Access_Types_To_Process
;
149 (N
: Node_Id
) return List_Id
is
152 or else NT
(N
).Nkind
= N_And_Then
153 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
154 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
155 or else NT
(N
).Nkind
= N_Compound_Statement
156 or else NT
(N
).Nkind
= N_Expression_With_Actions
157 or else NT
(N
).Nkind
= N_Freeze_Entity
158 or else NT
(N
).Nkind
= N_Or_Else
);
162 function Activation_Chain_Entity
163 (N
: Node_Id
) return Node_Id
is
166 or else NT
(N
).Nkind
= N_Block_Statement
167 or else NT
(N
).Nkind
= N_Entry_Body
168 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
169 or else NT
(N
).Nkind
= N_Package_Declaration
170 or else NT
(N
).Nkind
= N_Subprogram_Body
171 or else NT
(N
).Nkind
= N_Task_Body
);
173 end Activation_Chain_Entity
;
175 function Acts_As_Spec
176 (N
: Node_Id
) return Boolean is
179 or else NT
(N
).Nkind
= N_Compilation_Unit
180 or else NT
(N
).Nkind
= N_Subprogram_Body
);
184 function Actual_Designated_Subtype
185 (N
: Node_Id
) return Node_Id
is
188 or else NT
(N
).Nkind
= N_Explicit_Dereference
189 or else NT
(N
).Nkind
= N_Free_Statement
);
191 end Actual_Designated_Subtype
;
193 function Address_Warning_Posted
194 (N
: Node_Id
) return Boolean is
197 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
199 end Address_Warning_Posted
;
201 function Aggregate_Bounds
202 (N
: Node_Id
) return Node_Id
is
205 or else NT
(N
).Nkind
= N_Aggregate
);
207 end Aggregate_Bounds
;
209 function Aliased_Present
210 (N
: Node_Id
) return Boolean is
213 or else NT
(N
).Nkind
= N_Component_Definition
214 or else NT
(N
).Nkind
= N_Object_Declaration
215 or else NT
(N
).Nkind
= N_Parameter_Specification
);
220 (N
: Node_Id
) return Boolean is
223 or else NT
(N
).Nkind
= N_Others_Choice
);
228 (N
: Node_Id
) return Boolean is
231 or else NT
(N
).Nkind
= N_Access_Definition
232 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
233 or else NT
(N
).Nkind
= N_Quantified_Expression
234 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
238 function Alternatives
239 (N
: Node_Id
) return List_Id
is
242 or else NT
(N
).Nkind
= N_Case_Expression
243 or else NT
(N
).Nkind
= N_Case_Statement
244 or else NT
(N
).Nkind
= N_In
245 or else NT
(N
).Nkind
= N_Not_In
);
249 function Ancestor_Part
250 (N
: Node_Id
) return Node_Id
is
253 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
257 function Atomic_Sync_Required
258 (N
: Node_Id
) return Boolean is
261 or else NT
(N
).Nkind
= N_Expanded_Name
262 or else NT
(N
).Nkind
= N_Explicit_Dereference
263 or else NT
(N
).Nkind
= N_Identifier
264 or else NT
(N
).Nkind
= N_Indexed_Component
265 or else NT
(N
).Nkind
= N_Selected_Component
);
267 end Atomic_Sync_Required
;
269 function Array_Aggregate
270 (N
: Node_Id
) return Node_Id
is
273 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
277 function Aspect_Rep_Item
278 (N
: Node_Id
) return Node_Id
is
281 or else NT
(N
).Nkind
= N_Aspect_Specification
);
285 function Assignment_OK
286 (N
: Node_Id
) return Boolean is
289 or else NT
(N
).Nkind
= N_Object_Declaration
290 or else NT
(N
).Nkind
in N_Subexpr
);
294 function Associated_Node
295 (N
: Node_Id
) return Node_Id
is
298 or else NT
(N
).Nkind
in N_Has_Entity
299 or else NT
(N
).Nkind
= N_Aggregate
300 or else NT
(N
).Nkind
= N_Extension_Aggregate
301 or else NT
(N
).Nkind
= N_Selected_Component
);
306 (N
: Node_Id
) return Node_Id
is
309 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
313 function Attribute_Name
314 (N
: Node_Id
) return Name_Id
is
317 or else NT
(N
).Nkind
= N_Attribute_Reference
);
321 function Aux_Decls_Node
322 (N
: Node_Id
) return Node_Id
is
325 or else NT
(N
).Nkind
= N_Compilation_Unit
);
329 function Backwards_OK
330 (N
: Node_Id
) return Boolean is
333 or else NT
(N
).Nkind
= N_Assignment_Statement
);
337 function Bad_Is_Detected
338 (N
: Node_Id
) return Boolean is
341 or else NT
(N
).Nkind
= N_Subprogram_Body
);
345 function Body_Required
346 (N
: Node_Id
) return Boolean is
349 or else NT
(N
).Nkind
= N_Compilation_Unit
);
353 function Body_To_Inline
354 (N
: Node_Id
) return Node_Id
is
357 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
362 (N
: Node_Id
) return Boolean is
365 or else NT
(N
).Nkind
= N_Component_Association
366 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
367 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
368 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
369 or else NT
(N
).Nkind
= N_Generic_Association
370 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
375 (N
: Node_Id
) return Boolean is
378 or else NT
(N
).Nkind
= N_Extended_Return_Statement
379 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
383 function Char_Literal_Value
384 (N
: Node_Id
) return Uint
is
387 or else NT
(N
).Nkind
= N_Character_Literal
);
389 end Char_Literal_Value
;
392 (N
: Node_Id
) return Name_Id
is
395 or else NT
(N
).Nkind
in N_Has_Chars
);
399 function Check_Address_Alignment
400 (N
: Node_Id
) return Boolean is
403 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
405 end Check_Address_Alignment
;
407 function Choice_Parameter
408 (N
: Node_Id
) return Node_Id
is
411 or else NT
(N
).Nkind
= N_Exception_Handler
);
413 end Choice_Parameter
;
416 (N
: Node_Id
) return List_Id
is
419 or else NT
(N
).Nkind
= N_Component_Association
);
423 function Class_Present
424 (N
: Node_Id
) return Boolean is
427 or else NT
(N
).Nkind
= N_Aspect_Specification
428 or else NT
(N
).Nkind
= N_Pragma
);
432 function Classifications
433 (N
: Node_Id
) return Node_Id
is
436 or else NT
(N
).Nkind
= N_Contract
);
440 function Cleanup_Actions
441 (N
: Node_Id
) return List_Id
is
444 or else NT
(N
).Nkind
= N_Block_Statement
);
448 function Comes_From_Extended_Return_Statement
449 (N
: Node_Id
) return Boolean is
452 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
454 end Comes_From_Extended_Return_Statement
;
456 function Compile_Time_Known_Aggregate
457 (N
: Node_Id
) return Boolean is
460 or else NT
(N
).Nkind
= N_Aggregate
);
462 end Compile_Time_Known_Aggregate
;
464 function Component_Associations
465 (N
: Node_Id
) return List_Id
is
468 or else NT
(N
).Nkind
= N_Aggregate
469 or else NT
(N
).Nkind
= N_Delta_Aggregate
470 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
472 end Component_Associations
;
474 function Component_Clauses
475 (N
: Node_Id
) return List_Id
is
478 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
480 end Component_Clauses
;
482 function Component_Definition
483 (N
: Node_Id
) return Node_Id
is
486 or else NT
(N
).Nkind
= N_Component_Declaration
487 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
488 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
490 end Component_Definition
;
492 function Component_Items
493 (N
: Node_Id
) return List_Id
is
496 or else NT
(N
).Nkind
= N_Component_List
);
500 function Component_List
501 (N
: Node_Id
) return Node_Id
is
504 or else NT
(N
).Nkind
= N_Record_Definition
505 or else NT
(N
).Nkind
= N_Variant
);
509 function Component_Name
510 (N
: Node_Id
) return Node_Id
is
513 or else NT
(N
).Nkind
= N_Component_Clause
);
517 function Componentwise_Assignment
518 (N
: Node_Id
) return Boolean is
521 or else NT
(N
).Nkind
= N_Assignment_Statement
);
523 end Componentwise_Assignment
;
526 (N
: Node_Id
) return Node_Id
is
529 or else NT
(N
).Nkind
= N_Accept_Alternative
530 or else NT
(N
).Nkind
= N_Delay_Alternative
531 or else NT
(N
).Nkind
= N_Elsif_Part
532 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
533 or else NT
(N
).Nkind
= N_Exit_Statement
534 or else NT
(N
).Nkind
= N_If_Statement
535 or else NT
(N
).Nkind
= N_Iteration_Scheme
536 or else NT
(N
).Nkind
= N_Quantified_Expression
537 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
538 or else NT
(N
).Nkind
= N_Raise_Program_Error
539 or else NT
(N
).Nkind
= N_Raise_Storage_Error
540 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
544 function Condition_Actions
545 (N
: Node_Id
) return List_Id
is
548 or else NT
(N
).Nkind
= N_Elsif_Part
549 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
551 end Condition_Actions
;
553 function Config_Pragmas
554 (N
: Node_Id
) return List_Id
is
557 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
561 function Constant_Present
562 (N
: Node_Id
) return Boolean is
565 or else NT
(N
).Nkind
= N_Access_Definition
566 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
567 or else NT
(N
).Nkind
= N_Object_Declaration
);
569 end Constant_Present
;
572 (N
: Node_Id
) return Node_Id
is
575 or else NT
(N
).Nkind
= N_Subtype_Indication
);
580 (N
: Node_Id
) return List_Id
is
583 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
587 function Context_Installed
588 (N
: Node_Id
) return Boolean is
591 or else NT
(N
).Nkind
= N_With_Clause
);
593 end Context_Installed
;
595 function Context_Items
596 (N
: Node_Id
) return List_Id
is
599 or else NT
(N
).Nkind
= N_Compilation_Unit
);
603 function Context_Pending
604 (N
: Node_Id
) return Boolean is
607 or else NT
(N
).Nkind
= N_Compilation_Unit
);
611 function Contract_Test_Cases
612 (N
: Node_Id
) return Node_Id
is
615 or else NT
(N
).Nkind
= N_Contract
);
617 end Contract_Test_Cases
;
619 function Controlling_Argument
620 (N
: Node_Id
) return Node_Id
is
623 or else NT
(N
).Nkind
= N_Function_Call
624 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
626 end Controlling_Argument
;
628 function Conversion_OK
629 (N
: Node_Id
) return Boolean is
632 or else NT
(N
).Nkind
= N_Type_Conversion
);
636 function Convert_To_Return_False
637 (N
: Node_Id
) return Boolean is
640 or else NT
(N
).Nkind
= N_Raise_Expression
);
642 end Convert_To_Return_False
;
644 function Corresponding_Aspect
645 (N
: Node_Id
) return Node_Id
is
648 or else NT
(N
).Nkind
= N_Pragma
);
650 end Corresponding_Aspect
;
652 function Corresponding_Body
653 (N
: Node_Id
) return Node_Id
is
656 or else NT
(N
).Nkind
= N_Entry_Declaration
657 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
658 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
659 or else NT
(N
).Nkind
= N_Package_Body_Stub
660 or else NT
(N
).Nkind
= N_Package_Declaration
661 or else NT
(N
).Nkind
= N_Protected_Body_Stub
662 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
663 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
664 or else NT
(N
).Nkind
= N_Subprogram_Declaration
665 or else NT
(N
).Nkind
= N_Task_Body_Stub
666 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
668 end Corresponding_Body
;
670 function Corresponding_Formal_Spec
671 (N
: Node_Id
) return Node_Id
is
674 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
676 end Corresponding_Formal_Spec
;
678 function Corresponding_Generic_Association
679 (N
: Node_Id
) return Node_Id
is
682 or else NT
(N
).Nkind
= N_Object_Declaration
683 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
685 end Corresponding_Generic_Association
;
687 function Corresponding_Integer_Value
688 (N
: Node_Id
) return Uint
is
691 or else NT
(N
).Nkind
= N_Real_Literal
);
693 end Corresponding_Integer_Value
;
695 function Corresponding_Spec
696 (N
: Node_Id
) return Entity_Id
is
699 or else NT
(N
).Nkind
= N_Expression_Function
700 or else NT
(N
).Nkind
= N_Package_Body
701 or else NT
(N
).Nkind
= N_Protected_Body
702 or else NT
(N
).Nkind
= N_Subprogram_Body
703 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
704 or else NT
(N
).Nkind
= N_Task_Body
705 or else NT
(N
).Nkind
= N_With_Clause
);
707 end Corresponding_Spec
;
709 function Corresponding_Spec_Of_Stub
710 (N
: Node_Id
) return Entity_Id
is
713 or else NT
(N
).Nkind
= N_Package_Body_Stub
714 or else NT
(N
).Nkind
= N_Protected_Body_Stub
715 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
716 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
718 end Corresponding_Spec_Of_Stub
;
720 function Corresponding_Stub
721 (N
: Node_Id
) return Node_Id
is
724 or else NT
(N
).Nkind
= N_Subunit
);
726 end Corresponding_Stub
;
728 function Dcheck_Function
729 (N
: Node_Id
) return Entity_Id
is
732 or else NT
(N
).Nkind
= N_Variant
);
736 function Declarations
737 (N
: Node_Id
) return List_Id
is
740 or else NT
(N
).Nkind
= N_Accept_Statement
741 or else NT
(N
).Nkind
= N_Block_Statement
742 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
743 or else NT
(N
).Nkind
= N_Entry_Body
744 or else NT
(N
).Nkind
= N_Package_Body
745 or else NT
(N
).Nkind
= N_Protected_Body
746 or else NT
(N
).Nkind
= N_Subprogram_Body
747 or else NT
(N
).Nkind
= N_Task_Body
);
751 function Default_Expression
752 (N
: Node_Id
) return Node_Id
is
755 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
756 or else NT
(N
).Nkind
= N_Parameter_Specification
);
758 end Default_Expression
;
760 function Default_Storage_Pool
761 (N
: Node_Id
) return Node_Id
is
764 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
766 end Default_Storage_Pool
;
768 function Default_Name
769 (N
: Node_Id
) return Node_Id
is
772 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
773 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
777 function Defining_Identifier
778 (N
: Node_Id
) return Entity_Id
is
781 or else NT
(N
).Nkind
= N_Component_Declaration
782 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
783 or else NT
(N
).Nkind
= N_Discriminant_Specification
784 or else NT
(N
).Nkind
= N_Entry_Body
785 or else NT
(N
).Nkind
= N_Entry_Declaration
786 or else NT
(N
).Nkind
= N_Entry_Index_Specification
787 or else NT
(N
).Nkind
= N_Exception_Declaration
788 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
789 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
790 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
791 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
792 or else NT
(N
).Nkind
= N_Full_Type_Declaration
793 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
794 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
795 or else NT
(N
).Nkind
= N_Iterated_Component_Association
796 or else NT
(N
).Nkind
= N_Iterator_Specification
797 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
798 or else NT
(N
).Nkind
= N_Number_Declaration
799 or else NT
(N
).Nkind
= N_Object_Declaration
800 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
801 or else NT
(N
).Nkind
= N_Package_Body_Stub
802 or else NT
(N
).Nkind
= N_Parameter_Specification
803 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
804 or else NT
(N
).Nkind
= N_Private_Type_Declaration
805 or else NT
(N
).Nkind
= N_Protected_Body
806 or else NT
(N
).Nkind
= N_Protected_Body_Stub
807 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
808 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
809 or else NT
(N
).Nkind
= N_Single_Task_Declaration
810 or else NT
(N
).Nkind
= N_Subtype_Declaration
811 or else NT
(N
).Nkind
= N_Task_Body
812 or else NT
(N
).Nkind
= N_Task_Body_Stub
813 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
815 end Defining_Identifier
;
817 function Defining_Unit_Name
818 (N
: Node_Id
) return Node_Id
is
821 or else NT
(N
).Nkind
= N_Function_Instantiation
822 or else NT
(N
).Nkind
= N_Function_Specification
823 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
824 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
825 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
826 or else NT
(N
).Nkind
= N_Package_Body
827 or else NT
(N
).Nkind
= N_Package_Instantiation
828 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
829 or else NT
(N
).Nkind
= N_Package_Specification
830 or else NT
(N
).Nkind
= N_Procedure_Instantiation
831 or else NT
(N
).Nkind
= N_Procedure_Specification
);
833 end Defining_Unit_Name
;
835 function Delay_Alternative
836 (N
: Node_Id
) return Node_Id
is
839 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
841 end Delay_Alternative
;
843 function Delay_Statement
844 (N
: Node_Id
) return Node_Id
is
847 or else NT
(N
).Nkind
= N_Delay_Alternative
);
851 function Delta_Expression
852 (N
: Node_Id
) return Node_Id
is
855 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
856 or else NT
(N
).Nkind
= N_Delta_Constraint
857 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
859 end Delta_Expression
;
861 function Digits_Expression
862 (N
: Node_Id
) return Node_Id
is
865 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
866 or else NT
(N
).Nkind
= N_Digits_Constraint
867 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
869 end Digits_Expression
;
871 function Discr_Check_Funcs_Built
872 (N
: Node_Id
) return Boolean is
875 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
877 end Discr_Check_Funcs_Built
;
879 function Discrete_Choices
880 (N
: Node_Id
) return List_Id
is
883 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
884 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
885 or else NT
(N
).Nkind
= N_Iterated_Component_Association
886 or else NT
(N
).Nkind
= N_Variant
);
888 end Discrete_Choices
;
890 function Discrete_Range
891 (N
: Node_Id
) return Node_Id
is
894 or else NT
(N
).Nkind
= N_Slice
);
898 function Discrete_Subtype_Definition
899 (N
: Node_Id
) return Node_Id
is
902 or else NT
(N
).Nkind
= N_Entry_Declaration
903 or else NT
(N
).Nkind
= N_Entry_Index_Specification
904 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
906 end Discrete_Subtype_Definition
;
908 function Discrete_Subtype_Definitions
909 (N
: Node_Id
) return List_Id
is
912 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
914 end Discrete_Subtype_Definitions
;
916 function Discriminant_Specifications
917 (N
: Node_Id
) return List_Id
is
920 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
921 or else NT
(N
).Nkind
= N_Full_Type_Declaration
922 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
923 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
924 or else NT
(N
).Nkind
= N_Private_Type_Declaration
925 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
926 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
928 end Discriminant_Specifications
;
930 function Discriminant_Type
931 (N
: Node_Id
) return Node_Id
is
934 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
936 end Discriminant_Type
;
938 function Do_Accessibility_Check
939 (N
: Node_Id
) return Boolean is
942 or else NT
(N
).Nkind
= N_Parameter_Specification
);
944 end Do_Accessibility_Check
;
946 function Do_Discriminant_Check
947 (N
: Node_Id
) return Boolean is
950 or else NT
(N
).Nkind
= N_Assignment_Statement
951 or else NT
(N
).Nkind
= N_Selected_Component
952 or else NT
(N
).Nkind
= N_Type_Conversion
);
954 end Do_Discriminant_Check
;
956 function Do_Division_Check
957 (N
: Node_Id
) return Boolean is
960 or else NT
(N
).Nkind
= N_Op_Divide
961 or else NT
(N
).Nkind
= N_Op_Mod
962 or else NT
(N
).Nkind
= N_Op_Rem
);
964 end Do_Division_Check
;
966 function Do_Length_Check
967 (N
: Node_Id
) return Boolean is
970 or else NT
(N
).Nkind
= N_Assignment_Statement
971 or else NT
(N
).Nkind
= N_Op_And
972 or else NT
(N
).Nkind
= N_Op_Or
973 or else NT
(N
).Nkind
= N_Op_Xor
974 or else NT
(N
).Nkind
= N_Type_Conversion
);
978 function Do_Overflow_Check
979 (N
: Node_Id
) return Boolean is
982 or else NT
(N
).Nkind
in N_Op
983 or else NT
(N
).Nkind
= N_Attribute_Reference
984 or else NT
(N
).Nkind
= N_Case_Expression
985 or else NT
(N
).Nkind
= N_If_Expression
986 or else NT
(N
).Nkind
= N_Type_Conversion
);
988 end Do_Overflow_Check
;
990 function Do_Range_Check
991 (N
: Node_Id
) return Boolean is
994 or else NT
(N
).Nkind
in N_Subexpr
);
998 function Do_Storage_Check
999 (N
: Node_Id
) return Boolean is
1001 pragma Assert
(False
1002 or else NT
(N
).Nkind
= N_Allocator
1003 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1005 end Do_Storage_Check
;
1007 function Do_Tag_Check
1008 (N
: Node_Id
) return Boolean is
1010 pragma Assert
(False
1011 or else NT
(N
).Nkind
= N_Assignment_Statement
1012 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1013 or else NT
(N
).Nkind
= N_Function_Call
1014 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1015 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1016 or else NT
(N
).Nkind
= N_Type_Conversion
);
1020 function Elaborate_All_Desirable
1021 (N
: Node_Id
) return Boolean is
1023 pragma Assert
(False
1024 or else NT
(N
).Nkind
= N_With_Clause
);
1026 end Elaborate_All_Desirable
;
1028 function Elaborate_All_Present
1029 (N
: Node_Id
) return Boolean is
1031 pragma Assert
(False
1032 or else NT
(N
).Nkind
= N_With_Clause
);
1034 end Elaborate_All_Present
;
1036 function Elaborate_Desirable
1037 (N
: Node_Id
) return Boolean is
1039 pragma Assert
(False
1040 or else NT
(N
).Nkind
= N_With_Clause
);
1042 end Elaborate_Desirable
;
1044 function Elaborate_Present
1045 (N
: Node_Id
) return Boolean is
1047 pragma Assert
(False
1048 or else NT
(N
).Nkind
= N_With_Clause
);
1050 end Elaborate_Present
;
1052 function Else_Actions
1053 (N
: Node_Id
) return List_Id
is
1055 pragma Assert
(False
1056 or else NT
(N
).Nkind
= N_If_Expression
);
1060 function Else_Statements
1061 (N
: Node_Id
) return List_Id
is
1063 pragma Assert
(False
1064 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1065 or else NT
(N
).Nkind
= N_If_Statement
1066 or else NT
(N
).Nkind
= N_Selective_Accept
);
1068 end Else_Statements
;
1070 function Elsif_Parts
1071 (N
: Node_Id
) return List_Id
is
1073 pragma Assert
(False
1074 or else NT
(N
).Nkind
= N_If_Statement
);
1078 function Enclosing_Variant
1079 (N
: Node_Id
) return Node_Id
is
1081 pragma Assert
(False
1082 or else NT
(N
).Nkind
= N_Variant
);
1084 end Enclosing_Variant
;
1087 (N
: Node_Id
) return Node_Id
is
1089 pragma Assert
(False
1090 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1091 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1092 or else NT
(N
).Nkind
= N_Loop_Statement
1093 or else NT
(N
).Nkind
= N_Package_Specification
1094 or else NT
(N
).Nkind
= N_Protected_Body
1095 or else NT
(N
).Nkind
= N_Protected_Definition
1096 or else NT
(N
).Nkind
= N_Record_Definition
1097 or else NT
(N
).Nkind
= N_Task_Definition
);
1102 (N
: Node_Id
) return Uint
is
1104 pragma Assert
(False
1105 or else NT
(N
).Nkind
= N_Case_Statement
1106 or else NT
(N
).Nkind
= N_If_Statement
);
1111 (N
: Node_Id
) return Node_Id
is
1113 pragma Assert
(False
1114 or else NT
(N
).Nkind
in N_Has_Entity
1115 or else NT
(N
).Nkind
= N_Aspect_Specification
1116 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1117 or else NT
(N
).Nkind
= N_Freeze_Entity
1118 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1122 function Entity_Or_Associated_Node
1123 (N
: Node_Id
) return Node_Id
is
1125 pragma Assert
(False
1126 or else NT
(N
).Nkind
in N_Has_Entity
1127 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1129 end Entity_Or_Associated_Node
;
1131 function Entry_Body_Formal_Part
1132 (N
: Node_Id
) return Node_Id
is
1134 pragma Assert
(False
1135 or else NT
(N
).Nkind
= N_Entry_Body
);
1137 end Entry_Body_Formal_Part
;
1139 function Entry_Call_Alternative
1140 (N
: Node_Id
) return Node_Id
is
1142 pragma Assert
(False
1143 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1144 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1146 end Entry_Call_Alternative
;
1148 function Entry_Call_Statement
1149 (N
: Node_Id
) return Node_Id
is
1151 pragma Assert
(False
1152 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1154 end Entry_Call_Statement
;
1156 function Entry_Direct_Name
1157 (N
: Node_Id
) return Node_Id
is
1159 pragma Assert
(False
1160 or else NT
(N
).Nkind
= N_Accept_Statement
);
1162 end Entry_Direct_Name
;
1164 function Entry_Index
1165 (N
: Node_Id
) return Node_Id
is
1167 pragma Assert
(False
1168 or else NT
(N
).Nkind
= N_Accept_Statement
);
1172 function Entry_Index_Specification
1173 (N
: Node_Id
) return Node_Id
is
1175 pragma Assert
(False
1176 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1178 end Entry_Index_Specification
;
1181 (N
: Node_Id
) return Node_Id
is
1183 pragma Assert
(False
1184 or else NT
(N
).Nkind
in N_Has_Etype
);
1188 function Exception_Choices
1189 (N
: Node_Id
) return List_Id
is
1191 pragma Assert
(False
1192 or else NT
(N
).Nkind
= N_Exception_Handler
);
1194 end Exception_Choices
;
1196 function Exception_Handlers
1197 (N
: Node_Id
) return List_Id
is
1199 pragma Assert
(False
1200 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1202 end Exception_Handlers
;
1204 function Exception_Junk
1205 (N
: Node_Id
) return Boolean is
1207 pragma Assert
(False
1208 or else NT
(N
).Nkind
= N_Block_Statement
1209 or else NT
(N
).Nkind
= N_Goto_Statement
1210 or else NT
(N
).Nkind
= N_Label
1211 or else NT
(N
).Nkind
= N_Object_Declaration
1212 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1216 function Exception_Label
1217 (N
: Node_Id
) return Node_Id
is
1219 pragma Assert
(False
1220 or else NT
(N
).Nkind
= N_Exception_Handler
1221 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1222 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1223 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1225 end Exception_Label
;
1227 function Expansion_Delayed
1228 (N
: Node_Id
) return Boolean is
1230 pragma Assert
(False
1231 or else NT
(N
).Nkind
= N_Aggregate
1232 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1234 end Expansion_Delayed
;
1236 function Explicit_Actual_Parameter
1237 (N
: Node_Id
) return Node_Id
is
1239 pragma Assert
(False
1240 or else NT
(N
).Nkind
= N_Parameter_Association
);
1242 end Explicit_Actual_Parameter
;
1244 function Explicit_Generic_Actual_Parameter
1245 (N
: Node_Id
) return Node_Id
is
1247 pragma Assert
(False
1248 or else NT
(N
).Nkind
= N_Generic_Association
);
1250 end Explicit_Generic_Actual_Parameter
;
1253 (N
: Node_Id
) return Node_Id
is
1255 pragma Assert
(False
1256 or else NT
(N
).Nkind
= N_Allocator
1257 or else NT
(N
).Nkind
= N_Aspect_Specification
1258 or else NT
(N
).Nkind
= N_Assignment_Statement
1259 or else NT
(N
).Nkind
= N_At_Clause
1260 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1261 or else NT
(N
).Nkind
= N_Case_Expression
1262 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1263 or else NT
(N
).Nkind
= N_Case_Statement
1264 or else NT
(N
).Nkind
= N_Code_Statement
1265 or else NT
(N
).Nkind
= N_Component_Association
1266 or else NT
(N
).Nkind
= N_Component_Declaration
1267 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1268 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1269 or else NT
(N
).Nkind
= N_Delta_Aggregate
1270 or else NT
(N
).Nkind
= N_Discriminant_Association
1271 or else NT
(N
).Nkind
= N_Discriminant_Specification
1272 or else NT
(N
).Nkind
= N_Exception_Declaration
1273 or else NT
(N
).Nkind
= N_Expression_Function
1274 or else NT
(N
).Nkind
= N_Expression_With_Actions
1275 or else NT
(N
).Nkind
= N_Free_Statement
1276 or else NT
(N
).Nkind
= N_Iterated_Component_Association
1277 or else NT
(N
).Nkind
= N_Mod_Clause
1278 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1279 or else NT
(N
).Nkind
= N_Number_Declaration
1280 or else NT
(N
).Nkind
= N_Object_Declaration
1281 or else NT
(N
).Nkind
= N_Parameter_Specification
1282 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1283 or else NT
(N
).Nkind
= N_Qualified_Expression
1284 or else NT
(N
).Nkind
= N_Raise_Expression
1285 or else NT
(N
).Nkind
= N_Raise_Statement
1286 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1287 or else NT
(N
).Nkind
= N_Type_Conversion
1288 or else NT
(N
).Nkind
= N_Unchecked_Expression
1289 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1293 function Expression_Copy
1294 (N
: Node_Id
) return Node_Id
is
1296 pragma Assert
(False
1297 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1299 end Expression_Copy
;
1301 function Expressions
1302 (N
: Node_Id
) return List_Id
is
1304 pragma Assert
(False
1305 or else NT
(N
).Nkind
= N_Aggregate
1306 or else NT
(N
).Nkind
= N_Attribute_Reference
1307 or else NT
(N
).Nkind
= N_Extension_Aggregate
1308 or else NT
(N
).Nkind
= N_If_Expression
1309 or else NT
(N
).Nkind
= N_Indexed_Component
);
1314 (N
: Node_Id
) return Node_Id
is
1316 pragma Assert
(False
1317 or else NT
(N
).Nkind
= N_Component_Clause
);
1321 function First_Inlined_Subprogram
1322 (N
: Node_Id
) return Entity_Id
is
1324 pragma Assert
(False
1325 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1327 end First_Inlined_Subprogram
;
1330 (N
: Node_Id
) return Boolean is
1332 pragma Assert
(False
1333 or else NT
(N
).Nkind
= N_With_Clause
);
1337 function First_Named_Actual
1338 (N
: Node_Id
) return Node_Id
is
1340 pragma Assert
(False
1341 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1342 or else NT
(N
).Nkind
= N_Function_Call
1343 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1345 end First_Named_Actual
;
1347 function First_Real_Statement
1348 (N
: Node_Id
) return Node_Id
is
1350 pragma Assert
(False
1351 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1353 end First_Real_Statement
;
1355 function First_Subtype_Link
1356 (N
: Node_Id
) return Entity_Id
is
1358 pragma Assert
(False
1359 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1361 end First_Subtype_Link
;
1363 function Float_Truncate
1364 (N
: Node_Id
) return Boolean is
1366 pragma Assert
(False
1367 or else NT
(N
).Nkind
= N_Type_Conversion
);
1371 function Formal_Type_Definition
1372 (N
: Node_Id
) return Node_Id
is
1374 pragma Assert
(False
1375 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1377 end Formal_Type_Definition
;
1379 function Forwards_OK
1380 (N
: Node_Id
) return Boolean is
1382 pragma Assert
(False
1383 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1387 function From_Aspect_Specification
1388 (N
: Node_Id
) return Boolean is
1390 pragma Assert
(False
1391 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1392 or else NT
(N
).Nkind
= N_Pragma
);
1394 end From_Aspect_Specification
;
1396 function From_At_End
1397 (N
: Node_Id
) return Boolean is
1399 pragma Assert
(False
1400 or else NT
(N
).Nkind
= N_Raise_Statement
);
1404 function From_At_Mod
1405 (N
: Node_Id
) return Boolean is
1407 pragma Assert
(False
1408 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1412 function From_Conditional_Expression
1413 (N
: Node_Id
) return Boolean is
1415 pragma Assert
(False
1416 or else NT
(N
).Nkind
= N_Case_Statement
1417 or else NT
(N
).Nkind
= N_If_Statement
);
1419 end From_Conditional_Expression
;
1421 function From_Default
1422 (N
: Node_Id
) return Boolean is
1424 pragma Assert
(False
1425 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1429 function Generalized_Indexing
1430 (N
: Node_Id
) return Node_Id
is
1432 pragma Assert
(False
1433 or else NT
(N
).Nkind
= N_Indexed_Component
);
1435 end Generalized_Indexing
;
1437 function Generic_Associations
1438 (N
: Node_Id
) return List_Id
is
1440 pragma Assert
(False
1441 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1442 or else NT
(N
).Nkind
= N_Function_Instantiation
1443 or else NT
(N
).Nkind
= N_Package_Instantiation
1444 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1446 end Generic_Associations
;
1448 function Generic_Formal_Declarations
1449 (N
: Node_Id
) return List_Id
is
1451 pragma Assert
(False
1452 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1453 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1455 end Generic_Formal_Declarations
;
1457 function Generic_Parent
1458 (N
: Node_Id
) return Node_Id
is
1460 pragma Assert
(False
1461 or else NT
(N
).Nkind
= N_Function_Specification
1462 or else NT
(N
).Nkind
= N_Package_Specification
1463 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1467 function Generic_Parent_Type
1468 (N
: Node_Id
) return Node_Id
is
1470 pragma Assert
(False
1471 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1473 end Generic_Parent_Type
;
1475 function Handled_Statement_Sequence
1476 (N
: Node_Id
) return Node_Id
is
1478 pragma Assert
(False
1479 or else NT
(N
).Nkind
= N_Accept_Statement
1480 or else NT
(N
).Nkind
= N_Block_Statement
1481 or else NT
(N
).Nkind
= N_Entry_Body
1482 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1483 or else NT
(N
).Nkind
= N_Package_Body
1484 or else NT
(N
).Nkind
= N_Subprogram_Body
1485 or else NT
(N
).Nkind
= N_Task_Body
);
1487 end Handled_Statement_Sequence
;
1489 function Handler_List_Entry
1490 (N
: Node_Id
) return Node_Id
is
1492 pragma Assert
(False
1493 or else NT
(N
).Nkind
= N_Object_Declaration
);
1495 end Handler_List_Entry
;
1497 function Has_Created_Identifier
1498 (N
: Node_Id
) return Boolean is
1500 pragma Assert
(False
1501 or else NT
(N
).Nkind
= N_Block_Statement
1502 or else NT
(N
).Nkind
= N_Loop_Statement
);
1504 end Has_Created_Identifier
;
1506 function Has_Dereference_Action
1507 (N
: Node_Id
) return Boolean is
1509 pragma Assert
(False
1510 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1512 end Has_Dereference_Action
;
1514 function Has_Dynamic_Length_Check
1515 (N
: Node_Id
) return Boolean is
1517 pragma Assert
(False
1518 or else NT
(N
).Nkind
in N_Subexpr
);
1520 end Has_Dynamic_Length_Check
;
1522 function Has_Dynamic_Range_Check
1523 (N
: Node_Id
) return Boolean is
1525 pragma Assert
(False
1526 or else NT
(N
).Nkind
= N_Subtype_Declaration
1527 or else NT
(N
).Nkind
in N_Subexpr
);
1529 end Has_Dynamic_Range_Check
;
1531 function Has_Init_Expression
1532 (N
: Node_Id
) return Boolean is
1534 pragma Assert
(False
1535 or else NT
(N
).Nkind
= N_Object_Declaration
);
1537 end Has_Init_Expression
;
1539 function Has_Local_Raise
1540 (N
: Node_Id
) return Boolean is
1542 pragma Assert
(False
1543 or else NT
(N
).Nkind
= N_Exception_Handler
);
1545 end Has_Local_Raise
;
1547 function Has_No_Elaboration_Code
1548 (N
: Node_Id
) return Boolean is
1550 pragma Assert
(False
1551 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1553 end Has_No_Elaboration_Code
;
1555 function Has_Pragma_Suppress_All
1556 (N
: Node_Id
) return Boolean is
1558 pragma Assert
(False
1559 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1561 end Has_Pragma_Suppress_All
;
1563 function Has_Private_View
1564 (N
: Node_Id
) return Boolean is
1566 pragma Assert
(False
1567 or else NT
(N
).Nkind
in N_Op
1568 or else NT
(N
).Nkind
= N_Character_Literal
1569 or else NT
(N
).Nkind
= N_Expanded_Name
1570 or else NT
(N
).Nkind
= N_Identifier
1571 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1573 end Has_Private_View
;
1575 function Has_Relative_Deadline_Pragma
1576 (N
: Node_Id
) return Boolean is
1578 pragma Assert
(False
1579 or else NT
(N
).Nkind
= N_Subprogram_Body
1580 or else NT
(N
).Nkind
= N_Task_Definition
);
1582 end Has_Relative_Deadline_Pragma
;
1584 function Has_Self_Reference
1585 (N
: Node_Id
) return Boolean is
1587 pragma Assert
(False
1588 or else NT
(N
).Nkind
= N_Aggregate
1589 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1591 end Has_Self_Reference
;
1593 function Has_SP_Choice
1594 (N
: Node_Id
) return Boolean is
1596 pragma Assert
(False
1597 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1598 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1599 or else NT
(N
).Nkind
= N_Variant
);
1603 function Has_Storage_Size_Pragma
1604 (N
: Node_Id
) return Boolean is
1606 pragma Assert
(False
1607 or else NT
(N
).Nkind
= N_Task_Definition
);
1609 end Has_Storage_Size_Pragma
;
1611 function Has_Target_Names
1612 (N
: Node_Id
) return Boolean is
1614 pragma Assert
(False
1615 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1617 end Has_Target_Names
;
1619 function Has_Wide_Character
1620 (N
: Node_Id
) return Boolean is
1622 pragma Assert
(False
1623 or else NT
(N
).Nkind
= N_String_Literal
);
1625 end Has_Wide_Character
;
1627 function Has_Wide_Wide_Character
1628 (N
: Node_Id
) return Boolean is
1630 pragma Assert
(False
1631 or else NT
(N
).Nkind
= N_String_Literal
);
1633 end Has_Wide_Wide_Character
;
1635 function Header_Size_Added
1636 (N
: Node_Id
) return Boolean is
1638 pragma Assert
(False
1639 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1641 end Header_Size_Added
;
1643 function Hidden_By_Use_Clause
1644 (N
: Node_Id
) return Elist_Id
is
1646 pragma Assert
(False
1647 or else NT
(N
).Nkind
= N_Use_Package_Clause
1648 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1650 end Hidden_By_Use_Clause
;
1653 (N
: Node_Id
) return Node_Id
is
1655 pragma Assert
(False
1656 or else NT
(N
).Nkind
= N_Range
1657 or else NT
(N
).Nkind
= N_Real_Range_Specification
1658 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1663 (N
: Node_Id
) return Node_Id
is
1665 pragma Assert
(False
1666 or else NT
(N
).Nkind
= N_Aspect_Specification
1667 or else NT
(N
).Nkind
= N_At_Clause
1668 or else NT
(N
).Nkind
= N_Block_Statement
1669 or else NT
(N
).Nkind
= N_Designator
1670 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1671 or else NT
(N
).Nkind
= N_Label
1672 or else NT
(N
).Nkind
= N_Loop_Statement
1673 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1677 function Implicit_With
1678 (N
: Node_Id
) return Boolean is
1680 pragma Assert
(False
1681 or else NT
(N
).Nkind
= N_With_Clause
);
1685 function Implicit_With_From_Instantiation
1686 (N
: Node_Id
) return Boolean is
1688 pragma Assert
(False
1689 or else NT
(N
).Nkind
= N_With_Clause
);
1691 end Implicit_With_From_Instantiation
;
1693 function Interface_List
1694 (N
: Node_Id
) return List_Id
is
1696 pragma Assert
(False
1697 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1698 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1699 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1700 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1701 or else NT
(N
).Nkind
= N_Record_Definition
1702 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1703 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1704 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1708 function Interface_Present
1709 (N
: Node_Id
) return Boolean is
1711 pragma Assert
(False
1712 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1713 or else NT
(N
).Nkind
= N_Record_Definition
);
1715 end Interface_Present
;
1717 function Import_Interface_Present
1718 (N
: Node_Id
) return Boolean is
1720 pragma Assert
(False
1721 or else NT
(N
).Nkind
= N_Pragma
);
1723 end Import_Interface_Present
;
1726 (N
: Node_Id
) return Boolean is
1728 pragma Assert
(False
1729 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1730 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1734 function Includes_Infinities
1735 (N
: Node_Id
) return Boolean is
1737 pragma Assert
(False
1738 or else NT
(N
).Nkind
= N_Range
);
1740 end Includes_Infinities
;
1742 function Incomplete_View
1743 (N
: Node_Id
) return Node_Id
is
1745 pragma Assert
(False
1746 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1748 end Incomplete_View
;
1750 function Inherited_Discriminant
1751 (N
: Node_Id
) return Boolean is
1753 pragma Assert
(False
1754 or else NT
(N
).Nkind
= N_Component_Association
);
1756 end Inherited_Discriminant
;
1758 function Instance_Spec
1759 (N
: Node_Id
) return Node_Id
is
1761 pragma Assert
(False
1762 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1763 or else NT
(N
).Nkind
= N_Function_Instantiation
1764 or else NT
(N
).Nkind
= N_Package_Instantiation
1765 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1770 (N
: Node_Id
) return Uint
is
1772 pragma Assert
(False
1773 or else NT
(N
).Nkind
= N_Integer_Literal
);
1777 function Is_Abort_Block
1778 (N
: Node_Id
) return Boolean is
1780 pragma Assert
(False
1781 or else NT
(N
).Nkind
= N_Block_Statement
);
1785 function Is_Accessibility_Actual
1786 (N
: Node_Id
) return Boolean is
1788 pragma Assert
(False
1789 or else NT
(N
).Nkind
= N_Parameter_Association
);
1791 end Is_Accessibility_Actual
;
1793 function Is_Analyzed_Pragma
1794 (N
: Node_Id
) return Boolean is
1796 pragma Assert
(False
1797 or else NT
(N
).Nkind
= N_Pragma
);
1799 end Is_Analyzed_Pragma
;
1801 function Is_Asynchronous_Call_Block
1802 (N
: Node_Id
) return Boolean is
1804 pragma Assert
(False
1805 or else NT
(N
).Nkind
= N_Block_Statement
);
1807 end Is_Asynchronous_Call_Block
;
1809 function Is_Boolean_Aspect
1810 (N
: Node_Id
) return Boolean is
1812 pragma Assert
(False
1813 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1815 end Is_Boolean_Aspect
;
1818 (N
: Node_Id
) return Boolean is
1820 pragma Assert
(False
1821 or else NT
(N
).Nkind
= N_Aspect_Specification
1822 or else NT
(N
).Nkind
= N_Pragma
);
1826 function Is_Checked_Ghost_Pragma
1827 (N
: Node_Id
) return Boolean is
1829 pragma Assert
(False
1830 or else NT
(N
).Nkind
= N_Pragma
);
1832 end Is_Checked_Ghost_Pragma
;
1834 function Is_Component_Left_Opnd
1835 (N
: Node_Id
) return Boolean is
1837 pragma Assert
(False
1838 or else NT
(N
).Nkind
= N_Op_Concat
);
1840 end Is_Component_Left_Opnd
;
1842 function Is_Component_Right_Opnd
1843 (N
: Node_Id
) return Boolean is
1845 pragma Assert
(False
1846 or else NT
(N
).Nkind
= N_Op_Concat
);
1848 end Is_Component_Right_Opnd
;
1850 function Is_Controlling_Actual
1851 (N
: Node_Id
) return Boolean is
1853 pragma Assert
(False
1854 or else NT
(N
).Nkind
in N_Subexpr
);
1856 end Is_Controlling_Actual
;
1858 function Is_Disabled
1859 (N
: Node_Id
) return Boolean is
1861 pragma Assert
(False
1862 or else NT
(N
).Nkind
= N_Aspect_Specification
1863 or else NT
(N
).Nkind
= N_Pragma
);
1867 function Is_Delayed_Aspect
1868 (N
: Node_Id
) return Boolean is
1870 pragma Assert
(False
1871 or else NT
(N
).Nkind
= N_Aspect_Specification
1872 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1873 or else NT
(N
).Nkind
= N_Pragma
);
1875 end Is_Delayed_Aspect
;
1877 function Is_Dynamic_Coextension
1878 (N
: Node_Id
) return Boolean is
1880 pragma Assert
(False
1881 or else NT
(N
).Nkind
= N_Allocator
);
1883 end Is_Dynamic_Coextension
;
1886 (N
: Node_Id
) return Boolean is
1888 pragma Assert
(False
1889 or else NT
(N
).Nkind
= N_If_Expression
);
1893 function Is_Entry_Barrier_Function
1894 (N
: Node_Id
) return Boolean is
1896 pragma Assert
(False
1897 or else NT
(N
).Nkind
= N_Subprogram_Body
1898 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1900 end Is_Entry_Barrier_Function
;
1902 function Is_Expanded_Build_In_Place_Call
1903 (N
: Node_Id
) return Boolean is
1905 pragma Assert
(False
1906 or else NT
(N
).Nkind
= N_Function_Call
);
1908 end Is_Expanded_Build_In_Place_Call
;
1910 function Is_Expanded_Contract
1911 (N
: Node_Id
) return Boolean is
1913 pragma Assert
(False
1914 or else NT
(N
).Nkind
= N_Contract
);
1916 end Is_Expanded_Contract
;
1918 function Is_Finalization_Wrapper
1919 (N
: Node_Id
) return Boolean is
1921 pragma Assert
(False
1922 or else NT
(N
).Nkind
= N_Block_Statement
);
1924 end Is_Finalization_Wrapper
;
1926 function Is_Folded_In_Parser
1927 (N
: Node_Id
) return Boolean is
1929 pragma Assert
(False
1930 or else NT
(N
).Nkind
= N_String_Literal
);
1932 end Is_Folded_In_Parser
;
1934 function Is_Generic_Contract_Pragma
1935 (N
: Node_Id
) return Boolean is
1937 pragma Assert
(False
1938 or else NT
(N
).Nkind
= N_Pragma
);
1940 end Is_Generic_Contract_Pragma
;
1943 (N
: Node_Id
) return Boolean is
1945 pragma Assert
(False
1946 or else NT
(N
).Nkind
= N_Aspect_Specification
1947 or else NT
(N
).Nkind
= N_Pragma
);
1951 function Is_Ignored_Ghost_Pragma
1952 (N
: Node_Id
) return Boolean is
1954 pragma Assert
(False
1955 or else NT
(N
).Nkind
= N_Pragma
);
1957 end Is_Ignored_Ghost_Pragma
;
1959 function Is_In_Discriminant_Check
1960 (N
: Node_Id
) return Boolean is
1962 pragma Assert
(False
1963 or else NT
(N
).Nkind
= N_Selected_Component
);
1965 end Is_In_Discriminant_Check
;
1967 function Is_Inherited_Pragma
1968 (N
: Node_Id
) return Boolean is
1970 pragma Assert
(False
1971 or else NT
(N
).Nkind
= N_Pragma
);
1973 end Is_Inherited_Pragma
;
1975 function Is_Machine_Number
1976 (N
: Node_Id
) return Boolean is
1978 pragma Assert
(False
1979 or else NT
(N
).Nkind
= N_Real_Literal
);
1981 end Is_Machine_Number
;
1983 function Is_Null_Loop
1984 (N
: Node_Id
) return Boolean is
1986 pragma Assert
(False
1987 or else NT
(N
).Nkind
= N_Loop_Statement
);
1991 function Is_Overloaded
1992 (N
: Node_Id
) return Boolean is
1994 pragma Assert
(False
1995 or else NT
(N
).Nkind
in N_Subexpr
);
1999 function Is_Power_Of_2_For_Shift
2000 (N
: Node_Id
) return Boolean is
2002 pragma Assert
(False
2003 or else NT
(N
).Nkind
= N_Op_Expon
);
2005 end Is_Power_Of_2_For_Shift
;
2007 function Is_Prefixed_Call
2008 (N
: Node_Id
) return Boolean is
2010 pragma Assert
(False
2011 or else NT
(N
).Nkind
= N_Selected_Component
);
2013 end Is_Prefixed_Call
;
2015 function Is_Protected_Subprogram_Body
2016 (N
: Node_Id
) return Boolean is
2018 pragma Assert
(False
2019 or else NT
(N
).Nkind
= N_Subprogram_Body
);
2021 end Is_Protected_Subprogram_Body
;
2023 function Is_Qualified_Universal_Literal
2024 (N
: Node_Id
) return Boolean is
2026 pragma Assert
(False
2027 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2029 end Is_Qualified_Universal_Literal
;
2031 function Is_Static_Coextension
2032 (N
: Node_Id
) return Boolean is
2034 pragma Assert
(False
2035 or else NT
(N
).Nkind
= N_Allocator
);
2037 end Is_Static_Coextension
;
2039 function Is_Static_Expression
2040 (N
: Node_Id
) return Boolean is
2042 pragma Assert
(False
2043 or else NT
(N
).Nkind
in N_Subexpr
);
2045 end Is_Static_Expression
;
2047 function Is_Subprogram_Descriptor
2048 (N
: Node_Id
) return Boolean is
2050 pragma Assert
(False
2051 or else NT
(N
).Nkind
= N_Object_Declaration
);
2053 end Is_Subprogram_Descriptor
;
2055 function Is_Task_Allocation_Block
2056 (N
: Node_Id
) return Boolean is
2058 pragma Assert
(False
2059 or else NT
(N
).Nkind
= N_Block_Statement
);
2061 end Is_Task_Allocation_Block
;
2063 function Is_Task_Body_Procedure
2064 (N
: Node_Id
) return Boolean is
2066 pragma Assert
(False
2067 or else NT
(N
).Nkind
= N_Subprogram_Body
2068 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2070 end Is_Task_Body_Procedure
;
2072 function Is_Task_Master
2073 (N
: Node_Id
) return Boolean is
2075 pragma Assert
(False
2076 or else NT
(N
).Nkind
= N_Block_Statement
2077 or else NT
(N
).Nkind
= N_Subprogram_Body
2078 or else NT
(N
).Nkind
= N_Task_Body
);
2082 function Iteration_Scheme
2083 (N
: Node_Id
) return Node_Id
is
2085 pragma Assert
(False
2086 or else NT
(N
).Nkind
= N_Loop_Statement
);
2088 end Iteration_Scheme
;
2090 function Iterator_Specification
2091 (N
: Node_Id
) return Node_Id
is
2093 pragma Assert
(False
2094 or else NT
(N
).Nkind
= N_Iteration_Scheme
2095 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2097 end Iterator_Specification
;
2100 (N
: Node_Id
) return Node_Id
is
2102 pragma Assert
(False
2103 or else NT
(N
).Nkind
= N_Itype_Reference
);
2107 function Kill_Range_Check
2108 (N
: Node_Id
) return Boolean is
2110 pragma Assert
(False
2111 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2113 end Kill_Range_Check
;
2115 function Label_Construct
2116 (N
: Node_Id
) return Node_Id
is
2118 pragma Assert
(False
2119 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2121 end Label_Construct
;
2124 (N
: Node_Id
) return Node_Id
is
2126 pragma Assert
(False
2127 or else NT
(N
).Nkind
= N_Component_Clause
);
2132 (N
: Node_Id
) return Boolean is
2134 pragma Assert
(False
2135 or else NT
(N
).Nkind
= N_With_Clause
);
2140 (N
: Node_Id
) return Node_Id
is
2142 pragma Assert
(False
2143 or else NT
(N
).Nkind
= N_And_Then
2144 or else NT
(N
).Nkind
= N_In
2145 or else NT
(N
).Nkind
= N_Not_In
2146 or else NT
(N
).Nkind
= N_Or_Else
2147 or else NT
(N
).Nkind
in N_Binary_Op
);
2151 function Library_Unit
2152 (N
: Node_Id
) return Node_Id
is
2154 pragma Assert
(False
2155 or else NT
(N
).Nkind
= N_Compilation_Unit
2156 or else NT
(N
).Nkind
= N_Package_Body_Stub
2157 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2158 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2159 or else NT
(N
).Nkind
= N_Task_Body_Stub
2160 or else NT
(N
).Nkind
= N_With_Clause
);
2164 function Limited_View_Installed
2165 (N
: Node_Id
) return Boolean is
2167 pragma Assert
(False
2168 or else NT
(N
).Nkind
= N_Package_Specification
2169 or else NT
(N
).Nkind
= N_With_Clause
);
2171 end Limited_View_Installed
;
2173 function Limited_Present
2174 (N
: Node_Id
) return Boolean is
2176 pragma Assert
(False
2177 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2178 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2179 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2180 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2181 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2182 or else NT
(N
).Nkind
= N_Record_Definition
2183 or else NT
(N
).Nkind
= N_With_Clause
);
2185 end Limited_Present
;
2188 (N
: Node_Id
) return List_Id
is
2190 pragma Assert
(False
2191 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2195 function Local_Raise_Not_OK
2196 (N
: Node_Id
) return Boolean is
2198 pragma Assert
(False
2199 or else NT
(N
).Nkind
= N_Exception_Handler
);
2201 end Local_Raise_Not_OK
;
2203 function Local_Raise_Statements
2204 (N
: Node_Id
) return Elist_Id
is
2206 pragma Assert
(False
2207 or else NT
(N
).Nkind
= N_Exception_Handler
);
2209 end Local_Raise_Statements
;
2211 function Loop_Actions
2212 (N
: Node_Id
) return List_Id
is
2214 pragma Assert
(False
2215 or else NT
(N
).Nkind
= N_Component_Association
2216 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
2220 function Loop_Parameter_Specification
2221 (N
: Node_Id
) return Node_Id
is
2223 pragma Assert
(False
2224 or else NT
(N
).Nkind
= N_Iteration_Scheme
2225 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2227 end Loop_Parameter_Specification
;
2230 (N
: Node_Id
) return Node_Id
is
2232 pragma Assert
(False
2233 or else NT
(N
).Nkind
= N_Range
2234 or else NT
(N
).Nkind
= N_Real_Range_Specification
2235 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2240 (N
: Node_Id
) return Node_Id
is
2242 pragma Assert
(False
2243 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2248 (N
: Node_Id
) return Boolean is
2250 pragma Assert
(False
2251 or else NT
(N
).Nkind
= N_Component_Declaration
2252 or else NT
(N
).Nkind
= N_Discriminant_Specification
2253 or else NT
(N
).Nkind
= N_Exception_Declaration
2254 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2255 or else NT
(N
).Nkind
= N_Number_Declaration
2256 or else NT
(N
).Nkind
= N_Object_Declaration
2257 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2261 function Must_Be_Byte_Aligned
2262 (N
: Node_Id
) return Boolean is
2264 pragma Assert
(False
2265 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2267 end Must_Be_Byte_Aligned
;
2269 function Must_Not_Freeze
2270 (N
: Node_Id
) return Boolean is
2272 pragma Assert
(False
2273 or else NT
(N
).Nkind
= N_Subtype_Indication
2274 or else NT
(N
).Nkind
in N_Subexpr
);
2276 end Must_Not_Freeze
;
2278 function Must_Not_Override
2279 (N
: Node_Id
) return Boolean is
2281 pragma Assert
(False
2282 or else NT
(N
).Nkind
= N_Entry_Declaration
2283 or else NT
(N
).Nkind
= N_Function_Instantiation
2284 or else NT
(N
).Nkind
= N_Function_Specification
2285 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2286 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2288 end Must_Not_Override
;
2290 function Must_Override
2291 (N
: Node_Id
) return Boolean is
2293 pragma Assert
(False
2294 or else NT
(N
).Nkind
= N_Entry_Declaration
2295 or else NT
(N
).Nkind
= N_Function_Instantiation
2296 or else NT
(N
).Nkind
= N_Function_Specification
2297 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2298 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2303 (N
: Node_Id
) return Node_Id
is
2305 pragma Assert
(False
2306 or else NT
(N
).Nkind
= N_Assignment_Statement
2307 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2308 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2309 or else NT
(N
).Nkind
= N_Designator
2310 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2311 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2312 or else NT
(N
).Nkind
= N_Exit_Statement
2313 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2314 or else NT
(N
).Nkind
= N_Function_Call
2315 or else NT
(N
).Nkind
= N_Function_Instantiation
2316 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2317 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2318 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2319 or else NT
(N
).Nkind
= N_Goto_Statement
2320 or else NT
(N
).Nkind
= N_Iterator_Specification
2321 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2322 or else NT
(N
).Nkind
= N_Package_Instantiation
2323 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2324 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2325 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2326 or else NT
(N
).Nkind
= N_Raise_Expression
2327 or else NT
(N
).Nkind
= N_Raise_Statement
2328 or else NT
(N
).Nkind
= N_Requeue_Statement
2329 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2330 or else NT
(N
).Nkind
= N_Subunit
2331 or else NT
(N
).Nkind
= N_Variant_Part
2332 or else NT
(N
).Nkind
= N_With_Clause
);
2337 (N
: Node_Id
) return List_Id
is
2339 pragma Assert
(False
2340 or else NT
(N
).Nkind
= N_Abort_Statement
2341 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
2345 function Next_Entity
2346 (N
: Node_Id
) return Node_Id
is
2348 pragma Assert
(False
2349 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2350 or else NT
(N
).Nkind
= N_Defining_Identifier
2351 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2355 function Next_Exit_Statement
2356 (N
: Node_Id
) return Node_Id
is
2358 pragma Assert
(False
2359 or else NT
(N
).Nkind
= N_Exit_Statement
);
2361 end Next_Exit_Statement
;
2363 function Next_Implicit_With
2364 (N
: Node_Id
) return Node_Id
is
2366 pragma Assert
(False
2367 or else NT
(N
).Nkind
= N_With_Clause
);
2369 end Next_Implicit_With
;
2371 function Next_Named_Actual
2372 (N
: Node_Id
) return Node_Id
is
2374 pragma Assert
(False
2375 or else NT
(N
).Nkind
= N_Parameter_Association
);
2377 end Next_Named_Actual
;
2379 function Next_Pragma
2380 (N
: Node_Id
) return Node_Id
is
2382 pragma Assert
(False
2383 or else NT
(N
).Nkind
= N_Pragma
);
2387 function Next_Rep_Item
2388 (N
: Node_Id
) return Node_Id
is
2390 pragma Assert
(False
2391 or else NT
(N
).Nkind
= N_Aspect_Specification
2392 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2393 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2394 or else NT
(N
).Nkind
= N_Pragma
2395 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2399 function Next_Use_Clause
2400 (N
: Node_Id
) return Node_Id
is
2402 pragma Assert
(False
2403 or else NT
(N
).Nkind
= N_Use_Package_Clause
2404 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2406 end Next_Use_Clause
;
2408 function No_Ctrl_Actions
2409 (N
: Node_Id
) return Boolean is
2411 pragma Assert
(False
2412 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2414 end No_Ctrl_Actions
;
2416 function No_Elaboration_Check
2417 (N
: Node_Id
) return Boolean is
2419 pragma Assert
(False
2420 or else NT
(N
).Nkind
= N_Function_Call
2421 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2423 end No_Elaboration_Check
;
2425 function No_Entities_Ref_In_Spec
2426 (N
: Node_Id
) return Boolean is
2428 pragma Assert
(False
2429 or else NT
(N
).Nkind
= N_With_Clause
);
2431 end No_Entities_Ref_In_Spec
;
2433 function No_Initialization
2434 (N
: Node_Id
) return Boolean is
2436 pragma Assert
(False
2437 or else NT
(N
).Nkind
= N_Allocator
2438 or else NT
(N
).Nkind
= N_Object_Declaration
);
2440 end No_Initialization
;
2442 function No_Minimize_Eliminate
2443 (N
: Node_Id
) return Boolean is
2445 pragma Assert
(False
2446 or else NT
(N
).Nkind
= N_In
2447 or else NT
(N
).Nkind
= N_Not_In
);
2449 end No_Minimize_Eliminate
;
2451 function No_Side_Effect_Removal
2452 (N
: Node_Id
) return Boolean is
2454 pragma Assert
(False
2455 or else NT
(N
).Nkind
= N_Function_Call
);
2457 end No_Side_Effect_Removal
;
2459 function No_Truncation
2460 (N
: Node_Id
) return Boolean is
2462 pragma Assert
(False
2463 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2467 function Non_Aliased_Prefix
2468 (N
: Node_Id
) return Boolean is
2470 pragma Assert
(False
2471 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2473 end Non_Aliased_Prefix
;
2475 function Null_Excluding_Subtype
2476 (N
: Node_Id
) return Boolean is
2478 pragma Assert
(False
2479 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2481 end Null_Excluding_Subtype
;
2483 function Null_Exclusion_Present
2484 (N
: Node_Id
) return Boolean is
2486 pragma Assert
(False
2487 or else NT
(N
).Nkind
= N_Access_Definition
2488 or else NT
(N
).Nkind
= N_Access_Function_Definition
2489 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2490 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2491 or else NT
(N
).Nkind
= N_Allocator
2492 or else NT
(N
).Nkind
= N_Component_Definition
2493 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2494 or else NT
(N
).Nkind
= N_Discriminant_Specification
2495 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2496 or else NT
(N
).Nkind
= N_Function_Specification
2497 or else NT
(N
).Nkind
= N_Object_Declaration
2498 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2499 or else NT
(N
).Nkind
= N_Parameter_Specification
2500 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2502 end Null_Exclusion_Present
;
2504 function Null_Exclusion_In_Return_Present
2505 (N
: Node_Id
) return Boolean is
2507 pragma Assert
(False
2508 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2510 end Null_Exclusion_In_Return_Present
;
2512 function Null_Present
2513 (N
: Node_Id
) return Boolean is
2515 pragma Assert
(False
2516 or else NT
(N
).Nkind
= N_Component_List
2517 or else NT
(N
).Nkind
= N_Procedure_Specification
2518 or else NT
(N
).Nkind
= N_Record_Definition
);
2522 function Null_Record_Present
2523 (N
: Node_Id
) return Boolean is
2525 pragma Assert
(False
2526 or else NT
(N
).Nkind
= N_Aggregate
2527 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2529 end Null_Record_Present
;
2531 function Null_Statement
2532 (N
: Node_Id
) return Node_Id
is
2534 pragma Assert
(False
2535 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2539 function Object_Definition
2540 (N
: Node_Id
) return Node_Id
is
2542 pragma Assert
(False
2543 or else NT
(N
).Nkind
= N_Object_Declaration
);
2545 end Object_Definition
;
2548 (N
: Node_Id
) return Boolean is
2550 pragma Assert
(False
2551 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2555 function Original_Discriminant
2556 (N
: Node_Id
) return Node_Id
is
2558 pragma Assert
(False
2559 or else NT
(N
).Nkind
= N_Identifier
);
2561 end Original_Discriminant
;
2563 function Original_Entity
2564 (N
: Node_Id
) return Entity_Id
is
2566 pragma Assert
(False
2567 or else NT
(N
).Nkind
= N_Integer_Literal
2568 or else NT
(N
).Nkind
= N_Real_Literal
);
2570 end Original_Entity
;
2572 function Others_Discrete_Choices
2573 (N
: Node_Id
) return List_Id
is
2575 pragma Assert
(False
2576 or else NT
(N
).Nkind
= N_Others_Choice
);
2578 end Others_Discrete_Choices
;
2580 function Out_Present
2581 (N
: Node_Id
) return Boolean is
2583 pragma Assert
(False
2584 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2585 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2589 function Parameter_Associations
2590 (N
: Node_Id
) return List_Id
is
2592 pragma Assert
(False
2593 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2594 or else NT
(N
).Nkind
= N_Function_Call
2595 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2597 end Parameter_Associations
;
2599 function Parameter_Specifications
2600 (N
: Node_Id
) return List_Id
is
2602 pragma Assert
(False
2603 or else NT
(N
).Nkind
= N_Accept_Statement
2604 or else NT
(N
).Nkind
= N_Access_Function_Definition
2605 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2606 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2607 or else NT
(N
).Nkind
= N_Entry_Declaration
2608 or else NT
(N
).Nkind
= N_Function_Specification
2609 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2611 end Parameter_Specifications
;
2613 function Parameter_Type
2614 (N
: Node_Id
) return Node_Id
is
2616 pragma Assert
(False
2617 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2621 function Parent_Spec
2622 (N
: Node_Id
) return Node_Id
is
2624 pragma Assert
(False
2625 or else NT
(N
).Nkind
= N_Function_Instantiation
2626 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2627 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2628 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2629 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2630 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2631 or else NT
(N
).Nkind
= N_Package_Declaration
2632 or else NT
(N
).Nkind
= N_Package_Instantiation
2633 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2634 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2635 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2636 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2641 (N
: Node_Id
) return Node_Id
is
2643 pragma Assert
(False
2644 or else NT
(N
).Nkind
= N_Component_Clause
);
2648 function Pragma_Argument_Associations
2649 (N
: Node_Id
) return List_Id
is
2651 pragma Assert
(False
2652 or else NT
(N
).Nkind
= N_Pragma
);
2654 end Pragma_Argument_Associations
;
2656 function Pragma_Identifier
2657 (N
: Node_Id
) return Node_Id
is
2659 pragma Assert
(False
2660 or else NT
(N
).Nkind
= N_Pragma
);
2662 end Pragma_Identifier
;
2664 function Pragmas_After
2665 (N
: Node_Id
) return List_Id
is
2667 pragma Assert
(False
2668 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2669 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2673 function Pragmas_Before
2674 (N
: Node_Id
) return List_Id
is
2676 pragma Assert
(False
2677 or else NT
(N
).Nkind
= N_Accept_Alternative
2678 or else NT
(N
).Nkind
= N_Delay_Alternative
2679 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2680 or else NT
(N
).Nkind
= N_Mod_Clause
2681 or else NT
(N
).Nkind
= N_Terminate_Alternative
2682 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2686 function Pre_Post_Conditions
2687 (N
: Node_Id
) return Node_Id
is
2689 pragma Assert
(False
2690 or else NT
(N
).Nkind
= N_Contract
);
2692 end Pre_Post_Conditions
;
2695 (N
: Node_Id
) return Node_Id
is
2697 pragma Assert
(False
2698 or else NT
(N
).Nkind
= N_Attribute_Reference
2699 or else NT
(N
).Nkind
= N_Expanded_Name
2700 or else NT
(N
).Nkind
= N_Explicit_Dereference
2701 or else NT
(N
).Nkind
= N_Indexed_Component
2702 or else NT
(N
).Nkind
= N_Reference
2703 or else NT
(N
).Nkind
= N_Selected_Component
2704 or else NT
(N
).Nkind
= N_Slice
);
2708 function Premature_Use
2709 (N
: Node_Id
) return Node_Id
is
2711 pragma Assert
(False
2712 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2716 function Present_Expr
2717 (N
: Node_Id
) return Uint
is
2719 pragma Assert
(False
2720 or else NT
(N
).Nkind
= N_Variant
);
2725 (N
: Node_Id
) return Boolean is
2727 pragma Assert
(False
2728 or else NT
(N
).Nkind
= N_Component_Declaration
2729 or else NT
(N
).Nkind
= N_Discriminant_Specification
2730 or else NT
(N
).Nkind
= N_Exception_Declaration
2731 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2732 or else NT
(N
).Nkind
= N_Number_Declaration
2733 or else NT
(N
).Nkind
= N_Object_Declaration
2734 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2738 function Print_In_Hex
2739 (N
: Node_Id
) return Boolean is
2741 pragma Assert
(False
2742 or else NT
(N
).Nkind
= N_Integer_Literal
);
2746 function Private_Declarations
2747 (N
: Node_Id
) return List_Id
is
2749 pragma Assert
(False
2750 or else NT
(N
).Nkind
= N_Package_Specification
2751 or else NT
(N
).Nkind
= N_Protected_Definition
2752 or else NT
(N
).Nkind
= N_Task_Definition
);
2754 end Private_Declarations
;
2756 function Private_Present
2757 (N
: Node_Id
) return Boolean is
2759 pragma Assert
(False
2760 or else NT
(N
).Nkind
= N_Compilation_Unit
2761 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2762 or else NT
(N
).Nkind
= N_With_Clause
);
2764 end Private_Present
;
2766 function Procedure_To_Call
2767 (N
: Node_Id
) return Node_Id
is
2769 pragma Assert
(False
2770 or else NT
(N
).Nkind
= N_Allocator
2771 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2772 or else NT
(N
).Nkind
= N_Free_Statement
2773 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2775 end Procedure_To_Call
;
2777 function Proper_Body
2778 (N
: Node_Id
) return Node_Id
is
2780 pragma Assert
(False
2781 or else NT
(N
).Nkind
= N_Subunit
);
2785 function Protected_Definition
2786 (N
: Node_Id
) return Node_Id
is
2788 pragma Assert
(False
2789 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2790 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2792 end Protected_Definition
;
2794 function Protected_Present
2795 (N
: Node_Id
) return Boolean is
2797 pragma Assert
(False
2798 or else NT
(N
).Nkind
= N_Access_Function_Definition
2799 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2800 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2801 or else NT
(N
).Nkind
= N_Record_Definition
);
2803 end Protected_Present
;
2805 function Raises_Constraint_Error
2806 (N
: Node_Id
) return Boolean is
2808 pragma Assert
(False
2809 or else NT
(N
).Nkind
in N_Subexpr
);
2811 end Raises_Constraint_Error
;
2813 function Range_Constraint
2814 (N
: Node_Id
) return Node_Id
is
2816 pragma Assert
(False
2817 or else NT
(N
).Nkind
= N_Delta_Constraint
2818 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2820 end Range_Constraint
;
2822 function Range_Expression
2823 (N
: Node_Id
) return Node_Id
is
2825 pragma Assert
(False
2826 or else NT
(N
).Nkind
= N_Range_Constraint
);
2828 end Range_Expression
;
2830 function Real_Range_Specification
2831 (N
: Node_Id
) return Node_Id
is
2833 pragma Assert
(False
2834 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2835 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2836 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2838 end Real_Range_Specification
;
2841 (N
: Node_Id
) return Ureal
is
2843 pragma Assert
(False
2844 or else NT
(N
).Nkind
= N_Real_Literal
);
2849 (N
: Node_Id
) return Uint
is
2851 pragma Assert
(False
2852 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2853 or else NT
(N
).Nkind
= N_Raise_Program_Error
2854 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2858 function Record_Extension_Part
2859 (N
: Node_Id
) return Node_Id
is
2861 pragma Assert
(False
2862 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2864 end Record_Extension_Part
;
2866 function Redundant_Use
2867 (N
: Node_Id
) return Boolean is
2869 pragma Assert
(False
2870 or else NT
(N
).Nkind
= N_Attribute_Reference
2871 or else NT
(N
).Nkind
= N_Expanded_Name
2872 or else NT
(N
).Nkind
= N_Identifier
);
2876 function Renaming_Exception
2877 (N
: Node_Id
) return Node_Id
is
2879 pragma Assert
(False
2880 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2882 end Renaming_Exception
;
2884 function Result_Definition
2885 (N
: Node_Id
) return Node_Id
is
2887 pragma Assert
(False
2888 or else NT
(N
).Nkind
= N_Access_Function_Definition
2889 or else NT
(N
).Nkind
= N_Function_Specification
);
2891 end Result_Definition
;
2893 function Return_Object_Declarations
2894 (N
: Node_Id
) return List_Id
is
2896 pragma Assert
(False
2897 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2899 end Return_Object_Declarations
;
2901 function Return_Statement_Entity
2902 (N
: Node_Id
) return Node_Id
is
2904 pragma Assert
(False
2905 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2906 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2908 end Return_Statement_Entity
;
2910 function Reverse_Present
2911 (N
: Node_Id
) return Boolean is
2913 pragma Assert
(False
2914 or else NT
(N
).Nkind
= N_Iterator_Specification
2915 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
2917 end Reverse_Present
;
2920 (N
: Node_Id
) return Node_Id
is
2922 pragma Assert
(False
2923 or else NT
(N
).Nkind
in N_Op
2924 or else NT
(N
).Nkind
= N_And_Then
2925 or else NT
(N
).Nkind
= N_In
2926 or else NT
(N
).Nkind
= N_Not_In
2927 or else NT
(N
).Nkind
= N_Or_Else
);
2931 function Rounded_Result
2932 (N
: Node_Id
) return Boolean is
2934 pragma Assert
(False
2935 or else NT
(N
).Nkind
= N_Op_Divide
2936 or else NT
(N
).Nkind
= N_Op_Multiply
2937 or else NT
(N
).Nkind
= N_Type_Conversion
);
2941 function SCIL_Controlling_Tag
2942 (N
: Node_Id
) return Node_Id
is
2944 pragma Assert
(False
2945 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2947 end SCIL_Controlling_Tag
;
2949 function SCIL_Entity
2950 (N
: Node_Id
) return Node_Id
is
2952 pragma Assert
(False
2953 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
2954 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
2955 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2959 function SCIL_Tag_Value
2960 (N
: Node_Id
) return Node_Id
is
2962 pragma Assert
(False
2963 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2967 function SCIL_Target_Prim
2968 (N
: Node_Id
) return Node_Id
is
2970 pragma Assert
(False
2971 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2973 end SCIL_Target_Prim
;
2976 (N
: Node_Id
) return Node_Id
is
2978 pragma Assert
(False
2979 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2980 or else NT
(N
).Nkind
= N_Defining_Identifier
2981 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2985 function Select_Alternatives
2986 (N
: Node_Id
) return List_Id
is
2988 pragma Assert
(False
2989 or else NT
(N
).Nkind
= N_Selective_Accept
);
2991 end Select_Alternatives
;
2993 function Selector_Name
2994 (N
: Node_Id
) return Node_Id
is
2996 pragma Assert
(False
2997 or else NT
(N
).Nkind
= N_Expanded_Name
2998 or else NT
(N
).Nkind
= N_Generic_Association
2999 or else NT
(N
).Nkind
= N_Parameter_Association
3000 or else NT
(N
).Nkind
= N_Selected_Component
);
3004 function Selector_Names
3005 (N
: Node_Id
) return List_Id
is
3007 pragma Assert
(False
3008 or else NT
(N
).Nkind
= N_Discriminant_Association
);
3012 function Shift_Count_OK
3013 (N
: Node_Id
) return Boolean is
3015 pragma Assert
(False
3016 or else NT
(N
).Nkind
= N_Op_Rotate_Left
3017 or else NT
(N
).Nkind
= N_Op_Rotate_Right
3018 or else NT
(N
).Nkind
= N_Op_Shift_Left
3019 or else NT
(N
).Nkind
= N_Op_Shift_Right
3020 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
3024 function Source_Type
3025 (N
: Node_Id
) return Entity_Id
is
3027 pragma Assert
(False
3028 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3032 function Specification
3033 (N
: Node_Id
) return Node_Id
is
3035 pragma Assert
(False
3036 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3037 or else NT
(N
).Nkind
= N_Expression_Function
3038 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3039 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3040 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3041 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3042 or else NT
(N
).Nkind
= N_Package_Declaration
3043 or else NT
(N
).Nkind
= N_Subprogram_Body
3044 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3045 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3046 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3051 (N
: Node_Id
) return Boolean is
3053 pragma Assert
(False
3054 or else NT
(N
).Nkind
= N_Aspect_Specification
3055 or else NT
(N
).Nkind
= N_Pragma
);
3060 (N
: Node_Id
) return List_Id
is
3062 pragma Assert
(False
3063 or else NT
(N
).Nkind
= N_Abortable_Part
3064 or else NT
(N
).Nkind
= N_Accept_Alternative
3065 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3066 or else NT
(N
).Nkind
= N_Delay_Alternative
3067 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3068 or else NT
(N
).Nkind
= N_Exception_Handler
3069 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3070 or else NT
(N
).Nkind
= N_Loop_Statement
3071 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3075 function Storage_Pool
3076 (N
: Node_Id
) return Node_Id
is
3078 pragma Assert
(False
3079 or else NT
(N
).Nkind
= N_Allocator
3080 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3081 or else NT
(N
).Nkind
= N_Free_Statement
3082 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3086 function Subpool_Handle_Name
3087 (N
: Node_Id
) return Node_Id
is
3089 pragma Assert
(False
3090 or else NT
(N
).Nkind
= N_Allocator
);
3092 end Subpool_Handle_Name
;
3095 (N
: Node_Id
) return String_Id
is
3097 pragma Assert
(False
3098 or else NT
(N
).Nkind
= N_Operator_Symbol
3099 or else NT
(N
).Nkind
= N_String_Literal
);
3103 function Subtype_Indication
3104 (N
: Node_Id
) return Node_Id
is
3106 pragma Assert
(False
3107 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3108 or else NT
(N
).Nkind
= N_Component_Definition
3109 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3110 or else NT
(N
).Nkind
= N_Iterator_Specification
3111 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3112 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3114 end Subtype_Indication
;
3116 function Suppress_Assignment_Checks
3117 (N
: Node_Id
) return Boolean is
3119 pragma Assert
(False
3120 or else NT
(N
).Nkind
= N_Assignment_Statement
3121 or else NT
(N
).Nkind
= N_Object_Declaration
);
3123 end Suppress_Assignment_Checks
;
3125 function Suppress_Loop_Warnings
3126 (N
: Node_Id
) return Boolean is
3128 pragma Assert
(False
3129 or else NT
(N
).Nkind
= N_Loop_Statement
);
3131 end Suppress_Loop_Warnings
;
3133 function Subtype_Mark
3134 (N
: Node_Id
) return Node_Id
is
3136 pragma Assert
(False
3137 or else NT
(N
).Nkind
= N_Access_Definition
3138 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3139 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3140 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3141 or else NT
(N
).Nkind
= N_Qualified_Expression
3142 or else NT
(N
).Nkind
= N_Subtype_Indication
3143 or else NT
(N
).Nkind
= N_Type_Conversion
3144 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
3148 function Subtype_Marks
3149 (N
: Node_Id
) return List_Id
is
3151 pragma Assert
(False
3152 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
3153 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3157 function Synchronized_Present
3158 (N
: Node_Id
) return Boolean is
3160 pragma Assert
(False
3161 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3162 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3163 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3164 or else NT
(N
).Nkind
= N_Record_Definition
);
3166 end Synchronized_Present
;
3168 function Tagged_Present
3169 (N
: Node_Id
) return Boolean is
3171 pragma Assert
(False
3172 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3173 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3174 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3175 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3176 or else NT
(N
).Nkind
= N_Record_Definition
);
3180 function Target_Type
3181 (N
: Node_Id
) return Entity_Id
is
3183 pragma Assert
(False
3184 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3188 function Task_Definition
3189 (N
: Node_Id
) return Node_Id
is
3191 pragma Assert
(False
3192 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3193 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3195 end Task_Definition
;
3197 function Task_Present
3198 (N
: Node_Id
) return Boolean is
3200 pragma Assert
(False
3201 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3202 or else NT
(N
).Nkind
= N_Record_Definition
);
3206 function Then_Actions
3207 (N
: Node_Id
) return List_Id
is
3209 pragma Assert
(False
3210 or else NT
(N
).Nkind
= N_If_Expression
);
3214 function Then_Statements
3215 (N
: Node_Id
) return List_Id
is
3217 pragma Assert
(False
3218 or else NT
(N
).Nkind
= N_Elsif_Part
3219 or else NT
(N
).Nkind
= N_If_Statement
);
3221 end Then_Statements
;
3223 function Treat_Fixed_As_Integer
3224 (N
: Node_Id
) return Boolean is
3226 pragma Assert
(False
3227 or else NT
(N
).Nkind
= N_Op_Divide
3228 or else NT
(N
).Nkind
= N_Op_Mod
3229 or else NT
(N
).Nkind
= N_Op_Multiply
3230 or else NT
(N
).Nkind
= N_Op_Rem
);
3232 end Treat_Fixed_As_Integer
;
3234 function Triggering_Alternative
3235 (N
: Node_Id
) return Node_Id
is
3237 pragma Assert
(False
3238 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3240 end Triggering_Alternative
;
3242 function Triggering_Statement
3243 (N
: Node_Id
) return Node_Id
is
3245 pragma Assert
(False
3246 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3248 end Triggering_Statement
;
3251 (N
: Node_Id
) return Elist_Id
is
3253 pragma Assert
(False
3254 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3258 function Type_Definition
3259 (N
: Node_Id
) return Node_Id
is
3261 pragma Assert
(False
3262 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3264 end Type_Definition
;
3266 function Uneval_Old_Accept
3267 (N
: Node_Id
) return Boolean is
3269 pragma Assert
(False
3270 or else NT
(N
).Nkind
= N_Pragma
);
3272 end Uneval_Old_Accept
;
3274 function Uneval_Old_Warn
3275 (N
: Node_Id
) return Boolean is
3277 pragma Assert
(False
3278 or else NT
(N
).Nkind
= N_Pragma
);
3280 end Uneval_Old_Warn
;
3283 (N
: Node_Id
) return Node_Id
is
3285 pragma Assert
(False
3286 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3290 function Unknown_Discriminants_Present
3291 (N
: Node_Id
) return Boolean is
3293 pragma Assert
(False
3294 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3295 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3296 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3297 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3299 end Unknown_Discriminants_Present
;
3301 function Unreferenced_In_Spec
3302 (N
: Node_Id
) return Boolean is
3304 pragma Assert
(False
3305 or else NT
(N
).Nkind
= N_With_Clause
);
3307 end Unreferenced_In_Spec
;
3309 function Variant_Part
3310 (N
: Node_Id
) return Node_Id
is
3312 pragma Assert
(False
3313 or else NT
(N
).Nkind
= N_Component_List
);
3318 (N
: Node_Id
) return List_Id
is
3320 pragma Assert
(False
3321 or else NT
(N
).Nkind
= N_Variant_Part
);
3325 function Visible_Declarations
3326 (N
: Node_Id
) return List_Id
is
3328 pragma Assert
(False
3329 or else NT
(N
).Nkind
= N_Package_Specification
3330 or else NT
(N
).Nkind
= N_Protected_Definition
3331 or else NT
(N
).Nkind
= N_Task_Definition
);
3333 end Visible_Declarations
;
3335 function Uninitialized_Variable
3336 (N
: Node_Id
) return Node_Id
is
3338 pragma Assert
(False
3339 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3340 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3342 end Uninitialized_Variable
;
3344 function Used_Operations
3345 (N
: Node_Id
) return Elist_Id
is
3347 pragma Assert
(False
3348 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3350 end Used_Operations
;
3352 function Was_Expression_Function
3353 (N
: Node_Id
) return Boolean is
3355 pragma Assert
(False
3356 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3358 end Was_Expression_Function
;
3360 function Was_Originally_Stub
3361 (N
: Node_Id
) return Boolean is
3363 pragma Assert
(False
3364 or else NT
(N
).Nkind
= N_Package_Body
3365 or else NT
(N
).Nkind
= N_Protected_Body
3366 or else NT
(N
).Nkind
= N_Subprogram_Body
3367 or else NT
(N
).Nkind
= N_Task_Body
);
3369 end Was_Originally_Stub
;
3371 function Withed_Body
3372 (N
: Node_Id
) return Node_Id
is
3374 pragma Assert
(False
3375 or else NT
(N
).Nkind
= N_With_Clause
);
3379 --------------------------
3380 -- Field Set Procedures --
3381 --------------------------
3383 procedure Set_ABE_Is_Certain
3384 (N
: Node_Id
; Val
: Boolean := True) is
3386 pragma Assert
(False
3387 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3388 or else NT
(N
).Nkind
= N_Function_Call
3389 or else NT
(N
).Nkind
= N_Function_Instantiation
3390 or else NT
(N
).Nkind
= N_Package_Instantiation
3391 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
3392 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
3393 Set_Flag18
(N
, Val
);
3394 end Set_ABE_Is_Certain
;
3396 procedure Set_Abort_Present
3397 (N
: Node_Id
; Val
: Boolean := True) is
3399 pragma Assert
(False
3400 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3401 Set_Flag15
(N
, Val
);
3402 end Set_Abort_Present
;
3404 procedure Set_Abortable_Part
3405 (N
: Node_Id
; Val
: Node_Id
) is
3407 pragma Assert
(False
3408 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3409 Set_Node2_With_Parent
(N
, Val
);
3410 end Set_Abortable_Part
;
3412 procedure Set_Abstract_Present
3413 (N
: Node_Id
; Val
: Boolean := True) is
3415 pragma Assert
(False
3416 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3417 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3418 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3419 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3420 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3421 or else NT
(N
).Nkind
= N_Record_Definition
);
3423 end Set_Abstract_Present
;
3425 procedure Set_Accept_Handler_Records
3426 (N
: Node_Id
; Val
: List_Id
) is
3428 pragma Assert
(False
3429 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3430 Set_List5
(N
, Val
); -- semantic field, no parent set
3431 end Set_Accept_Handler_Records
;
3433 procedure Set_Accept_Statement
3434 (N
: Node_Id
; Val
: Node_Id
) is
3436 pragma Assert
(False
3437 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3438 Set_Node2_With_Parent
(N
, Val
);
3439 end Set_Accept_Statement
;
3441 procedure Set_Access_Definition
3442 (N
: Node_Id
; Val
: Node_Id
) is
3444 pragma Assert
(False
3445 or else NT
(N
).Nkind
= N_Component_Definition
3446 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3447 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3448 Set_Node3_With_Parent
(N
, Val
);
3449 end Set_Access_Definition
;
3451 procedure Set_Access_To_Subprogram_Definition
3452 (N
: Node_Id
; Val
: Node_Id
) is
3454 pragma Assert
(False
3455 or else NT
(N
).Nkind
= N_Access_Definition
);
3456 Set_Node3_With_Parent
(N
, Val
);
3457 end Set_Access_To_Subprogram_Definition
;
3459 procedure Set_Access_Types_To_Process
3460 (N
: Node_Id
; Val
: Elist_Id
) is
3462 pragma Assert
(False
3463 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3464 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3465 end Set_Access_Types_To_Process
;
3467 procedure Set_Actions
3468 (N
: Node_Id
; Val
: List_Id
) is
3470 pragma Assert
(False
3471 or else NT
(N
).Nkind
= N_And_Then
3472 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3473 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3474 or else NT
(N
).Nkind
= N_Compound_Statement
3475 or else NT
(N
).Nkind
= N_Expression_With_Actions
3476 or else NT
(N
).Nkind
= N_Freeze_Entity
3477 or else NT
(N
).Nkind
= N_Or_Else
);
3478 Set_List1_With_Parent
(N
, Val
);
3481 procedure Set_Activation_Chain_Entity
3482 (N
: Node_Id
; Val
: Node_Id
) is
3484 pragma Assert
(False
3485 or else NT
(N
).Nkind
= N_Block_Statement
3486 or else NT
(N
).Nkind
= N_Entry_Body
3487 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3488 or else NT
(N
).Nkind
= N_Package_Declaration
3489 or else NT
(N
).Nkind
= N_Subprogram_Body
3490 or else NT
(N
).Nkind
= N_Task_Body
);
3491 Set_Node3
(N
, Val
); -- semantic field, no parent set
3492 end Set_Activation_Chain_Entity
;
3494 procedure Set_Acts_As_Spec
3495 (N
: Node_Id
; Val
: Boolean := True) is
3497 pragma Assert
(False
3498 or else NT
(N
).Nkind
= N_Compilation_Unit
3499 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3501 end Set_Acts_As_Spec
;
3503 procedure Set_Actual_Designated_Subtype
3504 (N
: Node_Id
; Val
: Node_Id
) is
3506 pragma Assert
(False
3507 or else NT
(N
).Nkind
= N_Explicit_Dereference
3508 or else NT
(N
).Nkind
= N_Free_Statement
);
3510 end Set_Actual_Designated_Subtype
;
3512 procedure Set_Address_Warning_Posted
3513 (N
: Node_Id
; Val
: Boolean := True) is
3515 pragma Assert
(False
3516 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3517 Set_Flag18
(N
, Val
);
3518 end Set_Address_Warning_Posted
;
3520 procedure Set_Aggregate_Bounds
3521 (N
: Node_Id
; Val
: Node_Id
) is
3523 pragma Assert
(False
3524 or else NT
(N
).Nkind
= N_Aggregate
);
3525 Set_Node3
(N
, Val
); -- semantic field, no parent set
3526 end Set_Aggregate_Bounds
;
3528 procedure Set_Aliased_Present
3529 (N
: Node_Id
; Val
: Boolean := True) is
3531 pragma Assert
(False
3532 or else NT
(N
).Nkind
= N_Component_Definition
3533 or else NT
(N
).Nkind
= N_Object_Declaration
3534 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3536 end Set_Aliased_Present
;
3538 procedure Set_All_Others
3539 (N
: Node_Id
; Val
: Boolean := True) is
3541 pragma Assert
(False
3542 or else NT
(N
).Nkind
= N_Others_Choice
);
3543 Set_Flag11
(N
, Val
);
3546 procedure Set_All_Present
3547 (N
: Node_Id
; Val
: Boolean := True) is
3549 pragma Assert
(False
3550 or else NT
(N
).Nkind
= N_Access_Definition
3551 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3552 or else NT
(N
).Nkind
= N_Quantified_Expression
3553 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3554 Set_Flag15
(N
, Val
);
3555 end Set_All_Present
;
3557 procedure Set_Alternatives
3558 (N
: Node_Id
; Val
: List_Id
) is
3560 pragma Assert
(False
3561 or else NT
(N
).Nkind
= N_Case_Expression
3562 or else NT
(N
).Nkind
= N_Case_Statement
3563 or else NT
(N
).Nkind
= N_In
3564 or else NT
(N
).Nkind
= N_Not_In
);
3565 Set_List4_With_Parent
(N
, Val
);
3566 end Set_Alternatives
;
3568 procedure Set_Ancestor_Part
3569 (N
: Node_Id
; Val
: Node_Id
) is
3571 pragma Assert
(False
3572 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3573 Set_Node3_With_Parent
(N
, Val
);
3574 end Set_Ancestor_Part
;
3576 procedure Set_Atomic_Sync_Required
3577 (N
: Node_Id
; Val
: Boolean := True) is
3579 pragma Assert
(False
3580 or else NT
(N
).Nkind
= N_Expanded_Name
3581 or else NT
(N
).Nkind
= N_Explicit_Dereference
3582 or else NT
(N
).Nkind
= N_Identifier
3583 or else NT
(N
).Nkind
= N_Indexed_Component
3584 or else NT
(N
).Nkind
= N_Selected_Component
);
3585 Set_Flag14
(N
, Val
);
3586 end Set_Atomic_Sync_Required
;
3588 procedure Set_Array_Aggregate
3589 (N
: Node_Id
; Val
: Node_Id
) is
3591 pragma Assert
(False
3592 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3593 Set_Node3_With_Parent
(N
, Val
);
3594 end Set_Array_Aggregate
;
3596 procedure Set_Aspect_Rep_Item
3597 (N
: Node_Id
; Val
: Node_Id
) is
3599 pragma Assert
(False
3600 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3602 end Set_Aspect_Rep_Item
;
3604 procedure Set_Assignment_OK
3605 (N
: Node_Id
; Val
: Boolean := True) is
3607 pragma Assert
(False
3608 or else NT
(N
).Nkind
= N_Object_Declaration
3609 or else NT
(N
).Nkind
in N_Subexpr
);
3610 Set_Flag15
(N
, Val
);
3611 end Set_Assignment_OK
;
3613 procedure Set_Associated_Node
3614 (N
: Node_Id
; Val
: Node_Id
) is
3616 pragma Assert
(False
3617 or else NT
(N
).Nkind
in N_Has_Entity
3618 or else NT
(N
).Nkind
= N_Aggregate
3619 or else NT
(N
).Nkind
= N_Extension_Aggregate
3620 or else NT
(N
).Nkind
= N_Selected_Component
);
3621 Set_Node4
(N
, Val
); -- semantic field, no parent set
3622 end Set_Associated_Node
;
3624 procedure Set_At_End_Proc
3625 (N
: Node_Id
; Val
: Node_Id
) is
3627 pragma Assert
(False
3628 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3630 end Set_At_End_Proc
;
3632 procedure Set_Attribute_Name
3633 (N
: Node_Id
; Val
: Name_Id
) is
3635 pragma Assert
(False
3636 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3638 end Set_Attribute_Name
;
3640 procedure Set_Aux_Decls_Node
3641 (N
: Node_Id
; Val
: Node_Id
) is
3643 pragma Assert
(False
3644 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3645 Set_Node5_With_Parent
(N
, Val
);
3646 end Set_Aux_Decls_Node
;
3648 procedure Set_Backwards_OK
3649 (N
: Node_Id
; Val
: Boolean := True) is
3651 pragma Assert
(False
3652 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3654 end Set_Backwards_OK
;
3656 procedure Set_Bad_Is_Detected
3657 (N
: Node_Id
; Val
: Boolean := True) is
3659 pragma Assert
(False
3660 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3661 Set_Flag15
(N
, Val
);
3662 end Set_Bad_Is_Detected
;
3664 procedure Set_Body_Required
3665 (N
: Node_Id
; Val
: Boolean := True) is
3667 pragma Assert
(False
3668 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3669 Set_Flag13
(N
, Val
);
3670 end Set_Body_Required
;
3672 procedure Set_Body_To_Inline
3673 (N
: Node_Id
; Val
: Node_Id
) is
3675 pragma Assert
(False
3676 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3678 end Set_Body_To_Inline
;
3680 procedure Set_Box_Present
3681 (N
: Node_Id
; Val
: Boolean := True) is
3683 pragma Assert
(False
3684 or else NT
(N
).Nkind
= N_Component_Association
3685 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3686 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3687 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3688 or else NT
(N
).Nkind
= N_Generic_Association
3689 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
3690 Set_Flag15
(N
, Val
);
3691 end Set_Box_Present
;
3693 procedure Set_By_Ref
3694 (N
: Node_Id
; Val
: Boolean := True) is
3696 pragma Assert
(False
3697 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3698 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3702 procedure Set_Char_Literal_Value
3703 (N
: Node_Id
; Val
: Uint
) is
3705 pragma Assert
(False
3706 or else NT
(N
).Nkind
= N_Character_Literal
);
3708 end Set_Char_Literal_Value
;
3711 (N
: Node_Id
; Val
: Name_Id
) is
3713 pragma Assert
(False
3714 or else NT
(N
).Nkind
in N_Has_Chars
);
3718 procedure Set_Check_Address_Alignment
3719 (N
: Node_Id
; Val
: Boolean := True) is
3721 pragma Assert
(False
3722 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3723 Set_Flag11
(N
, Val
);
3724 end Set_Check_Address_Alignment
;
3726 procedure Set_Choice_Parameter
3727 (N
: Node_Id
; Val
: Node_Id
) is
3729 pragma Assert
(False
3730 or else NT
(N
).Nkind
= N_Exception_Handler
);
3731 Set_Node2_With_Parent
(N
, Val
);
3732 end Set_Choice_Parameter
;
3734 procedure Set_Choices
3735 (N
: Node_Id
; Val
: List_Id
) is
3737 pragma Assert
(False
3738 or else NT
(N
).Nkind
= N_Component_Association
);
3739 Set_List1_With_Parent
(N
, Val
);
3742 procedure Set_Class_Present
3743 (N
: Node_Id
; Val
: Boolean := True) is
3745 pragma Assert
(False
3746 or else NT
(N
).Nkind
= N_Aspect_Specification
3747 or else NT
(N
).Nkind
= N_Pragma
);
3749 end Set_Class_Present
;
3751 procedure Set_Classifications
3752 (N
: Node_Id
; Val
: Node_Id
) is
3754 pragma Assert
(False
3755 or else NT
(N
).Nkind
= N_Contract
);
3756 Set_Node3
(N
, Val
); -- semantic field, no parent set
3757 end Set_Classifications
;
3759 procedure Set_Cleanup_Actions
3760 (N
: Node_Id
; Val
: List_Id
) is
3762 pragma Assert
(False
3763 or else NT
(N
).Nkind
= N_Block_Statement
);
3764 Set_List5
(N
, Val
); -- semantic field, no parent set
3765 end Set_Cleanup_Actions
;
3767 procedure Set_Comes_From_Extended_Return_Statement
3768 (N
: Node_Id
; Val
: Boolean := True) is
3770 pragma Assert
(False
3771 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3772 Set_Flag18
(N
, Val
);
3773 end Set_Comes_From_Extended_Return_Statement
;
3775 procedure Set_Compile_Time_Known_Aggregate
3776 (N
: Node_Id
; Val
: Boolean := True) is
3778 pragma Assert
(False
3779 or else NT
(N
).Nkind
= N_Aggregate
);
3780 Set_Flag18
(N
, Val
);
3781 end Set_Compile_Time_Known_Aggregate
;
3783 procedure Set_Component_Associations
3784 (N
: Node_Id
; Val
: List_Id
) is
3786 pragma Assert
(False
3787 or else NT
(N
).Nkind
= N_Aggregate
3788 or else NT
(N
).Nkind
= N_Delta_Aggregate
3789 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3790 Set_List2_With_Parent
(N
, Val
);
3791 end Set_Component_Associations
;
3793 procedure Set_Component_Clauses
3794 (N
: Node_Id
; Val
: List_Id
) is
3796 pragma Assert
(False
3797 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3798 Set_List3_With_Parent
(N
, Val
);
3799 end Set_Component_Clauses
;
3801 procedure Set_Component_Definition
3802 (N
: Node_Id
; Val
: Node_Id
) is
3804 pragma Assert
(False
3805 or else NT
(N
).Nkind
= N_Component_Declaration
3806 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3807 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3808 Set_Node4_With_Parent
(N
, Val
);
3809 end Set_Component_Definition
;
3811 procedure Set_Component_Items
3812 (N
: Node_Id
; Val
: List_Id
) is
3814 pragma Assert
(False
3815 or else NT
(N
).Nkind
= N_Component_List
);
3816 Set_List3_With_Parent
(N
, Val
);
3817 end Set_Component_Items
;
3819 procedure Set_Component_List
3820 (N
: Node_Id
; Val
: Node_Id
) is
3822 pragma Assert
(False
3823 or else NT
(N
).Nkind
= N_Record_Definition
3824 or else NT
(N
).Nkind
= N_Variant
);
3825 Set_Node1_With_Parent
(N
, Val
);
3826 end Set_Component_List
;
3828 procedure Set_Component_Name
3829 (N
: Node_Id
; Val
: Node_Id
) is
3831 pragma Assert
(False
3832 or else NT
(N
).Nkind
= N_Component_Clause
);
3833 Set_Node1_With_Parent
(N
, Val
);
3834 end Set_Component_Name
;
3836 procedure Set_Componentwise_Assignment
3837 (N
: Node_Id
; Val
: Boolean := True) is
3839 pragma Assert
(False
3840 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3841 Set_Flag14
(N
, Val
);
3842 end Set_Componentwise_Assignment
;
3844 procedure Set_Condition
3845 (N
: Node_Id
; Val
: Node_Id
) is
3847 pragma Assert
(False
3848 or else NT
(N
).Nkind
= N_Accept_Alternative
3849 or else NT
(N
).Nkind
= N_Delay_Alternative
3850 or else NT
(N
).Nkind
= N_Elsif_Part
3851 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3852 or else NT
(N
).Nkind
= N_Exit_Statement
3853 or else NT
(N
).Nkind
= N_If_Statement
3854 or else NT
(N
).Nkind
= N_Iteration_Scheme
3855 or else NT
(N
).Nkind
= N_Quantified_Expression
3856 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3857 or else NT
(N
).Nkind
= N_Raise_Program_Error
3858 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3859 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3860 Set_Node1_With_Parent
(N
, Val
);
3863 procedure Set_Condition_Actions
3864 (N
: Node_Id
; Val
: List_Id
) is
3866 pragma Assert
(False
3867 or else NT
(N
).Nkind
= N_Elsif_Part
3868 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3869 Set_List3
(N
, Val
); -- semantic field, no parent set
3870 end Set_Condition_Actions
;
3872 procedure Set_Config_Pragmas
3873 (N
: Node_Id
; Val
: List_Id
) is
3875 pragma Assert
(False
3876 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3877 Set_List4_With_Parent
(N
, Val
);
3878 end Set_Config_Pragmas
;
3880 procedure Set_Constant_Present
3881 (N
: Node_Id
; Val
: Boolean := True) is
3883 pragma Assert
(False
3884 or else NT
(N
).Nkind
= N_Access_Definition
3885 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3886 or else NT
(N
).Nkind
= N_Object_Declaration
);
3887 Set_Flag17
(N
, Val
);
3888 end Set_Constant_Present
;
3890 procedure Set_Constraint
3891 (N
: Node_Id
; Val
: Node_Id
) is
3893 pragma Assert
(False
3894 or else NT
(N
).Nkind
= N_Subtype_Indication
);
3895 Set_Node3_With_Parent
(N
, Val
);
3898 procedure Set_Constraints
3899 (N
: Node_Id
; Val
: List_Id
) is
3901 pragma Assert
(False
3902 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
3903 Set_List1_With_Parent
(N
, Val
);
3904 end Set_Constraints
;
3906 procedure Set_Context_Installed
3907 (N
: Node_Id
; Val
: Boolean := True) is
3909 pragma Assert
(False
3910 or else NT
(N
).Nkind
= N_With_Clause
);
3911 Set_Flag13
(N
, Val
);
3912 end Set_Context_Installed
;
3914 procedure Set_Context_Items
3915 (N
: Node_Id
; Val
: List_Id
) is
3917 pragma Assert
(False
3918 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3919 Set_List1_With_Parent
(N
, Val
);
3920 end Set_Context_Items
;
3922 procedure Set_Context_Pending
3923 (N
: Node_Id
; Val
: Boolean := True) is
3925 pragma Assert
(False
3926 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3927 Set_Flag16
(N
, Val
);
3928 end Set_Context_Pending
;
3930 procedure Set_Contract_Test_Cases
3931 (N
: Node_Id
; Val
: Node_Id
) is
3933 pragma Assert
(False
3934 or else NT
(N
).Nkind
= N_Contract
);
3935 Set_Node2
(N
, Val
); -- semantic field, no parent set
3936 end Set_Contract_Test_Cases
;
3938 procedure Set_Controlling_Argument
3939 (N
: Node_Id
; Val
: Node_Id
) is
3941 pragma Assert
(False
3942 or else NT
(N
).Nkind
= N_Function_Call
3943 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
3944 Set_Node1
(N
, Val
); -- semantic field, no parent set
3945 end Set_Controlling_Argument
;
3947 procedure Set_Conversion_OK
3948 (N
: Node_Id
; Val
: Boolean := True) is
3950 pragma Assert
(False
3951 or else NT
(N
).Nkind
= N_Type_Conversion
);
3952 Set_Flag14
(N
, Val
);
3953 end Set_Conversion_OK
;
3955 procedure Set_Convert_To_Return_False
3956 (N
: Node_Id
; Val
: Boolean := True) is
3958 pragma Assert
(False
3959 or else NT
(N
).Nkind
= N_Raise_Expression
);
3960 Set_Flag13
(N
, Val
);
3961 end Set_Convert_To_Return_False
;
3963 procedure Set_Corresponding_Aspect
3964 (N
: Node_Id
; Val
: Node_Id
) is
3966 pragma Assert
(False
3967 or else NT
(N
).Nkind
= N_Pragma
);
3969 end Set_Corresponding_Aspect
;
3971 procedure Set_Corresponding_Body
3972 (N
: Node_Id
; Val
: Node_Id
) is
3974 pragma Assert
(False
3975 or else NT
(N
).Nkind
= N_Entry_Declaration
3976 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3977 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3978 or else NT
(N
).Nkind
= N_Package_Body_Stub
3979 or else NT
(N
).Nkind
= N_Package_Declaration
3980 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3981 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3982 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3983 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3984 or else NT
(N
).Nkind
= N_Task_Body_Stub
3985 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3986 Set_Node5
(N
, Val
); -- semantic field, no parent set
3987 end Set_Corresponding_Body
;
3989 procedure Set_Corresponding_Formal_Spec
3990 (N
: Node_Id
; Val
: Node_Id
) is
3992 pragma Assert
(False
3993 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3994 Set_Node3
(N
, Val
); -- semantic field, no parent set
3995 end Set_Corresponding_Formal_Spec
;
3997 procedure Set_Corresponding_Generic_Association
3998 (N
: Node_Id
; Val
: Node_Id
) is
4000 pragma Assert
(False
4001 or else NT
(N
).Nkind
= N_Object_Declaration
4002 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
4003 Set_Node5
(N
, Val
); -- semantic field, no parent set
4004 end Set_Corresponding_Generic_Association
;
4006 procedure Set_Corresponding_Integer_Value
4007 (N
: Node_Id
; Val
: Uint
) is
4009 pragma Assert
(False
4010 or else NT
(N
).Nkind
= N_Real_Literal
);
4011 Set_Uint4
(N
, Val
); -- semantic field, no parent set
4012 end Set_Corresponding_Integer_Value
;
4014 procedure Set_Corresponding_Spec
4015 (N
: Node_Id
; Val
: Entity_Id
) is
4017 pragma Assert
(False
4018 or else NT
(N
).Nkind
= N_Expression_Function
4019 or else NT
(N
).Nkind
= N_Package_Body
4020 or else NT
(N
).Nkind
= N_Protected_Body
4021 or else NT
(N
).Nkind
= N_Subprogram_Body
4022 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
4023 or else NT
(N
).Nkind
= N_Task_Body
4024 or else NT
(N
).Nkind
= N_With_Clause
);
4025 Set_Node5
(N
, Val
); -- semantic field, no parent set
4026 end Set_Corresponding_Spec
;
4028 procedure Set_Corresponding_Spec_Of_Stub
4029 (N
: Node_Id
; Val
: Entity_Id
) is
4031 pragma Assert
(False
4032 or else NT
(N
).Nkind
= N_Package_Body_Stub
4033 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4034 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4035 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4036 Set_Node2
(N
, Val
); -- semantic field, no parent set
4037 end Set_Corresponding_Spec_Of_Stub
;
4039 procedure Set_Corresponding_Stub
4040 (N
: Node_Id
; Val
: Node_Id
) is
4042 pragma Assert
(False
4043 or else NT
(N
).Nkind
= N_Subunit
);
4045 end Set_Corresponding_Stub
;
4047 procedure Set_Dcheck_Function
4048 (N
: Node_Id
; Val
: Entity_Id
) is
4050 pragma Assert
(False
4051 or else NT
(N
).Nkind
= N_Variant
);
4052 Set_Node5
(N
, Val
); -- semantic field, no parent set
4053 end Set_Dcheck_Function
;
4055 procedure Set_Declarations
4056 (N
: Node_Id
; Val
: List_Id
) is
4058 pragma Assert
(False
4059 or else NT
(N
).Nkind
= N_Accept_Statement
4060 or else NT
(N
).Nkind
= N_Block_Statement
4061 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4062 or else NT
(N
).Nkind
= N_Entry_Body
4063 or else NT
(N
).Nkind
= N_Package_Body
4064 or else NT
(N
).Nkind
= N_Protected_Body
4065 or else NT
(N
).Nkind
= N_Subprogram_Body
4066 or else NT
(N
).Nkind
= N_Task_Body
);
4067 Set_List2_With_Parent
(N
, Val
);
4068 end Set_Declarations
;
4070 procedure Set_Default_Expression
4071 (N
: Node_Id
; Val
: Node_Id
) is
4073 pragma Assert
(False
4074 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4075 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4076 Set_Node5
(N
, Val
); -- semantic field, no parent set
4077 end Set_Default_Expression
;
4079 procedure Set_Default_Storage_Pool
4080 (N
: Node_Id
; Val
: Node_Id
) is
4082 pragma Assert
(False
4083 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4084 Set_Node3
(N
, Val
); -- semantic field, no parent set
4085 end Set_Default_Storage_Pool
;
4087 procedure Set_Default_Name
4088 (N
: Node_Id
; Val
: Node_Id
) is
4090 pragma Assert
(False
4091 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4092 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4093 Set_Node2_With_Parent
(N
, Val
);
4094 end Set_Default_Name
;
4096 procedure Set_Defining_Identifier
4097 (N
: Node_Id
; Val
: Entity_Id
) is
4099 pragma Assert
(False
4100 or else NT
(N
).Nkind
= N_Component_Declaration
4101 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4102 or else NT
(N
).Nkind
= N_Discriminant_Specification
4103 or else NT
(N
).Nkind
= N_Entry_Body
4104 or else NT
(N
).Nkind
= N_Entry_Declaration
4105 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4106 or else NT
(N
).Nkind
= N_Exception_Declaration
4107 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4108 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4109 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4110 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4111 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4112 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4113 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4114 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4115 or else NT
(N
).Nkind
= N_Iterator_Specification
4116 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4117 or else NT
(N
).Nkind
= N_Number_Declaration
4118 or else NT
(N
).Nkind
= N_Object_Declaration
4119 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4120 or else NT
(N
).Nkind
= N_Package_Body_Stub
4121 or else NT
(N
).Nkind
= N_Parameter_Specification
4122 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4123 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4124 or else NT
(N
).Nkind
= N_Protected_Body
4125 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4126 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4127 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4128 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4129 or else NT
(N
).Nkind
= N_Subtype_Declaration
4130 or else NT
(N
).Nkind
= N_Task_Body
4131 or else NT
(N
).Nkind
= N_Task_Body_Stub
4132 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4133 Set_Node1_With_Parent
(N
, Val
);
4134 end Set_Defining_Identifier
;
4136 procedure Set_Defining_Unit_Name
4137 (N
: Node_Id
; Val
: Node_Id
) is
4139 pragma Assert
(False
4140 or else NT
(N
).Nkind
= N_Function_Instantiation
4141 or else NT
(N
).Nkind
= N_Function_Specification
4142 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4143 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4144 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4145 or else NT
(N
).Nkind
= N_Package_Body
4146 or else NT
(N
).Nkind
= N_Package_Instantiation
4147 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4148 or else NT
(N
).Nkind
= N_Package_Specification
4149 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4150 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4151 Set_Node1_With_Parent
(N
, Val
);
4152 end Set_Defining_Unit_Name
;
4154 procedure Set_Delay_Alternative
4155 (N
: Node_Id
; Val
: Node_Id
) is
4157 pragma Assert
(False
4158 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4159 Set_Node4_With_Parent
(N
, Val
);
4160 end Set_Delay_Alternative
;
4162 procedure Set_Delay_Statement
4163 (N
: Node_Id
; Val
: Node_Id
) is
4165 pragma Assert
(False
4166 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4167 Set_Node2_With_Parent
(N
, Val
);
4168 end Set_Delay_Statement
;
4170 procedure Set_Delta_Expression
4171 (N
: Node_Id
; Val
: Node_Id
) is
4173 pragma Assert
(False
4174 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4175 or else NT
(N
).Nkind
= N_Delta_Constraint
4176 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4177 Set_Node3_With_Parent
(N
, Val
);
4178 end Set_Delta_Expression
;
4180 procedure Set_Digits_Expression
4181 (N
: Node_Id
; Val
: Node_Id
) is
4183 pragma Assert
(False
4184 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4185 or else NT
(N
).Nkind
= N_Digits_Constraint
4186 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4187 Set_Node2_With_Parent
(N
, Val
);
4188 end Set_Digits_Expression
;
4190 procedure Set_Discr_Check_Funcs_Built
4191 (N
: Node_Id
; Val
: Boolean := True) is
4193 pragma Assert
(False
4194 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4195 Set_Flag11
(N
, Val
);
4196 end Set_Discr_Check_Funcs_Built
;
4198 procedure Set_Discrete_Choices
4199 (N
: Node_Id
; Val
: List_Id
) is
4201 pragma Assert
(False
4202 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4203 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4204 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4205 or else NT
(N
).Nkind
= N_Variant
);
4206 Set_List4_With_Parent
(N
, Val
);
4207 end Set_Discrete_Choices
;
4209 procedure Set_Discrete_Range
4210 (N
: Node_Id
; Val
: Node_Id
) is
4212 pragma Assert
(False
4213 or else NT
(N
).Nkind
= N_Slice
);
4214 Set_Node4_With_Parent
(N
, Val
);
4215 end Set_Discrete_Range
;
4217 procedure Set_Discrete_Subtype_Definition
4218 (N
: Node_Id
; Val
: Node_Id
) is
4220 pragma Assert
(False
4221 or else NT
(N
).Nkind
= N_Entry_Declaration
4222 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4223 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4224 Set_Node4_With_Parent
(N
, Val
);
4225 end Set_Discrete_Subtype_Definition
;
4227 procedure Set_Discrete_Subtype_Definitions
4228 (N
: Node_Id
; Val
: List_Id
) is
4230 pragma Assert
(False
4231 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4232 Set_List2_With_Parent
(N
, Val
);
4233 end Set_Discrete_Subtype_Definitions
;
4235 procedure Set_Discriminant_Specifications
4236 (N
: Node_Id
; Val
: List_Id
) is
4238 pragma Assert
(False
4239 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4240 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4241 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4242 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4243 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4244 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4245 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4246 Set_List4_With_Parent
(N
, Val
);
4247 end Set_Discriminant_Specifications
;
4249 procedure Set_Discriminant_Type
4250 (N
: Node_Id
; Val
: Node_Id
) is
4252 pragma Assert
(False
4253 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4254 Set_Node5_With_Parent
(N
, Val
);
4255 end Set_Discriminant_Type
;
4257 procedure Set_Do_Accessibility_Check
4258 (N
: Node_Id
; Val
: Boolean := True) is
4260 pragma Assert
(False
4261 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4262 Set_Flag13
(N
, Val
);
4263 end Set_Do_Accessibility_Check
;
4265 procedure Set_Do_Discriminant_Check
4266 (N
: Node_Id
; Val
: Boolean := True) is
4268 pragma Assert
(False
4269 or else NT
(N
).Nkind
= N_Assignment_Statement
4270 or else NT
(N
).Nkind
= N_Selected_Component
4271 or else NT
(N
).Nkind
= N_Type_Conversion
);
4273 end Set_Do_Discriminant_Check
;
4275 procedure Set_Do_Division_Check
4276 (N
: Node_Id
; Val
: Boolean := True) is
4278 pragma Assert
(False
4279 or else NT
(N
).Nkind
= N_Op_Divide
4280 or else NT
(N
).Nkind
= N_Op_Mod
4281 or else NT
(N
).Nkind
= N_Op_Rem
);
4282 Set_Flag13
(N
, Val
);
4283 end Set_Do_Division_Check
;
4285 procedure Set_Do_Length_Check
4286 (N
: Node_Id
; Val
: Boolean := True) is
4288 pragma Assert
(False
4289 or else NT
(N
).Nkind
= N_Assignment_Statement
4290 or else NT
(N
).Nkind
= N_Op_And
4291 or else NT
(N
).Nkind
= N_Op_Or
4292 or else NT
(N
).Nkind
= N_Op_Xor
4293 or else NT
(N
).Nkind
= N_Type_Conversion
);
4295 end Set_Do_Length_Check
;
4297 procedure Set_Do_Overflow_Check
4298 (N
: Node_Id
; Val
: Boolean := True) is
4300 pragma Assert
(False
4301 or else NT
(N
).Nkind
in N_Op
4302 or else NT
(N
).Nkind
= N_Attribute_Reference
4303 or else NT
(N
).Nkind
= N_Case_Expression
4304 or else NT
(N
).Nkind
= N_If_Expression
4305 or else NT
(N
).Nkind
= N_Type_Conversion
);
4306 Set_Flag17
(N
, Val
);
4307 end Set_Do_Overflow_Check
;
4309 procedure Set_Do_Range_Check
4310 (N
: Node_Id
; Val
: Boolean := True) is
4312 pragma Assert
(False
4313 or else NT
(N
).Nkind
in N_Subexpr
);
4315 end Set_Do_Range_Check
;
4317 procedure Set_Do_Storage_Check
4318 (N
: Node_Id
; Val
: Boolean := True) is
4320 pragma Assert
(False
4321 or else NT
(N
).Nkind
= N_Allocator
4322 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4323 Set_Flag17
(N
, Val
);
4324 end Set_Do_Storage_Check
;
4326 procedure Set_Do_Tag_Check
4327 (N
: Node_Id
; Val
: Boolean := True) is
4329 pragma Assert
(False
4330 or else NT
(N
).Nkind
= N_Assignment_Statement
4331 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4332 or else NT
(N
).Nkind
= N_Function_Call
4333 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4334 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4335 or else NT
(N
).Nkind
= N_Type_Conversion
);
4336 Set_Flag13
(N
, Val
);
4337 end Set_Do_Tag_Check
;
4339 procedure Set_Elaborate_All_Desirable
4340 (N
: Node_Id
; Val
: Boolean := True) is
4342 pragma Assert
(False
4343 or else NT
(N
).Nkind
= N_With_Clause
);
4345 end Set_Elaborate_All_Desirable
;
4347 procedure Set_Elaborate_All_Present
4348 (N
: Node_Id
; Val
: Boolean := True) is
4350 pragma Assert
(False
4351 or else NT
(N
).Nkind
= N_With_Clause
);
4352 Set_Flag14
(N
, Val
);
4353 end Set_Elaborate_All_Present
;
4355 procedure Set_Elaborate_Desirable
4356 (N
: Node_Id
; Val
: Boolean := True) is
4358 pragma Assert
(False
4359 or else NT
(N
).Nkind
= N_With_Clause
);
4360 Set_Flag11
(N
, Val
);
4361 end Set_Elaborate_Desirable
;
4363 procedure Set_Elaborate_Present
4364 (N
: Node_Id
; Val
: Boolean := True) is
4366 pragma Assert
(False
4367 or else NT
(N
).Nkind
= N_With_Clause
);
4369 end Set_Elaborate_Present
;
4371 procedure Set_Else_Actions
4372 (N
: Node_Id
; Val
: List_Id
) is
4374 pragma Assert
(False
4375 or else NT
(N
).Nkind
= N_If_Expression
);
4376 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4377 end Set_Else_Actions
;
4379 procedure Set_Else_Statements
4380 (N
: Node_Id
; Val
: List_Id
) is
4382 pragma Assert
(False
4383 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4384 or else NT
(N
).Nkind
= N_If_Statement
4385 or else NT
(N
).Nkind
= N_Selective_Accept
);
4386 Set_List4_With_Parent
(N
, Val
);
4387 end Set_Else_Statements
;
4389 procedure Set_Elsif_Parts
4390 (N
: Node_Id
; Val
: List_Id
) is
4392 pragma Assert
(False
4393 or else NT
(N
).Nkind
= N_If_Statement
);
4394 Set_List3_With_Parent
(N
, Val
);
4395 end Set_Elsif_Parts
;
4397 procedure Set_Enclosing_Variant
4398 (N
: Node_Id
; Val
: Node_Id
) is
4400 pragma Assert
(False
4401 or else NT
(N
).Nkind
= N_Variant
);
4402 Set_Node2
(N
, Val
); -- semantic field, no parent set
4403 end Set_Enclosing_Variant
;
4405 procedure Set_End_Label
4406 (N
: Node_Id
; Val
: Node_Id
) is
4408 pragma Assert
(False
4409 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4410 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4411 or else NT
(N
).Nkind
= N_Loop_Statement
4412 or else NT
(N
).Nkind
= N_Package_Specification
4413 or else NT
(N
).Nkind
= N_Protected_Body
4414 or else NT
(N
).Nkind
= N_Protected_Definition
4415 or else NT
(N
).Nkind
= N_Record_Definition
4416 or else NT
(N
).Nkind
= N_Task_Definition
);
4417 Set_Node4_With_Parent
(N
, Val
);
4420 procedure Set_End_Span
4421 (N
: Node_Id
; Val
: Uint
) is
4423 pragma Assert
(False
4424 or else NT
(N
).Nkind
= N_Case_Statement
4425 or else NT
(N
).Nkind
= N_If_Statement
);
4429 procedure Set_Entity
4430 (N
: Node_Id
; Val
: Node_Id
) is
4432 pragma Assert
(False
4433 or else NT
(N
).Nkind
in N_Has_Entity
4434 or else NT
(N
).Nkind
= N_Aspect_Specification
4435 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4436 or else NT
(N
).Nkind
= N_Freeze_Entity
4437 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4438 Set_Node4
(N
, Val
); -- semantic field, no parent set
4441 procedure Set_Entry_Body_Formal_Part
4442 (N
: Node_Id
; Val
: Node_Id
) is
4444 pragma Assert
(False
4445 or else NT
(N
).Nkind
= N_Entry_Body
);
4446 Set_Node5_With_Parent
(N
, Val
);
4447 end Set_Entry_Body_Formal_Part
;
4449 procedure Set_Entry_Call_Alternative
4450 (N
: Node_Id
; Val
: Node_Id
) is
4452 pragma Assert
(False
4453 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4454 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4455 Set_Node1_With_Parent
(N
, Val
);
4456 end Set_Entry_Call_Alternative
;
4458 procedure Set_Entry_Call_Statement
4459 (N
: Node_Id
; Val
: Node_Id
) is
4461 pragma Assert
(False
4462 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4463 Set_Node1_With_Parent
(N
, Val
);
4464 end Set_Entry_Call_Statement
;
4466 procedure Set_Entry_Direct_Name
4467 (N
: Node_Id
; Val
: Node_Id
) is
4469 pragma Assert
(False
4470 or else NT
(N
).Nkind
= N_Accept_Statement
);
4471 Set_Node1_With_Parent
(N
, Val
);
4472 end Set_Entry_Direct_Name
;
4474 procedure Set_Entry_Index
4475 (N
: Node_Id
; Val
: Node_Id
) is
4477 pragma Assert
(False
4478 or else NT
(N
).Nkind
= N_Accept_Statement
);
4479 Set_Node5_With_Parent
(N
, Val
);
4480 end Set_Entry_Index
;
4482 procedure Set_Entry_Index_Specification
4483 (N
: Node_Id
; Val
: Node_Id
) is
4485 pragma Assert
(False
4486 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4487 Set_Node4_With_Parent
(N
, Val
);
4488 end Set_Entry_Index_Specification
;
4491 (N
: Node_Id
; Val
: Node_Id
) is
4493 pragma Assert
(False
4494 or else NT
(N
).Nkind
in N_Has_Etype
);
4495 Set_Node5
(N
, Val
); -- semantic field, no parent set
4498 procedure Set_Exception_Choices
4499 (N
: Node_Id
; Val
: List_Id
) is
4501 pragma Assert
(False
4502 or else NT
(N
).Nkind
= N_Exception_Handler
);
4503 Set_List4_With_Parent
(N
, Val
);
4504 end Set_Exception_Choices
;
4506 procedure Set_Exception_Handlers
4507 (N
: Node_Id
; Val
: List_Id
) is
4509 pragma Assert
(False
4510 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4511 Set_List5_With_Parent
(N
, Val
);
4512 end Set_Exception_Handlers
;
4514 procedure Set_Exception_Junk
4515 (N
: Node_Id
; Val
: Boolean := True) is
4517 pragma Assert
(False
4518 or else NT
(N
).Nkind
= N_Block_Statement
4519 or else NT
(N
).Nkind
= N_Goto_Statement
4520 or else NT
(N
).Nkind
= N_Label
4521 or else NT
(N
).Nkind
= N_Object_Declaration
4522 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4524 end Set_Exception_Junk
;
4526 procedure Set_Exception_Label
4527 (N
: Node_Id
; Val
: Node_Id
) is
4529 pragma Assert
(False
4530 or else NT
(N
).Nkind
= N_Exception_Handler
4531 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4532 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4533 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4534 Set_Node5
(N
, Val
); -- semantic field, no parent set
4535 end Set_Exception_Label
;
4537 procedure Set_Expansion_Delayed
4538 (N
: Node_Id
; Val
: Boolean := True) is
4540 pragma Assert
(False
4541 or else NT
(N
).Nkind
= N_Aggregate
4542 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4543 Set_Flag11
(N
, Val
);
4544 end Set_Expansion_Delayed
;
4546 procedure Set_Explicit_Actual_Parameter
4547 (N
: Node_Id
; Val
: Node_Id
) is
4549 pragma Assert
(False
4550 or else NT
(N
).Nkind
= N_Parameter_Association
);
4551 Set_Node3_With_Parent
(N
, Val
);
4552 end Set_Explicit_Actual_Parameter
;
4554 procedure Set_Explicit_Generic_Actual_Parameter
4555 (N
: Node_Id
; Val
: Node_Id
) is
4557 pragma Assert
(False
4558 or else NT
(N
).Nkind
= N_Generic_Association
);
4559 Set_Node1_With_Parent
(N
, Val
);
4560 end Set_Explicit_Generic_Actual_Parameter
;
4562 procedure Set_Expression
4563 (N
: Node_Id
; Val
: Node_Id
) is
4565 pragma Assert
(False
4566 or else NT
(N
).Nkind
= N_Allocator
4567 or else NT
(N
).Nkind
= N_Aspect_Specification
4568 or else NT
(N
).Nkind
= N_Assignment_Statement
4569 or else NT
(N
).Nkind
= N_At_Clause
4570 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4571 or else NT
(N
).Nkind
= N_Case_Expression
4572 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4573 or else NT
(N
).Nkind
= N_Case_Statement
4574 or else NT
(N
).Nkind
= N_Code_Statement
4575 or else NT
(N
).Nkind
= N_Component_Association
4576 or else NT
(N
).Nkind
= N_Component_Declaration
4577 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4578 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4579 or else NT
(N
).Nkind
= N_Delta_Aggregate
4580 or else NT
(N
).Nkind
= N_Discriminant_Association
4581 or else NT
(N
).Nkind
= N_Discriminant_Specification
4582 or else NT
(N
).Nkind
= N_Exception_Declaration
4583 or else NT
(N
).Nkind
= N_Expression_Function
4584 or else NT
(N
).Nkind
= N_Expression_With_Actions
4585 or else NT
(N
).Nkind
= N_Free_Statement
4586 or else NT
(N
).Nkind
= N_Iterated_Component_Association
4587 or else NT
(N
).Nkind
= N_Mod_Clause
4588 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4589 or else NT
(N
).Nkind
= N_Number_Declaration
4590 or else NT
(N
).Nkind
= N_Object_Declaration
4591 or else NT
(N
).Nkind
= N_Parameter_Specification
4592 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4593 or else NT
(N
).Nkind
= N_Qualified_Expression
4594 or else NT
(N
).Nkind
= N_Raise_Expression
4595 or else NT
(N
).Nkind
= N_Raise_Statement
4596 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4597 or else NT
(N
).Nkind
= N_Type_Conversion
4598 or else NT
(N
).Nkind
= N_Unchecked_Expression
4599 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4600 Set_Node3_With_Parent
(N
, Val
);
4603 procedure Set_Expression_Copy
4604 (N
: Node_Id
; Val
: Node_Id
) is
4606 pragma Assert
(False
4607 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4608 Set_Node2
(N
, Val
); -- semantic field, no parent set
4609 end Set_Expression_Copy
;
4611 procedure Set_Expressions
4612 (N
: Node_Id
; Val
: List_Id
) is
4614 pragma Assert
(False
4615 or else NT
(N
).Nkind
= N_Aggregate
4616 or else NT
(N
).Nkind
= N_Attribute_Reference
4617 or else NT
(N
).Nkind
= N_Extension_Aggregate
4618 or else NT
(N
).Nkind
= N_If_Expression
4619 or else NT
(N
).Nkind
= N_Indexed_Component
);
4620 Set_List1_With_Parent
(N
, Val
);
4621 end Set_Expressions
;
4623 procedure Set_First_Bit
4624 (N
: Node_Id
; Val
: Node_Id
) is
4626 pragma Assert
(False
4627 or else NT
(N
).Nkind
= N_Component_Clause
);
4628 Set_Node3_With_Parent
(N
, Val
);
4631 procedure Set_First_Inlined_Subprogram
4632 (N
: Node_Id
; Val
: Entity_Id
) is
4634 pragma Assert
(False
4635 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4636 Set_Node3
(N
, Val
); -- semantic field, no parent set
4637 end Set_First_Inlined_Subprogram
;
4639 procedure Set_First_Name
4640 (N
: Node_Id
; Val
: Boolean := True) is
4642 pragma Assert
(False
4643 or else NT
(N
).Nkind
= N_With_Clause
);
4647 procedure Set_First_Named_Actual
4648 (N
: Node_Id
; Val
: Node_Id
) is
4650 pragma Assert
(False
4651 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4652 or else NT
(N
).Nkind
= N_Function_Call
4653 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4654 Set_Node4
(N
, Val
); -- semantic field, no parent set
4655 end Set_First_Named_Actual
;
4657 procedure Set_First_Real_Statement
4658 (N
: Node_Id
; Val
: Node_Id
) is
4660 pragma Assert
(False
4661 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4662 Set_Node2
(N
, Val
); -- semantic field, no parent set
4663 end Set_First_Real_Statement
;
4665 procedure Set_First_Subtype_Link
4666 (N
: Node_Id
; Val
: Entity_Id
) is
4668 pragma Assert
(False
4669 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4670 Set_Node5
(N
, Val
); -- semantic field, no parent set
4671 end Set_First_Subtype_Link
;
4673 procedure Set_Float_Truncate
4674 (N
: Node_Id
; Val
: Boolean := True) is
4676 pragma Assert
(False
4677 or else NT
(N
).Nkind
= N_Type_Conversion
);
4678 Set_Flag11
(N
, Val
);
4679 end Set_Float_Truncate
;
4681 procedure Set_Formal_Type_Definition
4682 (N
: Node_Id
; Val
: Node_Id
) is
4684 pragma Assert
(False
4685 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4686 Set_Node3_With_Parent
(N
, Val
);
4687 end Set_Formal_Type_Definition
;
4689 procedure Set_Forwards_OK
4690 (N
: Node_Id
; Val
: Boolean := True) is
4692 pragma Assert
(False
4693 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4695 end Set_Forwards_OK
;
4697 procedure Set_From_Aspect_Specification
4698 (N
: Node_Id
; Val
: Boolean := True) is
4700 pragma Assert
(False
4701 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4702 or else NT
(N
).Nkind
= N_Pragma
);
4703 Set_Flag13
(N
, Val
);
4704 end Set_From_Aspect_Specification
;
4706 procedure Set_From_At_End
4707 (N
: Node_Id
; Val
: Boolean := True) is
4709 pragma Assert
(False
4710 or else NT
(N
).Nkind
= N_Raise_Statement
);
4712 end Set_From_At_End
;
4714 procedure Set_From_At_Mod
4715 (N
: Node_Id
; Val
: Boolean := True) is
4717 pragma Assert
(False
4718 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4720 end Set_From_At_Mod
;
4722 procedure Set_From_Conditional_Expression
4723 (N
: Node_Id
; Val
: Boolean := True) is
4725 pragma Assert
(False
4726 or else NT
(N
).Nkind
= N_Case_Statement
4727 or else NT
(N
).Nkind
= N_If_Statement
);
4729 end Set_From_Conditional_Expression
;
4731 procedure Set_From_Default
4732 (N
: Node_Id
; Val
: Boolean := True) is
4734 pragma Assert
(False
4735 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4737 end Set_From_Default
;
4739 procedure Set_Generalized_Indexing
4740 (N
: Node_Id
; Val
: Node_Id
) is
4742 pragma Assert
(False
4743 or else NT
(N
).Nkind
= N_Indexed_Component
);
4745 end Set_Generalized_Indexing
;
4747 procedure Set_Generic_Associations
4748 (N
: Node_Id
; Val
: List_Id
) is
4750 pragma Assert
(False
4751 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4752 or else NT
(N
).Nkind
= N_Function_Instantiation
4753 or else NT
(N
).Nkind
= N_Package_Instantiation
4754 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4755 Set_List3_With_Parent
(N
, Val
);
4756 end Set_Generic_Associations
;
4758 procedure Set_Generic_Formal_Declarations
4759 (N
: Node_Id
; Val
: List_Id
) is
4761 pragma Assert
(False
4762 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4763 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4764 Set_List2_With_Parent
(N
, Val
);
4765 end Set_Generic_Formal_Declarations
;
4767 procedure Set_Generic_Parent
4768 (N
: Node_Id
; Val
: Node_Id
) is
4770 pragma Assert
(False
4771 or else NT
(N
).Nkind
= N_Function_Specification
4772 or else NT
(N
).Nkind
= N_Package_Specification
4773 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4775 end Set_Generic_Parent
;
4777 procedure Set_Generic_Parent_Type
4778 (N
: Node_Id
; Val
: Node_Id
) is
4780 pragma Assert
(False
4781 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4783 end Set_Generic_Parent_Type
;
4785 procedure Set_Handled_Statement_Sequence
4786 (N
: Node_Id
; Val
: Node_Id
) is
4788 pragma Assert
(False
4789 or else NT
(N
).Nkind
= N_Accept_Statement
4790 or else NT
(N
).Nkind
= N_Block_Statement
4791 or else NT
(N
).Nkind
= N_Entry_Body
4792 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4793 or else NT
(N
).Nkind
= N_Package_Body
4794 or else NT
(N
).Nkind
= N_Subprogram_Body
4795 or else NT
(N
).Nkind
= N_Task_Body
);
4796 Set_Node4_With_Parent
(N
, Val
);
4797 end Set_Handled_Statement_Sequence
;
4799 procedure Set_Handler_List_Entry
4800 (N
: Node_Id
; Val
: Node_Id
) is
4802 pragma Assert
(False
4803 or else NT
(N
).Nkind
= N_Object_Declaration
);
4805 end Set_Handler_List_Entry
;
4807 procedure Set_Has_Created_Identifier
4808 (N
: Node_Id
; Val
: Boolean := True) is
4810 pragma Assert
(False
4811 or else NT
(N
).Nkind
= N_Block_Statement
4812 or else NT
(N
).Nkind
= N_Loop_Statement
);
4813 Set_Flag15
(N
, Val
);
4814 end Set_Has_Created_Identifier
;
4816 procedure Set_Has_Dereference_Action
4817 (N
: Node_Id
; Val
: Boolean := True) is
4819 pragma Assert
(False
4820 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4821 Set_Flag13
(N
, Val
);
4822 end Set_Has_Dereference_Action
;
4824 procedure Set_Has_Dynamic_Length_Check
4825 (N
: Node_Id
; Val
: Boolean := True) is
4827 pragma Assert
(False
4828 or else NT
(N
).Nkind
in N_Subexpr
);
4829 Set_Flag10
(N
, Val
);
4830 end Set_Has_Dynamic_Length_Check
;
4832 procedure Set_Has_Dynamic_Range_Check
4833 (N
: Node_Id
; Val
: Boolean := True) is
4835 pragma Assert
(False
4836 or else NT
(N
).Nkind
= N_Subtype_Declaration
4837 or else NT
(N
).Nkind
in N_Subexpr
);
4838 Set_Flag12
(N
, Val
);
4839 end Set_Has_Dynamic_Range_Check
;
4841 procedure Set_Has_Init_Expression
4842 (N
: Node_Id
; Val
: Boolean := True) is
4844 pragma Assert
(False
4845 or else NT
(N
).Nkind
= N_Object_Declaration
);
4846 Set_Flag14
(N
, Val
);
4847 end Set_Has_Init_Expression
;
4849 procedure Set_Has_Local_Raise
4850 (N
: Node_Id
; Val
: Boolean := True) is
4852 pragma Assert
(False
4853 or else NT
(N
).Nkind
= N_Exception_Handler
);
4855 end Set_Has_Local_Raise
;
4857 procedure Set_Has_No_Elaboration_Code
4858 (N
: Node_Id
; Val
: Boolean := True) is
4860 pragma Assert
(False
4861 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4862 Set_Flag17
(N
, Val
);
4863 end Set_Has_No_Elaboration_Code
;
4865 procedure Set_Has_Pragma_Suppress_All
4866 (N
: Node_Id
; Val
: Boolean := True) is
4868 pragma Assert
(False
4869 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4870 Set_Flag14
(N
, Val
);
4871 end Set_Has_Pragma_Suppress_All
;
4873 procedure Set_Has_Private_View
4874 (N
: Node_Id
; Val
: Boolean := True) is
4876 pragma Assert
(False
4877 or else NT
(N
).Nkind
in N_Op
4878 or else NT
(N
).Nkind
= N_Character_Literal
4879 or else NT
(N
).Nkind
= N_Expanded_Name
4880 or else NT
(N
).Nkind
= N_Identifier
4881 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4882 Set_Flag11
(N
, Val
);
4883 end Set_Has_Private_View
;
4885 procedure Set_Has_Relative_Deadline_Pragma
4886 (N
: Node_Id
; Val
: Boolean := True) is
4888 pragma Assert
(False
4889 or else NT
(N
).Nkind
= N_Subprogram_Body
4890 or else NT
(N
).Nkind
= N_Task_Definition
);
4892 end Set_Has_Relative_Deadline_Pragma
;
4894 procedure Set_Has_Self_Reference
4895 (N
: Node_Id
; Val
: Boolean := True) is
4897 pragma Assert
(False
4898 or else NT
(N
).Nkind
= N_Aggregate
4899 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4900 Set_Flag13
(N
, Val
);
4901 end Set_Has_Self_Reference
;
4903 procedure Set_Has_SP_Choice
4904 (N
: Node_Id
; Val
: Boolean := True) is
4906 pragma Assert
(False
4907 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4908 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4909 or else NT
(N
).Nkind
= N_Variant
);
4910 Set_Flag15
(N
, Val
);
4911 end Set_Has_SP_Choice
;
4913 procedure Set_Has_Storage_Size_Pragma
4914 (N
: Node_Id
; Val
: Boolean := True) is
4916 pragma Assert
(False
4917 or else NT
(N
).Nkind
= N_Task_Definition
);
4919 end Set_Has_Storage_Size_Pragma
;
4921 procedure Set_Has_Target_Names
4922 (N
: Node_Id
; Val
: Boolean := True) is
4924 pragma Assert
(False
4925 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4927 end Set_Has_Target_Names
;
4929 procedure Set_Has_Wide_Character
4930 (N
: Node_Id
; Val
: Boolean := True) is
4932 pragma Assert
(False
4933 or else NT
(N
).Nkind
= N_String_Literal
);
4934 Set_Flag11
(N
, Val
);
4935 end Set_Has_Wide_Character
;
4937 procedure Set_Has_Wide_Wide_Character
4938 (N
: Node_Id
; Val
: Boolean := True) is
4940 pragma Assert
(False
4941 or else NT
(N
).Nkind
= N_String_Literal
);
4942 Set_Flag13
(N
, Val
);
4943 end Set_Has_Wide_Wide_Character
;
4945 procedure Set_Header_Size_Added
4946 (N
: Node_Id
; Val
: Boolean := True) is
4948 pragma Assert
(False
4949 or else NT
(N
).Nkind
= N_Attribute_Reference
);
4950 Set_Flag11
(N
, Val
);
4951 end Set_Header_Size_Added
;
4953 procedure Set_Hidden_By_Use_Clause
4954 (N
: Node_Id
; Val
: Elist_Id
) is
4956 pragma Assert
(False
4957 or else NT
(N
).Nkind
= N_Use_Package_Clause
4958 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
4959 Set_Elist4
(N
, Val
);
4960 end Set_Hidden_By_Use_Clause
;
4962 procedure Set_High_Bound
4963 (N
: Node_Id
; Val
: Node_Id
) is
4965 pragma Assert
(False
4966 or else NT
(N
).Nkind
= N_Range
4967 or else NT
(N
).Nkind
= N_Real_Range_Specification
4968 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
4969 Set_Node2_With_Parent
(N
, Val
);
4972 procedure Set_Identifier
4973 (N
: Node_Id
; Val
: Node_Id
) is
4975 pragma Assert
(False
4976 or else NT
(N
).Nkind
= N_Aspect_Specification
4977 or else NT
(N
).Nkind
= N_At_Clause
4978 or else NT
(N
).Nkind
= N_Block_Statement
4979 or else NT
(N
).Nkind
= N_Designator
4980 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
4981 or else NT
(N
).Nkind
= N_Label
4982 or else NT
(N
).Nkind
= N_Loop_Statement
4983 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
4984 Set_Node1_With_Parent
(N
, Val
);
4987 procedure Set_Implicit_With
4988 (N
: Node_Id
; Val
: Boolean := True) is
4990 pragma Assert
(False
4991 or else NT
(N
).Nkind
= N_With_Clause
);
4992 Set_Flag16
(N
, Val
);
4993 end Set_Implicit_With
;
4995 procedure Set_Implicit_With_From_Instantiation
4996 (N
: Node_Id
; Val
: Boolean := True) is
4998 pragma Assert
(False
4999 or else NT
(N
).Nkind
= N_With_Clause
);
5000 Set_Flag12
(N
, Val
);
5001 end Set_Implicit_With_From_Instantiation
;
5003 procedure Set_Interface_List
5004 (N
: Node_Id
; Val
: List_Id
) is
5006 pragma Assert
(False
5007 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5008 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5009 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5010 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5011 or else NT
(N
).Nkind
= N_Record_Definition
5012 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
5013 or else NT
(N
).Nkind
= N_Single_Task_Declaration
5014 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
5015 Set_List2_With_Parent
(N
, Val
);
5016 end Set_Interface_List
;
5018 procedure Set_Interface_Present
5019 (N
: Node_Id
; Val
: Boolean := True) is
5021 pragma Assert
(False
5022 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5023 or else NT
(N
).Nkind
= N_Record_Definition
);
5024 Set_Flag16
(N
, Val
);
5025 end Set_Interface_Present
;
5027 procedure Set_Import_Interface_Present
5028 (N
: Node_Id
; Val
: Boolean := True) is
5030 pragma Assert
(False
5031 or else NT
(N
).Nkind
= N_Pragma
);
5032 Set_Flag16
(N
, Val
);
5033 end Set_Import_Interface_Present
;
5035 procedure Set_In_Present
5036 (N
: Node_Id
; Val
: Boolean := True) is
5038 pragma Assert
(False
5039 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5040 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5041 Set_Flag15
(N
, Val
);
5044 procedure Set_Includes_Infinities
5045 (N
: Node_Id
; Val
: Boolean := True) is
5047 pragma Assert
(False
5048 or else NT
(N
).Nkind
= N_Range
);
5049 Set_Flag11
(N
, Val
);
5050 end Set_Includes_Infinities
;
5052 procedure Set_Incomplete_View
5053 (N
: Node_Id
; Val
: Node_Id
) is
5055 pragma Assert
(False
5056 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5057 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5058 end Set_Incomplete_View
;
5060 procedure Set_Inherited_Discriminant
5061 (N
: Node_Id
; Val
: Boolean := True) is
5063 pragma Assert
(False
5064 or else NT
(N
).Nkind
= N_Component_Association
);
5065 Set_Flag13
(N
, Val
);
5066 end Set_Inherited_Discriminant
;
5068 procedure Set_Instance_Spec
5069 (N
: Node_Id
; Val
: Node_Id
) is
5071 pragma Assert
(False
5072 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5073 or else NT
(N
).Nkind
= N_Function_Instantiation
5074 or else NT
(N
).Nkind
= N_Package_Instantiation
5075 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5076 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5077 end Set_Instance_Spec
;
5079 procedure Set_Intval
5080 (N
: Node_Id
; Val
: Uint
) is
5082 pragma Assert
(False
5083 or else NT
(N
).Nkind
= N_Integer_Literal
);
5087 procedure Set_Is_Abort_Block
5088 (N
: Node_Id
; Val
: Boolean := True) is
5090 pragma Assert
(False
5091 or else NT
(N
).Nkind
= N_Block_Statement
);
5093 end Set_Is_Abort_Block
;
5095 procedure Set_Is_Accessibility_Actual
5096 (N
: Node_Id
; Val
: Boolean := True) is
5098 pragma Assert
(False
5099 or else NT
(N
).Nkind
= N_Parameter_Association
);
5100 Set_Flag13
(N
, Val
);
5101 end Set_Is_Accessibility_Actual
;
5103 procedure Set_Is_Analyzed_Pragma
5104 (N
: Node_Id
; Val
: Boolean := True) is
5106 pragma Assert
(False
5107 or else NT
(N
).Nkind
= N_Pragma
);
5109 end Set_Is_Analyzed_Pragma
;
5111 procedure Set_Is_Asynchronous_Call_Block
5112 (N
: Node_Id
; Val
: Boolean := True) is
5114 pragma Assert
(False
5115 or else NT
(N
).Nkind
= N_Block_Statement
);
5117 end Set_Is_Asynchronous_Call_Block
;
5119 procedure Set_Is_Boolean_Aspect
5120 (N
: Node_Id
; Val
: Boolean := True) is
5122 pragma Assert
(False
5123 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5124 Set_Flag16
(N
, Val
);
5125 end Set_Is_Boolean_Aspect
;
5127 procedure Set_Is_Checked
5128 (N
: Node_Id
; Val
: Boolean := True) is
5130 pragma Assert
(False
5131 or else NT
(N
).Nkind
= N_Aspect_Specification
5132 or else NT
(N
).Nkind
= N_Pragma
);
5133 Set_Flag11
(N
, Val
);
5136 procedure Set_Is_Checked_Ghost_Pragma
5137 (N
: Node_Id
; Val
: Boolean := True) is
5139 pragma Assert
(False
5140 or else NT
(N
).Nkind
= N_Pragma
);
5142 end Set_Is_Checked_Ghost_Pragma
;
5144 procedure Set_Is_Component_Left_Opnd
5145 (N
: Node_Id
; Val
: Boolean := True) is
5147 pragma Assert
(False
5148 or else NT
(N
).Nkind
= N_Op_Concat
);
5149 Set_Flag13
(N
, Val
);
5150 end Set_Is_Component_Left_Opnd
;
5152 procedure Set_Is_Component_Right_Opnd
5153 (N
: Node_Id
; Val
: Boolean := True) is
5155 pragma Assert
(False
5156 or else NT
(N
).Nkind
= N_Op_Concat
);
5157 Set_Flag14
(N
, Val
);
5158 end Set_Is_Component_Right_Opnd
;
5160 procedure Set_Is_Controlling_Actual
5161 (N
: Node_Id
; Val
: Boolean := True) is
5163 pragma Assert
(False
5164 or else NT
(N
).Nkind
in N_Subexpr
);
5165 Set_Flag16
(N
, Val
);
5166 end Set_Is_Controlling_Actual
;
5168 procedure Set_Is_Delayed_Aspect
5169 (N
: Node_Id
; Val
: Boolean := True) is
5171 pragma Assert
(False
5172 or else NT
(N
).Nkind
= N_Aspect_Specification
5173 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5174 or else NT
(N
).Nkind
= N_Pragma
);
5175 Set_Flag14
(N
, Val
);
5176 end Set_Is_Delayed_Aspect
;
5178 procedure Set_Is_Disabled
5179 (N
: Node_Id
; Val
: Boolean := True) is
5181 pragma Assert
(False
5182 or else NT
(N
).Nkind
= N_Aspect_Specification
5183 or else NT
(N
).Nkind
= N_Pragma
);
5184 Set_Flag15
(N
, Val
);
5185 end Set_Is_Disabled
;
5187 procedure Set_Is_Dynamic_Coextension
5188 (N
: Node_Id
; Val
: Boolean := True) is
5190 pragma Assert
(False
5191 or else NT
(N
).Nkind
= N_Allocator
);
5192 Set_Flag18
(N
, Val
);
5193 end Set_Is_Dynamic_Coextension
;
5195 procedure Set_Is_Elsif
5196 (N
: Node_Id
; Val
: Boolean := True) is
5198 pragma Assert
(False
5199 or else NT
(N
).Nkind
= N_If_Expression
);
5200 Set_Flag13
(N
, Val
);
5203 procedure Set_Is_Entry_Barrier_Function
5204 (N
: Node_Id
; Val
: Boolean := True) is
5206 pragma Assert
(False
5207 or else NT
(N
).Nkind
= N_Subprogram_Body
5208 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5210 end Set_Is_Entry_Barrier_Function
;
5212 procedure Set_Is_Expanded_Build_In_Place_Call
5213 (N
: Node_Id
; Val
: Boolean := True) is
5215 pragma Assert
(False
5216 or else NT
(N
).Nkind
= N_Function_Call
);
5217 Set_Flag11
(N
, Val
);
5218 end Set_Is_Expanded_Build_In_Place_Call
;
5220 procedure Set_Is_Expanded_Contract
5221 (N
: Node_Id
; Val
: Boolean := True) is
5223 pragma Assert
(False
5224 or else NT
(N
).Nkind
= N_Contract
);
5226 end Set_Is_Expanded_Contract
;
5228 procedure Set_Is_Finalization_Wrapper
5229 (N
: Node_Id
; Val
: Boolean := True) is
5231 pragma Assert
(False
5232 or else NT
(N
).Nkind
= N_Block_Statement
);
5234 end Set_Is_Finalization_Wrapper
;
5236 procedure Set_Is_Folded_In_Parser
5237 (N
: Node_Id
; Val
: Boolean := True) is
5239 pragma Assert
(False
5240 or else NT
(N
).Nkind
= N_String_Literal
);
5242 end Set_Is_Folded_In_Parser
;
5244 procedure Set_Is_Generic_Contract_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_Generic_Contract_Pragma
;
5252 procedure Set_Is_Ignored
5253 (N
: Node_Id
; Val
: Boolean := True) is
5255 pragma Assert
(False
5256 or else NT
(N
).Nkind
= N_Aspect_Specification
5257 or else NT
(N
).Nkind
= N_Pragma
);
5261 procedure Set_Is_Ignored_Ghost_Pragma
5262 (N
: Node_Id
; Val
: Boolean := True) is
5264 pragma Assert
(False
5265 or else NT
(N
).Nkind
= N_Pragma
);
5267 end Set_Is_Ignored_Ghost_Pragma
;
5269 procedure Set_Is_In_Discriminant_Check
5270 (N
: Node_Id
; Val
: Boolean := True) is
5272 pragma Assert
(False
5273 or else NT
(N
).Nkind
= N_Selected_Component
);
5274 Set_Flag11
(N
, Val
);
5275 end Set_Is_In_Discriminant_Check
;
5277 procedure Set_Is_Inherited_Pragma
5278 (N
: Node_Id
; Val
: Boolean := True) is
5280 pragma Assert
(False
5281 or else NT
(N
).Nkind
= N_Pragma
);
5283 end Set_Is_Inherited_Pragma
;
5285 procedure Set_Is_Machine_Number
5286 (N
: Node_Id
; Val
: Boolean := True) is
5288 pragma Assert
(False
5289 or else NT
(N
).Nkind
= N_Real_Literal
);
5290 Set_Flag11
(N
, Val
);
5291 end Set_Is_Machine_Number
;
5293 procedure Set_Is_Null_Loop
5294 (N
: Node_Id
; Val
: Boolean := True) is
5296 pragma Assert
(False
5297 or else NT
(N
).Nkind
= N_Loop_Statement
);
5298 Set_Flag16
(N
, Val
);
5299 end Set_Is_Null_Loop
;
5301 procedure Set_Is_Overloaded
5302 (N
: Node_Id
; Val
: Boolean := True) is
5304 pragma Assert
(False
5305 or else NT
(N
).Nkind
in N_Subexpr
);
5307 end Set_Is_Overloaded
;
5309 procedure Set_Is_Power_Of_2_For_Shift
5310 (N
: Node_Id
; Val
: Boolean := True) is
5312 pragma Assert
(False
5313 or else NT
(N
).Nkind
= N_Op_Expon
);
5314 Set_Flag13
(N
, Val
);
5315 end Set_Is_Power_Of_2_For_Shift
;
5317 procedure Set_Is_Prefixed_Call
5318 (N
: Node_Id
; Val
: Boolean := True) is
5320 pragma Assert
(False
5321 or else NT
(N
).Nkind
= N_Selected_Component
);
5322 Set_Flag17
(N
, Val
);
5323 end Set_Is_Prefixed_Call
;
5325 procedure Set_Is_Protected_Subprogram_Body
5326 (N
: Node_Id
; Val
: Boolean := True) is
5328 pragma Assert
(False
5329 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5331 end Set_Is_Protected_Subprogram_Body
;
5333 procedure Set_Is_Qualified_Universal_Literal
5334 (N
: Node_Id
; Val
: Boolean := True) is
5336 pragma Assert
(False
5337 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5339 end Set_Is_Qualified_Universal_Literal
;
5341 procedure Set_Is_Static_Coextension
5342 (N
: Node_Id
; Val
: Boolean := True) is
5344 pragma Assert
(False
5345 or else NT
(N
).Nkind
= N_Allocator
);
5346 Set_Flag14
(N
, Val
);
5347 end Set_Is_Static_Coextension
;
5349 procedure Set_Is_Static_Expression
5350 (N
: Node_Id
; Val
: Boolean := True) is
5352 pragma Assert
(False
5353 or else NT
(N
).Nkind
in N_Subexpr
);
5355 end Set_Is_Static_Expression
;
5357 procedure Set_Is_Subprogram_Descriptor
5358 (N
: Node_Id
; Val
: Boolean := True) is
5360 pragma Assert
(False
5361 or else NT
(N
).Nkind
= N_Object_Declaration
);
5362 Set_Flag16
(N
, Val
);
5363 end Set_Is_Subprogram_Descriptor
;
5365 procedure Set_Is_Task_Allocation_Block
5366 (N
: Node_Id
; Val
: Boolean := True) is
5368 pragma Assert
(False
5369 or else NT
(N
).Nkind
= N_Block_Statement
);
5371 end Set_Is_Task_Allocation_Block
;
5373 procedure Set_Is_Task_Body_Procedure
5374 (N
: Node_Id
; Val
: Boolean := True) is
5376 pragma Assert
(False
5377 or else NT
(N
).Nkind
= N_Subprogram_Body
5378 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5380 end Set_Is_Task_Body_Procedure
;
5382 procedure Set_Is_Task_Master
5383 (N
: Node_Id
; Val
: Boolean := True) is
5385 pragma Assert
(False
5386 or else NT
(N
).Nkind
= N_Block_Statement
5387 or else NT
(N
).Nkind
= N_Subprogram_Body
5388 or else NT
(N
).Nkind
= N_Task_Body
);
5390 end Set_Is_Task_Master
;
5392 procedure Set_Iteration_Scheme
5393 (N
: Node_Id
; Val
: Node_Id
) is
5395 pragma Assert
(False
5396 or else NT
(N
).Nkind
= N_Loop_Statement
);
5397 Set_Node2_With_Parent
(N
, Val
);
5398 end Set_Iteration_Scheme
;
5400 procedure Set_Iterator_Specification
5401 (N
: Node_Id
; Val
: Node_Id
) is
5403 pragma Assert
(False
5404 or else NT
(N
).Nkind
= N_Iteration_Scheme
5405 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5406 Set_Node2_With_Parent
(N
, Val
);
5407 end Set_Iterator_Specification
;
5410 (N
: Node_Id
; Val
: Entity_Id
) is
5412 pragma Assert
(False
5413 or else NT
(N
).Nkind
= N_Itype_Reference
);
5414 Set_Node1
(N
, Val
); -- no parent, semantic field
5417 procedure Set_Kill_Range_Check
5418 (N
: Node_Id
; Val
: Boolean := True) is
5420 pragma Assert
(False
5421 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5422 Set_Flag11
(N
, Val
);
5423 end Set_Kill_Range_Check
;
5425 procedure Set_Label_Construct
5426 (N
: Node_Id
; Val
: Node_Id
) is
5428 pragma Assert
(False
5429 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5430 Set_Node2
(N
, Val
); -- semantic field, no parent set
5431 end Set_Label_Construct
;
5433 procedure Set_Last_Bit
5434 (N
: Node_Id
; Val
: Node_Id
) is
5436 pragma Assert
(False
5437 or else NT
(N
).Nkind
= N_Component_Clause
);
5438 Set_Node4_With_Parent
(N
, Val
);
5441 procedure Set_Last_Name
5442 (N
: Node_Id
; Val
: Boolean := True) is
5444 pragma Assert
(False
5445 or else NT
(N
).Nkind
= N_With_Clause
);
5449 procedure Set_Left_Opnd
5450 (N
: Node_Id
; Val
: Node_Id
) is
5452 pragma Assert
(False
5453 or else NT
(N
).Nkind
= N_And_Then
5454 or else NT
(N
).Nkind
= N_In
5455 or else NT
(N
).Nkind
= N_Not_In
5456 or else NT
(N
).Nkind
= N_Or_Else
5457 or else NT
(N
).Nkind
in N_Binary_Op
);
5458 Set_Node2_With_Parent
(N
, Val
);
5461 procedure Set_Library_Unit
5462 (N
: Node_Id
; Val
: Node_Id
) is
5464 pragma Assert
(False
5465 or else NT
(N
).Nkind
= N_Compilation_Unit
5466 or else NT
(N
).Nkind
= N_Package_Body_Stub
5467 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5468 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5469 or else NT
(N
).Nkind
= N_Task_Body_Stub
5470 or else NT
(N
).Nkind
= N_With_Clause
);
5471 Set_Node4
(N
, Val
); -- semantic field, no parent set
5472 end Set_Library_Unit
;
5474 procedure Set_Limited_View_Installed
5475 (N
: Node_Id
; Val
: Boolean := True) is
5477 pragma Assert
(False
5478 or else NT
(N
).Nkind
= N_Package_Specification
5479 or else NT
(N
).Nkind
= N_With_Clause
);
5480 Set_Flag18
(N
, Val
);
5481 end Set_Limited_View_Installed
;
5483 procedure Set_Limited_Present
5484 (N
: Node_Id
; Val
: Boolean := True) is
5486 pragma Assert
(False
5487 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5488 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5489 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5490 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5491 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5492 or else NT
(N
).Nkind
= N_Record_Definition
5493 or else NT
(N
).Nkind
= N_With_Clause
);
5494 Set_Flag17
(N
, Val
);
5495 end Set_Limited_Present
;
5497 procedure Set_Literals
5498 (N
: Node_Id
; Val
: List_Id
) is
5500 pragma Assert
(False
5501 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5502 Set_List1_With_Parent
(N
, Val
);
5505 procedure Set_Local_Raise_Not_OK
5506 (N
: Node_Id
; Val
: Boolean := True) is
5508 pragma Assert
(False
5509 or else NT
(N
).Nkind
= N_Exception_Handler
);
5511 end Set_Local_Raise_Not_OK
;
5513 procedure Set_Local_Raise_Statements
5514 (N
: Node_Id
; Val
: Elist_Id
) is
5516 pragma Assert
(False
5517 or else NT
(N
).Nkind
= N_Exception_Handler
);
5518 Set_Elist1
(N
, Val
);
5519 end Set_Local_Raise_Statements
;
5521 procedure Set_Loop_Actions
5522 (N
: Node_Id
; Val
: List_Id
) is
5524 pragma Assert
(False
5525 or else NT
(N
).Nkind
= N_Component_Association
5526 or else NT
(N
).Nkind
= N_Iterated_Component_Association
);
5527 Set_List2
(N
, Val
); -- semantic field, no parent set
5528 end Set_Loop_Actions
;
5530 procedure Set_Loop_Parameter_Specification
5531 (N
: Node_Id
; Val
: Node_Id
) is
5533 pragma Assert
(False
5534 or else NT
(N
).Nkind
= N_Iteration_Scheme
5535 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5536 Set_Node4_With_Parent
(N
, Val
);
5537 end Set_Loop_Parameter_Specification
;
5539 procedure Set_Low_Bound
5540 (N
: Node_Id
; Val
: Node_Id
) is
5542 pragma Assert
(False
5543 or else NT
(N
).Nkind
= N_Range
5544 or else NT
(N
).Nkind
= N_Real_Range_Specification
5545 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5546 Set_Node1_With_Parent
(N
, Val
);
5549 procedure Set_Mod_Clause
5550 (N
: Node_Id
; Val
: Node_Id
) is
5552 pragma Assert
(False
5553 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5554 Set_Node2_With_Parent
(N
, Val
);
5557 procedure Set_More_Ids
5558 (N
: Node_Id
; Val
: Boolean := True) is
5560 pragma Assert
(False
5561 or else NT
(N
).Nkind
= N_Component_Declaration
5562 or else NT
(N
).Nkind
= N_Discriminant_Specification
5563 or else NT
(N
).Nkind
= N_Exception_Declaration
5564 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5565 or else NT
(N
).Nkind
= N_Number_Declaration
5566 or else NT
(N
).Nkind
= N_Object_Declaration
5567 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5571 procedure Set_Must_Be_Byte_Aligned
5572 (N
: Node_Id
; Val
: Boolean := True) is
5574 pragma Assert
(False
5575 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5576 Set_Flag14
(N
, Val
);
5577 end Set_Must_Be_Byte_Aligned
;
5579 procedure Set_Must_Not_Freeze
5580 (N
: Node_Id
; Val
: Boolean := True) is
5582 pragma Assert
(False
5583 or else NT
(N
).Nkind
= N_Subtype_Indication
5584 or else NT
(N
).Nkind
in N_Subexpr
);
5586 end Set_Must_Not_Freeze
;
5588 procedure Set_Must_Not_Override
5589 (N
: Node_Id
; Val
: Boolean := True) is
5591 pragma Assert
(False
5592 or else NT
(N
).Nkind
= N_Entry_Declaration
5593 or else NT
(N
).Nkind
= N_Function_Instantiation
5594 or else NT
(N
).Nkind
= N_Function_Specification
5595 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5596 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5597 Set_Flag15
(N
, Val
);
5598 end Set_Must_Not_Override
;
5600 procedure Set_Must_Override
5601 (N
: Node_Id
; Val
: Boolean := True) is
5603 pragma Assert
(False
5604 or else NT
(N
).Nkind
= N_Entry_Declaration
5605 or else NT
(N
).Nkind
= N_Function_Instantiation
5606 or else NT
(N
).Nkind
= N_Function_Specification
5607 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5608 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5609 Set_Flag14
(N
, Val
);
5610 end Set_Must_Override
;
5613 (N
: Node_Id
; Val
: Node_Id
) is
5615 pragma Assert
(False
5616 or else NT
(N
).Nkind
= N_Assignment_Statement
5617 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5618 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5619 or else NT
(N
).Nkind
= N_Designator
5620 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5621 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5622 or else NT
(N
).Nkind
= N_Exit_Statement
5623 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5624 or else NT
(N
).Nkind
= N_Function_Call
5625 or else NT
(N
).Nkind
= N_Function_Instantiation
5626 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5627 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5628 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5629 or else NT
(N
).Nkind
= N_Goto_Statement
5630 or else NT
(N
).Nkind
= N_Iterator_Specification
5631 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5632 or else NT
(N
).Nkind
= N_Package_Instantiation
5633 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5634 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5635 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5636 or else NT
(N
).Nkind
= N_Raise_Expression
5637 or else NT
(N
).Nkind
= N_Raise_Statement
5638 or else NT
(N
).Nkind
= N_Requeue_Statement
5639 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5640 or else NT
(N
).Nkind
= N_Subunit
5641 or else NT
(N
).Nkind
= N_Variant_Part
5642 or else NT
(N
).Nkind
= N_With_Clause
);
5643 Set_Node2_With_Parent
(N
, Val
);
5647 (N
: Node_Id
; Val
: List_Id
) is
5649 pragma Assert
(False
5650 or else NT
(N
).Nkind
= N_Abort_Statement
5651 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
5652 Set_List2_With_Parent
(N
, Val
);
5655 procedure Set_Next_Entity
5656 (N
: Node_Id
; Val
: Node_Id
) is
5658 pragma Assert
(False
5659 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5660 or else NT
(N
).Nkind
= N_Defining_Identifier
5661 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5662 Set_Node2
(N
, Val
); -- semantic field, no parent set
5663 end Set_Next_Entity
;
5665 procedure Set_Next_Exit_Statement
5666 (N
: Node_Id
; Val
: Node_Id
) is
5668 pragma Assert
(False
5669 or else NT
(N
).Nkind
= N_Exit_Statement
);
5670 Set_Node3
(N
, Val
); -- semantic field, no parent set
5671 end Set_Next_Exit_Statement
;
5673 procedure Set_Next_Implicit_With
5674 (N
: Node_Id
; Val
: Node_Id
) is
5676 pragma Assert
(False
5677 or else NT
(N
).Nkind
= N_With_Clause
);
5678 Set_Node3
(N
, Val
); -- semantic field, no parent set
5679 end Set_Next_Implicit_With
;
5681 procedure Set_Next_Named_Actual
5682 (N
: Node_Id
; Val
: Node_Id
) is
5684 pragma Assert
(False
5685 or else NT
(N
).Nkind
= N_Parameter_Association
);
5686 Set_Node4
(N
, Val
); -- semantic field, no parent set
5687 end Set_Next_Named_Actual
;
5689 procedure Set_Next_Pragma
5690 (N
: Node_Id
; Val
: Node_Id
) is
5692 pragma Assert
(False
5693 or else NT
(N
).Nkind
= N_Pragma
);
5694 Set_Node1
(N
, Val
); -- semantic field, no parent set
5695 end Set_Next_Pragma
;
5697 procedure Set_Next_Rep_Item
5698 (N
: Node_Id
; Val
: Node_Id
) is
5700 pragma Assert
(False
5701 or else NT
(N
).Nkind
= N_Aspect_Specification
5702 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5703 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5704 or else NT
(N
).Nkind
= N_Pragma
5705 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5706 Set_Node5
(N
, Val
); -- semantic field, no parent set
5707 end Set_Next_Rep_Item
;
5709 procedure Set_Next_Use_Clause
5710 (N
: Node_Id
; Val
: Node_Id
) is
5712 pragma Assert
(False
5713 or else NT
(N
).Nkind
= N_Use_Package_Clause
5714 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5715 Set_Node3
(N
, Val
); -- semantic field, no parent set
5716 end Set_Next_Use_Clause
;
5718 procedure Set_No_Ctrl_Actions
5719 (N
: Node_Id
; Val
: Boolean := True) is
5721 pragma Assert
(False
5722 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5724 end Set_No_Ctrl_Actions
;
5726 procedure Set_No_Elaboration_Check
5727 (N
: Node_Id
; Val
: Boolean := True) is
5729 pragma Assert
(False
5730 or else NT
(N
).Nkind
= N_Function_Call
5731 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5732 Set_Flag14
(N
, Val
);
5733 end Set_No_Elaboration_Check
;
5735 procedure Set_No_Entities_Ref_In_Spec
5736 (N
: Node_Id
; Val
: Boolean := True) is
5738 pragma Assert
(False
5739 or else NT
(N
).Nkind
= N_With_Clause
);
5741 end Set_No_Entities_Ref_In_Spec
;
5743 procedure Set_No_Initialization
5744 (N
: Node_Id
; Val
: Boolean := True) is
5746 pragma Assert
(False
5747 or else NT
(N
).Nkind
= N_Allocator
5748 or else NT
(N
).Nkind
= N_Object_Declaration
);
5749 Set_Flag13
(N
, Val
);
5750 end Set_No_Initialization
;
5752 procedure Set_No_Minimize_Eliminate
5753 (N
: Node_Id
; Val
: Boolean := True) is
5755 pragma Assert
(False
5756 or else NT
(N
).Nkind
= N_In
5757 or else NT
(N
).Nkind
= N_Not_In
);
5758 Set_Flag17
(N
, Val
);
5759 end Set_No_Minimize_Eliminate
;
5761 procedure Set_No_Side_Effect_Removal
5762 (N
: Node_Id
; Val
: Boolean := True) is
5764 pragma Assert
(False
5765 or else NT
(N
).Nkind
= N_Function_Call
);
5767 end Set_No_Side_Effect_Removal
;
5769 procedure Set_No_Truncation
5770 (N
: Node_Id
; Val
: Boolean := True) is
5772 pragma Assert
(False
5773 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5774 Set_Flag17
(N
, Val
);
5775 end Set_No_Truncation
;
5777 procedure Set_Non_Aliased_Prefix
5778 (N
: Node_Id
; Val
: Boolean := True) is
5780 pragma Assert
(False
5781 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5782 Set_Flag18
(N
, Val
);
5783 end Set_Non_Aliased_Prefix
;
5785 procedure Set_Null_Excluding_Subtype
5786 (N
: Node_Id
; Val
: Boolean := True) is
5788 pragma Assert
(False
5789 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
5790 Set_Flag16
(N
, Val
);
5791 end Set_Null_Excluding_Subtype
;
5793 procedure Set_Null_Exclusion_Present
5794 (N
: Node_Id
; Val
: Boolean := True) is
5796 pragma Assert
(False
5797 or else NT
(N
).Nkind
= N_Access_Definition
5798 or else NT
(N
).Nkind
= N_Access_Function_Definition
5799 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5800 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5801 or else NT
(N
).Nkind
= N_Allocator
5802 or else NT
(N
).Nkind
= N_Component_Definition
5803 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5804 or else NT
(N
).Nkind
= N_Discriminant_Specification
5805 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5806 or else NT
(N
).Nkind
= N_Function_Specification
5807 or else NT
(N
).Nkind
= N_Object_Declaration
5808 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5809 or else NT
(N
).Nkind
= N_Parameter_Specification
5810 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
5811 Set_Flag11
(N
, Val
);
5812 end Set_Null_Exclusion_Present
;
5814 procedure Set_Null_Exclusion_In_Return_Present
5815 (N
: Node_Id
; Val
: Boolean := True) is
5817 pragma Assert
(False
5818 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
5819 Set_Flag14
(N
, Val
);
5820 end Set_Null_Exclusion_In_Return_Present
;
5822 procedure Set_Null_Present
5823 (N
: Node_Id
; Val
: Boolean := True) is
5825 pragma Assert
(False
5826 or else NT
(N
).Nkind
= N_Component_List
5827 or else NT
(N
).Nkind
= N_Procedure_Specification
5828 or else NT
(N
).Nkind
= N_Record_Definition
);
5829 Set_Flag13
(N
, Val
);
5830 end Set_Null_Present
;
5832 procedure Set_Null_Record_Present
5833 (N
: Node_Id
; Val
: Boolean := True) is
5835 pragma Assert
(False
5836 or else NT
(N
).Nkind
= N_Aggregate
5837 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5838 Set_Flag17
(N
, Val
);
5839 end Set_Null_Record_Present
;
5841 procedure Set_Null_Statement
5842 (N
: Node_Id
; Val
: Node_Id
) is
5844 pragma Assert
(False
5845 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5847 end Set_Null_Statement
;
5849 procedure Set_Object_Definition
5850 (N
: Node_Id
; Val
: Node_Id
) is
5852 pragma Assert
(False
5853 or else NT
(N
).Nkind
= N_Object_Declaration
);
5854 Set_Node4_With_Parent
(N
, Val
);
5855 end Set_Object_Definition
;
5857 procedure Set_Of_Present
5858 (N
: Node_Id
; Val
: Boolean := True) is
5860 pragma Assert
(False
5861 or else NT
(N
).Nkind
= N_Iterator_Specification
);
5862 Set_Flag16
(N
, Val
);
5865 procedure Set_Original_Discriminant
5866 (N
: Node_Id
; Val
: Node_Id
) is
5868 pragma Assert
(False
5869 or else NT
(N
).Nkind
= N_Identifier
);
5870 Set_Node2
(N
, Val
); -- semantic field, no parent set
5871 end Set_Original_Discriminant
;
5873 procedure Set_Original_Entity
5874 (N
: Node_Id
; Val
: Entity_Id
) is
5876 pragma Assert
(False
5877 or else NT
(N
).Nkind
= N_Integer_Literal
5878 or else NT
(N
).Nkind
= N_Real_Literal
);
5879 Set_Node2
(N
, Val
); -- semantic field, no parent set
5880 end Set_Original_Entity
;
5882 procedure Set_Others_Discrete_Choices
5883 (N
: Node_Id
; Val
: List_Id
) is
5885 pragma Assert
(False
5886 or else NT
(N
).Nkind
= N_Others_Choice
);
5887 Set_List1_With_Parent
(N
, Val
);
5888 end Set_Others_Discrete_Choices
;
5890 procedure Set_Out_Present
5891 (N
: Node_Id
; Val
: Boolean := True) is
5893 pragma Assert
(False
5894 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5895 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5896 Set_Flag17
(N
, Val
);
5897 end Set_Out_Present
;
5899 procedure Set_Parameter_Associations
5900 (N
: Node_Id
; Val
: List_Id
) is
5902 pragma Assert
(False
5903 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5904 or else NT
(N
).Nkind
= N_Function_Call
5905 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5906 Set_List3_With_Parent
(N
, Val
);
5907 end Set_Parameter_Associations
;
5909 procedure Set_Parameter_Specifications
5910 (N
: Node_Id
; Val
: List_Id
) is
5912 pragma Assert
(False
5913 or else NT
(N
).Nkind
= N_Accept_Statement
5914 or else NT
(N
).Nkind
= N_Access_Function_Definition
5915 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5916 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
5917 or else NT
(N
).Nkind
= N_Entry_Declaration
5918 or else NT
(N
).Nkind
= N_Function_Specification
5919 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5920 Set_List3_With_Parent
(N
, Val
);
5921 end Set_Parameter_Specifications
;
5923 procedure Set_Parameter_Type
5924 (N
: Node_Id
; Val
: Node_Id
) is
5926 pragma Assert
(False
5927 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5928 Set_Node2_With_Parent
(N
, Val
);
5929 end Set_Parameter_Type
;
5931 procedure Set_Parent_Spec
5932 (N
: Node_Id
; Val
: Node_Id
) is
5934 pragma Assert
(False
5935 or else NT
(N
).Nkind
= N_Function_Instantiation
5936 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5937 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
5938 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5939 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5940 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
5941 or else NT
(N
).Nkind
= N_Package_Declaration
5942 or else NT
(N
).Nkind
= N_Package_Instantiation
5943 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5944 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5945 or else NT
(N
).Nkind
= N_Subprogram_Declaration
5946 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
5947 Set_Node4
(N
, Val
); -- semantic field, no parent set
5948 end Set_Parent_Spec
;
5950 procedure Set_Position
5951 (N
: Node_Id
; Val
: Node_Id
) is
5953 pragma Assert
(False
5954 or else NT
(N
).Nkind
= N_Component_Clause
);
5955 Set_Node2_With_Parent
(N
, Val
);
5958 procedure Set_Pragma_Argument_Associations
5959 (N
: Node_Id
; Val
: List_Id
) is
5961 pragma Assert
(False
5962 or else NT
(N
).Nkind
= N_Pragma
);
5963 Set_List2_With_Parent
(N
, Val
);
5964 end Set_Pragma_Argument_Associations
;
5966 procedure Set_Pragma_Identifier
5967 (N
: Node_Id
; Val
: Node_Id
) is
5969 pragma Assert
(False
5970 or else NT
(N
).Nkind
= N_Pragma
);
5971 Set_Node4_With_Parent
(N
, Val
);
5972 end Set_Pragma_Identifier
;
5974 procedure Set_Pragmas_After
5975 (N
: Node_Id
; Val
: List_Id
) is
5977 pragma Assert
(False
5978 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
5979 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
5980 Set_List5_With_Parent
(N
, Val
);
5981 end Set_Pragmas_After
;
5983 procedure Set_Pragmas_Before
5984 (N
: Node_Id
; Val
: List_Id
) is
5986 pragma Assert
(False
5987 or else NT
(N
).Nkind
= N_Accept_Alternative
5988 or else NT
(N
).Nkind
= N_Delay_Alternative
5989 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
5990 or else NT
(N
).Nkind
= N_Mod_Clause
5991 or else NT
(N
).Nkind
= N_Terminate_Alternative
5992 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
5993 Set_List4_With_Parent
(N
, Val
);
5994 end Set_Pragmas_Before
;
5996 procedure Set_Pre_Post_Conditions
5997 (N
: Node_Id
; Val
: Node_Id
) is
5999 pragma Assert
(False
6000 or else NT
(N
).Nkind
= N_Contract
);
6001 Set_Node1
(N
, Val
); -- semantic field, no parent set
6002 end Set_Pre_Post_Conditions
;
6004 procedure Set_Prefix
6005 (N
: Node_Id
; Val
: Node_Id
) is
6007 pragma Assert
(False
6008 or else NT
(N
).Nkind
= N_Attribute_Reference
6009 or else NT
(N
).Nkind
= N_Expanded_Name
6010 or else NT
(N
).Nkind
= N_Explicit_Dereference
6011 or else NT
(N
).Nkind
= N_Indexed_Component
6012 or else NT
(N
).Nkind
= N_Reference
6013 or else NT
(N
).Nkind
= N_Selected_Component
6014 or else NT
(N
).Nkind
= N_Slice
);
6015 Set_Node3_With_Parent
(N
, Val
);
6018 procedure Set_Premature_Use
6019 (N
: Node_Id
; Val
: Node_Id
) is
6021 pragma Assert
(False
6022 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
6024 end Set_Premature_Use
;
6026 procedure Set_Present_Expr
6027 (N
: Node_Id
; Val
: Uint
) is
6029 pragma Assert
(False
6030 or else NT
(N
).Nkind
= N_Variant
);
6032 end Set_Present_Expr
;
6034 procedure Set_Prev_Ids
6035 (N
: Node_Id
; Val
: Boolean := True) is
6037 pragma Assert
(False
6038 or else NT
(N
).Nkind
= N_Component_Declaration
6039 or else NT
(N
).Nkind
= N_Discriminant_Specification
6040 or else NT
(N
).Nkind
= N_Exception_Declaration
6041 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6042 or else NT
(N
).Nkind
= N_Number_Declaration
6043 or else NT
(N
).Nkind
= N_Object_Declaration
6044 or else NT
(N
).Nkind
= N_Parameter_Specification
);
6048 procedure Set_Print_In_Hex
6049 (N
: Node_Id
; Val
: Boolean := True) is
6051 pragma Assert
(False
6052 or else NT
(N
).Nkind
= N_Integer_Literal
);
6053 Set_Flag13
(N
, Val
);
6054 end Set_Print_In_Hex
;
6056 procedure Set_Private_Declarations
6057 (N
: Node_Id
; Val
: List_Id
) is
6059 pragma Assert
(False
6060 or else NT
(N
).Nkind
= N_Package_Specification
6061 or else NT
(N
).Nkind
= N_Protected_Definition
6062 or else NT
(N
).Nkind
= N_Task_Definition
);
6063 Set_List3_With_Parent
(N
, Val
);
6064 end Set_Private_Declarations
;
6066 procedure Set_Private_Present
6067 (N
: Node_Id
; Val
: Boolean := True) is
6069 pragma Assert
(False
6070 or else NT
(N
).Nkind
= N_Compilation_Unit
6071 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6072 or else NT
(N
).Nkind
= N_With_Clause
);
6073 Set_Flag15
(N
, Val
);
6074 end Set_Private_Present
;
6076 procedure Set_Procedure_To_Call
6077 (N
: Node_Id
; Val
: Node_Id
) is
6079 pragma Assert
(False
6080 or else NT
(N
).Nkind
= N_Allocator
6081 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6082 or else NT
(N
).Nkind
= N_Free_Statement
6083 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6084 Set_Node2
(N
, Val
); -- semantic field, no parent set
6085 end Set_Procedure_To_Call
;
6087 procedure Set_Proper_Body
6088 (N
: Node_Id
; Val
: Node_Id
) is
6090 pragma Assert
(False
6091 or else NT
(N
).Nkind
= N_Subunit
);
6092 Set_Node1_With_Parent
(N
, Val
);
6093 end Set_Proper_Body
;
6095 procedure Set_Protected_Definition
6096 (N
: Node_Id
; Val
: Node_Id
) is
6098 pragma Assert
(False
6099 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6100 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6101 Set_Node3_With_Parent
(N
, Val
);
6102 end Set_Protected_Definition
;
6104 procedure Set_Protected_Present
6105 (N
: Node_Id
; Val
: Boolean := True) is
6107 pragma Assert
(False
6108 or else NT
(N
).Nkind
= N_Access_Function_Definition
6109 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6110 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6111 or else NT
(N
).Nkind
= N_Record_Definition
);
6113 end Set_Protected_Present
;
6115 procedure Set_Raises_Constraint_Error
6116 (N
: Node_Id
; Val
: Boolean := True) is
6118 pragma Assert
(False
6119 or else NT
(N
).Nkind
in N_Subexpr
);
6121 end Set_Raises_Constraint_Error
;
6123 procedure Set_Range_Constraint
6124 (N
: Node_Id
; Val
: Node_Id
) is
6126 pragma Assert
(False
6127 or else NT
(N
).Nkind
= N_Delta_Constraint
6128 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6129 Set_Node4_With_Parent
(N
, Val
);
6130 end Set_Range_Constraint
;
6132 procedure Set_Range_Expression
6133 (N
: Node_Id
; Val
: Node_Id
) is
6135 pragma Assert
(False
6136 or else NT
(N
).Nkind
= N_Range_Constraint
);
6137 Set_Node4_With_Parent
(N
, Val
);
6138 end Set_Range_Expression
;
6140 procedure Set_Real_Range_Specification
6141 (N
: Node_Id
; Val
: Node_Id
) is
6143 pragma Assert
(False
6144 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6145 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6146 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6147 Set_Node4_With_Parent
(N
, Val
);
6148 end Set_Real_Range_Specification
;
6150 procedure Set_Realval
6151 (N
: Node_Id
; Val
: Ureal
) is
6153 pragma Assert
(False
6154 or else NT
(N
).Nkind
= N_Real_Literal
);
6155 Set_Ureal3
(N
, Val
);
6158 procedure Set_Reason
6159 (N
: Node_Id
; Val
: Uint
) is
6161 pragma Assert
(False
6162 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6163 or else NT
(N
).Nkind
= N_Raise_Program_Error
6164 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6168 procedure Set_Record_Extension_Part
6169 (N
: Node_Id
; Val
: Node_Id
) is
6171 pragma Assert
(False
6172 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6173 Set_Node3_With_Parent
(N
, Val
);
6174 end Set_Record_Extension_Part
;
6176 procedure Set_Redundant_Use
6177 (N
: Node_Id
; Val
: Boolean := True) is
6179 pragma Assert
(False
6180 or else NT
(N
).Nkind
= N_Attribute_Reference
6181 or else NT
(N
).Nkind
= N_Expanded_Name
6182 or else NT
(N
).Nkind
= N_Identifier
);
6183 Set_Flag13
(N
, Val
);
6184 end Set_Redundant_Use
;
6186 procedure Set_Renaming_Exception
6187 (N
: Node_Id
; Val
: Node_Id
) is
6189 pragma Assert
(False
6190 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6192 end Set_Renaming_Exception
;
6194 procedure Set_Result_Definition
6195 (N
: Node_Id
; Val
: Node_Id
) is
6197 pragma Assert
(False
6198 or else NT
(N
).Nkind
= N_Access_Function_Definition
6199 or else NT
(N
).Nkind
= N_Function_Specification
);
6200 Set_Node4_With_Parent
(N
, Val
);
6201 end Set_Result_Definition
;
6203 procedure Set_Return_Object_Declarations
6204 (N
: Node_Id
; Val
: List_Id
) is
6206 pragma Assert
(False
6207 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6208 Set_List3_With_Parent
(N
, Val
);
6209 end Set_Return_Object_Declarations
;
6211 procedure Set_Return_Statement_Entity
6212 (N
: Node_Id
; Val
: Node_Id
) is
6214 pragma Assert
(False
6215 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6216 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6217 Set_Node5
(N
, Val
); -- semantic field, no parent set
6218 end Set_Return_Statement_Entity
;
6220 procedure Set_Reverse_Present
6221 (N
: Node_Id
; Val
: Boolean := True) is
6223 pragma Assert
(False
6224 or else NT
(N
).Nkind
= N_Iterator_Specification
6225 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6226 Set_Flag15
(N
, Val
);
6227 end Set_Reverse_Present
;
6229 procedure Set_Right_Opnd
6230 (N
: Node_Id
; Val
: Node_Id
) is
6232 pragma Assert
(False
6233 or else NT
(N
).Nkind
in N_Op
6234 or else NT
(N
).Nkind
= N_And_Then
6235 or else NT
(N
).Nkind
= N_In
6236 or else NT
(N
).Nkind
= N_Not_In
6237 or else NT
(N
).Nkind
= N_Or_Else
);
6238 Set_Node3_With_Parent
(N
, Val
);
6241 procedure Set_Rounded_Result
6242 (N
: Node_Id
; Val
: Boolean := True) is
6244 pragma Assert
(False
6245 or else NT
(N
).Nkind
= N_Op_Divide
6246 or else NT
(N
).Nkind
= N_Op_Multiply
6247 or else NT
(N
).Nkind
= N_Type_Conversion
);
6248 Set_Flag18
(N
, Val
);
6249 end Set_Rounded_Result
;
6251 procedure Set_SCIL_Controlling_Tag
6252 (N
: Node_Id
; Val
: Node_Id
) is
6254 pragma Assert
(False
6255 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6256 Set_Node5
(N
, Val
); -- semantic field, no parent set
6257 end Set_SCIL_Controlling_Tag
;
6259 procedure Set_SCIL_Entity
6260 (N
: Node_Id
; Val
: Node_Id
) is
6262 pragma Assert
(False
6263 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6264 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6265 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6266 Set_Node4
(N
, Val
); -- semantic field, no parent set
6267 end Set_SCIL_Entity
;
6269 procedure Set_SCIL_Tag_Value
6270 (N
: Node_Id
; Val
: Node_Id
) is
6272 pragma Assert
(False
6273 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6274 Set_Node5
(N
, Val
); -- semantic field, no parent set
6275 end Set_SCIL_Tag_Value
;
6277 procedure Set_SCIL_Target_Prim
6278 (N
: Node_Id
; Val
: Node_Id
) is
6280 pragma Assert
(False
6281 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6282 Set_Node2
(N
, Val
); -- semantic field, no parent set
6283 end Set_SCIL_Target_Prim
;
6286 (N
: Node_Id
; Val
: Node_Id
) is
6288 pragma Assert
(False
6289 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6290 or else NT
(N
).Nkind
= N_Defining_Identifier
6291 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6292 Set_Node3
(N
, Val
); -- semantic field, no parent set
6295 procedure Set_Select_Alternatives
6296 (N
: Node_Id
; Val
: List_Id
) is
6298 pragma Assert
(False
6299 or else NT
(N
).Nkind
= N_Selective_Accept
);
6300 Set_List1_With_Parent
(N
, Val
);
6301 end Set_Select_Alternatives
;
6303 procedure Set_Selector_Name
6304 (N
: Node_Id
; Val
: Node_Id
) is
6306 pragma Assert
(False
6307 or else NT
(N
).Nkind
= N_Expanded_Name
6308 or else NT
(N
).Nkind
= N_Generic_Association
6309 or else NT
(N
).Nkind
= N_Parameter_Association
6310 or else NT
(N
).Nkind
= N_Selected_Component
);
6311 Set_Node2_With_Parent
(N
, Val
);
6312 end Set_Selector_Name
;
6314 procedure Set_Selector_Names
6315 (N
: Node_Id
; Val
: List_Id
) is
6317 pragma Assert
(False
6318 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6319 Set_List1_With_Parent
(N
, Val
);
6320 end Set_Selector_Names
;
6322 procedure Set_Shift_Count_OK
6323 (N
: Node_Id
; Val
: Boolean := True) is
6325 pragma Assert
(False
6326 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6327 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6328 or else NT
(N
).Nkind
= N_Op_Shift_Left
6329 or else NT
(N
).Nkind
= N_Op_Shift_Right
6330 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6332 end Set_Shift_Count_OK
;
6334 procedure Set_Source_Type
6335 (N
: Node_Id
; Val
: Entity_Id
) is
6337 pragma Assert
(False
6338 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6339 Set_Node1
(N
, Val
); -- semantic field, no parent set
6340 end Set_Source_Type
;
6342 procedure Set_Specification
6343 (N
: Node_Id
; Val
: Node_Id
) is
6345 pragma Assert
(False
6346 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6347 or else NT
(N
).Nkind
= N_Expression_Function
6348 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6349 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6350 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6351 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6352 or else NT
(N
).Nkind
= N_Package_Declaration
6353 or else NT
(N
).Nkind
= N_Subprogram_Body
6354 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6355 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6356 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6357 Set_Node1_With_Parent
(N
, Val
);
6358 end Set_Specification
;
6360 procedure Set_Split_PPC
6361 (N
: Node_Id
; Val
: Boolean) is
6363 pragma Assert
(False
6364 or else NT
(N
).Nkind
= N_Aspect_Specification
6365 or else NT
(N
).Nkind
= N_Pragma
);
6366 Set_Flag17
(N
, Val
);
6369 procedure Set_Statements
6370 (N
: Node_Id
; Val
: List_Id
) is
6372 pragma Assert
(False
6373 or else NT
(N
).Nkind
= N_Abortable_Part
6374 or else NT
(N
).Nkind
= N_Accept_Alternative
6375 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6376 or else NT
(N
).Nkind
= N_Delay_Alternative
6377 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6378 or else NT
(N
).Nkind
= N_Exception_Handler
6379 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6380 or else NT
(N
).Nkind
= N_Loop_Statement
6381 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6382 Set_List3_With_Parent
(N
, Val
);
6385 procedure Set_Storage_Pool
6386 (N
: Node_Id
; Val
: Node_Id
) is
6388 pragma Assert
(False
6389 or else NT
(N
).Nkind
= N_Allocator
6390 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6391 or else NT
(N
).Nkind
= N_Free_Statement
6392 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6393 Set_Node1
(N
, Val
); -- semantic field, no parent set
6394 end Set_Storage_Pool
;
6396 procedure Set_Subpool_Handle_Name
6397 (N
: Node_Id
; Val
: Node_Id
) is
6399 pragma Assert
(False
6400 or else NT
(N
).Nkind
= N_Allocator
);
6401 Set_Node4_With_Parent
(N
, Val
);
6402 end Set_Subpool_Handle_Name
;
6404 procedure Set_Strval
6405 (N
: Node_Id
; Val
: String_Id
) is
6407 pragma Assert
(False
6408 or else NT
(N
).Nkind
= N_Operator_Symbol
6409 or else NT
(N
).Nkind
= N_String_Literal
);
6413 procedure Set_Subtype_Indication
6414 (N
: Node_Id
; Val
: Node_Id
) is
6416 pragma Assert
(False
6417 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6418 or else NT
(N
).Nkind
= N_Component_Definition
6419 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6420 or else NT
(N
).Nkind
= N_Iterator_Specification
6421 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6422 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6423 Set_Node5_With_Parent
(N
, Val
);
6424 end Set_Subtype_Indication
;
6426 procedure Set_Subtype_Mark
6427 (N
: Node_Id
; Val
: Node_Id
) is
6429 pragma Assert
(False
6430 or else NT
(N
).Nkind
= N_Access_Definition
6431 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6432 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6433 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6434 or else NT
(N
).Nkind
= N_Qualified_Expression
6435 or else NT
(N
).Nkind
= N_Subtype_Indication
6436 or else NT
(N
).Nkind
= N_Type_Conversion
6437 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6438 Set_Node4_With_Parent
(N
, Val
);
6439 end Set_Subtype_Mark
;
6441 procedure Set_Subtype_Marks
6442 (N
: Node_Id
; Val
: List_Id
) is
6444 pragma Assert
(False
6445 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
6446 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6447 Set_List2_With_Parent
(N
, Val
);
6448 end Set_Subtype_Marks
;
6450 procedure Set_Suppress_Assignment_Checks
6451 (N
: Node_Id
; Val
: Boolean := True) is
6453 pragma Assert
(False
6454 or else NT
(N
).Nkind
= N_Assignment_Statement
6455 or else NT
(N
).Nkind
= N_Object_Declaration
);
6456 Set_Flag18
(N
, Val
);
6457 end Set_Suppress_Assignment_Checks
;
6459 procedure Set_Suppress_Loop_Warnings
6460 (N
: Node_Id
; Val
: Boolean := True) is
6462 pragma Assert
(False
6463 or else NT
(N
).Nkind
= N_Loop_Statement
);
6464 Set_Flag17
(N
, Val
);
6465 end Set_Suppress_Loop_Warnings
;
6467 procedure Set_Synchronized_Present
6468 (N
: Node_Id
; Val
: Boolean := True) is
6470 pragma Assert
(False
6471 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6472 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6473 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6474 or else NT
(N
).Nkind
= N_Record_Definition
);
6476 end Set_Synchronized_Present
;
6478 procedure Set_Tagged_Present
6479 (N
: Node_Id
; Val
: Boolean := True) is
6481 pragma Assert
(False
6482 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6483 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6484 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6485 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6486 or else NT
(N
).Nkind
= N_Record_Definition
);
6487 Set_Flag15
(N
, Val
);
6488 end Set_Tagged_Present
;
6490 procedure Set_Target_Type
6491 (N
: Node_Id
; Val
: Entity_Id
) is
6493 pragma Assert
(False
6494 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6495 Set_Node2
(N
, Val
); -- semantic field, no parent set
6496 end Set_Target_Type
;
6498 procedure Set_Task_Definition
6499 (N
: Node_Id
; Val
: Node_Id
) is
6501 pragma Assert
(False
6502 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6503 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6504 Set_Node3_With_Parent
(N
, Val
);
6505 end Set_Task_Definition
;
6507 procedure Set_Task_Present
6508 (N
: Node_Id
; Val
: Boolean := True) is
6510 pragma Assert
(False
6511 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6512 or else NT
(N
).Nkind
= N_Record_Definition
);
6514 end Set_Task_Present
;
6516 procedure Set_Then_Actions
6517 (N
: Node_Id
; Val
: List_Id
) is
6519 pragma Assert
(False
6520 or else NT
(N
).Nkind
= N_If_Expression
);
6521 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6522 end Set_Then_Actions
;
6524 procedure Set_Then_Statements
6525 (N
: Node_Id
; Val
: List_Id
) is
6527 pragma Assert
(False
6528 or else NT
(N
).Nkind
= N_Elsif_Part
6529 or else NT
(N
).Nkind
= N_If_Statement
);
6530 Set_List2_With_Parent
(N
, Val
);
6531 end Set_Then_Statements
;
6533 procedure Set_Treat_Fixed_As_Integer
6534 (N
: Node_Id
; Val
: Boolean := True) is
6536 pragma Assert
(False
6537 or else NT
(N
).Nkind
= N_Op_Divide
6538 or else NT
(N
).Nkind
= N_Op_Mod
6539 or else NT
(N
).Nkind
= N_Op_Multiply
6540 or else NT
(N
).Nkind
= N_Op_Rem
);
6541 Set_Flag14
(N
, Val
);
6542 end Set_Treat_Fixed_As_Integer
;
6544 procedure Set_Triggering_Alternative
6545 (N
: Node_Id
; Val
: Node_Id
) is
6547 pragma Assert
(False
6548 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6549 Set_Node1_With_Parent
(N
, Val
);
6550 end Set_Triggering_Alternative
;
6552 procedure Set_Triggering_Statement
6553 (N
: Node_Id
; Val
: Node_Id
) is
6555 pragma Assert
(False
6556 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6557 Set_Node1_With_Parent
(N
, Val
);
6558 end Set_Triggering_Statement
;
6560 procedure Set_TSS_Elist
6561 (N
: Node_Id
; Val
: Elist_Id
) is
6563 pragma Assert
(False
6564 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6565 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6568 procedure Set_Uneval_Old_Accept
6569 (N
: Node_Id
; Val
: Boolean := True) is
6571 pragma Assert
(False
6572 or else NT
(N
).Nkind
= N_Pragma
);
6574 end Set_Uneval_Old_Accept
;
6576 procedure Set_Uneval_Old_Warn
6577 (N
: Node_Id
; Val
: Boolean := True) is
6579 pragma Assert
(False
6580 or else NT
(N
).Nkind
= N_Pragma
);
6581 Set_Flag18
(N
, Val
);
6582 end Set_Uneval_Old_Warn
;
6584 procedure Set_Type_Definition
6585 (N
: Node_Id
; Val
: Node_Id
) is
6587 pragma Assert
(False
6588 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6589 Set_Node3_With_Parent
(N
, Val
);
6590 end Set_Type_Definition
;
6593 (N
: Node_Id
; Val
: Node_Id
) is
6595 pragma Assert
(False
6596 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6597 Set_Node2_With_Parent
(N
, Val
);
6600 procedure Set_Unknown_Discriminants_Present
6601 (N
: Node_Id
; Val
: Boolean := True) is
6603 pragma Assert
(False
6604 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6605 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6606 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6607 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6608 Set_Flag13
(N
, Val
);
6609 end Set_Unknown_Discriminants_Present
;
6611 procedure Set_Unreferenced_In_Spec
6612 (N
: Node_Id
; Val
: Boolean := True) is
6614 pragma Assert
(False
6615 or else NT
(N
).Nkind
= N_With_Clause
);
6617 end Set_Unreferenced_In_Spec
;
6619 procedure Set_Variant_Part
6620 (N
: Node_Id
; Val
: Node_Id
) is
6622 pragma Assert
(False
6623 or else NT
(N
).Nkind
= N_Component_List
);
6624 Set_Node4_With_Parent
(N
, Val
);
6625 end Set_Variant_Part
;
6627 procedure Set_Variants
6628 (N
: Node_Id
; Val
: List_Id
) is
6630 pragma Assert
(False
6631 or else NT
(N
).Nkind
= N_Variant_Part
);
6632 Set_List1_With_Parent
(N
, Val
);
6635 procedure Set_Visible_Declarations
6636 (N
: Node_Id
; Val
: List_Id
) is
6638 pragma Assert
(False
6639 or else NT
(N
).Nkind
= N_Package_Specification
6640 or else NT
(N
).Nkind
= N_Protected_Definition
6641 or else NT
(N
).Nkind
= N_Task_Definition
);
6642 Set_List2_With_Parent
(N
, Val
);
6643 end Set_Visible_Declarations
;
6645 procedure Set_Uninitialized_Variable
6646 (N
: Node_Id
; Val
: Node_Id
) is
6648 pragma Assert
(False
6649 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6650 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6652 end Set_Uninitialized_Variable
;
6654 procedure Set_Used_Operations
6655 (N
: Node_Id
; Val
: Elist_Id
) is
6657 pragma Assert
(False
6658 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6659 Set_Elist5
(N
, Val
);
6660 end Set_Used_Operations
;
6662 procedure Set_Was_Expression_Function
6663 (N
: Node_Id
; Val
: Boolean := True) is
6665 pragma Assert
(False
6666 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6667 Set_Flag18
(N
, Val
);
6668 end Set_Was_Expression_Function
;
6670 procedure Set_Was_Originally_Stub
6671 (N
: Node_Id
; Val
: Boolean := True) is
6673 pragma Assert
(False
6674 or else NT
(N
).Nkind
= N_Package_Body
6675 or else NT
(N
).Nkind
= N_Protected_Body
6676 or else NT
(N
).Nkind
= N_Subprogram_Body
6677 or else NT
(N
).Nkind
= N_Task_Body
);
6678 Set_Flag13
(N
, Val
);
6679 end Set_Was_Originally_Stub
;
6681 procedure Set_Withed_Body
6682 (N
: Node_Id
; Val
: Node_Id
) is
6684 pragma Assert
(False
6685 or else NT
(N
).Nkind
= N_With_Clause
);
6687 end Set_Withed_Body
;
6689 -------------------------
6690 -- Iterator Procedures --
6691 -------------------------
6693 procedure Next_Entity
(N
: in out Node_Id
) is
6695 N
:= Next_Entity
(N
);
6698 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6700 N
:= Next_Named_Actual
(N
);
6701 end Next_Named_Actual
;
6703 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6705 N
:= Next_Rep_Item
(N
);
6708 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6710 N
:= Next_Use_Clause
(N
);
6711 end Next_Use_Clause
;
6717 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6718 L
: constant Uint
:= End_Span
(N
);
6723 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6727 --------------------
6728 -- Get_Pragma_Arg --
6729 --------------------
6731 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6733 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6734 return Expression
(Arg
);
6740 ----------------------
6741 -- Set_End_Location --
6742 ----------------------
6744 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6747 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6748 end Set_End_Location
;
6757 V2
: Node_Kind
) return Boolean
6760 return T
= V1
or else
6768 V3
: Node_Kind
) return Boolean
6771 return T
= V1
or else
6781 V4
: Node_Kind
) return Boolean
6784 return T
= V1
or else
6796 V5
: Node_Kind
) return Boolean
6799 return T
= V1
or else
6813 V6
: Node_Kind
) return Boolean
6816 return T
= V1
or else
6832 V7
: Node_Kind
) return Boolean
6835 return T
= V1
or else
6853 V8
: Node_Kind
) return Boolean
6856 return T
= V1
or else
6876 V9
: Node_Kind
) return Boolean
6879 return T
= V1
or else
6894 function Pragma_Name_Unmapped
(N
: Node_Id
) return Name_Id
is
6896 return Chars
(Pragma_Identifier
(N
));
6897 end Pragma_Name_Unmapped
;
6899 ---------------------
6900 -- Map_Pragma_Name --
6901 ---------------------
6903 -- We don't want to introduce a dependence on some hash table package or
6904 -- similar, so we use a simple array of Key => Value pairs, and do a linear
6905 -- search. Linear search is plenty efficient, given that we don't expect
6906 -- more than a couple of entries in the mapping.
6908 type Name_Pair
is record
6913 type Pragma_Map_Index
is range 1 .. 100;
6914 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
6915 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
6917 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
6919 if Last_Pair
= Pragma_Map
'Last then
6920 raise Too_Many_Pragma_Mappings
;
6923 Last_Pair
:= Last_Pair
+ 1;
6924 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
6925 end Map_Pragma_Name
;
6931 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
6932 Result
: constant Name_Id
:= Pragma_Name_Unmapped
(N
);
6934 for J
in Pragma_Map
'First .. Last_Pair
loop
6935 if Result
= Pragma_Map
(J
).Key
then
6936 return Pragma_Map
(J
).Value
;