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
);
374 (N
: Node_Id
) return Boolean is
377 or else NT
(N
).Nkind
= N_Extended_Return_Statement
378 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
382 function Char_Literal_Value
383 (N
: Node_Id
) return Uint
is
386 or else NT
(N
).Nkind
= N_Character_Literal
);
388 end Char_Literal_Value
;
391 (N
: Node_Id
) return Name_Id
is
394 or else NT
(N
).Nkind
in N_Has_Chars
);
398 function Check_Address_Alignment
399 (N
: Node_Id
) return Boolean is
402 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
404 end Check_Address_Alignment
;
406 function Choice_Parameter
407 (N
: Node_Id
) return Node_Id
is
410 or else NT
(N
).Nkind
= N_Exception_Handler
);
412 end Choice_Parameter
;
415 (N
: Node_Id
) return List_Id
is
418 or else NT
(N
).Nkind
= N_Component_Association
);
422 function Class_Present
423 (N
: Node_Id
) return Boolean is
426 or else NT
(N
).Nkind
= N_Aspect_Specification
427 or else NT
(N
).Nkind
= N_Pragma
);
431 function Classifications
432 (N
: Node_Id
) return Node_Id
is
435 or else NT
(N
).Nkind
= N_Contract
);
439 function Cleanup_Actions
440 (N
: Node_Id
) return List_Id
is
443 or else NT
(N
).Nkind
= N_Block_Statement
);
447 function Comes_From_Extended_Return_Statement
448 (N
: Node_Id
) return Boolean is
451 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
453 end Comes_From_Extended_Return_Statement
;
455 function Compile_Time_Known_Aggregate
456 (N
: Node_Id
) return Boolean is
459 or else NT
(N
).Nkind
= N_Aggregate
);
461 end Compile_Time_Known_Aggregate
;
463 function Component_Associations
464 (N
: Node_Id
) return List_Id
is
467 or else NT
(N
).Nkind
= N_Aggregate
468 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
470 end Component_Associations
;
472 function Component_Clauses
473 (N
: Node_Id
) return List_Id
is
476 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
478 end Component_Clauses
;
480 function Component_Definition
481 (N
: Node_Id
) return Node_Id
is
484 or else NT
(N
).Nkind
= N_Component_Declaration
485 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
486 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
488 end Component_Definition
;
490 function Component_Items
491 (N
: Node_Id
) return List_Id
is
494 or else NT
(N
).Nkind
= N_Component_List
);
498 function Component_List
499 (N
: Node_Id
) return Node_Id
is
502 or else NT
(N
).Nkind
= N_Record_Definition
503 or else NT
(N
).Nkind
= N_Variant
);
507 function Component_Name
508 (N
: Node_Id
) return Node_Id
is
511 or else NT
(N
).Nkind
= N_Component_Clause
);
515 function Componentwise_Assignment
516 (N
: Node_Id
) return Boolean is
519 or else NT
(N
).Nkind
= N_Assignment_Statement
);
521 end Componentwise_Assignment
;
524 (N
: Node_Id
) return Node_Id
is
527 or else NT
(N
).Nkind
= N_Accept_Alternative
528 or else NT
(N
).Nkind
= N_Delay_Alternative
529 or else NT
(N
).Nkind
= N_Elsif_Part
530 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
531 or else NT
(N
).Nkind
= N_Exit_Statement
532 or else NT
(N
).Nkind
= N_If_Statement
533 or else NT
(N
).Nkind
= N_Iteration_Scheme
534 or else NT
(N
).Nkind
= N_Quantified_Expression
535 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
536 or else NT
(N
).Nkind
= N_Raise_Program_Error
537 or else NT
(N
).Nkind
= N_Raise_Storage_Error
538 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
542 function Condition_Actions
543 (N
: Node_Id
) return List_Id
is
546 or else NT
(N
).Nkind
= N_Elsif_Part
547 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
549 end Condition_Actions
;
551 function Config_Pragmas
552 (N
: Node_Id
) return List_Id
is
555 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
559 function Constant_Present
560 (N
: Node_Id
) return Boolean is
563 or else NT
(N
).Nkind
= N_Access_Definition
564 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
565 or else NT
(N
).Nkind
= N_Object_Declaration
);
567 end Constant_Present
;
570 (N
: Node_Id
) return Node_Id
is
573 or else NT
(N
).Nkind
= N_Subtype_Indication
);
578 (N
: Node_Id
) return List_Id
is
581 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
585 function Context_Installed
586 (N
: Node_Id
) return Boolean is
589 or else NT
(N
).Nkind
= N_With_Clause
);
591 end Context_Installed
;
593 function Context_Items
594 (N
: Node_Id
) return List_Id
is
597 or else NT
(N
).Nkind
= N_Compilation_Unit
);
601 function Context_Pending
602 (N
: Node_Id
) return Boolean is
605 or else NT
(N
).Nkind
= N_Compilation_Unit
);
609 function Contract_Test_Cases
610 (N
: Node_Id
) return Node_Id
is
613 or else NT
(N
).Nkind
= N_Contract
);
615 end Contract_Test_Cases
;
617 function Controlling_Argument
618 (N
: Node_Id
) return Node_Id
is
621 or else NT
(N
).Nkind
= N_Function_Call
622 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
624 end Controlling_Argument
;
626 function Conversion_OK
627 (N
: Node_Id
) return Boolean is
630 or else NT
(N
).Nkind
= N_Type_Conversion
);
634 function Convert_To_Return_False
635 (N
: Node_Id
) return Boolean is
638 or else NT
(N
).Nkind
= N_Raise_Expression
);
640 end Convert_To_Return_False
;
642 function Corresponding_Aspect
643 (N
: Node_Id
) return Node_Id
is
646 or else NT
(N
).Nkind
= N_Pragma
);
648 end Corresponding_Aspect
;
650 function Corresponding_Body
651 (N
: Node_Id
) return Node_Id
is
654 or else NT
(N
).Nkind
= N_Entry_Declaration
655 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
656 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
657 or else NT
(N
).Nkind
= N_Package_Body_Stub
658 or else NT
(N
).Nkind
= N_Package_Declaration
659 or else NT
(N
).Nkind
= N_Protected_Body_Stub
660 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
661 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
662 or else NT
(N
).Nkind
= N_Subprogram_Declaration
663 or else NT
(N
).Nkind
= N_Task_Body_Stub
664 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
666 end Corresponding_Body
;
668 function Corresponding_Formal_Spec
669 (N
: Node_Id
) return Node_Id
is
672 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
674 end Corresponding_Formal_Spec
;
676 function Corresponding_Generic_Association
677 (N
: Node_Id
) return Node_Id
is
680 or else NT
(N
).Nkind
= N_Object_Declaration
681 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
683 end Corresponding_Generic_Association
;
685 function Corresponding_Integer_Value
686 (N
: Node_Id
) return Uint
is
689 or else NT
(N
).Nkind
= N_Real_Literal
);
691 end Corresponding_Integer_Value
;
693 function Corresponding_Spec
694 (N
: Node_Id
) return Entity_Id
is
697 or else NT
(N
).Nkind
= N_Expression_Function
698 or else NT
(N
).Nkind
= N_Package_Body
699 or else NT
(N
).Nkind
= N_Protected_Body
700 or else NT
(N
).Nkind
= N_Subprogram_Body
701 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
702 or else NT
(N
).Nkind
= N_Task_Body
703 or else NT
(N
).Nkind
= N_With_Clause
);
705 end Corresponding_Spec
;
707 function Corresponding_Spec_Of_Stub
708 (N
: Node_Id
) return Entity_Id
is
711 or else NT
(N
).Nkind
= N_Package_Body_Stub
712 or else NT
(N
).Nkind
= N_Protected_Body_Stub
713 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
714 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
716 end Corresponding_Spec_Of_Stub
;
718 function Corresponding_Stub
719 (N
: Node_Id
) return Node_Id
is
722 or else NT
(N
).Nkind
= N_Subunit
);
724 end Corresponding_Stub
;
726 function Dcheck_Function
727 (N
: Node_Id
) return Entity_Id
is
730 or else NT
(N
).Nkind
= N_Variant
);
734 function Declarations
735 (N
: Node_Id
) return List_Id
is
738 or else NT
(N
).Nkind
= N_Accept_Statement
739 or else NT
(N
).Nkind
= N_Block_Statement
740 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
741 or else NT
(N
).Nkind
= N_Entry_Body
742 or else NT
(N
).Nkind
= N_Package_Body
743 or else NT
(N
).Nkind
= N_Protected_Body
744 or else NT
(N
).Nkind
= N_Subprogram_Body
745 or else NT
(N
).Nkind
= N_Task_Body
);
749 function Default_Expression
750 (N
: Node_Id
) return Node_Id
is
753 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
754 or else NT
(N
).Nkind
= N_Parameter_Specification
);
756 end Default_Expression
;
758 function Default_Storage_Pool
759 (N
: Node_Id
) return Node_Id
is
762 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
764 end Default_Storage_Pool
;
766 function Default_Name
767 (N
: Node_Id
) return Node_Id
is
770 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
771 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
775 function Defining_Identifier
776 (N
: Node_Id
) return Entity_Id
is
779 or else NT
(N
).Nkind
= N_Component_Declaration
780 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
781 or else NT
(N
).Nkind
= N_Discriminant_Specification
782 or else NT
(N
).Nkind
= N_Entry_Body
783 or else NT
(N
).Nkind
= N_Entry_Declaration
784 or else NT
(N
).Nkind
= N_Entry_Index_Specification
785 or else NT
(N
).Nkind
= N_Exception_Declaration
786 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
787 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
788 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
789 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
790 or else NT
(N
).Nkind
= N_Full_Type_Declaration
791 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
792 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
793 or else NT
(N
).Nkind
= N_Iterator_Specification
794 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
795 or else NT
(N
).Nkind
= N_Number_Declaration
796 or else NT
(N
).Nkind
= N_Object_Declaration
797 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
798 or else NT
(N
).Nkind
= N_Package_Body_Stub
799 or else NT
(N
).Nkind
= N_Parameter_Specification
800 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
801 or else NT
(N
).Nkind
= N_Private_Type_Declaration
802 or else NT
(N
).Nkind
= N_Protected_Body
803 or else NT
(N
).Nkind
= N_Protected_Body_Stub
804 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
805 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
806 or else NT
(N
).Nkind
= N_Single_Task_Declaration
807 or else NT
(N
).Nkind
= N_Subtype_Declaration
808 or else NT
(N
).Nkind
= N_Task_Body
809 or else NT
(N
).Nkind
= N_Task_Body_Stub
810 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
812 end Defining_Identifier
;
814 function Defining_Unit_Name
815 (N
: Node_Id
) return Node_Id
is
818 or else NT
(N
).Nkind
= N_Function_Instantiation
819 or else NT
(N
).Nkind
= N_Function_Specification
820 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
821 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
822 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
823 or else NT
(N
).Nkind
= N_Package_Body
824 or else NT
(N
).Nkind
= N_Package_Instantiation
825 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
826 or else NT
(N
).Nkind
= N_Package_Specification
827 or else NT
(N
).Nkind
= N_Procedure_Instantiation
828 or else NT
(N
).Nkind
= N_Procedure_Specification
);
830 end Defining_Unit_Name
;
832 function Delay_Alternative
833 (N
: Node_Id
) return Node_Id
is
836 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
838 end Delay_Alternative
;
840 function Delay_Statement
841 (N
: Node_Id
) return Node_Id
is
844 or else NT
(N
).Nkind
= N_Delay_Alternative
);
848 function Delta_Expression
849 (N
: Node_Id
) return Node_Id
is
852 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
853 or else NT
(N
).Nkind
= N_Delta_Constraint
854 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
856 end Delta_Expression
;
858 function Digits_Expression
859 (N
: Node_Id
) return Node_Id
is
862 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
863 or else NT
(N
).Nkind
= N_Digits_Constraint
864 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
866 end Digits_Expression
;
868 function Discr_Check_Funcs_Built
869 (N
: Node_Id
) return Boolean is
872 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
874 end Discr_Check_Funcs_Built
;
876 function Discrete_Choices
877 (N
: Node_Id
) return List_Id
is
880 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
881 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
882 or else NT
(N
).Nkind
= N_Variant
);
884 end Discrete_Choices
;
886 function Discrete_Range
887 (N
: Node_Id
) return Node_Id
is
890 or else NT
(N
).Nkind
= N_Slice
);
894 function Discrete_Subtype_Definition
895 (N
: Node_Id
) return Node_Id
is
898 or else NT
(N
).Nkind
= N_Entry_Declaration
899 or else NT
(N
).Nkind
= N_Entry_Index_Specification
900 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
902 end Discrete_Subtype_Definition
;
904 function Discrete_Subtype_Definitions
905 (N
: Node_Id
) return List_Id
is
908 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
910 end Discrete_Subtype_Definitions
;
912 function Discriminant_Specifications
913 (N
: Node_Id
) return List_Id
is
916 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
917 or else NT
(N
).Nkind
= N_Full_Type_Declaration
918 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
919 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
920 or else NT
(N
).Nkind
= N_Private_Type_Declaration
921 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
922 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
924 end Discriminant_Specifications
;
926 function Discriminant_Type
927 (N
: Node_Id
) return Node_Id
is
930 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
932 end Discriminant_Type
;
934 function Do_Accessibility_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
= N_Parameter_Specification
);
940 end Do_Accessibility_Check
;
942 function Do_Discriminant_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Assignment_Statement
947 or else NT
(N
).Nkind
= N_Selected_Component
948 or else NT
(N
).Nkind
= N_Type_Conversion
);
950 end Do_Discriminant_Check
;
952 function Do_Division_Check
953 (N
: Node_Id
) return Boolean is
956 or else NT
(N
).Nkind
= N_Op_Divide
957 or else NT
(N
).Nkind
= N_Op_Mod
958 or else NT
(N
).Nkind
= N_Op_Rem
);
960 end Do_Division_Check
;
962 function Do_Length_Check
963 (N
: Node_Id
) return Boolean is
966 or else NT
(N
).Nkind
= N_Assignment_Statement
967 or else NT
(N
).Nkind
= N_Op_And
968 or else NT
(N
).Nkind
= N_Op_Or
969 or else NT
(N
).Nkind
= N_Op_Xor
970 or else NT
(N
).Nkind
= N_Type_Conversion
);
974 function Do_Overflow_Check
975 (N
: Node_Id
) return Boolean is
978 or else NT
(N
).Nkind
in N_Op
979 or else NT
(N
).Nkind
= N_Attribute_Reference
980 or else NT
(N
).Nkind
= N_Case_Expression
981 or else NT
(N
).Nkind
= N_If_Expression
982 or else NT
(N
).Nkind
= N_Type_Conversion
);
984 end Do_Overflow_Check
;
986 function Do_Range_Check
987 (N
: Node_Id
) return Boolean is
990 or else NT
(N
).Nkind
in N_Subexpr
);
994 function Do_Storage_Check
995 (N
: Node_Id
) return Boolean is
998 or else NT
(N
).Nkind
= N_Allocator
999 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1001 end Do_Storage_Check
;
1003 function Do_Tag_Check
1004 (N
: Node_Id
) return Boolean is
1006 pragma Assert
(False
1007 or else NT
(N
).Nkind
= N_Assignment_Statement
1008 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1009 or else NT
(N
).Nkind
= N_Function_Call
1010 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
1011 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1012 or else NT
(N
).Nkind
= N_Type_Conversion
);
1016 function Elaborate_All_Desirable
1017 (N
: Node_Id
) return Boolean is
1019 pragma Assert
(False
1020 or else NT
(N
).Nkind
= N_With_Clause
);
1022 end Elaborate_All_Desirable
;
1024 function Elaborate_All_Present
1025 (N
: Node_Id
) return Boolean is
1027 pragma Assert
(False
1028 or else NT
(N
).Nkind
= N_With_Clause
);
1030 end Elaborate_All_Present
;
1032 function Elaborate_Desirable
1033 (N
: Node_Id
) return Boolean is
1035 pragma Assert
(False
1036 or else NT
(N
).Nkind
= N_With_Clause
);
1038 end Elaborate_Desirable
;
1040 function Elaborate_Present
1041 (N
: Node_Id
) return Boolean is
1043 pragma Assert
(False
1044 or else NT
(N
).Nkind
= N_With_Clause
);
1046 end Elaborate_Present
;
1048 function Else_Actions
1049 (N
: Node_Id
) return List_Id
is
1051 pragma Assert
(False
1052 or else NT
(N
).Nkind
= N_If_Expression
);
1056 function Else_Statements
1057 (N
: Node_Id
) return List_Id
is
1059 pragma Assert
(False
1060 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1061 or else NT
(N
).Nkind
= N_If_Statement
1062 or else NT
(N
).Nkind
= N_Selective_Accept
);
1064 end Else_Statements
;
1066 function Elsif_Parts
1067 (N
: Node_Id
) return List_Id
is
1069 pragma Assert
(False
1070 or else NT
(N
).Nkind
= N_If_Statement
);
1074 function Enclosing_Variant
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
= N_Variant
);
1080 end Enclosing_Variant
;
1083 (N
: Node_Id
) return Node_Id
is
1085 pragma Assert
(False
1086 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1087 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1088 or else NT
(N
).Nkind
= N_Loop_Statement
1089 or else NT
(N
).Nkind
= N_Package_Specification
1090 or else NT
(N
).Nkind
= N_Protected_Body
1091 or else NT
(N
).Nkind
= N_Protected_Definition
1092 or else NT
(N
).Nkind
= N_Record_Definition
1093 or else NT
(N
).Nkind
= N_Task_Definition
);
1098 (N
: Node_Id
) return Uint
is
1100 pragma Assert
(False
1101 or else NT
(N
).Nkind
= N_Case_Statement
1102 or else NT
(N
).Nkind
= N_If_Statement
);
1107 (N
: Node_Id
) return Node_Id
is
1109 pragma Assert
(False
1110 or else NT
(N
).Nkind
in N_Has_Entity
1111 or else NT
(N
).Nkind
= N_Aspect_Specification
1112 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1113 or else NT
(N
).Nkind
= N_Freeze_Entity
1114 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
1118 function Entity_Or_Associated_Node
1119 (N
: Node_Id
) return Node_Id
is
1121 pragma Assert
(False
1122 or else NT
(N
).Nkind
in N_Has_Entity
1123 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1125 end Entity_Or_Associated_Node
;
1127 function Entry_Body_Formal_Part
1128 (N
: Node_Id
) return Node_Id
is
1130 pragma Assert
(False
1131 or else NT
(N
).Nkind
= N_Entry_Body
);
1133 end Entry_Body_Formal_Part
;
1135 function Entry_Call_Alternative
1136 (N
: Node_Id
) return Node_Id
is
1138 pragma Assert
(False
1139 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1140 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1142 end Entry_Call_Alternative
;
1144 function Entry_Call_Statement
1145 (N
: Node_Id
) return Node_Id
is
1147 pragma Assert
(False
1148 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1150 end Entry_Call_Statement
;
1152 function Entry_Direct_Name
1153 (N
: Node_Id
) return Node_Id
is
1155 pragma Assert
(False
1156 or else NT
(N
).Nkind
= N_Accept_Statement
);
1158 end Entry_Direct_Name
;
1160 function Entry_Index
1161 (N
: Node_Id
) return Node_Id
is
1163 pragma Assert
(False
1164 or else NT
(N
).Nkind
= N_Accept_Statement
);
1168 function Entry_Index_Specification
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1174 end Entry_Index_Specification
;
1177 (N
: Node_Id
) return Node_Id
is
1179 pragma Assert
(False
1180 or else NT
(N
).Nkind
in N_Has_Etype
);
1184 function Exception_Choices
1185 (N
: Node_Id
) return List_Id
is
1187 pragma Assert
(False
1188 or else NT
(N
).Nkind
= N_Exception_Handler
);
1190 end Exception_Choices
;
1192 function Exception_Handlers
1193 (N
: Node_Id
) return List_Id
is
1195 pragma Assert
(False
1196 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1198 end Exception_Handlers
;
1200 function Exception_Junk
1201 (N
: Node_Id
) return Boolean is
1203 pragma Assert
(False
1204 or else NT
(N
).Nkind
= N_Block_Statement
1205 or else NT
(N
).Nkind
= N_Goto_Statement
1206 or else NT
(N
).Nkind
= N_Label
1207 or else NT
(N
).Nkind
= N_Object_Declaration
1208 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1212 function Exception_Label
1213 (N
: Node_Id
) return Node_Id
is
1215 pragma Assert
(False
1216 or else NT
(N
).Nkind
= N_Exception_Handler
1217 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1218 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1219 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1221 end Exception_Label
;
1223 function Expansion_Delayed
1224 (N
: Node_Id
) return Boolean is
1226 pragma Assert
(False
1227 or else NT
(N
).Nkind
= N_Aggregate
1228 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1230 end Expansion_Delayed
;
1232 function Explicit_Actual_Parameter
1233 (N
: Node_Id
) return Node_Id
is
1235 pragma Assert
(False
1236 or else NT
(N
).Nkind
= N_Parameter_Association
);
1238 end Explicit_Actual_Parameter
;
1240 function Explicit_Generic_Actual_Parameter
1241 (N
: Node_Id
) return Node_Id
is
1243 pragma Assert
(False
1244 or else NT
(N
).Nkind
= N_Generic_Association
);
1246 end Explicit_Generic_Actual_Parameter
;
1249 (N
: Node_Id
) return Node_Id
is
1251 pragma Assert
(False
1252 or else NT
(N
).Nkind
= N_Allocator
1253 or else NT
(N
).Nkind
= N_Aspect_Specification
1254 or else NT
(N
).Nkind
= N_Assignment_Statement
1255 or else NT
(N
).Nkind
= N_At_Clause
1256 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1257 or else NT
(N
).Nkind
= N_Case_Expression
1258 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1259 or else NT
(N
).Nkind
= N_Case_Statement
1260 or else NT
(N
).Nkind
= N_Code_Statement
1261 or else NT
(N
).Nkind
= N_Component_Association
1262 or else NT
(N
).Nkind
= N_Component_Declaration
1263 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1264 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1265 or else NT
(N
).Nkind
= N_Discriminant_Association
1266 or else NT
(N
).Nkind
= N_Discriminant_Specification
1267 or else NT
(N
).Nkind
= N_Exception_Declaration
1268 or else NT
(N
).Nkind
= N_Expression_Function
1269 or else NT
(N
).Nkind
= N_Expression_With_Actions
1270 or else NT
(N
).Nkind
= N_Free_Statement
1271 or else NT
(N
).Nkind
= N_Mod_Clause
1272 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1273 or else NT
(N
).Nkind
= N_Number_Declaration
1274 or else NT
(N
).Nkind
= N_Object_Declaration
1275 or else NT
(N
).Nkind
= N_Parameter_Specification
1276 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1277 or else NT
(N
).Nkind
= N_Qualified_Expression
1278 or else NT
(N
).Nkind
= N_Raise_Expression
1279 or else NT
(N
).Nkind
= N_Raise_Statement
1280 or else NT
(N
).Nkind
= N_Simple_Return_Statement
1281 or else NT
(N
).Nkind
= N_Type_Conversion
1282 or else NT
(N
).Nkind
= N_Unchecked_Expression
1283 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1287 function Expression_Copy
1288 (N
: Node_Id
) return Node_Id
is
1290 pragma Assert
(False
1291 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
1293 end Expression_Copy
;
1295 function Expressions
1296 (N
: Node_Id
) return List_Id
is
1298 pragma Assert
(False
1299 or else NT
(N
).Nkind
= N_Aggregate
1300 or else NT
(N
).Nkind
= N_Attribute_Reference
1301 or else NT
(N
).Nkind
= N_Extension_Aggregate
1302 or else NT
(N
).Nkind
= N_If_Expression
1303 or else NT
(N
).Nkind
= N_Indexed_Component
);
1308 (N
: Node_Id
) return Node_Id
is
1310 pragma Assert
(False
1311 or else NT
(N
).Nkind
= N_Component_Clause
);
1315 function First_Inlined_Subprogram
1316 (N
: Node_Id
) return Entity_Id
is
1318 pragma Assert
(False
1319 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1321 end First_Inlined_Subprogram
;
1324 (N
: Node_Id
) return Boolean is
1326 pragma Assert
(False
1327 or else NT
(N
).Nkind
= N_With_Clause
);
1331 function First_Named_Actual
1332 (N
: Node_Id
) return Node_Id
is
1334 pragma Assert
(False
1335 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1336 or else NT
(N
).Nkind
= N_Function_Call
1337 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1339 end First_Named_Actual
;
1341 function First_Real_Statement
1342 (N
: Node_Id
) return Node_Id
is
1344 pragma Assert
(False
1345 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1347 end First_Real_Statement
;
1349 function First_Subtype_Link
1350 (N
: Node_Id
) return Entity_Id
is
1352 pragma Assert
(False
1353 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1355 end First_Subtype_Link
;
1357 function Float_Truncate
1358 (N
: Node_Id
) return Boolean is
1360 pragma Assert
(False
1361 or else NT
(N
).Nkind
= N_Type_Conversion
);
1365 function Formal_Type_Definition
1366 (N
: Node_Id
) return Node_Id
is
1368 pragma Assert
(False
1369 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1371 end Formal_Type_Definition
;
1373 function Forwards_OK
1374 (N
: Node_Id
) return Boolean is
1376 pragma Assert
(False
1377 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1381 function From_Aspect_Specification
1382 (N
: Node_Id
) return Boolean is
1384 pragma Assert
(False
1385 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1386 or else NT
(N
).Nkind
= N_Pragma
);
1388 end From_Aspect_Specification
;
1390 function From_At_End
1391 (N
: Node_Id
) return Boolean is
1393 pragma Assert
(False
1394 or else NT
(N
).Nkind
= N_Raise_Statement
);
1398 function From_At_Mod
1399 (N
: Node_Id
) return Boolean is
1401 pragma Assert
(False
1402 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1406 function From_Conditional_Expression
1407 (N
: Node_Id
) return Boolean is
1409 pragma Assert
(False
1410 or else NT
(N
).Nkind
= N_Case_Statement
1411 or else NT
(N
).Nkind
= N_If_Statement
);
1413 end From_Conditional_Expression
;
1415 function From_Default
1416 (N
: Node_Id
) return Boolean is
1418 pragma Assert
(False
1419 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1423 function Generalized_Indexing
1424 (N
: Node_Id
) return Node_Id
is
1426 pragma Assert
(False
1427 or else NT
(N
).Nkind
= N_Indexed_Component
);
1429 end Generalized_Indexing
;
1431 function Generic_Associations
1432 (N
: Node_Id
) return List_Id
is
1434 pragma Assert
(False
1435 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1436 or else NT
(N
).Nkind
= N_Function_Instantiation
1437 or else NT
(N
).Nkind
= N_Package_Instantiation
1438 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1440 end Generic_Associations
;
1442 function Generic_Formal_Declarations
1443 (N
: Node_Id
) return List_Id
is
1445 pragma Assert
(False
1446 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1447 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1449 end Generic_Formal_Declarations
;
1451 function Generic_Parent
1452 (N
: Node_Id
) return Node_Id
is
1454 pragma Assert
(False
1455 or else NT
(N
).Nkind
= N_Function_Specification
1456 or else NT
(N
).Nkind
= N_Package_Specification
1457 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1461 function Generic_Parent_Type
1462 (N
: Node_Id
) return Node_Id
is
1464 pragma Assert
(False
1465 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1467 end Generic_Parent_Type
;
1469 function Handled_Statement_Sequence
1470 (N
: Node_Id
) return Node_Id
is
1472 pragma Assert
(False
1473 or else NT
(N
).Nkind
= N_Accept_Statement
1474 or else NT
(N
).Nkind
= N_Block_Statement
1475 or else NT
(N
).Nkind
= N_Entry_Body
1476 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1477 or else NT
(N
).Nkind
= N_Package_Body
1478 or else NT
(N
).Nkind
= N_Subprogram_Body
1479 or else NT
(N
).Nkind
= N_Task_Body
);
1481 end Handled_Statement_Sequence
;
1483 function Handler_List_Entry
1484 (N
: Node_Id
) return Node_Id
is
1486 pragma Assert
(False
1487 or else NT
(N
).Nkind
= N_Object_Declaration
);
1489 end Handler_List_Entry
;
1491 function Has_Created_Identifier
1492 (N
: Node_Id
) return Boolean is
1494 pragma Assert
(False
1495 or else NT
(N
).Nkind
= N_Block_Statement
1496 or else NT
(N
).Nkind
= N_Loop_Statement
);
1498 end Has_Created_Identifier
;
1500 function Has_Dereference_Action
1501 (N
: Node_Id
) return Boolean is
1503 pragma Assert
(False
1504 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1506 end Has_Dereference_Action
;
1508 function Has_Dynamic_Length_Check
1509 (N
: Node_Id
) return Boolean is
1511 pragma Assert
(False
1512 or else NT
(N
).Nkind
in N_Subexpr
);
1514 end Has_Dynamic_Length_Check
;
1516 function Has_Dynamic_Range_Check
1517 (N
: Node_Id
) return Boolean is
1519 pragma Assert
(False
1520 or else NT
(N
).Nkind
= N_Subtype_Declaration
1521 or else NT
(N
).Nkind
in N_Subexpr
);
1523 end Has_Dynamic_Range_Check
;
1525 function Has_Init_Expression
1526 (N
: Node_Id
) return Boolean is
1528 pragma Assert
(False
1529 or else NT
(N
).Nkind
= N_Object_Declaration
);
1531 end Has_Init_Expression
;
1533 function Has_Local_Raise
1534 (N
: Node_Id
) return Boolean is
1536 pragma Assert
(False
1537 or else NT
(N
).Nkind
= N_Exception_Handler
);
1539 end Has_Local_Raise
;
1541 function Has_No_Elaboration_Code
1542 (N
: Node_Id
) return Boolean is
1544 pragma Assert
(False
1545 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1547 end Has_No_Elaboration_Code
;
1549 function Has_Pragma_Suppress_All
1550 (N
: Node_Id
) return Boolean is
1552 pragma Assert
(False
1553 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1555 end Has_Pragma_Suppress_All
;
1557 function Has_Private_View
1558 (N
: Node_Id
) return Boolean is
1560 pragma Assert
(False
1561 or else NT
(N
).Nkind
in N_Op
1562 or else NT
(N
).Nkind
= N_Character_Literal
1563 or else NT
(N
).Nkind
= N_Expanded_Name
1564 or else NT
(N
).Nkind
= N_Identifier
1565 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1567 end Has_Private_View
;
1569 function Has_Relative_Deadline_Pragma
1570 (N
: Node_Id
) return Boolean is
1572 pragma Assert
(False
1573 or else NT
(N
).Nkind
= N_Subprogram_Body
1574 or else NT
(N
).Nkind
= N_Task_Definition
);
1576 end Has_Relative_Deadline_Pragma
;
1578 function Has_Self_Reference
1579 (N
: Node_Id
) return Boolean is
1581 pragma Assert
(False
1582 or else NT
(N
).Nkind
= N_Aggregate
1583 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1585 end Has_Self_Reference
;
1587 function Has_SP_Choice
1588 (N
: Node_Id
) return Boolean is
1590 pragma Assert
(False
1591 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1592 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
1593 or else NT
(N
).Nkind
= N_Variant
);
1597 function Has_Storage_Size_Pragma
1598 (N
: Node_Id
) return Boolean is
1600 pragma Assert
(False
1601 or else NT
(N
).Nkind
= N_Task_Definition
);
1603 end Has_Storage_Size_Pragma
;
1605 function Has_Wide_Character
1606 (N
: Node_Id
) return Boolean is
1608 pragma Assert
(False
1609 or else NT
(N
).Nkind
= N_String_Literal
);
1611 end Has_Wide_Character
;
1613 function Has_Wide_Wide_Character
1614 (N
: Node_Id
) return Boolean is
1616 pragma Assert
(False
1617 or else NT
(N
).Nkind
= N_String_Literal
);
1619 end Has_Wide_Wide_Character
;
1621 function Header_Size_Added
1622 (N
: Node_Id
) return Boolean is
1624 pragma Assert
(False
1625 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1627 end Header_Size_Added
;
1629 function Hidden_By_Use_Clause
1630 (N
: Node_Id
) return Elist_Id
is
1632 pragma Assert
(False
1633 or else NT
(N
).Nkind
= N_Use_Package_Clause
1634 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1636 end Hidden_By_Use_Clause
;
1639 (N
: Node_Id
) return Node_Id
is
1641 pragma Assert
(False
1642 or else NT
(N
).Nkind
= N_Range
1643 or else NT
(N
).Nkind
= N_Real_Range_Specification
1644 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1649 (N
: Node_Id
) return Node_Id
is
1651 pragma Assert
(False
1652 or else NT
(N
).Nkind
= N_Aspect_Specification
1653 or else NT
(N
).Nkind
= N_At_Clause
1654 or else NT
(N
).Nkind
= N_Block_Statement
1655 or else NT
(N
).Nkind
= N_Designator
1656 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1657 or else NT
(N
).Nkind
= N_Label
1658 or else NT
(N
).Nkind
= N_Loop_Statement
1659 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
1663 function Implicit_With
1664 (N
: Node_Id
) return Boolean is
1666 pragma Assert
(False
1667 or else NT
(N
).Nkind
= N_With_Clause
);
1671 function Implicit_With_From_Instantiation
1672 (N
: Node_Id
) return Boolean is
1674 pragma Assert
(False
1675 or else NT
(N
).Nkind
= N_With_Clause
);
1677 end Implicit_With_From_Instantiation
;
1679 function Interface_List
1680 (N
: Node_Id
) return List_Id
is
1682 pragma Assert
(False
1683 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1684 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1685 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1686 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1687 or else NT
(N
).Nkind
= N_Record_Definition
1688 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1689 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1690 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1694 function Interface_Present
1695 (N
: Node_Id
) return Boolean is
1697 pragma Assert
(False
1698 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1699 or else NT
(N
).Nkind
= N_Record_Definition
);
1701 end Interface_Present
;
1703 function Import_Interface_Present
1704 (N
: Node_Id
) return Boolean is
1706 pragma Assert
(False
1707 or else NT
(N
).Nkind
= N_Pragma
);
1709 end Import_Interface_Present
;
1712 (N
: Node_Id
) return Boolean is
1714 pragma Assert
(False
1715 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1716 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1720 function Includes_Infinities
1721 (N
: Node_Id
) return Boolean is
1723 pragma Assert
(False
1724 or else NT
(N
).Nkind
= N_Range
);
1726 end Includes_Infinities
;
1728 function Incomplete_View
1729 (N
: Node_Id
) return Node_Id
is
1731 pragma Assert
(False
1732 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
1734 end Incomplete_View
;
1736 function Inherited_Discriminant
1737 (N
: Node_Id
) return Boolean is
1739 pragma Assert
(False
1740 or else NT
(N
).Nkind
= N_Component_Association
);
1742 end Inherited_Discriminant
;
1744 function Instance_Spec
1745 (N
: Node_Id
) return Node_Id
is
1747 pragma Assert
(False
1748 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1749 or else NT
(N
).Nkind
= N_Function_Instantiation
1750 or else NT
(N
).Nkind
= N_Package_Instantiation
1751 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1756 (N
: Node_Id
) return Uint
is
1758 pragma Assert
(False
1759 or else NT
(N
).Nkind
= N_Integer_Literal
);
1763 function Is_Abort_Block
1764 (N
: Node_Id
) return Boolean is
1766 pragma Assert
(False
1767 or else NT
(N
).Nkind
= N_Block_Statement
);
1771 function Is_Accessibility_Actual
1772 (N
: Node_Id
) return Boolean is
1774 pragma Assert
(False
1775 or else NT
(N
).Nkind
= N_Parameter_Association
);
1777 end Is_Accessibility_Actual
;
1779 function Is_Analyzed_Pragma
1780 (N
: Node_Id
) return Boolean is
1782 pragma Assert
(False
1783 or else NT
(N
).Nkind
= N_Pragma
);
1785 end Is_Analyzed_Pragma
;
1787 function Is_Asynchronous_Call_Block
1788 (N
: Node_Id
) return Boolean is
1790 pragma Assert
(False
1791 or else NT
(N
).Nkind
= N_Block_Statement
);
1793 end Is_Asynchronous_Call_Block
;
1795 function Is_Boolean_Aspect
1796 (N
: Node_Id
) return Boolean is
1798 pragma Assert
(False
1799 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1801 end Is_Boolean_Aspect
;
1804 (N
: Node_Id
) return Boolean is
1806 pragma Assert
(False
1807 or else NT
(N
).Nkind
= N_Aspect_Specification
1808 or else NT
(N
).Nkind
= N_Pragma
);
1812 function Is_Component_Left_Opnd
1813 (N
: Node_Id
) return Boolean is
1815 pragma Assert
(False
1816 or else NT
(N
).Nkind
= N_Op_Concat
);
1818 end Is_Component_Left_Opnd
;
1820 function Is_Component_Right_Opnd
1821 (N
: Node_Id
) return Boolean is
1823 pragma Assert
(False
1824 or else NT
(N
).Nkind
= N_Op_Concat
);
1826 end Is_Component_Right_Opnd
;
1828 function Is_Controlling_Actual
1829 (N
: Node_Id
) return Boolean is
1831 pragma Assert
(False
1832 or else NT
(N
).Nkind
in N_Subexpr
);
1834 end Is_Controlling_Actual
;
1836 function Is_Disabled
1837 (N
: Node_Id
) return Boolean is
1839 pragma Assert
(False
1840 or else NT
(N
).Nkind
= N_Aspect_Specification
1841 or else NT
(N
).Nkind
= N_Pragma
);
1845 function Is_Delayed_Aspect
1846 (N
: Node_Id
) return Boolean is
1848 pragma Assert
(False
1849 or else NT
(N
).Nkind
= N_Aspect_Specification
1850 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1851 or else NT
(N
).Nkind
= N_Pragma
);
1853 end Is_Delayed_Aspect
;
1855 function Is_Dynamic_Coextension
1856 (N
: Node_Id
) return Boolean is
1858 pragma Assert
(False
1859 or else NT
(N
).Nkind
= N_Allocator
);
1861 end Is_Dynamic_Coextension
;
1864 (N
: Node_Id
) return Boolean is
1866 pragma Assert
(False
1867 or else NT
(N
).Nkind
= N_If_Expression
);
1871 function Is_Entry_Barrier_Function
1872 (N
: Node_Id
) return Boolean is
1874 pragma Assert
(False
1875 or else NT
(N
).Nkind
= N_Subprogram_Body
1876 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
1878 end Is_Entry_Barrier_Function
;
1880 function Is_Expanded_Build_In_Place_Call
1881 (N
: Node_Id
) return Boolean is
1883 pragma Assert
(False
1884 or else NT
(N
).Nkind
= N_Function_Call
);
1886 end Is_Expanded_Build_In_Place_Call
;
1888 function Is_Expanded_Contract
1889 (N
: Node_Id
) return Boolean is
1891 pragma Assert
(False
1892 or else NT
(N
).Nkind
= N_Contract
);
1894 end Is_Expanded_Contract
;
1896 function Is_Finalization_Wrapper
1897 (N
: Node_Id
) return Boolean is
1899 pragma Assert
(False
1900 or else NT
(N
).Nkind
= N_Block_Statement
);
1902 end Is_Finalization_Wrapper
;
1904 function Is_Folded_In_Parser
1905 (N
: Node_Id
) return Boolean is
1907 pragma Assert
(False
1908 or else NT
(N
).Nkind
= N_String_Literal
);
1910 end Is_Folded_In_Parser
;
1912 function Is_Generic_Contract_Pragma
1913 (N
: Node_Id
) return Boolean is
1915 pragma Assert
(False
1916 or else NT
(N
).Nkind
= N_Pragma
);
1918 end Is_Generic_Contract_Pragma
;
1920 function Is_Ghost_Pragma
1921 (N
: Node_Id
) return Boolean is
1923 pragma Assert
(False
1924 or else NT
(N
).Nkind
= N_Pragma
);
1926 end Is_Ghost_Pragma
;
1929 (N
: Node_Id
) return Boolean is
1931 pragma Assert
(False
1932 or else NT
(N
).Nkind
= N_Aspect_Specification
1933 or else NT
(N
).Nkind
= N_Pragma
);
1937 function Is_In_Discriminant_Check
1938 (N
: Node_Id
) return Boolean is
1940 pragma Assert
(False
1941 or else NT
(N
).Nkind
= N_Selected_Component
);
1943 end Is_In_Discriminant_Check
;
1945 function Is_Inherited_Pragma
1946 (N
: Node_Id
) return Boolean is
1948 pragma Assert
(False
1949 or else NT
(N
).Nkind
= N_Pragma
);
1951 end Is_Inherited_Pragma
;
1953 function Is_Machine_Number
1954 (N
: Node_Id
) return Boolean is
1956 pragma Assert
(False
1957 or else NT
(N
).Nkind
= N_Real_Literal
);
1959 end Is_Machine_Number
;
1961 function Is_Null_Loop
1962 (N
: Node_Id
) return Boolean is
1964 pragma Assert
(False
1965 or else NT
(N
).Nkind
= N_Loop_Statement
);
1969 function Is_Overloaded
1970 (N
: Node_Id
) return Boolean is
1972 pragma Assert
(False
1973 or else NT
(N
).Nkind
in N_Subexpr
);
1977 function Is_Power_Of_2_For_Shift
1978 (N
: Node_Id
) return Boolean is
1980 pragma Assert
(False
1981 or else NT
(N
).Nkind
= N_Op_Expon
);
1983 end Is_Power_Of_2_For_Shift
;
1985 function Is_Prefixed_Call
1986 (N
: Node_Id
) return Boolean is
1988 pragma Assert
(False
1989 or else NT
(N
).Nkind
= N_Selected_Component
);
1991 end Is_Prefixed_Call
;
1993 function Is_Protected_Subprogram_Body
1994 (N
: Node_Id
) return Boolean is
1996 pragma Assert
(False
1997 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1999 end Is_Protected_Subprogram_Body
;
2001 function Is_Qualified_Universal_Literal
2002 (N
: Node_Id
) return Boolean is
2004 pragma Assert
(False
2005 or else NT
(N
).Nkind
= N_Qualified_Expression
);
2007 end Is_Qualified_Universal_Literal
;
2009 function Is_Static_Coextension
2010 (N
: Node_Id
) return Boolean is
2012 pragma Assert
(False
2013 or else NT
(N
).Nkind
= N_Allocator
);
2015 end Is_Static_Coextension
;
2017 function Is_Static_Expression
2018 (N
: Node_Id
) return Boolean is
2020 pragma Assert
(False
2021 or else NT
(N
).Nkind
in N_Subexpr
);
2023 end Is_Static_Expression
;
2025 function Is_Subprogram_Descriptor
2026 (N
: Node_Id
) return Boolean is
2028 pragma Assert
(False
2029 or else NT
(N
).Nkind
= N_Object_Declaration
);
2031 end Is_Subprogram_Descriptor
;
2033 function Is_Task_Allocation_Block
2034 (N
: Node_Id
) return Boolean is
2036 pragma Assert
(False
2037 or else NT
(N
).Nkind
= N_Block_Statement
);
2039 end Is_Task_Allocation_Block
;
2041 function Is_Task_Body_Procedure
2042 (N
: Node_Id
) return Boolean is
2044 pragma Assert
(False
2045 or else NT
(N
).Nkind
= N_Subprogram_Body
2046 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
2048 end Is_Task_Body_Procedure
;
2050 function Is_Task_Master
2051 (N
: Node_Id
) return Boolean is
2053 pragma Assert
(False
2054 or else NT
(N
).Nkind
= N_Block_Statement
2055 or else NT
(N
).Nkind
= N_Subprogram_Body
2056 or else NT
(N
).Nkind
= N_Task_Body
);
2060 function Iteration_Scheme
2061 (N
: Node_Id
) return Node_Id
is
2063 pragma Assert
(False
2064 or else NT
(N
).Nkind
= N_Loop_Statement
);
2066 end Iteration_Scheme
;
2068 function Iterator_Specification
2069 (N
: Node_Id
) return Node_Id
is
2071 pragma Assert
(False
2072 or else NT
(N
).Nkind
= N_Iteration_Scheme
2073 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2075 end Iterator_Specification
;
2078 (N
: Node_Id
) return Node_Id
is
2080 pragma Assert
(False
2081 or else NT
(N
).Nkind
= N_Itype_Reference
);
2085 function Kill_Range_Check
2086 (N
: Node_Id
) return Boolean is
2088 pragma Assert
(False
2089 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2091 end Kill_Range_Check
;
2093 function Label_Construct
2094 (N
: Node_Id
) return Node_Id
is
2096 pragma Assert
(False
2097 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
2099 end Label_Construct
;
2102 (N
: Node_Id
) return Node_Id
is
2104 pragma Assert
(False
2105 or else NT
(N
).Nkind
= N_Component_Clause
);
2110 (N
: Node_Id
) return Boolean is
2112 pragma Assert
(False
2113 or else NT
(N
).Nkind
= N_With_Clause
);
2118 (N
: Node_Id
) return Node_Id
is
2120 pragma Assert
(False
2121 or else NT
(N
).Nkind
= N_And_Then
2122 or else NT
(N
).Nkind
= N_In
2123 or else NT
(N
).Nkind
= N_Not_In
2124 or else NT
(N
).Nkind
= N_Or_Else
2125 or else NT
(N
).Nkind
in N_Binary_Op
);
2129 function Library_Unit
2130 (N
: Node_Id
) return Node_Id
is
2132 pragma Assert
(False
2133 or else NT
(N
).Nkind
= N_Compilation_Unit
2134 or else NT
(N
).Nkind
= N_Package_Body_Stub
2135 or else NT
(N
).Nkind
= N_Protected_Body_Stub
2136 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2137 or else NT
(N
).Nkind
= N_Task_Body_Stub
2138 or else NT
(N
).Nkind
= N_With_Clause
);
2142 function Limited_View_Installed
2143 (N
: Node_Id
) return Boolean is
2145 pragma Assert
(False
2146 or else NT
(N
).Nkind
= N_Package_Specification
2147 or else NT
(N
).Nkind
= N_With_Clause
);
2149 end Limited_View_Installed
;
2151 function Limited_Present
2152 (N
: Node_Id
) return Boolean is
2154 pragma Assert
(False
2155 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2156 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2157 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2158 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2159 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2160 or else NT
(N
).Nkind
= N_Record_Definition
2161 or else NT
(N
).Nkind
= N_With_Clause
);
2163 end Limited_Present
;
2166 (N
: Node_Id
) return List_Id
is
2168 pragma Assert
(False
2169 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2173 function Local_Raise_Not_OK
2174 (N
: Node_Id
) return Boolean is
2176 pragma Assert
(False
2177 or else NT
(N
).Nkind
= N_Exception_Handler
);
2179 end Local_Raise_Not_OK
;
2181 function Local_Raise_Statements
2182 (N
: Node_Id
) return Elist_Id
is
2184 pragma Assert
(False
2185 or else NT
(N
).Nkind
= N_Exception_Handler
);
2187 end Local_Raise_Statements
;
2189 function Loop_Actions
2190 (N
: Node_Id
) return List_Id
is
2192 pragma Assert
(False
2193 or else NT
(N
).Nkind
= N_Component_Association
);
2197 function Loop_Parameter_Specification
2198 (N
: Node_Id
) return Node_Id
is
2200 pragma Assert
(False
2201 or else NT
(N
).Nkind
= N_Iteration_Scheme
2202 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2204 end Loop_Parameter_Specification
;
2207 (N
: Node_Id
) return Node_Id
is
2209 pragma Assert
(False
2210 or else NT
(N
).Nkind
= N_Range
2211 or else NT
(N
).Nkind
= N_Real_Range_Specification
2212 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2217 (N
: Node_Id
) return Node_Id
is
2219 pragma Assert
(False
2220 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2225 (N
: Node_Id
) return Boolean is
2227 pragma Assert
(False
2228 or else NT
(N
).Nkind
= N_Component_Declaration
2229 or else NT
(N
).Nkind
= N_Discriminant_Specification
2230 or else NT
(N
).Nkind
= N_Exception_Declaration
2231 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2232 or else NT
(N
).Nkind
= N_Number_Declaration
2233 or else NT
(N
).Nkind
= N_Object_Declaration
2234 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2238 function Must_Be_Byte_Aligned
2239 (N
: Node_Id
) return Boolean is
2241 pragma Assert
(False
2242 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2244 end Must_Be_Byte_Aligned
;
2246 function Must_Not_Freeze
2247 (N
: Node_Id
) return Boolean is
2249 pragma Assert
(False
2250 or else NT
(N
).Nkind
= N_Subtype_Indication
2251 or else NT
(N
).Nkind
in N_Subexpr
);
2253 end Must_Not_Freeze
;
2255 function Must_Not_Override
2256 (N
: Node_Id
) return Boolean is
2258 pragma Assert
(False
2259 or else NT
(N
).Nkind
= N_Entry_Declaration
2260 or else NT
(N
).Nkind
= N_Function_Instantiation
2261 or else NT
(N
).Nkind
= N_Function_Specification
2262 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2263 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2265 end Must_Not_Override
;
2267 function Must_Override
2268 (N
: Node_Id
) return Boolean is
2270 pragma Assert
(False
2271 or else NT
(N
).Nkind
= N_Entry_Declaration
2272 or else NT
(N
).Nkind
= N_Function_Instantiation
2273 or else NT
(N
).Nkind
= N_Function_Specification
2274 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2275 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2280 (N
: Node_Id
) return Node_Id
is
2282 pragma Assert
(False
2283 or else NT
(N
).Nkind
= N_Assignment_Statement
2284 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2285 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2286 or else NT
(N
).Nkind
= N_Designator
2287 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2288 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2289 or else NT
(N
).Nkind
= N_Exit_Statement
2290 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2291 or else NT
(N
).Nkind
= N_Function_Call
2292 or else NT
(N
).Nkind
= N_Function_Instantiation
2293 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2294 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2295 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2296 or else NT
(N
).Nkind
= N_Goto_Statement
2297 or else NT
(N
).Nkind
= N_Iterator_Specification
2298 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2299 or else NT
(N
).Nkind
= N_Package_Instantiation
2300 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2301 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2302 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2303 or else NT
(N
).Nkind
= N_Raise_Expression
2304 or else NT
(N
).Nkind
= N_Raise_Statement
2305 or else NT
(N
).Nkind
= N_Requeue_Statement
2306 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2307 or else NT
(N
).Nkind
= N_Subunit
2308 or else NT
(N
).Nkind
= N_Variant_Part
2309 or else NT
(N
).Nkind
= N_With_Clause
);
2314 (N
: Node_Id
) return List_Id
is
2316 pragma Assert
(False
2317 or else NT
(N
).Nkind
= N_Abort_Statement
2318 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
2322 function Next_Entity
2323 (N
: Node_Id
) return Node_Id
is
2325 pragma Assert
(False
2326 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2327 or else NT
(N
).Nkind
= N_Defining_Identifier
2328 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2332 function Next_Exit_Statement
2333 (N
: Node_Id
) return Node_Id
is
2335 pragma Assert
(False
2336 or else NT
(N
).Nkind
= N_Exit_Statement
);
2338 end Next_Exit_Statement
;
2340 function Next_Implicit_With
2341 (N
: Node_Id
) return Node_Id
is
2343 pragma Assert
(False
2344 or else NT
(N
).Nkind
= N_With_Clause
);
2346 end Next_Implicit_With
;
2348 function Next_Named_Actual
2349 (N
: Node_Id
) return Node_Id
is
2351 pragma Assert
(False
2352 or else NT
(N
).Nkind
= N_Parameter_Association
);
2354 end Next_Named_Actual
;
2356 function Next_Pragma
2357 (N
: Node_Id
) return Node_Id
is
2359 pragma Assert
(False
2360 or else NT
(N
).Nkind
= N_Pragma
);
2364 function Next_Rep_Item
2365 (N
: Node_Id
) return Node_Id
is
2367 pragma Assert
(False
2368 or else NT
(N
).Nkind
= N_Aspect_Specification
2369 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2370 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2371 or else NT
(N
).Nkind
= N_Pragma
2372 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2376 function Next_Use_Clause
2377 (N
: Node_Id
) return Node_Id
is
2379 pragma Assert
(False
2380 or else NT
(N
).Nkind
= N_Use_Package_Clause
2381 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2383 end Next_Use_Clause
;
2385 function No_Ctrl_Actions
2386 (N
: Node_Id
) return Boolean is
2388 pragma Assert
(False
2389 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2391 end No_Ctrl_Actions
;
2393 function No_Elaboration_Check
2394 (N
: Node_Id
) return Boolean is
2396 pragma Assert
(False
2397 or else NT
(N
).Nkind
= N_Function_Call
2398 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2400 end No_Elaboration_Check
;
2402 function No_Entities_Ref_In_Spec
2403 (N
: Node_Id
) return Boolean is
2405 pragma Assert
(False
2406 or else NT
(N
).Nkind
= N_With_Clause
);
2408 end No_Entities_Ref_In_Spec
;
2410 function No_Initialization
2411 (N
: Node_Id
) return Boolean is
2413 pragma Assert
(False
2414 or else NT
(N
).Nkind
= N_Allocator
2415 or else NT
(N
).Nkind
= N_Object_Declaration
);
2417 end No_Initialization
;
2419 function No_Minimize_Eliminate
2420 (N
: Node_Id
) return Boolean is
2422 pragma Assert
(False
2423 or else NT
(N
).Nkind
= N_In
2424 or else NT
(N
).Nkind
= N_Not_In
);
2426 end No_Minimize_Eliminate
;
2428 function No_Side_Effect_Removal
2429 (N
: Node_Id
) return Boolean is
2431 pragma Assert
(False
2432 or else NT
(N
).Nkind
= N_Function_Call
);
2434 end No_Side_Effect_Removal
;
2436 function No_Truncation
2437 (N
: Node_Id
) return Boolean is
2439 pragma Assert
(False
2440 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2444 function Non_Aliased_Prefix
2445 (N
: Node_Id
) return Boolean is
2447 pragma Assert
(False
2448 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2450 end Non_Aliased_Prefix
;
2452 function Null_Present
2453 (N
: Node_Id
) return Boolean is
2455 pragma Assert
(False
2456 or else NT
(N
).Nkind
= N_Component_List
2457 or else NT
(N
).Nkind
= N_Procedure_Specification
2458 or else NT
(N
).Nkind
= N_Record_Definition
);
2462 function Null_Excluding_Subtype
2463 (N
: Node_Id
) return Boolean is
2465 pragma Assert
(False
2466 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
2468 end Null_Excluding_Subtype
;
2470 function Null_Exclusion_Present
2471 (N
: Node_Id
) return Boolean is
2473 pragma Assert
(False
2474 or else NT
(N
).Nkind
= N_Access_Definition
2475 or else NT
(N
).Nkind
= N_Access_Function_Definition
2476 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2477 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2478 or else NT
(N
).Nkind
= N_Allocator
2479 or else NT
(N
).Nkind
= N_Component_Definition
2480 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2481 or else NT
(N
).Nkind
= N_Discriminant_Specification
2482 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2483 or else NT
(N
).Nkind
= N_Function_Specification
2484 or else NT
(N
).Nkind
= N_Object_Declaration
2485 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2486 or else NT
(N
).Nkind
= N_Parameter_Specification
2487 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2489 end Null_Exclusion_Present
;
2491 function Null_Exclusion_In_Return_Present
2492 (N
: Node_Id
) return Boolean is
2494 pragma Assert
(False
2495 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2497 end Null_Exclusion_In_Return_Present
;
2499 function Null_Record_Present
2500 (N
: Node_Id
) return Boolean is
2502 pragma Assert
(False
2503 or else NT
(N
).Nkind
= N_Aggregate
2504 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2506 end Null_Record_Present
;
2508 function Object_Definition
2509 (N
: Node_Id
) return Node_Id
is
2511 pragma Assert
(False
2512 or else NT
(N
).Nkind
= N_Object_Declaration
);
2514 end Object_Definition
;
2517 (N
: Node_Id
) return Boolean is
2519 pragma Assert
(False
2520 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2524 function Original_Discriminant
2525 (N
: Node_Id
) return Node_Id
is
2527 pragma Assert
(False
2528 or else NT
(N
).Nkind
= N_Identifier
);
2530 end Original_Discriminant
;
2532 function Original_Entity
2533 (N
: Node_Id
) return Entity_Id
is
2535 pragma Assert
(False
2536 or else NT
(N
).Nkind
= N_Integer_Literal
2537 or else NT
(N
).Nkind
= N_Real_Literal
);
2539 end Original_Entity
;
2541 function Others_Discrete_Choices
2542 (N
: Node_Id
) return List_Id
is
2544 pragma Assert
(False
2545 or else NT
(N
).Nkind
= N_Others_Choice
);
2547 end Others_Discrete_Choices
;
2549 function Out_Present
2550 (N
: Node_Id
) return Boolean is
2552 pragma Assert
(False
2553 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2554 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2558 function Parameter_Associations
2559 (N
: Node_Id
) return List_Id
is
2561 pragma Assert
(False
2562 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2563 or else NT
(N
).Nkind
= N_Function_Call
2564 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2566 end Parameter_Associations
;
2568 function Parameter_Specifications
2569 (N
: Node_Id
) return List_Id
is
2571 pragma Assert
(False
2572 or else NT
(N
).Nkind
= N_Accept_Statement
2573 or else NT
(N
).Nkind
= N_Access_Function_Definition
2574 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2575 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2576 or else NT
(N
).Nkind
= N_Entry_Declaration
2577 or else NT
(N
).Nkind
= N_Function_Specification
2578 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2580 end Parameter_Specifications
;
2582 function Parameter_Type
2583 (N
: Node_Id
) return Node_Id
is
2585 pragma Assert
(False
2586 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2590 function Parent_Spec
2591 (N
: Node_Id
) return Node_Id
is
2593 pragma Assert
(False
2594 or else NT
(N
).Nkind
= N_Function_Instantiation
2595 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2596 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2597 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2598 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2599 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2600 or else NT
(N
).Nkind
= N_Package_Declaration
2601 or else NT
(N
).Nkind
= N_Package_Instantiation
2602 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2603 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2604 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2605 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2610 (N
: Node_Id
) return Node_Id
is
2612 pragma Assert
(False
2613 or else NT
(N
).Nkind
= N_Component_Clause
);
2617 function Pragma_Argument_Associations
2618 (N
: Node_Id
) return List_Id
is
2620 pragma Assert
(False
2621 or else NT
(N
).Nkind
= N_Pragma
);
2623 end Pragma_Argument_Associations
;
2625 function Pragma_Identifier
2626 (N
: Node_Id
) return Node_Id
is
2628 pragma Assert
(False
2629 or else NT
(N
).Nkind
= N_Pragma
);
2631 end Pragma_Identifier
;
2633 function Pragmas_After
2634 (N
: Node_Id
) return List_Id
is
2636 pragma Assert
(False
2637 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2638 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2642 function Pragmas_Before
2643 (N
: Node_Id
) return List_Id
is
2645 pragma Assert
(False
2646 or else NT
(N
).Nkind
= N_Accept_Alternative
2647 or else NT
(N
).Nkind
= N_Delay_Alternative
2648 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2649 or else NT
(N
).Nkind
= N_Mod_Clause
2650 or else NT
(N
).Nkind
= N_Terminate_Alternative
2651 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2655 function Pre_Post_Conditions
2656 (N
: Node_Id
) return Node_Id
is
2658 pragma Assert
(False
2659 or else NT
(N
).Nkind
= N_Contract
);
2661 end Pre_Post_Conditions
;
2664 (N
: Node_Id
) return Node_Id
is
2666 pragma Assert
(False
2667 or else NT
(N
).Nkind
= N_Attribute_Reference
2668 or else NT
(N
).Nkind
= N_Expanded_Name
2669 or else NT
(N
).Nkind
= N_Explicit_Dereference
2670 or else NT
(N
).Nkind
= N_Indexed_Component
2671 or else NT
(N
).Nkind
= N_Reference
2672 or else NT
(N
).Nkind
= N_Selected_Component
2673 or else NT
(N
).Nkind
= N_Slice
);
2677 function Premature_Use
2678 (N
: Node_Id
) return Node_Id
is
2680 pragma Assert
(False
2681 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2685 function Present_Expr
2686 (N
: Node_Id
) return Uint
is
2688 pragma Assert
(False
2689 or else NT
(N
).Nkind
= N_Variant
);
2694 (N
: Node_Id
) return Boolean is
2696 pragma Assert
(False
2697 or else NT
(N
).Nkind
= N_Component_Declaration
2698 or else NT
(N
).Nkind
= N_Discriminant_Specification
2699 or else NT
(N
).Nkind
= N_Exception_Declaration
2700 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2701 or else NT
(N
).Nkind
= N_Number_Declaration
2702 or else NT
(N
).Nkind
= N_Object_Declaration
2703 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2707 function Print_In_Hex
2708 (N
: Node_Id
) return Boolean is
2710 pragma Assert
(False
2711 or else NT
(N
).Nkind
= N_Integer_Literal
);
2715 function Private_Declarations
2716 (N
: Node_Id
) return List_Id
is
2718 pragma Assert
(False
2719 or else NT
(N
).Nkind
= N_Package_Specification
2720 or else NT
(N
).Nkind
= N_Protected_Definition
2721 or else NT
(N
).Nkind
= N_Task_Definition
);
2723 end Private_Declarations
;
2725 function Private_Present
2726 (N
: Node_Id
) return Boolean is
2728 pragma Assert
(False
2729 or else NT
(N
).Nkind
= N_Compilation_Unit
2730 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2731 or else NT
(N
).Nkind
= N_With_Clause
);
2733 end Private_Present
;
2735 function Procedure_To_Call
2736 (N
: Node_Id
) return Node_Id
is
2738 pragma Assert
(False
2739 or else NT
(N
).Nkind
= N_Allocator
2740 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2741 or else NT
(N
).Nkind
= N_Free_Statement
2742 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2744 end Procedure_To_Call
;
2746 function Proper_Body
2747 (N
: Node_Id
) return Node_Id
is
2749 pragma Assert
(False
2750 or else NT
(N
).Nkind
= N_Subunit
);
2754 function Protected_Definition
2755 (N
: Node_Id
) return Node_Id
is
2757 pragma Assert
(False
2758 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2759 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2761 end Protected_Definition
;
2763 function Protected_Present
2764 (N
: Node_Id
) return Boolean is
2766 pragma Assert
(False
2767 or else NT
(N
).Nkind
= N_Access_Function_Definition
2768 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2769 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2770 or else NT
(N
).Nkind
= N_Record_Definition
);
2772 end Protected_Present
;
2774 function Raises_Constraint_Error
2775 (N
: Node_Id
) return Boolean is
2777 pragma Assert
(False
2778 or else NT
(N
).Nkind
in N_Subexpr
);
2780 end Raises_Constraint_Error
;
2782 function Range_Constraint
2783 (N
: Node_Id
) return Node_Id
is
2785 pragma Assert
(False
2786 or else NT
(N
).Nkind
= N_Delta_Constraint
2787 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2789 end Range_Constraint
;
2791 function Range_Expression
2792 (N
: Node_Id
) return Node_Id
is
2794 pragma Assert
(False
2795 or else NT
(N
).Nkind
= N_Range_Constraint
);
2797 end Range_Expression
;
2799 function Real_Range_Specification
2800 (N
: Node_Id
) return Node_Id
is
2802 pragma Assert
(False
2803 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2804 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2805 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2807 end Real_Range_Specification
;
2810 (N
: Node_Id
) return Ureal
is
2812 pragma Assert
(False
2813 or else NT
(N
).Nkind
= N_Real_Literal
);
2818 (N
: Node_Id
) return Uint
is
2820 pragma Assert
(False
2821 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2822 or else NT
(N
).Nkind
= N_Raise_Program_Error
2823 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2827 function Record_Extension_Part
2828 (N
: Node_Id
) return Node_Id
is
2830 pragma Assert
(False
2831 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2833 end Record_Extension_Part
;
2835 function Redundant_Use
2836 (N
: Node_Id
) return Boolean is
2838 pragma Assert
(False
2839 or else NT
(N
).Nkind
= N_Attribute_Reference
2840 or else NT
(N
).Nkind
= N_Expanded_Name
2841 or else NT
(N
).Nkind
= N_Identifier
);
2845 function Renaming_Exception
2846 (N
: Node_Id
) return Node_Id
is
2848 pragma Assert
(False
2849 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2851 end Renaming_Exception
;
2853 function Result_Definition
2854 (N
: Node_Id
) return Node_Id
is
2856 pragma Assert
(False
2857 or else NT
(N
).Nkind
= N_Access_Function_Definition
2858 or else NT
(N
).Nkind
= N_Function_Specification
);
2860 end Result_Definition
;
2862 function Return_Object_Declarations
2863 (N
: Node_Id
) return List_Id
is
2865 pragma Assert
(False
2866 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2868 end Return_Object_Declarations
;
2870 function Return_Statement_Entity
2871 (N
: Node_Id
) return Node_Id
is
2873 pragma Assert
(False
2874 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2875 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
2877 end Return_Statement_Entity
;
2879 function Reverse_Present
2880 (N
: Node_Id
) return Boolean is
2882 pragma Assert
(False
2883 or else NT
(N
).Nkind
= N_Iterator_Specification
2884 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
2886 end Reverse_Present
;
2889 (N
: Node_Id
) return Node_Id
is
2891 pragma Assert
(False
2892 or else NT
(N
).Nkind
in N_Op
2893 or else NT
(N
).Nkind
= N_And_Then
2894 or else NT
(N
).Nkind
= N_In
2895 or else NT
(N
).Nkind
= N_Not_In
2896 or else NT
(N
).Nkind
= N_Or_Else
);
2900 function Rounded_Result
2901 (N
: Node_Id
) return Boolean is
2903 pragma Assert
(False
2904 or else NT
(N
).Nkind
= N_Op_Divide
2905 or else NT
(N
).Nkind
= N_Op_Multiply
2906 or else NT
(N
).Nkind
= N_Type_Conversion
);
2910 function SCIL_Controlling_Tag
2911 (N
: Node_Id
) return Node_Id
is
2913 pragma Assert
(False
2914 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2916 end SCIL_Controlling_Tag
;
2918 function SCIL_Entity
2919 (N
: Node_Id
) return Node_Id
is
2921 pragma Assert
(False
2922 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
2923 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
2924 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2928 function SCIL_Tag_Value
2929 (N
: Node_Id
) return Node_Id
is
2931 pragma Assert
(False
2932 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2936 function SCIL_Target_Prim
2937 (N
: Node_Id
) return Node_Id
is
2939 pragma Assert
(False
2940 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2942 end SCIL_Target_Prim
;
2945 (N
: Node_Id
) return Node_Id
is
2947 pragma Assert
(False
2948 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2949 or else NT
(N
).Nkind
= N_Defining_Identifier
2950 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2954 function Select_Alternatives
2955 (N
: Node_Id
) return List_Id
is
2957 pragma Assert
(False
2958 or else NT
(N
).Nkind
= N_Selective_Accept
);
2960 end Select_Alternatives
;
2962 function Selector_Name
2963 (N
: Node_Id
) return Node_Id
is
2965 pragma Assert
(False
2966 or else NT
(N
).Nkind
= N_Expanded_Name
2967 or else NT
(N
).Nkind
= N_Generic_Association
2968 or else NT
(N
).Nkind
= N_Parameter_Association
2969 or else NT
(N
).Nkind
= N_Selected_Component
);
2973 function Selector_Names
2974 (N
: Node_Id
) return List_Id
is
2976 pragma Assert
(False
2977 or else NT
(N
).Nkind
= N_Discriminant_Association
);
2981 function Shift_Count_OK
2982 (N
: Node_Id
) return Boolean is
2984 pragma Assert
(False
2985 or else NT
(N
).Nkind
= N_Op_Rotate_Left
2986 or else NT
(N
).Nkind
= N_Op_Rotate_Right
2987 or else NT
(N
).Nkind
= N_Op_Shift_Left
2988 or else NT
(N
).Nkind
= N_Op_Shift_Right
2989 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
2993 function Source_Type
2994 (N
: Node_Id
) return Entity_Id
is
2996 pragma Assert
(False
2997 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3001 function Specification
3002 (N
: Node_Id
) return Node_Id
is
3004 pragma Assert
(False
3005 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
3006 or else NT
(N
).Nkind
= N_Expression_Function
3007 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3008 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3009 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3010 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3011 or else NT
(N
).Nkind
= N_Package_Declaration
3012 or else NT
(N
).Nkind
= N_Subprogram_Body
3013 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3014 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3015 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3020 (N
: Node_Id
) return Boolean is
3022 pragma Assert
(False
3023 or else NT
(N
).Nkind
= N_Aspect_Specification
3024 or else NT
(N
).Nkind
= N_Pragma
);
3029 (N
: Node_Id
) return List_Id
is
3031 pragma Assert
(False
3032 or else NT
(N
).Nkind
= N_Abortable_Part
3033 or else NT
(N
).Nkind
= N_Accept_Alternative
3034 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3035 or else NT
(N
).Nkind
= N_Delay_Alternative
3036 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
3037 or else NT
(N
).Nkind
= N_Exception_Handler
3038 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
3039 or else NT
(N
).Nkind
= N_Loop_Statement
3040 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3044 function Storage_Pool
3045 (N
: Node_Id
) return Node_Id
is
3047 pragma Assert
(False
3048 or else NT
(N
).Nkind
= N_Allocator
3049 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3050 or else NT
(N
).Nkind
= N_Free_Statement
3051 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3055 function Subpool_Handle_Name
3056 (N
: Node_Id
) return Node_Id
is
3058 pragma Assert
(False
3059 or else NT
(N
).Nkind
= N_Allocator
);
3061 end Subpool_Handle_Name
;
3064 (N
: Node_Id
) return String_Id
is
3066 pragma Assert
(False
3067 or else NT
(N
).Nkind
= N_Operator_Symbol
3068 or else NT
(N
).Nkind
= N_String_Literal
);
3072 function Subtype_Indication
3073 (N
: Node_Id
) return Node_Id
is
3075 pragma Assert
(False
3076 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3077 or else NT
(N
).Nkind
= N_Component_Definition
3078 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3079 or else NT
(N
).Nkind
= N_Iterator_Specification
3080 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3081 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
3083 end Subtype_Indication
;
3085 function Suppress_Assignment_Checks
3086 (N
: Node_Id
) return Boolean is
3088 pragma Assert
(False
3089 or else NT
(N
).Nkind
= N_Assignment_Statement
3090 or else NT
(N
).Nkind
= N_Object_Declaration
);
3092 end Suppress_Assignment_Checks
;
3094 function Suppress_Loop_Warnings
3095 (N
: Node_Id
) return Boolean is
3097 pragma Assert
(False
3098 or else NT
(N
).Nkind
= N_Loop_Statement
);
3100 end Suppress_Loop_Warnings
;
3102 function Subtype_Mark
3103 (N
: Node_Id
) return Node_Id
is
3105 pragma Assert
(False
3106 or else NT
(N
).Nkind
= N_Access_Definition
3107 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3108 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3109 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3110 or else NT
(N
).Nkind
= N_Qualified_Expression
3111 or else NT
(N
).Nkind
= N_Subtype_Indication
3112 or else NT
(N
).Nkind
= N_Type_Conversion
3113 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
3117 function Subtype_Marks
3118 (N
: Node_Id
) return List_Id
is
3120 pragma Assert
(False
3121 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
3122 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3126 function Synchronized_Present
3127 (N
: Node_Id
) return Boolean is
3129 pragma Assert
(False
3130 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3131 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3132 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3133 or else NT
(N
).Nkind
= N_Record_Definition
);
3135 end Synchronized_Present
;
3137 function Tagged_Present
3138 (N
: Node_Id
) return Boolean is
3140 pragma Assert
(False
3141 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
3142 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3143 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3144 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3145 or else NT
(N
).Nkind
= N_Record_Definition
);
3149 function Target_Type
3150 (N
: Node_Id
) return Entity_Id
is
3152 pragma Assert
(False
3153 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3157 function Task_Definition
3158 (N
: Node_Id
) return Node_Id
is
3160 pragma Assert
(False
3161 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3162 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3164 end Task_Definition
;
3166 function Task_Present
3167 (N
: Node_Id
) return Boolean is
3169 pragma Assert
(False
3170 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3171 or else NT
(N
).Nkind
= N_Record_Definition
);
3175 function Then_Actions
3176 (N
: Node_Id
) return List_Id
is
3178 pragma Assert
(False
3179 or else NT
(N
).Nkind
= N_If_Expression
);
3183 function Then_Statements
3184 (N
: Node_Id
) return List_Id
is
3186 pragma Assert
(False
3187 or else NT
(N
).Nkind
= N_Elsif_Part
3188 or else NT
(N
).Nkind
= N_If_Statement
);
3190 end Then_Statements
;
3192 function Treat_Fixed_As_Integer
3193 (N
: Node_Id
) return Boolean is
3195 pragma Assert
(False
3196 or else NT
(N
).Nkind
= N_Op_Divide
3197 or else NT
(N
).Nkind
= N_Op_Mod
3198 or else NT
(N
).Nkind
= N_Op_Multiply
3199 or else NT
(N
).Nkind
= N_Op_Rem
);
3201 end Treat_Fixed_As_Integer
;
3203 function Triggering_Alternative
3204 (N
: Node_Id
) return Node_Id
is
3206 pragma Assert
(False
3207 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3209 end Triggering_Alternative
;
3211 function Triggering_Statement
3212 (N
: Node_Id
) return Node_Id
is
3214 pragma Assert
(False
3215 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3217 end Triggering_Statement
;
3220 (N
: Node_Id
) return Elist_Id
is
3222 pragma Assert
(False
3223 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3227 function Type_Definition
3228 (N
: Node_Id
) return Node_Id
is
3230 pragma Assert
(False
3231 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3233 end Type_Definition
;
3235 function Uneval_Old_Accept
3236 (N
: Node_Id
) return Boolean is
3238 pragma Assert
(False
3239 or else NT
(N
).Nkind
= N_Pragma
);
3241 end Uneval_Old_Accept
;
3243 function Uneval_Old_Warn
3244 (N
: Node_Id
) return Boolean is
3246 pragma Assert
(False
3247 or else NT
(N
).Nkind
= N_Pragma
);
3249 end Uneval_Old_Warn
;
3252 (N
: Node_Id
) return Node_Id
is
3254 pragma Assert
(False
3255 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3259 function Unknown_Discriminants_Present
3260 (N
: Node_Id
) return Boolean is
3262 pragma Assert
(False
3263 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3264 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3265 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3266 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3268 end Unknown_Discriminants_Present
;
3270 function Unreferenced_In_Spec
3271 (N
: Node_Id
) return Boolean is
3273 pragma Assert
(False
3274 or else NT
(N
).Nkind
= N_With_Clause
);
3276 end Unreferenced_In_Spec
;
3278 function Variant_Part
3279 (N
: Node_Id
) return Node_Id
is
3281 pragma Assert
(False
3282 or else NT
(N
).Nkind
= N_Component_List
);
3287 (N
: Node_Id
) return List_Id
is
3289 pragma Assert
(False
3290 or else NT
(N
).Nkind
= N_Variant_Part
);
3294 function Visible_Declarations
3295 (N
: Node_Id
) return List_Id
is
3297 pragma Assert
(False
3298 or else NT
(N
).Nkind
= N_Package_Specification
3299 or else NT
(N
).Nkind
= N_Protected_Definition
3300 or else NT
(N
).Nkind
= N_Task_Definition
);
3302 end Visible_Declarations
;
3304 function Uninitialized_Variable
3305 (N
: Node_Id
) return Node_Id
is
3307 pragma Assert
(False
3308 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3309 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
3311 end Uninitialized_Variable
;
3313 function Used_Operations
3314 (N
: Node_Id
) return Elist_Id
is
3316 pragma Assert
(False
3317 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3319 end Used_Operations
;
3321 function Was_Expression_Function
3322 (N
: Node_Id
) return Boolean is
3324 pragma Assert
(False
3325 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3327 end Was_Expression_Function
;
3329 function Was_Originally_Stub
3330 (N
: Node_Id
) return Boolean is
3332 pragma Assert
(False
3333 or else NT
(N
).Nkind
= N_Package_Body
3334 or else NT
(N
).Nkind
= N_Protected_Body
3335 or else NT
(N
).Nkind
= N_Subprogram_Body
3336 or else NT
(N
).Nkind
= N_Task_Body
);
3338 end Was_Originally_Stub
;
3340 function Withed_Body
3341 (N
: Node_Id
) return Node_Id
is
3343 pragma Assert
(False
3344 or else NT
(N
).Nkind
= N_With_Clause
);
3348 --------------------------
3349 -- Field Set Procedures --
3350 --------------------------
3352 procedure Set_ABE_Is_Certain
3353 (N
: Node_Id
; Val
: Boolean := True) is
3355 pragma Assert
(False
3356 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3357 or else NT
(N
).Nkind
= N_Function_Call
3358 or else NT
(N
).Nkind
= N_Function_Instantiation
3359 or else NT
(N
).Nkind
= N_Package_Instantiation
3360 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
3361 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
3362 Set_Flag18
(N
, Val
);
3363 end Set_ABE_Is_Certain
;
3365 procedure Set_Abort_Present
3366 (N
: Node_Id
; Val
: Boolean := True) is
3368 pragma Assert
(False
3369 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3370 Set_Flag15
(N
, Val
);
3371 end Set_Abort_Present
;
3373 procedure Set_Abortable_Part
3374 (N
: Node_Id
; Val
: Node_Id
) is
3376 pragma Assert
(False
3377 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3378 Set_Node2_With_Parent
(N
, Val
);
3379 end Set_Abortable_Part
;
3381 procedure Set_Abstract_Present
3382 (N
: Node_Id
; Val
: Boolean := True) is
3384 pragma Assert
(False
3385 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3386 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3387 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3388 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3389 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3390 or else NT
(N
).Nkind
= N_Record_Definition
);
3392 end Set_Abstract_Present
;
3394 procedure Set_Accept_Handler_Records
3395 (N
: Node_Id
; Val
: List_Id
) is
3397 pragma Assert
(False
3398 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3399 Set_List5
(N
, Val
); -- semantic field, no parent set
3400 end Set_Accept_Handler_Records
;
3402 procedure Set_Accept_Statement
3403 (N
: Node_Id
; Val
: Node_Id
) is
3405 pragma Assert
(False
3406 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3407 Set_Node2_With_Parent
(N
, Val
);
3408 end Set_Accept_Statement
;
3410 procedure Set_Access_Definition
3411 (N
: Node_Id
; Val
: Node_Id
) is
3413 pragma Assert
(False
3414 or else NT
(N
).Nkind
= N_Component_Definition
3415 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3416 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3417 Set_Node3_With_Parent
(N
, Val
);
3418 end Set_Access_Definition
;
3420 procedure Set_Access_To_Subprogram_Definition
3421 (N
: Node_Id
; Val
: Node_Id
) is
3423 pragma Assert
(False
3424 or else NT
(N
).Nkind
= N_Access_Definition
);
3425 Set_Node3_With_Parent
(N
, Val
);
3426 end Set_Access_To_Subprogram_Definition
;
3428 procedure Set_Access_Types_To_Process
3429 (N
: Node_Id
; Val
: Elist_Id
) is
3431 pragma Assert
(False
3432 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3433 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3434 end Set_Access_Types_To_Process
;
3436 procedure Set_Actions
3437 (N
: Node_Id
; Val
: List_Id
) is
3439 pragma Assert
(False
3440 or else NT
(N
).Nkind
= N_And_Then
3441 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3442 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3443 or else NT
(N
).Nkind
= N_Compound_Statement
3444 or else NT
(N
).Nkind
= N_Expression_With_Actions
3445 or else NT
(N
).Nkind
= N_Freeze_Entity
3446 or else NT
(N
).Nkind
= N_Or_Else
);
3447 Set_List1_With_Parent
(N
, Val
);
3450 procedure Set_Activation_Chain_Entity
3451 (N
: Node_Id
; Val
: Node_Id
) is
3453 pragma Assert
(False
3454 or else NT
(N
).Nkind
= N_Block_Statement
3455 or else NT
(N
).Nkind
= N_Entry_Body
3456 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3457 or else NT
(N
).Nkind
= N_Package_Declaration
3458 or else NT
(N
).Nkind
= N_Subprogram_Body
3459 or else NT
(N
).Nkind
= N_Task_Body
);
3460 Set_Node3
(N
, Val
); -- semantic field, no parent set
3461 end Set_Activation_Chain_Entity
;
3463 procedure Set_Acts_As_Spec
3464 (N
: Node_Id
; Val
: Boolean := True) is
3466 pragma Assert
(False
3467 or else NT
(N
).Nkind
= N_Compilation_Unit
3468 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3470 end Set_Acts_As_Spec
;
3472 procedure Set_Actual_Designated_Subtype
3473 (N
: Node_Id
; Val
: Node_Id
) is
3475 pragma Assert
(False
3476 or else NT
(N
).Nkind
= N_Explicit_Dereference
3477 or else NT
(N
).Nkind
= N_Free_Statement
);
3479 end Set_Actual_Designated_Subtype
;
3481 procedure Set_Address_Warning_Posted
3482 (N
: Node_Id
; Val
: Boolean := True) is
3484 pragma Assert
(False
3485 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3486 Set_Flag18
(N
, Val
);
3487 end Set_Address_Warning_Posted
;
3489 procedure Set_Aggregate_Bounds
3490 (N
: Node_Id
; Val
: Node_Id
) is
3492 pragma Assert
(False
3493 or else NT
(N
).Nkind
= N_Aggregate
);
3494 Set_Node3
(N
, Val
); -- semantic field, no parent set
3495 end Set_Aggregate_Bounds
;
3497 procedure Set_Aliased_Present
3498 (N
: Node_Id
; Val
: Boolean := True) is
3500 pragma Assert
(False
3501 or else NT
(N
).Nkind
= N_Component_Definition
3502 or else NT
(N
).Nkind
= N_Object_Declaration
3503 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3505 end Set_Aliased_Present
;
3507 procedure Set_All_Others
3508 (N
: Node_Id
; Val
: Boolean := True) is
3510 pragma Assert
(False
3511 or else NT
(N
).Nkind
= N_Others_Choice
);
3512 Set_Flag11
(N
, Val
);
3515 procedure Set_All_Present
3516 (N
: Node_Id
; Val
: Boolean := True) is
3518 pragma Assert
(False
3519 or else NT
(N
).Nkind
= N_Access_Definition
3520 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3521 or else NT
(N
).Nkind
= N_Quantified_Expression
3522 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3523 Set_Flag15
(N
, Val
);
3524 end Set_All_Present
;
3526 procedure Set_Alternatives
3527 (N
: Node_Id
; Val
: List_Id
) is
3529 pragma Assert
(False
3530 or else NT
(N
).Nkind
= N_Case_Expression
3531 or else NT
(N
).Nkind
= N_Case_Statement
3532 or else NT
(N
).Nkind
= N_In
3533 or else NT
(N
).Nkind
= N_Not_In
);
3534 Set_List4_With_Parent
(N
, Val
);
3535 end Set_Alternatives
;
3537 procedure Set_Ancestor_Part
3538 (N
: Node_Id
; Val
: Node_Id
) is
3540 pragma Assert
(False
3541 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3542 Set_Node3_With_Parent
(N
, Val
);
3543 end Set_Ancestor_Part
;
3545 procedure Set_Atomic_Sync_Required
3546 (N
: Node_Id
; Val
: Boolean := True) is
3548 pragma Assert
(False
3549 or else NT
(N
).Nkind
= N_Expanded_Name
3550 or else NT
(N
).Nkind
= N_Explicit_Dereference
3551 or else NT
(N
).Nkind
= N_Identifier
3552 or else NT
(N
).Nkind
= N_Indexed_Component
3553 or else NT
(N
).Nkind
= N_Selected_Component
);
3554 Set_Flag14
(N
, Val
);
3555 end Set_Atomic_Sync_Required
;
3557 procedure Set_Array_Aggregate
3558 (N
: Node_Id
; Val
: Node_Id
) is
3560 pragma Assert
(False
3561 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3562 Set_Node3_With_Parent
(N
, Val
);
3563 end Set_Array_Aggregate
;
3565 procedure Set_Aspect_Rep_Item
3566 (N
: Node_Id
; Val
: Node_Id
) is
3568 pragma Assert
(False
3569 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3571 end Set_Aspect_Rep_Item
;
3573 procedure Set_Assignment_OK
3574 (N
: Node_Id
; Val
: Boolean := True) is
3576 pragma Assert
(False
3577 or else NT
(N
).Nkind
= N_Object_Declaration
3578 or else NT
(N
).Nkind
in N_Subexpr
);
3579 Set_Flag15
(N
, Val
);
3580 end Set_Assignment_OK
;
3582 procedure Set_Associated_Node
3583 (N
: Node_Id
; Val
: Node_Id
) is
3585 pragma Assert
(False
3586 or else NT
(N
).Nkind
in N_Has_Entity
3587 or else NT
(N
).Nkind
= N_Aggregate
3588 or else NT
(N
).Nkind
= N_Extension_Aggregate
3589 or else NT
(N
).Nkind
= N_Selected_Component
);
3590 Set_Node4
(N
, Val
); -- semantic field, no parent set
3591 end Set_Associated_Node
;
3593 procedure Set_At_End_Proc
3594 (N
: Node_Id
; Val
: Node_Id
) is
3596 pragma Assert
(False
3597 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3599 end Set_At_End_Proc
;
3601 procedure Set_Attribute_Name
3602 (N
: Node_Id
; Val
: Name_Id
) is
3604 pragma Assert
(False
3605 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3607 end Set_Attribute_Name
;
3609 procedure Set_Aux_Decls_Node
3610 (N
: Node_Id
; Val
: Node_Id
) is
3612 pragma Assert
(False
3613 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3614 Set_Node5_With_Parent
(N
, Val
);
3615 end Set_Aux_Decls_Node
;
3617 procedure Set_Backwards_OK
3618 (N
: Node_Id
; Val
: Boolean := True) is
3620 pragma Assert
(False
3621 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3623 end Set_Backwards_OK
;
3625 procedure Set_Bad_Is_Detected
3626 (N
: Node_Id
; Val
: Boolean := True) is
3628 pragma Assert
(False
3629 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3630 Set_Flag15
(N
, Val
);
3631 end Set_Bad_Is_Detected
;
3633 procedure Set_Body_Required
3634 (N
: Node_Id
; Val
: Boolean := True) is
3636 pragma Assert
(False
3637 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3638 Set_Flag13
(N
, Val
);
3639 end Set_Body_Required
;
3641 procedure Set_Body_To_Inline
3642 (N
: Node_Id
; Val
: Node_Id
) is
3644 pragma Assert
(False
3645 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3647 end Set_Body_To_Inline
;
3649 procedure Set_Box_Present
3650 (N
: Node_Id
; Val
: Boolean := True) is
3652 pragma Assert
(False
3653 or else NT
(N
).Nkind
= N_Component_Association
3654 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3655 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3656 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3657 or else NT
(N
).Nkind
= N_Generic_Association
);
3658 Set_Flag15
(N
, Val
);
3659 end Set_Box_Present
;
3661 procedure Set_By_Ref
3662 (N
: Node_Id
; Val
: Boolean := True) is
3664 pragma Assert
(False
3665 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3666 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3670 procedure Set_Char_Literal_Value
3671 (N
: Node_Id
; Val
: Uint
) is
3673 pragma Assert
(False
3674 or else NT
(N
).Nkind
= N_Character_Literal
);
3676 end Set_Char_Literal_Value
;
3679 (N
: Node_Id
; Val
: Name_Id
) is
3681 pragma Assert
(False
3682 or else NT
(N
).Nkind
in N_Has_Chars
);
3686 procedure Set_Check_Address_Alignment
3687 (N
: Node_Id
; Val
: Boolean := True) is
3689 pragma Assert
(False
3690 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3691 Set_Flag11
(N
, Val
);
3692 end Set_Check_Address_Alignment
;
3694 procedure Set_Choice_Parameter
3695 (N
: Node_Id
; Val
: Node_Id
) is
3697 pragma Assert
(False
3698 or else NT
(N
).Nkind
= N_Exception_Handler
);
3699 Set_Node2_With_Parent
(N
, Val
);
3700 end Set_Choice_Parameter
;
3702 procedure Set_Choices
3703 (N
: Node_Id
; Val
: List_Id
) is
3705 pragma Assert
(False
3706 or else NT
(N
).Nkind
= N_Component_Association
);
3707 Set_List1_With_Parent
(N
, Val
);
3710 procedure Set_Class_Present
3711 (N
: Node_Id
; Val
: Boolean := True) is
3713 pragma Assert
(False
3714 or else NT
(N
).Nkind
= N_Aspect_Specification
3715 or else NT
(N
).Nkind
= N_Pragma
);
3717 end Set_Class_Present
;
3719 procedure Set_Classifications
3720 (N
: Node_Id
; Val
: Node_Id
) is
3722 pragma Assert
(False
3723 or else NT
(N
).Nkind
= N_Contract
);
3724 Set_Node3
(N
, Val
); -- semantic field, no parent set
3725 end Set_Classifications
;
3727 procedure Set_Cleanup_Actions
3728 (N
: Node_Id
; Val
: List_Id
) is
3730 pragma Assert
(False
3731 or else NT
(N
).Nkind
= N_Block_Statement
);
3732 Set_List5
(N
, Val
); -- semantic field, no parent set
3733 end Set_Cleanup_Actions
;
3735 procedure Set_Comes_From_Extended_Return_Statement
3736 (N
: Node_Id
; Val
: Boolean := True) is
3738 pragma Assert
(False
3739 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
3740 Set_Flag18
(N
, Val
);
3741 end Set_Comes_From_Extended_Return_Statement
;
3743 procedure Set_Compile_Time_Known_Aggregate
3744 (N
: Node_Id
; Val
: Boolean := True) is
3746 pragma Assert
(False
3747 or else NT
(N
).Nkind
= N_Aggregate
);
3748 Set_Flag18
(N
, Val
);
3749 end Set_Compile_Time_Known_Aggregate
;
3751 procedure Set_Component_Associations
3752 (N
: Node_Id
; Val
: List_Id
) is
3754 pragma Assert
(False
3755 or else NT
(N
).Nkind
= N_Aggregate
3756 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3757 Set_List2_With_Parent
(N
, Val
);
3758 end Set_Component_Associations
;
3760 procedure Set_Component_Clauses
3761 (N
: Node_Id
; Val
: List_Id
) is
3763 pragma Assert
(False
3764 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3765 Set_List3_With_Parent
(N
, Val
);
3766 end Set_Component_Clauses
;
3768 procedure Set_Component_Definition
3769 (N
: Node_Id
; Val
: Node_Id
) is
3771 pragma Assert
(False
3772 or else NT
(N
).Nkind
= N_Component_Declaration
3773 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3774 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3775 Set_Node4_With_Parent
(N
, Val
);
3776 end Set_Component_Definition
;
3778 procedure Set_Component_Items
3779 (N
: Node_Id
; Val
: List_Id
) is
3781 pragma Assert
(False
3782 or else NT
(N
).Nkind
= N_Component_List
);
3783 Set_List3_With_Parent
(N
, Val
);
3784 end Set_Component_Items
;
3786 procedure Set_Component_List
3787 (N
: Node_Id
; Val
: Node_Id
) is
3789 pragma Assert
(False
3790 or else NT
(N
).Nkind
= N_Record_Definition
3791 or else NT
(N
).Nkind
= N_Variant
);
3792 Set_Node1_With_Parent
(N
, Val
);
3793 end Set_Component_List
;
3795 procedure Set_Component_Name
3796 (N
: Node_Id
; Val
: Node_Id
) is
3798 pragma Assert
(False
3799 or else NT
(N
).Nkind
= N_Component_Clause
);
3800 Set_Node1_With_Parent
(N
, Val
);
3801 end Set_Component_Name
;
3803 procedure Set_Componentwise_Assignment
3804 (N
: Node_Id
; Val
: Boolean := True) is
3806 pragma Assert
(False
3807 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3808 Set_Flag14
(N
, Val
);
3809 end Set_Componentwise_Assignment
;
3811 procedure Set_Condition
3812 (N
: Node_Id
; Val
: Node_Id
) is
3814 pragma Assert
(False
3815 or else NT
(N
).Nkind
= N_Accept_Alternative
3816 or else NT
(N
).Nkind
= N_Delay_Alternative
3817 or else NT
(N
).Nkind
= N_Elsif_Part
3818 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3819 or else NT
(N
).Nkind
= N_Exit_Statement
3820 or else NT
(N
).Nkind
= N_If_Statement
3821 or else NT
(N
).Nkind
= N_Iteration_Scheme
3822 or else NT
(N
).Nkind
= N_Quantified_Expression
3823 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3824 or else NT
(N
).Nkind
= N_Raise_Program_Error
3825 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3826 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3827 Set_Node1_With_Parent
(N
, Val
);
3830 procedure Set_Condition_Actions
3831 (N
: Node_Id
; Val
: List_Id
) is
3833 pragma Assert
(False
3834 or else NT
(N
).Nkind
= N_Elsif_Part
3835 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3836 Set_List3
(N
, Val
); -- semantic field, no parent set
3837 end Set_Condition_Actions
;
3839 procedure Set_Config_Pragmas
3840 (N
: Node_Id
; Val
: List_Id
) is
3842 pragma Assert
(False
3843 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3844 Set_List4_With_Parent
(N
, Val
);
3845 end Set_Config_Pragmas
;
3847 procedure Set_Constant_Present
3848 (N
: Node_Id
; Val
: Boolean := True) is
3850 pragma Assert
(False
3851 or else NT
(N
).Nkind
= N_Access_Definition
3852 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3853 or else NT
(N
).Nkind
= N_Object_Declaration
);
3854 Set_Flag17
(N
, Val
);
3855 end Set_Constant_Present
;
3857 procedure Set_Constraint
3858 (N
: Node_Id
; Val
: Node_Id
) is
3860 pragma Assert
(False
3861 or else NT
(N
).Nkind
= N_Subtype_Indication
);
3862 Set_Node3_With_Parent
(N
, Val
);
3865 procedure Set_Constraints
3866 (N
: Node_Id
; Val
: List_Id
) is
3868 pragma Assert
(False
3869 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
3870 Set_List1_With_Parent
(N
, Val
);
3871 end Set_Constraints
;
3873 procedure Set_Context_Installed
3874 (N
: Node_Id
; Val
: Boolean := True) is
3876 pragma Assert
(False
3877 or else NT
(N
).Nkind
= N_With_Clause
);
3878 Set_Flag13
(N
, Val
);
3879 end Set_Context_Installed
;
3881 procedure Set_Context_Items
3882 (N
: Node_Id
; Val
: List_Id
) is
3884 pragma Assert
(False
3885 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3886 Set_List1_With_Parent
(N
, Val
);
3887 end Set_Context_Items
;
3889 procedure Set_Context_Pending
3890 (N
: Node_Id
; Val
: Boolean := True) is
3892 pragma Assert
(False
3893 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3894 Set_Flag16
(N
, Val
);
3895 end Set_Context_Pending
;
3897 procedure Set_Contract_Test_Cases
3898 (N
: Node_Id
; Val
: Node_Id
) is
3900 pragma Assert
(False
3901 or else NT
(N
).Nkind
= N_Contract
);
3902 Set_Node2
(N
, Val
); -- semantic field, no parent set
3903 end Set_Contract_Test_Cases
;
3905 procedure Set_Controlling_Argument
3906 (N
: Node_Id
; Val
: Node_Id
) is
3908 pragma Assert
(False
3909 or else NT
(N
).Nkind
= N_Function_Call
3910 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
3911 Set_Node1
(N
, Val
); -- semantic field, no parent set
3912 end Set_Controlling_Argument
;
3914 procedure Set_Conversion_OK
3915 (N
: Node_Id
; Val
: Boolean := True) is
3917 pragma Assert
(False
3918 or else NT
(N
).Nkind
= N_Type_Conversion
);
3919 Set_Flag14
(N
, Val
);
3920 end Set_Conversion_OK
;
3922 procedure Set_Convert_To_Return_False
3923 (N
: Node_Id
; Val
: Boolean := True) is
3925 pragma Assert
(False
3926 or else NT
(N
).Nkind
= N_Raise_Expression
);
3927 Set_Flag13
(N
, Val
);
3928 end Set_Convert_To_Return_False
;
3930 procedure Set_Corresponding_Aspect
3931 (N
: Node_Id
; Val
: Node_Id
) is
3933 pragma Assert
(False
3934 or else NT
(N
).Nkind
= N_Pragma
);
3936 end Set_Corresponding_Aspect
;
3938 procedure Set_Corresponding_Body
3939 (N
: Node_Id
; Val
: Node_Id
) is
3941 pragma Assert
(False
3942 or else NT
(N
).Nkind
= N_Entry_Declaration
3943 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3944 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3945 or else NT
(N
).Nkind
= N_Package_Body_Stub
3946 or else NT
(N
).Nkind
= N_Package_Declaration
3947 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3948 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3949 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3950 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3951 or else NT
(N
).Nkind
= N_Task_Body_Stub
3952 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3953 Set_Node5
(N
, Val
); -- semantic field, no parent set
3954 end Set_Corresponding_Body
;
3956 procedure Set_Corresponding_Formal_Spec
3957 (N
: Node_Id
; Val
: Node_Id
) is
3959 pragma Assert
(False
3960 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3961 Set_Node3
(N
, Val
); -- semantic field, no parent set
3962 end Set_Corresponding_Formal_Spec
;
3964 procedure Set_Corresponding_Generic_Association
3965 (N
: Node_Id
; Val
: Node_Id
) is
3967 pragma Assert
(False
3968 or else NT
(N
).Nkind
= N_Object_Declaration
3969 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3970 Set_Node5
(N
, Val
); -- semantic field, no parent set
3971 end Set_Corresponding_Generic_Association
;
3973 procedure Set_Corresponding_Integer_Value
3974 (N
: Node_Id
; Val
: Uint
) is
3976 pragma Assert
(False
3977 or else NT
(N
).Nkind
= N_Real_Literal
);
3978 Set_Uint4
(N
, Val
); -- semantic field, no parent set
3979 end Set_Corresponding_Integer_Value
;
3981 procedure Set_Corresponding_Spec
3982 (N
: Node_Id
; Val
: Entity_Id
) is
3984 pragma Assert
(False
3985 or else NT
(N
).Nkind
= N_Expression_Function
3986 or else NT
(N
).Nkind
= N_Package_Body
3987 or else NT
(N
).Nkind
= N_Protected_Body
3988 or else NT
(N
).Nkind
= N_Subprogram_Body
3989 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
3990 or else NT
(N
).Nkind
= N_Task_Body
3991 or else NT
(N
).Nkind
= N_With_Clause
);
3992 Set_Node5
(N
, Val
); -- semantic field, no parent set
3993 end Set_Corresponding_Spec
;
3995 procedure Set_Corresponding_Spec_Of_Stub
3996 (N
: Node_Id
; Val
: Entity_Id
) is
3998 pragma Assert
(False
3999 or else NT
(N
).Nkind
= N_Package_Body_Stub
4000 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4001 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
4002 or else NT
(N
).Nkind
= N_Task_Body_Stub
);
4003 Set_Node2
(N
, Val
); -- semantic field, no parent set
4004 end Set_Corresponding_Spec_Of_Stub
;
4006 procedure Set_Corresponding_Stub
4007 (N
: Node_Id
; Val
: Node_Id
) is
4009 pragma Assert
(False
4010 or else NT
(N
).Nkind
= N_Subunit
);
4012 end Set_Corresponding_Stub
;
4014 procedure Set_Dcheck_Function
4015 (N
: Node_Id
; Val
: Entity_Id
) is
4017 pragma Assert
(False
4018 or else NT
(N
).Nkind
= N_Variant
);
4019 Set_Node5
(N
, Val
); -- semantic field, no parent set
4020 end Set_Dcheck_Function
;
4022 procedure Set_Declarations
4023 (N
: Node_Id
; Val
: List_Id
) is
4025 pragma Assert
(False
4026 or else NT
(N
).Nkind
= N_Accept_Statement
4027 or else NT
(N
).Nkind
= N_Block_Statement
4028 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
4029 or else NT
(N
).Nkind
= N_Entry_Body
4030 or else NT
(N
).Nkind
= N_Package_Body
4031 or else NT
(N
).Nkind
= N_Protected_Body
4032 or else NT
(N
).Nkind
= N_Subprogram_Body
4033 or else NT
(N
).Nkind
= N_Task_Body
);
4034 Set_List2_With_Parent
(N
, Val
);
4035 end Set_Declarations
;
4037 procedure Set_Default_Expression
4038 (N
: Node_Id
; Val
: Node_Id
) is
4040 pragma Assert
(False
4041 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4042 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4043 Set_Node5
(N
, Val
); -- semantic field, no parent set
4044 end Set_Default_Expression
;
4046 procedure Set_Default_Storage_Pool
4047 (N
: Node_Id
; Val
: Node_Id
) is
4049 pragma Assert
(False
4050 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
4051 Set_Node3
(N
, Val
); -- semantic field, no parent set
4052 end Set_Default_Storage_Pool
;
4054 procedure Set_Default_Name
4055 (N
: Node_Id
; Val
: Node_Id
) is
4057 pragma Assert
(False
4058 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
4059 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
4060 Set_Node2_With_Parent
(N
, Val
);
4061 end Set_Default_Name
;
4063 procedure Set_Defining_Identifier
4064 (N
: Node_Id
; Val
: Entity_Id
) is
4066 pragma Assert
(False
4067 or else NT
(N
).Nkind
= N_Component_Declaration
4068 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
4069 or else NT
(N
).Nkind
= N_Discriminant_Specification
4070 or else NT
(N
).Nkind
= N_Entry_Body
4071 or else NT
(N
).Nkind
= N_Entry_Declaration
4072 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4073 or else NT
(N
).Nkind
= N_Exception_Declaration
4074 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
4075 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4076 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4077 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4078 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4079 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
4080 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4081 or else NT
(N
).Nkind
= N_Iterator_Specification
4082 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
4083 or else NT
(N
).Nkind
= N_Number_Declaration
4084 or else NT
(N
).Nkind
= N_Object_Declaration
4085 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
4086 or else NT
(N
).Nkind
= N_Package_Body_Stub
4087 or else NT
(N
).Nkind
= N_Parameter_Specification
4088 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4089 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4090 or else NT
(N
).Nkind
= N_Protected_Body
4091 or else NT
(N
).Nkind
= N_Protected_Body_Stub
4092 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4093 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4094 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4095 or else NT
(N
).Nkind
= N_Subtype_Declaration
4096 or else NT
(N
).Nkind
= N_Task_Body
4097 or else NT
(N
).Nkind
= N_Task_Body_Stub
4098 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4099 Set_Node1_With_Parent
(N
, Val
);
4100 end Set_Defining_Identifier
;
4102 procedure Set_Defining_Unit_Name
4103 (N
: Node_Id
; Val
: Node_Id
) is
4105 pragma Assert
(False
4106 or else NT
(N
).Nkind
= N_Function_Instantiation
4107 or else NT
(N
).Nkind
= N_Function_Specification
4108 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
4109 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
4110 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
4111 or else NT
(N
).Nkind
= N_Package_Body
4112 or else NT
(N
).Nkind
= N_Package_Instantiation
4113 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
4114 or else NT
(N
).Nkind
= N_Package_Specification
4115 or else NT
(N
).Nkind
= N_Procedure_Instantiation
4116 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4117 Set_Node1_With_Parent
(N
, Val
);
4118 end Set_Defining_Unit_Name
;
4120 procedure Set_Delay_Alternative
4121 (N
: Node_Id
; Val
: Node_Id
) is
4123 pragma Assert
(False
4124 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4125 Set_Node4_With_Parent
(N
, Val
);
4126 end Set_Delay_Alternative
;
4128 procedure Set_Delay_Statement
4129 (N
: Node_Id
; Val
: Node_Id
) is
4131 pragma Assert
(False
4132 or else NT
(N
).Nkind
= N_Delay_Alternative
);
4133 Set_Node2_With_Parent
(N
, Val
);
4134 end Set_Delay_Statement
;
4136 procedure Set_Delta_Expression
4137 (N
: Node_Id
; Val
: Node_Id
) is
4139 pragma Assert
(False
4140 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4141 or else NT
(N
).Nkind
= N_Delta_Constraint
4142 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
4143 Set_Node3_With_Parent
(N
, Val
);
4144 end Set_Delta_Expression
;
4146 procedure Set_Digits_Expression
4147 (N
: Node_Id
; Val
: Node_Id
) is
4149 pragma Assert
(False
4150 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
4151 or else NT
(N
).Nkind
= N_Digits_Constraint
4152 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
4153 Set_Node2_With_Parent
(N
, Val
);
4154 end Set_Digits_Expression
;
4156 procedure Set_Discr_Check_Funcs_Built
4157 (N
: Node_Id
; Val
: Boolean := True) is
4159 pragma Assert
(False
4160 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
4161 Set_Flag11
(N
, Val
);
4162 end Set_Discr_Check_Funcs_Built
;
4164 procedure Set_Discrete_Choices
4165 (N
: Node_Id
; Val
: List_Id
) is
4167 pragma Assert
(False
4168 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4169 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4170 or else NT
(N
).Nkind
= N_Variant
);
4171 Set_List4_With_Parent
(N
, Val
);
4172 end Set_Discrete_Choices
;
4174 procedure Set_Discrete_Range
4175 (N
: Node_Id
; Val
: Node_Id
) is
4177 pragma Assert
(False
4178 or else NT
(N
).Nkind
= N_Slice
);
4179 Set_Node4_With_Parent
(N
, Val
);
4180 end Set_Discrete_Range
;
4182 procedure Set_Discrete_Subtype_Definition
4183 (N
: Node_Id
; Val
: Node_Id
) is
4185 pragma Assert
(False
4186 or else NT
(N
).Nkind
= N_Entry_Declaration
4187 or else NT
(N
).Nkind
= N_Entry_Index_Specification
4188 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
4189 Set_Node4_With_Parent
(N
, Val
);
4190 end Set_Discrete_Subtype_Definition
;
4192 procedure Set_Discrete_Subtype_Definitions
4193 (N
: Node_Id
; Val
: List_Id
) is
4195 pragma Assert
(False
4196 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
4197 Set_List2_With_Parent
(N
, Val
);
4198 end Set_Discrete_Subtype_Definitions
;
4200 procedure Set_Discriminant_Specifications
4201 (N
: Node_Id
; Val
: List_Id
) is
4203 pragma Assert
(False
4204 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
4205 or else NT
(N
).Nkind
= N_Full_Type_Declaration
4206 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
4207 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4208 or else NT
(N
).Nkind
= N_Private_Type_Declaration
4209 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4210 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4211 Set_List4_With_Parent
(N
, Val
);
4212 end Set_Discriminant_Specifications
;
4214 procedure Set_Discriminant_Type
4215 (N
: Node_Id
; Val
: Node_Id
) is
4217 pragma Assert
(False
4218 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
4219 Set_Node5_With_Parent
(N
, Val
);
4220 end Set_Discriminant_Type
;
4222 procedure Set_Do_Accessibility_Check
4223 (N
: Node_Id
; Val
: Boolean := True) is
4225 pragma Assert
(False
4226 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4227 Set_Flag13
(N
, Val
);
4228 end Set_Do_Accessibility_Check
;
4230 procedure Set_Do_Discriminant_Check
4231 (N
: Node_Id
; Val
: Boolean := True) is
4233 pragma Assert
(False
4234 or else NT
(N
).Nkind
= N_Assignment_Statement
4235 or else NT
(N
).Nkind
= N_Selected_Component
4236 or else NT
(N
).Nkind
= N_Type_Conversion
);
4238 end Set_Do_Discriminant_Check
;
4240 procedure Set_Do_Division_Check
4241 (N
: Node_Id
; Val
: Boolean := True) is
4243 pragma Assert
(False
4244 or else NT
(N
).Nkind
= N_Op_Divide
4245 or else NT
(N
).Nkind
= N_Op_Mod
4246 or else NT
(N
).Nkind
= N_Op_Rem
);
4247 Set_Flag13
(N
, Val
);
4248 end Set_Do_Division_Check
;
4250 procedure Set_Do_Length_Check
4251 (N
: Node_Id
; Val
: Boolean := True) is
4253 pragma Assert
(False
4254 or else NT
(N
).Nkind
= N_Assignment_Statement
4255 or else NT
(N
).Nkind
= N_Op_And
4256 or else NT
(N
).Nkind
= N_Op_Or
4257 or else NT
(N
).Nkind
= N_Op_Xor
4258 or else NT
(N
).Nkind
= N_Type_Conversion
);
4260 end Set_Do_Length_Check
;
4262 procedure Set_Do_Overflow_Check
4263 (N
: Node_Id
; Val
: Boolean := True) is
4265 pragma Assert
(False
4266 or else NT
(N
).Nkind
in N_Op
4267 or else NT
(N
).Nkind
= N_Attribute_Reference
4268 or else NT
(N
).Nkind
= N_Case_Expression
4269 or else NT
(N
).Nkind
= N_If_Expression
4270 or else NT
(N
).Nkind
= N_Type_Conversion
);
4271 Set_Flag17
(N
, Val
);
4272 end Set_Do_Overflow_Check
;
4274 procedure Set_Do_Range_Check
4275 (N
: Node_Id
; Val
: Boolean := True) is
4277 pragma Assert
(False
4278 or else NT
(N
).Nkind
in N_Subexpr
);
4280 end Set_Do_Range_Check
;
4282 procedure Set_Do_Storage_Check
4283 (N
: Node_Id
; Val
: Boolean := True) is
4285 pragma Assert
(False
4286 or else NT
(N
).Nkind
= N_Allocator
4287 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4288 Set_Flag17
(N
, Val
);
4289 end Set_Do_Storage_Check
;
4291 procedure Set_Do_Tag_Check
4292 (N
: Node_Id
; Val
: Boolean := True) is
4294 pragma Assert
(False
4295 or else NT
(N
).Nkind
= N_Assignment_Statement
4296 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4297 or else NT
(N
).Nkind
= N_Function_Call
4298 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4299 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4300 or else NT
(N
).Nkind
= N_Type_Conversion
);
4301 Set_Flag13
(N
, Val
);
4302 end Set_Do_Tag_Check
;
4304 procedure Set_Elaborate_All_Desirable
4305 (N
: Node_Id
; Val
: Boolean := True) is
4307 pragma Assert
(False
4308 or else NT
(N
).Nkind
= N_With_Clause
);
4310 end Set_Elaborate_All_Desirable
;
4312 procedure Set_Elaborate_All_Present
4313 (N
: Node_Id
; Val
: Boolean := True) is
4315 pragma Assert
(False
4316 or else NT
(N
).Nkind
= N_With_Clause
);
4317 Set_Flag14
(N
, Val
);
4318 end Set_Elaborate_All_Present
;
4320 procedure Set_Elaborate_Desirable
4321 (N
: Node_Id
; Val
: Boolean := True) is
4323 pragma Assert
(False
4324 or else NT
(N
).Nkind
= N_With_Clause
);
4325 Set_Flag11
(N
, Val
);
4326 end Set_Elaborate_Desirable
;
4328 procedure Set_Elaborate_Present
4329 (N
: Node_Id
; Val
: Boolean := True) is
4331 pragma Assert
(False
4332 or else NT
(N
).Nkind
= N_With_Clause
);
4334 end Set_Elaborate_Present
;
4336 procedure Set_Else_Actions
4337 (N
: Node_Id
; Val
: List_Id
) is
4339 pragma Assert
(False
4340 or else NT
(N
).Nkind
= N_If_Expression
);
4341 Set_List3_With_Parent
(N
, Val
); -- semantic field, but needs parents
4342 end Set_Else_Actions
;
4344 procedure Set_Else_Statements
4345 (N
: Node_Id
; Val
: List_Id
) is
4347 pragma Assert
(False
4348 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4349 or else NT
(N
).Nkind
= N_If_Statement
4350 or else NT
(N
).Nkind
= N_Selective_Accept
);
4351 Set_List4_With_Parent
(N
, Val
);
4352 end Set_Else_Statements
;
4354 procedure Set_Elsif_Parts
4355 (N
: Node_Id
; Val
: List_Id
) is
4357 pragma Assert
(False
4358 or else NT
(N
).Nkind
= N_If_Statement
);
4359 Set_List3_With_Parent
(N
, Val
);
4360 end Set_Elsif_Parts
;
4362 procedure Set_Enclosing_Variant
4363 (N
: Node_Id
; Val
: Node_Id
) is
4365 pragma Assert
(False
4366 or else NT
(N
).Nkind
= N_Variant
);
4367 Set_Node2
(N
, Val
); -- semantic field, no parent set
4368 end Set_Enclosing_Variant
;
4370 procedure Set_End_Label
4371 (N
: Node_Id
; Val
: Node_Id
) is
4373 pragma Assert
(False
4374 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4375 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4376 or else NT
(N
).Nkind
= N_Loop_Statement
4377 or else NT
(N
).Nkind
= N_Package_Specification
4378 or else NT
(N
).Nkind
= N_Protected_Body
4379 or else NT
(N
).Nkind
= N_Protected_Definition
4380 or else NT
(N
).Nkind
= N_Record_Definition
4381 or else NT
(N
).Nkind
= N_Task_Definition
);
4382 Set_Node4_With_Parent
(N
, Val
);
4385 procedure Set_End_Span
4386 (N
: Node_Id
; Val
: Uint
) is
4388 pragma Assert
(False
4389 or else NT
(N
).Nkind
= N_Case_Statement
4390 or else NT
(N
).Nkind
= N_If_Statement
);
4394 procedure Set_Entity
4395 (N
: Node_Id
; Val
: Node_Id
) is
4397 pragma Assert
(False
4398 or else NT
(N
).Nkind
in N_Has_Entity
4399 or else NT
(N
).Nkind
= N_Aspect_Specification
4400 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4401 or else NT
(N
).Nkind
= N_Freeze_Entity
4402 or else NT
(N
).Nkind
= N_Freeze_Generic_Entity
);
4403 Set_Node4
(N
, Val
); -- semantic field, no parent set
4406 procedure Set_Entry_Body_Formal_Part
4407 (N
: Node_Id
; Val
: Node_Id
) is
4409 pragma Assert
(False
4410 or else NT
(N
).Nkind
= N_Entry_Body
);
4411 Set_Node5_With_Parent
(N
, Val
);
4412 end Set_Entry_Body_Formal_Part
;
4414 procedure Set_Entry_Call_Alternative
4415 (N
: Node_Id
; Val
: Node_Id
) is
4417 pragma Assert
(False
4418 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4419 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4420 Set_Node1_With_Parent
(N
, Val
);
4421 end Set_Entry_Call_Alternative
;
4423 procedure Set_Entry_Call_Statement
4424 (N
: Node_Id
; Val
: Node_Id
) is
4426 pragma Assert
(False
4427 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4428 Set_Node1_With_Parent
(N
, Val
);
4429 end Set_Entry_Call_Statement
;
4431 procedure Set_Entry_Direct_Name
4432 (N
: Node_Id
; Val
: Node_Id
) is
4434 pragma Assert
(False
4435 or else NT
(N
).Nkind
= N_Accept_Statement
);
4436 Set_Node1_With_Parent
(N
, Val
);
4437 end Set_Entry_Direct_Name
;
4439 procedure Set_Entry_Index
4440 (N
: Node_Id
; Val
: Node_Id
) is
4442 pragma Assert
(False
4443 or else NT
(N
).Nkind
= N_Accept_Statement
);
4444 Set_Node5_With_Parent
(N
, Val
);
4445 end Set_Entry_Index
;
4447 procedure Set_Entry_Index_Specification
4448 (N
: Node_Id
; Val
: Node_Id
) is
4450 pragma Assert
(False
4451 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4452 Set_Node4_With_Parent
(N
, Val
);
4453 end Set_Entry_Index_Specification
;
4456 (N
: Node_Id
; Val
: Node_Id
) is
4458 pragma Assert
(False
4459 or else NT
(N
).Nkind
in N_Has_Etype
);
4460 Set_Node5
(N
, Val
); -- semantic field, no parent set
4463 procedure Set_Exception_Choices
4464 (N
: Node_Id
; Val
: List_Id
) is
4466 pragma Assert
(False
4467 or else NT
(N
).Nkind
= N_Exception_Handler
);
4468 Set_List4_With_Parent
(N
, Val
);
4469 end Set_Exception_Choices
;
4471 procedure Set_Exception_Handlers
4472 (N
: Node_Id
; Val
: List_Id
) is
4474 pragma Assert
(False
4475 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4476 Set_List5_With_Parent
(N
, Val
);
4477 end Set_Exception_Handlers
;
4479 procedure Set_Exception_Junk
4480 (N
: Node_Id
; Val
: Boolean := True) is
4482 pragma Assert
(False
4483 or else NT
(N
).Nkind
= N_Block_Statement
4484 or else NT
(N
).Nkind
= N_Goto_Statement
4485 or else NT
(N
).Nkind
= N_Label
4486 or else NT
(N
).Nkind
= N_Object_Declaration
4487 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4489 end Set_Exception_Junk
;
4491 procedure Set_Exception_Label
4492 (N
: Node_Id
; Val
: Node_Id
) is
4494 pragma Assert
(False
4495 or else NT
(N
).Nkind
= N_Exception_Handler
4496 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4497 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4498 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4499 Set_Node5
(N
, Val
); -- semantic field, no parent set
4500 end Set_Exception_Label
;
4502 procedure Set_Expansion_Delayed
4503 (N
: Node_Id
; Val
: Boolean := True) is
4505 pragma Assert
(False
4506 or else NT
(N
).Nkind
= N_Aggregate
4507 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4508 Set_Flag11
(N
, Val
);
4509 end Set_Expansion_Delayed
;
4511 procedure Set_Explicit_Actual_Parameter
4512 (N
: Node_Id
; Val
: Node_Id
) is
4514 pragma Assert
(False
4515 or else NT
(N
).Nkind
= N_Parameter_Association
);
4516 Set_Node3_With_Parent
(N
, Val
);
4517 end Set_Explicit_Actual_Parameter
;
4519 procedure Set_Explicit_Generic_Actual_Parameter
4520 (N
: Node_Id
; Val
: Node_Id
) is
4522 pragma Assert
(False
4523 or else NT
(N
).Nkind
= N_Generic_Association
);
4524 Set_Node1_With_Parent
(N
, Val
);
4525 end Set_Explicit_Generic_Actual_Parameter
;
4527 procedure Set_Expression
4528 (N
: Node_Id
; Val
: Node_Id
) is
4530 pragma Assert
(False
4531 or else NT
(N
).Nkind
= N_Allocator
4532 or else NT
(N
).Nkind
= N_Aspect_Specification
4533 or else NT
(N
).Nkind
= N_Assignment_Statement
4534 or else NT
(N
).Nkind
= N_At_Clause
4535 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4536 or else NT
(N
).Nkind
= N_Case_Expression
4537 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4538 or else NT
(N
).Nkind
= N_Case_Statement
4539 or else NT
(N
).Nkind
= N_Code_Statement
4540 or else NT
(N
).Nkind
= N_Component_Association
4541 or else NT
(N
).Nkind
= N_Component_Declaration
4542 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4543 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4544 or else NT
(N
).Nkind
= N_Discriminant_Association
4545 or else NT
(N
).Nkind
= N_Discriminant_Specification
4546 or else NT
(N
).Nkind
= N_Exception_Declaration
4547 or else NT
(N
).Nkind
= N_Expression_Function
4548 or else NT
(N
).Nkind
= N_Expression_With_Actions
4549 or else NT
(N
).Nkind
= N_Free_Statement
4550 or else NT
(N
).Nkind
= N_Mod_Clause
4551 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4552 or else NT
(N
).Nkind
= N_Number_Declaration
4553 or else NT
(N
).Nkind
= N_Object_Declaration
4554 or else NT
(N
).Nkind
= N_Parameter_Specification
4555 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4556 or else NT
(N
).Nkind
= N_Qualified_Expression
4557 or else NT
(N
).Nkind
= N_Raise_Expression
4558 or else NT
(N
).Nkind
= N_Raise_Statement
4559 or else NT
(N
).Nkind
= N_Simple_Return_Statement
4560 or else NT
(N
).Nkind
= N_Type_Conversion
4561 or else NT
(N
).Nkind
= N_Unchecked_Expression
4562 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4563 Set_Node3_With_Parent
(N
, Val
);
4566 procedure Set_Expression_Copy
4567 (N
: Node_Id
; Val
: Node_Id
) is
4569 pragma Assert
(False
4570 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
);
4571 Set_Node2
(N
, Val
); -- semantic field, no parent set
4572 end Set_Expression_Copy
;
4574 procedure Set_Expressions
4575 (N
: Node_Id
; Val
: List_Id
) is
4577 pragma Assert
(False
4578 or else NT
(N
).Nkind
= N_Aggregate
4579 or else NT
(N
).Nkind
= N_Attribute_Reference
4580 or else NT
(N
).Nkind
= N_Extension_Aggregate
4581 or else NT
(N
).Nkind
= N_If_Expression
4582 or else NT
(N
).Nkind
= N_Indexed_Component
);
4583 Set_List1_With_Parent
(N
, Val
);
4584 end Set_Expressions
;
4586 procedure Set_First_Bit
4587 (N
: Node_Id
; Val
: Node_Id
) is
4589 pragma Assert
(False
4590 or else NT
(N
).Nkind
= N_Component_Clause
);
4591 Set_Node3_With_Parent
(N
, Val
);
4594 procedure Set_First_Inlined_Subprogram
4595 (N
: Node_Id
; Val
: Entity_Id
) is
4597 pragma Assert
(False
4598 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4599 Set_Node3
(N
, Val
); -- semantic field, no parent set
4600 end Set_First_Inlined_Subprogram
;
4602 procedure Set_First_Name
4603 (N
: Node_Id
; Val
: Boolean := True) is
4605 pragma Assert
(False
4606 or else NT
(N
).Nkind
= N_With_Clause
);
4610 procedure Set_First_Named_Actual
4611 (N
: Node_Id
; Val
: Node_Id
) is
4613 pragma Assert
(False
4614 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4615 or else NT
(N
).Nkind
= N_Function_Call
4616 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4617 Set_Node4
(N
, Val
); -- semantic field, no parent set
4618 end Set_First_Named_Actual
;
4620 procedure Set_First_Real_Statement
4621 (N
: Node_Id
; Val
: Node_Id
) is
4623 pragma Assert
(False
4624 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4625 Set_Node2
(N
, Val
); -- semantic field, no parent set
4626 end Set_First_Real_Statement
;
4628 procedure Set_First_Subtype_Link
4629 (N
: Node_Id
; Val
: Entity_Id
) is
4631 pragma Assert
(False
4632 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4633 Set_Node5
(N
, Val
); -- semantic field, no parent set
4634 end Set_First_Subtype_Link
;
4636 procedure Set_Float_Truncate
4637 (N
: Node_Id
; Val
: Boolean := True) is
4639 pragma Assert
(False
4640 or else NT
(N
).Nkind
= N_Type_Conversion
);
4641 Set_Flag11
(N
, Val
);
4642 end Set_Float_Truncate
;
4644 procedure Set_Formal_Type_Definition
4645 (N
: Node_Id
; Val
: Node_Id
) is
4647 pragma Assert
(False
4648 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4649 Set_Node3_With_Parent
(N
, Val
);
4650 end Set_Formal_Type_Definition
;
4652 procedure Set_Forwards_OK
4653 (N
: Node_Id
; Val
: Boolean := True) is
4655 pragma Assert
(False
4656 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4658 end Set_Forwards_OK
;
4660 procedure Set_From_Aspect_Specification
4661 (N
: Node_Id
; Val
: Boolean := True) is
4663 pragma Assert
(False
4664 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4665 or else NT
(N
).Nkind
= N_Pragma
);
4666 Set_Flag13
(N
, Val
);
4667 end Set_From_Aspect_Specification
;
4669 procedure Set_From_At_End
4670 (N
: Node_Id
; Val
: Boolean := True) is
4672 pragma Assert
(False
4673 or else NT
(N
).Nkind
= N_Raise_Statement
);
4675 end Set_From_At_End
;
4677 procedure Set_From_At_Mod
4678 (N
: Node_Id
; Val
: Boolean := True) is
4680 pragma Assert
(False
4681 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4683 end Set_From_At_Mod
;
4685 procedure Set_From_Conditional_Expression
4686 (N
: Node_Id
; Val
: Boolean := True) is
4688 pragma Assert
(False
4689 or else NT
(N
).Nkind
= N_Case_Statement
4690 or else NT
(N
).Nkind
= N_If_Statement
);
4692 end Set_From_Conditional_Expression
;
4694 procedure Set_From_Default
4695 (N
: Node_Id
; Val
: Boolean := True) is
4697 pragma Assert
(False
4698 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4700 end Set_From_Default
;
4702 procedure Set_Generalized_Indexing
4703 (N
: Node_Id
; Val
: Node_Id
) is
4705 pragma Assert
(False
4706 or else NT
(N
).Nkind
= N_Indexed_Component
);
4708 end Set_Generalized_Indexing
;
4710 procedure Set_Generic_Associations
4711 (N
: Node_Id
; Val
: List_Id
) is
4713 pragma Assert
(False
4714 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4715 or else NT
(N
).Nkind
= N_Function_Instantiation
4716 or else NT
(N
).Nkind
= N_Package_Instantiation
4717 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4718 Set_List3_With_Parent
(N
, Val
);
4719 end Set_Generic_Associations
;
4721 procedure Set_Generic_Formal_Declarations
4722 (N
: Node_Id
; Val
: List_Id
) is
4724 pragma Assert
(False
4725 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4726 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4727 Set_List2_With_Parent
(N
, Val
);
4728 end Set_Generic_Formal_Declarations
;
4730 procedure Set_Generic_Parent
4731 (N
: Node_Id
; Val
: Node_Id
) is
4733 pragma Assert
(False
4734 or else NT
(N
).Nkind
= N_Function_Specification
4735 or else NT
(N
).Nkind
= N_Package_Specification
4736 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4738 end Set_Generic_Parent
;
4740 procedure Set_Generic_Parent_Type
4741 (N
: Node_Id
; Val
: Node_Id
) is
4743 pragma Assert
(False
4744 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4746 end Set_Generic_Parent_Type
;
4748 procedure Set_Handled_Statement_Sequence
4749 (N
: Node_Id
; Val
: Node_Id
) is
4751 pragma Assert
(False
4752 or else NT
(N
).Nkind
= N_Accept_Statement
4753 or else NT
(N
).Nkind
= N_Block_Statement
4754 or else NT
(N
).Nkind
= N_Entry_Body
4755 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4756 or else NT
(N
).Nkind
= N_Package_Body
4757 or else NT
(N
).Nkind
= N_Subprogram_Body
4758 or else NT
(N
).Nkind
= N_Task_Body
);
4759 Set_Node4_With_Parent
(N
, Val
);
4760 end Set_Handled_Statement_Sequence
;
4762 procedure Set_Handler_List_Entry
4763 (N
: Node_Id
; Val
: Node_Id
) is
4765 pragma Assert
(False
4766 or else NT
(N
).Nkind
= N_Object_Declaration
);
4768 end Set_Handler_List_Entry
;
4770 procedure Set_Has_Created_Identifier
4771 (N
: Node_Id
; Val
: Boolean := True) is
4773 pragma Assert
(False
4774 or else NT
(N
).Nkind
= N_Block_Statement
4775 or else NT
(N
).Nkind
= N_Loop_Statement
);
4776 Set_Flag15
(N
, Val
);
4777 end Set_Has_Created_Identifier
;
4779 procedure Set_Has_Dereference_Action
4780 (N
: Node_Id
; Val
: Boolean := True) is
4782 pragma Assert
(False
4783 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4784 Set_Flag13
(N
, Val
);
4785 end Set_Has_Dereference_Action
;
4787 procedure Set_Has_Dynamic_Length_Check
4788 (N
: Node_Id
; Val
: Boolean := True) is
4790 pragma Assert
(False
4791 or else NT
(N
).Nkind
in N_Subexpr
);
4792 Set_Flag10
(N
, Val
);
4793 end Set_Has_Dynamic_Length_Check
;
4795 procedure Set_Has_Dynamic_Range_Check
4796 (N
: Node_Id
; Val
: Boolean := True) is
4798 pragma Assert
(False
4799 or else NT
(N
).Nkind
= N_Subtype_Declaration
4800 or else NT
(N
).Nkind
in N_Subexpr
);
4801 Set_Flag12
(N
, Val
);
4802 end Set_Has_Dynamic_Range_Check
;
4804 procedure Set_Has_Init_Expression
4805 (N
: Node_Id
; Val
: Boolean := True) is
4807 pragma Assert
(False
4808 or else NT
(N
).Nkind
= N_Object_Declaration
);
4809 Set_Flag14
(N
, Val
);
4810 end Set_Has_Init_Expression
;
4812 procedure Set_Has_Local_Raise
4813 (N
: Node_Id
; Val
: Boolean := True) is
4815 pragma Assert
(False
4816 or else NT
(N
).Nkind
= N_Exception_Handler
);
4818 end Set_Has_Local_Raise
;
4820 procedure Set_Has_No_Elaboration_Code
4821 (N
: Node_Id
; Val
: Boolean := True) is
4823 pragma Assert
(False
4824 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4825 Set_Flag17
(N
, Val
);
4826 end Set_Has_No_Elaboration_Code
;
4828 procedure Set_Has_Pragma_Suppress_All
4829 (N
: Node_Id
; Val
: Boolean := True) is
4831 pragma Assert
(False
4832 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4833 Set_Flag14
(N
, Val
);
4834 end Set_Has_Pragma_Suppress_All
;
4836 procedure Set_Has_Private_View
4837 (N
: Node_Id
; Val
: Boolean := True) is
4839 pragma Assert
(False
4840 or else NT
(N
).Nkind
in N_Op
4841 or else NT
(N
).Nkind
= N_Character_Literal
4842 or else NT
(N
).Nkind
= N_Expanded_Name
4843 or else NT
(N
).Nkind
= N_Identifier
4844 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4845 Set_Flag11
(N
, Val
);
4846 end Set_Has_Private_View
;
4848 procedure Set_Has_Relative_Deadline_Pragma
4849 (N
: Node_Id
; Val
: Boolean := True) is
4851 pragma Assert
(False
4852 or else NT
(N
).Nkind
= N_Subprogram_Body
4853 or else NT
(N
).Nkind
= N_Task_Definition
);
4855 end Set_Has_Relative_Deadline_Pragma
;
4857 procedure Set_Has_Self_Reference
4858 (N
: Node_Id
; Val
: Boolean := True) is
4860 pragma Assert
(False
4861 or else NT
(N
).Nkind
= N_Aggregate
4862 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4863 Set_Flag13
(N
, Val
);
4864 end Set_Has_Self_Reference
;
4866 procedure Set_Has_SP_Choice
4867 (N
: Node_Id
; Val
: Boolean := True) is
4869 pragma Assert
(False
4870 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4871 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
4872 or else NT
(N
).Nkind
= N_Variant
);
4873 Set_Flag15
(N
, Val
);
4874 end Set_Has_SP_Choice
;
4876 procedure Set_Has_Storage_Size_Pragma
4877 (N
: Node_Id
; Val
: Boolean := True) is
4879 pragma Assert
(False
4880 or else NT
(N
).Nkind
= N_Task_Definition
);
4882 end Set_Has_Storage_Size_Pragma
;
4884 procedure Set_Has_Wide_Character
4885 (N
: Node_Id
; Val
: Boolean := True) is
4887 pragma Assert
(False
4888 or else NT
(N
).Nkind
= N_String_Literal
);
4889 Set_Flag11
(N
, Val
);
4890 end Set_Has_Wide_Character
;
4892 procedure Set_Has_Wide_Wide_Character
4893 (N
: Node_Id
; Val
: Boolean := True) is
4895 pragma Assert
(False
4896 or else NT
(N
).Nkind
= N_String_Literal
);
4897 Set_Flag13
(N
, Val
);
4898 end Set_Has_Wide_Wide_Character
;
4900 procedure Set_Header_Size_Added
4901 (N
: Node_Id
; Val
: Boolean := True) is
4903 pragma Assert
(False
4904 or else NT
(N
).Nkind
= N_Attribute_Reference
);
4905 Set_Flag11
(N
, Val
);
4906 end Set_Header_Size_Added
;
4908 procedure Set_Hidden_By_Use_Clause
4909 (N
: Node_Id
; Val
: Elist_Id
) is
4911 pragma Assert
(False
4912 or else NT
(N
).Nkind
= N_Use_Package_Clause
4913 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
4914 Set_Elist4
(N
, Val
);
4915 end Set_Hidden_By_Use_Clause
;
4917 procedure Set_High_Bound
4918 (N
: Node_Id
; Val
: Node_Id
) is
4920 pragma Assert
(False
4921 or else NT
(N
).Nkind
= N_Range
4922 or else NT
(N
).Nkind
= N_Real_Range_Specification
4923 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
4924 Set_Node2_With_Parent
(N
, Val
);
4927 procedure Set_Identifier
4928 (N
: Node_Id
; Val
: Node_Id
) is
4930 pragma Assert
(False
4931 or else NT
(N
).Nkind
= N_Aspect_Specification
4932 or else NT
(N
).Nkind
= N_At_Clause
4933 or else NT
(N
).Nkind
= N_Block_Statement
4934 or else NT
(N
).Nkind
= N_Designator
4935 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
4936 or else NT
(N
).Nkind
= N_Label
4937 or else NT
(N
).Nkind
= N_Loop_Statement
4938 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
4939 Set_Node1_With_Parent
(N
, Val
);
4942 procedure Set_Implicit_With
4943 (N
: Node_Id
; Val
: Boolean := True) is
4945 pragma Assert
(False
4946 or else NT
(N
).Nkind
= N_With_Clause
);
4947 Set_Flag16
(N
, Val
);
4948 end Set_Implicit_With
;
4950 procedure Set_Implicit_With_From_Instantiation
4951 (N
: Node_Id
; Val
: Boolean := True) is
4953 pragma Assert
(False
4954 or else NT
(N
).Nkind
= N_With_Clause
);
4955 Set_Flag12
(N
, Val
);
4956 end Set_Implicit_With_From_Instantiation
;
4958 procedure Set_Interface_List
4959 (N
: Node_Id
; Val
: List_Id
) is
4961 pragma Assert
(False
4962 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4963 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
4964 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4965 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4966 or else NT
(N
).Nkind
= N_Record_Definition
4967 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4968 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4969 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4970 Set_List2_With_Parent
(N
, Val
);
4971 end Set_Interface_List
;
4973 procedure Set_Interface_Present
4974 (N
: Node_Id
; Val
: Boolean := True) is
4976 pragma Assert
(False
4977 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4978 or else NT
(N
).Nkind
= N_Record_Definition
);
4979 Set_Flag16
(N
, Val
);
4980 end Set_Interface_Present
;
4982 procedure Set_Import_Interface_Present
4983 (N
: Node_Id
; Val
: Boolean := True) is
4985 pragma Assert
(False
4986 or else NT
(N
).Nkind
= N_Pragma
);
4987 Set_Flag16
(N
, Val
);
4988 end Set_Import_Interface_Present
;
4990 procedure Set_In_Present
4991 (N
: Node_Id
; Val
: Boolean := True) is
4993 pragma Assert
(False
4994 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4995 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4996 Set_Flag15
(N
, Val
);
4999 procedure Set_Includes_Infinities
5000 (N
: Node_Id
; Val
: Boolean := True) is
5002 pragma Assert
(False
5003 or else NT
(N
).Nkind
= N_Range
);
5004 Set_Flag11
(N
, Val
);
5005 end Set_Includes_Infinities
;
5007 procedure Set_Incomplete_View
5008 (N
: Node_Id
; Val
: Node_Id
) is
5010 pragma Assert
(False
5011 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
5012 Set_Node2
(N
, Val
); -- semantic field, no Parent set
5013 end Set_Incomplete_View
;
5015 procedure Set_Inherited_Discriminant
5016 (N
: Node_Id
; Val
: Boolean := True) is
5018 pragma Assert
(False
5019 or else NT
(N
).Nkind
= N_Component_Association
);
5020 Set_Flag13
(N
, Val
);
5021 end Set_Inherited_Discriminant
;
5023 procedure Set_Instance_Spec
5024 (N
: Node_Id
; Val
: Node_Id
) is
5026 pragma Assert
(False
5027 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5028 or else NT
(N
).Nkind
= N_Function_Instantiation
5029 or else NT
(N
).Nkind
= N_Package_Instantiation
5030 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
5031 Set_Node5
(N
, Val
); -- semantic field, no Parent set
5032 end Set_Instance_Spec
;
5034 procedure Set_Intval
5035 (N
: Node_Id
; Val
: Uint
) is
5037 pragma Assert
(False
5038 or else NT
(N
).Nkind
= N_Integer_Literal
);
5042 procedure Set_Is_Abort_Block
5043 (N
: Node_Id
; Val
: Boolean := True) is
5045 pragma Assert
(False
5046 or else NT
(N
).Nkind
= N_Block_Statement
);
5048 end Set_Is_Abort_Block
;
5050 procedure Set_Is_Accessibility_Actual
5051 (N
: Node_Id
; Val
: Boolean := True) is
5053 pragma Assert
(False
5054 or else NT
(N
).Nkind
= N_Parameter_Association
);
5055 Set_Flag13
(N
, Val
);
5056 end Set_Is_Accessibility_Actual
;
5058 procedure Set_Is_Analyzed_Pragma
5059 (N
: Node_Id
; Val
: Boolean := True) is
5061 pragma Assert
(False
5062 or else NT
(N
).Nkind
= N_Pragma
);
5064 end Set_Is_Analyzed_Pragma
;
5066 procedure Set_Is_Asynchronous_Call_Block
5067 (N
: Node_Id
; Val
: Boolean := True) is
5069 pragma Assert
(False
5070 or else NT
(N
).Nkind
= N_Block_Statement
);
5072 end Set_Is_Asynchronous_Call_Block
;
5074 procedure Set_Is_Boolean_Aspect
5075 (N
: Node_Id
; Val
: Boolean := True) is
5077 pragma Assert
(False
5078 or else NT
(N
).Nkind
= N_Aspect_Specification
);
5079 Set_Flag16
(N
, Val
);
5080 end Set_Is_Boolean_Aspect
;
5082 procedure Set_Is_Checked
5083 (N
: Node_Id
; Val
: Boolean := True) is
5085 pragma Assert
(False
5086 or else NT
(N
).Nkind
= N_Aspect_Specification
5087 or else NT
(N
).Nkind
= N_Pragma
);
5088 Set_Flag11
(N
, Val
);
5091 procedure Set_Is_Component_Left_Opnd
5092 (N
: Node_Id
; Val
: Boolean := True) is
5094 pragma Assert
(False
5095 or else NT
(N
).Nkind
= N_Op_Concat
);
5096 Set_Flag13
(N
, Val
);
5097 end Set_Is_Component_Left_Opnd
;
5099 procedure Set_Is_Component_Right_Opnd
5100 (N
: Node_Id
; Val
: Boolean := True) is
5102 pragma Assert
(False
5103 or else NT
(N
).Nkind
= N_Op_Concat
);
5104 Set_Flag14
(N
, Val
);
5105 end Set_Is_Component_Right_Opnd
;
5107 procedure Set_Is_Controlling_Actual
5108 (N
: Node_Id
; Val
: Boolean := True) is
5110 pragma Assert
(False
5111 or else NT
(N
).Nkind
in N_Subexpr
);
5112 Set_Flag16
(N
, Val
);
5113 end Set_Is_Controlling_Actual
;
5115 procedure Set_Is_Delayed_Aspect
5116 (N
: Node_Id
; Val
: Boolean := True) is
5118 pragma Assert
(False
5119 or else NT
(N
).Nkind
= N_Aspect_Specification
5120 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5121 or else NT
(N
).Nkind
= N_Pragma
);
5122 Set_Flag14
(N
, Val
);
5123 end Set_Is_Delayed_Aspect
;
5125 procedure Set_Is_Disabled
5126 (N
: Node_Id
; Val
: Boolean := True) is
5128 pragma Assert
(False
5129 or else NT
(N
).Nkind
= N_Aspect_Specification
5130 or else NT
(N
).Nkind
= N_Pragma
);
5131 Set_Flag15
(N
, Val
);
5132 end Set_Is_Disabled
;
5134 procedure Set_Is_Dynamic_Coextension
5135 (N
: Node_Id
; Val
: Boolean := True) is
5137 pragma Assert
(False
5138 or else NT
(N
).Nkind
= N_Allocator
);
5139 Set_Flag18
(N
, Val
);
5140 end Set_Is_Dynamic_Coextension
;
5142 procedure Set_Is_Elsif
5143 (N
: Node_Id
; Val
: Boolean := True) is
5145 pragma Assert
(False
5146 or else NT
(N
).Nkind
= N_If_Expression
);
5147 Set_Flag13
(N
, Val
);
5150 procedure Set_Is_Entry_Barrier_Function
5151 (N
: Node_Id
; Val
: Boolean := True) is
5153 pragma Assert
(False
5154 or else NT
(N
).Nkind
= N_Subprogram_Body
5155 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5157 end Set_Is_Entry_Barrier_Function
;
5159 procedure Set_Is_Expanded_Build_In_Place_Call
5160 (N
: Node_Id
; Val
: Boolean := True) is
5162 pragma Assert
(False
5163 or else NT
(N
).Nkind
= N_Function_Call
);
5164 Set_Flag11
(N
, Val
);
5165 end Set_Is_Expanded_Build_In_Place_Call
;
5167 procedure Set_Is_Expanded_Contract
5168 (N
: Node_Id
; Val
: Boolean := True) is
5170 pragma Assert
(False
5171 or else NT
(N
).Nkind
= N_Contract
);
5173 end Set_Is_Expanded_Contract
;
5175 procedure Set_Is_Finalization_Wrapper
5176 (N
: Node_Id
; Val
: Boolean := True) is
5178 pragma Assert
(False
5179 or else NT
(N
).Nkind
= N_Block_Statement
);
5181 end Set_Is_Finalization_Wrapper
;
5183 procedure Set_Is_Folded_In_Parser
5184 (N
: Node_Id
; Val
: Boolean := True) is
5186 pragma Assert
(False
5187 or else NT
(N
).Nkind
= N_String_Literal
);
5189 end Set_Is_Folded_In_Parser
;
5191 procedure Set_Is_Generic_Contract_Pragma
5192 (N
: Node_Id
; Val
: Boolean := True) is
5194 pragma Assert
(False
5195 or else NT
(N
).Nkind
= N_Pragma
);
5197 end Set_Is_Generic_Contract_Pragma
;
5199 procedure Set_Is_Ghost_Pragma
5200 (N
: Node_Id
; Val
: Boolean := True) is
5202 pragma Assert
(False
5203 or else NT
(N
).Nkind
= N_Pragma
);
5205 end Set_Is_Ghost_Pragma
;
5207 procedure Set_Is_Ignored
5208 (N
: Node_Id
; Val
: Boolean := True) is
5210 pragma Assert
(False
5211 or else NT
(N
).Nkind
= N_Aspect_Specification
5212 or else NT
(N
).Nkind
= N_Pragma
);
5216 procedure Set_Is_In_Discriminant_Check
5217 (N
: Node_Id
; Val
: Boolean := True) is
5219 pragma Assert
(False
5220 or else NT
(N
).Nkind
= N_Selected_Component
);
5221 Set_Flag11
(N
, Val
);
5222 end Set_Is_In_Discriminant_Check
;
5224 procedure Set_Is_Inherited_Pragma
5225 (N
: Node_Id
; Val
: Boolean := True) is
5227 pragma Assert
(False
5228 or else NT
(N
).Nkind
= N_Pragma
);
5230 end Set_Is_Inherited_Pragma
;
5232 procedure Set_Is_Machine_Number
5233 (N
: Node_Id
; Val
: Boolean := True) is
5235 pragma Assert
(False
5236 or else NT
(N
).Nkind
= N_Real_Literal
);
5237 Set_Flag11
(N
, Val
);
5238 end Set_Is_Machine_Number
;
5240 procedure Set_Is_Null_Loop
5241 (N
: Node_Id
; Val
: Boolean := True) is
5243 pragma Assert
(False
5244 or else NT
(N
).Nkind
= N_Loop_Statement
);
5245 Set_Flag16
(N
, Val
);
5246 end Set_Is_Null_Loop
;
5248 procedure Set_Is_Overloaded
5249 (N
: Node_Id
; Val
: Boolean := True) is
5251 pragma Assert
(False
5252 or else NT
(N
).Nkind
in N_Subexpr
);
5254 end Set_Is_Overloaded
;
5256 procedure Set_Is_Power_Of_2_For_Shift
5257 (N
: Node_Id
; Val
: Boolean := True) is
5259 pragma Assert
(False
5260 or else NT
(N
).Nkind
= N_Op_Expon
);
5261 Set_Flag13
(N
, Val
);
5262 end Set_Is_Power_Of_2_For_Shift
;
5264 procedure Set_Is_Prefixed_Call
5265 (N
: Node_Id
; Val
: Boolean := True) is
5267 pragma Assert
(False
5268 or else NT
(N
).Nkind
= N_Selected_Component
);
5269 Set_Flag17
(N
, Val
);
5270 end Set_Is_Prefixed_Call
;
5272 procedure Set_Is_Protected_Subprogram_Body
5273 (N
: Node_Id
; Val
: Boolean := True) is
5275 pragma Assert
(False
5276 or else NT
(N
).Nkind
= N_Subprogram_Body
);
5278 end Set_Is_Protected_Subprogram_Body
;
5280 procedure Set_Is_Qualified_Universal_Literal
5281 (N
: Node_Id
; Val
: Boolean := True) is
5283 pragma Assert
(False
5284 or else NT
(N
).Nkind
= N_Qualified_Expression
);
5286 end Set_Is_Qualified_Universal_Literal
;
5288 procedure Set_Is_Static_Coextension
5289 (N
: Node_Id
; Val
: Boolean := True) is
5291 pragma Assert
(False
5292 or else NT
(N
).Nkind
= N_Allocator
);
5293 Set_Flag14
(N
, Val
);
5294 end Set_Is_Static_Coextension
;
5296 procedure Set_Is_Static_Expression
5297 (N
: Node_Id
; Val
: Boolean := True) is
5299 pragma Assert
(False
5300 or else NT
(N
).Nkind
in N_Subexpr
);
5302 end Set_Is_Static_Expression
;
5304 procedure Set_Is_Subprogram_Descriptor
5305 (N
: Node_Id
; Val
: Boolean := True) is
5307 pragma Assert
(False
5308 or else NT
(N
).Nkind
= N_Object_Declaration
);
5309 Set_Flag16
(N
, Val
);
5310 end Set_Is_Subprogram_Descriptor
;
5312 procedure Set_Is_Task_Allocation_Block
5313 (N
: Node_Id
; Val
: Boolean := True) is
5315 pragma Assert
(False
5316 or else NT
(N
).Nkind
= N_Block_Statement
);
5318 end Set_Is_Task_Allocation_Block
;
5320 procedure Set_Is_Task_Body_Procedure
5321 (N
: Node_Id
; Val
: Boolean := True) is
5323 pragma Assert
(False
5324 or else NT
(N
).Nkind
= N_Subprogram_Body
5325 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
5327 end Set_Is_Task_Body_Procedure
;
5329 procedure Set_Is_Task_Master
5330 (N
: Node_Id
; Val
: Boolean := True) is
5332 pragma Assert
(False
5333 or else NT
(N
).Nkind
= N_Block_Statement
5334 or else NT
(N
).Nkind
= N_Subprogram_Body
5335 or else NT
(N
).Nkind
= N_Task_Body
);
5337 end Set_Is_Task_Master
;
5339 procedure Set_Iteration_Scheme
5340 (N
: Node_Id
; Val
: Node_Id
) is
5342 pragma Assert
(False
5343 or else NT
(N
).Nkind
= N_Loop_Statement
);
5344 Set_Node2_With_Parent
(N
, Val
);
5345 end Set_Iteration_Scheme
;
5347 procedure Set_Iterator_Specification
5348 (N
: Node_Id
; Val
: Node_Id
) is
5350 pragma Assert
(False
5351 or else NT
(N
).Nkind
= N_Iteration_Scheme
5352 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5353 Set_Node2_With_Parent
(N
, Val
);
5354 end Set_Iterator_Specification
;
5357 (N
: Node_Id
; Val
: Entity_Id
) is
5359 pragma Assert
(False
5360 or else NT
(N
).Nkind
= N_Itype_Reference
);
5361 Set_Node1
(N
, Val
); -- no parent, semantic field
5364 procedure Set_Kill_Range_Check
5365 (N
: Node_Id
; Val
: Boolean := True) is
5367 pragma Assert
(False
5368 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5369 Set_Flag11
(N
, Val
);
5370 end Set_Kill_Range_Check
;
5372 procedure Set_Label_Construct
5373 (N
: Node_Id
; Val
: Node_Id
) is
5375 pragma Assert
(False
5376 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5377 Set_Node2
(N
, Val
); -- semantic field, no parent set
5378 end Set_Label_Construct
;
5380 procedure Set_Last_Bit
5381 (N
: Node_Id
; Val
: Node_Id
) is
5383 pragma Assert
(False
5384 or else NT
(N
).Nkind
= N_Component_Clause
);
5385 Set_Node4_With_Parent
(N
, Val
);
5388 procedure Set_Last_Name
5389 (N
: Node_Id
; Val
: Boolean := True) is
5391 pragma Assert
(False
5392 or else NT
(N
).Nkind
= N_With_Clause
);
5396 procedure Set_Left_Opnd
5397 (N
: Node_Id
; Val
: Node_Id
) is
5399 pragma Assert
(False
5400 or else NT
(N
).Nkind
= N_And_Then
5401 or else NT
(N
).Nkind
= N_In
5402 or else NT
(N
).Nkind
= N_Not_In
5403 or else NT
(N
).Nkind
= N_Or_Else
5404 or else NT
(N
).Nkind
in N_Binary_Op
);
5405 Set_Node2_With_Parent
(N
, Val
);
5408 procedure Set_Library_Unit
5409 (N
: Node_Id
; Val
: Node_Id
) is
5411 pragma Assert
(False
5412 or else NT
(N
).Nkind
= N_Compilation_Unit
5413 or else NT
(N
).Nkind
= N_Package_Body_Stub
5414 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5415 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5416 or else NT
(N
).Nkind
= N_Task_Body_Stub
5417 or else NT
(N
).Nkind
= N_With_Clause
);
5418 Set_Node4
(N
, Val
); -- semantic field, no parent set
5419 end Set_Library_Unit
;
5421 procedure Set_Limited_View_Installed
5422 (N
: Node_Id
; Val
: Boolean := True) is
5424 pragma Assert
(False
5425 or else NT
(N
).Nkind
= N_Package_Specification
5426 or else NT
(N
).Nkind
= N_With_Clause
);
5427 Set_Flag18
(N
, Val
);
5428 end Set_Limited_View_Installed
;
5430 procedure Set_Limited_Present
5431 (N
: Node_Id
; Val
: Boolean := True) is
5433 pragma Assert
(False
5434 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5435 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5436 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5437 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5438 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5439 or else NT
(N
).Nkind
= N_Record_Definition
5440 or else NT
(N
).Nkind
= N_With_Clause
);
5441 Set_Flag17
(N
, Val
);
5442 end Set_Limited_Present
;
5444 procedure Set_Literals
5445 (N
: Node_Id
; Val
: List_Id
) is
5447 pragma Assert
(False
5448 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5449 Set_List1_With_Parent
(N
, Val
);
5452 procedure Set_Local_Raise_Not_OK
5453 (N
: Node_Id
; Val
: Boolean := True) is
5455 pragma Assert
(False
5456 or else NT
(N
).Nkind
= N_Exception_Handler
);
5458 end Set_Local_Raise_Not_OK
;
5460 procedure Set_Local_Raise_Statements
5461 (N
: Node_Id
; Val
: Elist_Id
) is
5463 pragma Assert
(False
5464 or else NT
(N
).Nkind
= N_Exception_Handler
);
5465 Set_Elist1
(N
, Val
);
5466 end Set_Local_Raise_Statements
;
5468 procedure Set_Loop_Actions
5469 (N
: Node_Id
; Val
: List_Id
) is
5471 pragma Assert
(False
5472 or else NT
(N
).Nkind
= N_Component_Association
);
5473 Set_List2
(N
, Val
); -- semantic field, no parent set
5474 end Set_Loop_Actions
;
5476 procedure Set_Loop_Parameter_Specification
5477 (N
: Node_Id
; Val
: Node_Id
) is
5479 pragma Assert
(False
5480 or else NT
(N
).Nkind
= N_Iteration_Scheme
5481 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5482 Set_Node4_With_Parent
(N
, Val
);
5483 end Set_Loop_Parameter_Specification
;
5485 procedure Set_Low_Bound
5486 (N
: Node_Id
; Val
: Node_Id
) is
5488 pragma Assert
(False
5489 or else NT
(N
).Nkind
= N_Range
5490 or else NT
(N
).Nkind
= N_Real_Range_Specification
5491 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5492 Set_Node1_With_Parent
(N
, Val
);
5495 procedure Set_Mod_Clause
5496 (N
: Node_Id
; Val
: Node_Id
) is
5498 pragma Assert
(False
5499 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5500 Set_Node2_With_Parent
(N
, Val
);
5503 procedure Set_More_Ids
5504 (N
: Node_Id
; Val
: Boolean := True) is
5506 pragma Assert
(False
5507 or else NT
(N
).Nkind
= N_Component_Declaration
5508 or else NT
(N
).Nkind
= N_Discriminant_Specification
5509 or else NT
(N
).Nkind
= N_Exception_Declaration
5510 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5511 or else NT
(N
).Nkind
= N_Number_Declaration
5512 or else NT
(N
).Nkind
= N_Object_Declaration
5513 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5517 procedure Set_Must_Be_Byte_Aligned
5518 (N
: Node_Id
; Val
: Boolean := True) is
5520 pragma Assert
(False
5521 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5522 Set_Flag14
(N
, Val
);
5523 end Set_Must_Be_Byte_Aligned
;
5525 procedure Set_Must_Not_Freeze
5526 (N
: Node_Id
; Val
: Boolean := True) is
5528 pragma Assert
(False
5529 or else NT
(N
).Nkind
= N_Subtype_Indication
5530 or else NT
(N
).Nkind
in N_Subexpr
);
5532 end Set_Must_Not_Freeze
;
5534 procedure Set_Must_Not_Override
5535 (N
: Node_Id
; Val
: Boolean := True) is
5537 pragma Assert
(False
5538 or else NT
(N
).Nkind
= N_Entry_Declaration
5539 or else NT
(N
).Nkind
= N_Function_Instantiation
5540 or else NT
(N
).Nkind
= N_Function_Specification
5541 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5542 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5543 Set_Flag15
(N
, Val
);
5544 end Set_Must_Not_Override
;
5546 procedure Set_Must_Override
5547 (N
: Node_Id
; Val
: Boolean := True) is
5549 pragma Assert
(False
5550 or else NT
(N
).Nkind
= N_Entry_Declaration
5551 or else NT
(N
).Nkind
= N_Function_Instantiation
5552 or else NT
(N
).Nkind
= N_Function_Specification
5553 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5554 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5555 Set_Flag14
(N
, Val
);
5556 end Set_Must_Override
;
5559 (N
: Node_Id
; Val
: Node_Id
) is
5561 pragma Assert
(False
5562 or else NT
(N
).Nkind
= N_Assignment_Statement
5563 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5564 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5565 or else NT
(N
).Nkind
= N_Designator
5566 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5567 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5568 or else NT
(N
).Nkind
= N_Exit_Statement
5569 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5570 or else NT
(N
).Nkind
= N_Function_Call
5571 or else NT
(N
).Nkind
= N_Function_Instantiation
5572 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5573 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5574 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5575 or else NT
(N
).Nkind
= N_Goto_Statement
5576 or else NT
(N
).Nkind
= N_Iterator_Specification
5577 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5578 or else NT
(N
).Nkind
= N_Package_Instantiation
5579 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5580 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5581 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5582 or else NT
(N
).Nkind
= N_Raise_Expression
5583 or else NT
(N
).Nkind
= N_Raise_Statement
5584 or else NT
(N
).Nkind
= N_Requeue_Statement
5585 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5586 or else NT
(N
).Nkind
= N_Subunit
5587 or else NT
(N
).Nkind
= N_Variant_Part
5588 or else NT
(N
).Nkind
= N_With_Clause
);
5589 Set_Node2_With_Parent
(N
, Val
);
5593 (N
: Node_Id
; Val
: List_Id
) is
5595 pragma Assert
(False
5596 or else NT
(N
).Nkind
= N_Abort_Statement
5597 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
5598 Set_List2_With_Parent
(N
, Val
);
5601 procedure Set_Next_Entity
5602 (N
: Node_Id
; Val
: Node_Id
) is
5604 pragma Assert
(False
5605 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5606 or else NT
(N
).Nkind
= N_Defining_Identifier
5607 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5608 Set_Node2
(N
, Val
); -- semantic field, no parent set
5609 end Set_Next_Entity
;
5611 procedure Set_Next_Exit_Statement
5612 (N
: Node_Id
; Val
: Node_Id
) is
5614 pragma Assert
(False
5615 or else NT
(N
).Nkind
= N_Exit_Statement
);
5616 Set_Node3
(N
, Val
); -- semantic field, no parent set
5617 end Set_Next_Exit_Statement
;
5619 procedure Set_Next_Implicit_With
5620 (N
: Node_Id
; Val
: Node_Id
) is
5622 pragma Assert
(False
5623 or else NT
(N
).Nkind
= N_With_Clause
);
5624 Set_Node3
(N
, Val
); -- semantic field, no parent set
5625 end Set_Next_Implicit_With
;
5627 procedure Set_Next_Named_Actual
5628 (N
: Node_Id
; Val
: Node_Id
) is
5630 pragma Assert
(False
5631 or else NT
(N
).Nkind
= N_Parameter_Association
);
5632 Set_Node4
(N
, Val
); -- semantic field, no parent set
5633 end Set_Next_Named_Actual
;
5635 procedure Set_Next_Pragma
5636 (N
: Node_Id
; Val
: Node_Id
) is
5638 pragma Assert
(False
5639 or else NT
(N
).Nkind
= N_Pragma
);
5640 Set_Node1
(N
, Val
); -- semantic field, no parent set
5641 end Set_Next_Pragma
;
5643 procedure Set_Next_Rep_Item
5644 (N
: Node_Id
; Val
: Node_Id
) is
5646 pragma Assert
(False
5647 or else NT
(N
).Nkind
= N_Aspect_Specification
5648 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5649 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5650 or else NT
(N
).Nkind
= N_Pragma
5651 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5652 Set_Node5
(N
, Val
); -- semantic field, no parent set
5653 end Set_Next_Rep_Item
;
5655 procedure Set_Next_Use_Clause
5656 (N
: Node_Id
; Val
: Node_Id
) is
5658 pragma Assert
(False
5659 or else NT
(N
).Nkind
= N_Use_Package_Clause
5660 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5661 Set_Node3
(N
, Val
); -- semantic field, no parent set
5662 end Set_Next_Use_Clause
;
5664 procedure Set_No_Ctrl_Actions
5665 (N
: Node_Id
; Val
: Boolean := True) is
5667 pragma Assert
(False
5668 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5670 end Set_No_Ctrl_Actions
;
5672 procedure Set_No_Elaboration_Check
5673 (N
: Node_Id
; Val
: Boolean := True) is
5675 pragma Assert
(False
5676 or else NT
(N
).Nkind
= N_Function_Call
5677 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5678 Set_Flag14
(N
, Val
);
5679 end Set_No_Elaboration_Check
;
5681 procedure Set_No_Entities_Ref_In_Spec
5682 (N
: Node_Id
; Val
: Boolean := True) is
5684 pragma Assert
(False
5685 or else NT
(N
).Nkind
= N_With_Clause
);
5687 end Set_No_Entities_Ref_In_Spec
;
5689 procedure Set_No_Initialization
5690 (N
: Node_Id
; Val
: Boolean := True) is
5692 pragma Assert
(False
5693 or else NT
(N
).Nkind
= N_Allocator
5694 or else NT
(N
).Nkind
= N_Object_Declaration
);
5695 Set_Flag13
(N
, Val
);
5696 end Set_No_Initialization
;
5698 procedure Set_No_Minimize_Eliminate
5699 (N
: Node_Id
; Val
: Boolean := True) is
5701 pragma Assert
(False
5702 or else NT
(N
).Nkind
= N_In
5703 or else NT
(N
).Nkind
= N_Not_In
);
5704 Set_Flag17
(N
, Val
);
5705 end Set_No_Minimize_Eliminate
;
5707 procedure Set_No_Side_Effect_Removal
5708 (N
: Node_Id
; Val
: Boolean := True) is
5710 pragma Assert
(False
5711 or else NT
(N
).Nkind
= N_Function_Call
);
5713 end Set_No_Side_Effect_Removal
;
5715 procedure Set_No_Truncation
5716 (N
: Node_Id
; Val
: Boolean := True) is
5718 pragma Assert
(False
5719 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5720 Set_Flag17
(N
, Val
);
5721 end Set_No_Truncation
;
5723 procedure Set_Non_Aliased_Prefix
5724 (N
: Node_Id
; Val
: Boolean := True) is
5726 pragma Assert
(False
5727 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5728 Set_Flag18
(N
, Val
);
5729 end Set_Non_Aliased_Prefix
;
5731 procedure Set_Null_Present
5732 (N
: Node_Id
; Val
: Boolean := True) is
5734 pragma Assert
(False
5735 or else NT
(N
).Nkind
= N_Component_List
5736 or else NT
(N
).Nkind
= N_Procedure_Specification
5737 or else NT
(N
).Nkind
= N_Record_Definition
);
5738 Set_Flag13
(N
, Val
);
5739 end Set_Null_Present
;
5741 procedure Set_Null_Excluding_Subtype
5742 (N
: Node_Id
; Val
: Boolean := True) is
5744 pragma Assert
(False
5745 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
);
5746 Set_Flag16
(N
, Val
);
5747 end Set_Null_Excluding_Subtype
;
5749 procedure Set_Null_Exclusion_Present
5750 (N
: Node_Id
; Val
: Boolean := True) is
5752 pragma Assert
(False
5753 or else NT
(N
).Nkind
= N_Access_Definition
5754 or else NT
(N
).Nkind
= N_Access_Function_Definition
5755 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5756 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5757 or else NT
(N
).Nkind
= N_Allocator
5758 or else NT
(N
).Nkind
= N_Component_Definition
5759 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5760 or else NT
(N
).Nkind
= N_Discriminant_Specification
5761 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5762 or else NT
(N
).Nkind
= N_Function_Specification
5763 or else NT
(N
).Nkind
= N_Object_Declaration
5764 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5765 or else NT
(N
).Nkind
= N_Parameter_Specification
5766 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
5767 Set_Flag11
(N
, Val
);
5768 end Set_Null_Exclusion_Present
;
5770 procedure Set_Null_Exclusion_In_Return_Present
5771 (N
: Node_Id
; Val
: Boolean := True) is
5773 pragma Assert
(False
5774 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
5775 Set_Flag14
(N
, Val
);
5776 end Set_Null_Exclusion_In_Return_Present
;
5778 procedure Set_Null_Record_Present
5779 (N
: Node_Id
; Val
: Boolean := True) is
5781 pragma Assert
(False
5782 or else NT
(N
).Nkind
= N_Aggregate
5783 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5784 Set_Flag17
(N
, Val
);
5785 end Set_Null_Record_Present
;
5787 procedure Set_Object_Definition
5788 (N
: Node_Id
; Val
: Node_Id
) is
5790 pragma Assert
(False
5791 or else NT
(N
).Nkind
= N_Object_Declaration
);
5792 Set_Node4_With_Parent
(N
, Val
);
5793 end Set_Object_Definition
;
5795 procedure Set_Of_Present
5796 (N
: Node_Id
; Val
: Boolean := True) is
5798 pragma Assert
(False
5799 or else NT
(N
).Nkind
= N_Iterator_Specification
);
5800 Set_Flag16
(N
, Val
);
5803 procedure Set_Original_Discriminant
5804 (N
: Node_Id
; Val
: Node_Id
) is
5806 pragma Assert
(False
5807 or else NT
(N
).Nkind
= N_Identifier
);
5808 Set_Node2
(N
, Val
); -- semantic field, no parent set
5809 end Set_Original_Discriminant
;
5811 procedure Set_Original_Entity
5812 (N
: Node_Id
; Val
: Entity_Id
) is
5814 pragma Assert
(False
5815 or else NT
(N
).Nkind
= N_Integer_Literal
5816 or else NT
(N
).Nkind
= N_Real_Literal
);
5817 Set_Node2
(N
, Val
); -- semantic field, no parent set
5818 end Set_Original_Entity
;
5820 procedure Set_Others_Discrete_Choices
5821 (N
: Node_Id
; Val
: List_Id
) is
5823 pragma Assert
(False
5824 or else NT
(N
).Nkind
= N_Others_Choice
);
5825 Set_List1_With_Parent
(N
, Val
);
5826 end Set_Others_Discrete_Choices
;
5828 procedure Set_Out_Present
5829 (N
: Node_Id
; Val
: Boolean := True) is
5831 pragma Assert
(False
5832 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5833 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5834 Set_Flag17
(N
, Val
);
5835 end Set_Out_Present
;
5837 procedure Set_Parameter_Associations
5838 (N
: Node_Id
; Val
: List_Id
) is
5840 pragma Assert
(False
5841 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5842 or else NT
(N
).Nkind
= N_Function_Call
5843 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5844 Set_List3_With_Parent
(N
, Val
);
5845 end Set_Parameter_Associations
;
5847 procedure Set_Parameter_Specifications
5848 (N
: Node_Id
; Val
: List_Id
) is
5850 pragma Assert
(False
5851 or else NT
(N
).Nkind
= N_Accept_Statement
5852 or else NT
(N
).Nkind
= N_Access_Function_Definition
5853 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5854 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
5855 or else NT
(N
).Nkind
= N_Entry_Declaration
5856 or else NT
(N
).Nkind
= N_Function_Specification
5857 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5858 Set_List3_With_Parent
(N
, Val
);
5859 end Set_Parameter_Specifications
;
5861 procedure Set_Parameter_Type
5862 (N
: Node_Id
; Val
: Node_Id
) is
5864 pragma Assert
(False
5865 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5866 Set_Node2_With_Parent
(N
, Val
);
5867 end Set_Parameter_Type
;
5869 procedure Set_Parent_Spec
5870 (N
: Node_Id
; Val
: Node_Id
) is
5872 pragma Assert
(False
5873 or else NT
(N
).Nkind
= N_Function_Instantiation
5874 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5875 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
5876 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5877 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5878 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
5879 or else NT
(N
).Nkind
= N_Package_Declaration
5880 or else NT
(N
).Nkind
= N_Package_Instantiation
5881 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5882 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5883 or else NT
(N
).Nkind
= N_Subprogram_Declaration
5884 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
5885 Set_Node4
(N
, Val
); -- semantic field, no parent set
5886 end Set_Parent_Spec
;
5888 procedure Set_Position
5889 (N
: Node_Id
; Val
: Node_Id
) is
5891 pragma Assert
(False
5892 or else NT
(N
).Nkind
= N_Component_Clause
);
5893 Set_Node2_With_Parent
(N
, Val
);
5896 procedure Set_Pragma_Argument_Associations
5897 (N
: Node_Id
; Val
: List_Id
) is
5899 pragma Assert
(False
5900 or else NT
(N
).Nkind
= N_Pragma
);
5901 Set_List2_With_Parent
(N
, Val
);
5902 end Set_Pragma_Argument_Associations
;
5904 procedure Set_Pragma_Identifier
5905 (N
: Node_Id
; Val
: Node_Id
) is
5907 pragma Assert
(False
5908 or else NT
(N
).Nkind
= N_Pragma
);
5909 Set_Node4_With_Parent
(N
, Val
);
5910 end Set_Pragma_Identifier
;
5912 procedure Set_Pragmas_After
5913 (N
: Node_Id
; Val
: List_Id
) is
5915 pragma Assert
(False
5916 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
5917 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
5918 Set_List5_With_Parent
(N
, Val
);
5919 end Set_Pragmas_After
;
5921 procedure Set_Pragmas_Before
5922 (N
: Node_Id
; Val
: List_Id
) is
5924 pragma Assert
(False
5925 or else NT
(N
).Nkind
= N_Accept_Alternative
5926 or else NT
(N
).Nkind
= N_Delay_Alternative
5927 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
5928 or else NT
(N
).Nkind
= N_Mod_Clause
5929 or else NT
(N
).Nkind
= N_Terminate_Alternative
5930 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
5931 Set_List4_With_Parent
(N
, Val
);
5932 end Set_Pragmas_Before
;
5934 procedure Set_Pre_Post_Conditions
5935 (N
: Node_Id
; Val
: Node_Id
) is
5937 pragma Assert
(False
5938 or else NT
(N
).Nkind
= N_Contract
);
5939 Set_Node1
(N
, Val
); -- semantic field, no parent set
5940 end Set_Pre_Post_Conditions
;
5942 procedure Set_Prefix
5943 (N
: Node_Id
; Val
: Node_Id
) is
5945 pragma Assert
(False
5946 or else NT
(N
).Nkind
= N_Attribute_Reference
5947 or else NT
(N
).Nkind
= N_Expanded_Name
5948 or else NT
(N
).Nkind
= N_Explicit_Dereference
5949 or else NT
(N
).Nkind
= N_Indexed_Component
5950 or else NT
(N
).Nkind
= N_Reference
5951 or else NT
(N
).Nkind
= N_Selected_Component
5952 or else NT
(N
).Nkind
= N_Slice
);
5953 Set_Node3_With_Parent
(N
, Val
);
5956 procedure Set_Premature_Use
5957 (N
: Node_Id
; Val
: Node_Id
) is
5959 pragma Assert
(False
5960 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
5962 end Set_Premature_Use
;
5964 procedure Set_Present_Expr
5965 (N
: Node_Id
; Val
: Uint
) is
5967 pragma Assert
(False
5968 or else NT
(N
).Nkind
= N_Variant
);
5970 end Set_Present_Expr
;
5972 procedure Set_Prev_Ids
5973 (N
: Node_Id
; Val
: Boolean := True) is
5975 pragma Assert
(False
5976 or else NT
(N
).Nkind
= N_Component_Declaration
5977 or else NT
(N
).Nkind
= N_Discriminant_Specification
5978 or else NT
(N
).Nkind
= N_Exception_Declaration
5979 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5980 or else NT
(N
).Nkind
= N_Number_Declaration
5981 or else NT
(N
).Nkind
= N_Object_Declaration
5982 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5986 procedure Set_Print_In_Hex
5987 (N
: Node_Id
; Val
: Boolean := True) is
5989 pragma Assert
(False
5990 or else NT
(N
).Nkind
= N_Integer_Literal
);
5991 Set_Flag13
(N
, Val
);
5992 end Set_Print_In_Hex
;
5994 procedure Set_Private_Declarations
5995 (N
: Node_Id
; Val
: List_Id
) is
5997 pragma Assert
(False
5998 or else NT
(N
).Nkind
= N_Package_Specification
5999 or else NT
(N
).Nkind
= N_Protected_Definition
6000 or else NT
(N
).Nkind
= N_Task_Definition
);
6001 Set_List3_With_Parent
(N
, Val
);
6002 end Set_Private_Declarations
;
6004 procedure Set_Private_Present
6005 (N
: Node_Id
; Val
: Boolean := True) is
6007 pragma Assert
(False
6008 or else NT
(N
).Nkind
= N_Compilation_Unit
6009 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6010 or else NT
(N
).Nkind
= N_With_Clause
);
6011 Set_Flag15
(N
, Val
);
6012 end Set_Private_Present
;
6014 procedure Set_Procedure_To_Call
6015 (N
: Node_Id
; Val
: Node_Id
) is
6017 pragma Assert
(False
6018 or else NT
(N
).Nkind
= N_Allocator
6019 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6020 or else NT
(N
).Nkind
= N_Free_Statement
6021 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6022 Set_Node2
(N
, Val
); -- semantic field, no parent set
6023 end Set_Procedure_To_Call
;
6025 procedure Set_Proper_Body
6026 (N
: Node_Id
; Val
: Node_Id
) is
6028 pragma Assert
(False
6029 or else NT
(N
).Nkind
= N_Subunit
);
6030 Set_Node1_With_Parent
(N
, Val
);
6031 end Set_Proper_Body
;
6033 procedure Set_Protected_Definition
6034 (N
: Node_Id
; Val
: Node_Id
) is
6036 pragma Assert
(False
6037 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
6038 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
6039 Set_Node3_With_Parent
(N
, Val
);
6040 end Set_Protected_Definition
;
6042 procedure Set_Protected_Present
6043 (N
: Node_Id
; Val
: Boolean := True) is
6045 pragma Assert
(False
6046 or else NT
(N
).Nkind
= N_Access_Function_Definition
6047 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
6048 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6049 or else NT
(N
).Nkind
= N_Record_Definition
);
6051 end Set_Protected_Present
;
6053 procedure Set_Raises_Constraint_Error
6054 (N
: Node_Id
; Val
: Boolean := True) is
6056 pragma Assert
(False
6057 or else NT
(N
).Nkind
in N_Subexpr
);
6059 end Set_Raises_Constraint_Error
;
6061 procedure Set_Range_Constraint
6062 (N
: Node_Id
; Val
: Node_Id
) is
6064 pragma Assert
(False
6065 or else NT
(N
).Nkind
= N_Delta_Constraint
6066 or else NT
(N
).Nkind
= N_Digits_Constraint
);
6067 Set_Node4_With_Parent
(N
, Val
);
6068 end Set_Range_Constraint
;
6070 procedure Set_Range_Expression
6071 (N
: Node_Id
; Val
: Node_Id
) is
6073 pragma Assert
(False
6074 or else NT
(N
).Nkind
= N_Range_Constraint
);
6075 Set_Node4_With_Parent
(N
, Val
);
6076 end Set_Range_Expression
;
6078 procedure Set_Real_Range_Specification
6079 (N
: Node_Id
; Val
: Node_Id
) is
6081 pragma Assert
(False
6082 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
6083 or else NT
(N
).Nkind
= N_Floating_Point_Definition
6084 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
6085 Set_Node4_With_Parent
(N
, Val
);
6086 end Set_Real_Range_Specification
;
6088 procedure Set_Realval
6089 (N
: Node_Id
; Val
: Ureal
) is
6091 pragma Assert
(False
6092 or else NT
(N
).Nkind
= N_Real_Literal
);
6093 Set_Ureal3
(N
, Val
);
6096 procedure Set_Reason
6097 (N
: Node_Id
; Val
: Uint
) is
6099 pragma Assert
(False
6100 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
6101 or else NT
(N
).Nkind
= N_Raise_Program_Error
6102 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
6106 procedure Set_Record_Extension_Part
6107 (N
: Node_Id
; Val
: Node_Id
) is
6109 pragma Assert
(False
6110 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
6111 Set_Node3_With_Parent
(N
, Val
);
6112 end Set_Record_Extension_Part
;
6114 procedure Set_Redundant_Use
6115 (N
: Node_Id
; Val
: Boolean := True) is
6117 pragma Assert
(False
6118 or else NT
(N
).Nkind
= N_Attribute_Reference
6119 or else NT
(N
).Nkind
= N_Expanded_Name
6120 or else NT
(N
).Nkind
= N_Identifier
);
6121 Set_Flag13
(N
, Val
);
6122 end Set_Redundant_Use
;
6124 procedure Set_Renaming_Exception
6125 (N
: Node_Id
; Val
: Node_Id
) is
6127 pragma Assert
(False
6128 or else NT
(N
).Nkind
= N_Exception_Declaration
);
6130 end Set_Renaming_Exception
;
6132 procedure Set_Result_Definition
6133 (N
: Node_Id
; Val
: Node_Id
) is
6135 pragma Assert
(False
6136 or else NT
(N
).Nkind
= N_Access_Function_Definition
6137 or else NT
(N
).Nkind
= N_Function_Specification
);
6138 Set_Node4_With_Parent
(N
, Val
);
6139 end Set_Result_Definition
;
6141 procedure Set_Return_Object_Declarations
6142 (N
: Node_Id
; Val
: List_Id
) is
6144 pragma Assert
(False
6145 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
6146 Set_List3_With_Parent
(N
, Val
);
6147 end Set_Return_Object_Declarations
;
6149 procedure Set_Return_Statement_Entity
6150 (N
: Node_Id
; Val
: Node_Id
) is
6152 pragma Assert
(False
6153 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6154 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6155 Set_Node5
(N
, Val
); -- semantic field, no parent set
6156 end Set_Return_Statement_Entity
;
6158 procedure Set_Reverse_Present
6159 (N
: Node_Id
; Val
: Boolean := True) is
6161 pragma Assert
(False
6162 or else NT
(N
).Nkind
= N_Iterator_Specification
6163 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
6164 Set_Flag15
(N
, Val
);
6165 end Set_Reverse_Present
;
6167 procedure Set_Right_Opnd
6168 (N
: Node_Id
; Val
: Node_Id
) is
6170 pragma Assert
(False
6171 or else NT
(N
).Nkind
in N_Op
6172 or else NT
(N
).Nkind
= N_And_Then
6173 or else NT
(N
).Nkind
= N_In
6174 or else NT
(N
).Nkind
= N_Not_In
6175 or else NT
(N
).Nkind
= N_Or_Else
);
6176 Set_Node3_With_Parent
(N
, Val
);
6179 procedure Set_Rounded_Result
6180 (N
: Node_Id
; Val
: Boolean := True) is
6182 pragma Assert
(False
6183 or else NT
(N
).Nkind
= N_Op_Divide
6184 or else NT
(N
).Nkind
= N_Op_Multiply
6185 or else NT
(N
).Nkind
= N_Type_Conversion
);
6186 Set_Flag18
(N
, Val
);
6187 end Set_Rounded_Result
;
6189 procedure Set_SCIL_Controlling_Tag
6190 (N
: Node_Id
; Val
: Node_Id
) is
6192 pragma Assert
(False
6193 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6194 Set_Node5
(N
, Val
); -- semantic field, no parent set
6195 end Set_SCIL_Controlling_Tag
;
6197 procedure Set_SCIL_Entity
6198 (N
: Node_Id
; Val
: Node_Id
) is
6200 pragma Assert
(False
6201 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
6202 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
6203 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6204 Set_Node4
(N
, Val
); -- semantic field, no parent set
6205 end Set_SCIL_Entity
;
6207 procedure Set_SCIL_Tag_Value
6208 (N
: Node_Id
; Val
: Node_Id
) is
6210 pragma Assert
(False
6211 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
6212 Set_Node5
(N
, Val
); -- semantic field, no parent set
6213 end Set_SCIL_Tag_Value
;
6215 procedure Set_SCIL_Target_Prim
6216 (N
: Node_Id
; Val
: Node_Id
) is
6218 pragma Assert
(False
6219 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
6220 Set_Node2
(N
, Val
); -- semantic field, no parent set
6221 end Set_SCIL_Target_Prim
;
6224 (N
: Node_Id
; Val
: Node_Id
) is
6226 pragma Assert
(False
6227 or else NT
(N
).Nkind
= N_Defining_Character_Literal
6228 or else NT
(N
).Nkind
= N_Defining_Identifier
6229 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
6230 Set_Node3
(N
, Val
); -- semantic field, no parent set
6233 procedure Set_Select_Alternatives
6234 (N
: Node_Id
; Val
: List_Id
) is
6236 pragma Assert
(False
6237 or else NT
(N
).Nkind
= N_Selective_Accept
);
6238 Set_List1_With_Parent
(N
, Val
);
6239 end Set_Select_Alternatives
;
6241 procedure Set_Selector_Name
6242 (N
: Node_Id
; Val
: Node_Id
) is
6244 pragma Assert
(False
6245 or else NT
(N
).Nkind
= N_Expanded_Name
6246 or else NT
(N
).Nkind
= N_Generic_Association
6247 or else NT
(N
).Nkind
= N_Parameter_Association
6248 or else NT
(N
).Nkind
= N_Selected_Component
);
6249 Set_Node2_With_Parent
(N
, Val
);
6250 end Set_Selector_Name
;
6252 procedure Set_Selector_Names
6253 (N
: Node_Id
; Val
: List_Id
) is
6255 pragma Assert
(False
6256 or else NT
(N
).Nkind
= N_Discriminant_Association
);
6257 Set_List1_With_Parent
(N
, Val
);
6258 end Set_Selector_Names
;
6260 procedure Set_Shift_Count_OK
6261 (N
: Node_Id
; Val
: Boolean := True) is
6263 pragma Assert
(False
6264 or else NT
(N
).Nkind
= N_Op_Rotate_Left
6265 or else NT
(N
).Nkind
= N_Op_Rotate_Right
6266 or else NT
(N
).Nkind
= N_Op_Shift_Left
6267 or else NT
(N
).Nkind
= N_Op_Shift_Right
6268 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
6270 end Set_Shift_Count_OK
;
6272 procedure Set_Source_Type
6273 (N
: Node_Id
; Val
: Entity_Id
) is
6275 pragma Assert
(False
6276 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6277 Set_Node1
(N
, Val
); -- semantic field, no parent set
6278 end Set_Source_Type
;
6280 procedure Set_Specification
6281 (N
: Node_Id
; Val
: Node_Id
) is
6283 pragma Assert
(False
6284 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
6285 or else NT
(N
).Nkind
= N_Expression_Function
6286 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
6287 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
6288 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
6289 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
6290 or else NT
(N
).Nkind
= N_Package_Declaration
6291 or else NT
(N
).Nkind
= N_Subprogram_Body
6292 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
6293 or else NT
(N
).Nkind
= N_Subprogram_Declaration
6294 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
6295 Set_Node1_With_Parent
(N
, Val
);
6296 end Set_Specification
;
6298 procedure Set_Split_PPC
6299 (N
: Node_Id
; Val
: Boolean) is
6301 pragma Assert
(False
6302 or else NT
(N
).Nkind
= N_Aspect_Specification
6303 or else NT
(N
).Nkind
= N_Pragma
);
6304 Set_Flag17
(N
, Val
);
6307 procedure Set_Statements
6308 (N
: Node_Id
; Val
: List_Id
) is
6310 pragma Assert
(False
6311 or else NT
(N
).Nkind
= N_Abortable_Part
6312 or else NT
(N
).Nkind
= N_Accept_Alternative
6313 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
6314 or else NT
(N
).Nkind
= N_Delay_Alternative
6315 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
6316 or else NT
(N
).Nkind
= N_Exception_Handler
6317 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
6318 or else NT
(N
).Nkind
= N_Loop_Statement
6319 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6320 Set_List3_With_Parent
(N
, Val
);
6323 procedure Set_Storage_Pool
6324 (N
: Node_Id
; Val
: Node_Id
) is
6326 pragma Assert
(False
6327 or else NT
(N
).Nkind
= N_Allocator
6328 or else NT
(N
).Nkind
= N_Extended_Return_Statement
6329 or else NT
(N
).Nkind
= N_Free_Statement
6330 or else NT
(N
).Nkind
= N_Simple_Return_Statement
);
6331 Set_Node1
(N
, Val
); -- semantic field, no parent set
6332 end Set_Storage_Pool
;
6334 procedure Set_Subpool_Handle_Name
6335 (N
: Node_Id
; Val
: Node_Id
) is
6337 pragma Assert
(False
6338 or else NT
(N
).Nkind
= N_Allocator
);
6339 Set_Node4_With_Parent
(N
, Val
);
6340 end Set_Subpool_Handle_Name
;
6342 procedure Set_Strval
6343 (N
: Node_Id
; Val
: String_Id
) is
6345 pragma Assert
(False
6346 or else NT
(N
).Nkind
= N_Operator_Symbol
6347 or else NT
(N
).Nkind
= N_String_Literal
);
6351 procedure Set_Subtype_Indication
6352 (N
: Node_Id
; Val
: Node_Id
) is
6354 pragma Assert
(False
6355 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6356 or else NT
(N
).Nkind
= N_Component_Definition
6357 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6358 or else NT
(N
).Nkind
= N_Iterator_Specification
6359 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6360 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6361 Set_Node5_With_Parent
(N
, Val
);
6362 end Set_Subtype_Indication
;
6364 procedure Set_Subtype_Mark
6365 (N
: Node_Id
; Val
: Node_Id
) is
6367 pragma Assert
(False
6368 or else NT
(N
).Nkind
= N_Access_Definition
6369 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6370 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6371 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6372 or else NT
(N
).Nkind
= N_Qualified_Expression
6373 or else NT
(N
).Nkind
= N_Subtype_Indication
6374 or else NT
(N
).Nkind
= N_Type_Conversion
6375 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6376 Set_Node4_With_Parent
(N
, Val
);
6377 end Set_Subtype_Mark
;
6379 procedure Set_Subtype_Marks
6380 (N
: Node_Id
; Val
: List_Id
) is
6382 pragma Assert
(False
6383 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
6384 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6385 Set_List2_With_Parent
(N
, Val
);
6386 end Set_Subtype_Marks
;
6388 procedure Set_Suppress_Assignment_Checks
6389 (N
: Node_Id
; Val
: Boolean := True) is
6391 pragma Assert
(False
6392 or else NT
(N
).Nkind
= N_Assignment_Statement
6393 or else NT
(N
).Nkind
= N_Object_Declaration
);
6394 Set_Flag18
(N
, Val
);
6395 end Set_Suppress_Assignment_Checks
;
6397 procedure Set_Suppress_Loop_Warnings
6398 (N
: Node_Id
; Val
: Boolean := True) is
6400 pragma Assert
(False
6401 or else NT
(N
).Nkind
= N_Loop_Statement
);
6402 Set_Flag17
(N
, Val
);
6403 end Set_Suppress_Loop_Warnings
;
6405 procedure Set_Synchronized_Present
6406 (N
: Node_Id
; Val
: Boolean := True) is
6408 pragma Assert
(False
6409 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6410 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6411 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6412 or else NT
(N
).Nkind
= N_Record_Definition
);
6414 end Set_Synchronized_Present
;
6416 procedure Set_Tagged_Present
6417 (N
: Node_Id
; Val
: Boolean := True) is
6419 pragma Assert
(False
6420 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6421 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6422 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6423 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6424 or else NT
(N
).Nkind
= N_Record_Definition
);
6425 Set_Flag15
(N
, Val
);
6426 end Set_Tagged_Present
;
6428 procedure Set_Target_Type
6429 (N
: Node_Id
; Val
: Entity_Id
) is
6431 pragma Assert
(False
6432 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6433 Set_Node2
(N
, Val
); -- semantic field, no parent set
6434 end Set_Target_Type
;
6436 procedure Set_Task_Definition
6437 (N
: Node_Id
; Val
: Node_Id
) is
6439 pragma Assert
(False
6440 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6441 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6442 Set_Node3_With_Parent
(N
, Val
);
6443 end Set_Task_Definition
;
6445 procedure Set_Task_Present
6446 (N
: Node_Id
; Val
: Boolean := True) is
6448 pragma Assert
(False
6449 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6450 or else NT
(N
).Nkind
= N_Record_Definition
);
6452 end Set_Task_Present
;
6454 procedure Set_Then_Actions
6455 (N
: Node_Id
; Val
: List_Id
) is
6457 pragma Assert
(False
6458 or else NT
(N
).Nkind
= N_If_Expression
);
6459 Set_List2_With_Parent
(N
, Val
); -- semantic field, but needs parents
6460 end Set_Then_Actions
;
6462 procedure Set_Then_Statements
6463 (N
: Node_Id
; Val
: List_Id
) is
6465 pragma Assert
(False
6466 or else NT
(N
).Nkind
= N_Elsif_Part
6467 or else NT
(N
).Nkind
= N_If_Statement
);
6468 Set_List2_With_Parent
(N
, Val
);
6469 end Set_Then_Statements
;
6471 procedure Set_Treat_Fixed_As_Integer
6472 (N
: Node_Id
; Val
: Boolean := True) is
6474 pragma Assert
(False
6475 or else NT
(N
).Nkind
= N_Op_Divide
6476 or else NT
(N
).Nkind
= N_Op_Mod
6477 or else NT
(N
).Nkind
= N_Op_Multiply
6478 or else NT
(N
).Nkind
= N_Op_Rem
);
6479 Set_Flag14
(N
, Val
);
6480 end Set_Treat_Fixed_As_Integer
;
6482 procedure Set_Triggering_Alternative
6483 (N
: Node_Id
; Val
: Node_Id
) is
6485 pragma Assert
(False
6486 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6487 Set_Node1_With_Parent
(N
, Val
);
6488 end Set_Triggering_Alternative
;
6490 procedure Set_Triggering_Statement
6491 (N
: Node_Id
; Val
: Node_Id
) is
6493 pragma Assert
(False
6494 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6495 Set_Node1_With_Parent
(N
, Val
);
6496 end Set_Triggering_Statement
;
6498 procedure Set_TSS_Elist
6499 (N
: Node_Id
; Val
: Elist_Id
) is
6501 pragma Assert
(False
6502 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6503 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6506 procedure Set_Uneval_Old_Accept
6507 (N
: Node_Id
; Val
: Boolean := True) is
6509 pragma Assert
(False
6510 or else NT
(N
).Nkind
= N_Pragma
);
6512 end Set_Uneval_Old_Accept
;
6514 procedure Set_Uneval_Old_Warn
6515 (N
: Node_Id
; Val
: Boolean := True) is
6517 pragma Assert
(False
6518 or else NT
(N
).Nkind
= N_Pragma
);
6519 Set_Flag18
(N
, Val
);
6520 end Set_Uneval_Old_Warn
;
6522 procedure Set_Type_Definition
6523 (N
: Node_Id
; Val
: Node_Id
) is
6525 pragma Assert
(False
6526 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6527 Set_Node3_With_Parent
(N
, Val
);
6528 end Set_Type_Definition
;
6531 (N
: Node_Id
; Val
: Node_Id
) is
6533 pragma Assert
(False
6534 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6535 Set_Node2_With_Parent
(N
, Val
);
6538 procedure Set_Unknown_Discriminants_Present
6539 (N
: Node_Id
; Val
: Boolean := True) is
6541 pragma Assert
(False
6542 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6543 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6544 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6545 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6546 Set_Flag13
(N
, Val
);
6547 end Set_Unknown_Discriminants_Present
;
6549 procedure Set_Unreferenced_In_Spec
6550 (N
: Node_Id
; Val
: Boolean := True) is
6552 pragma Assert
(False
6553 or else NT
(N
).Nkind
= N_With_Clause
);
6555 end Set_Unreferenced_In_Spec
;
6557 procedure Set_Variant_Part
6558 (N
: Node_Id
; Val
: Node_Id
) is
6560 pragma Assert
(False
6561 or else NT
(N
).Nkind
= N_Component_List
);
6562 Set_Node4_With_Parent
(N
, Val
);
6563 end Set_Variant_Part
;
6565 procedure Set_Variants
6566 (N
: Node_Id
; Val
: List_Id
) is
6568 pragma Assert
(False
6569 or else NT
(N
).Nkind
= N_Variant_Part
);
6570 Set_List1_With_Parent
(N
, Val
);
6573 procedure Set_Visible_Declarations
6574 (N
: Node_Id
; Val
: List_Id
) is
6576 pragma Assert
(False
6577 or else NT
(N
).Nkind
= N_Package_Specification
6578 or else NT
(N
).Nkind
= N_Protected_Definition
6579 or else NT
(N
).Nkind
= N_Task_Definition
);
6580 Set_List2_With_Parent
(N
, Val
);
6581 end Set_Visible_Declarations
;
6583 procedure Set_Uninitialized_Variable
6584 (N
: Node_Id
; Val
: Node_Id
) is
6586 pragma Assert
(False
6587 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6588 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
);
6590 end Set_Uninitialized_Variable
;
6592 procedure Set_Used_Operations
6593 (N
: Node_Id
; Val
: Elist_Id
) is
6595 pragma Assert
(False
6596 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6597 Set_Elist5
(N
, Val
);
6598 end Set_Used_Operations
;
6600 procedure Set_Was_Expression_Function
6601 (N
: Node_Id
; Val
: Boolean := True) is
6603 pragma Assert
(False
6604 or else NT
(N
).Nkind
= N_Subprogram_Body
);
6605 Set_Flag18
(N
, Val
);
6606 end Set_Was_Expression_Function
;
6608 procedure Set_Was_Originally_Stub
6609 (N
: Node_Id
; Val
: Boolean := True) is
6611 pragma Assert
(False
6612 or else NT
(N
).Nkind
= N_Package_Body
6613 or else NT
(N
).Nkind
= N_Protected_Body
6614 or else NT
(N
).Nkind
= N_Subprogram_Body
6615 or else NT
(N
).Nkind
= N_Task_Body
);
6616 Set_Flag13
(N
, Val
);
6617 end Set_Was_Originally_Stub
;
6619 procedure Set_Withed_Body
6620 (N
: Node_Id
; Val
: Node_Id
) is
6622 pragma Assert
(False
6623 or else NT
(N
).Nkind
= N_With_Clause
);
6625 end Set_Withed_Body
;
6627 -------------------------
6628 -- Iterator Procedures --
6629 -------------------------
6631 procedure Next_Entity
(N
: in out Node_Id
) is
6633 N
:= Next_Entity
(N
);
6636 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6638 N
:= Next_Named_Actual
(N
);
6639 end Next_Named_Actual
;
6641 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6643 N
:= Next_Rep_Item
(N
);
6646 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6648 N
:= Next_Use_Clause
(N
);
6649 end Next_Use_Clause
;
6655 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6656 L
: constant Uint
:= End_Span
(N
);
6661 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6665 --------------------
6666 -- Get_Pragma_Arg --
6667 --------------------
6669 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6671 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6672 return Expression
(Arg
);
6678 ----------------------
6679 -- Set_End_Location --
6680 ----------------------
6682 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6685 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6686 end Set_End_Location
;
6695 V2
: Node_Kind
) return Boolean
6698 return T
= V1
or else
6706 V3
: Node_Kind
) return Boolean
6709 return T
= V1
or else
6719 V4
: Node_Kind
) return Boolean
6722 return T
= V1
or else
6734 V5
: Node_Kind
) return Boolean
6737 return T
= V1
or else
6751 V6
: Node_Kind
) return Boolean
6754 return T
= V1
or else
6770 V7
: Node_Kind
) return Boolean
6773 return T
= V1
or else
6791 V8
: Node_Kind
) return Boolean
6794 return T
= V1
or else
6814 V9
: Node_Kind
) return Boolean
6817 return T
= V1
or else
6832 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
6834 return Chars
(Pragma_Identifier
(N
));
6837 ---------------------
6838 -- Map_Pragma_Name --
6839 ---------------------
6841 -- We don't want to introduce a dependence on some hash table package or
6842 -- similar, so we use a simple array of Key => Value pairs, and do a linear
6843 -- search. Linear search is plenty efficient, given that we don't expect
6844 -- more than a couple of entries in the mapping.
6846 type Name_Pair
is record
6851 type Pragma_Map_Index
is range 1 .. 100;
6852 Pragma_Map
: array (Pragma_Map_Index
) of Name_Pair
;
6853 Last_Pair
: Pragma_Map_Index
'Base range 0 .. Pragma_Map_Index
'Last := 0;
6855 procedure Map_Pragma_Name
(From
, To
: Name_Id
) is
6857 if Last_Pair
= Pragma_Map
'Last then
6858 raise Too_Many_Pragma_Mappings
;
6861 Last_Pair
:= Last_Pair
+ 1;
6862 Pragma_Map
(Last_Pair
) := (Key
=> From
, Value
=> To
);
6863 end Map_Pragma_Name
;
6865 ------------------------
6866 -- Pragma_Name_Mapped --
6867 ------------------------
6869 function Pragma_Name_Mapped
(N
: Node_Id
) return Name_Id
is
6870 Result
: constant Name_Id
:= Pragma_Name
(N
);
6872 for J
in Pragma_Map
'Range loop
6873 if Result
= Pragma_Map
(J
).Key
then
6874 return Pragma_Map
(J
).Value
;
6879 end Pragma_Name_Mapped
;