1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2012, Free Software Foundation, Inc. --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
30 ------------------------------------------------------------------------------
32 pragma Style_Checks
(All_Checks
);
33 -- No subprogram ordering check, due to logical grouping
35 with Atree
; use Atree
;
39 use Atree
.Unchecked_Access
;
40 -- This package is one of the few packages which is allowed to make direct
41 -- references to tree nodes (since it is in the business of providing a
42 -- higher level of tree access which other clients are expected to use and
43 -- which implements checks).
45 use Atree_Private_Part
;
46 -- The only reason that we ask for direct access to the private part of
47 -- the tree package is so that we can directly reference the Nkind field
48 -- of nodes table entries. We do this since it helps the efficiency of
49 -- the Sinfo debugging checks considerably (note that when we are checking
50 -- Nkind values, we don't need to check for a valid node reference, because
51 -- we will check that anyway when we reference the field).
53 NT
: Nodes
.Table_Ptr
renames Nodes
.Table
;
54 -- A short hand abbreviation, useful for the debugging checks
56 ----------------------------
57 -- Field Access Functions --
58 ----------------------------
60 function ABE_Is_Certain
61 (N
: Node_Id
) return Boolean is
64 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
65 or else NT
(N
).Nkind
= N_Function_Call
66 or else NT
(N
).Nkind
= N_Function_Instantiation
67 or else NT
(N
).Nkind
= N_Package_Instantiation
68 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
69 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
73 function Abort_Present
74 (N
: Node_Id
) return Boolean is
77 or else NT
(N
).Nkind
= N_Requeue_Statement
);
81 function Abortable_Part
82 (N
: Node_Id
) return Node_Id
is
85 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
89 function Abstract_Present
90 (N
: Node_Id
) return Boolean is
93 or else NT
(N
).Nkind
= N_Derived_Type_Definition
94 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
95 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
96 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
97 or else NT
(N
).Nkind
= N_Private_Type_Declaration
98 or else NT
(N
).Nkind
= N_Record_Definition
);
100 end Abstract_Present
;
102 function Accept_Handler_Records
103 (N
: Node_Id
) return List_Id
is
106 or else NT
(N
).Nkind
= N_Accept_Alternative
);
108 end Accept_Handler_Records
;
110 function Accept_Statement
111 (N
: Node_Id
) return Node_Id
is
114 or else NT
(N
).Nkind
= N_Accept_Alternative
);
116 end Accept_Statement
;
118 function Access_Definition
119 (N
: Node_Id
) return Node_Id
is
122 or else NT
(N
).Nkind
= N_Component_Definition
123 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
124 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
126 end Access_Definition
;
128 function Access_To_Subprogram_Definition
129 (N
: Node_Id
) return Node_Id
is
132 or else NT
(N
).Nkind
= N_Access_Definition
);
134 end Access_To_Subprogram_Definition
;
136 function Access_Types_To_Process
137 (N
: Node_Id
) return Elist_Id
is
140 or else NT
(N
).Nkind
= N_Freeze_Entity
);
142 end Access_Types_To_Process
;
145 (N
: Node_Id
) return List_Id
is
148 or else NT
(N
).Nkind
= N_And_Then
149 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
150 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
151 or else NT
(N
).Nkind
= N_Expression_With_Actions
152 or else NT
(N
).Nkind
= N_Freeze_Entity
153 or else NT
(N
).Nkind
= N_Or_Else
);
157 function Activation_Chain_Entity
158 (N
: Node_Id
) return Node_Id
is
161 or else NT
(N
).Nkind
= N_Block_Statement
162 or else NT
(N
).Nkind
= N_Entry_Body
163 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
164 or else NT
(N
).Nkind
= N_Package_Declaration
165 or else NT
(N
).Nkind
= N_Subprogram_Body
166 or else NT
(N
).Nkind
= N_Task_Body
);
168 end Activation_Chain_Entity
;
170 function Acts_As_Spec
171 (N
: Node_Id
) return Boolean is
174 or else NT
(N
).Nkind
= N_Compilation_Unit
175 or else NT
(N
).Nkind
= N_Subprogram_Body
);
179 function Actual_Designated_Subtype
180 (N
: Node_Id
) return Node_Id
is
183 or else NT
(N
).Nkind
= N_Explicit_Dereference
184 or else NT
(N
).Nkind
= N_Free_Statement
);
186 end Actual_Designated_Subtype
;
188 function Address_Warning_Posted
189 (N
: Node_Id
) return Boolean is
192 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
194 end Address_Warning_Posted
;
196 function Aggregate_Bounds
197 (N
: Node_Id
) return Node_Id
is
200 or else NT
(N
).Nkind
= N_Aggregate
);
202 end Aggregate_Bounds
;
204 function Aliased_Present
205 (N
: Node_Id
) return Boolean is
208 or else NT
(N
).Nkind
= N_Component_Definition
209 or else NT
(N
).Nkind
= N_Object_Declaration
210 or else NT
(N
).Nkind
= N_Parameter_Specification
);
215 (N
: Node_Id
) return Boolean is
218 or else NT
(N
).Nkind
= N_Others_Choice
);
223 (N
: Node_Id
) return Boolean is
226 or else NT
(N
).Nkind
= N_Access_Definition
227 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
228 or else NT
(N
).Nkind
= N_Quantified_Expression
229 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
233 function Alternatives
234 (N
: Node_Id
) return List_Id
is
237 or else NT
(N
).Nkind
= N_Case_Expression
238 or else NT
(N
).Nkind
= N_Case_Statement
239 or else NT
(N
).Nkind
= N_In
240 or else NT
(N
).Nkind
= N_Not_In
);
244 function Ancestor_Part
245 (N
: Node_Id
) return Node_Id
is
248 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
252 function Atomic_Sync_Required
253 (N
: Node_Id
) return Boolean is
256 or else NT
(N
).Nkind
= N_Expanded_Name
257 or else NT
(N
).Nkind
= N_Explicit_Dereference
258 or else NT
(N
).Nkind
= N_Identifier
259 or else NT
(N
).Nkind
= N_Indexed_Component
260 or else NT
(N
).Nkind
= N_Selected_Component
);
262 end Atomic_Sync_Required
;
264 function Array_Aggregate
265 (N
: Node_Id
) return Node_Id
is
268 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
272 function Aspect_Rep_Item
273 (N
: Node_Id
) return Node_Id
is
276 or else NT
(N
).Nkind
= N_Aspect_Specification
);
280 function Assignment_OK
281 (N
: Node_Id
) return Boolean is
284 or else NT
(N
).Nkind
= N_Object_Declaration
285 or else NT
(N
).Nkind
in N_Subexpr
);
289 function Associated_Node
290 (N
: Node_Id
) return Node_Id
is
293 or else NT
(N
).Nkind
in N_Has_Entity
294 or else NT
(N
).Nkind
= N_Aggregate
295 or else NT
(N
).Nkind
= N_Extension_Aggregate
296 or else NT
(N
).Nkind
= N_Selected_Component
);
301 (N
: Node_Id
) return Node_Id
is
304 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
308 function Attribute_Name
309 (N
: Node_Id
) return Name_Id
is
312 or else NT
(N
).Nkind
= N_Attribute_Reference
);
316 function Aux_Decls_Node
317 (N
: Node_Id
) return Node_Id
is
320 or else NT
(N
).Nkind
= N_Compilation_Unit
);
324 function Backwards_OK
325 (N
: Node_Id
) return Boolean is
328 or else NT
(N
).Nkind
= N_Assignment_Statement
);
332 function Bad_Is_Detected
333 (N
: Node_Id
) return Boolean is
336 or else NT
(N
).Nkind
= N_Subprogram_Body
);
340 function Body_Required
341 (N
: Node_Id
) return Boolean is
344 or else NT
(N
).Nkind
= N_Compilation_Unit
);
348 function Body_To_Inline
349 (N
: Node_Id
) return Node_Id
is
352 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
357 (N
: Node_Id
) return Boolean is
360 or else NT
(N
).Nkind
= N_Component_Association
361 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
362 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
363 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
364 or else NT
(N
).Nkind
= N_Generic_Association
);
369 (N
: Node_Id
) return Boolean is
372 or else NT
(N
).Nkind
= N_Extended_Return_Statement
373 or else NT
(N
).Nkind
= N_Return_Statement
);
377 function Char_Literal_Value
378 (N
: Node_Id
) return Uint
is
381 or else NT
(N
).Nkind
= N_Character_Literal
);
383 end Char_Literal_Value
;
386 (N
: Node_Id
) return Name_Id
is
389 or else NT
(N
).Nkind
in N_Has_Chars
);
393 function Check_Address_Alignment
394 (N
: Node_Id
) return Boolean is
397 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
399 end Check_Address_Alignment
;
401 function Choice_Parameter
402 (N
: Node_Id
) return Node_Id
is
405 or else NT
(N
).Nkind
= N_Exception_Handler
);
407 end Choice_Parameter
;
410 (N
: Node_Id
) return List_Id
is
413 or else NT
(N
).Nkind
= N_Component_Association
);
417 function Class_Present
418 (N
: Node_Id
) return Boolean is
421 or else NT
(N
).Nkind
= N_Aspect_Specification
422 or else NT
(N
).Nkind
= N_Pragma
);
426 function Comes_From_Extended_Return_Statement
427 (N
: Node_Id
) return Boolean is
430 or else NT
(N
).Nkind
= N_Return_Statement
);
432 end Comes_From_Extended_Return_Statement
;
434 function Compile_Time_Known_Aggregate
435 (N
: Node_Id
) return Boolean is
438 or else NT
(N
).Nkind
= N_Aggregate
);
440 end Compile_Time_Known_Aggregate
;
442 function Component_Associations
443 (N
: Node_Id
) return List_Id
is
446 or else NT
(N
).Nkind
= N_Aggregate
447 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
449 end Component_Associations
;
451 function Component_Clauses
452 (N
: Node_Id
) return List_Id
is
455 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
457 end Component_Clauses
;
459 function Component_Definition
460 (N
: Node_Id
) return Node_Id
is
463 or else NT
(N
).Nkind
= N_Component_Declaration
464 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
465 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
467 end Component_Definition
;
469 function Component_Items
470 (N
: Node_Id
) return List_Id
is
473 or else NT
(N
).Nkind
= N_Component_List
);
477 function Component_List
478 (N
: Node_Id
) return Node_Id
is
481 or else NT
(N
).Nkind
= N_Record_Definition
482 or else NT
(N
).Nkind
= N_Variant
);
486 function Component_Name
487 (N
: Node_Id
) return Node_Id
is
490 or else NT
(N
).Nkind
= N_Component_Clause
);
494 function Componentwise_Assignment
495 (N
: Node_Id
) return Boolean is
498 or else NT
(N
).Nkind
= N_Assignment_Statement
);
500 end Componentwise_Assignment
;
503 (N
: Node_Id
) return Node_Id
is
506 or else NT
(N
).Nkind
= N_Accept_Alternative
507 or else NT
(N
).Nkind
= N_Delay_Alternative
508 or else NT
(N
).Nkind
= N_Elsif_Part
509 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
510 or else NT
(N
).Nkind
= N_Exit_Statement
511 or else NT
(N
).Nkind
= N_If_Statement
512 or else NT
(N
).Nkind
= N_Iteration_Scheme
513 or else NT
(N
).Nkind
= N_Quantified_Expression
514 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
515 or else NT
(N
).Nkind
= N_Raise_Program_Error
516 or else NT
(N
).Nkind
= N_Raise_Storage_Error
517 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
521 function Condition_Actions
522 (N
: Node_Id
) return List_Id
is
525 or else NT
(N
).Nkind
= N_Elsif_Part
526 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
528 end Condition_Actions
;
530 function Config_Pragmas
531 (N
: Node_Id
) return List_Id
is
534 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
538 function Constant_Present
539 (N
: Node_Id
) return Boolean is
542 or else NT
(N
).Nkind
= N_Access_Definition
543 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
544 or else NT
(N
).Nkind
= N_Object_Declaration
);
546 end Constant_Present
;
549 (N
: Node_Id
) return Node_Id
is
552 or else NT
(N
).Nkind
= N_Subtype_Indication
);
557 (N
: Node_Id
) return List_Id
is
560 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
564 function Context_Installed
565 (N
: Node_Id
) return Boolean is
568 or else NT
(N
).Nkind
= N_With_Clause
);
570 end Context_Installed
;
572 function Context_Items
573 (N
: Node_Id
) return List_Id
is
576 or else NT
(N
).Nkind
= N_Compilation_Unit
);
580 function Context_Pending
581 (N
: Node_Id
) return Boolean is
584 or else NT
(N
).Nkind
= N_Compilation_Unit
);
588 function Controlling_Argument
589 (N
: Node_Id
) return Node_Id
is
592 or else NT
(N
).Nkind
= N_Function_Call
593 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
595 end Controlling_Argument
;
597 function Conversion_OK
598 (N
: Node_Id
) return Boolean is
601 or else NT
(N
).Nkind
= N_Type_Conversion
);
605 function Corresponding_Aspect
606 (N
: Node_Id
) return Node_Id
is
609 or else NT
(N
).Nkind
= N_Pragma
);
611 end Corresponding_Aspect
;
613 function Corresponding_Body
614 (N
: Node_Id
) return Node_Id
is
617 or else NT
(N
).Nkind
= N_Entry_Declaration
618 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
619 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
620 or else NT
(N
).Nkind
= N_Package_Body_Stub
621 or else NT
(N
).Nkind
= N_Package_Declaration
622 or else NT
(N
).Nkind
= N_Protected_Body_Stub
623 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
624 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
625 or else NT
(N
).Nkind
= N_Subprogram_Declaration
626 or else NT
(N
).Nkind
= N_Task_Body_Stub
627 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
629 end Corresponding_Body
;
631 function Corresponding_Formal_Spec
632 (N
: Node_Id
) return Node_Id
is
635 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
637 end Corresponding_Formal_Spec
;
639 function Corresponding_Generic_Association
640 (N
: Node_Id
) return Node_Id
is
643 or else NT
(N
).Nkind
= N_Object_Declaration
644 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
646 end Corresponding_Generic_Association
;
648 function Corresponding_Integer_Value
649 (N
: Node_Id
) return Uint
is
652 or else NT
(N
).Nkind
= N_Real_Literal
);
654 end Corresponding_Integer_Value
;
656 function Corresponding_Spec
657 (N
: Node_Id
) return Node_Id
is
660 or else NT
(N
).Nkind
= N_Expression_Function
661 or else NT
(N
).Nkind
= N_Package_Body
662 or else NT
(N
).Nkind
= N_Protected_Body
663 or else NT
(N
).Nkind
= N_Subprogram_Body
664 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
665 or else NT
(N
).Nkind
= N_Task_Body
666 or else NT
(N
).Nkind
= N_With_Clause
);
668 end Corresponding_Spec
;
670 function Corresponding_Stub
671 (N
: Node_Id
) return Node_Id
is
674 or else NT
(N
).Nkind
= N_Subunit
);
676 end Corresponding_Stub
;
678 function Dcheck_Function
679 (N
: Node_Id
) return Entity_Id
is
682 or else NT
(N
).Nkind
= N_Variant
);
686 function Declarations
687 (N
: Node_Id
) return List_Id
is
690 or else NT
(N
).Nkind
= N_Accept_Statement
691 or else NT
(N
).Nkind
= N_Block_Statement
692 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
693 or else NT
(N
).Nkind
= N_Entry_Body
694 or else NT
(N
).Nkind
= N_Package_Body
695 or else NT
(N
).Nkind
= N_Protected_Body
696 or else NT
(N
).Nkind
= N_Subprogram_Body
697 or else NT
(N
).Nkind
= N_Task_Body
);
701 function Default_Expression
702 (N
: Node_Id
) return Node_Id
is
705 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
706 or else NT
(N
).Nkind
= N_Parameter_Specification
);
708 end Default_Expression
;
710 function Default_Storage_Pool
711 (N
: Node_Id
) return Node_Id
is
714 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
716 end Default_Storage_Pool
;
718 function Default_Name
719 (N
: Node_Id
) return Node_Id
is
722 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
723 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
727 function Defining_Identifier
728 (N
: Node_Id
) return Entity_Id
is
731 or else NT
(N
).Nkind
= N_Component_Declaration
732 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
733 or else NT
(N
).Nkind
= N_Discriminant_Specification
734 or else NT
(N
).Nkind
= N_Entry_Body
735 or else NT
(N
).Nkind
= N_Entry_Declaration
736 or else NT
(N
).Nkind
= N_Entry_Index_Specification
737 or else NT
(N
).Nkind
= N_Exception_Declaration
738 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
739 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
740 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
741 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
742 or else NT
(N
).Nkind
= N_Full_Type_Declaration
743 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
744 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
745 or else NT
(N
).Nkind
= N_Iterator_Specification
746 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
747 or else NT
(N
).Nkind
= N_Number_Declaration
748 or else NT
(N
).Nkind
= N_Object_Declaration
749 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
750 or else NT
(N
).Nkind
= N_Package_Body_Stub
751 or else NT
(N
).Nkind
= N_Parameter_Specification
752 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
753 or else NT
(N
).Nkind
= N_Private_Type_Declaration
754 or else NT
(N
).Nkind
= N_Protected_Body
755 or else NT
(N
).Nkind
= N_Protected_Body_Stub
756 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
757 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
758 or else NT
(N
).Nkind
= N_Single_Task_Declaration
759 or else NT
(N
).Nkind
= N_Subtype_Declaration
760 or else NT
(N
).Nkind
= N_Task_Body
761 or else NT
(N
).Nkind
= N_Task_Body_Stub
762 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
764 end Defining_Identifier
;
766 function Defining_Unit_Name
767 (N
: Node_Id
) return Node_Id
is
770 or else NT
(N
).Nkind
= N_Function_Instantiation
771 or else NT
(N
).Nkind
= N_Function_Specification
772 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
773 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
774 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
775 or else NT
(N
).Nkind
= N_Package_Body
776 or else NT
(N
).Nkind
= N_Package_Instantiation
777 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
778 or else NT
(N
).Nkind
= N_Package_Specification
779 or else NT
(N
).Nkind
= N_Procedure_Instantiation
780 or else NT
(N
).Nkind
= N_Procedure_Specification
);
782 end Defining_Unit_Name
;
784 function Delay_Alternative
785 (N
: Node_Id
) return Node_Id
is
788 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
790 end Delay_Alternative
;
792 function Delay_Statement
793 (N
: Node_Id
) return Node_Id
is
796 or else NT
(N
).Nkind
= N_Delay_Alternative
);
800 function Delta_Expression
801 (N
: Node_Id
) return Node_Id
is
804 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
805 or else NT
(N
).Nkind
= N_Delta_Constraint
806 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
808 end Delta_Expression
;
810 function Digits_Expression
811 (N
: Node_Id
) return Node_Id
is
814 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
815 or else NT
(N
).Nkind
= N_Digits_Constraint
816 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
818 end Digits_Expression
;
820 function Discr_Check_Funcs_Built
821 (N
: Node_Id
) return Boolean is
824 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
826 end Discr_Check_Funcs_Built
;
828 function Discrete_Choices
829 (N
: Node_Id
) return List_Id
is
832 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
833 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
834 or else NT
(N
).Nkind
= N_Variant
);
836 end Discrete_Choices
;
838 function Discrete_Range
839 (N
: Node_Id
) return Node_Id
is
842 or else NT
(N
).Nkind
= N_Slice
);
846 function Discrete_Subtype_Definition
847 (N
: Node_Id
) return Node_Id
is
850 or else NT
(N
).Nkind
= N_Entry_Declaration
851 or else NT
(N
).Nkind
= N_Entry_Index_Specification
852 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
854 end Discrete_Subtype_Definition
;
856 function Discrete_Subtype_Definitions
857 (N
: Node_Id
) return List_Id
is
860 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
862 end Discrete_Subtype_Definitions
;
864 function Discriminant_Specifications
865 (N
: Node_Id
) return List_Id
is
868 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
869 or else NT
(N
).Nkind
= N_Full_Type_Declaration
870 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
871 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
872 or else NT
(N
).Nkind
= N_Private_Type_Declaration
873 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
874 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
876 end Discriminant_Specifications
;
878 function Discriminant_Type
879 (N
: Node_Id
) return Node_Id
is
882 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
884 end Discriminant_Type
;
886 function Do_Accessibility_Check
887 (N
: Node_Id
) return Boolean is
890 or else NT
(N
).Nkind
= N_Parameter_Specification
);
892 end Do_Accessibility_Check
;
894 function Do_Discriminant_Check
895 (N
: Node_Id
) return Boolean is
898 or else NT
(N
).Nkind
= N_Selected_Component
);
900 end Do_Discriminant_Check
;
902 function Do_Division_Check
903 (N
: Node_Id
) return Boolean is
906 or else NT
(N
).Nkind
= N_Op_Divide
907 or else NT
(N
).Nkind
= N_Op_Mod
908 or else NT
(N
).Nkind
= N_Op_Rem
);
910 end Do_Division_Check
;
912 function Do_Length_Check
913 (N
: Node_Id
) return Boolean is
916 or else NT
(N
).Nkind
= N_Assignment_Statement
917 or else NT
(N
).Nkind
= N_Op_And
918 or else NT
(N
).Nkind
= N_Op_Or
919 or else NT
(N
).Nkind
= N_Op_Xor
920 or else NT
(N
).Nkind
= N_Type_Conversion
);
924 function Do_Overflow_Check
925 (N
: Node_Id
) return Boolean is
928 or else NT
(N
).Nkind
in N_Op
929 or else NT
(N
).Nkind
= N_Attribute_Reference
930 or else NT
(N
).Nkind
= N_Type_Conversion
);
932 end Do_Overflow_Check
;
934 function Do_Range_Check
935 (N
: Node_Id
) return Boolean is
938 or else NT
(N
).Nkind
in N_Subexpr
);
942 function Do_Storage_Check
943 (N
: Node_Id
) return Boolean is
946 or else NT
(N
).Nkind
= N_Allocator
947 or else NT
(N
).Nkind
= N_Subprogram_Body
);
949 end Do_Storage_Check
;
951 function Do_Tag_Check
952 (N
: Node_Id
) return Boolean is
955 or else NT
(N
).Nkind
= N_Assignment_Statement
956 or else NT
(N
).Nkind
= N_Extended_Return_Statement
957 or else NT
(N
).Nkind
= N_Function_Call
958 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
959 or else NT
(N
).Nkind
= N_Return_Statement
960 or else NT
(N
).Nkind
= N_Type_Conversion
);
964 function Elaborate_All_Desirable
965 (N
: Node_Id
) return Boolean is
968 or else NT
(N
).Nkind
= N_With_Clause
);
970 end Elaborate_All_Desirable
;
972 function Elaborate_All_Present
973 (N
: Node_Id
) return Boolean is
976 or else NT
(N
).Nkind
= N_With_Clause
);
978 end Elaborate_All_Present
;
980 function Elaborate_Desirable
981 (N
: Node_Id
) return Boolean is
984 or else NT
(N
).Nkind
= N_With_Clause
);
986 end Elaborate_Desirable
;
988 function Elaborate_Present
989 (N
: Node_Id
) return Boolean is
992 or else NT
(N
).Nkind
= N_With_Clause
);
994 end Elaborate_Present
;
996 function Elaboration_Boolean
997 (N
: Node_Id
) return Node_Id
is
1000 or else NT
(N
).Nkind
= N_Function_Specification
1001 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1003 end Elaboration_Boolean
;
1005 function Else_Actions
1006 (N
: Node_Id
) return List_Id
is
1008 pragma Assert
(False
1009 or else NT
(N
).Nkind
= N_Conditional_Expression
);
1013 function Else_Statements
1014 (N
: Node_Id
) return List_Id
is
1016 pragma Assert
(False
1017 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1018 or else NT
(N
).Nkind
= N_If_Statement
1019 or else NT
(N
).Nkind
= N_Selective_Accept
);
1021 end Else_Statements
;
1023 function Elsif_Parts
1024 (N
: Node_Id
) return List_Id
is
1026 pragma Assert
(False
1027 or else NT
(N
).Nkind
= N_If_Statement
);
1031 function Enclosing_Variant
1032 (N
: Node_Id
) return Node_Id
is
1034 pragma Assert
(False
1035 or else NT
(N
).Nkind
= N_Variant
);
1037 end Enclosing_Variant
;
1040 (N
: Node_Id
) return Node_Id
is
1042 pragma Assert
(False
1043 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
1044 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
1045 or else NT
(N
).Nkind
= N_Loop_Statement
1046 or else NT
(N
).Nkind
= N_Package_Specification
1047 or else NT
(N
).Nkind
= N_Protected_Body
1048 or else NT
(N
).Nkind
= N_Protected_Definition
1049 or else NT
(N
).Nkind
= N_Record_Definition
1050 or else NT
(N
).Nkind
= N_Task_Definition
);
1055 (N
: Node_Id
) return Uint
is
1057 pragma Assert
(False
1058 or else NT
(N
).Nkind
= N_Case_Statement
1059 or else NT
(N
).Nkind
= N_If_Statement
);
1064 (N
: Node_Id
) return Node_Id
is
1066 pragma Assert
(False
1067 or else NT
(N
).Nkind
in N_Has_Entity
1068 or else NT
(N
).Nkind
= N_Aspect_Specification
1069 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1070 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1074 function Entity_Or_Associated_Node
1075 (N
: Node_Id
) return Node_Id
is
1077 pragma Assert
(False
1078 or else NT
(N
).Nkind
in N_Has_Entity
1079 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1081 end Entity_Or_Associated_Node
;
1083 function Entry_Body_Formal_Part
1084 (N
: Node_Id
) return Node_Id
is
1086 pragma Assert
(False
1087 or else NT
(N
).Nkind
= N_Entry_Body
);
1089 end Entry_Body_Formal_Part
;
1091 function Entry_Call_Alternative
1092 (N
: Node_Id
) return Node_Id
is
1094 pragma Assert
(False
1095 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
1096 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
1098 end Entry_Call_Alternative
;
1100 function Entry_Call_Statement
1101 (N
: Node_Id
) return Node_Id
is
1103 pragma Assert
(False
1104 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
1106 end Entry_Call_Statement
;
1108 function Entry_Direct_Name
1109 (N
: Node_Id
) return Node_Id
is
1111 pragma Assert
(False
1112 or else NT
(N
).Nkind
= N_Accept_Statement
);
1114 end Entry_Direct_Name
;
1116 function Entry_Index
1117 (N
: Node_Id
) return Node_Id
is
1119 pragma Assert
(False
1120 or else NT
(N
).Nkind
= N_Accept_Statement
);
1124 function Entry_Index_Specification
1125 (N
: Node_Id
) return Node_Id
is
1127 pragma Assert
(False
1128 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
1130 end Entry_Index_Specification
;
1133 (N
: Node_Id
) return Node_Id
is
1135 pragma Assert
(False
1136 or else NT
(N
).Nkind
in N_Has_Etype
);
1140 function Exception_Choices
1141 (N
: Node_Id
) return List_Id
is
1143 pragma Assert
(False
1144 or else NT
(N
).Nkind
= N_Exception_Handler
);
1146 end Exception_Choices
;
1148 function Exception_Handlers
1149 (N
: Node_Id
) return List_Id
is
1151 pragma Assert
(False
1152 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1154 end Exception_Handlers
;
1156 function Exception_Junk
1157 (N
: Node_Id
) return Boolean is
1159 pragma Assert
(False
1160 or else NT
(N
).Nkind
= N_Block_Statement
1161 or else NT
(N
).Nkind
= N_Goto_Statement
1162 or else NT
(N
).Nkind
= N_Label
1163 or else NT
(N
).Nkind
= N_Object_Declaration
1164 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1168 function Exception_Label
1169 (N
: Node_Id
) return Node_Id
is
1171 pragma Assert
(False
1172 or else NT
(N
).Nkind
= N_Exception_Handler
1173 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
1174 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
1175 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
1177 end Exception_Label
;
1179 function Expansion_Delayed
1180 (N
: Node_Id
) return Boolean is
1182 pragma Assert
(False
1183 or else NT
(N
).Nkind
= N_Aggregate
1184 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1186 end Expansion_Delayed
;
1188 function Explicit_Actual_Parameter
1189 (N
: Node_Id
) return Node_Id
is
1191 pragma Assert
(False
1192 or else NT
(N
).Nkind
= N_Parameter_Association
);
1194 end Explicit_Actual_Parameter
;
1196 function Explicit_Generic_Actual_Parameter
1197 (N
: Node_Id
) return Node_Id
is
1199 pragma Assert
(False
1200 or else NT
(N
).Nkind
= N_Generic_Association
);
1202 end Explicit_Generic_Actual_Parameter
;
1205 (N
: Node_Id
) return Node_Id
is
1207 pragma Assert
(False
1208 or else NT
(N
).Nkind
= N_Allocator
1209 or else NT
(N
).Nkind
= N_Aspect_Specification
1210 or else NT
(N
).Nkind
= N_Assignment_Statement
1211 or else NT
(N
).Nkind
= N_At_Clause
1212 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1213 or else NT
(N
).Nkind
= N_Case_Expression
1214 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
1215 or else NT
(N
).Nkind
= N_Case_Statement
1216 or else NT
(N
).Nkind
= N_Code_Statement
1217 or else NT
(N
).Nkind
= N_Component_Association
1218 or else NT
(N
).Nkind
= N_Component_Declaration
1219 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
1220 or else NT
(N
).Nkind
= N_Delay_Until_Statement
1221 or else NT
(N
).Nkind
= N_Discriminant_Association
1222 or else NT
(N
).Nkind
= N_Discriminant_Specification
1223 or else NT
(N
).Nkind
= N_Exception_Declaration
1224 or else NT
(N
).Nkind
= N_Expression_Function
1225 or else NT
(N
).Nkind
= N_Expression_With_Actions
1226 or else NT
(N
).Nkind
= N_Free_Statement
1227 or else NT
(N
).Nkind
= N_Mod_Clause
1228 or else NT
(N
).Nkind
= N_Modular_Type_Definition
1229 or else NT
(N
).Nkind
= N_Number_Declaration
1230 or else NT
(N
).Nkind
= N_Object_Declaration
1231 or else NT
(N
).Nkind
= N_Parameter_Specification
1232 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
1233 or else NT
(N
).Nkind
= N_Qualified_Expression
1234 or else NT
(N
).Nkind
= N_Raise_Statement
1235 or else NT
(N
).Nkind
= N_Return_Statement
1236 or else NT
(N
).Nkind
= N_Type_Conversion
1237 or else NT
(N
).Nkind
= N_Unchecked_Expression
1238 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1242 function Expressions
1243 (N
: Node_Id
) return List_Id
is
1245 pragma Assert
(False
1246 or else NT
(N
).Nkind
= N_Aggregate
1247 or else NT
(N
).Nkind
= N_Attribute_Reference
1248 or else NT
(N
).Nkind
= N_Conditional_Expression
1249 or else NT
(N
).Nkind
= N_Extension_Aggregate
1250 or else NT
(N
).Nkind
= N_Indexed_Component
);
1255 (N
: Node_Id
) return Node_Id
is
1257 pragma Assert
(False
1258 or else NT
(N
).Nkind
= N_Component_Clause
);
1262 function First_Inlined_Subprogram
1263 (N
: Node_Id
) return Entity_Id
is
1265 pragma Assert
(False
1266 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1268 end First_Inlined_Subprogram
;
1271 (N
: Node_Id
) return Boolean is
1273 pragma Assert
(False
1274 or else NT
(N
).Nkind
= N_With_Clause
);
1278 function First_Named_Actual
1279 (N
: Node_Id
) return Node_Id
is
1281 pragma Assert
(False
1282 or else NT
(N
).Nkind
= N_Entry_Call_Statement
1283 or else NT
(N
).Nkind
= N_Function_Call
1284 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
1286 end First_Named_Actual
;
1288 function First_Real_Statement
1289 (N
: Node_Id
) return Node_Id
is
1291 pragma Assert
(False
1292 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
1294 end First_Real_Statement
;
1296 function First_Subtype_Link
1297 (N
: Node_Id
) return Entity_Id
is
1299 pragma Assert
(False
1300 or else NT
(N
).Nkind
= N_Freeze_Entity
);
1302 end First_Subtype_Link
;
1304 function Float_Truncate
1305 (N
: Node_Id
) return Boolean is
1307 pragma Assert
(False
1308 or else NT
(N
).Nkind
= N_Type_Conversion
);
1312 function Formal_Type_Definition
1313 (N
: Node_Id
) return Node_Id
is
1315 pragma Assert
(False
1316 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
1318 end Formal_Type_Definition
;
1320 function Forwards_OK
1321 (N
: Node_Id
) return Boolean is
1323 pragma Assert
(False
1324 or else NT
(N
).Nkind
= N_Assignment_Statement
);
1328 function From_Aspect_Specification
1329 (N
: Node_Id
) return Boolean is
1331 pragma Assert
(False
1332 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1333 or else NT
(N
).Nkind
= N_Pragma
);
1335 end From_Aspect_Specification
;
1337 function From_At_End
1338 (N
: Node_Id
) return Boolean is
1340 pragma Assert
(False
1341 or else NT
(N
).Nkind
= N_Raise_Statement
);
1345 function From_At_Mod
1346 (N
: Node_Id
) return Boolean is
1348 pragma Assert
(False
1349 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
1353 function From_Default
1354 (N
: Node_Id
) return Boolean is
1356 pragma Assert
(False
1357 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
1361 function Generic_Associations
1362 (N
: Node_Id
) return List_Id
is
1364 pragma Assert
(False
1365 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1366 or else NT
(N
).Nkind
= N_Function_Instantiation
1367 or else NT
(N
).Nkind
= N_Package_Instantiation
1368 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1370 end Generic_Associations
;
1372 function Generic_Formal_Declarations
1373 (N
: Node_Id
) return List_Id
is
1375 pragma Assert
(False
1376 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
1377 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
1379 end Generic_Formal_Declarations
;
1381 function Generic_Parent
1382 (N
: Node_Id
) return Node_Id
is
1384 pragma Assert
(False
1385 or else NT
(N
).Nkind
= N_Function_Specification
1386 or else NT
(N
).Nkind
= N_Package_Specification
1387 or else NT
(N
).Nkind
= N_Procedure_Specification
);
1391 function Generic_Parent_Type
1392 (N
: Node_Id
) return Node_Id
is
1394 pragma Assert
(False
1395 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
1397 end Generic_Parent_Type
;
1399 function Handled_Statement_Sequence
1400 (N
: Node_Id
) return Node_Id
is
1402 pragma Assert
(False
1403 or else NT
(N
).Nkind
= N_Accept_Statement
1404 or else NT
(N
).Nkind
= N_Block_Statement
1405 or else NT
(N
).Nkind
= N_Entry_Body
1406 or else NT
(N
).Nkind
= N_Extended_Return_Statement
1407 or else NT
(N
).Nkind
= N_Package_Body
1408 or else NT
(N
).Nkind
= N_Subprogram_Body
1409 or else NT
(N
).Nkind
= N_Task_Body
);
1411 end Handled_Statement_Sequence
;
1413 function Handler_List_Entry
1414 (N
: Node_Id
) return Node_Id
is
1416 pragma Assert
(False
1417 or else NT
(N
).Nkind
= N_Object_Declaration
);
1419 end Handler_List_Entry
;
1421 function Has_Created_Identifier
1422 (N
: Node_Id
) return Boolean is
1424 pragma Assert
(False
1425 or else NT
(N
).Nkind
= N_Block_Statement
1426 or else NT
(N
).Nkind
= N_Loop_Statement
);
1428 end Has_Created_Identifier
;
1430 function Has_Dereference_Action
1431 (N
: Node_Id
) return Boolean is
1433 pragma Assert
(False
1434 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
1436 end Has_Dereference_Action
;
1438 function Has_Dynamic_Length_Check
1439 (N
: Node_Id
) return Boolean is
1441 pragma Assert
(False
1442 or else NT
(N
).Nkind
in N_Subexpr
);
1444 end Has_Dynamic_Length_Check
;
1446 function Has_Dynamic_Range_Check
1447 (N
: Node_Id
) return Boolean is
1449 pragma Assert
(False
1450 or else NT
(N
).Nkind
= N_Subtype_Declaration
1451 or else NT
(N
).Nkind
in N_Subexpr
);
1453 end Has_Dynamic_Range_Check
;
1455 function Has_Init_Expression
1456 (N
: Node_Id
) return Boolean is
1458 pragma Assert
(False
1459 or else NT
(N
).Nkind
= N_Object_Declaration
);
1461 end Has_Init_Expression
;
1463 function Has_Local_Raise
1464 (N
: Node_Id
) return Boolean is
1466 pragma Assert
(False
1467 or else NT
(N
).Nkind
= N_Exception_Handler
);
1469 end Has_Local_Raise
;
1471 function Has_No_Elaboration_Code
1472 (N
: Node_Id
) return Boolean is
1474 pragma Assert
(False
1475 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1477 end Has_No_Elaboration_Code
;
1479 function Has_Pragma_CPU
1480 (N
: Node_Id
) return Boolean is
1482 pragma Assert
(False
1483 or else NT
(N
).Nkind
= N_Subprogram_Body
1484 or else NT
(N
).Nkind
= N_Task_Definition
);
1488 function Has_Pragma_Dispatching_Domain
1489 (N
: Node_Id
) return Boolean is
1491 pragma Assert
(False
1492 or else NT
(N
).Nkind
= N_Task_Definition
);
1494 end Has_Pragma_Dispatching_Domain
;
1496 function Has_Pragma_Priority
1497 (N
: Node_Id
) return Boolean is
1499 pragma Assert
(False
1500 or else NT
(N
).Nkind
= N_Protected_Definition
1501 or else NT
(N
).Nkind
= N_Subprogram_Body
1502 or else NT
(N
).Nkind
= N_Task_Definition
);
1504 end Has_Pragma_Priority
;
1506 function Has_Pragma_Suppress_All
1507 (N
: Node_Id
) return Boolean is
1509 pragma Assert
(False
1510 or else NT
(N
).Nkind
= N_Compilation_Unit
);
1512 end Has_Pragma_Suppress_All
;
1514 function Has_Private_View
1515 (N
: Node_Id
) return Boolean is
1517 pragma Assert
(False
1518 or else NT
(N
).Nkind
in N_Op
1519 or else NT
(N
).Nkind
= N_Character_Literal
1520 or else NT
(N
).Nkind
= N_Expanded_Name
1521 or else NT
(N
).Nkind
= N_Identifier
1522 or else NT
(N
).Nkind
= N_Operator_Symbol
);
1524 end Has_Private_View
;
1526 function Has_Relative_Deadline_Pragma
1527 (N
: Node_Id
) return Boolean is
1529 pragma Assert
(False
1530 or else NT
(N
).Nkind
= N_Subprogram_Body
1531 or else NT
(N
).Nkind
= N_Task_Definition
);
1533 end Has_Relative_Deadline_Pragma
;
1535 function Has_Self_Reference
1536 (N
: Node_Id
) return Boolean is
1538 pragma Assert
(False
1539 or else NT
(N
).Nkind
= N_Aggregate
1540 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
1542 end Has_Self_Reference
;
1544 function Has_Storage_Size_Pragma
1545 (N
: Node_Id
) return Boolean is
1547 pragma Assert
(False
1548 or else NT
(N
).Nkind
= N_Task_Definition
);
1550 end Has_Storage_Size_Pragma
;
1552 function Has_Task_Info_Pragma
1553 (N
: Node_Id
) return Boolean is
1555 pragma Assert
(False
1556 or else NT
(N
).Nkind
= N_Task_Definition
);
1558 end Has_Task_Info_Pragma
;
1560 function Has_Task_Name_Pragma
1561 (N
: Node_Id
) return Boolean is
1563 pragma Assert
(False
1564 or else NT
(N
).Nkind
= N_Task_Definition
);
1566 end Has_Task_Name_Pragma
;
1568 function Has_Wide_Character
1569 (N
: Node_Id
) return Boolean is
1571 pragma Assert
(False
1572 or else NT
(N
).Nkind
= N_String_Literal
);
1574 end Has_Wide_Character
;
1576 function Has_Wide_Wide_Character
1577 (N
: Node_Id
) return Boolean is
1579 pragma Assert
(False
1580 or else NT
(N
).Nkind
= N_String_Literal
);
1582 end Has_Wide_Wide_Character
;
1584 function Header_Size_Added
1585 (N
: Node_Id
) return Boolean is
1587 pragma Assert
(False
1588 or else NT
(N
).Nkind
= N_Attribute_Reference
);
1590 end Header_Size_Added
;
1592 function Hidden_By_Use_Clause
1593 (N
: Node_Id
) return Elist_Id
is
1595 pragma Assert
(False
1596 or else NT
(N
).Nkind
= N_Use_Package_Clause
1597 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
1599 end Hidden_By_Use_Clause
;
1602 (N
: Node_Id
) return Node_Id
is
1604 pragma Assert
(False
1605 or else NT
(N
).Nkind
= N_Range
1606 or else NT
(N
).Nkind
= N_Real_Range_Specification
1607 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
1612 (N
: Node_Id
) return Node_Id
is
1614 pragma Assert
(False
1615 or else NT
(N
).Nkind
= N_Aspect_Specification
1616 or else NT
(N
).Nkind
= N_At_Clause
1617 or else NT
(N
).Nkind
= N_Block_Statement
1618 or else NT
(N
).Nkind
= N_Designator
1619 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
1620 or else NT
(N
).Nkind
= N_Label
1621 or else NT
(N
).Nkind
= N_Loop_Statement
1622 or else NT
(N
).Nkind
= N_Record_Representation_Clause
1623 or else NT
(N
).Nkind
= N_Subprogram_Info
);
1627 function Implicit_With
1628 (N
: Node_Id
) return Boolean is
1630 pragma Assert
(False
1631 or else NT
(N
).Nkind
= N_With_Clause
);
1635 function Implicit_With_From_Instantiation
1636 (N
: Node_Id
) return Boolean is
1638 pragma Assert
(False
1639 or else NT
(N
).Nkind
= N_With_Clause
);
1641 end Implicit_With_From_Instantiation
;
1643 function Interface_List
1644 (N
: Node_Id
) return List_Id
is
1646 pragma Assert
(False
1647 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1648 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
1649 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
1650 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
1651 or else NT
(N
).Nkind
= N_Record_Definition
1652 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
1653 or else NT
(N
).Nkind
= N_Single_Task_Declaration
1654 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
1658 function Interface_Present
1659 (N
: Node_Id
) return Boolean is
1661 pragma Assert
(False
1662 or else NT
(N
).Nkind
= N_Derived_Type_Definition
1663 or else NT
(N
).Nkind
= N_Record_Definition
);
1665 end Interface_Present
;
1667 function Import_Interface_Present
1668 (N
: Node_Id
) return Boolean is
1670 pragma Assert
(False
1671 or else NT
(N
).Nkind
= N_Pragma
);
1673 end Import_Interface_Present
;
1676 (N
: Node_Id
) return Boolean is
1678 pragma Assert
(False
1679 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
1680 or else NT
(N
).Nkind
= N_Parameter_Specification
);
1684 function Includes_Infinities
1685 (N
: Node_Id
) return Boolean is
1687 pragma Assert
(False
1688 or else NT
(N
).Nkind
= N_Range
);
1690 end Includes_Infinities
;
1692 function Inherited_Discriminant
1693 (N
: Node_Id
) return Boolean is
1695 pragma Assert
(False
1696 or else NT
(N
).Nkind
= N_Component_Association
);
1698 end Inherited_Discriminant
;
1700 function Instance_Spec
1701 (N
: Node_Id
) return Node_Id
is
1703 pragma Assert
(False
1704 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
1705 or else NT
(N
).Nkind
= N_Function_Instantiation
1706 or else NT
(N
).Nkind
= N_Package_Instantiation
1707 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
1712 (N
: Node_Id
) return Uint
is
1714 pragma Assert
(False
1715 or else NT
(N
).Nkind
= N_Integer_Literal
);
1719 function Is_Accessibility_Actual
1720 (N
: Node_Id
) return Boolean is
1722 pragma Assert
(False
1723 or else NT
(N
).Nkind
= N_Parameter_Association
);
1725 end Is_Accessibility_Actual
;
1727 function Is_Asynchronous_Call_Block
1728 (N
: Node_Id
) return Boolean is
1730 pragma Assert
(False
1731 or else NT
(N
).Nkind
= N_Block_Statement
);
1733 end Is_Asynchronous_Call_Block
;
1735 function Is_Boolean_Aspect
1736 (N
: Node_Id
) return Boolean is
1738 pragma Assert
(False
1739 or else NT
(N
).Nkind
= N_Aspect_Specification
);
1741 end Is_Boolean_Aspect
;
1743 function Is_Component_Left_Opnd
1744 (N
: Node_Id
) return Boolean is
1746 pragma Assert
(False
1747 or else NT
(N
).Nkind
= N_Op_Concat
);
1749 end Is_Component_Left_Opnd
;
1751 function Is_Component_Right_Opnd
1752 (N
: Node_Id
) return Boolean is
1754 pragma Assert
(False
1755 or else NT
(N
).Nkind
= N_Op_Concat
);
1757 end Is_Component_Right_Opnd
;
1759 function Is_Controlling_Actual
1760 (N
: Node_Id
) return Boolean is
1762 pragma Assert
(False
1763 or else NT
(N
).Nkind
in N_Subexpr
);
1765 end Is_Controlling_Actual
;
1767 function Is_Delayed_Aspect
1768 (N
: Node_Id
) return Boolean is
1770 pragma Assert
(False
1771 or else NT
(N
).Nkind
= N_Aspect_Specification
1772 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
1773 or else NT
(N
).Nkind
= N_Pragma
);
1775 end Is_Delayed_Aspect
;
1777 function Is_Dynamic_Coextension
1778 (N
: Node_Id
) return Boolean is
1780 pragma Assert
(False
1781 or else NT
(N
).Nkind
= N_Allocator
);
1783 end Is_Dynamic_Coextension
;
1786 (N
: Node_Id
) return Boolean is
1788 pragma Assert
(False
1789 or else NT
(N
).Nkind
= N_Conditional_Expression
);
1793 function Is_Entry_Barrier_Function
1794 (N
: Node_Id
) return Boolean is
1796 pragma Assert
(False
1797 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1799 end Is_Entry_Barrier_Function
;
1801 function Is_Expanded_Build_In_Place_Call
1802 (N
: Node_Id
) return Boolean is
1804 pragma Assert
(False
1805 or else NT
(N
).Nkind
= N_Function_Call
);
1807 end Is_Expanded_Build_In_Place_Call
;
1809 function Is_Folded_In_Parser
1810 (N
: Node_Id
) return Boolean is
1812 pragma Assert
(False
1813 or else NT
(N
).Nkind
= N_String_Literal
);
1815 end Is_Folded_In_Parser
;
1817 function Is_In_Discriminant_Check
1818 (N
: Node_Id
) return Boolean is
1820 pragma Assert
(False
1821 or else NT
(N
).Nkind
= N_Selected_Component
);
1823 end Is_In_Discriminant_Check
;
1825 function Is_Machine_Number
1826 (N
: Node_Id
) return Boolean is
1828 pragma Assert
(False
1829 or else NT
(N
).Nkind
= N_Real_Literal
);
1831 end Is_Machine_Number
;
1833 function Is_Null_Loop
1834 (N
: Node_Id
) return Boolean is
1836 pragma Assert
(False
1837 or else NT
(N
).Nkind
= N_Loop_Statement
);
1841 function Is_Overloaded
1842 (N
: Node_Id
) return Boolean is
1844 pragma Assert
(False
1845 or else NT
(N
).Nkind
in N_Subexpr
);
1849 function Is_Power_Of_2_For_Shift
1850 (N
: Node_Id
) return Boolean is
1852 pragma Assert
(False
1853 or else NT
(N
).Nkind
= N_Op_Expon
);
1855 end Is_Power_Of_2_For_Shift
;
1857 function Is_Prefixed_Call
1858 (N
: Node_Id
) return Boolean is
1860 pragma Assert
(False
1861 or else NT
(N
).Nkind
= N_Selected_Component
);
1863 end Is_Prefixed_Call
;
1865 function Is_Protected_Subprogram_Body
1866 (N
: Node_Id
) return Boolean is
1868 pragma Assert
(False
1869 or else NT
(N
).Nkind
= N_Subprogram_Body
);
1871 end Is_Protected_Subprogram_Body
;
1873 function Is_Static_Coextension
1874 (N
: Node_Id
) return Boolean is
1876 pragma Assert
(False
1877 or else NT
(N
).Nkind
= N_Allocator
);
1879 end Is_Static_Coextension
;
1881 function Is_Static_Expression
1882 (N
: Node_Id
) return Boolean is
1884 pragma Assert
(False
1885 or else NT
(N
).Nkind
in N_Subexpr
);
1887 end Is_Static_Expression
;
1889 function Is_Subprogram_Descriptor
1890 (N
: Node_Id
) return Boolean is
1892 pragma Assert
(False
1893 or else NT
(N
).Nkind
= N_Object_Declaration
);
1895 end Is_Subprogram_Descriptor
;
1897 function Is_Task_Allocation_Block
1898 (N
: Node_Id
) return Boolean is
1900 pragma Assert
(False
1901 or else NT
(N
).Nkind
= N_Block_Statement
);
1903 end Is_Task_Allocation_Block
;
1905 function Is_Task_Master
1906 (N
: Node_Id
) return Boolean is
1908 pragma Assert
(False
1909 or else NT
(N
).Nkind
= N_Block_Statement
1910 or else NT
(N
).Nkind
= N_Subprogram_Body
1911 or else NT
(N
).Nkind
= N_Task_Body
);
1915 function Iteration_Scheme
1916 (N
: Node_Id
) return Node_Id
is
1918 pragma Assert
(False
1919 or else NT
(N
).Nkind
= N_Loop_Statement
);
1921 end Iteration_Scheme
;
1923 function Iterator_Specification
1924 (N
: Node_Id
) return Node_Id
is
1926 pragma Assert
(False
1927 or else NT
(N
).Nkind
= N_Iteration_Scheme
1928 or else NT
(N
).Nkind
= N_Quantified_Expression
);
1930 end Iterator_Specification
;
1933 (N
: Node_Id
) return Node_Id
is
1935 pragma Assert
(False
1936 or else NT
(N
).Nkind
= N_Itype_Reference
);
1940 function Kill_Range_Check
1941 (N
: Node_Id
) return Boolean is
1943 pragma Assert
(False
1944 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
1946 end Kill_Range_Check
;
1948 function Label_Construct
1949 (N
: Node_Id
) return Node_Id
is
1951 pragma Assert
(False
1952 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
1954 end Label_Construct
;
1957 (N
: Node_Id
) return Node_Id
is
1959 pragma Assert
(False
1960 or else NT
(N
).Nkind
= N_Component_Clause
);
1965 (N
: Node_Id
) return Boolean is
1967 pragma Assert
(False
1968 or else NT
(N
).Nkind
= N_With_Clause
);
1973 (N
: Node_Id
) return Node_Id
is
1975 pragma Assert
(False
1976 or else NT
(N
).Nkind
= N_And_Then
1977 or else NT
(N
).Nkind
= N_In
1978 or else NT
(N
).Nkind
= N_Not_In
1979 or else NT
(N
).Nkind
= N_Or_Else
1980 or else NT
(N
).Nkind
in N_Binary_Op
);
1984 function Library_Unit
1985 (N
: Node_Id
) return Node_Id
is
1987 pragma Assert
(False
1988 or else NT
(N
).Nkind
= N_Compilation_Unit
1989 or else NT
(N
).Nkind
= N_Package_Body_Stub
1990 or else NT
(N
).Nkind
= N_Protected_Body_Stub
1991 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
1992 or else NT
(N
).Nkind
= N_Task_Body_Stub
1993 or else NT
(N
).Nkind
= N_With_Clause
);
1997 function Limited_View_Installed
1998 (N
: Node_Id
) return Boolean is
2000 pragma Assert
(False
2001 or else NT
(N
).Nkind
= N_Package_Specification
2002 or else NT
(N
).Nkind
= N_With_Clause
);
2004 end Limited_View_Installed
;
2006 function Limited_Present
2007 (N
: Node_Id
) return Boolean is
2009 pragma Assert
(False
2010 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2011 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2012 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2013 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2014 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2015 or else NT
(N
).Nkind
= N_Record_Definition
2016 or else NT
(N
).Nkind
= N_With_Clause
);
2018 end Limited_Present
;
2021 (N
: Node_Id
) return List_Id
is
2023 pragma Assert
(False
2024 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
2028 function Local_Raise_Not_OK
2029 (N
: Node_Id
) return Boolean is
2031 pragma Assert
(False
2032 or else NT
(N
).Nkind
= N_Exception_Handler
);
2034 end Local_Raise_Not_OK
;
2036 function Local_Raise_Statements
2037 (N
: Node_Id
) return Elist_Id
is
2039 pragma Assert
(False
2040 or else NT
(N
).Nkind
= N_Exception_Handler
);
2042 end Local_Raise_Statements
;
2044 function Loop_Actions
2045 (N
: Node_Id
) return List_Id
is
2047 pragma Assert
(False
2048 or else NT
(N
).Nkind
= N_Component_Association
);
2052 function Loop_Parameter_Specification
2053 (N
: Node_Id
) return Node_Id
is
2055 pragma Assert
(False
2056 or else NT
(N
).Nkind
= N_Iteration_Scheme
2057 or else NT
(N
).Nkind
= N_Quantified_Expression
);
2059 end Loop_Parameter_Specification
;
2062 (N
: Node_Id
) return Node_Id
is
2064 pragma Assert
(False
2065 or else NT
(N
).Nkind
= N_Range
2066 or else NT
(N
).Nkind
= N_Real_Range_Specification
2067 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
2072 (N
: Node_Id
) return Node_Id
is
2074 pragma Assert
(False
2075 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2080 (N
: Node_Id
) return Boolean is
2082 pragma Assert
(False
2083 or else NT
(N
).Nkind
= N_Component_Declaration
2084 or else NT
(N
).Nkind
= N_Discriminant_Specification
2085 or else NT
(N
).Nkind
= N_Exception_Declaration
2086 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2087 or else NT
(N
).Nkind
= N_Number_Declaration
2088 or else NT
(N
).Nkind
= N_Object_Declaration
2089 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2093 function Must_Be_Byte_Aligned
2094 (N
: Node_Id
) return Boolean is
2096 pragma Assert
(False
2097 or else NT
(N
).Nkind
= N_Attribute_Reference
);
2099 end Must_Be_Byte_Aligned
;
2101 function Must_Not_Freeze
2102 (N
: Node_Id
) return Boolean is
2104 pragma Assert
(False
2105 or else NT
(N
).Nkind
= N_Subtype_Indication
2106 or else NT
(N
).Nkind
in N_Subexpr
);
2108 end Must_Not_Freeze
;
2110 function Must_Not_Override
2111 (N
: Node_Id
) return Boolean is
2113 pragma Assert
(False
2114 or else NT
(N
).Nkind
= N_Entry_Declaration
2115 or else NT
(N
).Nkind
= N_Function_Instantiation
2116 or else NT
(N
).Nkind
= N_Function_Specification
2117 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2118 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2120 end Must_Not_Override
;
2122 function Must_Override
2123 (N
: Node_Id
) return Boolean is
2125 pragma Assert
(False
2126 or else NT
(N
).Nkind
= N_Entry_Declaration
2127 or else NT
(N
).Nkind
= N_Function_Instantiation
2128 or else NT
(N
).Nkind
= N_Function_Specification
2129 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2130 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2135 (N
: Node_Id
) return Node_Id
is
2137 pragma Assert
(False
2138 or else NT
(N
).Nkind
= N_Assignment_Statement
2139 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2140 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
2141 or else NT
(N
).Nkind
= N_Designator
2142 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2143 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
2144 or else NT
(N
).Nkind
= N_Exit_Statement
2145 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
2146 or else NT
(N
).Nkind
= N_Function_Call
2147 or else NT
(N
).Nkind
= N_Function_Instantiation
2148 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2149 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2150 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2151 or else NT
(N
).Nkind
= N_Goto_Statement
2152 or else NT
(N
).Nkind
= N_Iterator_Specification
2153 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2154 or else NT
(N
).Nkind
= N_Package_Instantiation
2155 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2156 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
2157 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2158 or else NT
(N
).Nkind
= N_Raise_Statement
2159 or else NT
(N
).Nkind
= N_Requeue_Statement
2160 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
2161 or else NT
(N
).Nkind
= N_Subunit
2162 or else NT
(N
).Nkind
= N_Variant_Part
2163 or else NT
(N
).Nkind
= N_With_Clause
);
2168 (N
: Node_Id
) return List_Id
is
2170 pragma Assert
(False
2171 or else NT
(N
).Nkind
= N_Abort_Statement
2172 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
2176 function Next_Entity
2177 (N
: Node_Id
) return Node_Id
is
2179 pragma Assert
(False
2180 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2181 or else NT
(N
).Nkind
= N_Defining_Identifier
2182 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2186 function Next_Exit_Statement
2187 (N
: Node_Id
) return Node_Id
is
2189 pragma Assert
(False
2190 or else NT
(N
).Nkind
= N_Exit_Statement
);
2192 end Next_Exit_Statement
;
2194 function Next_Implicit_With
2195 (N
: Node_Id
) return Node_Id
is
2197 pragma Assert
(False
2198 or else NT
(N
).Nkind
= N_With_Clause
);
2200 end Next_Implicit_With
;
2202 function Next_Named_Actual
2203 (N
: Node_Id
) return Node_Id
is
2205 pragma Assert
(False
2206 or else NT
(N
).Nkind
= N_Parameter_Association
);
2208 end Next_Named_Actual
;
2210 function Next_Pragma
2211 (N
: Node_Id
) return Node_Id
is
2213 pragma Assert
(False
2214 or else NT
(N
).Nkind
= N_Pragma
);
2218 function Next_Rep_Item
2219 (N
: Node_Id
) return Node_Id
is
2221 pragma Assert
(False
2222 or else NT
(N
).Nkind
= N_Aspect_Specification
2223 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
2224 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
2225 or else NT
(N
).Nkind
= N_Pragma
2226 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
2230 function Next_Use_Clause
2231 (N
: Node_Id
) return Node_Id
is
2233 pragma Assert
(False
2234 or else NT
(N
).Nkind
= N_Use_Package_Clause
2235 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2237 end Next_Use_Clause
;
2239 function No_Ctrl_Actions
2240 (N
: Node_Id
) return Boolean is
2242 pragma Assert
(False
2243 or else NT
(N
).Nkind
= N_Assignment_Statement
);
2245 end No_Ctrl_Actions
;
2247 function No_Elaboration_Check
2248 (N
: Node_Id
) return Boolean is
2250 pragma Assert
(False
2251 or else NT
(N
).Nkind
= N_Function_Call
2252 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2254 end No_Elaboration_Check
;
2256 function No_Entities_Ref_In_Spec
2257 (N
: Node_Id
) return Boolean is
2259 pragma Assert
(False
2260 or else NT
(N
).Nkind
= N_With_Clause
);
2262 end No_Entities_Ref_In_Spec
;
2264 function No_Initialization
2265 (N
: Node_Id
) return Boolean is
2267 pragma Assert
(False
2268 or else NT
(N
).Nkind
= N_Allocator
2269 or else NT
(N
).Nkind
= N_Object_Declaration
);
2271 end No_Initialization
;
2273 function No_Truncation
2274 (N
: Node_Id
) return Boolean is
2276 pragma Assert
(False
2277 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2281 function Null_Present
2282 (N
: Node_Id
) return Boolean is
2284 pragma Assert
(False
2285 or else NT
(N
).Nkind
= N_Component_List
2286 or else NT
(N
).Nkind
= N_Procedure_Specification
2287 or else NT
(N
).Nkind
= N_Record_Definition
);
2291 function Null_Exclusion_Present
2292 (N
: Node_Id
) return Boolean is
2294 pragma Assert
(False
2295 or else NT
(N
).Nkind
= N_Access_Definition
2296 or else NT
(N
).Nkind
= N_Access_Function_Definition
2297 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2298 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2299 or else NT
(N
).Nkind
= N_Allocator
2300 or else NT
(N
).Nkind
= N_Component_Definition
2301 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2302 or else NT
(N
).Nkind
= N_Discriminant_Specification
2303 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2304 or else NT
(N
).Nkind
= N_Function_Specification
2305 or else NT
(N
).Nkind
= N_Object_Declaration
2306 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2307 or else NT
(N
).Nkind
= N_Parameter_Specification
2308 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2310 end Null_Exclusion_Present
;
2312 function Null_Exclusion_In_Return_Present
2313 (N
: Node_Id
) return Boolean is
2315 pragma Assert
(False
2316 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
2318 end Null_Exclusion_In_Return_Present
;
2320 function Null_Record_Present
2321 (N
: Node_Id
) return Boolean is
2323 pragma Assert
(False
2324 or else NT
(N
).Nkind
= N_Aggregate
2325 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
2327 end Null_Record_Present
;
2329 function Object_Definition
2330 (N
: Node_Id
) return Node_Id
is
2332 pragma Assert
(False
2333 or else NT
(N
).Nkind
= N_Object_Declaration
);
2335 end Object_Definition
;
2338 (N
: Node_Id
) return Boolean is
2340 pragma Assert
(False
2341 or else NT
(N
).Nkind
= N_Iterator_Specification
);
2345 function Original_Discriminant
2346 (N
: Node_Id
) return Node_Id
is
2348 pragma Assert
(False
2349 or else NT
(N
).Nkind
= N_Identifier
);
2351 end Original_Discriminant
;
2353 function Original_Entity
2354 (N
: Node_Id
) return Entity_Id
is
2356 pragma Assert
(False
2357 or else NT
(N
).Nkind
= N_Integer_Literal
2358 or else NT
(N
).Nkind
= N_Real_Literal
);
2360 end Original_Entity
;
2362 function Others_Discrete_Choices
2363 (N
: Node_Id
) return List_Id
is
2365 pragma Assert
(False
2366 or else NT
(N
).Nkind
= N_Others_Choice
);
2368 end Others_Discrete_Choices
;
2370 function Out_Present
2371 (N
: Node_Id
) return Boolean is
2373 pragma Assert
(False
2374 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2375 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2379 function Parameter_Associations
2380 (N
: Node_Id
) return List_Id
is
2382 pragma Assert
(False
2383 or else NT
(N
).Nkind
= N_Entry_Call_Statement
2384 or else NT
(N
).Nkind
= N_Function_Call
2385 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2387 end Parameter_Associations
;
2389 function Parameter_List_Truncated
2390 (N
: Node_Id
) return Boolean is
2392 pragma Assert
(False
2393 or else NT
(N
).Nkind
= N_Function_Call
2394 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
2396 end Parameter_List_Truncated
;
2398 function Parameter_Specifications
2399 (N
: Node_Id
) return List_Id
is
2401 pragma Assert
(False
2402 or else NT
(N
).Nkind
= N_Accept_Statement
2403 or else NT
(N
).Nkind
= N_Access_Function_Definition
2404 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2405 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
2406 or else NT
(N
).Nkind
= N_Entry_Declaration
2407 or else NT
(N
).Nkind
= N_Function_Specification
2408 or else NT
(N
).Nkind
= N_Procedure_Specification
);
2410 end Parameter_Specifications
;
2412 function Parameter_Type
2413 (N
: Node_Id
) return Node_Id
is
2415 pragma Assert
(False
2416 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2420 function Parent_Spec
2421 (N
: Node_Id
) return Node_Id
is
2423 pragma Assert
(False
2424 or else NT
(N
).Nkind
= N_Function_Instantiation
2425 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
2426 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2427 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
2428 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
2429 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2430 or else NT
(N
).Nkind
= N_Package_Declaration
2431 or else NT
(N
).Nkind
= N_Package_Instantiation
2432 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
2433 or else NT
(N
).Nkind
= N_Procedure_Instantiation
2434 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2435 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2440 (N
: Node_Id
) return Node_Id
is
2442 pragma Assert
(False
2443 or else NT
(N
).Nkind
= N_Component_Clause
);
2447 function Pragma_Argument_Associations
2448 (N
: Node_Id
) return List_Id
is
2450 pragma Assert
(False
2451 or else NT
(N
).Nkind
= N_Pragma
);
2453 end Pragma_Argument_Associations
;
2455 function Pragma_Identifier
2456 (N
: Node_Id
) return Node_Id
is
2458 pragma Assert
(False
2459 or else NT
(N
).Nkind
= N_Pragma
);
2461 end Pragma_Identifier
;
2463 function Pragmas_After
2464 (N
: Node_Id
) return List_Id
is
2466 pragma Assert
(False
2467 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
2468 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
2472 function Pragmas_Before
2473 (N
: Node_Id
) return List_Id
is
2475 pragma Assert
(False
2476 or else NT
(N
).Nkind
= N_Accept_Alternative
2477 or else NT
(N
).Nkind
= N_Delay_Alternative
2478 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2479 or else NT
(N
).Nkind
= N_Mod_Clause
2480 or else NT
(N
).Nkind
= N_Terminate_Alternative
2481 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2486 (N
: Node_Id
) return Node_Id
is
2488 pragma Assert
(False
2489 or else NT
(N
).Nkind
= N_Attribute_Reference
2490 or else NT
(N
).Nkind
= N_Expanded_Name
2491 or else NT
(N
).Nkind
= N_Explicit_Dereference
2492 or else NT
(N
).Nkind
= N_Indexed_Component
2493 or else NT
(N
).Nkind
= N_Reference
2494 or else NT
(N
).Nkind
= N_Selected_Component
2495 or else NT
(N
).Nkind
= N_Slice
);
2499 function Premature_Use
2500 (N
: Node_Id
) return Node_Id
is
2502 pragma Assert
(False
2503 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
2507 function Present_Expr
2508 (N
: Node_Id
) return Uint
is
2510 pragma Assert
(False
2511 or else NT
(N
).Nkind
= N_Variant
);
2516 (N
: Node_Id
) return Boolean is
2518 pragma Assert
(False
2519 or else NT
(N
).Nkind
= N_Component_Declaration
2520 or else NT
(N
).Nkind
= N_Discriminant_Specification
2521 or else NT
(N
).Nkind
= N_Exception_Declaration
2522 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2523 or else NT
(N
).Nkind
= N_Number_Declaration
2524 or else NT
(N
).Nkind
= N_Object_Declaration
2525 or else NT
(N
).Nkind
= N_Parameter_Specification
);
2529 function Print_In_Hex
2530 (N
: Node_Id
) return Boolean is
2532 pragma Assert
(False
2533 or else NT
(N
).Nkind
= N_Integer_Literal
);
2537 function Private_Declarations
2538 (N
: Node_Id
) return List_Id
is
2540 pragma Assert
(False
2541 or else NT
(N
).Nkind
= N_Package_Specification
2542 or else NT
(N
).Nkind
= N_Protected_Definition
2543 or else NT
(N
).Nkind
= N_Task_Definition
);
2545 end Private_Declarations
;
2547 function Private_Present
2548 (N
: Node_Id
) return Boolean is
2550 pragma Assert
(False
2551 or else NT
(N
).Nkind
= N_Compilation_Unit
2552 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2553 or else NT
(N
).Nkind
= N_With_Clause
);
2555 end Private_Present
;
2557 function Procedure_To_Call
2558 (N
: Node_Id
) return Node_Id
is
2560 pragma Assert
(False
2561 or else NT
(N
).Nkind
= N_Allocator
2562 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2563 or else NT
(N
).Nkind
= N_Free_Statement
2564 or else NT
(N
).Nkind
= N_Return_Statement
);
2566 end Procedure_To_Call
;
2568 function Proper_Body
2569 (N
: Node_Id
) return Node_Id
is
2571 pragma Assert
(False
2572 or else NT
(N
).Nkind
= N_Subunit
);
2576 function Protected_Definition
2577 (N
: Node_Id
) return Node_Id
is
2579 pragma Assert
(False
2580 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
2581 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
2583 end Protected_Definition
;
2585 function Protected_Present
2586 (N
: Node_Id
) return Boolean is
2588 pragma Assert
(False
2589 or else NT
(N
).Nkind
= N_Access_Function_Definition
2590 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
2591 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2592 or else NT
(N
).Nkind
= N_Record_Definition
);
2594 end Protected_Present
;
2596 function Raises_Constraint_Error
2597 (N
: Node_Id
) return Boolean is
2599 pragma Assert
(False
2600 or else NT
(N
).Nkind
in N_Subexpr
);
2602 end Raises_Constraint_Error
;
2604 function Range_Constraint
2605 (N
: Node_Id
) return Node_Id
is
2607 pragma Assert
(False
2608 or else NT
(N
).Nkind
= N_Delta_Constraint
2609 or else NT
(N
).Nkind
= N_Digits_Constraint
);
2611 end Range_Constraint
;
2613 function Range_Expression
2614 (N
: Node_Id
) return Node_Id
is
2616 pragma Assert
(False
2617 or else NT
(N
).Nkind
= N_Range_Constraint
);
2619 end Range_Expression
;
2621 function Real_Range_Specification
2622 (N
: Node_Id
) return Node_Id
is
2624 pragma Assert
(False
2625 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
2626 or else NT
(N
).Nkind
= N_Floating_Point_Definition
2627 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
2629 end Real_Range_Specification
;
2632 (N
: Node_Id
) return Ureal
is
2634 pragma Assert
(False
2635 or else NT
(N
).Nkind
= N_Real_Literal
);
2640 (N
: Node_Id
) return Uint
is
2642 pragma Assert
(False
2643 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
2644 or else NT
(N
).Nkind
= N_Raise_Program_Error
2645 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
2649 function Record_Extension_Part
2650 (N
: Node_Id
) return Node_Id
is
2652 pragma Assert
(False
2653 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
2655 end Record_Extension_Part
;
2657 function Redundant_Use
2658 (N
: Node_Id
) return Boolean is
2660 pragma Assert
(False
2661 or else NT
(N
).Nkind
= N_Attribute_Reference
2662 or else NT
(N
).Nkind
= N_Expanded_Name
2663 or else NT
(N
).Nkind
= N_Identifier
);
2667 function Renaming_Exception
2668 (N
: Node_Id
) return Node_Id
is
2670 pragma Assert
(False
2671 or else NT
(N
).Nkind
= N_Exception_Declaration
);
2673 end Renaming_Exception
;
2675 function Result_Definition
2676 (N
: Node_Id
) return Node_Id
is
2678 pragma Assert
(False
2679 or else NT
(N
).Nkind
= N_Access_Function_Definition
2680 or else NT
(N
).Nkind
= N_Function_Specification
);
2682 end Result_Definition
;
2684 function Return_Object_Declarations
2685 (N
: Node_Id
) return List_Id
is
2687 pragma Assert
(False
2688 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
2690 end Return_Object_Declarations
;
2692 function Return_Statement_Entity
2693 (N
: Node_Id
) return Node_Id
is
2695 pragma Assert
(False
2696 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2697 or else NT
(N
).Nkind
= N_Return_Statement
);
2699 end Return_Statement_Entity
;
2701 function Reverse_Present
2702 (N
: Node_Id
) return Boolean is
2704 pragma Assert
(False
2705 or else NT
(N
).Nkind
= N_Iterator_Specification
2706 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
2708 end Reverse_Present
;
2711 (N
: Node_Id
) return Node_Id
is
2713 pragma Assert
(False
2714 or else NT
(N
).Nkind
in N_Op
2715 or else NT
(N
).Nkind
= N_And_Then
2716 or else NT
(N
).Nkind
= N_In
2717 or else NT
(N
).Nkind
= N_Not_In
2718 or else NT
(N
).Nkind
= N_Or_Else
);
2722 function Rounded_Result
2723 (N
: Node_Id
) return Boolean is
2725 pragma Assert
(False
2726 or else NT
(N
).Nkind
= N_Op_Divide
2727 or else NT
(N
).Nkind
= N_Op_Multiply
2728 or else NT
(N
).Nkind
= N_Type_Conversion
);
2732 function SCIL_Controlling_Tag
2733 (N
: Node_Id
) return Node_Id
is
2735 pragma Assert
(False
2736 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2738 end SCIL_Controlling_Tag
;
2740 function SCIL_Entity
2741 (N
: Node_Id
) return Node_Id
is
2743 pragma Assert
(False
2744 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
2745 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
2746 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2750 function SCIL_Tag_Value
2751 (N
: Node_Id
) return Node_Id
is
2753 pragma Assert
(False
2754 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
2758 function SCIL_Target_Prim
2759 (N
: Node_Id
) return Node_Id
is
2761 pragma Assert
(False
2762 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
2764 end SCIL_Target_Prim
;
2767 (N
: Node_Id
) return Node_Id
is
2769 pragma Assert
(False
2770 or else NT
(N
).Nkind
= N_Defining_Character_Literal
2771 or else NT
(N
).Nkind
= N_Defining_Identifier
2772 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
2776 function Select_Alternatives
2777 (N
: Node_Id
) return List_Id
is
2779 pragma Assert
(False
2780 or else NT
(N
).Nkind
= N_Selective_Accept
);
2782 end Select_Alternatives
;
2784 function Selector_Name
2785 (N
: Node_Id
) return Node_Id
is
2787 pragma Assert
(False
2788 or else NT
(N
).Nkind
= N_Expanded_Name
2789 or else NT
(N
).Nkind
= N_Generic_Association
2790 or else NT
(N
).Nkind
= N_Parameter_Association
2791 or else NT
(N
).Nkind
= N_Selected_Component
);
2795 function Selector_Names
2796 (N
: Node_Id
) return List_Id
is
2798 pragma Assert
(False
2799 or else NT
(N
).Nkind
= N_Discriminant_Association
);
2803 function Shift_Count_OK
2804 (N
: Node_Id
) return Boolean is
2806 pragma Assert
(False
2807 or else NT
(N
).Nkind
= N_Op_Rotate_Left
2808 or else NT
(N
).Nkind
= N_Op_Rotate_Right
2809 or else NT
(N
).Nkind
= N_Op_Shift_Left
2810 or else NT
(N
).Nkind
= N_Op_Shift_Right
2811 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
2815 function Source_Type
2816 (N
: Node_Id
) return Entity_Id
is
2818 pragma Assert
(False
2819 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
2823 function Spec_PPC_List
2824 (N
: Node_Id
) return Node_Id
is
2826 pragma Assert
(False
2827 or else NT
(N
).Nkind
= N_Contract
);
2831 function Spec_CTC_List
2832 (N
: Node_Id
) return Node_Id
is
2834 pragma Assert
(False
2835 or else NT
(N
).Nkind
= N_Contract
);
2839 function Specification
2840 (N
: Node_Id
) return Node_Id
is
2842 pragma Assert
(False
2843 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
2844 or else NT
(N
).Nkind
= N_Expression_Function
2845 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
2846 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
2847 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
2848 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
2849 or else NT
(N
).Nkind
= N_Package_Declaration
2850 or else NT
(N
).Nkind
= N_Subprogram_Body
2851 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
2852 or else NT
(N
).Nkind
= N_Subprogram_Declaration
2853 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
2858 (N
: Node_Id
) return Boolean is
2860 pragma Assert
(False
2861 or else NT
(N
).Nkind
= N_Aspect_Specification
2862 or else NT
(N
).Nkind
= N_Pragma
);
2867 (N
: Node_Id
) return List_Id
is
2869 pragma Assert
(False
2870 or else NT
(N
).Nkind
= N_Abortable_Part
2871 or else NT
(N
).Nkind
= N_Accept_Alternative
2872 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
2873 or else NT
(N
).Nkind
= N_Delay_Alternative
2874 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
2875 or else NT
(N
).Nkind
= N_Exception_Handler
2876 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
2877 or else NT
(N
).Nkind
= N_Loop_Statement
2878 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
2882 function Static_Processing_OK
2883 (N
: Node_Id
) return Boolean is
2885 pragma Assert
(False
2886 or else NT
(N
).Nkind
= N_Aggregate
);
2888 end Static_Processing_OK
;
2890 function Storage_Pool
2891 (N
: Node_Id
) return Node_Id
is
2893 pragma Assert
(False
2894 or else NT
(N
).Nkind
= N_Allocator
2895 or else NT
(N
).Nkind
= N_Extended_Return_Statement
2896 or else NT
(N
).Nkind
= N_Free_Statement
2897 or else NT
(N
).Nkind
= N_Return_Statement
);
2901 function Subpool_Handle_Name
2902 (N
: Node_Id
) return Node_Id
is
2904 pragma Assert
(False
2905 or else NT
(N
).Nkind
= N_Allocator
);
2907 end Subpool_Handle_Name
;
2910 (N
: Node_Id
) return String_Id
is
2912 pragma Assert
(False
2913 or else NT
(N
).Nkind
= N_Operator_Symbol
2914 or else NT
(N
).Nkind
= N_String_Literal
);
2918 function Subtype_Indication
2919 (N
: Node_Id
) return Node_Id
is
2921 pragma Assert
(False
2922 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
2923 or else NT
(N
).Nkind
= N_Component_Definition
2924 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2925 or else NT
(N
).Nkind
= N_Iterator_Specification
2926 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2927 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
2929 end Subtype_Indication
;
2931 function Suppress_Assignment_Checks
2932 (N
: Node_Id
) return Boolean is
2934 pragma Assert
(False
2935 or else NT
(N
).Nkind
= N_Assignment_Statement
2936 or else NT
(N
).Nkind
= N_Object_Declaration
);
2938 end Suppress_Assignment_Checks
;
2940 function Suppress_Loop_Warnings
2941 (N
: Node_Id
) return Boolean is
2943 pragma Assert
(False
2944 or else NT
(N
).Nkind
= N_Loop_Statement
);
2946 end Suppress_Loop_Warnings
;
2948 function Subtype_Mark
2949 (N
: Node_Id
) return Node_Id
is
2951 pragma Assert
(False
2952 or else NT
(N
).Nkind
= N_Access_Definition
2953 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2954 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
2955 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
2956 or else NT
(N
).Nkind
= N_Qualified_Expression
2957 or else NT
(N
).Nkind
= N_Subtype_Indication
2958 or else NT
(N
).Nkind
= N_Type_Conversion
2959 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
2963 function Subtype_Marks
2964 (N
: Node_Id
) return List_Id
is
2966 pragma Assert
(False
2967 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
2968 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
2972 function Synchronized_Present
2973 (N
: Node_Id
) return Boolean is
2975 pragma Assert
(False
2976 or else NT
(N
).Nkind
= N_Derived_Type_Definition
2977 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
2978 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
2979 or else NT
(N
).Nkind
= N_Record_Definition
);
2981 end Synchronized_Present
;
2983 function Tagged_Present
2984 (N
: Node_Id
) return Boolean is
2986 pragma Assert
(False
2987 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
2988 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
2989 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
2990 or else NT
(N
).Nkind
= N_Private_Type_Declaration
2991 or else NT
(N
).Nkind
= N_Record_Definition
);
2995 function Target_Type
2996 (N
: Node_Id
) return Entity_Id
is
2998 pragma Assert
(False
2999 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
3003 function Task_Definition
3004 (N
: Node_Id
) return Node_Id
is
3006 pragma Assert
(False
3007 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3008 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3010 end Task_Definition
;
3012 function Task_Present
3013 (N
: Node_Id
) return Boolean is
3015 pragma Assert
(False
3016 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3017 or else NT
(N
).Nkind
= N_Record_Definition
);
3021 function Then_Actions
3022 (N
: Node_Id
) return List_Id
is
3024 pragma Assert
(False
3025 or else NT
(N
).Nkind
= N_Conditional_Expression
);
3029 function Then_Statements
3030 (N
: Node_Id
) return List_Id
is
3032 pragma Assert
(False
3033 or else NT
(N
).Nkind
= N_Elsif_Part
3034 or else NT
(N
).Nkind
= N_If_Statement
);
3036 end Then_Statements
;
3038 function Treat_Fixed_As_Integer
3039 (N
: Node_Id
) return Boolean is
3041 pragma Assert
(False
3042 or else NT
(N
).Nkind
= N_Op_Divide
3043 or else NT
(N
).Nkind
= N_Op_Mod
3044 or else NT
(N
).Nkind
= N_Op_Multiply
3045 or else NT
(N
).Nkind
= N_Op_Rem
);
3047 end Treat_Fixed_As_Integer
;
3049 function Triggering_Alternative
3050 (N
: Node_Id
) return Node_Id
is
3052 pragma Assert
(False
3053 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3055 end Triggering_Alternative
;
3057 function Triggering_Statement
3058 (N
: Node_Id
) return Node_Id
is
3060 pragma Assert
(False
3061 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
3063 end Triggering_Statement
;
3066 (N
: Node_Id
) return Elist_Id
is
3068 pragma Assert
(False
3069 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3073 function Type_Definition
3074 (N
: Node_Id
) return Node_Id
is
3076 pragma Assert
(False
3077 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3079 end Type_Definition
;
3082 (N
: Node_Id
) return Node_Id
is
3084 pragma Assert
(False
3085 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3089 function Unknown_Discriminants_Present
3090 (N
: Node_Id
) return Boolean is
3092 pragma Assert
(False
3093 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3094 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3095 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3096 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
3098 end Unknown_Discriminants_Present
;
3100 function Unreferenced_In_Spec
3101 (N
: Node_Id
) return Boolean is
3103 pragma Assert
(False
3104 or else NT
(N
).Nkind
= N_With_Clause
);
3106 end Unreferenced_In_Spec
;
3108 function Variant_Part
3109 (N
: Node_Id
) return Node_Id
is
3111 pragma Assert
(False
3112 or else NT
(N
).Nkind
= N_Component_List
);
3117 (N
: Node_Id
) return List_Id
is
3119 pragma Assert
(False
3120 or else NT
(N
).Nkind
= N_Variant_Part
);
3124 function Visible_Declarations
3125 (N
: Node_Id
) return List_Id
is
3127 pragma Assert
(False
3128 or else NT
(N
).Nkind
= N_Package_Specification
3129 or else NT
(N
).Nkind
= N_Protected_Definition
3130 or else NT
(N
).Nkind
= N_Task_Definition
);
3132 end Visible_Declarations
;
3134 function Used_Operations
3135 (N
: Node_Id
) return Elist_Id
is
3137 pragma Assert
(False
3138 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3140 end Used_Operations
;
3142 function Was_Originally_Stub
3143 (N
: Node_Id
) return Boolean is
3145 pragma Assert
(False
3146 or else NT
(N
).Nkind
= N_Package_Body
3147 or else NT
(N
).Nkind
= N_Protected_Body
3148 or else NT
(N
).Nkind
= N_Subprogram_Body
3149 or else NT
(N
).Nkind
= N_Task_Body
);
3151 end Was_Originally_Stub
;
3153 function Withed_Body
3154 (N
: Node_Id
) return Node_Id
is
3156 pragma Assert
(False
3157 or else NT
(N
).Nkind
= N_With_Clause
);
3161 --------------------------
3162 -- Field Set Procedures --
3163 --------------------------
3165 procedure Set_ABE_Is_Certain
3166 (N
: Node_Id
; Val
: Boolean := True) is
3168 pragma Assert
(False
3169 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3170 or else NT
(N
).Nkind
= N_Function_Call
3171 or else NT
(N
).Nkind
= N_Function_Instantiation
3172 or else NT
(N
).Nkind
= N_Package_Instantiation
3173 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
3174 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
3175 Set_Flag18
(N
, Val
);
3176 end Set_ABE_Is_Certain
;
3178 procedure Set_Abort_Present
3179 (N
: Node_Id
; Val
: Boolean := True) is
3181 pragma Assert
(False
3182 or else NT
(N
).Nkind
= N_Requeue_Statement
);
3183 Set_Flag15
(N
, Val
);
3184 end Set_Abort_Present
;
3186 procedure Set_Abortable_Part
3187 (N
: Node_Id
; Val
: Node_Id
) is
3189 pragma Assert
(False
3190 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
3191 Set_Node2_With_Parent
(N
, Val
);
3192 end Set_Abortable_Part
;
3194 procedure Set_Abstract_Present
3195 (N
: Node_Id
; Val
: Boolean := True) is
3197 pragma Assert
(False
3198 or else NT
(N
).Nkind
= N_Derived_Type_Definition
3199 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
3200 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
3201 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3202 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3203 or else NT
(N
).Nkind
= N_Record_Definition
);
3205 end Set_Abstract_Present
;
3207 procedure Set_Accept_Handler_Records
3208 (N
: Node_Id
; Val
: List_Id
) is
3210 pragma Assert
(False
3211 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3212 Set_List5
(N
, Val
); -- semantic field, no parent set
3213 end Set_Accept_Handler_Records
;
3215 procedure Set_Accept_Statement
3216 (N
: Node_Id
; Val
: Node_Id
) is
3218 pragma Assert
(False
3219 or else NT
(N
).Nkind
= N_Accept_Alternative
);
3220 Set_Node2_With_Parent
(N
, Val
);
3221 end Set_Accept_Statement
;
3223 procedure Set_Access_Definition
3224 (N
: Node_Id
; Val
: Node_Id
) is
3226 pragma Assert
(False
3227 or else NT
(N
).Nkind
= N_Component_Definition
3228 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3229 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3230 Set_Node3_With_Parent
(N
, Val
);
3231 end Set_Access_Definition
;
3233 procedure Set_Access_To_Subprogram_Definition
3234 (N
: Node_Id
; Val
: Node_Id
) is
3236 pragma Assert
(False
3237 or else NT
(N
).Nkind
= N_Access_Definition
);
3238 Set_Node3_With_Parent
(N
, Val
);
3239 end Set_Access_To_Subprogram_Definition
;
3241 procedure Set_Access_Types_To_Process
3242 (N
: Node_Id
; Val
: Elist_Id
) is
3244 pragma Assert
(False
3245 or else NT
(N
).Nkind
= N_Freeze_Entity
);
3246 Set_Elist2
(N
, Val
); -- semantic field, no parent set
3247 end Set_Access_Types_To_Process
;
3249 procedure Set_Actions
3250 (N
: Node_Id
; Val
: List_Id
) is
3252 pragma Assert
(False
3253 or else NT
(N
).Nkind
= N_And_Then
3254 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3255 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3256 or else NT
(N
).Nkind
= N_Expression_With_Actions
3257 or else NT
(N
).Nkind
= N_Freeze_Entity
3258 or else NT
(N
).Nkind
= N_Or_Else
);
3259 Set_List1_With_Parent
(N
, Val
);
3262 procedure Set_Activation_Chain_Entity
3263 (N
: Node_Id
; Val
: Node_Id
) is
3265 pragma Assert
(False
3266 or else NT
(N
).Nkind
= N_Block_Statement
3267 or else NT
(N
).Nkind
= N_Entry_Body
3268 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3269 or else NT
(N
).Nkind
= N_Package_Declaration
3270 or else NT
(N
).Nkind
= N_Subprogram_Body
3271 or else NT
(N
).Nkind
= N_Task_Body
);
3272 Set_Node3
(N
, Val
); -- semantic field, no parent set
3273 end Set_Activation_Chain_Entity
;
3275 procedure Set_Acts_As_Spec
3276 (N
: Node_Id
; Val
: Boolean := True) is
3278 pragma Assert
(False
3279 or else NT
(N
).Nkind
= N_Compilation_Unit
3280 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3282 end Set_Acts_As_Spec
;
3284 procedure Set_Actual_Designated_Subtype
3285 (N
: Node_Id
; Val
: Node_Id
) is
3287 pragma Assert
(False
3288 or else NT
(N
).Nkind
= N_Explicit_Dereference
3289 or else NT
(N
).Nkind
= N_Free_Statement
);
3291 end Set_Actual_Designated_Subtype
;
3293 procedure Set_Address_Warning_Posted
3294 (N
: Node_Id
; Val
: Boolean := True) is
3296 pragma Assert
(False
3297 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3298 Set_Flag18
(N
, Val
);
3299 end Set_Address_Warning_Posted
;
3301 procedure Set_Aggregate_Bounds
3302 (N
: Node_Id
; Val
: Node_Id
) is
3304 pragma Assert
(False
3305 or else NT
(N
).Nkind
= N_Aggregate
);
3306 Set_Node3
(N
, Val
); -- semantic field, no parent set
3307 end Set_Aggregate_Bounds
;
3309 procedure Set_Aliased_Present
3310 (N
: Node_Id
; Val
: Boolean := True) is
3312 pragma Assert
(False
3313 or else NT
(N
).Nkind
= N_Component_Definition
3314 or else NT
(N
).Nkind
= N_Object_Declaration
3315 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3317 end Set_Aliased_Present
;
3319 procedure Set_All_Others
3320 (N
: Node_Id
; Val
: Boolean := True) is
3322 pragma Assert
(False
3323 or else NT
(N
).Nkind
= N_Others_Choice
);
3324 Set_Flag11
(N
, Val
);
3327 procedure Set_All_Present
3328 (N
: Node_Id
; Val
: Boolean := True) is
3330 pragma Assert
(False
3331 or else NT
(N
).Nkind
= N_Access_Definition
3332 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3333 or else NT
(N
).Nkind
= N_Quantified_Expression
3334 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
3335 Set_Flag15
(N
, Val
);
3336 end Set_All_Present
;
3338 procedure Set_Alternatives
3339 (N
: Node_Id
; Val
: List_Id
) is
3341 pragma Assert
(False
3342 or else NT
(N
).Nkind
= N_Case_Expression
3343 or else NT
(N
).Nkind
= N_Case_Statement
3344 or else NT
(N
).Nkind
= N_In
3345 or else NT
(N
).Nkind
= N_Not_In
);
3346 Set_List4_With_Parent
(N
, Val
);
3347 end Set_Alternatives
;
3349 procedure Set_Ancestor_Part
3350 (N
: Node_Id
; Val
: Node_Id
) is
3352 pragma Assert
(False
3353 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3354 Set_Node3_With_Parent
(N
, Val
);
3355 end Set_Ancestor_Part
;
3357 procedure Set_Atomic_Sync_Required
3358 (N
: Node_Id
; Val
: Boolean := True) is
3360 pragma Assert
(False
3361 or else NT
(N
).Nkind
= N_Expanded_Name
3362 or else NT
(N
).Nkind
= N_Explicit_Dereference
3363 or else NT
(N
).Nkind
= N_Identifier
3364 or else NT
(N
).Nkind
= N_Indexed_Component
3365 or else NT
(N
).Nkind
= N_Selected_Component
);
3366 Set_Flag14
(N
, Val
);
3367 end Set_Atomic_Sync_Required
;
3369 procedure Set_Array_Aggregate
3370 (N
: Node_Id
; Val
: Node_Id
) is
3372 pragma Assert
(False
3373 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
);
3374 Set_Node3_With_Parent
(N
, Val
);
3375 end Set_Array_Aggregate
;
3377 procedure Set_Aspect_Rep_Item
3378 (N
: Node_Id
; Val
: Node_Id
) is
3380 pragma Assert
(False
3381 or else NT
(N
).Nkind
= N_Aspect_Specification
);
3383 end Set_Aspect_Rep_Item
;
3385 procedure Set_Assignment_OK
3386 (N
: Node_Id
; Val
: Boolean := True) is
3388 pragma Assert
(False
3389 or else NT
(N
).Nkind
= N_Object_Declaration
3390 or else NT
(N
).Nkind
in N_Subexpr
);
3391 Set_Flag15
(N
, Val
);
3392 end Set_Assignment_OK
;
3394 procedure Set_Associated_Node
3395 (N
: Node_Id
; Val
: Node_Id
) is
3397 pragma Assert
(False
3398 or else NT
(N
).Nkind
in N_Has_Entity
3399 or else NT
(N
).Nkind
= N_Aggregate
3400 or else NT
(N
).Nkind
= N_Extension_Aggregate
3401 or else NT
(N
).Nkind
= N_Selected_Component
);
3402 Set_Node4
(N
, Val
); -- semantic field, no parent set
3403 end Set_Associated_Node
;
3405 procedure Set_At_End_Proc
3406 (N
: Node_Id
; Val
: Node_Id
) is
3408 pragma Assert
(False
3409 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
3411 end Set_At_End_Proc
;
3413 procedure Set_Attribute_Name
3414 (N
: Node_Id
; Val
: Name_Id
) is
3416 pragma Assert
(False
3417 or else NT
(N
).Nkind
= N_Attribute_Reference
);
3419 end Set_Attribute_Name
;
3421 procedure Set_Aux_Decls_Node
3422 (N
: Node_Id
; Val
: Node_Id
) is
3424 pragma Assert
(False
3425 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3426 Set_Node5_With_Parent
(N
, Val
);
3427 end Set_Aux_Decls_Node
;
3429 procedure Set_Backwards_OK
3430 (N
: Node_Id
; Val
: Boolean := True) is
3432 pragma Assert
(False
3433 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3435 end Set_Backwards_OK
;
3437 procedure Set_Bad_Is_Detected
3438 (N
: Node_Id
; Val
: Boolean := True) is
3440 pragma Assert
(False
3441 or else NT
(N
).Nkind
= N_Subprogram_Body
);
3442 Set_Flag15
(N
, Val
);
3443 end Set_Bad_Is_Detected
;
3445 procedure Set_Body_Required
3446 (N
: Node_Id
; Val
: Boolean := True) is
3448 pragma Assert
(False
3449 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3450 Set_Flag13
(N
, Val
);
3451 end Set_Body_Required
;
3453 procedure Set_Body_To_Inline
3454 (N
: Node_Id
; Val
: Node_Id
) is
3456 pragma Assert
(False
3457 or else NT
(N
).Nkind
= N_Subprogram_Declaration
);
3459 end Set_Body_To_Inline
;
3461 procedure Set_Box_Present
3462 (N
: Node_Id
; Val
: Boolean := True) is
3464 pragma Assert
(False
3465 or else NT
(N
).Nkind
= N_Component_Association
3466 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3467 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
3468 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3469 or else NT
(N
).Nkind
= N_Generic_Association
);
3470 Set_Flag15
(N
, Val
);
3471 end Set_Box_Present
;
3473 procedure Set_By_Ref
3474 (N
: Node_Id
; Val
: Boolean := True) is
3476 pragma Assert
(False
3477 or else NT
(N
).Nkind
= N_Extended_Return_Statement
3478 or else NT
(N
).Nkind
= N_Return_Statement
);
3482 procedure Set_Char_Literal_Value
3483 (N
: Node_Id
; Val
: Uint
) is
3485 pragma Assert
(False
3486 or else NT
(N
).Nkind
= N_Character_Literal
);
3488 end Set_Char_Literal_Value
;
3491 (N
: Node_Id
; Val
: Name_Id
) is
3493 pragma Assert
(False
3494 or else NT
(N
).Nkind
in N_Has_Chars
);
3498 procedure Set_Check_Address_Alignment
3499 (N
: Node_Id
; Val
: Boolean := True) is
3501 pragma Assert
(False
3502 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
3503 Set_Flag11
(N
, Val
);
3504 end Set_Check_Address_Alignment
;
3506 procedure Set_Choice_Parameter
3507 (N
: Node_Id
; Val
: Node_Id
) is
3509 pragma Assert
(False
3510 or else NT
(N
).Nkind
= N_Exception_Handler
);
3511 Set_Node2_With_Parent
(N
, Val
);
3512 end Set_Choice_Parameter
;
3514 procedure Set_Choices
3515 (N
: Node_Id
; Val
: List_Id
) is
3517 pragma Assert
(False
3518 or else NT
(N
).Nkind
= N_Component_Association
);
3519 Set_List1_With_Parent
(N
, Val
);
3522 procedure Set_Class_Present
3523 (N
: Node_Id
; Val
: Boolean := True) is
3525 pragma Assert
(False
3526 or else NT
(N
).Nkind
= N_Aspect_Specification
3527 or else NT
(N
).Nkind
= N_Pragma
);
3529 end Set_Class_Present
;
3531 procedure Set_Comes_From_Extended_Return_Statement
3532 (N
: Node_Id
; Val
: Boolean := True) is
3534 pragma Assert
(False
3535 or else NT
(N
).Nkind
= N_Return_Statement
);
3536 Set_Flag18
(N
, Val
);
3537 end Set_Comes_From_Extended_Return_Statement
;
3539 procedure Set_Compile_Time_Known_Aggregate
3540 (N
: Node_Id
; Val
: Boolean := True) is
3542 pragma Assert
(False
3543 or else NT
(N
).Nkind
= N_Aggregate
);
3544 Set_Flag18
(N
, Val
);
3545 end Set_Compile_Time_Known_Aggregate
;
3547 procedure Set_Component_Associations
3548 (N
: Node_Id
; Val
: List_Id
) is
3550 pragma Assert
(False
3551 or else NT
(N
).Nkind
= N_Aggregate
3552 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
3553 Set_List2_With_Parent
(N
, Val
);
3554 end Set_Component_Associations
;
3556 procedure Set_Component_Clauses
3557 (N
: Node_Id
; Val
: List_Id
) is
3559 pragma Assert
(False
3560 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
3561 Set_List3_With_Parent
(N
, Val
);
3562 end Set_Component_Clauses
;
3564 procedure Set_Component_Definition
3565 (N
: Node_Id
; Val
: Node_Id
) is
3567 pragma Assert
(False
3568 or else NT
(N
).Nkind
= N_Component_Declaration
3569 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
3570 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
);
3571 Set_Node4_With_Parent
(N
, Val
);
3572 end Set_Component_Definition
;
3574 procedure Set_Component_Items
3575 (N
: Node_Id
; Val
: List_Id
) is
3577 pragma Assert
(False
3578 or else NT
(N
).Nkind
= N_Component_List
);
3579 Set_List3_With_Parent
(N
, Val
);
3580 end Set_Component_Items
;
3582 procedure Set_Component_List
3583 (N
: Node_Id
; Val
: Node_Id
) is
3585 pragma Assert
(False
3586 or else NT
(N
).Nkind
= N_Record_Definition
3587 or else NT
(N
).Nkind
= N_Variant
);
3588 Set_Node1_With_Parent
(N
, Val
);
3589 end Set_Component_List
;
3591 procedure Set_Component_Name
3592 (N
: Node_Id
; Val
: Node_Id
) is
3594 pragma Assert
(False
3595 or else NT
(N
).Nkind
= N_Component_Clause
);
3596 Set_Node1_With_Parent
(N
, Val
);
3597 end Set_Component_Name
;
3599 procedure Set_Componentwise_Assignment
3600 (N
: Node_Id
; Val
: Boolean := True) is
3602 pragma Assert
(False
3603 or else NT
(N
).Nkind
= N_Assignment_Statement
);
3604 Set_Flag14
(N
, Val
);
3605 end Set_Componentwise_Assignment
;
3607 procedure Set_Condition
3608 (N
: Node_Id
; Val
: Node_Id
) is
3610 pragma Assert
(False
3611 or else NT
(N
).Nkind
= N_Accept_Alternative
3612 or else NT
(N
).Nkind
= N_Delay_Alternative
3613 or else NT
(N
).Nkind
= N_Elsif_Part
3614 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
3615 or else NT
(N
).Nkind
= N_Exit_Statement
3616 or else NT
(N
).Nkind
= N_If_Statement
3617 or else NT
(N
).Nkind
= N_Iteration_Scheme
3618 or else NT
(N
).Nkind
= N_Quantified_Expression
3619 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
3620 or else NT
(N
).Nkind
= N_Raise_Program_Error
3621 or else NT
(N
).Nkind
= N_Raise_Storage_Error
3622 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
3623 Set_Node1_With_Parent
(N
, Val
);
3626 procedure Set_Condition_Actions
3627 (N
: Node_Id
; Val
: List_Id
) is
3629 pragma Assert
(False
3630 or else NT
(N
).Nkind
= N_Elsif_Part
3631 or else NT
(N
).Nkind
= N_Iteration_Scheme
);
3632 Set_List3
(N
, Val
); -- semantic field, no parent set
3633 end Set_Condition_Actions
;
3635 procedure Set_Config_Pragmas
3636 (N
: Node_Id
; Val
: List_Id
) is
3638 pragma Assert
(False
3639 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3640 Set_List4_With_Parent
(N
, Val
);
3641 end Set_Config_Pragmas
;
3643 procedure Set_Constant_Present
3644 (N
: Node_Id
; Val
: Boolean := True) is
3646 pragma Assert
(False
3647 or else NT
(N
).Nkind
= N_Access_Definition
3648 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
3649 or else NT
(N
).Nkind
= N_Object_Declaration
);
3650 Set_Flag17
(N
, Val
);
3651 end Set_Constant_Present
;
3653 procedure Set_Constraint
3654 (N
: Node_Id
; Val
: Node_Id
) is
3656 pragma Assert
(False
3657 or else NT
(N
).Nkind
= N_Subtype_Indication
);
3658 Set_Node3_With_Parent
(N
, Val
);
3661 procedure Set_Constraints
3662 (N
: Node_Id
; Val
: List_Id
) is
3664 pragma Assert
(False
3665 or else NT
(N
).Nkind
= N_Index_Or_Discriminant_Constraint
);
3666 Set_List1_With_Parent
(N
, Val
);
3667 end Set_Constraints
;
3669 procedure Set_Context_Installed
3670 (N
: Node_Id
; Val
: Boolean := True) is
3672 pragma Assert
(False
3673 or else NT
(N
).Nkind
= N_With_Clause
);
3674 Set_Flag13
(N
, Val
);
3675 end Set_Context_Installed
;
3677 procedure Set_Context_Items
3678 (N
: Node_Id
; Val
: List_Id
) is
3680 pragma Assert
(False
3681 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3682 Set_List1_With_Parent
(N
, Val
);
3683 end Set_Context_Items
;
3685 procedure Set_Context_Pending
3686 (N
: Node_Id
; Val
: Boolean := True) is
3688 pragma Assert
(False
3689 or else NT
(N
).Nkind
= N_Compilation_Unit
);
3690 Set_Flag16
(N
, Val
);
3691 end Set_Context_Pending
;
3693 procedure Set_Controlling_Argument
3694 (N
: Node_Id
; Val
: Node_Id
) is
3696 pragma Assert
(False
3697 or else NT
(N
).Nkind
= N_Function_Call
3698 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
3699 Set_Node1
(N
, Val
); -- semantic field, no parent set
3700 end Set_Controlling_Argument
;
3702 procedure Set_Conversion_OK
3703 (N
: Node_Id
; Val
: Boolean := True) is
3705 pragma Assert
(False
3706 or else NT
(N
).Nkind
= N_Type_Conversion
);
3707 Set_Flag14
(N
, Val
);
3708 end Set_Conversion_OK
;
3710 procedure Set_Corresponding_Aspect
3711 (N
: Node_Id
; Val
: Node_Id
) is
3713 pragma Assert
(False
3714 or else NT
(N
).Nkind
= N_Pragma
);
3716 end Set_Corresponding_Aspect
;
3718 procedure Set_Corresponding_Body
3719 (N
: Node_Id
; Val
: Node_Id
) is
3721 pragma Assert
(False
3722 or else NT
(N
).Nkind
= N_Entry_Declaration
3723 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
3724 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
3725 or else NT
(N
).Nkind
= N_Package_Body_Stub
3726 or else NT
(N
).Nkind
= N_Package_Declaration
3727 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3728 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3729 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
3730 or else NT
(N
).Nkind
= N_Subprogram_Declaration
3731 or else NT
(N
).Nkind
= N_Task_Body_Stub
3732 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3733 Set_Node5
(N
, Val
); -- semantic field, no parent set
3734 end Set_Corresponding_Body
;
3736 procedure Set_Corresponding_Formal_Spec
3737 (N
: Node_Id
; Val
: Node_Id
) is
3739 pragma Assert
(False
3740 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
3741 Set_Node3
(N
, Val
); -- semantic field, no parent set
3742 end Set_Corresponding_Formal_Spec
;
3744 procedure Set_Corresponding_Generic_Association
3745 (N
: Node_Id
; Val
: Node_Id
) is
3747 pragma Assert
(False
3748 or else NT
(N
).Nkind
= N_Object_Declaration
3749 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
);
3750 Set_Node5
(N
, Val
); -- semantic field, no parent set
3751 end Set_Corresponding_Generic_Association
;
3753 procedure Set_Corresponding_Integer_Value
3754 (N
: Node_Id
; Val
: Uint
) is
3756 pragma Assert
(False
3757 or else NT
(N
).Nkind
= N_Real_Literal
);
3758 Set_Uint4
(N
, Val
); -- semantic field, no parent set
3759 end Set_Corresponding_Integer_Value
;
3761 procedure Set_Corresponding_Spec
3762 (N
: Node_Id
; Val
: Node_Id
) is
3764 pragma Assert
(False
3765 or else NT
(N
).Nkind
= N_Expression_Function
3766 or else NT
(N
).Nkind
= N_Package_Body
3767 or else NT
(N
).Nkind
= N_Protected_Body
3768 or else NT
(N
).Nkind
= N_Subprogram_Body
3769 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
3770 or else NT
(N
).Nkind
= N_Task_Body
3771 or else NT
(N
).Nkind
= N_With_Clause
);
3772 Set_Node5
(N
, Val
); -- semantic field, no parent set
3773 end Set_Corresponding_Spec
;
3775 procedure Set_Corresponding_Stub
3776 (N
: Node_Id
; Val
: Node_Id
) is
3778 pragma Assert
(False
3779 or else NT
(N
).Nkind
= N_Subunit
);
3781 end Set_Corresponding_Stub
;
3783 procedure Set_Dcheck_Function
3784 (N
: Node_Id
; Val
: Entity_Id
) is
3786 pragma Assert
(False
3787 or else NT
(N
).Nkind
= N_Variant
);
3788 Set_Node5
(N
, Val
); -- semantic field, no parent set
3789 end Set_Dcheck_Function
;
3791 procedure Set_Declarations
3792 (N
: Node_Id
; Val
: List_Id
) is
3794 pragma Assert
(False
3795 or else NT
(N
).Nkind
= N_Accept_Statement
3796 or else NT
(N
).Nkind
= N_Block_Statement
3797 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
3798 or else NT
(N
).Nkind
= N_Entry_Body
3799 or else NT
(N
).Nkind
= N_Package_Body
3800 or else NT
(N
).Nkind
= N_Protected_Body
3801 or else NT
(N
).Nkind
= N_Subprogram_Body
3802 or else NT
(N
).Nkind
= N_Task_Body
);
3803 Set_List2_With_Parent
(N
, Val
);
3804 end Set_Declarations
;
3806 procedure Set_Default_Expression
3807 (N
: Node_Id
; Val
: Node_Id
) is
3809 pragma Assert
(False
3810 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3811 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3812 Set_Node5
(N
, Val
); -- semantic field, no parent set
3813 end Set_Default_Expression
;
3815 procedure Set_Default_Storage_Pool
3816 (N
: Node_Id
; Val
: Node_Id
) is
3818 pragma Assert
(False
3819 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
);
3820 Set_Node3
(N
, Val
); -- semantic field, no parent set
3821 end Set_Default_Storage_Pool
;
3823 procedure Set_Default_Name
3824 (N
: Node_Id
; Val
: Node_Id
) is
3826 pragma Assert
(False
3827 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
3828 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
);
3829 Set_Node2_With_Parent
(N
, Val
);
3830 end Set_Default_Name
;
3832 procedure Set_Defining_Identifier
3833 (N
: Node_Id
; Val
: Entity_Id
) is
3835 pragma Assert
(False
3836 or else NT
(N
).Nkind
= N_Component_Declaration
3837 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
3838 or else NT
(N
).Nkind
= N_Discriminant_Specification
3839 or else NT
(N
).Nkind
= N_Entry_Body
3840 or else NT
(N
).Nkind
= N_Entry_Declaration
3841 or else NT
(N
).Nkind
= N_Entry_Index_Specification
3842 or else NT
(N
).Nkind
= N_Exception_Declaration
3843 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
3844 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
3845 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
3846 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3847 or else NT
(N
).Nkind
= N_Full_Type_Declaration
3848 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
3849 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3850 or else NT
(N
).Nkind
= N_Iterator_Specification
3851 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
3852 or else NT
(N
).Nkind
= N_Number_Declaration
3853 or else NT
(N
).Nkind
= N_Object_Declaration
3854 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
3855 or else NT
(N
).Nkind
= N_Package_Body_Stub
3856 or else NT
(N
).Nkind
= N_Parameter_Specification
3857 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3858 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3859 or else NT
(N
).Nkind
= N_Protected_Body
3860 or else NT
(N
).Nkind
= N_Protected_Body_Stub
3861 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3862 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
3863 or else NT
(N
).Nkind
= N_Single_Task_Declaration
3864 or else NT
(N
).Nkind
= N_Subtype_Declaration
3865 or else NT
(N
).Nkind
= N_Task_Body
3866 or else NT
(N
).Nkind
= N_Task_Body_Stub
3867 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3868 Set_Node1_With_Parent
(N
, Val
);
3869 end Set_Defining_Identifier
;
3871 procedure Set_Defining_Unit_Name
3872 (N
: Node_Id
; Val
: Node_Id
) is
3874 pragma Assert
(False
3875 or else NT
(N
).Nkind
= N_Function_Instantiation
3876 or else NT
(N
).Nkind
= N_Function_Specification
3877 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
3878 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
3879 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
3880 or else NT
(N
).Nkind
= N_Package_Body
3881 or else NT
(N
).Nkind
= N_Package_Instantiation
3882 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
3883 or else NT
(N
).Nkind
= N_Package_Specification
3884 or else NT
(N
).Nkind
= N_Procedure_Instantiation
3885 or else NT
(N
).Nkind
= N_Procedure_Specification
);
3886 Set_Node1_With_Parent
(N
, Val
);
3887 end Set_Defining_Unit_Name
;
3889 procedure Set_Delay_Alternative
3890 (N
: Node_Id
; Val
: Node_Id
) is
3892 pragma Assert
(False
3893 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
3894 Set_Node4_With_Parent
(N
, Val
);
3895 end Set_Delay_Alternative
;
3897 procedure Set_Delay_Statement
3898 (N
: Node_Id
; Val
: Node_Id
) is
3900 pragma Assert
(False
3901 or else NT
(N
).Nkind
= N_Delay_Alternative
);
3902 Set_Node2_With_Parent
(N
, Val
);
3903 end Set_Delay_Statement
;
3905 procedure Set_Delta_Expression
3906 (N
: Node_Id
; Val
: Node_Id
) is
3908 pragma Assert
(False
3909 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
3910 or else NT
(N
).Nkind
= N_Delta_Constraint
3911 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
3912 Set_Node3_With_Parent
(N
, Val
);
3913 end Set_Delta_Expression
;
3915 procedure Set_Digits_Expression
3916 (N
: Node_Id
; Val
: Node_Id
) is
3918 pragma Assert
(False
3919 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
3920 or else NT
(N
).Nkind
= N_Digits_Constraint
3921 or else NT
(N
).Nkind
= N_Floating_Point_Definition
);
3922 Set_Node2_With_Parent
(N
, Val
);
3923 end Set_Digits_Expression
;
3925 procedure Set_Discr_Check_Funcs_Built
3926 (N
: Node_Id
; Val
: Boolean := True) is
3928 pragma Assert
(False
3929 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
3930 Set_Flag11
(N
, Val
);
3931 end Set_Discr_Check_Funcs_Built
;
3933 procedure Set_Discrete_Choices
3934 (N
: Node_Id
; Val
: List_Id
) is
3936 pragma Assert
(False
3937 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
3938 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
3939 or else NT
(N
).Nkind
= N_Variant
);
3940 Set_List4_With_Parent
(N
, Val
);
3941 end Set_Discrete_Choices
;
3943 procedure Set_Discrete_Range
3944 (N
: Node_Id
; Val
: Node_Id
) is
3946 pragma Assert
(False
3947 or else NT
(N
).Nkind
= N_Slice
);
3948 Set_Node4_With_Parent
(N
, Val
);
3949 end Set_Discrete_Range
;
3951 procedure Set_Discrete_Subtype_Definition
3952 (N
: Node_Id
; Val
: Node_Id
) is
3954 pragma Assert
(False
3955 or else NT
(N
).Nkind
= N_Entry_Declaration
3956 or else NT
(N
).Nkind
= N_Entry_Index_Specification
3957 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
3958 Set_Node4_With_Parent
(N
, Val
);
3959 end Set_Discrete_Subtype_Definition
;
3961 procedure Set_Discrete_Subtype_Definitions
3962 (N
: Node_Id
; Val
: List_Id
) is
3964 pragma Assert
(False
3965 or else NT
(N
).Nkind
= N_Constrained_Array_Definition
);
3966 Set_List2_With_Parent
(N
, Val
);
3967 end Set_Discrete_Subtype_Definitions
;
3969 procedure Set_Discriminant_Specifications
3970 (N
: Node_Id
; Val
: List_Id
) is
3972 pragma Assert
(False
3973 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
3974 or else NT
(N
).Nkind
= N_Full_Type_Declaration
3975 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
3976 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
3977 or else NT
(N
).Nkind
= N_Private_Type_Declaration
3978 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
3979 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
3980 Set_List4_With_Parent
(N
, Val
);
3981 end Set_Discriminant_Specifications
;
3983 procedure Set_Discriminant_Type
3984 (N
: Node_Id
; Val
: Node_Id
) is
3986 pragma Assert
(False
3987 or else NT
(N
).Nkind
= N_Discriminant_Specification
);
3988 Set_Node5_With_Parent
(N
, Val
);
3989 end Set_Discriminant_Type
;
3991 procedure Set_Do_Accessibility_Check
3992 (N
: Node_Id
; Val
: Boolean := True) is
3994 pragma Assert
(False
3995 or else NT
(N
).Nkind
= N_Parameter_Specification
);
3996 Set_Flag13
(N
, Val
);
3997 end Set_Do_Accessibility_Check
;
3999 procedure Set_Do_Discriminant_Check
4000 (N
: Node_Id
; Val
: Boolean := True) is
4002 pragma Assert
(False
4003 or else NT
(N
).Nkind
= N_Selected_Component
);
4004 Set_Flag13
(N
, Val
);
4005 end Set_Do_Discriminant_Check
;
4007 procedure Set_Do_Division_Check
4008 (N
: Node_Id
; Val
: Boolean := True) is
4010 pragma Assert
(False
4011 or else NT
(N
).Nkind
= N_Op_Divide
4012 or else NT
(N
).Nkind
= N_Op_Mod
4013 or else NT
(N
).Nkind
= N_Op_Rem
);
4014 Set_Flag13
(N
, Val
);
4015 end Set_Do_Division_Check
;
4017 procedure Set_Do_Length_Check
4018 (N
: Node_Id
; Val
: Boolean := True) is
4020 pragma Assert
(False
4021 or else NT
(N
).Nkind
= N_Assignment_Statement
4022 or else NT
(N
).Nkind
= N_Op_And
4023 or else NT
(N
).Nkind
= N_Op_Or
4024 or else NT
(N
).Nkind
= N_Op_Xor
4025 or else NT
(N
).Nkind
= N_Type_Conversion
);
4027 end Set_Do_Length_Check
;
4029 procedure Set_Do_Overflow_Check
4030 (N
: Node_Id
; Val
: Boolean := True) is
4032 pragma Assert
(False
4033 or else NT
(N
).Nkind
in N_Op
4034 or else NT
(N
).Nkind
= N_Attribute_Reference
4035 or else NT
(N
).Nkind
= N_Type_Conversion
);
4036 Set_Flag17
(N
, Val
);
4037 end Set_Do_Overflow_Check
;
4039 procedure Set_Do_Range_Check
4040 (N
: Node_Id
; Val
: Boolean := True) is
4042 pragma Assert
(False
4043 or else NT
(N
).Nkind
in N_Subexpr
);
4045 end Set_Do_Range_Check
;
4047 procedure Set_Do_Storage_Check
4048 (N
: Node_Id
; Val
: Boolean := True) is
4050 pragma Assert
(False
4051 or else NT
(N
).Nkind
= N_Allocator
4052 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4053 Set_Flag17
(N
, Val
);
4054 end Set_Do_Storage_Check
;
4056 procedure Set_Do_Tag_Check
4057 (N
: Node_Id
; Val
: Boolean := True) is
4059 pragma Assert
(False
4060 or else NT
(N
).Nkind
= N_Assignment_Statement
4061 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4062 or else NT
(N
).Nkind
= N_Function_Call
4063 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
4064 or else NT
(N
).Nkind
= N_Return_Statement
4065 or else NT
(N
).Nkind
= N_Type_Conversion
);
4066 Set_Flag13
(N
, Val
);
4067 end Set_Do_Tag_Check
;
4069 procedure Set_Elaborate_All_Desirable
4070 (N
: Node_Id
; Val
: Boolean := True) is
4072 pragma Assert
(False
4073 or else NT
(N
).Nkind
= N_With_Clause
);
4075 end Set_Elaborate_All_Desirable
;
4077 procedure Set_Elaborate_All_Present
4078 (N
: Node_Id
; Val
: Boolean := True) is
4080 pragma Assert
(False
4081 or else NT
(N
).Nkind
= N_With_Clause
);
4082 Set_Flag14
(N
, Val
);
4083 end Set_Elaborate_All_Present
;
4085 procedure Set_Elaborate_Desirable
4086 (N
: Node_Id
; Val
: Boolean := True) is
4088 pragma Assert
(False
4089 or else NT
(N
).Nkind
= N_With_Clause
);
4090 Set_Flag11
(N
, Val
);
4091 end Set_Elaborate_Desirable
;
4093 procedure Set_Elaborate_Present
4094 (N
: Node_Id
; Val
: Boolean := True) is
4096 pragma Assert
(False
4097 or else NT
(N
).Nkind
= N_With_Clause
);
4099 end Set_Elaborate_Present
;
4101 procedure Set_Elaboration_Boolean
4102 (N
: Node_Id
; Val
: Node_Id
) is
4104 pragma Assert
(False
4105 or else NT
(N
).Nkind
= N_Function_Specification
4106 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4108 end Set_Elaboration_Boolean
;
4110 procedure Set_Else_Actions
4111 (N
: Node_Id
; Val
: List_Id
) is
4113 pragma Assert
(False
4114 or else NT
(N
).Nkind
= N_Conditional_Expression
);
4115 Set_List3
(N
, Val
); -- semantic field, no parent set
4116 end Set_Else_Actions
;
4118 procedure Set_Else_Statements
4119 (N
: Node_Id
; Val
: List_Id
) is
4121 pragma Assert
(False
4122 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4123 or else NT
(N
).Nkind
= N_If_Statement
4124 or else NT
(N
).Nkind
= N_Selective_Accept
);
4125 Set_List4_With_Parent
(N
, Val
);
4126 end Set_Else_Statements
;
4128 procedure Set_Elsif_Parts
4129 (N
: Node_Id
; Val
: List_Id
) is
4131 pragma Assert
(False
4132 or else NT
(N
).Nkind
= N_If_Statement
);
4133 Set_List3_With_Parent
(N
, Val
);
4134 end Set_Elsif_Parts
;
4136 procedure Set_Enclosing_Variant
4137 (N
: Node_Id
; Val
: Node_Id
) is
4139 pragma Assert
(False
4140 or else NT
(N
).Nkind
= N_Variant
);
4141 Set_Node2
(N
, Val
); -- semantic field, no parent set
4142 end Set_Enclosing_Variant
;
4144 procedure Set_End_Label
4145 (N
: Node_Id
; Val
: Node_Id
) is
4147 pragma Assert
(False
4148 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
4149 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
4150 or else NT
(N
).Nkind
= N_Loop_Statement
4151 or else NT
(N
).Nkind
= N_Package_Specification
4152 or else NT
(N
).Nkind
= N_Protected_Body
4153 or else NT
(N
).Nkind
= N_Protected_Definition
4154 or else NT
(N
).Nkind
= N_Record_Definition
4155 or else NT
(N
).Nkind
= N_Task_Definition
);
4156 Set_Node4_With_Parent
(N
, Val
);
4159 procedure Set_End_Span
4160 (N
: Node_Id
; Val
: Uint
) is
4162 pragma Assert
(False
4163 or else NT
(N
).Nkind
= N_Case_Statement
4164 or else NT
(N
).Nkind
= N_If_Statement
);
4168 procedure Set_Entity
4169 (N
: Node_Id
; Val
: Node_Id
) is
4171 pragma Assert
(False
4172 or else NT
(N
).Nkind
in N_Has_Entity
4173 or else NT
(N
).Nkind
= N_Aspect_Specification
4174 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4175 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4176 Set_Node4
(N
, Val
); -- semantic field, no parent set
4179 procedure Set_Entry_Body_Formal_Part
4180 (N
: Node_Id
; Val
: Node_Id
) is
4182 pragma Assert
(False
4183 or else NT
(N
).Nkind
= N_Entry_Body
);
4184 Set_Node5_With_Parent
(N
, Val
);
4185 end Set_Entry_Body_Formal_Part
;
4187 procedure Set_Entry_Call_Alternative
4188 (N
: Node_Id
; Val
: Node_Id
) is
4190 pragma Assert
(False
4191 or else NT
(N
).Nkind
= N_Conditional_Entry_Call
4192 or else NT
(N
).Nkind
= N_Timed_Entry_Call
);
4193 Set_Node1_With_Parent
(N
, Val
);
4194 end Set_Entry_Call_Alternative
;
4196 procedure Set_Entry_Call_Statement
4197 (N
: Node_Id
; Val
: Node_Id
) is
4199 pragma Assert
(False
4200 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
);
4201 Set_Node1_With_Parent
(N
, Val
);
4202 end Set_Entry_Call_Statement
;
4204 procedure Set_Entry_Direct_Name
4205 (N
: Node_Id
; Val
: Node_Id
) is
4207 pragma Assert
(False
4208 or else NT
(N
).Nkind
= N_Accept_Statement
);
4209 Set_Node1_With_Parent
(N
, Val
);
4210 end Set_Entry_Direct_Name
;
4212 procedure Set_Entry_Index
4213 (N
: Node_Id
; Val
: Node_Id
) is
4215 pragma Assert
(False
4216 or else NT
(N
).Nkind
= N_Accept_Statement
);
4217 Set_Node5_With_Parent
(N
, Val
);
4218 end Set_Entry_Index
;
4220 procedure Set_Entry_Index_Specification
4221 (N
: Node_Id
; Val
: Node_Id
) is
4223 pragma Assert
(False
4224 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
);
4225 Set_Node4_With_Parent
(N
, Val
);
4226 end Set_Entry_Index_Specification
;
4229 (N
: Node_Id
; Val
: Node_Id
) is
4231 pragma Assert
(False
4232 or else NT
(N
).Nkind
in N_Has_Etype
);
4233 Set_Node5
(N
, Val
); -- semantic field, no parent set
4236 procedure Set_Exception_Choices
4237 (N
: Node_Id
; Val
: List_Id
) is
4239 pragma Assert
(False
4240 or else NT
(N
).Nkind
= N_Exception_Handler
);
4241 Set_List4_With_Parent
(N
, Val
);
4242 end Set_Exception_Choices
;
4244 procedure Set_Exception_Handlers
4245 (N
: Node_Id
; Val
: List_Id
) is
4247 pragma Assert
(False
4248 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4249 Set_List5_With_Parent
(N
, Val
);
4250 end Set_Exception_Handlers
;
4252 procedure Set_Exception_Junk
4253 (N
: Node_Id
; Val
: Boolean := True) is
4255 pragma Assert
(False
4256 or else NT
(N
).Nkind
= N_Block_Statement
4257 or else NT
(N
).Nkind
= N_Goto_Statement
4258 or else NT
(N
).Nkind
= N_Label
4259 or else NT
(N
).Nkind
= N_Object_Declaration
4260 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4262 end Set_Exception_Junk
;
4264 procedure Set_Exception_Label
4265 (N
: Node_Id
; Val
: Node_Id
) is
4267 pragma Assert
(False
4268 or else NT
(N
).Nkind
= N_Exception_Handler
4269 or else NT
(N
).Nkind
= N_Push_Constraint_Error_Label
4270 or else NT
(N
).Nkind
= N_Push_Program_Error_Label
4271 or else NT
(N
).Nkind
= N_Push_Storage_Error_Label
);
4272 Set_Node5
(N
, Val
); -- semantic field, no parent set
4273 end Set_Exception_Label
;
4275 procedure Set_Expansion_Delayed
4276 (N
: Node_Id
; Val
: Boolean := True) is
4278 pragma Assert
(False
4279 or else NT
(N
).Nkind
= N_Aggregate
4280 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4281 Set_Flag11
(N
, Val
);
4282 end Set_Expansion_Delayed
;
4284 procedure Set_Explicit_Actual_Parameter
4285 (N
: Node_Id
; Val
: Node_Id
) is
4287 pragma Assert
(False
4288 or else NT
(N
).Nkind
= N_Parameter_Association
);
4289 Set_Node3_With_Parent
(N
, Val
);
4290 end Set_Explicit_Actual_Parameter
;
4292 procedure Set_Explicit_Generic_Actual_Parameter
4293 (N
: Node_Id
; Val
: Node_Id
) is
4295 pragma Assert
(False
4296 or else NT
(N
).Nkind
= N_Generic_Association
);
4297 Set_Node1_With_Parent
(N
, Val
);
4298 end Set_Explicit_Generic_Actual_Parameter
;
4300 procedure Set_Expression
4301 (N
: Node_Id
; Val
: Node_Id
) is
4303 pragma Assert
(False
4304 or else NT
(N
).Nkind
= N_Allocator
4305 or else NT
(N
).Nkind
= N_Aspect_Specification
4306 or else NT
(N
).Nkind
= N_Assignment_Statement
4307 or else NT
(N
).Nkind
= N_At_Clause
4308 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4309 or else NT
(N
).Nkind
= N_Case_Expression
4310 or else NT
(N
).Nkind
= N_Case_Expression_Alternative
4311 or else NT
(N
).Nkind
= N_Case_Statement
4312 or else NT
(N
).Nkind
= N_Code_Statement
4313 or else NT
(N
).Nkind
= N_Component_Association
4314 or else NT
(N
).Nkind
= N_Component_Declaration
4315 or else NT
(N
).Nkind
= N_Delay_Relative_Statement
4316 or else NT
(N
).Nkind
= N_Delay_Until_Statement
4317 or else NT
(N
).Nkind
= N_Discriminant_Association
4318 or else NT
(N
).Nkind
= N_Discriminant_Specification
4319 or else NT
(N
).Nkind
= N_Exception_Declaration
4320 or else NT
(N
).Nkind
= N_Expression_Function
4321 or else NT
(N
).Nkind
= N_Expression_With_Actions
4322 or else NT
(N
).Nkind
= N_Free_Statement
4323 or else NT
(N
).Nkind
= N_Mod_Clause
4324 or else NT
(N
).Nkind
= N_Modular_Type_Definition
4325 or else NT
(N
).Nkind
= N_Number_Declaration
4326 or else NT
(N
).Nkind
= N_Object_Declaration
4327 or else NT
(N
).Nkind
= N_Parameter_Specification
4328 or else NT
(N
).Nkind
= N_Pragma_Argument_Association
4329 or else NT
(N
).Nkind
= N_Qualified_Expression
4330 or else NT
(N
).Nkind
= N_Raise_Statement
4331 or else NT
(N
).Nkind
= N_Return_Statement
4332 or else NT
(N
).Nkind
= N_Type_Conversion
4333 or else NT
(N
).Nkind
= N_Unchecked_Expression
4334 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
4335 Set_Node3_With_Parent
(N
, Val
);
4338 procedure Set_Expressions
4339 (N
: Node_Id
; Val
: List_Id
) is
4341 pragma Assert
(False
4342 or else NT
(N
).Nkind
= N_Aggregate
4343 or else NT
(N
).Nkind
= N_Attribute_Reference
4344 or else NT
(N
).Nkind
= N_Conditional_Expression
4345 or else NT
(N
).Nkind
= N_Extension_Aggregate
4346 or else NT
(N
).Nkind
= N_Indexed_Component
);
4347 Set_List1_With_Parent
(N
, Val
);
4348 end Set_Expressions
;
4350 procedure Set_First_Bit
4351 (N
: Node_Id
; Val
: Node_Id
) is
4353 pragma Assert
(False
4354 or else NT
(N
).Nkind
= N_Component_Clause
);
4355 Set_Node3_With_Parent
(N
, Val
);
4358 procedure Set_First_Inlined_Subprogram
4359 (N
: Node_Id
; Val
: Entity_Id
) is
4361 pragma Assert
(False
4362 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4363 Set_Node3
(N
, Val
); -- semantic field, no parent set
4364 end Set_First_Inlined_Subprogram
;
4366 procedure Set_First_Name
4367 (N
: Node_Id
; Val
: Boolean := True) is
4369 pragma Assert
(False
4370 or else NT
(N
).Nkind
= N_With_Clause
);
4374 procedure Set_First_Named_Actual
4375 (N
: Node_Id
; Val
: Node_Id
) is
4377 pragma Assert
(False
4378 or else NT
(N
).Nkind
= N_Entry_Call_Statement
4379 or else NT
(N
).Nkind
= N_Function_Call
4380 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
4381 Set_Node4
(N
, Val
); -- semantic field, no parent set
4382 end Set_First_Named_Actual
;
4384 procedure Set_First_Real_Statement
4385 (N
: Node_Id
; Val
: Node_Id
) is
4387 pragma Assert
(False
4388 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
);
4389 Set_Node2
(N
, Val
); -- semantic field, no parent set
4390 end Set_First_Real_Statement
;
4392 procedure Set_First_Subtype_Link
4393 (N
: Node_Id
; Val
: Entity_Id
) is
4395 pragma Assert
(False
4396 or else NT
(N
).Nkind
= N_Freeze_Entity
);
4397 Set_Node5
(N
, Val
); -- semantic field, no parent set
4398 end Set_First_Subtype_Link
;
4400 procedure Set_Float_Truncate
4401 (N
: Node_Id
; Val
: Boolean := True) is
4403 pragma Assert
(False
4404 or else NT
(N
).Nkind
= N_Type_Conversion
);
4405 Set_Flag11
(N
, Val
);
4406 end Set_Float_Truncate
;
4408 procedure Set_Formal_Type_Definition
4409 (N
: Node_Id
; Val
: Node_Id
) is
4411 pragma Assert
(False
4412 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
);
4413 Set_Node3_With_Parent
(N
, Val
);
4414 end Set_Formal_Type_Definition
;
4416 procedure Set_Forwards_OK
4417 (N
: Node_Id
; Val
: Boolean := True) is
4419 pragma Assert
(False
4420 or else NT
(N
).Nkind
= N_Assignment_Statement
);
4422 end Set_Forwards_OK
;
4424 procedure Set_From_Aspect_Specification
4425 (N
: Node_Id
; Val
: Boolean := True) is
4427 pragma Assert
(False
4428 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4429 or else NT
(N
).Nkind
= N_Pragma
);
4430 Set_Flag13
(N
, Val
);
4431 end Set_From_Aspect_Specification
;
4433 procedure Set_From_At_End
4434 (N
: Node_Id
; Val
: Boolean := True) is
4436 pragma Assert
(False
4437 or else NT
(N
).Nkind
= N_Raise_Statement
);
4439 end Set_From_At_End
;
4441 procedure Set_From_At_Mod
4442 (N
: Node_Id
; Val
: Boolean := True) is
4444 pragma Assert
(False
4445 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
);
4447 end Set_From_At_Mod
;
4449 procedure Set_From_Default
4450 (N
: Node_Id
; Val
: Boolean := True) is
4452 pragma Assert
(False
4453 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
4455 end Set_From_Default
;
4457 procedure Set_Generic_Associations
4458 (N
: Node_Id
; Val
: List_Id
) is
4460 pragma Assert
(False
4461 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4462 or else NT
(N
).Nkind
= N_Function_Instantiation
4463 or else NT
(N
).Nkind
= N_Package_Instantiation
4464 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4465 Set_List3_With_Parent
(N
, Val
);
4466 end Set_Generic_Associations
;
4468 procedure Set_Generic_Formal_Declarations
4469 (N
: Node_Id
; Val
: List_Id
) is
4471 pragma Assert
(False
4472 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
4473 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
);
4474 Set_List2_With_Parent
(N
, Val
);
4475 end Set_Generic_Formal_Declarations
;
4477 procedure Set_Generic_Parent
4478 (N
: Node_Id
; Val
: Node_Id
) is
4480 pragma Assert
(False
4481 or else NT
(N
).Nkind
= N_Function_Specification
4482 or else NT
(N
).Nkind
= N_Package_Specification
4483 or else NT
(N
).Nkind
= N_Procedure_Specification
);
4485 end Set_Generic_Parent
;
4487 procedure Set_Generic_Parent_Type
4488 (N
: Node_Id
; Val
: Node_Id
) is
4490 pragma Assert
(False
4491 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
4493 end Set_Generic_Parent_Type
;
4495 procedure Set_Handled_Statement_Sequence
4496 (N
: Node_Id
; Val
: Node_Id
) is
4498 pragma Assert
(False
4499 or else NT
(N
).Nkind
= N_Accept_Statement
4500 or else NT
(N
).Nkind
= N_Block_Statement
4501 or else NT
(N
).Nkind
= N_Entry_Body
4502 or else NT
(N
).Nkind
= N_Extended_Return_Statement
4503 or else NT
(N
).Nkind
= N_Package_Body
4504 or else NT
(N
).Nkind
= N_Subprogram_Body
4505 or else NT
(N
).Nkind
= N_Task_Body
);
4506 Set_Node4_With_Parent
(N
, Val
);
4507 end Set_Handled_Statement_Sequence
;
4509 procedure Set_Handler_List_Entry
4510 (N
: Node_Id
; Val
: Node_Id
) is
4512 pragma Assert
(False
4513 or else NT
(N
).Nkind
= N_Object_Declaration
);
4515 end Set_Handler_List_Entry
;
4517 procedure Set_Has_Created_Identifier
4518 (N
: Node_Id
; Val
: Boolean := True) is
4520 pragma Assert
(False
4521 or else NT
(N
).Nkind
= N_Block_Statement
4522 or else NT
(N
).Nkind
= N_Loop_Statement
);
4523 Set_Flag15
(N
, Val
);
4524 end Set_Has_Created_Identifier
;
4526 procedure Set_Has_Dereference_Action
4527 (N
: Node_Id
; Val
: Boolean := True) is
4529 pragma Assert
(False
4530 or else NT
(N
).Nkind
= N_Explicit_Dereference
);
4531 Set_Flag13
(N
, Val
);
4532 end Set_Has_Dereference_Action
;
4534 procedure Set_Has_Dynamic_Length_Check
4535 (N
: Node_Id
; Val
: Boolean := True) is
4537 pragma Assert
(False
4538 or else NT
(N
).Nkind
in N_Subexpr
);
4539 Set_Flag10
(N
, Val
);
4540 end Set_Has_Dynamic_Length_Check
;
4542 procedure Set_Has_Dynamic_Range_Check
4543 (N
: Node_Id
; Val
: Boolean := True) is
4545 pragma Assert
(False
4546 or else NT
(N
).Nkind
= N_Subtype_Declaration
4547 or else NT
(N
).Nkind
in N_Subexpr
);
4548 Set_Flag12
(N
, Val
);
4549 end Set_Has_Dynamic_Range_Check
;
4551 procedure Set_Has_Init_Expression
4552 (N
: Node_Id
; Val
: Boolean := True) is
4554 pragma Assert
(False
4555 or else NT
(N
).Nkind
= N_Object_Declaration
);
4556 Set_Flag14
(N
, Val
);
4557 end Set_Has_Init_Expression
;
4559 procedure Set_Has_Local_Raise
4560 (N
: Node_Id
; Val
: Boolean := True) is
4562 pragma Assert
(False
4563 or else NT
(N
).Nkind
= N_Exception_Handler
);
4565 end Set_Has_Local_Raise
;
4567 procedure Set_Has_No_Elaboration_Code
4568 (N
: Node_Id
; Val
: Boolean := True) is
4570 pragma Assert
(False
4571 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4572 Set_Flag17
(N
, Val
);
4573 end Set_Has_No_Elaboration_Code
;
4575 procedure Set_Has_Pragma_CPU
4576 (N
: Node_Id
; Val
: Boolean := True) is
4578 pragma Assert
(False
4579 or else NT
(N
).Nkind
= N_Subprogram_Body
4580 or else NT
(N
).Nkind
= N_Task_Definition
);
4581 Set_Flag14
(N
, Val
);
4582 end Set_Has_Pragma_CPU
;
4584 procedure Set_Has_Pragma_Dispatching_Domain
4585 (N
: Node_Id
; Val
: Boolean := True) is
4587 pragma Assert
(False
4588 or else NT
(N
).Nkind
= N_Task_Definition
);
4589 Set_Flag15
(N
, Val
);
4590 end Set_Has_Pragma_Dispatching_Domain
;
4592 procedure Set_Has_Pragma_Priority
4593 (N
: Node_Id
; Val
: Boolean := True) is
4595 pragma Assert
(False
4596 or else NT
(N
).Nkind
= N_Protected_Definition
4597 or else NT
(N
).Nkind
= N_Subprogram_Body
4598 or else NT
(N
).Nkind
= N_Task_Definition
);
4600 end Set_Has_Pragma_Priority
;
4602 procedure Set_Has_Pragma_Suppress_All
4603 (N
: Node_Id
; Val
: Boolean := True) is
4605 pragma Assert
(False
4606 or else NT
(N
).Nkind
= N_Compilation_Unit
);
4607 Set_Flag14
(N
, Val
);
4608 end Set_Has_Pragma_Suppress_All
;
4610 procedure Set_Has_Private_View
4611 (N
: Node_Id
; Val
: Boolean := True) is
4613 pragma Assert
(False
4614 or else NT
(N
).Nkind
in N_Op
4615 or else NT
(N
).Nkind
= N_Character_Literal
4616 or else NT
(N
).Nkind
= N_Expanded_Name
4617 or else NT
(N
).Nkind
= N_Identifier
4618 or else NT
(N
).Nkind
= N_Operator_Symbol
);
4619 Set_Flag11
(N
, Val
);
4620 end Set_Has_Private_View
;
4622 procedure Set_Has_Relative_Deadline_Pragma
4623 (N
: Node_Id
; Val
: Boolean := True) is
4625 pragma Assert
(False
4626 or else NT
(N
).Nkind
= N_Subprogram_Body
4627 or else NT
(N
).Nkind
= N_Task_Definition
);
4629 end Set_Has_Relative_Deadline_Pragma
;
4631 procedure Set_Has_Self_Reference
4632 (N
: Node_Id
; Val
: Boolean := True) is
4634 pragma Assert
(False
4635 or else NT
(N
).Nkind
= N_Aggregate
4636 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
4637 Set_Flag13
(N
, Val
);
4638 end Set_Has_Self_Reference
;
4640 procedure Set_Has_Storage_Size_Pragma
4641 (N
: Node_Id
; Val
: Boolean := True) is
4643 pragma Assert
(False
4644 or else NT
(N
).Nkind
= N_Task_Definition
);
4646 end Set_Has_Storage_Size_Pragma
;
4648 procedure Set_Has_Task_Info_Pragma
4649 (N
: Node_Id
; Val
: Boolean := True) is
4651 pragma Assert
(False
4652 or else NT
(N
).Nkind
= N_Task_Definition
);
4654 end Set_Has_Task_Info_Pragma
;
4656 procedure Set_Has_Task_Name_Pragma
4657 (N
: Node_Id
; Val
: Boolean := True) is
4659 pragma Assert
(False
4660 or else NT
(N
).Nkind
= N_Task_Definition
);
4662 end Set_Has_Task_Name_Pragma
;
4664 procedure Set_Has_Wide_Character
4665 (N
: Node_Id
; Val
: Boolean := True) is
4667 pragma Assert
(False
4668 or else NT
(N
).Nkind
= N_String_Literal
);
4669 Set_Flag11
(N
, Val
);
4670 end Set_Has_Wide_Character
;
4672 procedure Set_Has_Wide_Wide_Character
4673 (N
: Node_Id
; Val
: Boolean := True) is
4675 pragma Assert
(False
4676 or else NT
(N
).Nkind
= N_String_Literal
);
4677 Set_Flag13
(N
, Val
);
4678 end Set_Has_Wide_Wide_Character
;
4680 procedure Set_Header_Size_Added
4681 (N
: Node_Id
; Val
: Boolean := True) is
4683 pragma Assert
(False
4684 or else NT
(N
).Nkind
= N_Attribute_Reference
);
4685 Set_Flag11
(N
, Val
);
4686 end Set_Header_Size_Added
;
4688 procedure Set_Hidden_By_Use_Clause
4689 (N
: Node_Id
; Val
: Elist_Id
) is
4691 pragma Assert
(False
4692 or else NT
(N
).Nkind
= N_Use_Package_Clause
4693 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
4694 Set_Elist4
(N
, Val
);
4695 end Set_Hidden_By_Use_Clause
;
4697 procedure Set_High_Bound
4698 (N
: Node_Id
; Val
: Node_Id
) is
4700 pragma Assert
(False
4701 or else NT
(N
).Nkind
= N_Range
4702 or else NT
(N
).Nkind
= N_Real_Range_Specification
4703 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
4704 Set_Node2_With_Parent
(N
, Val
);
4707 procedure Set_Identifier
4708 (N
: Node_Id
; Val
: Node_Id
) is
4710 pragma Assert
(False
4711 or else NT
(N
).Nkind
= N_Aspect_Specification
4712 or else NT
(N
).Nkind
= N_At_Clause
4713 or else NT
(N
).Nkind
= N_Block_Statement
4714 or else NT
(N
).Nkind
= N_Designator
4715 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
4716 or else NT
(N
).Nkind
= N_Label
4717 or else NT
(N
).Nkind
= N_Loop_Statement
4718 or else NT
(N
).Nkind
= N_Record_Representation_Clause
4719 or else NT
(N
).Nkind
= N_Subprogram_Info
);
4720 Set_Node1_With_Parent
(N
, Val
);
4723 procedure Set_Implicit_With
4724 (N
: Node_Id
; Val
: Boolean := True) is
4726 pragma Assert
(False
4727 or else NT
(N
).Nkind
= N_With_Clause
);
4728 Set_Flag16
(N
, Val
);
4729 end Set_Implicit_With
;
4731 procedure Set_Implicit_With_From_Instantiation
4732 (N
: Node_Id
; Val
: Boolean := True) is
4734 pragma Assert
(False
4735 or else NT
(N
).Nkind
= N_With_Clause
);
4736 Set_Flag12
(N
, Val
);
4737 end Set_Implicit_With_From_Instantiation
;
4739 procedure Set_Interface_List
4740 (N
: Node_Id
; Val
: List_Id
) is
4742 pragma Assert
(False
4743 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4744 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
4745 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
4746 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
4747 or else NT
(N
).Nkind
= N_Record_Definition
4748 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
4749 or else NT
(N
).Nkind
= N_Single_Task_Declaration
4750 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
4751 Set_List2_With_Parent
(N
, Val
);
4752 end Set_Interface_List
;
4754 procedure Set_Interface_Present
4755 (N
: Node_Id
; Val
: Boolean := True) is
4757 pragma Assert
(False
4758 or else NT
(N
).Nkind
= N_Derived_Type_Definition
4759 or else NT
(N
).Nkind
= N_Record_Definition
);
4760 Set_Flag16
(N
, Val
);
4761 end Set_Interface_Present
;
4763 procedure Set_Import_Interface_Present
4764 (N
: Node_Id
; Val
: Boolean := True) is
4766 pragma Assert
(False
4767 or else NT
(N
).Nkind
= N_Pragma
);
4768 Set_Flag16
(N
, Val
);
4769 end Set_Import_Interface_Present
;
4771 procedure Set_In_Present
4772 (N
: Node_Id
; Val
: Boolean := True) is
4774 pragma Assert
(False
4775 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
4776 or else NT
(N
).Nkind
= N_Parameter_Specification
);
4777 Set_Flag15
(N
, Val
);
4780 procedure Set_Includes_Infinities
4781 (N
: Node_Id
; Val
: Boolean := True) is
4783 pragma Assert
(False
4784 or else NT
(N
).Nkind
= N_Range
);
4785 Set_Flag11
(N
, Val
);
4786 end Set_Includes_Infinities
;
4788 procedure Set_Inherited_Discriminant
4789 (N
: Node_Id
; Val
: Boolean := True) is
4791 pragma Assert
(False
4792 or else NT
(N
).Nkind
= N_Component_Association
);
4793 Set_Flag13
(N
, Val
);
4794 end Set_Inherited_Discriminant
;
4796 procedure Set_Instance_Spec
4797 (N
: Node_Id
; Val
: Node_Id
) is
4799 pragma Assert
(False
4800 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
4801 or else NT
(N
).Nkind
= N_Function_Instantiation
4802 or else NT
(N
).Nkind
= N_Package_Instantiation
4803 or else NT
(N
).Nkind
= N_Procedure_Instantiation
);
4804 Set_Node5
(N
, Val
); -- semantic field, no Parent set
4805 end Set_Instance_Spec
;
4807 procedure Set_Intval
4808 (N
: Node_Id
; Val
: Uint
) is
4810 pragma Assert
(False
4811 or else NT
(N
).Nkind
= N_Integer_Literal
);
4815 procedure Set_Is_Accessibility_Actual
4816 (N
: Node_Id
; Val
: Boolean := True) is
4818 pragma Assert
(False
4819 or else NT
(N
).Nkind
= N_Parameter_Association
);
4820 Set_Flag13
(N
, Val
);
4821 end Set_Is_Accessibility_Actual
;
4823 procedure Set_Is_Asynchronous_Call_Block
4824 (N
: Node_Id
; Val
: Boolean := True) is
4826 pragma Assert
(False
4827 or else NT
(N
).Nkind
= N_Block_Statement
);
4829 end Set_Is_Asynchronous_Call_Block
;
4831 procedure Set_Is_Boolean_Aspect
4832 (N
: Node_Id
; Val
: Boolean := True) is
4834 pragma Assert
(False
4835 or else NT
(N
).Nkind
= N_Aspect_Specification
);
4836 Set_Flag16
(N
, Val
);
4837 end Set_Is_Boolean_Aspect
;
4839 procedure Set_Is_Component_Left_Opnd
4840 (N
: Node_Id
; Val
: Boolean := True) is
4842 pragma Assert
(False
4843 or else NT
(N
).Nkind
= N_Op_Concat
);
4844 Set_Flag13
(N
, Val
);
4845 end Set_Is_Component_Left_Opnd
;
4847 procedure Set_Is_Component_Right_Opnd
4848 (N
: Node_Id
; Val
: Boolean := True) is
4850 pragma Assert
(False
4851 or else NT
(N
).Nkind
= N_Op_Concat
);
4852 Set_Flag14
(N
, Val
);
4853 end Set_Is_Component_Right_Opnd
;
4855 procedure Set_Is_Controlling_Actual
4856 (N
: Node_Id
; Val
: Boolean := True) is
4858 pragma Assert
(False
4859 or else NT
(N
).Nkind
in N_Subexpr
);
4860 Set_Flag16
(N
, Val
);
4861 end Set_Is_Controlling_Actual
;
4863 procedure Set_Is_Delayed_Aspect
4864 (N
: Node_Id
; Val
: Boolean := True) is
4866 pragma Assert
(False
4867 or else NT
(N
).Nkind
= N_Aspect_Specification
4868 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
4869 or else NT
(N
).Nkind
= N_Pragma
);
4870 Set_Flag14
(N
, Val
);
4871 end Set_Is_Delayed_Aspect
;
4873 procedure Set_Is_Dynamic_Coextension
4874 (N
: Node_Id
; Val
: Boolean := True) is
4876 pragma Assert
(False
4877 or else NT
(N
).Nkind
= N_Allocator
);
4878 Set_Flag18
(N
, Val
);
4879 end Set_Is_Dynamic_Coextension
;
4881 procedure Set_Is_Elsif
4882 (N
: Node_Id
; Val
: Boolean := True) is
4884 pragma Assert
(False
4885 or else NT
(N
).Nkind
= N_Conditional_Expression
);
4886 Set_Flag13
(N
, Val
);
4889 procedure Set_Is_Entry_Barrier_Function
4890 (N
: Node_Id
; Val
: Boolean := True) is
4892 pragma Assert
(False
4893 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4895 end Set_Is_Entry_Barrier_Function
;
4897 procedure Set_Is_Expanded_Build_In_Place_Call
4898 (N
: Node_Id
; Val
: Boolean := True) is
4900 pragma Assert
(False
4901 or else NT
(N
).Nkind
= N_Function_Call
);
4902 Set_Flag11
(N
, Val
);
4903 end Set_Is_Expanded_Build_In_Place_Call
;
4905 procedure Set_Is_Folded_In_Parser
4906 (N
: Node_Id
; Val
: Boolean := True) is
4908 pragma Assert
(False
4909 or else NT
(N
).Nkind
= N_String_Literal
);
4911 end Set_Is_Folded_In_Parser
;
4913 procedure Set_Is_In_Discriminant_Check
4914 (N
: Node_Id
; Val
: Boolean := True) is
4916 pragma Assert
(False
4917 or else NT
(N
).Nkind
= N_Selected_Component
);
4918 Set_Flag11
(N
, Val
);
4919 end Set_Is_In_Discriminant_Check
;
4921 procedure Set_Is_Machine_Number
4922 (N
: Node_Id
; Val
: Boolean := True) is
4924 pragma Assert
(False
4925 or else NT
(N
).Nkind
= N_Real_Literal
);
4926 Set_Flag11
(N
, Val
);
4927 end Set_Is_Machine_Number
;
4929 procedure Set_Is_Null_Loop
4930 (N
: Node_Id
; Val
: Boolean := True) is
4932 pragma Assert
(False
4933 or else NT
(N
).Nkind
= N_Loop_Statement
);
4934 Set_Flag16
(N
, Val
);
4935 end Set_Is_Null_Loop
;
4937 procedure Set_Is_Overloaded
4938 (N
: Node_Id
; Val
: Boolean := True) is
4940 pragma Assert
(False
4941 or else NT
(N
).Nkind
in N_Subexpr
);
4943 end Set_Is_Overloaded
;
4945 procedure Set_Is_Power_Of_2_For_Shift
4946 (N
: Node_Id
; Val
: Boolean := True) is
4948 pragma Assert
(False
4949 or else NT
(N
).Nkind
= N_Op_Expon
);
4950 Set_Flag13
(N
, Val
);
4951 end Set_Is_Power_Of_2_For_Shift
;
4953 procedure Set_Is_Prefixed_Call
4954 (N
: Node_Id
; Val
: Boolean := True) is
4956 pragma Assert
(False
4957 or else NT
(N
).Nkind
= N_Selected_Component
);
4958 Set_Flag17
(N
, Val
);
4959 end Set_Is_Prefixed_Call
;
4961 procedure Set_Is_Protected_Subprogram_Body
4962 (N
: Node_Id
; Val
: Boolean := True) is
4964 pragma Assert
(False
4965 or else NT
(N
).Nkind
= N_Subprogram_Body
);
4967 end Set_Is_Protected_Subprogram_Body
;
4969 procedure Set_Is_Static_Coextension
4970 (N
: Node_Id
; Val
: Boolean := True) is
4972 pragma Assert
(False
4973 or else NT
(N
).Nkind
= N_Allocator
);
4974 Set_Flag14
(N
, Val
);
4975 end Set_Is_Static_Coextension
;
4977 procedure Set_Is_Static_Expression
4978 (N
: Node_Id
; Val
: Boolean := True) is
4980 pragma Assert
(False
4981 or else NT
(N
).Nkind
in N_Subexpr
);
4983 end Set_Is_Static_Expression
;
4985 procedure Set_Is_Subprogram_Descriptor
4986 (N
: Node_Id
; Val
: Boolean := True) is
4988 pragma Assert
(False
4989 or else NT
(N
).Nkind
= N_Object_Declaration
);
4990 Set_Flag16
(N
, Val
);
4991 end Set_Is_Subprogram_Descriptor
;
4993 procedure Set_Is_Task_Allocation_Block
4994 (N
: Node_Id
; Val
: Boolean := True) is
4996 pragma Assert
(False
4997 or else NT
(N
).Nkind
= N_Block_Statement
);
4999 end Set_Is_Task_Allocation_Block
;
5001 procedure Set_Is_Task_Master
5002 (N
: Node_Id
; Val
: Boolean := True) is
5004 pragma Assert
(False
5005 or else NT
(N
).Nkind
= N_Block_Statement
5006 or else NT
(N
).Nkind
= N_Subprogram_Body
5007 or else NT
(N
).Nkind
= N_Task_Body
);
5009 end Set_Is_Task_Master
;
5011 procedure Set_Iteration_Scheme
5012 (N
: Node_Id
; Val
: Node_Id
) is
5014 pragma Assert
(False
5015 or else NT
(N
).Nkind
= N_Loop_Statement
);
5016 Set_Node2_With_Parent
(N
, Val
);
5017 end Set_Iteration_Scheme
;
5019 procedure Set_Iterator_Specification
5020 (N
: Node_Id
; Val
: Node_Id
) is
5022 pragma Assert
(False
5023 or else NT
(N
).Nkind
= N_Iteration_Scheme
5024 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5025 Set_Node2_With_Parent
(N
, Val
);
5026 end Set_Iterator_Specification
;
5029 (N
: Node_Id
; Val
: Entity_Id
) is
5031 pragma Assert
(False
5032 or else NT
(N
).Nkind
= N_Itype_Reference
);
5033 Set_Node1
(N
, Val
); -- no parent, semantic field
5036 procedure Set_Kill_Range_Check
5037 (N
: Node_Id
; Val
: Boolean := True) is
5039 pragma Assert
(False
5040 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5041 Set_Flag11
(N
, Val
);
5042 end Set_Kill_Range_Check
;
5044 procedure Set_Label_Construct
5045 (N
: Node_Id
; Val
: Node_Id
) is
5047 pragma Assert
(False
5048 or else NT
(N
).Nkind
= N_Implicit_Label_Declaration
);
5049 Set_Node2
(N
, Val
); -- semantic field, no parent set
5050 end Set_Label_Construct
;
5052 procedure Set_Last_Bit
5053 (N
: Node_Id
; Val
: Node_Id
) is
5055 pragma Assert
(False
5056 or else NT
(N
).Nkind
= N_Component_Clause
);
5057 Set_Node4_With_Parent
(N
, Val
);
5060 procedure Set_Last_Name
5061 (N
: Node_Id
; Val
: Boolean := True) is
5063 pragma Assert
(False
5064 or else NT
(N
).Nkind
= N_With_Clause
);
5068 procedure Set_Left_Opnd
5069 (N
: Node_Id
; Val
: Node_Id
) is
5071 pragma Assert
(False
5072 or else NT
(N
).Nkind
= N_And_Then
5073 or else NT
(N
).Nkind
= N_In
5074 or else NT
(N
).Nkind
= N_Not_In
5075 or else NT
(N
).Nkind
= N_Or_Else
5076 or else NT
(N
).Nkind
in N_Binary_Op
);
5077 Set_Node2_With_Parent
(N
, Val
);
5080 procedure Set_Library_Unit
5081 (N
: Node_Id
; Val
: Node_Id
) is
5083 pragma Assert
(False
5084 or else NT
(N
).Nkind
= N_Compilation_Unit
5085 or else NT
(N
).Nkind
= N_Package_Body_Stub
5086 or else NT
(N
).Nkind
= N_Protected_Body_Stub
5087 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5088 or else NT
(N
).Nkind
= N_Task_Body_Stub
5089 or else NT
(N
).Nkind
= N_With_Clause
);
5090 Set_Node4
(N
, Val
); -- semantic field, no parent set
5091 end Set_Library_Unit
;
5093 procedure Set_Limited_View_Installed
5094 (N
: Node_Id
; Val
: Boolean := True) is
5096 pragma Assert
(False
5097 or else NT
(N
).Nkind
= N_Package_Specification
5098 or else NT
(N
).Nkind
= N_With_Clause
);
5099 Set_Flag18
(N
, Val
);
5100 end Set_Limited_View_Installed
;
5102 procedure Set_Limited_Present
5103 (N
: Node_Id
; Val
: Boolean := True) is
5105 pragma Assert
(False
5106 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5107 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5108 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
5109 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
5110 or else NT
(N
).Nkind
= N_Private_Type_Declaration
5111 or else NT
(N
).Nkind
= N_Record_Definition
5112 or else NT
(N
).Nkind
= N_With_Clause
);
5113 Set_Flag17
(N
, Val
);
5114 end Set_Limited_Present
;
5116 procedure Set_Literals
5117 (N
: Node_Id
; Val
: List_Id
) is
5119 pragma Assert
(False
5120 or else NT
(N
).Nkind
= N_Enumeration_Type_Definition
);
5121 Set_List1_With_Parent
(N
, Val
);
5124 procedure Set_Local_Raise_Not_OK
5125 (N
: Node_Id
; Val
: Boolean := True) is
5127 pragma Assert
(False
5128 or else NT
(N
).Nkind
= N_Exception_Handler
);
5130 end Set_Local_Raise_Not_OK
;
5132 procedure Set_Local_Raise_Statements
5133 (N
: Node_Id
; Val
: Elist_Id
) is
5135 pragma Assert
(False
5136 or else NT
(N
).Nkind
= N_Exception_Handler
);
5137 Set_Elist1
(N
, Val
);
5138 end Set_Local_Raise_Statements
;
5140 procedure Set_Loop_Actions
5141 (N
: Node_Id
; Val
: List_Id
) is
5143 pragma Assert
(False
5144 or else NT
(N
).Nkind
= N_Component_Association
);
5145 Set_List2
(N
, Val
); -- semantic field, no parent set
5146 end Set_Loop_Actions
;
5148 procedure Set_Loop_Parameter_Specification
5149 (N
: Node_Id
; Val
: Node_Id
) is
5151 pragma Assert
(False
5152 or else NT
(N
).Nkind
= N_Iteration_Scheme
5153 or else NT
(N
).Nkind
= N_Quantified_Expression
);
5154 Set_Node4_With_Parent
(N
, Val
);
5155 end Set_Loop_Parameter_Specification
;
5157 procedure Set_Low_Bound
5158 (N
: Node_Id
; Val
: Node_Id
) is
5160 pragma Assert
(False
5161 or else NT
(N
).Nkind
= N_Range
5162 or else NT
(N
).Nkind
= N_Real_Range_Specification
5163 or else NT
(N
).Nkind
= N_Signed_Integer_Type_Definition
);
5164 Set_Node1_With_Parent
(N
, Val
);
5167 procedure Set_Mod_Clause
5168 (N
: Node_Id
; Val
: Node_Id
) is
5170 pragma Assert
(False
5171 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5172 Set_Node2_With_Parent
(N
, Val
);
5175 procedure Set_More_Ids
5176 (N
: Node_Id
; Val
: Boolean := True) is
5178 pragma Assert
(False
5179 or else NT
(N
).Nkind
= N_Component_Declaration
5180 or else NT
(N
).Nkind
= N_Discriminant_Specification
5181 or else NT
(N
).Nkind
= N_Exception_Declaration
5182 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5183 or else NT
(N
).Nkind
= N_Number_Declaration
5184 or else NT
(N
).Nkind
= N_Object_Declaration
5185 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5189 procedure Set_Must_Be_Byte_Aligned
5190 (N
: Node_Id
; Val
: Boolean := True) is
5192 pragma Assert
(False
5193 or else NT
(N
).Nkind
= N_Attribute_Reference
);
5194 Set_Flag14
(N
, Val
);
5195 end Set_Must_Be_Byte_Aligned
;
5197 procedure Set_Must_Not_Freeze
5198 (N
: Node_Id
; Val
: Boolean := True) is
5200 pragma Assert
(False
5201 or else NT
(N
).Nkind
= N_Subtype_Indication
5202 or else NT
(N
).Nkind
in N_Subexpr
);
5204 end Set_Must_Not_Freeze
;
5206 procedure Set_Must_Not_Override
5207 (N
: Node_Id
; Val
: Boolean := True) is
5209 pragma Assert
(False
5210 or else NT
(N
).Nkind
= N_Entry_Declaration
5211 or else NT
(N
).Nkind
= N_Function_Instantiation
5212 or else NT
(N
).Nkind
= N_Function_Specification
5213 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5214 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5215 Set_Flag15
(N
, Val
);
5216 end Set_Must_Not_Override
;
5218 procedure Set_Must_Override
5219 (N
: Node_Id
; Val
: Boolean := True) is
5221 pragma Assert
(False
5222 or else NT
(N
).Nkind
= N_Entry_Declaration
5223 or else NT
(N
).Nkind
= N_Function_Instantiation
5224 or else NT
(N
).Nkind
= N_Function_Specification
5225 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5226 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5227 Set_Flag14
(N
, Val
);
5228 end Set_Must_Override
;
5231 (N
: Node_Id
; Val
: Node_Id
) is
5233 pragma Assert
(False
5234 or else NT
(N
).Nkind
= N_Assignment_Statement
5235 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5236 or else NT
(N
).Nkind
= N_Defining_Program_Unit_Name
5237 or else NT
(N
).Nkind
= N_Designator
5238 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5239 or else NT
(N
).Nkind
= N_Exception_Renaming_Declaration
5240 or else NT
(N
).Nkind
= N_Exit_Statement
5241 or else NT
(N
).Nkind
= N_Formal_Package_Declaration
5242 or else NT
(N
).Nkind
= N_Function_Call
5243 or else NT
(N
).Nkind
= N_Function_Instantiation
5244 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5245 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5246 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5247 or else NT
(N
).Nkind
= N_Goto_Statement
5248 or else NT
(N
).Nkind
= N_Iterator_Specification
5249 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5250 or else NT
(N
).Nkind
= N_Package_Instantiation
5251 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5252 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
5253 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5254 or else NT
(N
).Nkind
= N_Raise_Statement
5255 or else NT
(N
).Nkind
= N_Requeue_Statement
5256 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
5257 or else NT
(N
).Nkind
= N_Subunit
5258 or else NT
(N
).Nkind
= N_Variant_Part
5259 or else NT
(N
).Nkind
= N_With_Clause
);
5260 Set_Node2_With_Parent
(N
, Val
);
5264 (N
: Node_Id
; Val
: List_Id
) is
5266 pragma Assert
(False
5267 or else NT
(N
).Nkind
= N_Abort_Statement
5268 or else NT
(N
).Nkind
= N_Use_Package_Clause
);
5269 Set_List2_With_Parent
(N
, Val
);
5272 procedure Set_Next_Entity
5273 (N
: Node_Id
; Val
: Node_Id
) is
5275 pragma Assert
(False
5276 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5277 or else NT
(N
).Nkind
= N_Defining_Identifier
5278 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5279 Set_Node2
(N
, Val
); -- semantic field, no parent set
5280 end Set_Next_Entity
;
5282 procedure Set_Next_Exit_Statement
5283 (N
: Node_Id
; Val
: Node_Id
) is
5285 pragma Assert
(False
5286 or else NT
(N
).Nkind
= N_Exit_Statement
);
5287 Set_Node3
(N
, Val
); -- semantic field, no parent set
5288 end Set_Next_Exit_Statement
;
5290 procedure Set_Next_Implicit_With
5291 (N
: Node_Id
; Val
: Node_Id
) is
5293 pragma Assert
(False
5294 or else NT
(N
).Nkind
= N_With_Clause
);
5295 Set_Node3
(N
, Val
); -- semantic field, no parent set
5296 end Set_Next_Implicit_With
;
5298 procedure Set_Next_Named_Actual
5299 (N
: Node_Id
; Val
: Node_Id
) is
5301 pragma Assert
(False
5302 or else NT
(N
).Nkind
= N_Parameter_Association
);
5303 Set_Node4
(N
, Val
); -- semantic field, no parent set
5304 end Set_Next_Named_Actual
;
5306 procedure Set_Next_Pragma
5307 (N
: Node_Id
; Val
: Node_Id
) is
5309 pragma Assert
(False
5310 or else NT
(N
).Nkind
= N_Pragma
);
5311 Set_Node1
(N
, Val
); -- semantic field, no parent set
5312 end Set_Next_Pragma
;
5314 procedure Set_Next_Rep_Item
5315 (N
: Node_Id
; Val
: Node_Id
) is
5317 pragma Assert
(False
5318 or else NT
(N
).Nkind
= N_Aspect_Specification
5319 or else NT
(N
).Nkind
= N_Attribute_Definition_Clause
5320 or else NT
(N
).Nkind
= N_Enumeration_Representation_Clause
5321 or else NT
(N
).Nkind
= N_Pragma
5322 or else NT
(N
).Nkind
= N_Record_Representation_Clause
);
5323 Set_Node5
(N
, Val
); -- semantic field, no parent set
5324 end Set_Next_Rep_Item
;
5326 procedure Set_Next_Use_Clause
5327 (N
: Node_Id
; Val
: Node_Id
) is
5329 pragma Assert
(False
5330 or else NT
(N
).Nkind
= N_Use_Package_Clause
5331 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
5332 Set_Node3
(N
, Val
); -- semantic field, no parent set
5333 end Set_Next_Use_Clause
;
5335 procedure Set_No_Ctrl_Actions
5336 (N
: Node_Id
; Val
: Boolean := True) is
5338 pragma Assert
(False
5339 or else NT
(N
).Nkind
= N_Assignment_Statement
);
5341 end Set_No_Ctrl_Actions
;
5343 procedure Set_No_Elaboration_Check
5344 (N
: Node_Id
; Val
: Boolean := True) is
5346 pragma Assert
(False
5347 or else NT
(N
).Nkind
= N_Function_Call
5348 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5349 Set_Flag14
(N
, Val
);
5350 end Set_No_Elaboration_Check
;
5352 procedure Set_No_Entities_Ref_In_Spec
5353 (N
: Node_Id
; Val
: Boolean := True) is
5355 pragma Assert
(False
5356 or else NT
(N
).Nkind
= N_With_Clause
);
5358 end Set_No_Entities_Ref_In_Spec
;
5360 procedure Set_No_Initialization
5361 (N
: Node_Id
; Val
: Boolean := True) is
5363 pragma Assert
(False
5364 or else NT
(N
).Nkind
= N_Allocator
5365 or else NT
(N
).Nkind
= N_Object_Declaration
);
5366 Set_Flag13
(N
, Val
);
5367 end Set_No_Initialization
;
5369 procedure Set_No_Truncation
5370 (N
: Node_Id
; Val
: Boolean := True) is
5372 pragma Assert
(False
5373 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
5374 Set_Flag17
(N
, Val
);
5375 end Set_No_Truncation
;
5377 procedure Set_Null_Present
5378 (N
: Node_Id
; Val
: Boolean := True) is
5380 pragma Assert
(False
5381 or else NT
(N
).Nkind
= N_Component_List
5382 or else NT
(N
).Nkind
= N_Procedure_Specification
5383 or else NT
(N
).Nkind
= N_Record_Definition
);
5384 Set_Flag13
(N
, Val
);
5385 end Set_Null_Present
;
5387 procedure Set_Null_Exclusion_Present
5388 (N
: Node_Id
; Val
: Boolean := True) is
5390 pragma Assert
(False
5391 or else NT
(N
).Nkind
= N_Access_Definition
5392 or else NT
(N
).Nkind
= N_Access_Function_Definition
5393 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5394 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
5395 or else NT
(N
).Nkind
= N_Allocator
5396 or else NT
(N
).Nkind
= N_Component_Definition
5397 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5398 or else NT
(N
).Nkind
= N_Discriminant_Specification
5399 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5400 or else NT
(N
).Nkind
= N_Function_Specification
5401 or else NT
(N
).Nkind
= N_Object_Declaration
5402 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
5403 or else NT
(N
).Nkind
= N_Parameter_Specification
5404 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
5405 Set_Flag11
(N
, Val
);
5406 end Set_Null_Exclusion_Present
;
5408 procedure Set_Null_Exclusion_In_Return_Present
5409 (N
: Node_Id
; Val
: Boolean := True) is
5411 pragma Assert
(False
5412 or else NT
(N
).Nkind
= N_Access_Function_Definition
);
5413 Set_Flag14
(N
, Val
);
5414 end Set_Null_Exclusion_In_Return_Present
;
5416 procedure Set_Null_Record_Present
5417 (N
: Node_Id
; Val
: Boolean := True) is
5419 pragma Assert
(False
5420 or else NT
(N
).Nkind
= N_Aggregate
5421 or else NT
(N
).Nkind
= N_Extension_Aggregate
);
5422 Set_Flag17
(N
, Val
);
5423 end Set_Null_Record_Present
;
5425 procedure Set_Object_Definition
5426 (N
: Node_Id
; Val
: Node_Id
) is
5428 pragma Assert
(False
5429 or else NT
(N
).Nkind
= N_Object_Declaration
);
5430 Set_Node4_With_Parent
(N
, Val
);
5431 end Set_Object_Definition
;
5433 procedure Set_Of_Present
5434 (N
: Node_Id
; Val
: Boolean := True) is
5436 pragma Assert
(False
5437 or else NT
(N
).Nkind
= N_Iterator_Specification
);
5438 Set_Flag16
(N
, Val
);
5441 procedure Set_Original_Discriminant
5442 (N
: Node_Id
; Val
: Node_Id
) is
5444 pragma Assert
(False
5445 or else NT
(N
).Nkind
= N_Identifier
);
5446 Set_Node2
(N
, Val
); -- semantic field, no parent set
5447 end Set_Original_Discriminant
;
5449 procedure Set_Original_Entity
5450 (N
: Node_Id
; Val
: Entity_Id
) is
5452 pragma Assert
(False
5453 or else NT
(N
).Nkind
= N_Integer_Literal
5454 or else NT
(N
).Nkind
= N_Real_Literal
);
5455 Set_Node2
(N
, Val
); -- semantic field, no parent set
5456 end Set_Original_Entity
;
5458 procedure Set_Others_Discrete_Choices
5459 (N
: Node_Id
; Val
: List_Id
) is
5461 pragma Assert
(False
5462 or else NT
(N
).Nkind
= N_Others_Choice
);
5463 Set_List1_With_Parent
(N
, Val
);
5464 end Set_Others_Discrete_Choices
;
5466 procedure Set_Out_Present
5467 (N
: Node_Id
; Val
: Boolean := True) is
5469 pragma Assert
(False
5470 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5471 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5472 Set_Flag17
(N
, Val
);
5473 end Set_Out_Present
;
5475 procedure Set_Parameter_Associations
5476 (N
: Node_Id
; Val
: List_Id
) is
5478 pragma Assert
(False
5479 or else NT
(N
).Nkind
= N_Entry_Call_Statement
5480 or else NT
(N
).Nkind
= N_Function_Call
5481 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5482 Set_List3_With_Parent
(N
, Val
);
5483 end Set_Parameter_Associations
;
5485 procedure Set_Parameter_List_Truncated
5486 (N
: Node_Id
; Val
: Boolean := True) is
5488 pragma Assert
(False
5489 or else NT
(N
).Nkind
= N_Function_Call
5490 or else NT
(N
).Nkind
= N_Procedure_Call_Statement
);
5491 Set_Flag17
(N
, Val
);
5492 end Set_Parameter_List_Truncated
;
5494 procedure Set_Parameter_Specifications
5495 (N
: Node_Id
; Val
: List_Id
) is
5497 pragma Assert
(False
5498 or else NT
(N
).Nkind
= N_Accept_Statement
5499 or else NT
(N
).Nkind
= N_Access_Function_Definition
5500 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5501 or else NT
(N
).Nkind
= N_Entry_Body_Formal_Part
5502 or else NT
(N
).Nkind
= N_Entry_Declaration
5503 or else NT
(N
).Nkind
= N_Function_Specification
5504 or else NT
(N
).Nkind
= N_Procedure_Specification
);
5505 Set_List3_With_Parent
(N
, Val
);
5506 end Set_Parameter_Specifications
;
5508 procedure Set_Parameter_Type
5509 (N
: Node_Id
; Val
: Node_Id
) is
5511 pragma Assert
(False
5512 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5513 Set_Node2_With_Parent
(N
, Val
);
5514 end Set_Parameter_Type
;
5516 procedure Set_Parent_Spec
5517 (N
: Node_Id
; Val
: Node_Id
) is
5519 pragma Assert
(False
5520 or else NT
(N
).Nkind
= N_Function_Instantiation
5521 or else NT
(N
).Nkind
= N_Generic_Function_Renaming_Declaration
5522 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
5523 or else NT
(N
).Nkind
= N_Generic_Package_Renaming_Declaration
5524 or else NT
(N
).Nkind
= N_Generic_Procedure_Renaming_Declaration
5525 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
5526 or else NT
(N
).Nkind
= N_Package_Declaration
5527 or else NT
(N
).Nkind
= N_Package_Instantiation
5528 or else NT
(N
).Nkind
= N_Package_Renaming_Declaration
5529 or else NT
(N
).Nkind
= N_Procedure_Instantiation
5530 or else NT
(N
).Nkind
= N_Subprogram_Declaration
5531 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
5532 Set_Node4
(N
, Val
); -- semantic field, no parent set
5533 end Set_Parent_Spec
;
5535 procedure Set_Position
5536 (N
: Node_Id
; Val
: Node_Id
) is
5538 pragma Assert
(False
5539 or else NT
(N
).Nkind
= N_Component_Clause
);
5540 Set_Node2_With_Parent
(N
, Val
);
5543 procedure Set_Pragma_Argument_Associations
5544 (N
: Node_Id
; Val
: List_Id
) is
5546 pragma Assert
(False
5547 or else NT
(N
).Nkind
= N_Pragma
);
5548 Set_List2_With_Parent
(N
, Val
);
5549 end Set_Pragma_Argument_Associations
;
5551 procedure Set_Pragma_Identifier
5552 (N
: Node_Id
; Val
: Node_Id
) is
5554 pragma Assert
(False
5555 or else NT
(N
).Nkind
= N_Pragma
);
5556 Set_Node4_With_Parent
(N
, Val
);
5557 end Set_Pragma_Identifier
;
5559 procedure Set_Pragmas_After
5560 (N
: Node_Id
; Val
: List_Id
) is
5562 pragma Assert
(False
5563 or else NT
(N
).Nkind
= N_Compilation_Unit_Aux
5564 or else NT
(N
).Nkind
= N_Terminate_Alternative
);
5565 Set_List5_With_Parent
(N
, Val
);
5566 end Set_Pragmas_After
;
5568 procedure Set_Pragmas_Before
5569 (N
: Node_Id
; Val
: List_Id
) is
5571 pragma Assert
(False
5572 or else NT
(N
).Nkind
= N_Accept_Alternative
5573 or else NT
(N
).Nkind
= N_Delay_Alternative
5574 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
5575 or else NT
(N
).Nkind
= N_Mod_Clause
5576 or else NT
(N
).Nkind
= N_Terminate_Alternative
5577 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
5578 Set_List4_With_Parent
(N
, Val
);
5579 end Set_Pragmas_Before
;
5581 procedure Set_Prefix
5582 (N
: Node_Id
; Val
: Node_Id
) is
5584 pragma Assert
(False
5585 or else NT
(N
).Nkind
= N_Attribute_Reference
5586 or else NT
(N
).Nkind
= N_Expanded_Name
5587 or else NT
(N
).Nkind
= N_Explicit_Dereference
5588 or else NT
(N
).Nkind
= N_Indexed_Component
5589 or else NT
(N
).Nkind
= N_Reference
5590 or else NT
(N
).Nkind
= N_Selected_Component
5591 or else NT
(N
).Nkind
= N_Slice
);
5592 Set_Node3_With_Parent
(N
, Val
);
5595 procedure Set_Premature_Use
5596 (N
: Node_Id
; Val
: Node_Id
) is
5598 pragma Assert
(False
5599 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
);
5601 end Set_Premature_Use
;
5603 procedure Set_Present_Expr
5604 (N
: Node_Id
; Val
: Uint
) is
5606 pragma Assert
(False
5607 or else NT
(N
).Nkind
= N_Variant
);
5609 end Set_Present_Expr
;
5611 procedure Set_Prev_Ids
5612 (N
: Node_Id
; Val
: Boolean := True) is
5614 pragma Assert
(False
5615 or else NT
(N
).Nkind
= N_Component_Declaration
5616 or else NT
(N
).Nkind
= N_Discriminant_Specification
5617 or else NT
(N
).Nkind
= N_Exception_Declaration
5618 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
5619 or else NT
(N
).Nkind
= N_Number_Declaration
5620 or else NT
(N
).Nkind
= N_Object_Declaration
5621 or else NT
(N
).Nkind
= N_Parameter_Specification
);
5625 procedure Set_Print_In_Hex
5626 (N
: Node_Id
; Val
: Boolean := True) is
5628 pragma Assert
(False
5629 or else NT
(N
).Nkind
= N_Integer_Literal
);
5630 Set_Flag13
(N
, Val
);
5631 end Set_Print_In_Hex
;
5633 procedure Set_Private_Declarations
5634 (N
: Node_Id
; Val
: List_Id
) is
5636 pragma Assert
(False
5637 or else NT
(N
).Nkind
= N_Package_Specification
5638 or else NT
(N
).Nkind
= N_Protected_Definition
5639 or else NT
(N
).Nkind
= N_Task_Definition
);
5640 Set_List3_With_Parent
(N
, Val
);
5641 end Set_Private_Declarations
;
5643 procedure Set_Private_Present
5644 (N
: Node_Id
; Val
: Boolean := True) is
5646 pragma Assert
(False
5647 or else NT
(N
).Nkind
= N_Compilation_Unit
5648 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
5649 or else NT
(N
).Nkind
= N_With_Clause
);
5650 Set_Flag15
(N
, Val
);
5651 end Set_Private_Present
;
5653 procedure Set_Procedure_To_Call
5654 (N
: Node_Id
; Val
: Node_Id
) is
5656 pragma Assert
(False
5657 or else NT
(N
).Nkind
= N_Allocator
5658 or else NT
(N
).Nkind
= N_Extended_Return_Statement
5659 or else NT
(N
).Nkind
= N_Free_Statement
5660 or else NT
(N
).Nkind
= N_Return_Statement
);
5661 Set_Node2
(N
, Val
); -- semantic field, no parent set
5662 end Set_Procedure_To_Call
;
5664 procedure Set_Proper_Body
5665 (N
: Node_Id
; Val
: Node_Id
) is
5667 pragma Assert
(False
5668 or else NT
(N
).Nkind
= N_Subunit
);
5669 Set_Node1_With_Parent
(N
, Val
);
5670 end Set_Proper_Body
;
5672 procedure Set_Protected_Definition
5673 (N
: Node_Id
; Val
: Node_Id
) is
5675 pragma Assert
(False
5676 or else NT
(N
).Nkind
= N_Protected_Type_Declaration
5677 or else NT
(N
).Nkind
= N_Single_Protected_Declaration
);
5678 Set_Node3_With_Parent
(N
, Val
);
5679 end Set_Protected_Definition
;
5681 procedure Set_Protected_Present
5682 (N
: Node_Id
; Val
: Boolean := True) is
5684 pragma Assert
(False
5685 or else NT
(N
).Nkind
= N_Access_Function_Definition
5686 or else NT
(N
).Nkind
= N_Access_Procedure_Definition
5687 or else NT
(N
).Nkind
= N_Derived_Type_Definition
5688 or else NT
(N
).Nkind
= N_Record_Definition
);
5690 end Set_Protected_Present
;
5692 procedure Set_Raises_Constraint_Error
5693 (N
: Node_Id
; Val
: Boolean := True) is
5695 pragma Assert
(False
5696 or else NT
(N
).Nkind
in N_Subexpr
);
5698 end Set_Raises_Constraint_Error
;
5700 procedure Set_Range_Constraint
5701 (N
: Node_Id
; Val
: Node_Id
) is
5703 pragma Assert
(False
5704 or else NT
(N
).Nkind
= N_Delta_Constraint
5705 or else NT
(N
).Nkind
= N_Digits_Constraint
);
5706 Set_Node4_With_Parent
(N
, Val
);
5707 end Set_Range_Constraint
;
5709 procedure Set_Range_Expression
5710 (N
: Node_Id
; Val
: Node_Id
) is
5712 pragma Assert
(False
5713 or else NT
(N
).Nkind
= N_Range_Constraint
);
5714 Set_Node4_With_Parent
(N
, Val
);
5715 end Set_Range_Expression
;
5717 procedure Set_Real_Range_Specification
5718 (N
: Node_Id
; Val
: Node_Id
) is
5720 pragma Assert
(False
5721 or else NT
(N
).Nkind
= N_Decimal_Fixed_Point_Definition
5722 or else NT
(N
).Nkind
= N_Floating_Point_Definition
5723 or else NT
(N
).Nkind
= N_Ordinary_Fixed_Point_Definition
);
5724 Set_Node4_With_Parent
(N
, Val
);
5725 end Set_Real_Range_Specification
;
5727 procedure Set_Realval
5728 (N
: Node_Id
; Val
: Ureal
) is
5730 pragma Assert
(False
5731 or else NT
(N
).Nkind
= N_Real_Literal
);
5732 Set_Ureal3
(N
, Val
);
5735 procedure Set_Reason
5736 (N
: Node_Id
; Val
: Uint
) is
5738 pragma Assert
(False
5739 or else NT
(N
).Nkind
= N_Raise_Constraint_Error
5740 or else NT
(N
).Nkind
= N_Raise_Program_Error
5741 or else NT
(N
).Nkind
= N_Raise_Storage_Error
);
5745 procedure Set_Record_Extension_Part
5746 (N
: Node_Id
; Val
: Node_Id
) is
5748 pragma Assert
(False
5749 or else NT
(N
).Nkind
= N_Derived_Type_Definition
);
5750 Set_Node3_With_Parent
(N
, Val
);
5751 end Set_Record_Extension_Part
;
5753 procedure Set_Redundant_Use
5754 (N
: Node_Id
; Val
: Boolean := True) is
5756 pragma Assert
(False
5757 or else NT
(N
).Nkind
= N_Attribute_Reference
5758 or else NT
(N
).Nkind
= N_Expanded_Name
5759 or else NT
(N
).Nkind
= N_Identifier
);
5760 Set_Flag13
(N
, Val
);
5761 end Set_Redundant_Use
;
5763 procedure Set_Renaming_Exception
5764 (N
: Node_Id
; Val
: Node_Id
) is
5766 pragma Assert
(False
5767 or else NT
(N
).Nkind
= N_Exception_Declaration
);
5769 end Set_Renaming_Exception
;
5771 procedure Set_Result_Definition
5772 (N
: Node_Id
; Val
: Node_Id
) is
5774 pragma Assert
(False
5775 or else NT
(N
).Nkind
= N_Access_Function_Definition
5776 or else NT
(N
).Nkind
= N_Function_Specification
);
5777 Set_Node4_With_Parent
(N
, Val
);
5778 end Set_Result_Definition
;
5780 procedure Set_Return_Object_Declarations
5781 (N
: Node_Id
; Val
: List_Id
) is
5783 pragma Assert
(False
5784 or else NT
(N
).Nkind
= N_Extended_Return_Statement
);
5785 Set_List3_With_Parent
(N
, Val
);
5786 end Set_Return_Object_Declarations
;
5788 procedure Set_Return_Statement_Entity
5789 (N
: Node_Id
; Val
: Node_Id
) is
5791 pragma Assert
(False
5792 or else NT
(N
).Nkind
= N_Extended_Return_Statement
5793 or else NT
(N
).Nkind
= N_Return_Statement
);
5794 Set_Node5
(N
, Val
); -- semantic field, no parent set
5795 end Set_Return_Statement_Entity
;
5797 procedure Set_Reverse_Present
5798 (N
: Node_Id
; Val
: Boolean := True) is
5800 pragma Assert
(False
5801 or else NT
(N
).Nkind
= N_Iterator_Specification
5802 or else NT
(N
).Nkind
= N_Loop_Parameter_Specification
);
5803 Set_Flag15
(N
, Val
);
5804 end Set_Reverse_Present
;
5806 procedure Set_Right_Opnd
5807 (N
: Node_Id
; Val
: Node_Id
) is
5809 pragma Assert
(False
5810 or else NT
(N
).Nkind
in N_Op
5811 or else NT
(N
).Nkind
= N_And_Then
5812 or else NT
(N
).Nkind
= N_In
5813 or else NT
(N
).Nkind
= N_Not_In
5814 or else NT
(N
).Nkind
= N_Or_Else
);
5815 Set_Node3_With_Parent
(N
, Val
);
5818 procedure Set_Rounded_Result
5819 (N
: Node_Id
; Val
: Boolean := True) is
5821 pragma Assert
(False
5822 or else NT
(N
).Nkind
= N_Op_Divide
5823 or else NT
(N
).Nkind
= N_Op_Multiply
5824 or else NT
(N
).Nkind
= N_Type_Conversion
);
5825 Set_Flag18
(N
, Val
);
5826 end Set_Rounded_Result
;
5828 procedure Set_SCIL_Controlling_Tag
5829 (N
: Node_Id
; Val
: Node_Id
) is
5831 pragma Assert
(False
5832 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
5833 Set_Node5
(N
, Val
); -- semantic field, no parent set
5834 end Set_SCIL_Controlling_Tag
;
5836 procedure Set_SCIL_Entity
5837 (N
: Node_Id
; Val
: Node_Id
) is
5839 pragma Assert
(False
5840 or else NT
(N
).Nkind
= N_SCIL_Dispatch_Table_Tag_Init
5841 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
5842 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
5843 Set_Node4
(N
, Val
); -- semantic field, no parent set
5844 end Set_SCIL_Entity
;
5846 procedure Set_SCIL_Tag_Value
5847 (N
: Node_Id
; Val
: Node_Id
) is
5849 pragma Assert
(False
5850 or else NT
(N
).Nkind
= N_SCIL_Membership_Test
);
5851 Set_Node5
(N
, Val
); -- semantic field, no parent set
5852 end Set_SCIL_Tag_Value
;
5854 procedure Set_SCIL_Target_Prim
5855 (N
: Node_Id
; Val
: Node_Id
) is
5857 pragma Assert
(False
5858 or else NT
(N
).Nkind
= N_SCIL_Dispatching_Call
);
5859 Set_Node2
(N
, Val
); -- semantic field, no parent set
5860 end Set_SCIL_Target_Prim
;
5863 (N
: Node_Id
; Val
: Node_Id
) is
5865 pragma Assert
(False
5866 or else NT
(N
).Nkind
= N_Defining_Character_Literal
5867 or else NT
(N
).Nkind
= N_Defining_Identifier
5868 or else NT
(N
).Nkind
= N_Defining_Operator_Symbol
);
5869 Set_Node3
(N
, Val
); -- semantic field, no parent set
5872 procedure Set_Select_Alternatives
5873 (N
: Node_Id
; Val
: List_Id
) is
5875 pragma Assert
(False
5876 or else NT
(N
).Nkind
= N_Selective_Accept
);
5877 Set_List1_With_Parent
(N
, Val
);
5878 end Set_Select_Alternatives
;
5880 procedure Set_Selector_Name
5881 (N
: Node_Id
; Val
: Node_Id
) is
5883 pragma Assert
(False
5884 or else NT
(N
).Nkind
= N_Expanded_Name
5885 or else NT
(N
).Nkind
= N_Generic_Association
5886 or else NT
(N
).Nkind
= N_Parameter_Association
5887 or else NT
(N
).Nkind
= N_Selected_Component
);
5888 Set_Node2_With_Parent
(N
, Val
);
5889 end Set_Selector_Name
;
5891 procedure Set_Selector_Names
5892 (N
: Node_Id
; Val
: List_Id
) is
5894 pragma Assert
(False
5895 or else NT
(N
).Nkind
= N_Discriminant_Association
);
5896 Set_List1_With_Parent
(N
, Val
);
5897 end Set_Selector_Names
;
5899 procedure Set_Shift_Count_OK
5900 (N
: Node_Id
; Val
: Boolean := True) is
5902 pragma Assert
(False
5903 or else NT
(N
).Nkind
= N_Op_Rotate_Left
5904 or else NT
(N
).Nkind
= N_Op_Rotate_Right
5905 or else NT
(N
).Nkind
= N_Op_Shift_Left
5906 or else NT
(N
).Nkind
= N_Op_Shift_Right
5907 or else NT
(N
).Nkind
= N_Op_Shift_Right_Arithmetic
);
5909 end Set_Shift_Count_OK
;
5911 procedure Set_Source_Type
5912 (N
: Node_Id
; Val
: Entity_Id
) is
5914 pragma Assert
(False
5915 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
5916 Set_Node1
(N
, Val
); -- semantic field, no parent set
5917 end Set_Source_Type
;
5919 procedure Set_Spec_PPC_List
5920 (N
: Node_Id
; Val
: Node_Id
) is
5922 pragma Assert
(False
5923 or else NT
(N
).Nkind
= N_Contract
);
5924 Set_Node1
(N
, Val
); -- semantic field, no parent set
5925 end Set_Spec_PPC_List
;
5927 procedure Set_Spec_CTC_List
5928 (N
: Node_Id
; Val
: Node_Id
) is
5930 pragma Assert
(False
5931 or else NT
(N
).Nkind
= N_Contract
);
5932 Set_Node2
(N
, Val
); -- semantic field, no parent set
5933 end Set_Spec_CTC_List
;
5935 procedure Set_Specification
5936 (N
: Node_Id
; Val
: Node_Id
) is
5938 pragma Assert
(False
5939 or else NT
(N
).Nkind
= N_Abstract_Subprogram_Declaration
5940 or else NT
(N
).Nkind
= N_Expression_Function
5941 or else NT
(N
).Nkind
= N_Formal_Abstract_Subprogram_Declaration
5942 or else NT
(N
).Nkind
= N_Formal_Concrete_Subprogram_Declaration
5943 or else NT
(N
).Nkind
= N_Generic_Package_Declaration
5944 or else NT
(N
).Nkind
= N_Generic_Subprogram_Declaration
5945 or else NT
(N
).Nkind
= N_Package_Declaration
5946 or else NT
(N
).Nkind
= N_Subprogram_Body
5947 or else NT
(N
).Nkind
= N_Subprogram_Body_Stub
5948 or else NT
(N
).Nkind
= N_Subprogram_Declaration
5949 or else NT
(N
).Nkind
= N_Subprogram_Renaming_Declaration
);
5950 Set_Node1_With_Parent
(N
, Val
);
5951 end Set_Specification
;
5953 procedure Set_Split_PPC
5954 (N
: Node_Id
; Val
: Boolean) is
5956 pragma Assert
(False
5957 or else NT
(N
).Nkind
= N_Aspect_Specification
5958 or else NT
(N
).Nkind
= N_Pragma
);
5959 Set_Flag17
(N
, Val
);
5962 procedure Set_Statements
5963 (N
: Node_Id
; Val
: List_Id
) is
5965 pragma Assert
(False
5966 or else NT
(N
).Nkind
= N_Abortable_Part
5967 or else NT
(N
).Nkind
= N_Accept_Alternative
5968 or else NT
(N
).Nkind
= N_Case_Statement_Alternative
5969 or else NT
(N
).Nkind
= N_Delay_Alternative
5970 or else NT
(N
).Nkind
= N_Entry_Call_Alternative
5971 or else NT
(N
).Nkind
= N_Exception_Handler
5972 or else NT
(N
).Nkind
= N_Handled_Sequence_Of_Statements
5973 or else NT
(N
).Nkind
= N_Loop_Statement
5974 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
5975 Set_List3_With_Parent
(N
, Val
);
5978 procedure Set_Static_Processing_OK
5979 (N
: Node_Id
; Val
: Boolean) is
5981 pragma Assert
(False
5982 or else NT
(N
).Nkind
= N_Aggregate
);
5984 end Set_Static_Processing_OK
;
5986 procedure Set_Storage_Pool
5987 (N
: Node_Id
; Val
: Node_Id
) is
5989 pragma Assert
(False
5990 or else NT
(N
).Nkind
= N_Allocator
5991 or else NT
(N
).Nkind
= N_Extended_Return_Statement
5992 or else NT
(N
).Nkind
= N_Free_Statement
5993 or else NT
(N
).Nkind
= N_Return_Statement
);
5994 Set_Node1
(N
, Val
); -- semantic field, no parent set
5995 end Set_Storage_Pool
;
5997 procedure Set_Subpool_Handle_Name
5998 (N
: Node_Id
; Val
: Node_Id
) is
6000 pragma Assert
(False
6001 or else NT
(N
).Nkind
= N_Allocator
);
6002 Set_Node4_With_Parent
(N
, Val
);
6003 end Set_Subpool_Handle_Name
;
6005 procedure Set_Strval
6006 (N
: Node_Id
; Val
: String_Id
) is
6008 pragma Assert
(False
6009 or else NT
(N
).Nkind
= N_Operator_Symbol
6010 or else NT
(N
).Nkind
= N_String_Literal
);
6014 procedure Set_Subtype_Indication
6015 (N
: Node_Id
; Val
: Node_Id
) is
6017 pragma Assert
(False
6018 or else NT
(N
).Nkind
= N_Access_To_Object_Definition
6019 or else NT
(N
).Nkind
= N_Component_Definition
6020 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6021 or else NT
(N
).Nkind
= N_Iterator_Specification
6022 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6023 or else NT
(N
).Nkind
= N_Subtype_Declaration
);
6024 Set_Node5_With_Parent
(N
, Val
);
6025 end Set_Subtype_Indication
;
6027 procedure Set_Subtype_Mark
6028 (N
: Node_Id
; Val
: Node_Id
) is
6030 pragma Assert
(False
6031 or else NT
(N
).Nkind
= N_Access_Definition
6032 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6033 or else NT
(N
).Nkind
= N_Formal_Object_Declaration
6034 or else NT
(N
).Nkind
= N_Object_Renaming_Declaration
6035 or else NT
(N
).Nkind
= N_Qualified_Expression
6036 or else NT
(N
).Nkind
= N_Subtype_Indication
6037 or else NT
(N
).Nkind
= N_Type_Conversion
6038 or else NT
(N
).Nkind
= N_Unchecked_Type_Conversion
);
6039 Set_Node4_With_Parent
(N
, Val
);
6040 end Set_Subtype_Mark
;
6042 procedure Set_Subtype_Marks
6043 (N
: Node_Id
; Val
: List_Id
) is
6045 pragma Assert
(False
6046 or else NT
(N
).Nkind
= N_Unconstrained_Array_Definition
6047 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6048 Set_List2_With_Parent
(N
, Val
);
6049 end Set_Subtype_Marks
;
6051 procedure Set_Suppress_Assignment_Checks
6052 (N
: Node_Id
; Val
: Boolean := True) is
6054 pragma Assert
(False
6055 or else NT
(N
).Nkind
= N_Assignment_Statement
6056 or else NT
(N
).Nkind
= N_Object_Declaration
);
6057 Set_Flag18
(N
, Val
);
6058 end Set_Suppress_Assignment_Checks
;
6060 procedure Set_Suppress_Loop_Warnings
6061 (N
: Node_Id
; Val
: Boolean := True) is
6063 pragma Assert
(False
6064 or else NT
(N
).Nkind
= N_Loop_Statement
);
6065 Set_Flag17
(N
, Val
);
6066 end Set_Suppress_Loop_Warnings
;
6068 procedure Set_Synchronized_Present
6069 (N
: Node_Id
; Val
: Boolean := True) is
6071 pragma Assert
(False
6072 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6073 or else NT
(N
).Nkind
= N_Formal_Derived_Type_Definition
6074 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6075 or else NT
(N
).Nkind
= N_Record_Definition
);
6077 end Set_Synchronized_Present
;
6079 procedure Set_Tagged_Present
6080 (N
: Node_Id
; Val
: Boolean := True) is
6082 pragma Assert
(False
6083 or else NT
(N
).Nkind
= N_Formal_Incomplete_Type_Definition
6084 or else NT
(N
).Nkind
= N_Formal_Private_Type_Definition
6085 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6086 or else NT
(N
).Nkind
= N_Private_Type_Declaration
6087 or else NT
(N
).Nkind
= N_Record_Definition
);
6088 Set_Flag15
(N
, Val
);
6089 end Set_Tagged_Present
;
6091 procedure Set_Target_Type
6092 (N
: Node_Id
; Val
: Entity_Id
) is
6094 pragma Assert
(False
6095 or else NT
(N
).Nkind
= N_Validate_Unchecked_Conversion
);
6096 Set_Node2
(N
, Val
); -- semantic field, no parent set
6097 end Set_Target_Type
;
6099 procedure Set_Task_Definition
6100 (N
: Node_Id
; Val
: Node_Id
) is
6102 pragma Assert
(False
6103 or else NT
(N
).Nkind
= N_Single_Task_Declaration
6104 or else NT
(N
).Nkind
= N_Task_Type_Declaration
);
6105 Set_Node3_With_Parent
(N
, Val
);
6106 end Set_Task_Definition
;
6108 procedure Set_Task_Present
6109 (N
: Node_Id
; Val
: Boolean := True) is
6111 pragma Assert
(False
6112 or else NT
(N
).Nkind
= N_Derived_Type_Definition
6113 or else NT
(N
).Nkind
= N_Record_Definition
);
6115 end Set_Task_Present
;
6117 procedure Set_Then_Actions
6118 (N
: Node_Id
; Val
: List_Id
) is
6120 pragma Assert
(False
6121 or else NT
(N
).Nkind
= N_Conditional_Expression
);
6122 Set_List2
(N
, Val
); -- semantic field, no parent set
6123 end Set_Then_Actions
;
6125 procedure Set_Then_Statements
6126 (N
: Node_Id
; Val
: List_Id
) is
6128 pragma Assert
(False
6129 or else NT
(N
).Nkind
= N_Elsif_Part
6130 or else NT
(N
).Nkind
= N_If_Statement
);
6131 Set_List2_With_Parent
(N
, Val
);
6132 end Set_Then_Statements
;
6134 procedure Set_Treat_Fixed_As_Integer
6135 (N
: Node_Id
; Val
: Boolean := True) is
6137 pragma Assert
(False
6138 or else NT
(N
).Nkind
= N_Op_Divide
6139 or else NT
(N
).Nkind
= N_Op_Mod
6140 or else NT
(N
).Nkind
= N_Op_Multiply
6141 or else NT
(N
).Nkind
= N_Op_Rem
);
6142 Set_Flag14
(N
, Val
);
6143 end Set_Treat_Fixed_As_Integer
;
6145 procedure Set_Triggering_Alternative
6146 (N
: Node_Id
; Val
: Node_Id
) is
6148 pragma Assert
(False
6149 or else NT
(N
).Nkind
= N_Asynchronous_Select
);
6150 Set_Node1_With_Parent
(N
, Val
);
6151 end Set_Triggering_Alternative
;
6153 procedure Set_Triggering_Statement
6154 (N
: Node_Id
; Val
: Node_Id
) is
6156 pragma Assert
(False
6157 or else NT
(N
).Nkind
= N_Triggering_Alternative
);
6158 Set_Node1_With_Parent
(N
, Val
);
6159 end Set_Triggering_Statement
;
6161 procedure Set_TSS_Elist
6162 (N
: Node_Id
; Val
: Elist_Id
) is
6164 pragma Assert
(False
6165 or else NT
(N
).Nkind
= N_Freeze_Entity
);
6166 Set_Elist3
(N
, Val
); -- semantic field, no parent set
6169 procedure Set_Type_Definition
6170 (N
: Node_Id
; Val
: Node_Id
) is
6172 pragma Assert
(False
6173 or else NT
(N
).Nkind
= N_Full_Type_Declaration
);
6174 Set_Node3_With_Parent
(N
, Val
);
6175 end Set_Type_Definition
;
6178 (N
: Node_Id
; Val
: Node_Id
) is
6180 pragma Assert
(False
6181 or else NT
(N
).Nkind
= N_Compilation_Unit
);
6182 Set_Node2_With_Parent
(N
, Val
);
6185 procedure Set_Unknown_Discriminants_Present
6186 (N
: Node_Id
; Val
: Boolean := True) is
6188 pragma Assert
(False
6189 or else NT
(N
).Nkind
= N_Formal_Type_Declaration
6190 or else NT
(N
).Nkind
= N_Incomplete_Type_Declaration
6191 or else NT
(N
).Nkind
= N_Private_Extension_Declaration
6192 or else NT
(N
).Nkind
= N_Private_Type_Declaration
);
6193 Set_Flag13
(N
, Val
);
6194 end Set_Unknown_Discriminants_Present
;
6196 procedure Set_Unreferenced_In_Spec
6197 (N
: Node_Id
; Val
: Boolean := True) is
6199 pragma Assert
(False
6200 or else NT
(N
).Nkind
= N_With_Clause
);
6202 end Set_Unreferenced_In_Spec
;
6204 procedure Set_Variant_Part
6205 (N
: Node_Id
; Val
: Node_Id
) is
6207 pragma Assert
(False
6208 or else NT
(N
).Nkind
= N_Component_List
);
6209 Set_Node4_With_Parent
(N
, Val
);
6210 end Set_Variant_Part
;
6212 procedure Set_Variants
6213 (N
: Node_Id
; Val
: List_Id
) is
6215 pragma Assert
(False
6216 or else NT
(N
).Nkind
= N_Variant_Part
);
6217 Set_List1_With_Parent
(N
, Val
);
6220 procedure Set_Visible_Declarations
6221 (N
: Node_Id
; Val
: List_Id
) is
6223 pragma Assert
(False
6224 or else NT
(N
).Nkind
= N_Package_Specification
6225 or else NT
(N
).Nkind
= N_Protected_Definition
6226 or else NT
(N
).Nkind
= N_Task_Definition
);
6227 Set_List2_With_Parent
(N
, Val
);
6228 end Set_Visible_Declarations
;
6230 procedure Set_Used_Operations
6231 (N
: Node_Id
; Val
: Elist_Id
) is
6233 pragma Assert
(False
6234 or else NT
(N
).Nkind
= N_Use_Type_Clause
);
6235 Set_Elist5
(N
, Val
);
6236 end Set_Used_Operations
;
6238 procedure Set_Was_Originally_Stub
6239 (N
: Node_Id
; Val
: Boolean := True) is
6241 pragma Assert
(False
6242 or else NT
(N
).Nkind
= N_Package_Body
6243 or else NT
(N
).Nkind
= N_Protected_Body
6244 or else NT
(N
).Nkind
= N_Subprogram_Body
6245 or else NT
(N
).Nkind
= N_Task_Body
);
6246 Set_Flag13
(N
, Val
);
6247 end Set_Was_Originally_Stub
;
6249 procedure Set_Withed_Body
6250 (N
: Node_Id
; Val
: Node_Id
) is
6252 pragma Assert
(False
6253 or else NT
(N
).Nkind
= N_With_Clause
);
6255 end Set_Withed_Body
;
6257 -------------------------
6258 -- Iterator Procedures --
6259 -------------------------
6261 procedure Next_Entity
(N
: in out Node_Id
) is
6263 N
:= Next_Entity
(N
);
6266 procedure Next_Named_Actual
(N
: in out Node_Id
) is
6268 N
:= Next_Named_Actual
(N
);
6269 end Next_Named_Actual
;
6271 procedure Next_Rep_Item
(N
: in out Node_Id
) is
6273 N
:= Next_Rep_Item
(N
);
6276 procedure Next_Use_Clause
(N
: in out Node_Id
) is
6278 N
:= Next_Use_Clause
(N
);
6279 end Next_Use_Clause
;
6285 function End_Location
(N
: Node_Id
) return Source_Ptr
is
6286 L
: constant Uint
:= End_Span
(N
);
6291 return Source_Ptr
(Int
(Sloc
(N
)) + UI_To_Int
(L
));
6295 --------------------
6296 -- Get_Pragma_Arg --
6297 --------------------
6299 function Get_Pragma_Arg
(Arg
: Node_Id
) return Node_Id
is
6301 if Nkind
(Arg
) = N_Pragma_Argument_Association
then
6302 return Expression
(Arg
);
6308 ----------------------
6309 -- Set_End_Location --
6310 ----------------------
6312 procedure Set_End_Location
(N
: Node_Id
; S
: Source_Ptr
) is
6315 UI_From_Int
(Int
(S
) - Int
(Sloc
(N
))));
6316 end Set_End_Location
;
6325 V2
: Node_Kind
) return Boolean
6328 return T
= V1
or else
6336 V3
: Node_Kind
) return Boolean
6339 return T
= V1
or else
6349 V4
: Node_Kind
) return Boolean
6352 return T
= V1
or else
6364 V5
: Node_Kind
) return Boolean
6367 return T
= V1
or else
6381 V6
: Node_Kind
) return Boolean
6384 return T
= V1
or else
6400 V7
: Node_Kind
) return Boolean
6403 return T
= V1
or else
6421 V8
: Node_Kind
) return Boolean
6424 return T
= V1
or else
6444 V9
: Node_Kind
) return Boolean
6447 return T
= V1
or else
6462 function Pragma_Name
(N
: Node_Id
) return Name_Id
is
6464 return Chars
(Pragma_Identifier
(N
));