1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2004, 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 2, 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. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNAT; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
20 -- MA 02111-1307, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNAT was originally developed by the GNAT team at New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc. --
32 ------------------------------------------------------------------------------
34 pragma Style_Checks (All_Checks);
35 -- No subprogram ordering check, due to logical grouping
37 with Atree; use Atree;
41 use Atree.Unchecked_Access;
42 -- This package is one of the few packages which is allowed to make direct
43 -- references to tree nodes (since it is in the business of providing a
44 -- higher level of tree access which other clients are expected to use and
45 -- which implements checks).
47 use Atree_Private_Part;
48 -- The only reason that we ask for direct access to the private part of
49 -- the tree package is so that we can directly reference the Nkind field
50 -- of nodes table entries. We do this since it helps the efficiency of
51 -- the Sinfo debugging checks considerably (note that when we are checking
52 -- Nkind values, we don't need to check for a valid node reference, because
53 -- we will check that anyway when we reference the field).
55 NT : Nodes.Table_Ptr renames Nodes.Table;
56 -- A short hand abbreviation, useful for the debugging checks
58 ----------------------------
59 -- Field Access Functions --
60 ----------------------------
62 function ABE_Is_Certain
63 (N : Node_Id) return Boolean is
66 or else NT (N).Nkind = N_Formal_Package_Declaration
67 or else NT (N).Nkind = N_Function_Call
68 or else NT (N).Nkind = N_Function_Instantiation
69 or else NT (N).Nkind = N_Package_Instantiation
70 or else NT (N).Nkind = N_Procedure_Call_Statement
71 or else NT (N).Nkind = N_Procedure_Instantiation);
75 function Abort_Present
76 (N : Node_Id) return Boolean is
79 or else NT (N).Nkind = N_Requeue_Statement);
83 function Abortable_Part
84 (N : Node_Id) return Node_Id is
87 or else NT (N).Nkind = N_Asynchronous_Select);
91 function Abstract_Present
92 (N : Node_Id) return Boolean is
95 or else NT (N).Nkind = N_Derived_Type_Definition
96 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
97 or else NT (N).Nkind = N_Formal_Private_Type_Definition
98 or else NT (N).Nkind = N_Private_Extension_Declaration
99 or else NT (N).Nkind = N_Private_Type_Declaration
100 or else NT (N).Nkind = N_Record_Definition);
102 end Abstract_Present;
104 function Accept_Handler_Records
105 (N : Node_Id) return List_Id is
108 or else NT (N).Nkind = N_Accept_Alternative);
110 end Accept_Handler_Records;
112 function Accept_Statement
113 (N : Node_Id) return Node_Id is
116 or else NT (N).Nkind = N_Accept_Alternative);
118 end Accept_Statement;
120 function Access_Types_To_Process
121 (N : Node_Id) return Elist_Id is
124 or else NT (N).Nkind = N_Freeze_Entity);
126 end Access_Types_To_Process;
129 (N : Node_Id) return List_Id is
132 or else NT (N).Nkind = N_And_Then
133 or else NT (N).Nkind = N_Compilation_Unit_Aux
134 or else NT (N).Nkind = N_Freeze_Entity
135 or else NT (N).Nkind = N_Or_Else);
139 function Activation_Chain_Entity
140 (N : Node_Id) return Node_Id is
143 or else NT (N).Nkind = N_Block_Statement
144 or else NT (N).Nkind = N_Entry_Body
145 or else NT (N).Nkind = N_Generic_Package_Declaration
146 or else NT (N).Nkind = N_Package_Declaration
147 or else NT (N).Nkind = N_Subprogram_Body
148 or else NT (N).Nkind = N_Task_Body);
150 end Activation_Chain_Entity;
152 function Acts_As_Spec
153 (N : Node_Id) return Boolean is
156 or else NT (N).Nkind = N_Compilation_Unit
157 or else NT (N).Nkind = N_Subprogram_Body);
161 function Aggregate_Bounds
162 (N : Node_Id) return Node_Id is
165 or else NT (N).Nkind = N_Aggregate);
167 end Aggregate_Bounds;
169 function Aliased_Present
170 (N : Node_Id) return Boolean is
173 or else NT (N).Nkind = N_Component_Definition
174 or else NT (N).Nkind = N_Object_Declaration);
179 (N : Node_Id) return Boolean is
182 or else NT (N).Nkind = N_Others_Choice);
187 (N : Node_Id) return Boolean is
190 or else NT (N).Nkind = N_Access_To_Object_Definition);
194 function Alternatives
195 (N : Node_Id) return List_Id is
198 or else NT (N).Nkind = N_Case_Statement);
202 function Ancestor_Part
203 (N : Node_Id) return Node_Id is
206 or else NT (N).Nkind = N_Extension_Aggregate);
210 function Array_Aggregate
211 (N : Node_Id) return Node_Id is
214 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
218 function Assignment_OK
219 (N : Node_Id) return Boolean is
222 or else NT (N).Nkind = N_Object_Declaration
223 or else NT (N).Nkind in N_Subexpr);
227 function Associated_Node
228 (N : Node_Id) return Node_Id is
231 or else NT (N).Nkind in N_Has_Entity
232 or else NT (N).Nkind = N_Aggregate
233 or else NT (N).Nkind = N_Extension_Aggregate
234 or else NT (N).Nkind = N_Selected_Component);
239 (N : Node_Id) return Node_Id is
242 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
246 function Attribute_Name
247 (N : Node_Id) return Name_Id is
250 or else NT (N).Nkind = N_Attribute_Reference);
254 function Aux_Decls_Node
255 (N : Node_Id) return Node_Id is
258 or else NT (N).Nkind = N_Compilation_Unit);
262 function Backwards_OK
263 (N : Node_Id) return Boolean is
266 or else NT (N).Nkind = N_Assignment_Statement);
270 function Bad_Is_Detected
271 (N : Node_Id) return Boolean is
274 or else NT (N).Nkind = N_Subprogram_Body);
278 function Body_Required
279 (N : Node_Id) return Boolean is
282 or else NT (N).Nkind = N_Compilation_Unit);
286 function Body_To_Inline
287 (N : Node_Id) return Node_Id is
290 or else NT (N).Nkind = N_Subprogram_Declaration);
295 (N : Node_Id) return Boolean is
298 or else NT (N).Nkind = N_Component_Association
299 or else NT (N).Nkind = N_Formal_Package_Declaration
300 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
305 (N : Node_Id) return Boolean is
308 or else NT (N).Nkind = N_Return_Statement);
312 function Char_Literal_Value
313 (N : Node_Id) return Char_Code is
316 or else NT (N).Nkind = N_Character_Literal);
317 return Char_Code2 (N);
318 end Char_Literal_Value;
321 (N : Node_Id) return Name_Id is
324 or else NT (N).Nkind in N_Has_Chars);
328 function Check_Address_Alignment
329 (N : Node_Id) return Boolean is
332 or else NT (N).Nkind = N_Attribute_Definition_Clause);
334 end Check_Address_Alignment;
336 function Choice_Parameter
337 (N : Node_Id) return Node_Id is
340 or else NT (N).Nkind = N_Exception_Handler);
342 end Choice_Parameter;
345 (N : Node_Id) return List_Id is
348 or else NT (N).Nkind = N_Component_Association);
352 function Compile_Time_Known_Aggregate
353 (N : Node_Id) return Boolean is
356 or else NT (N).Nkind = N_Aggregate);
358 end Compile_Time_Known_Aggregate;
360 function Component_Associations
361 (N : Node_Id) return List_Id is
364 or else NT (N).Nkind = N_Aggregate
365 or else NT (N).Nkind = N_Extension_Aggregate);
367 end Component_Associations;
369 function Component_Clauses
370 (N : Node_Id) return List_Id is
373 or else NT (N).Nkind = N_Record_Representation_Clause);
375 end Component_Clauses;
377 function Component_Definition
378 (N : Node_Id) return Node_Id is
381 or else NT (N).Nkind = N_Component_Declaration
382 or else NT (N).Nkind = N_Constrained_Array_Definition
383 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
385 end Component_Definition;
387 function Component_Items
388 (N : Node_Id) return List_Id is
391 or else NT (N).Nkind = N_Component_List);
395 function Component_List
396 (N : Node_Id) return Node_Id is
399 or else NT (N).Nkind = N_Record_Definition
400 or else NT (N).Nkind = N_Variant);
404 function Component_Name
405 (N : Node_Id) return Node_Id is
408 or else NT (N).Nkind = N_Component_Clause);
413 (N : Node_Id) return Node_Id is
416 or else NT (N).Nkind = N_Accept_Alternative
417 or else NT (N).Nkind = N_Delay_Alternative
418 or else NT (N).Nkind = N_Elsif_Part
419 or else NT (N).Nkind = N_Entry_Body_Formal_Part
420 or else NT (N).Nkind = N_Exit_Statement
421 or else NT (N).Nkind = N_If_Statement
422 or else NT (N).Nkind = N_Iteration_Scheme
423 or else NT (N).Nkind = N_Raise_Constraint_Error
424 or else NT (N).Nkind = N_Raise_Program_Error
425 or else NT (N).Nkind = N_Raise_Storage_Error
426 or else NT (N).Nkind = N_Terminate_Alternative);
430 function Condition_Actions
431 (N : Node_Id) return List_Id is
434 or else NT (N).Nkind = N_Elsif_Part
435 or else NT (N).Nkind = N_Iteration_Scheme);
437 end Condition_Actions;
439 function Config_Pragmas
440 (N : Node_Id) return List_Id is
443 or else NT (N).Nkind = N_Compilation_Unit_Aux);
447 function Constant_Present
448 (N : Node_Id) return Boolean is
451 or else NT (N).Nkind = N_Access_To_Object_Definition
452 or else NT (N).Nkind = N_Object_Declaration);
454 end Constant_Present;
457 (N : Node_Id) return Node_Id is
460 or else NT (N).Nkind = N_Subtype_Indication);
465 (N : Node_Id) return List_Id is
468 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
472 function Context_Installed
473 (N : Node_Id) return Boolean is
476 or else NT (N).Nkind = N_With_Clause);
478 end Context_Installed;
480 function Context_Items
481 (N : Node_Id) return List_Id is
484 or else NT (N).Nkind = N_Compilation_Unit);
488 function Controlling_Argument
489 (N : Node_Id) return Node_Id is
492 or else NT (N).Nkind = N_Function_Call
493 or else NT (N).Nkind = N_Procedure_Call_Statement);
495 end Controlling_Argument;
497 function Conversion_OK
498 (N : Node_Id) return Boolean is
501 or else NT (N).Nkind = N_Type_Conversion);
505 function Corresponding_Body
506 (N : Node_Id) return Node_Id is
509 or else NT (N).Nkind = N_Entry_Declaration
510 or else NT (N).Nkind = N_Generic_Package_Declaration
511 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
512 or else NT (N).Nkind = N_Package_Body_Stub
513 or else NT (N).Nkind = N_Package_Declaration
514 or else NT (N).Nkind = N_Protected_Body_Stub
515 or else NT (N).Nkind = N_Protected_Type_Declaration
516 or else NT (N).Nkind = N_Subprogram_Body_Stub
517 or else NT (N).Nkind = N_Subprogram_Declaration
518 or else NT (N).Nkind = N_Task_Body_Stub
519 or else NT (N).Nkind = N_Task_Type_Declaration);
521 end Corresponding_Body;
523 function Corresponding_Generic_Association
524 (N : Node_Id) return Node_Id is
527 or else NT (N).Nkind = N_Object_Declaration
528 or else NT (N).Nkind = N_Object_Renaming_Declaration);
530 end Corresponding_Generic_Association;
532 function Corresponding_Integer_Value
533 (N : Node_Id) return Uint is
536 or else NT (N).Nkind = N_Real_Literal);
538 end Corresponding_Integer_Value;
540 function Corresponding_Spec
541 (N : Node_Id) return Node_Id is
544 or else NT (N).Nkind = N_Package_Body
545 or else NT (N).Nkind = N_Protected_Body
546 or else NT (N).Nkind = N_Subprogram_Body
547 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
548 or else NT (N).Nkind = N_Task_Body
549 or else NT (N).Nkind = N_With_Clause);
551 end Corresponding_Spec;
553 function Corresponding_Stub
554 (N : Node_Id) return Node_Id is
557 or else NT (N).Nkind = N_Subunit);
559 end Corresponding_Stub;
561 function Dcheck_Function
562 (N : Node_Id) return Entity_Id is
565 or else NT (N).Nkind = N_Variant);
569 function Debug_Statement
570 (N : Node_Id) return Node_Id is
573 or else NT (N).Nkind = N_Pragma);
577 function Declarations
578 (N : Node_Id) return List_Id is
581 or else NT (N).Nkind = N_Accept_Statement
582 or else NT (N).Nkind = N_Block_Statement
583 or else NT (N).Nkind = N_Compilation_Unit_Aux
584 or else NT (N).Nkind = N_Entry_Body
585 or else NT (N).Nkind = N_Package_Body
586 or else NT (N).Nkind = N_Protected_Body
587 or else NT (N).Nkind = N_Subprogram_Body
588 or else NT (N).Nkind = N_Task_Body);
592 function Default_Expression
593 (N : Node_Id) return Node_Id is
596 or else NT (N).Nkind = N_Parameter_Specification);
598 end Default_Expression;
600 function Default_Name
601 (N : Node_Id) return Node_Id is
604 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
608 function Defining_Identifier
609 (N : Node_Id) return Entity_Id is
612 or else NT (N).Nkind = N_Component_Declaration
613 or else NT (N).Nkind = N_Defining_Program_Unit_Name
614 or else NT (N).Nkind = N_Discriminant_Specification
615 or else NT (N).Nkind = N_Entry_Body
616 or else NT (N).Nkind = N_Entry_Declaration
617 or else NT (N).Nkind = N_Entry_Index_Specification
618 or else NT (N).Nkind = N_Exception_Declaration
619 or else NT (N).Nkind = N_Exception_Renaming_Declaration
620 or else NT (N).Nkind = N_Formal_Object_Declaration
621 or else NT (N).Nkind = N_Formal_Package_Declaration
622 or else NT (N).Nkind = N_Formal_Type_Declaration
623 or else NT (N).Nkind = N_Full_Type_Declaration
624 or else NT (N).Nkind = N_Implicit_Label_Declaration
625 or else NT (N).Nkind = N_Incomplete_Type_Declaration
626 or else NT (N).Nkind = N_Loop_Parameter_Specification
627 or else NT (N).Nkind = N_Number_Declaration
628 or else NT (N).Nkind = N_Object_Declaration
629 or else NT (N).Nkind = N_Object_Renaming_Declaration
630 or else NT (N).Nkind = N_Package_Body_Stub
631 or else NT (N).Nkind = N_Parameter_Specification
632 or else NT (N).Nkind = N_Private_Extension_Declaration
633 or else NT (N).Nkind = N_Private_Type_Declaration
634 or else NT (N).Nkind = N_Protected_Body
635 or else NT (N).Nkind = N_Protected_Body_Stub
636 or else NT (N).Nkind = N_Protected_Type_Declaration
637 or else NT (N).Nkind = N_Single_Protected_Declaration
638 or else NT (N).Nkind = N_Single_Task_Declaration
639 or else NT (N).Nkind = N_Subtype_Declaration
640 or else NT (N).Nkind = N_Task_Body
641 or else NT (N).Nkind = N_Task_Body_Stub
642 or else NT (N).Nkind = N_Task_Type_Declaration);
644 end Defining_Identifier;
646 function Defining_Unit_Name
647 (N : Node_Id) return Node_Id is
650 or else NT (N).Nkind = N_Function_Instantiation
651 or else NT (N).Nkind = N_Function_Specification
652 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
653 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
654 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
655 or else NT (N).Nkind = N_Package_Body
656 or else NT (N).Nkind = N_Package_Instantiation
657 or else NT (N).Nkind = N_Package_Renaming_Declaration
658 or else NT (N).Nkind = N_Package_Specification
659 or else NT (N).Nkind = N_Procedure_Instantiation
660 or else NT (N).Nkind = N_Procedure_Specification);
662 end Defining_Unit_Name;
664 function Delay_Alternative
665 (N : Node_Id) return Node_Id is
668 or else NT (N).Nkind = N_Timed_Entry_Call);
670 end Delay_Alternative;
672 function Delay_Finalize_Attach
673 (N : Node_Id) return Boolean is
676 or else NT (N).Nkind = N_Object_Declaration);
678 end Delay_Finalize_Attach;
680 function Delay_Statement
681 (N : Node_Id) return Node_Id is
684 or else NT (N).Nkind = N_Delay_Alternative);
688 function Delta_Expression
689 (N : Node_Id) return Node_Id is
692 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
693 or else NT (N).Nkind = N_Delta_Constraint
694 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
696 end Delta_Expression;
698 function Digits_Expression
699 (N : Node_Id) return Node_Id is
702 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
703 or else NT (N).Nkind = N_Digits_Constraint
704 or else NT (N).Nkind = N_Floating_Point_Definition);
706 end Digits_Expression;
708 function Discr_Check_Funcs_Built
709 (N : Node_Id) return Boolean is
712 or else NT (N).Nkind = N_Full_Type_Declaration);
714 end Discr_Check_Funcs_Built;
716 function Discrete_Choices
717 (N : Node_Id) return List_Id is
720 or else NT (N).Nkind = N_Case_Statement_Alternative
721 or else NT (N).Nkind = N_Variant);
723 end Discrete_Choices;
725 function Discrete_Range
726 (N : Node_Id) return Node_Id is
729 or else NT (N).Nkind = N_Slice);
733 function Discrete_Subtype_Definition
734 (N : Node_Id) return Node_Id is
737 or else NT (N).Nkind = N_Entry_Declaration
738 or else NT (N).Nkind = N_Entry_Index_Specification
739 or else NT (N).Nkind = N_Loop_Parameter_Specification);
741 end Discrete_Subtype_Definition;
743 function Discrete_Subtype_Definitions
744 (N : Node_Id) return List_Id is
747 or else NT (N).Nkind = N_Constrained_Array_Definition);
749 end Discrete_Subtype_Definitions;
751 function Discriminant_Specifications
752 (N : Node_Id) return List_Id is
755 or else NT (N).Nkind = N_Formal_Type_Declaration
756 or else NT (N).Nkind = N_Full_Type_Declaration
757 or else NT (N).Nkind = N_Incomplete_Type_Declaration
758 or else NT (N).Nkind = N_Private_Extension_Declaration
759 or else NT (N).Nkind = N_Private_Type_Declaration
760 or else NT (N).Nkind = N_Protected_Type_Declaration
761 or else NT (N).Nkind = N_Task_Type_Declaration);
763 end Discriminant_Specifications;
765 function Discriminant_Type
766 (N : Node_Id) return Node_Id is
769 or else NT (N).Nkind = N_Discriminant_Specification);
771 end Discriminant_Type;
773 function Do_Accessibility_Check
774 (N : Node_Id) return Boolean is
777 or else NT (N).Nkind = N_Parameter_Specification);
779 end Do_Accessibility_Check;
781 function Do_Discriminant_Check
782 (N : Node_Id) return Boolean is
785 or else NT (N).Nkind = N_Selected_Component);
787 end Do_Discriminant_Check;
789 function Do_Division_Check
790 (N : Node_Id) return Boolean is
793 or else NT (N).Nkind = N_Op_Divide
794 or else NT (N).Nkind = N_Op_Mod
795 or else NT (N).Nkind = N_Op_Rem);
797 end Do_Division_Check;
799 function Do_Length_Check
800 (N : Node_Id) return Boolean is
803 or else NT (N).Nkind = N_Assignment_Statement
804 or else NT (N).Nkind = N_Op_And
805 or else NT (N).Nkind = N_Op_Or
806 or else NT (N).Nkind = N_Op_Xor
807 or else NT (N).Nkind = N_Type_Conversion);
811 function Do_Overflow_Check
812 (N : Node_Id) return Boolean is
815 or else NT (N).Nkind in N_Op
816 or else NT (N).Nkind = N_Attribute_Reference
817 or else NT (N).Nkind = N_Type_Conversion);
819 end Do_Overflow_Check;
821 function Do_Range_Check
822 (N : Node_Id) return Boolean is
825 or else NT (N).Nkind in N_Subexpr);
829 function Do_Storage_Check
830 (N : Node_Id) return Boolean is
833 or else NT (N).Nkind = N_Allocator
834 or else NT (N).Nkind = N_Subprogram_Body);
836 end Do_Storage_Check;
838 function Do_Tag_Check
839 (N : Node_Id) return Boolean is
842 or else NT (N).Nkind = N_Assignment_Statement
843 or else NT (N).Nkind = N_Function_Call
844 or else NT (N).Nkind = N_Procedure_Call_Statement
845 or else NT (N).Nkind = N_Return_Statement
846 or else NT (N).Nkind = N_Type_Conversion);
850 function Elaborate_All_Present
851 (N : Node_Id) return Boolean is
854 or else NT (N).Nkind = N_With_Clause);
856 end Elaborate_All_Present;
858 function Elaborate_Present
859 (N : Node_Id) return Boolean is
862 or else NT (N).Nkind = N_With_Clause);
864 end Elaborate_Present;
866 function Elaboration_Boolean
867 (N : Node_Id) return Node_Id is
870 or else NT (N).Nkind = N_Function_Specification
871 or else NT (N).Nkind = N_Procedure_Specification);
873 end Elaboration_Boolean;
875 function Else_Actions
876 (N : Node_Id) return List_Id is
879 or else NT (N).Nkind = N_Conditional_Expression);
883 function Else_Statements
884 (N : Node_Id) return List_Id is
887 or else NT (N).Nkind = N_Conditional_Entry_Call
888 or else NT (N).Nkind = N_If_Statement
889 or else NT (N).Nkind = N_Selective_Accept);
894 (N : Node_Id) return List_Id is
897 or else NT (N).Nkind = N_If_Statement);
901 function Enclosing_Variant
902 (N : Node_Id) return Node_Id is
905 or else NT (N).Nkind = N_Variant);
907 end Enclosing_Variant;
910 (N : Node_Id) return Node_Id is
913 or else NT (N).Nkind = N_Enumeration_Type_Definition
914 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
915 or else NT (N).Nkind = N_Loop_Statement
916 or else NT (N).Nkind = N_Package_Specification
917 or else NT (N).Nkind = N_Protected_Body
918 or else NT (N).Nkind = N_Protected_Definition
919 or else NT (N).Nkind = N_Record_Definition
920 or else NT (N).Nkind = N_Task_Definition);
925 (N : Node_Id) return Uint is
928 or else NT (N).Nkind = N_Case_Statement
929 or else NT (N).Nkind = N_If_Statement);
934 (N : Node_Id) return Node_Id is
937 or else NT (N).Nkind in N_Has_Entity
938 or else NT (N).Nkind = N_Freeze_Entity);
942 function Entity_Or_Associated_Node
943 (N : Node_Id) return Node_Id is
946 or else NT (N).Nkind in N_Has_Entity
947 or else NT (N).Nkind = N_Freeze_Entity);
949 end Entity_Or_Associated_Node;
951 function Entry_Body_Formal_Part
952 (N : Node_Id) return Node_Id is
955 or else NT (N).Nkind = N_Entry_Body);
957 end Entry_Body_Formal_Part;
959 function Entry_Call_Alternative
960 (N : Node_Id) return Node_Id is
963 or else NT (N).Nkind = N_Conditional_Entry_Call
964 or else NT (N).Nkind = N_Timed_Entry_Call);
966 end Entry_Call_Alternative;
968 function Entry_Call_Statement
969 (N : Node_Id) return Node_Id is
972 or else NT (N).Nkind = N_Entry_Call_Alternative);
974 end Entry_Call_Statement;
976 function Entry_Direct_Name
977 (N : Node_Id) return Node_Id is
980 or else NT (N).Nkind = N_Accept_Statement);
982 end Entry_Direct_Name;
985 (N : Node_Id) return Node_Id is
988 or else NT (N).Nkind = N_Accept_Statement);
992 function Entry_Index_Specification
993 (N : Node_Id) return Node_Id is
996 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
998 end Entry_Index_Specification;
1001 (N : Node_Id) return Node_Id is
1003 pragma Assert (False
1004 or else NT (N).Nkind in N_Has_Etype);
1008 function Exception_Choices
1009 (N : Node_Id) return List_Id is
1011 pragma Assert (False
1012 or else NT (N).Nkind = N_Exception_Handler);
1014 end Exception_Choices;
1016 function Exception_Handlers
1017 (N : Node_Id) return List_Id is
1019 pragma Assert (False
1020 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1022 end Exception_Handlers;
1024 function Exception_Junk
1025 (N : Node_Id) return Boolean is
1027 pragma Assert (False
1028 or else NT (N).Nkind = N_Goto_Statement
1029 or else NT (N).Nkind = N_Label
1030 or else NT (N).Nkind = N_Object_Declaration
1031 or else NT (N).Nkind = N_Subtype_Declaration);
1035 function Expansion_Delayed
1036 (N : Node_Id) return Boolean is
1038 pragma Assert (False
1039 or else NT (N).Nkind = N_Aggregate
1040 or else NT (N).Nkind = N_Extension_Aggregate);
1042 end Expansion_Delayed;
1044 function Explicit_Actual_Parameter
1045 (N : Node_Id) return Node_Id is
1047 pragma Assert (False
1048 or else NT (N).Nkind = N_Parameter_Association);
1050 end Explicit_Actual_Parameter;
1052 function Explicit_Generic_Actual_Parameter
1053 (N : Node_Id) return Node_Id is
1055 pragma Assert (False
1056 or else NT (N).Nkind = N_Generic_Association);
1058 end Explicit_Generic_Actual_Parameter;
1061 (N : Node_Id) return Node_Id is
1063 pragma Assert (False
1064 or else NT (N).Nkind = N_Allocator
1065 or else NT (N).Nkind = N_Assignment_Statement
1066 or else NT (N).Nkind = N_At_Clause
1067 or else NT (N).Nkind = N_Attribute_Definition_Clause
1068 or else NT (N).Nkind = N_Case_Statement
1069 or else NT (N).Nkind = N_Code_Statement
1070 or else NT (N).Nkind = N_Component_Association
1071 or else NT (N).Nkind = N_Component_Declaration
1072 or else NT (N).Nkind = N_Delay_Relative_Statement
1073 or else NT (N).Nkind = N_Delay_Until_Statement
1074 or else NT (N).Nkind = N_Discriminant_Association
1075 or else NT (N).Nkind = N_Discriminant_Specification
1076 or else NT (N).Nkind = N_Exception_Declaration
1077 or else NT (N).Nkind = N_Formal_Object_Declaration
1078 or else NT (N).Nkind = N_Free_Statement
1079 or else NT (N).Nkind = N_Mod_Clause
1080 or else NT (N).Nkind = N_Modular_Type_Definition
1081 or else NT (N).Nkind = N_Number_Declaration
1082 or else NT (N).Nkind = N_Object_Declaration
1083 or else NT (N).Nkind = N_Parameter_Specification
1084 or else NT (N).Nkind = N_Pragma_Argument_Association
1085 or else NT (N).Nkind = N_Qualified_Expression
1086 or else NT (N).Nkind = N_Return_Statement
1087 or else NT (N).Nkind = N_Type_Conversion
1088 or else NT (N).Nkind = N_Unchecked_Expression
1089 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1093 function Expressions
1094 (N : Node_Id) return List_Id is
1096 pragma Assert (False
1097 or else NT (N).Nkind = N_Aggregate
1098 or else NT (N).Nkind = N_Attribute_Reference
1099 or else NT (N).Nkind = N_Conditional_Expression
1100 or else NT (N).Nkind = N_Extension_Aggregate
1101 or else NT (N).Nkind = N_Indexed_Component);
1106 (N : Node_Id) return Node_Id is
1108 pragma Assert (False
1109 or else NT (N).Nkind = N_Component_Clause);
1113 function First_Inlined_Subprogram
1114 (N : Node_Id) return Entity_Id is
1116 pragma Assert (False
1117 or else NT (N).Nkind = N_Compilation_Unit);
1119 end First_Inlined_Subprogram;
1122 (N : Node_Id) return Boolean is
1124 pragma Assert (False
1125 or else NT (N).Nkind = N_With_Clause);
1129 function First_Named_Actual
1130 (N : Node_Id) return Node_Id is
1132 pragma Assert (False
1133 or else NT (N).Nkind = N_Entry_Call_Statement
1134 or else NT (N).Nkind = N_Function_Call
1135 or else NT (N).Nkind = N_Procedure_Call_Statement);
1137 end First_Named_Actual;
1139 function First_Real_Statement
1140 (N : Node_Id) return Node_Id is
1142 pragma Assert (False
1143 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1145 end First_Real_Statement;
1147 function First_Subtype_Link
1148 (N : Node_Id) return Entity_Id is
1150 pragma Assert (False
1151 or else NT (N).Nkind = N_Freeze_Entity);
1153 end First_Subtype_Link;
1155 function Float_Truncate
1156 (N : Node_Id) return Boolean is
1158 pragma Assert (False
1159 or else NT (N).Nkind = N_Type_Conversion);
1163 function Formal_Type_Definition
1164 (N : Node_Id) return Node_Id is
1166 pragma Assert (False
1167 or else NT (N).Nkind = N_Formal_Type_Declaration);
1169 end Formal_Type_Definition;
1171 function Forwards_OK
1172 (N : Node_Id) return Boolean is
1174 pragma Assert (False
1175 or else NT (N).Nkind = N_Assignment_Statement);
1179 function From_At_Mod
1180 (N : Node_Id) return Boolean is
1182 pragma Assert (False
1183 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1187 function Generic_Associations
1188 (N : Node_Id) return List_Id is
1190 pragma Assert (False
1191 or else NT (N).Nkind = N_Formal_Package_Declaration
1192 or else NT (N).Nkind = N_Function_Instantiation
1193 or else NT (N).Nkind = N_Package_Instantiation
1194 or else NT (N).Nkind = N_Procedure_Instantiation);
1196 end Generic_Associations;
1198 function Generic_Formal_Declarations
1199 (N : Node_Id) return List_Id is
1201 pragma Assert (False
1202 or else NT (N).Nkind = N_Generic_Package_Declaration
1203 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1205 end Generic_Formal_Declarations;
1207 function Generic_Parent
1208 (N : Node_Id) return Node_Id is
1210 pragma Assert (False
1211 or else NT (N).Nkind = N_Function_Specification
1212 or else NT (N).Nkind = N_Package_Specification
1213 or else NT (N).Nkind = N_Procedure_Specification);
1217 function Generic_Parent_Type
1218 (N : Node_Id) return Node_Id is
1220 pragma Assert (False
1221 or else NT (N).Nkind = N_Subtype_Declaration);
1223 end Generic_Parent_Type;
1225 function Handled_Statement_Sequence
1226 (N : Node_Id) return Node_Id is
1228 pragma Assert (False
1229 or else NT (N).Nkind = N_Accept_Statement
1230 or else NT (N).Nkind = N_Block_Statement
1231 or else NT (N).Nkind = N_Entry_Body
1232 or else NT (N).Nkind = N_Package_Body
1233 or else NT (N).Nkind = N_Subprogram_Body
1234 or else NT (N).Nkind = N_Task_Body);
1236 end Handled_Statement_Sequence;
1238 function Handler_List_Entry
1239 (N : Node_Id) return Node_Id is
1241 pragma Assert (False
1242 or else NT (N).Nkind = N_Object_Declaration);
1244 end Handler_List_Entry;
1246 function Has_Created_Identifier
1247 (N : Node_Id) return Boolean is
1249 pragma Assert (False
1250 or else NT (N).Nkind = N_Block_Statement
1251 or else NT (N).Nkind = N_Loop_Statement);
1253 end Has_Created_Identifier;
1255 function Has_Dynamic_Length_Check
1256 (N : Node_Id) return Boolean is
1259 end Has_Dynamic_Length_Check;
1261 function Has_Dynamic_Range_Check
1262 (N : Node_Id) return Boolean is
1265 end Has_Dynamic_Range_Check;
1267 function Has_No_Elaboration_Code
1268 (N : Node_Id) return Boolean is
1270 pragma Assert (False
1271 or else NT (N).Nkind = N_Compilation_Unit);
1273 end Has_No_Elaboration_Code;
1275 function Has_Priority_Pragma
1276 (N : Node_Id) return Boolean is
1278 pragma Assert (False
1279 or else NT (N).Nkind = N_Protected_Definition
1280 or else NT (N).Nkind = N_Subprogram_Body
1281 or else NT (N).Nkind = N_Task_Definition);
1283 end Has_Priority_Pragma;
1285 function Has_Private_View
1286 (N : Node_Id) return Boolean is
1288 pragma Assert (False
1289 or else NT (N).Nkind in N_Op
1290 or else NT (N).Nkind = N_Character_Literal
1291 or else NT (N).Nkind = N_Expanded_Name
1292 or else NT (N).Nkind = N_Identifier
1293 or else NT (N).Nkind = N_Operator_Symbol);
1295 end Has_Private_View;
1297 function Has_Storage_Size_Pragma
1298 (N : Node_Id) return Boolean is
1300 pragma Assert (False
1301 or else NT (N).Nkind = N_Task_Definition);
1303 end Has_Storage_Size_Pragma;
1305 function Has_Task_Info_Pragma
1306 (N : Node_Id) return Boolean is
1308 pragma Assert (False
1309 or else NT (N).Nkind = N_Task_Definition);
1311 end Has_Task_Info_Pragma;
1313 function Has_Task_Name_Pragma
1314 (N : Node_Id) return Boolean is
1316 pragma Assert (False
1317 or else NT (N).Nkind = N_Task_Definition);
1319 end Has_Task_Name_Pragma;
1321 function Has_Wide_Character
1322 (N : Node_Id) return Boolean is
1324 pragma Assert (False
1325 or else NT (N).Nkind = N_String_Literal);
1327 end Has_Wide_Character;
1329 function Hidden_By_Use_Clause
1330 (N : Node_Id) return Elist_Id is
1332 pragma Assert (False
1333 or else NT (N).Nkind = N_Use_Package_Clause
1334 or else NT (N).Nkind = N_Use_Type_Clause);
1336 end Hidden_By_Use_Clause;
1339 (N : Node_Id) return Node_Id is
1341 pragma Assert (False
1342 or else NT (N).Nkind = N_Range
1343 or else NT (N).Nkind = N_Real_Range_Specification
1344 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1349 (N : Node_Id) return Node_Id is
1351 pragma Assert (False
1352 or else NT (N).Nkind = N_At_Clause
1353 or else NT (N).Nkind = N_Block_Statement
1354 or else NT (N).Nkind = N_Designator
1355 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1356 or else NT (N).Nkind = N_Label
1357 or else NT (N).Nkind = N_Loop_Statement
1358 or else NT (N).Nkind = N_Record_Representation_Clause
1359 or else NT (N).Nkind = N_Subprogram_Info);
1363 function Implicit_With
1364 (N : Node_Id) return Boolean is
1366 pragma Assert (False
1367 or else NT (N).Nkind = N_With_Clause);
1372 (N : Node_Id) return Boolean is
1374 pragma Assert (False
1375 or else NT (N).Nkind = N_Formal_Object_Declaration
1376 or else NT (N).Nkind = N_Parameter_Specification);
1380 function Includes_Infinities
1381 (N : Node_Id) return Boolean is
1383 pragma Assert (False
1384 or else NT (N).Nkind = N_Range);
1386 end Includes_Infinities;
1388 function Instance_Spec
1389 (N : Node_Id) return Node_Id is
1391 pragma Assert (False
1392 or else NT (N).Nkind = N_Formal_Package_Declaration
1393 or else NT (N).Nkind = N_Function_Instantiation
1394 or else NT (N).Nkind = N_Package_Instantiation
1395 or else NT (N).Nkind = N_Procedure_Instantiation);
1400 (N : Node_Id) return Uint is
1402 pragma Assert (False
1403 or else NT (N).Nkind = N_Integer_Literal);
1407 function Is_Asynchronous_Call_Block
1408 (N : Node_Id) return Boolean is
1410 pragma Assert (False
1411 or else NT (N).Nkind = N_Block_Statement);
1413 end Is_Asynchronous_Call_Block;
1415 function Is_Component_Left_Opnd
1416 (N : Node_Id) return Boolean is
1418 pragma Assert (False
1419 or else NT (N).Nkind = N_Op_Concat);
1421 end Is_Component_Left_Opnd;
1423 function Is_Component_Right_Opnd
1424 (N : Node_Id) return Boolean is
1426 pragma Assert (False
1427 or else NT (N).Nkind = N_Op_Concat);
1429 end Is_Component_Right_Opnd;
1431 function Is_Controlling_Actual
1432 (N : Node_Id) return Boolean is
1434 pragma Assert (False
1435 or else NT (N).Nkind in N_Subexpr);
1437 end Is_Controlling_Actual;
1439 function Is_In_Discriminant_Check
1440 (N : Node_Id) return Boolean is
1442 pragma Assert (False
1443 or else NT (N).Nkind = N_Selected_Component);
1445 end Is_In_Discriminant_Check;
1447 function Is_Machine_Number
1448 (N : Node_Id) return Boolean is
1450 pragma Assert (False
1451 or else NT (N).Nkind = N_Real_Literal);
1453 end Is_Machine_Number;
1455 function Is_Null_Loop
1456 (N : Node_Id) return Boolean is
1458 pragma Assert (False
1459 or else NT (N).Nkind = N_Loop_Statement);
1463 function Is_Overloaded
1464 (N : Node_Id) return Boolean is
1466 pragma Assert (False
1467 or else NT (N).Nkind in N_Subexpr);
1471 function Is_Power_Of_2_For_Shift
1472 (N : Node_Id) return Boolean is
1474 pragma Assert (False
1475 or else NT (N).Nkind = N_Op_Expon);
1477 end Is_Power_Of_2_For_Shift;
1479 function Is_Protected_Subprogram_Body
1480 (N : Node_Id) return Boolean is
1482 pragma Assert (False
1483 or else NT (N).Nkind = N_Subprogram_Body);
1485 end Is_Protected_Subprogram_Body;
1487 function Is_Static_Expression
1488 (N : Node_Id) return Boolean is
1490 pragma Assert (False
1491 or else NT (N).Nkind in N_Subexpr);
1493 end Is_Static_Expression;
1495 function Is_Subprogram_Descriptor
1496 (N : Node_Id) return Boolean is
1498 pragma Assert (False
1499 or else NT (N).Nkind = N_Object_Declaration);
1501 end Is_Subprogram_Descriptor;
1503 function Is_Task_Allocation_Block
1504 (N : Node_Id) return Boolean is
1506 pragma Assert (False
1507 or else NT (N).Nkind = N_Block_Statement);
1509 end Is_Task_Allocation_Block;
1511 function Is_Task_Master
1512 (N : Node_Id) return Boolean is
1514 pragma Assert (False
1515 or else NT (N).Nkind = N_Block_Statement
1516 or else NT (N).Nkind = N_Subprogram_Body
1517 or else NT (N).Nkind = N_Task_Body);
1521 function Iteration_Scheme
1522 (N : Node_Id) return Node_Id is
1524 pragma Assert (False
1525 or else NT (N).Nkind = N_Loop_Statement);
1527 end Iteration_Scheme;
1530 (N : Node_Id) return Node_Id is
1532 pragma Assert (False
1533 or else NT (N).Nkind = N_Itype_Reference);
1537 function Kill_Range_Check
1538 (N : Node_Id) return Boolean is
1540 pragma Assert (False
1541 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1543 end Kill_Range_Check;
1545 function Label_Construct
1546 (N : Node_Id) return Node_Id is
1548 pragma Assert (False
1549 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1551 end Label_Construct;
1554 (N : Node_Id) return Node_Id is
1556 pragma Assert (False
1557 or else NT (N).Nkind = N_Component_Clause);
1562 (N : Node_Id) return Boolean is
1564 pragma Assert (False
1565 or else NT (N).Nkind = N_With_Clause);
1570 (N : Node_Id) return Node_Id is
1572 pragma Assert (False
1573 or else NT (N).Nkind = N_And_Then
1574 or else NT (N).Nkind = N_In
1575 or else NT (N).Nkind = N_Not_In
1576 or else NT (N).Nkind = N_Or_Else
1577 or else NT (N).Nkind in N_Binary_Op);
1581 function Library_Unit
1582 (N : Node_Id) return Node_Id is
1584 pragma Assert (False
1585 or else NT (N).Nkind = N_Compilation_Unit
1586 or else NT (N).Nkind = N_Package_Body_Stub
1587 or else NT (N).Nkind = N_Protected_Body_Stub
1588 or else NT (N).Nkind = N_Subprogram_Body_Stub
1589 or else NT (N).Nkind = N_Task_Body_Stub
1590 or else NT (N).Nkind = N_With_Clause);
1594 function Limited_View_Installed
1595 (N : Node_Id) return Boolean is
1597 pragma Assert (False
1598 or else NT (N).Nkind = N_Package_Specification
1599 or else NT (N).Nkind = N_With_Clause);
1601 end Limited_View_Installed;
1603 function Limited_Present
1604 (N : Node_Id) return Boolean is
1606 pragma Assert (False
1607 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1608 or else NT (N).Nkind = N_Private_Type_Declaration
1609 or else NT (N).Nkind = N_Record_Definition
1610 or else NT (N).Nkind = N_With_Clause);
1612 end Limited_Present;
1615 (N : Node_Id) return List_Id is
1617 pragma Assert (False
1618 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1622 function Loop_Actions
1623 (N : Node_Id) return List_Id is
1625 pragma Assert (False
1626 or else NT (N).Nkind = N_Component_Association);
1630 function Loop_Parameter_Specification
1631 (N : Node_Id) return Node_Id is
1633 pragma Assert (False
1634 or else NT (N).Nkind = N_Iteration_Scheme);
1636 end Loop_Parameter_Specification;
1639 (N : Node_Id) return Node_Id is
1641 pragma Assert (False
1642 or else NT (N).Nkind = N_Range
1643 or else NT (N).Nkind = N_Real_Range_Specification
1644 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1649 (N : Node_Id) return Node_Id is
1651 pragma Assert (False
1652 or else NT (N).Nkind = N_Record_Representation_Clause);
1657 (N : Node_Id) return Boolean is
1659 pragma Assert (False
1660 or else NT (N).Nkind = N_Component_Declaration
1661 or else NT (N).Nkind = N_Discriminant_Specification
1662 or else NT (N).Nkind = N_Exception_Declaration
1663 or else NT (N).Nkind = N_Formal_Object_Declaration
1664 or else NT (N).Nkind = N_Number_Declaration
1665 or else NT (N).Nkind = N_Object_Declaration
1666 or else NT (N).Nkind = N_Parameter_Specification);
1670 function Must_Be_Byte_Aligned
1671 (N : Node_Id) return Boolean is
1673 pragma Assert (False
1674 or else NT (N).Nkind = N_Attribute_Reference);
1676 end Must_Be_Byte_Aligned;
1678 function Must_Not_Freeze
1679 (N : Node_Id) return Boolean is
1681 pragma Assert (False
1682 or else NT (N).Nkind = N_Subtype_Indication
1683 or else NT (N).Nkind in N_Subexpr);
1685 end Must_Not_Freeze;
1688 (N : Node_Id) return Node_Id is
1690 pragma Assert (False
1691 or else NT (N).Nkind = N_Assignment_Statement
1692 or else NT (N).Nkind = N_Attribute_Definition_Clause
1693 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1694 or else NT (N).Nkind = N_Designator
1695 or else NT (N).Nkind = N_Entry_Call_Statement
1696 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1697 or else NT (N).Nkind = N_Exit_Statement
1698 or else NT (N).Nkind = N_Formal_Package_Declaration
1699 or else NT (N).Nkind = N_Function_Call
1700 or else NT (N).Nkind = N_Function_Instantiation
1701 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1702 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1703 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1704 or else NT (N).Nkind = N_Goto_Statement
1705 or else NT (N).Nkind = N_Object_Renaming_Declaration
1706 or else NT (N).Nkind = N_Package_Instantiation
1707 or else NT (N).Nkind = N_Package_Renaming_Declaration
1708 or else NT (N).Nkind = N_Procedure_Call_Statement
1709 or else NT (N).Nkind = N_Procedure_Instantiation
1710 or else NT (N).Nkind = N_Raise_Statement
1711 or else NT (N).Nkind = N_Requeue_Statement
1712 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1713 or else NT (N).Nkind = N_Subunit
1714 or else NT (N).Nkind = N_Variant_Part
1715 or else NT (N).Nkind = N_With_Clause
1716 or else NT (N).Nkind = N_With_Type_Clause);
1721 (N : Node_Id) return List_Id is
1723 pragma Assert (False
1724 or else NT (N).Nkind = N_Abort_Statement
1725 or else NT (N).Nkind = N_Use_Package_Clause);
1729 function Next_Entity
1730 (N : Node_Id) return Node_Id is
1732 pragma Assert (False
1733 or else NT (N).Nkind = N_Defining_Character_Literal
1734 or else NT (N).Nkind = N_Defining_Identifier
1735 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1739 function Next_Named_Actual
1740 (N : Node_Id) return Node_Id is
1742 pragma Assert (False
1743 or else NT (N).Nkind = N_Parameter_Association);
1745 end Next_Named_Actual;
1747 function Next_Rep_Item
1748 (N : Node_Id) return Node_Id is
1750 pragma Assert (False
1751 or else NT (N).Nkind = N_Attribute_Definition_Clause
1752 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1753 or else NT (N).Nkind = N_Pragma
1754 or else NT (N).Nkind = N_Record_Representation_Clause);
1758 function Next_Use_Clause
1759 (N : Node_Id) return Node_Id is
1761 pragma Assert (False
1762 or else NT (N).Nkind = N_Use_Package_Clause
1763 or else NT (N).Nkind = N_Use_Type_Clause);
1765 end Next_Use_Clause;
1767 function No_Ctrl_Actions
1768 (N : Node_Id) return Boolean is
1770 pragma Assert (False
1771 or else NT (N).Nkind = N_Assignment_Statement);
1773 end No_Ctrl_Actions;
1775 function No_Elaboration_Check
1776 (N : Node_Id) return Boolean is
1778 pragma Assert (False
1779 or else NT (N).Nkind = N_Function_Call
1780 or else NT (N).Nkind = N_Procedure_Call_Statement);
1782 end No_Elaboration_Check;
1784 function No_Entities_Ref_In_Spec
1785 (N : Node_Id) return Boolean is
1787 pragma Assert (False
1788 or else NT (N).Nkind = N_With_Clause);
1790 end No_Entities_Ref_In_Spec;
1792 function No_Initialization
1793 (N : Node_Id) return Boolean is
1795 pragma Assert (False
1796 or else NT (N).Nkind = N_Allocator
1797 or else NT (N).Nkind = N_Object_Declaration);
1799 end No_Initialization;
1801 function No_Truncation
1802 (N : Node_Id) return Boolean is
1804 pragma Assert (False
1805 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1809 function Null_Present
1810 (N : Node_Id) return Boolean is
1812 pragma Assert (False
1813 or else NT (N).Nkind = N_Component_List
1814 or else NT (N).Nkind = N_Record_Definition);
1818 function Null_Record_Present
1819 (N : Node_Id) return Boolean is
1821 pragma Assert (False
1822 or else NT (N).Nkind = N_Aggregate
1823 or else NT (N).Nkind = N_Extension_Aggregate);
1825 end Null_Record_Present;
1827 function Object_Definition
1828 (N : Node_Id) return Node_Id is
1830 pragma Assert (False
1831 or else NT (N).Nkind = N_Object_Declaration);
1833 end Object_Definition;
1835 function OK_For_Stream
1836 (N : Node_Id) return Boolean is
1838 pragma Assert (False
1839 or else NT (N).Nkind = N_Attribute_Reference);
1843 function Original_Discriminant
1844 (N : Node_Id) return Node_Id is
1846 pragma Assert (False
1847 or else NT (N).Nkind = N_Identifier);
1849 end Original_Discriminant;
1851 function Original_Entity
1852 (N : Node_Id) return Entity_Id is
1854 pragma Assert (False
1855 or else NT (N).Nkind = N_Integer_Literal
1856 or else NT (N).Nkind = N_Real_Literal);
1858 end Original_Entity;
1860 function Others_Discrete_Choices
1861 (N : Node_Id) return List_Id is
1863 pragma Assert (False
1864 or else NT (N).Nkind = N_Others_Choice);
1866 end Others_Discrete_Choices;
1868 function Out_Present
1869 (N : Node_Id) return Boolean is
1871 pragma Assert (False
1872 or else NT (N).Nkind = N_Formal_Object_Declaration
1873 or else NT (N).Nkind = N_Parameter_Specification);
1877 function Parameter_Associations
1878 (N : Node_Id) return List_Id is
1880 pragma Assert (False
1881 or else NT (N).Nkind = N_Entry_Call_Statement
1882 or else NT (N).Nkind = N_Function_Call
1883 or else NT (N).Nkind = N_Procedure_Call_Statement);
1885 end Parameter_Associations;
1887 function Parameter_List_Truncated
1888 (N : Node_Id) return Boolean is
1890 pragma Assert (False
1891 or else NT (N).Nkind = N_Function_Call
1892 or else NT (N).Nkind = N_Procedure_Call_Statement);
1894 end Parameter_List_Truncated;
1896 function Parameter_Specifications
1897 (N : Node_Id) return List_Id is
1899 pragma Assert (False
1900 or else NT (N).Nkind = N_Accept_Statement
1901 or else NT (N).Nkind = N_Access_Function_Definition
1902 or else NT (N).Nkind = N_Access_Procedure_Definition
1903 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1904 or else NT (N).Nkind = N_Entry_Declaration
1905 or else NT (N).Nkind = N_Function_Specification
1906 or else NT (N).Nkind = N_Procedure_Specification);
1908 end Parameter_Specifications;
1910 function Parameter_Type
1911 (N : Node_Id) return Node_Id is
1913 pragma Assert (False
1914 or else NT (N).Nkind = N_Parameter_Specification);
1918 function Parent_Spec
1919 (N : Node_Id) return Node_Id is
1921 pragma Assert (False
1922 or else NT (N).Nkind = N_Function_Instantiation
1923 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1924 or else NT (N).Nkind = N_Generic_Package_Declaration
1925 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1926 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1927 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1928 or else NT (N).Nkind = N_Package_Declaration
1929 or else NT (N).Nkind = N_Package_Instantiation
1930 or else NT (N).Nkind = N_Package_Renaming_Declaration
1931 or else NT (N).Nkind = N_Procedure_Instantiation
1932 or else NT (N).Nkind = N_Subprogram_Declaration
1933 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1938 (N : Node_Id) return Node_Id is
1940 pragma Assert (False
1941 or else NT (N).Nkind = N_Component_Clause);
1945 function Pragma_Argument_Associations
1946 (N : Node_Id) return List_Id is
1948 pragma Assert (False
1949 or else NT (N).Nkind = N_Pragma);
1951 end Pragma_Argument_Associations;
1953 function Pragmas_After
1954 (N : Node_Id) return List_Id is
1956 pragma Assert (False
1957 or else NT (N).Nkind = N_Compilation_Unit_Aux
1958 or else NT (N).Nkind = N_Terminate_Alternative);
1962 function Pragmas_Before
1963 (N : Node_Id) return List_Id is
1965 pragma Assert (False
1966 or else NT (N).Nkind = N_Accept_Alternative
1967 or else NT (N).Nkind = N_Delay_Alternative
1968 or else NT (N).Nkind = N_Entry_Call_Alternative
1969 or else NT (N).Nkind = N_Mod_Clause
1970 or else NT (N).Nkind = N_Terminate_Alternative
1971 or else NT (N).Nkind = N_Triggering_Alternative);
1976 (N : Node_Id) return Node_Id is
1978 pragma Assert (False
1979 or else NT (N).Nkind = N_Attribute_Reference
1980 or else NT (N).Nkind = N_Expanded_Name
1981 or else NT (N).Nkind = N_Explicit_Dereference
1982 or else NT (N).Nkind = N_Indexed_Component
1983 or else NT (N).Nkind = N_Reference
1984 or else NT (N).Nkind = N_Selected_Component
1985 or else NT (N).Nkind = N_Slice);
1989 function Present_Expr
1990 (N : Node_Id) return Uint is
1992 pragma Assert (False
1993 or else NT (N).Nkind = N_Variant);
1998 (N : Node_Id) return Boolean is
2000 pragma Assert (False
2001 or else NT (N).Nkind = N_Component_Declaration
2002 or else NT (N).Nkind = N_Discriminant_Specification
2003 or else NT (N).Nkind = N_Exception_Declaration
2004 or else NT (N).Nkind = N_Formal_Object_Declaration
2005 or else NT (N).Nkind = N_Number_Declaration
2006 or else NT (N).Nkind = N_Object_Declaration
2007 or else NT (N).Nkind = N_Parameter_Specification);
2011 function Print_In_Hex
2012 (N : Node_Id) return Boolean is
2014 pragma Assert (False
2015 or else NT (N).Nkind = N_Integer_Literal);
2019 function Private_Declarations
2020 (N : Node_Id) return List_Id is
2022 pragma Assert (False
2023 or else NT (N).Nkind = N_Package_Specification
2024 or else NT (N).Nkind = N_Protected_Definition
2025 or else NT (N).Nkind = N_Task_Definition);
2027 end Private_Declarations;
2029 function Private_Present
2030 (N : Node_Id) return Boolean is
2032 pragma Assert (False
2033 or else NT (N).Nkind = N_Compilation_Unit
2034 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
2036 end Private_Present;
2038 function Procedure_To_Call
2039 (N : Node_Id) return Node_Id is
2041 pragma Assert (False
2042 or else NT (N).Nkind = N_Allocator
2043 or else NT (N).Nkind = N_Free_Statement
2044 or else NT (N).Nkind = N_Return_Statement);
2046 end Procedure_To_Call;
2048 function Proper_Body
2049 (N : Node_Id) return Node_Id is
2051 pragma Assert (False
2052 or else NT (N).Nkind = N_Subunit);
2056 function Protected_Definition
2057 (N : Node_Id) return Node_Id is
2059 pragma Assert (False
2060 or else NT (N).Nkind = N_Protected_Type_Declaration
2061 or else NT (N).Nkind = N_Single_Protected_Declaration);
2063 end Protected_Definition;
2065 function Protected_Present
2066 (N : Node_Id) return Boolean is
2068 pragma Assert (False
2069 or else NT (N).Nkind = N_Access_Function_Definition
2070 or else NT (N).Nkind = N_Access_Procedure_Definition);
2072 end Protected_Present;
2074 function Raises_Constraint_Error
2075 (N : Node_Id) return Boolean is
2077 pragma Assert (False
2078 or else NT (N).Nkind in N_Subexpr);
2080 end Raises_Constraint_Error;
2082 function Range_Constraint
2083 (N : Node_Id) return Node_Id is
2085 pragma Assert (False
2086 or else NT (N).Nkind = N_Delta_Constraint
2087 or else NT (N).Nkind = N_Digits_Constraint);
2089 end Range_Constraint;
2091 function Range_Expression
2092 (N : Node_Id) return Node_Id is
2094 pragma Assert (False
2095 or else NT (N).Nkind = N_Range_Constraint);
2097 end Range_Expression;
2099 function Real_Range_Specification
2100 (N : Node_Id) return Node_Id is
2102 pragma Assert (False
2103 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2104 or else NT (N).Nkind = N_Floating_Point_Definition
2105 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2107 end Real_Range_Specification;
2110 (N : Node_Id) return Ureal is
2112 pragma Assert (False
2113 or else NT (N).Nkind = N_Real_Literal);
2118 (N : Node_Id) return Uint is
2120 pragma Assert (False
2121 or else NT (N).Nkind = N_Raise_Constraint_Error
2122 or else NT (N).Nkind = N_Raise_Program_Error
2123 or else NT (N).Nkind = N_Raise_Storage_Error);
2127 function Record_Extension_Part
2128 (N : Node_Id) return Node_Id is
2130 pragma Assert (False
2131 or else NT (N).Nkind = N_Derived_Type_Definition);
2133 end Record_Extension_Part;
2135 function Redundant_Use
2136 (N : Node_Id) return Boolean is
2138 pragma Assert (False
2139 or else NT (N).Nkind = N_Attribute_Reference
2140 or else NT (N).Nkind = N_Expanded_Name
2141 or else NT (N).Nkind = N_Identifier);
2145 function Return_Type
2146 (N : Node_Id) return Node_Id is
2148 pragma Assert (False
2149 or else NT (N).Nkind = N_Return_Statement);
2153 function Reverse_Present
2154 (N : Node_Id) return Boolean is
2156 pragma Assert (False
2157 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2159 end Reverse_Present;
2162 (N : Node_Id) return Node_Id is
2164 pragma Assert (False
2165 or else NT (N).Nkind in N_Op
2166 or else NT (N).Nkind = N_And_Then
2167 or else NT (N).Nkind = N_In
2168 or else NT (N).Nkind = N_Not_In
2169 or else NT (N).Nkind = N_Or_Else);
2173 function Rounded_Result
2174 (N : Node_Id) return Boolean is
2176 pragma Assert (False
2177 or else NT (N).Nkind = N_Op_Divide
2178 or else NT (N).Nkind = N_Op_Multiply
2179 or else NT (N).Nkind = N_Type_Conversion);
2184 (N : Node_Id) return Node_Id is
2186 pragma Assert (False
2187 or else NT (N).Nkind = N_Defining_Character_Literal
2188 or else NT (N).Nkind = N_Defining_Identifier
2189 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2193 function Select_Alternatives
2194 (N : Node_Id) return List_Id is
2196 pragma Assert (False
2197 or else NT (N).Nkind = N_Selective_Accept);
2199 end Select_Alternatives;
2201 function Selector_Name
2202 (N : Node_Id) return Node_Id is
2204 pragma Assert (False
2205 or else NT (N).Nkind = N_Expanded_Name
2206 or else NT (N).Nkind = N_Generic_Association
2207 or else NT (N).Nkind = N_Parameter_Association
2208 or else NT (N).Nkind = N_Selected_Component);
2212 function Selector_Names
2213 (N : Node_Id) return List_Id is
2215 pragma Assert (False
2216 or else NT (N).Nkind = N_Discriminant_Association);
2220 function Shift_Count_OK
2221 (N : Node_Id) return Boolean is
2223 pragma Assert (False
2224 or else NT (N).Nkind = N_Op_Rotate_Left
2225 or else NT (N).Nkind = N_Op_Rotate_Right
2226 or else NT (N).Nkind = N_Op_Shift_Left
2227 or else NT (N).Nkind = N_Op_Shift_Right
2228 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2232 function Source_Type
2233 (N : Node_Id) return Entity_Id is
2235 pragma Assert (False
2236 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2240 function Specification
2241 (N : Node_Id) return Node_Id is
2243 pragma Assert (False
2244 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2245 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2246 or else NT (N).Nkind = N_Generic_Package_Declaration
2247 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2248 or else NT (N).Nkind = N_Package_Declaration
2249 or else NT (N).Nkind = N_Subprogram_Body
2250 or else NT (N).Nkind = N_Subprogram_Body_Stub
2251 or else NT (N).Nkind = N_Subprogram_Declaration
2252 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2257 (N : Node_Id) return List_Id is
2259 pragma Assert (False
2260 or else NT (N).Nkind = N_Abortable_Part
2261 or else NT (N).Nkind = N_Accept_Alternative
2262 or else NT (N).Nkind = N_Case_Statement_Alternative
2263 or else NT (N).Nkind = N_Delay_Alternative
2264 or else NT (N).Nkind = N_Entry_Call_Alternative
2265 or else NT (N).Nkind = N_Exception_Handler
2266 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2267 or else NT (N).Nkind = N_Loop_Statement
2268 or else NT (N).Nkind = N_Triggering_Alternative);
2272 function Static_Processing_OK
2273 (N : Node_Id) return Boolean is
2275 pragma Assert (False
2276 or else NT (N).Nkind = N_Aggregate);
2278 end Static_Processing_OK;
2280 function Storage_Pool
2281 (N : Node_Id) return Node_Id is
2283 pragma Assert (False
2284 or else NT (N).Nkind = N_Allocator
2285 or else NT (N).Nkind = N_Free_Statement
2286 or else NT (N).Nkind = N_Return_Statement);
2291 (N : Node_Id) return String_Id is
2293 pragma Assert (False
2294 or else NT (N).Nkind = N_Operator_Symbol
2295 or else NT (N).Nkind = N_String_Literal);
2299 function Subtype_Indication
2300 (N : Node_Id) return Node_Id is
2302 pragma Assert (False
2303 or else NT (N).Nkind = N_Access_To_Object_Definition
2304 or else NT (N).Nkind = N_Component_Definition
2305 or else NT (N).Nkind = N_Derived_Type_Definition
2306 or else NT (N).Nkind = N_Private_Extension_Declaration
2307 or else NT (N).Nkind = N_Subtype_Declaration);
2309 end Subtype_Indication;
2311 function Subtype_Mark
2312 (N : Node_Id) return Node_Id is
2314 pragma Assert (False
2315 or else NT (N).Nkind = N_Access_Definition
2316 or else NT (N).Nkind = N_Access_Function_Definition
2317 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2318 or else NT (N).Nkind = N_Formal_Object_Declaration
2319 or else NT (N).Nkind = N_Function_Specification
2320 or else NT (N).Nkind = N_Object_Renaming_Declaration
2321 or else NT (N).Nkind = N_Qualified_Expression
2322 or else NT (N).Nkind = N_Subtype_Indication
2323 or else NT (N).Nkind = N_Type_Conversion
2324 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2328 function Subtype_Marks
2329 (N : Node_Id) return List_Id is
2331 pragma Assert (False
2332 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2333 or else NT (N).Nkind = N_Use_Type_Clause);
2337 function Tagged_Present
2338 (N : Node_Id) return Boolean is
2340 pragma Assert (False
2341 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2342 or else NT (N).Nkind = N_Private_Type_Declaration
2343 or else NT (N).Nkind = N_Record_Definition
2344 or else NT (N).Nkind = N_With_Type_Clause);
2348 function Target_Type
2349 (N : Node_Id) return Entity_Id is
2351 pragma Assert (False
2352 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2356 function Task_Body_Procedure
2357 (N : Node_Id) return Entity_Id is
2359 pragma Assert (False
2360 or else NT (N).Nkind = N_Task_Type_Declaration);
2362 end Task_Body_Procedure;
2364 function Task_Definition
2365 (N : Node_Id) return Node_Id is
2367 pragma Assert (False
2368 or else NT (N).Nkind = N_Single_Task_Declaration
2369 or else NT (N).Nkind = N_Task_Type_Declaration);
2371 end Task_Definition;
2373 function Then_Actions
2374 (N : Node_Id) return List_Id is
2376 pragma Assert (False
2377 or else NT (N).Nkind = N_Conditional_Expression);
2381 function Then_Statements
2382 (N : Node_Id) return List_Id is
2384 pragma Assert (False
2385 or else NT (N).Nkind = N_Elsif_Part
2386 or else NT (N).Nkind = N_If_Statement);
2388 end Then_Statements;
2390 function Treat_Fixed_As_Integer
2391 (N : Node_Id) return Boolean is
2393 pragma Assert (False
2394 or else NT (N).Nkind = N_Op_Divide
2395 or else NT (N).Nkind = N_Op_Mod
2396 or else NT (N).Nkind = N_Op_Multiply
2397 or else NT (N).Nkind = N_Op_Rem);
2399 end Treat_Fixed_As_Integer;
2401 function Triggering_Alternative
2402 (N : Node_Id) return Node_Id is
2404 pragma Assert (False
2405 or else NT (N).Nkind = N_Asynchronous_Select);
2407 end Triggering_Alternative;
2409 function Triggering_Statement
2410 (N : Node_Id) return Node_Id is
2412 pragma Assert (False
2413 or else NT (N).Nkind = N_Triggering_Alternative);
2415 end Triggering_Statement;
2418 (N : Node_Id) return Elist_Id is
2420 pragma Assert (False
2421 or else NT (N).Nkind = N_Freeze_Entity);
2425 function Type_Definition
2426 (N : Node_Id) return Node_Id is
2428 pragma Assert (False
2429 or else NT (N).Nkind = N_Full_Type_Declaration);
2431 end Type_Definition;
2434 (N : Node_Id) return Node_Id is
2436 pragma Assert (False
2437 or else NT (N).Nkind = N_Compilation_Unit);
2441 function Unknown_Discriminants_Present
2442 (N : Node_Id) return Boolean is
2444 pragma Assert (False
2445 or else NT (N).Nkind = N_Formal_Type_Declaration
2446 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2447 or else NT (N).Nkind = N_Private_Extension_Declaration
2448 or else NT (N).Nkind = N_Private_Type_Declaration);
2450 end Unknown_Discriminants_Present;
2452 function Unreferenced_In_Spec
2453 (N : Node_Id) return Boolean is
2455 pragma Assert (False
2456 or else NT (N).Nkind = N_With_Clause);
2458 end Unreferenced_In_Spec;
2460 function Variant_Part
2461 (N : Node_Id) return Node_Id is
2463 pragma Assert (False
2464 or else NT (N).Nkind = N_Component_List);
2469 (N : Node_Id) return List_Id is
2471 pragma Assert (False
2472 or else NT (N).Nkind = N_Variant_Part);
2476 function Visible_Declarations
2477 (N : Node_Id) return List_Id is
2479 pragma Assert (False
2480 or else NT (N).Nkind = N_Package_Specification
2481 or else NT (N).Nkind = N_Protected_Definition
2482 or else NT (N).Nkind = N_Task_Definition);
2484 end Visible_Declarations;
2486 function Was_Originally_Stub
2487 (N : Node_Id) return Boolean is
2489 pragma Assert (False
2490 or else NT (N).Nkind = N_Package_Body
2491 or else NT (N).Nkind = N_Protected_Body
2492 or else NT (N).Nkind = N_Subprogram_Body
2493 or else NT (N).Nkind = N_Task_Body);
2495 end Was_Originally_Stub;
2497 function Zero_Cost_Handling
2498 (N : Node_Id) return Boolean is
2500 pragma Assert (False
2501 or else NT (N).Nkind = N_Exception_Handler
2502 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2504 end Zero_Cost_Handling;
2506 --------------------------
2507 -- Field Set Procedures --
2508 --------------------------
2510 procedure Set_ABE_Is_Certain
2511 (N : Node_Id; Val : Boolean := True) is
2513 pragma Assert (False
2514 or else NT (N).Nkind = N_Formal_Package_Declaration
2515 or else NT (N).Nkind = N_Function_Call
2516 or else NT (N).Nkind = N_Function_Instantiation
2517 or else NT (N).Nkind = N_Package_Instantiation
2518 or else NT (N).Nkind = N_Procedure_Call_Statement
2519 or else NT (N).Nkind = N_Procedure_Instantiation);
2520 Set_Flag18 (N, Val);
2521 end Set_ABE_Is_Certain;
2523 procedure Set_Abort_Present
2524 (N : Node_Id; Val : Boolean := True) is
2526 pragma Assert (False
2527 or else NT (N).Nkind = N_Requeue_Statement);
2528 Set_Flag15 (N, Val);
2529 end Set_Abort_Present;
2531 procedure Set_Abortable_Part
2532 (N : Node_Id; Val : Node_Id) is
2534 pragma Assert (False
2535 or else NT (N).Nkind = N_Asynchronous_Select);
2536 Set_Node2_With_Parent (N, Val);
2537 end Set_Abortable_Part;
2539 procedure Set_Abstract_Present
2540 (N : Node_Id; Val : Boolean := True) is
2542 pragma Assert (False
2543 or else NT (N).Nkind = N_Derived_Type_Definition
2544 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2545 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2546 or else NT (N).Nkind = N_Private_Extension_Declaration
2547 or else NT (N).Nkind = N_Private_Type_Declaration
2548 or else NT (N).Nkind = N_Record_Definition);
2550 end Set_Abstract_Present;
2552 procedure Set_Accept_Handler_Records
2553 (N : Node_Id; Val : List_Id) is
2555 pragma Assert (False
2556 or else NT (N).Nkind = N_Accept_Alternative);
2557 Set_List5 (N, Val); -- semantic field, no parent set
2558 end Set_Accept_Handler_Records;
2560 procedure Set_Accept_Statement
2561 (N : Node_Id; Val : Node_Id) is
2563 pragma Assert (False
2564 or else NT (N).Nkind = N_Accept_Alternative);
2565 Set_Node2_With_Parent (N, Val);
2566 end Set_Accept_Statement;
2568 procedure Set_Access_Types_To_Process
2569 (N : Node_Id; Val : Elist_Id) is
2571 pragma Assert (False
2572 or else NT (N).Nkind = N_Freeze_Entity);
2573 Set_Elist2 (N, Val); -- semantic field, no parent set
2574 end Set_Access_Types_To_Process;
2576 procedure Set_Actions
2577 (N : Node_Id; Val : List_Id) is
2579 pragma Assert (False
2580 or else NT (N).Nkind = N_And_Then
2581 or else NT (N).Nkind = N_Compilation_Unit_Aux
2582 or else NT (N).Nkind = N_Freeze_Entity
2583 or else NT (N).Nkind = N_Or_Else);
2584 Set_List1_With_Parent (N, Val);
2587 procedure Set_Activation_Chain_Entity
2588 (N : Node_Id; Val : Node_Id) is
2590 pragma Assert (False
2591 or else NT (N).Nkind = N_Block_Statement
2592 or else NT (N).Nkind = N_Entry_Body
2593 or else NT (N).Nkind = N_Generic_Package_Declaration
2594 or else NT (N).Nkind = N_Package_Declaration
2595 or else NT (N).Nkind = N_Subprogram_Body
2596 or else NT (N).Nkind = N_Task_Body);
2597 Set_Node3 (N, Val); -- semantic field, no parent set
2598 end Set_Activation_Chain_Entity;
2600 procedure Set_Acts_As_Spec
2601 (N : Node_Id; Val : Boolean := True) is
2603 pragma Assert (False
2604 or else NT (N).Nkind = N_Compilation_Unit
2605 or else NT (N).Nkind = N_Subprogram_Body);
2607 end Set_Acts_As_Spec;
2609 procedure Set_Aggregate_Bounds
2610 (N : Node_Id; Val : Node_Id) is
2612 pragma Assert (False
2613 or else NT (N).Nkind = N_Aggregate);
2614 Set_Node3 (N, Val); -- semantic field, no parent set
2615 end Set_Aggregate_Bounds;
2617 procedure Set_Aliased_Present
2618 (N : Node_Id; Val : Boolean := True) is
2620 pragma Assert (False
2621 or else NT (N).Nkind = N_Component_Definition
2622 or else NT (N).Nkind = N_Object_Declaration);
2624 end Set_Aliased_Present;
2626 procedure Set_All_Others
2627 (N : Node_Id; Val : Boolean := True) is
2629 pragma Assert (False
2630 or else NT (N).Nkind = N_Others_Choice);
2631 Set_Flag11 (N, Val);
2634 procedure Set_All_Present
2635 (N : Node_Id; Val : Boolean := True) is
2637 pragma Assert (False
2638 or else NT (N).Nkind = N_Access_To_Object_Definition);
2639 Set_Flag15 (N, Val);
2640 end Set_All_Present;
2642 procedure Set_Alternatives
2643 (N : Node_Id; Val : List_Id) is
2645 pragma Assert (False
2646 or else NT (N).Nkind = N_Case_Statement);
2647 Set_List4_With_Parent (N, Val);
2648 end Set_Alternatives;
2650 procedure Set_Ancestor_Part
2651 (N : Node_Id; Val : Node_Id) is
2653 pragma Assert (False
2654 or else NT (N).Nkind = N_Extension_Aggregate);
2655 Set_Node3_With_Parent (N, Val);
2656 end Set_Ancestor_Part;
2658 procedure Set_Array_Aggregate
2659 (N : Node_Id; Val : Node_Id) is
2661 pragma Assert (False
2662 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2663 Set_Node3_With_Parent (N, Val);
2664 end Set_Array_Aggregate;
2666 procedure Set_Assignment_OK
2667 (N : Node_Id; Val : Boolean := True) is
2669 pragma Assert (False
2670 or else NT (N).Nkind = N_Object_Declaration
2671 or else NT (N).Nkind in N_Subexpr);
2672 Set_Flag15 (N, Val);
2673 end Set_Assignment_OK;
2675 procedure Set_Associated_Node
2676 (N : Node_Id; Val : Node_Id) is
2678 pragma Assert (False
2679 or else NT (N).Nkind in N_Has_Entity
2680 or else NT (N).Nkind = N_Aggregate
2681 or else NT (N).Nkind = N_Extension_Aggregate
2682 or else NT (N).Nkind = N_Selected_Component);
2683 Set_Node4 (N, Val); -- semantic field, no parent set
2684 end Set_Associated_Node;
2686 procedure Set_At_End_Proc
2687 (N : Node_Id; Val : Node_Id) is
2689 pragma Assert (False
2690 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2692 end Set_At_End_Proc;
2694 procedure Set_Attribute_Name
2695 (N : Node_Id; Val : Name_Id) is
2697 pragma Assert (False
2698 or else NT (N).Nkind = N_Attribute_Reference);
2700 end Set_Attribute_Name;
2702 procedure Set_Aux_Decls_Node
2703 (N : Node_Id; Val : Node_Id) is
2705 pragma Assert (False
2706 or else NT (N).Nkind = N_Compilation_Unit);
2707 Set_Node5_With_Parent (N, Val);
2708 end Set_Aux_Decls_Node;
2710 procedure Set_Backwards_OK
2711 (N : Node_Id; Val : Boolean := True) is
2713 pragma Assert (False
2714 or else NT (N).Nkind = N_Assignment_Statement);
2716 end Set_Backwards_OK;
2718 procedure Set_Bad_Is_Detected
2719 (N : Node_Id; Val : Boolean := True) is
2721 pragma Assert (False
2722 or else NT (N).Nkind = N_Subprogram_Body);
2723 Set_Flag15 (N, Val);
2724 end Set_Bad_Is_Detected;
2726 procedure Set_Body_Required
2727 (N : Node_Id; Val : Boolean := True) is
2729 pragma Assert (False
2730 or else NT (N).Nkind = N_Compilation_Unit);
2731 Set_Flag13 (N, Val);
2732 end Set_Body_Required;
2734 procedure Set_Body_To_Inline
2735 (N : Node_Id; Val : Node_Id) is
2737 pragma Assert (False
2738 or else NT (N).Nkind = N_Subprogram_Declaration);
2740 end Set_Body_To_Inline;
2742 procedure Set_Box_Present
2743 (N : Node_Id; Val : Boolean := True) is
2745 pragma Assert (False
2746 or else NT (N).Nkind = N_Component_Association
2747 or else NT (N).Nkind = N_Formal_Package_Declaration
2748 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2749 Set_Flag15 (N, Val);
2750 end Set_Box_Present;
2752 procedure Set_By_Ref
2753 (N : Node_Id; Val : Boolean := True) is
2755 pragma Assert (False
2756 or else NT (N).Nkind = N_Return_Statement);
2760 procedure Set_Char_Literal_Value
2761 (N : Node_Id; Val : Char_Code) is
2763 pragma Assert (False
2764 or else NT (N).Nkind = N_Character_Literal);
2765 Set_Char_Code2 (N, Val);
2766 end Set_Char_Literal_Value;
2769 (N : Node_Id; Val : Name_Id) is
2771 pragma Assert (False
2772 or else NT (N).Nkind in N_Has_Chars);
2776 procedure Set_Check_Address_Alignment
2777 (N : Node_Id; Val : Boolean := True) is
2779 pragma Assert (False
2780 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2781 Set_Flag11 (N, Val);
2782 end Set_Check_Address_Alignment;
2784 procedure Set_Choice_Parameter
2785 (N : Node_Id; Val : Node_Id) is
2787 pragma Assert (False
2788 or else NT (N).Nkind = N_Exception_Handler);
2789 Set_Node2_With_Parent (N, Val);
2790 end Set_Choice_Parameter;
2792 procedure Set_Choices
2793 (N : Node_Id; Val : List_Id) is
2795 pragma Assert (False
2796 or else NT (N).Nkind = N_Component_Association);
2797 Set_List1_With_Parent (N, Val);
2800 procedure Set_Compile_Time_Known_Aggregate
2801 (N : Node_Id; Val : Boolean := True) is
2803 pragma Assert (False
2804 or else NT (N).Nkind = N_Aggregate);
2805 Set_Flag18 (N, Val);
2806 end Set_Compile_Time_Known_Aggregate;
2808 procedure Set_Component_Associations
2809 (N : Node_Id; Val : List_Id) is
2811 pragma Assert (False
2812 or else NT (N).Nkind = N_Aggregate
2813 or else NT (N).Nkind = N_Extension_Aggregate);
2814 Set_List2_With_Parent (N, Val);
2815 end Set_Component_Associations;
2817 procedure Set_Component_Clauses
2818 (N : Node_Id; Val : List_Id) is
2820 pragma Assert (False
2821 or else NT (N).Nkind = N_Record_Representation_Clause);
2822 Set_List3_With_Parent (N, Val);
2823 end Set_Component_Clauses;
2825 procedure Set_Component_Definition
2826 (N : Node_Id; Val : Node_Id) is
2828 pragma Assert (False
2829 or else NT (N).Nkind = N_Component_Declaration
2830 or else NT (N).Nkind = N_Constrained_Array_Definition
2831 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2832 Set_Node4_With_Parent (N, Val);
2833 end Set_Component_Definition;
2835 procedure Set_Component_Items
2836 (N : Node_Id; Val : List_Id) is
2838 pragma Assert (False
2839 or else NT (N).Nkind = N_Component_List);
2840 Set_List3_With_Parent (N, Val);
2841 end Set_Component_Items;
2843 procedure Set_Component_List
2844 (N : Node_Id; Val : Node_Id) is
2846 pragma Assert (False
2847 or else NT (N).Nkind = N_Record_Definition
2848 or else NT (N).Nkind = N_Variant);
2849 Set_Node1_With_Parent (N, Val);
2850 end Set_Component_List;
2852 procedure Set_Component_Name
2853 (N : Node_Id; Val : Node_Id) is
2855 pragma Assert (False
2856 or else NT (N).Nkind = N_Component_Clause);
2857 Set_Node1_With_Parent (N, Val);
2858 end Set_Component_Name;
2860 procedure Set_Condition
2861 (N : Node_Id; Val : Node_Id) is
2863 pragma Assert (False
2864 or else NT (N).Nkind = N_Accept_Alternative
2865 or else NT (N).Nkind = N_Delay_Alternative
2866 or else NT (N).Nkind = N_Elsif_Part
2867 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2868 or else NT (N).Nkind = N_Exit_Statement
2869 or else NT (N).Nkind = N_If_Statement
2870 or else NT (N).Nkind = N_Iteration_Scheme
2871 or else NT (N).Nkind = N_Raise_Constraint_Error
2872 or else NT (N).Nkind = N_Raise_Program_Error
2873 or else NT (N).Nkind = N_Raise_Storage_Error
2874 or else NT (N).Nkind = N_Terminate_Alternative);
2875 Set_Node1_With_Parent (N, Val);
2878 procedure Set_Condition_Actions
2879 (N : Node_Id; Val : List_Id) is
2881 pragma Assert (False
2882 or else NT (N).Nkind = N_Elsif_Part
2883 or else NT (N).Nkind = N_Iteration_Scheme);
2884 Set_List3 (N, Val); -- semantic field, no parent set
2885 end Set_Condition_Actions;
2887 procedure Set_Config_Pragmas
2888 (N : Node_Id; Val : List_Id) is
2890 pragma Assert (False
2891 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2892 Set_List4_With_Parent (N, Val);
2893 end Set_Config_Pragmas;
2895 procedure Set_Constant_Present
2896 (N : Node_Id; Val : Boolean := True) is
2898 pragma Assert (False
2899 or else NT (N).Nkind = N_Access_To_Object_Definition
2900 or else NT (N).Nkind = N_Object_Declaration);
2901 Set_Flag17 (N, Val);
2902 end Set_Constant_Present;
2904 procedure Set_Constraint
2905 (N : Node_Id; Val : Node_Id) is
2907 pragma Assert (False
2908 or else NT (N).Nkind = N_Subtype_Indication);
2909 Set_Node3_With_Parent (N, Val);
2912 procedure Set_Constraints
2913 (N : Node_Id; Val : List_Id) is
2915 pragma Assert (False
2916 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2917 Set_List1_With_Parent (N, Val);
2918 end Set_Constraints;
2920 procedure Set_Context_Installed
2921 (N : Node_Id; Val : Boolean := True) is
2923 pragma Assert (False
2924 or else NT (N).Nkind = N_With_Clause);
2925 Set_Flag13 (N, Val);
2926 end Set_Context_Installed;
2928 procedure Set_Context_Items
2929 (N : Node_Id; Val : List_Id) is
2931 pragma Assert (False
2932 or else NT (N).Nkind = N_Compilation_Unit);
2933 Set_List1_With_Parent (N, Val);
2934 end Set_Context_Items;
2936 procedure Set_Controlling_Argument
2937 (N : Node_Id; Val : Node_Id) is
2939 pragma Assert (False
2940 or else NT (N).Nkind = N_Function_Call
2941 or else NT (N).Nkind = N_Procedure_Call_Statement);
2942 Set_Node1 (N, Val); -- semantic field, no parent set
2943 end Set_Controlling_Argument;
2945 procedure Set_Conversion_OK
2946 (N : Node_Id; Val : Boolean := True) is
2948 pragma Assert (False
2949 or else NT (N).Nkind = N_Type_Conversion);
2950 Set_Flag14 (N, Val);
2951 end Set_Conversion_OK;
2953 procedure Set_Corresponding_Body
2954 (N : Node_Id; Val : Node_Id) is
2956 pragma Assert (False
2957 or else NT (N).Nkind = N_Entry_Declaration
2958 or else NT (N).Nkind = N_Generic_Package_Declaration
2959 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2960 or else NT (N).Nkind = N_Package_Body_Stub
2961 or else NT (N).Nkind = N_Package_Declaration
2962 or else NT (N).Nkind = N_Protected_Body_Stub
2963 or else NT (N).Nkind = N_Protected_Type_Declaration
2964 or else NT (N).Nkind = N_Subprogram_Body_Stub
2965 or else NT (N).Nkind = N_Subprogram_Declaration
2966 or else NT (N).Nkind = N_Task_Body_Stub
2967 or else NT (N).Nkind = N_Task_Type_Declaration);
2968 Set_Node5 (N, Val); -- semantic field, no parent set
2969 end Set_Corresponding_Body;
2971 procedure Set_Corresponding_Generic_Association
2972 (N : Node_Id; Val : Node_Id) is
2974 pragma Assert (False
2975 or else NT (N).Nkind = N_Object_Declaration
2976 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2977 Set_Node5 (N, Val); -- semantic field, no parent set
2978 end Set_Corresponding_Generic_Association;
2979 procedure Set_Corresponding_Integer_Value
2980 (N : Node_Id; Val : Uint) is
2982 pragma Assert (False
2983 or else NT (N).Nkind = N_Real_Literal);
2984 Set_Uint4 (N, Val); -- semantic field, no parent set
2985 end Set_Corresponding_Integer_Value;
2987 procedure Set_Corresponding_Spec
2988 (N : Node_Id; Val : Node_Id) is
2990 pragma Assert (False
2991 or else NT (N).Nkind = N_Package_Body
2992 or else NT (N).Nkind = N_Protected_Body
2993 or else NT (N).Nkind = N_Subprogram_Body
2994 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
2995 or else NT (N).Nkind = N_Task_Body
2996 or else NT (N).Nkind = N_With_Clause);
2997 Set_Node5 (N, Val); -- semantic field, no parent set
2998 end Set_Corresponding_Spec;
3000 procedure Set_Corresponding_Stub
3001 (N : Node_Id; Val : Node_Id) is
3003 pragma Assert (False
3004 or else NT (N).Nkind = N_Subunit);
3006 end Set_Corresponding_Stub;
3008 procedure Set_Dcheck_Function
3009 (N : Node_Id; Val : Entity_Id) is
3011 pragma Assert (False
3012 or else NT (N).Nkind = N_Variant);
3013 Set_Node5 (N, Val); -- semantic field, no parent set
3014 end Set_Dcheck_Function;
3016 procedure Set_Debug_Statement
3017 (N : Node_Id; Val : Node_Id) is
3019 pragma Assert (False
3020 or else NT (N).Nkind = N_Pragma);
3021 Set_Node3_With_Parent (N, Val);
3022 end Set_Debug_Statement;
3024 procedure Set_Declarations
3025 (N : Node_Id; Val : List_Id) is
3027 pragma Assert (False
3028 or else NT (N).Nkind = N_Accept_Statement
3029 or else NT (N).Nkind = N_Block_Statement
3030 or else NT (N).Nkind = N_Compilation_Unit_Aux
3031 or else NT (N).Nkind = N_Entry_Body
3032 or else NT (N).Nkind = N_Package_Body
3033 or else NT (N).Nkind = N_Protected_Body
3034 or else NT (N).Nkind = N_Subprogram_Body
3035 or else NT (N).Nkind = N_Task_Body);
3036 Set_List2_With_Parent (N, Val);
3037 end Set_Declarations;
3039 procedure Set_Default_Expression
3040 (N : Node_Id; Val : Node_Id) is
3042 pragma Assert (False
3043 or else NT (N).Nkind = N_Parameter_Specification);
3044 Set_Node5 (N, Val); -- semantic field, no parent set
3045 end Set_Default_Expression;
3047 procedure Set_Default_Name
3048 (N : Node_Id; Val : Node_Id) is
3050 pragma Assert (False
3051 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3052 Set_Node2_With_Parent (N, Val);
3053 end Set_Default_Name;
3055 procedure Set_Defining_Identifier
3056 (N : Node_Id; Val : Entity_Id) is
3058 pragma Assert (False
3059 or else NT (N).Nkind = N_Component_Declaration
3060 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3061 or else NT (N).Nkind = N_Discriminant_Specification
3062 or else NT (N).Nkind = N_Entry_Body
3063 or else NT (N).Nkind = N_Entry_Declaration
3064 or else NT (N).Nkind = N_Entry_Index_Specification
3065 or else NT (N).Nkind = N_Exception_Declaration
3066 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3067 or else NT (N).Nkind = N_Formal_Object_Declaration
3068 or else NT (N).Nkind = N_Formal_Package_Declaration
3069 or else NT (N).Nkind = N_Formal_Type_Declaration
3070 or else NT (N).Nkind = N_Full_Type_Declaration
3071 or else NT (N).Nkind = N_Implicit_Label_Declaration
3072 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3073 or else NT (N).Nkind = N_Loop_Parameter_Specification
3074 or else NT (N).Nkind = N_Number_Declaration
3075 or else NT (N).Nkind = N_Object_Declaration
3076 or else NT (N).Nkind = N_Object_Renaming_Declaration
3077 or else NT (N).Nkind = N_Package_Body_Stub
3078 or else NT (N).Nkind = N_Parameter_Specification
3079 or else NT (N).Nkind = N_Private_Extension_Declaration
3080 or else NT (N).Nkind = N_Private_Type_Declaration
3081 or else NT (N).Nkind = N_Protected_Body
3082 or else NT (N).Nkind = N_Protected_Body_Stub
3083 or else NT (N).Nkind = N_Protected_Type_Declaration
3084 or else NT (N).Nkind = N_Single_Protected_Declaration
3085 or else NT (N).Nkind = N_Single_Task_Declaration
3086 or else NT (N).Nkind = N_Subtype_Declaration
3087 or else NT (N).Nkind = N_Task_Body
3088 or else NT (N).Nkind = N_Task_Body_Stub
3089 or else NT (N).Nkind = N_Task_Type_Declaration);
3090 Set_Node1_With_Parent (N, Val);
3091 end Set_Defining_Identifier;
3093 procedure Set_Defining_Unit_Name
3094 (N : Node_Id; Val : Node_Id) is
3096 pragma Assert (False
3097 or else NT (N).Nkind = N_Function_Instantiation
3098 or else NT (N).Nkind = N_Function_Specification
3099 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3100 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3101 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3102 or else NT (N).Nkind = N_Package_Body
3103 or else NT (N).Nkind = N_Package_Instantiation
3104 or else NT (N).Nkind = N_Package_Renaming_Declaration
3105 or else NT (N).Nkind = N_Package_Specification
3106 or else NT (N).Nkind = N_Procedure_Instantiation
3107 or else NT (N).Nkind = N_Procedure_Specification);
3108 Set_Node1_With_Parent (N, Val);
3109 end Set_Defining_Unit_Name;
3111 procedure Set_Delay_Alternative
3112 (N : Node_Id; Val : Node_Id) is
3114 pragma Assert (False
3115 or else NT (N).Nkind = N_Timed_Entry_Call);
3116 Set_Node4_With_Parent (N, Val);
3117 end Set_Delay_Alternative;
3119 procedure Set_Delay_Finalize_Attach
3120 (N : Node_Id; Val : Boolean := True) is
3122 pragma Assert (False
3123 or else NT (N).Nkind = N_Object_Declaration);
3124 Set_Flag14 (N, Val);
3125 end Set_Delay_Finalize_Attach;
3127 procedure Set_Delay_Statement
3128 (N : Node_Id; Val : Node_Id) is
3130 pragma Assert (False
3131 or else NT (N).Nkind = N_Delay_Alternative);
3132 Set_Node2_With_Parent (N, Val);
3133 end Set_Delay_Statement;
3135 procedure Set_Delta_Expression
3136 (N : Node_Id; Val : Node_Id) is
3138 pragma Assert (False
3139 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3140 or else NT (N).Nkind = N_Delta_Constraint
3141 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3142 Set_Node3_With_Parent (N, Val);
3143 end Set_Delta_Expression;
3145 procedure Set_Digits_Expression
3146 (N : Node_Id; Val : Node_Id) is
3148 pragma Assert (False
3149 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3150 or else NT (N).Nkind = N_Digits_Constraint
3151 or else NT (N).Nkind = N_Floating_Point_Definition);
3152 Set_Node2_With_Parent (N, Val);
3153 end Set_Digits_Expression;
3155 procedure Set_Discr_Check_Funcs_Built
3156 (N : Node_Id; Val : Boolean := True) is
3158 pragma Assert (False
3159 or else NT (N).Nkind = N_Full_Type_Declaration);
3160 Set_Flag11 (N, Val);
3161 end Set_Discr_Check_Funcs_Built;
3163 procedure Set_Discrete_Choices
3164 (N : Node_Id; Val : List_Id) is
3166 pragma Assert (False
3167 or else NT (N).Nkind = N_Case_Statement_Alternative
3168 or else NT (N).Nkind = N_Variant);
3169 Set_List4_With_Parent (N, Val);
3170 end Set_Discrete_Choices;
3172 procedure Set_Discrete_Range
3173 (N : Node_Id; Val : Node_Id) is
3175 pragma Assert (False
3176 or else NT (N).Nkind = N_Slice);
3177 Set_Node4_With_Parent (N, Val);
3178 end Set_Discrete_Range;
3180 procedure Set_Discrete_Subtype_Definition
3181 (N : Node_Id; Val : Node_Id) is
3183 pragma Assert (False
3184 or else NT (N).Nkind = N_Entry_Declaration
3185 or else NT (N).Nkind = N_Entry_Index_Specification
3186 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3187 Set_Node4_With_Parent (N, Val);
3188 end Set_Discrete_Subtype_Definition;
3190 procedure Set_Discrete_Subtype_Definitions
3191 (N : Node_Id; Val : List_Id) is
3193 pragma Assert (False
3194 or else NT (N).Nkind = N_Constrained_Array_Definition);
3195 Set_List2_With_Parent (N, Val);
3196 end Set_Discrete_Subtype_Definitions;
3198 procedure Set_Discriminant_Specifications
3199 (N : Node_Id; Val : List_Id) is
3201 pragma Assert (False
3202 or else NT (N).Nkind = N_Formal_Type_Declaration
3203 or else NT (N).Nkind = N_Full_Type_Declaration
3204 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3205 or else NT (N).Nkind = N_Private_Extension_Declaration
3206 or else NT (N).Nkind = N_Private_Type_Declaration
3207 or else NT (N).Nkind = N_Protected_Type_Declaration
3208 or else NT (N).Nkind = N_Task_Type_Declaration);
3209 Set_List4_With_Parent (N, Val);
3210 end Set_Discriminant_Specifications;
3212 procedure Set_Discriminant_Type
3213 (N : Node_Id; Val : Node_Id) is
3215 pragma Assert (False
3216 or else NT (N).Nkind = N_Discriminant_Specification);
3217 Set_Node5_With_Parent (N, Val);
3218 end Set_Discriminant_Type;
3220 procedure Set_Do_Accessibility_Check
3221 (N : Node_Id; Val : Boolean := True) is
3223 pragma Assert (False
3224 or else NT (N).Nkind = N_Parameter_Specification);
3225 Set_Flag13 (N, Val);
3226 end Set_Do_Accessibility_Check;
3228 procedure Set_Do_Discriminant_Check
3229 (N : Node_Id; Val : Boolean := True) is
3231 pragma Assert (False
3232 or else NT (N).Nkind = N_Selected_Component);
3233 Set_Flag13 (N, Val);
3234 end Set_Do_Discriminant_Check;
3236 procedure Set_Do_Division_Check
3237 (N : Node_Id; Val : Boolean := True) is
3239 pragma Assert (False
3240 or else NT (N).Nkind = N_Op_Divide
3241 or else NT (N).Nkind = N_Op_Mod
3242 or else NT (N).Nkind = N_Op_Rem);
3243 Set_Flag13 (N, Val);
3244 end Set_Do_Division_Check;
3246 procedure Set_Do_Length_Check
3247 (N : Node_Id; Val : Boolean := True) is
3249 pragma Assert (False
3250 or else NT (N).Nkind = N_Assignment_Statement
3251 or else NT (N).Nkind = N_Op_And
3252 or else NT (N).Nkind = N_Op_Or
3253 or else NT (N).Nkind = N_Op_Xor
3254 or else NT (N).Nkind = N_Type_Conversion);
3256 end Set_Do_Length_Check;
3258 procedure Set_Do_Overflow_Check
3259 (N : Node_Id; Val : Boolean := True) is
3261 pragma Assert (False
3262 or else NT (N).Nkind in N_Op
3263 or else NT (N).Nkind = N_Attribute_Reference
3264 or else NT (N).Nkind = N_Type_Conversion);
3265 Set_Flag17 (N, Val);
3266 end Set_Do_Overflow_Check;
3268 procedure Set_Do_Range_Check
3269 (N : Node_Id; Val : Boolean := True) is
3271 pragma Assert (False
3272 or else NT (N).Nkind in N_Subexpr);
3274 end Set_Do_Range_Check;
3276 procedure Set_Do_Storage_Check
3277 (N : Node_Id; Val : Boolean := True) is
3279 pragma Assert (False
3280 or else NT (N).Nkind = N_Allocator
3281 or else NT (N).Nkind = N_Subprogram_Body);
3282 Set_Flag17 (N, Val);
3283 end Set_Do_Storage_Check;
3285 procedure Set_Do_Tag_Check
3286 (N : Node_Id; Val : Boolean := True) is
3288 pragma Assert (False
3289 or else NT (N).Nkind = N_Assignment_Statement
3290 or else NT (N).Nkind = N_Function_Call
3291 or else NT (N).Nkind = N_Procedure_Call_Statement
3292 or else NT (N).Nkind = N_Return_Statement
3293 or else NT (N).Nkind = N_Type_Conversion);
3294 Set_Flag13 (N, Val);
3295 end Set_Do_Tag_Check;
3297 procedure Set_Elaborate_All_Present
3298 (N : Node_Id; Val : Boolean := True) is
3300 pragma Assert (False
3301 or else NT (N).Nkind = N_With_Clause);
3302 Set_Flag15 (N, Val);
3303 end Set_Elaborate_All_Present;
3305 procedure Set_Elaborate_Present
3306 (N : Node_Id; Val : Boolean := True) is
3308 pragma Assert (False
3309 or else NT (N).Nkind = N_With_Clause);
3311 end Set_Elaborate_Present;
3313 procedure Set_Elaboration_Boolean
3314 (N : Node_Id; Val : Node_Id) is
3316 pragma Assert (False
3317 or else NT (N).Nkind = N_Function_Specification
3318 or else NT (N).Nkind = N_Procedure_Specification);
3320 end Set_Elaboration_Boolean;
3322 procedure Set_Else_Actions
3323 (N : Node_Id; Val : List_Id) is
3325 pragma Assert (False
3326 or else NT (N).Nkind = N_Conditional_Expression);
3327 Set_List3 (N, Val); -- semantic field, no parent set
3328 end Set_Else_Actions;
3330 procedure Set_Else_Statements
3331 (N : Node_Id; Val : List_Id) is
3333 pragma Assert (False
3334 or else NT (N).Nkind = N_Conditional_Entry_Call
3335 or else NT (N).Nkind = N_If_Statement
3336 or else NT (N).Nkind = N_Selective_Accept);
3337 Set_List4_With_Parent (N, Val);
3338 end Set_Else_Statements;
3340 procedure Set_Elsif_Parts
3341 (N : Node_Id; Val : List_Id) is
3343 pragma Assert (False
3344 or else NT (N).Nkind = N_If_Statement);
3345 Set_List3_With_Parent (N, Val);
3346 end Set_Elsif_Parts;
3348 procedure Set_Enclosing_Variant
3349 (N : Node_Id; Val : Node_Id) is
3351 pragma Assert (False
3352 or else NT (N).Nkind = N_Variant);
3353 Set_Node2 (N, Val); -- semantic field, no parent set
3354 end Set_Enclosing_Variant;
3356 procedure Set_End_Label
3357 (N : Node_Id; Val : Node_Id) is
3359 pragma Assert (False
3360 or else NT (N).Nkind = N_Enumeration_Type_Definition
3361 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3362 or else NT (N).Nkind = N_Loop_Statement
3363 or else NT (N).Nkind = N_Package_Specification
3364 or else NT (N).Nkind = N_Protected_Body
3365 or else NT (N).Nkind = N_Protected_Definition
3366 or else NT (N).Nkind = N_Record_Definition
3367 or else NT (N).Nkind = N_Task_Definition);
3368 Set_Node4_With_Parent (N, Val);
3371 procedure Set_End_Span
3372 (N : Node_Id; Val : Uint) is
3374 pragma Assert (False
3375 or else NT (N).Nkind = N_Case_Statement
3376 or else NT (N).Nkind = N_If_Statement);
3380 procedure Set_Entity
3381 (N : Node_Id; Val : Node_Id) is
3383 pragma Assert (False
3384 or else NT (N).Nkind in N_Has_Entity
3385 or else NT (N).Nkind = N_Freeze_Entity);
3386 Set_Node4 (N, Val); -- semantic field, no parent set
3389 procedure Set_Entry_Body_Formal_Part
3390 (N : Node_Id; Val : Node_Id) is
3392 pragma Assert (False
3393 or else NT (N).Nkind = N_Entry_Body);
3394 Set_Node5_With_Parent (N, Val);
3395 end Set_Entry_Body_Formal_Part;
3397 procedure Set_Entry_Call_Alternative
3398 (N : Node_Id; Val : Node_Id) is
3400 pragma Assert (False
3401 or else NT (N).Nkind = N_Conditional_Entry_Call
3402 or else NT (N).Nkind = N_Timed_Entry_Call);
3403 Set_Node1_With_Parent (N, Val);
3404 end Set_Entry_Call_Alternative;
3406 procedure Set_Entry_Call_Statement
3407 (N : Node_Id; Val : Node_Id) is
3409 pragma Assert (False
3410 or else NT (N).Nkind = N_Entry_Call_Alternative);
3411 Set_Node1_With_Parent (N, Val);
3412 end Set_Entry_Call_Statement;
3414 procedure Set_Entry_Direct_Name
3415 (N : Node_Id; Val : Node_Id) is
3417 pragma Assert (False
3418 or else NT (N).Nkind = N_Accept_Statement);
3419 Set_Node1_With_Parent (N, Val);
3420 end Set_Entry_Direct_Name;
3422 procedure Set_Entry_Index
3423 (N : Node_Id; Val : Node_Id) is
3425 pragma Assert (False
3426 or else NT (N).Nkind = N_Accept_Statement);
3427 Set_Node5_With_Parent (N, Val);
3428 end Set_Entry_Index;
3430 procedure Set_Entry_Index_Specification
3431 (N : Node_Id; Val : Node_Id) is
3433 pragma Assert (False
3434 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3435 Set_Node4_With_Parent (N, Val);
3436 end Set_Entry_Index_Specification;
3439 (N : Node_Id; Val : Node_Id) is
3441 pragma Assert (False
3442 or else NT (N).Nkind in N_Has_Etype);
3443 Set_Node5 (N, Val); -- semantic field, no parent set
3446 procedure Set_Exception_Choices
3447 (N : Node_Id; Val : List_Id) is
3449 pragma Assert (False
3450 or else NT (N).Nkind = N_Exception_Handler);
3451 Set_List4_With_Parent (N, Val);
3452 end Set_Exception_Choices;
3454 procedure Set_Exception_Handlers
3455 (N : Node_Id; Val : List_Id) is
3457 pragma Assert (False
3458 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3459 Set_List5_With_Parent (N, Val);
3460 end Set_Exception_Handlers;
3462 procedure Set_Exception_Junk
3463 (N : Node_Id; Val : Boolean := True) is
3465 pragma Assert (False
3466 or else NT (N).Nkind = N_Goto_Statement
3467 or else NT (N).Nkind = N_Label
3468 or else NT (N).Nkind = N_Object_Declaration
3469 or else NT (N).Nkind = N_Subtype_Declaration);
3470 Set_Flag11 (N, Val);
3471 end Set_Exception_Junk;
3473 procedure Set_Expansion_Delayed
3474 (N : Node_Id; Val : Boolean := True) is
3476 pragma Assert (False
3477 or else NT (N).Nkind = N_Aggregate
3478 or else NT (N).Nkind = N_Extension_Aggregate);
3479 Set_Flag11 (N, Val);
3480 end Set_Expansion_Delayed;
3482 procedure Set_Explicit_Actual_Parameter
3483 (N : Node_Id; Val : Node_Id) is
3485 pragma Assert (False
3486 or else NT (N).Nkind = N_Parameter_Association);
3487 Set_Node3_With_Parent (N, Val);
3488 end Set_Explicit_Actual_Parameter;
3490 procedure Set_Explicit_Generic_Actual_Parameter
3491 (N : Node_Id; Val : Node_Id) is
3493 pragma Assert (False
3494 or else NT (N).Nkind = N_Generic_Association);
3495 Set_Node1_With_Parent (N, Val);
3496 end Set_Explicit_Generic_Actual_Parameter;
3498 procedure Set_Expression
3499 (N : Node_Id; Val : Node_Id) is
3501 pragma Assert (False
3502 or else NT (N).Nkind = N_Allocator
3503 or else NT (N).Nkind = N_Assignment_Statement
3504 or else NT (N).Nkind = N_At_Clause
3505 or else NT (N).Nkind = N_Attribute_Definition_Clause
3506 or else NT (N).Nkind = N_Case_Statement
3507 or else NT (N).Nkind = N_Code_Statement
3508 or else NT (N).Nkind = N_Component_Association
3509 or else NT (N).Nkind = N_Component_Declaration
3510 or else NT (N).Nkind = N_Delay_Relative_Statement
3511 or else NT (N).Nkind = N_Delay_Until_Statement
3512 or else NT (N).Nkind = N_Discriminant_Association
3513 or else NT (N).Nkind = N_Discriminant_Specification
3514 or else NT (N).Nkind = N_Exception_Declaration
3515 or else NT (N).Nkind = N_Formal_Object_Declaration
3516 or else NT (N).Nkind = N_Free_Statement
3517 or else NT (N).Nkind = N_Mod_Clause
3518 or else NT (N).Nkind = N_Modular_Type_Definition
3519 or else NT (N).Nkind = N_Number_Declaration
3520 or else NT (N).Nkind = N_Object_Declaration
3521 or else NT (N).Nkind = N_Parameter_Specification
3522 or else NT (N).Nkind = N_Pragma_Argument_Association
3523 or else NT (N).Nkind = N_Qualified_Expression
3524 or else NT (N).Nkind = N_Return_Statement
3525 or else NT (N).Nkind = N_Type_Conversion
3526 or else NT (N).Nkind = N_Unchecked_Expression
3527 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3528 Set_Node3_With_Parent (N, Val);
3531 procedure Set_Expressions
3532 (N : Node_Id; Val : List_Id) is
3534 pragma Assert (False
3535 or else NT (N).Nkind = N_Aggregate
3536 or else NT (N).Nkind = N_Attribute_Reference
3537 or else NT (N).Nkind = N_Conditional_Expression
3538 or else NT (N).Nkind = N_Extension_Aggregate
3539 or else NT (N).Nkind = N_Indexed_Component);
3540 Set_List1_With_Parent (N, Val);
3541 end Set_Expressions;
3543 procedure Set_First_Bit
3544 (N : Node_Id; Val : Node_Id) is
3546 pragma Assert (False
3547 or else NT (N).Nkind = N_Component_Clause);
3548 Set_Node3_With_Parent (N, Val);
3551 procedure Set_First_Inlined_Subprogram
3552 (N : Node_Id; Val : Entity_Id) is
3554 pragma Assert (False
3555 or else NT (N).Nkind = N_Compilation_Unit);
3556 Set_Node3 (N, Val); -- semantic field, no parent set
3557 end Set_First_Inlined_Subprogram;
3559 procedure Set_First_Name
3560 (N : Node_Id; Val : Boolean := True) is
3562 pragma Assert (False
3563 or else NT (N).Nkind = N_With_Clause);
3567 procedure Set_First_Named_Actual
3568 (N : Node_Id; Val : Node_Id) is
3570 pragma Assert (False
3571 or else NT (N).Nkind = N_Entry_Call_Statement
3572 or else NT (N).Nkind = N_Function_Call
3573 or else NT (N).Nkind = N_Procedure_Call_Statement);
3574 Set_Node4 (N, Val); -- semantic field, no parent set
3575 end Set_First_Named_Actual;
3577 procedure Set_First_Real_Statement
3578 (N : Node_Id; Val : Node_Id) is
3580 pragma Assert (False
3581 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3582 Set_Node2 (N, Val); -- semantic field, no parent set
3583 end Set_First_Real_Statement;
3585 procedure Set_First_Subtype_Link
3586 (N : Node_Id; Val : Entity_Id) is
3588 pragma Assert (False
3589 or else NT (N).Nkind = N_Freeze_Entity);
3590 Set_Node5 (N, Val); -- semantic field, no parent set
3591 end Set_First_Subtype_Link;
3593 procedure Set_Float_Truncate
3594 (N : Node_Id; Val : Boolean := True) is
3596 pragma Assert (False
3597 or else NT (N).Nkind = N_Type_Conversion);
3598 Set_Flag11 (N, Val);
3599 end Set_Float_Truncate;
3601 procedure Set_Formal_Type_Definition
3602 (N : Node_Id; Val : Node_Id) is
3604 pragma Assert (False
3605 or else NT (N).Nkind = N_Formal_Type_Declaration);
3606 Set_Node3_With_Parent (N, Val);
3607 end Set_Formal_Type_Definition;
3609 procedure Set_Forwards_OK
3610 (N : Node_Id; Val : Boolean := True) is
3612 pragma Assert (False
3613 or else NT (N).Nkind = N_Assignment_Statement);
3615 end Set_Forwards_OK;
3617 procedure Set_From_At_Mod
3618 (N : Node_Id; Val : Boolean := True) is
3620 pragma Assert (False
3621 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3623 end Set_From_At_Mod;
3625 procedure Set_Generic_Associations
3626 (N : Node_Id; Val : List_Id) is
3628 pragma Assert (False
3629 or else NT (N).Nkind = N_Formal_Package_Declaration
3630 or else NT (N).Nkind = N_Function_Instantiation
3631 or else NT (N).Nkind = N_Package_Instantiation
3632 or else NT (N).Nkind = N_Procedure_Instantiation);
3633 Set_List3_With_Parent (N, Val);
3634 end Set_Generic_Associations;
3636 procedure Set_Generic_Formal_Declarations
3637 (N : Node_Id; Val : List_Id) is
3639 pragma Assert (False
3640 or else NT (N).Nkind = N_Generic_Package_Declaration
3641 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3642 Set_List2_With_Parent (N, Val);
3643 end Set_Generic_Formal_Declarations;
3645 procedure Set_Generic_Parent
3646 (N : Node_Id; Val : Node_Id) is
3648 pragma Assert (False
3649 or else NT (N).Nkind = N_Function_Specification
3650 or else NT (N).Nkind = N_Package_Specification
3651 or else NT (N).Nkind = N_Procedure_Specification);
3653 end Set_Generic_Parent;
3655 procedure Set_Generic_Parent_Type
3656 (N : Node_Id; Val : Node_Id) is
3658 pragma Assert (False
3659 or else NT (N).Nkind = N_Subtype_Declaration);
3661 end Set_Generic_Parent_Type;
3663 procedure Set_Handled_Statement_Sequence
3664 (N : Node_Id; Val : Node_Id) is
3666 pragma Assert (False
3667 or else NT (N).Nkind = N_Accept_Statement
3668 or else NT (N).Nkind = N_Block_Statement
3669 or else NT (N).Nkind = N_Entry_Body
3670 or else NT (N).Nkind = N_Package_Body
3671 or else NT (N).Nkind = N_Subprogram_Body
3672 or else NT (N).Nkind = N_Task_Body);
3673 Set_Node4_With_Parent (N, Val);
3674 end Set_Handled_Statement_Sequence;
3676 procedure Set_Handler_List_Entry
3677 (N : Node_Id; Val : Node_Id) is
3679 pragma Assert (False
3680 or else NT (N).Nkind = N_Object_Declaration);
3682 end Set_Handler_List_Entry;
3684 procedure Set_Has_Created_Identifier
3685 (N : Node_Id; Val : Boolean := True) is
3687 pragma Assert (False
3688 or else NT (N).Nkind = N_Block_Statement
3689 or else NT (N).Nkind = N_Loop_Statement);
3690 Set_Flag15 (N, Val);
3691 end Set_Has_Created_Identifier;
3693 procedure Set_Has_Dynamic_Length_Check
3694 (N : Node_Id; Val : Boolean := True) is
3696 Set_Flag10 (N, Val);
3697 end Set_Has_Dynamic_Length_Check;
3699 procedure Set_Has_Dynamic_Range_Check
3700 (N : Node_Id; Val : Boolean := True) is
3702 Set_Flag12 (N, Val);
3703 end Set_Has_Dynamic_Range_Check;
3705 procedure Set_Has_No_Elaboration_Code
3706 (N : Node_Id; Val : Boolean := True) is
3708 pragma Assert (False
3709 or else NT (N).Nkind = N_Compilation_Unit);
3710 Set_Flag17 (N, Val);
3711 end Set_Has_No_Elaboration_Code;
3713 procedure Set_Has_Priority_Pragma
3714 (N : Node_Id; Val : Boolean := True) is
3716 pragma Assert (False
3717 or else NT (N).Nkind = N_Protected_Definition
3718 or else NT (N).Nkind = N_Subprogram_Body
3719 or else NT (N).Nkind = N_Task_Definition);
3721 end Set_Has_Priority_Pragma;
3723 procedure Set_Has_Private_View
3724 (N : Node_Id; Val : Boolean := True) is
3726 pragma Assert (False
3727 or else NT (N).Nkind in N_Op
3728 or else NT (N).Nkind = N_Character_Literal
3729 or else NT (N).Nkind = N_Expanded_Name
3730 or else NT (N).Nkind = N_Identifier
3731 or else NT (N).Nkind = N_Operator_Symbol);
3732 Set_Flag11 (N, Val);
3733 end Set_Has_Private_View;
3735 procedure Set_Has_Storage_Size_Pragma
3736 (N : Node_Id; Val : Boolean := True) is
3738 pragma Assert (False
3739 or else NT (N).Nkind = N_Task_Definition);
3741 end Set_Has_Storage_Size_Pragma;
3743 procedure Set_Has_Task_Info_Pragma
3744 (N : Node_Id; Val : Boolean := True) is
3746 pragma Assert (False
3747 or else NT (N).Nkind = N_Task_Definition);
3749 end Set_Has_Task_Info_Pragma;
3751 procedure Set_Has_Task_Name_Pragma
3752 (N : Node_Id; Val : Boolean := True) is
3754 pragma Assert (False
3755 or else NT (N).Nkind = N_Task_Definition);
3757 end Set_Has_Task_Name_Pragma;
3759 procedure Set_Has_Wide_Character
3760 (N : Node_Id; Val : Boolean := True) is
3762 pragma Assert (False
3763 or else NT (N).Nkind = N_String_Literal);
3764 Set_Flag11 (N, Val);
3765 end Set_Has_Wide_Character;
3767 procedure Set_Hidden_By_Use_Clause
3768 (N : Node_Id; Val : Elist_Id) is
3770 pragma Assert (False
3771 or else NT (N).Nkind = N_Use_Package_Clause
3772 or else NT (N).Nkind = N_Use_Type_Clause);
3773 Set_Elist4 (N, Val);
3774 end Set_Hidden_By_Use_Clause;
3776 procedure Set_High_Bound
3777 (N : Node_Id; Val : Node_Id) is
3779 pragma Assert (False
3780 or else NT (N).Nkind = N_Range
3781 or else NT (N).Nkind = N_Real_Range_Specification
3782 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3783 Set_Node2_With_Parent (N, Val);
3786 procedure Set_Identifier
3787 (N : Node_Id; Val : Node_Id) is
3789 pragma Assert (False
3790 or else NT (N).Nkind = N_At_Clause
3791 or else NT (N).Nkind = N_Block_Statement
3792 or else NT (N).Nkind = N_Designator
3793 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3794 or else NT (N).Nkind = N_Label
3795 or else NT (N).Nkind = N_Loop_Statement
3796 or else NT (N).Nkind = N_Record_Representation_Clause
3797 or else NT (N).Nkind = N_Subprogram_Info);
3798 Set_Node1_With_Parent (N, Val);
3801 procedure Set_Implicit_With
3802 (N : Node_Id; Val : Boolean := True) is
3804 pragma Assert (False
3805 or else NT (N).Nkind = N_With_Clause);
3806 Set_Flag16 (N, Val);
3807 end Set_Implicit_With;
3809 procedure Set_In_Present
3810 (N : Node_Id; Val : Boolean := True) is
3812 pragma Assert (False
3813 or else NT (N).Nkind = N_Formal_Object_Declaration
3814 or else NT (N).Nkind = N_Parameter_Specification);
3815 Set_Flag15 (N, Val);
3818 procedure Set_Includes_Infinities
3819 (N : Node_Id; Val : Boolean := True) is
3821 pragma Assert (False
3822 or else NT (N).Nkind = N_Range);
3823 Set_Flag11 (N, Val);
3824 end Set_Includes_Infinities;
3826 procedure Set_Instance_Spec
3827 (N : Node_Id; Val : Node_Id) is
3829 pragma Assert (False
3830 or else NT (N).Nkind = N_Formal_Package_Declaration
3831 or else NT (N).Nkind = N_Function_Instantiation
3832 or else NT (N).Nkind = N_Package_Instantiation
3833 or else NT (N).Nkind = N_Procedure_Instantiation);
3834 Set_Node5 (N, Val); -- semantic field, no Parent set
3835 end Set_Instance_Spec;
3837 procedure Set_Intval
3838 (N : Node_Id; Val : Uint) is
3840 pragma Assert (False
3841 or else NT (N).Nkind = N_Integer_Literal);
3845 procedure Set_Is_Asynchronous_Call_Block
3846 (N : Node_Id; Val : Boolean := True) is
3848 pragma Assert (False
3849 or else NT (N).Nkind = N_Block_Statement);
3851 end Set_Is_Asynchronous_Call_Block;
3853 procedure Set_Is_Component_Left_Opnd
3854 (N : Node_Id; Val : Boolean := True) is
3856 pragma Assert (False
3857 or else NT (N).Nkind = N_Op_Concat);
3858 Set_Flag13 (N, Val);
3859 end Set_Is_Component_Left_Opnd;
3861 procedure Set_Is_Component_Right_Opnd
3862 (N : Node_Id; Val : Boolean := True) is
3864 pragma Assert (False
3865 or else NT (N).Nkind = N_Op_Concat);
3866 Set_Flag14 (N, Val);
3867 end Set_Is_Component_Right_Opnd;
3869 procedure Set_Is_Controlling_Actual
3870 (N : Node_Id; Val : Boolean := True) is
3872 pragma Assert (False
3873 or else NT (N).Nkind in N_Subexpr);
3874 Set_Flag16 (N, Val);
3875 end Set_Is_Controlling_Actual;
3877 procedure Set_Is_In_Discriminant_Check
3878 (N : Node_Id; Val : Boolean := True) is
3880 pragma Assert (False
3881 or else NT (N).Nkind = N_Selected_Component);
3882 Set_Flag11 (N, Val);
3883 end Set_Is_In_Discriminant_Check;
3885 procedure Set_Is_Machine_Number
3886 (N : Node_Id; Val : Boolean := True) is
3888 pragma Assert (False
3889 or else NT (N).Nkind = N_Real_Literal);
3890 Set_Flag11 (N, Val);
3891 end Set_Is_Machine_Number;
3893 procedure Set_Is_Null_Loop
3894 (N : Node_Id; Val : Boolean := True) is
3896 pragma Assert (False
3897 or else NT (N).Nkind = N_Loop_Statement);
3898 Set_Flag16 (N, Val);
3899 end Set_Is_Null_Loop;
3901 procedure Set_Is_Overloaded
3902 (N : Node_Id; Val : Boolean := True) is
3904 pragma Assert (False
3905 or else NT (N).Nkind in N_Subexpr);
3907 end Set_Is_Overloaded;
3909 procedure Set_Is_Power_Of_2_For_Shift
3910 (N : Node_Id; Val : Boolean := True) is
3912 pragma Assert (False
3913 or else NT (N).Nkind = N_Op_Expon);
3914 Set_Flag13 (N, Val);
3915 end Set_Is_Power_Of_2_For_Shift;
3917 procedure Set_Is_Protected_Subprogram_Body
3918 (N : Node_Id; Val : Boolean := True) is
3920 pragma Assert (False
3921 or else NT (N).Nkind = N_Subprogram_Body);
3923 end Set_Is_Protected_Subprogram_Body;
3925 procedure Set_Is_Static_Expression
3926 (N : Node_Id; Val : Boolean := True) is
3928 pragma Assert (False
3929 or else NT (N).Nkind in N_Subexpr);
3931 end Set_Is_Static_Expression;
3933 procedure Set_Is_Subprogram_Descriptor
3934 (N : Node_Id; Val : Boolean := True) is
3936 pragma Assert (False
3937 or else NT (N).Nkind = N_Object_Declaration);
3938 Set_Flag16 (N, Val);
3939 end Set_Is_Subprogram_Descriptor;
3941 procedure Set_Is_Task_Allocation_Block
3942 (N : Node_Id; Val : Boolean := True) is
3944 pragma Assert (False
3945 or else NT (N).Nkind = N_Block_Statement);
3947 end Set_Is_Task_Allocation_Block;
3949 procedure Set_Is_Task_Master
3950 (N : Node_Id; Val : Boolean := True) is
3952 pragma Assert (False
3953 or else NT (N).Nkind = N_Block_Statement
3954 or else NT (N).Nkind = N_Subprogram_Body
3955 or else NT (N).Nkind = N_Task_Body);
3957 end Set_Is_Task_Master;
3959 procedure Set_Iteration_Scheme
3960 (N : Node_Id; Val : Node_Id) is
3962 pragma Assert (False
3963 or else NT (N).Nkind = N_Loop_Statement);
3964 Set_Node2_With_Parent (N, Val);
3965 end Set_Iteration_Scheme;
3968 (N : Node_Id; Val : Entity_Id) is
3970 pragma Assert (False
3971 or else NT (N).Nkind = N_Itype_Reference);
3972 Set_Node1 (N, Val); -- no parent, semantic field
3975 procedure Set_Kill_Range_Check
3976 (N : Node_Id; Val : Boolean := True) is
3978 pragma Assert (False
3979 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3980 Set_Flag11 (N, Val);
3981 end Set_Kill_Range_Check;
3983 procedure Set_Label_Construct
3984 (N : Node_Id; Val : Node_Id) is
3986 pragma Assert (False
3987 or else NT (N).Nkind = N_Implicit_Label_Declaration);
3988 Set_Node2 (N, Val); -- semantic field, no parent set
3989 end Set_Label_Construct;
3991 procedure Set_Last_Bit
3992 (N : Node_Id; Val : Node_Id) is
3994 pragma Assert (False
3995 or else NT (N).Nkind = N_Component_Clause);
3996 Set_Node4_With_Parent (N, Val);
3999 procedure Set_Last_Name
4000 (N : Node_Id; Val : Boolean := True) is
4002 pragma Assert (False
4003 or else NT (N).Nkind = N_With_Clause);
4007 procedure Set_Left_Opnd
4008 (N : Node_Id; Val : Node_Id) is
4010 pragma Assert (False
4011 or else NT (N).Nkind = N_And_Then
4012 or else NT (N).Nkind = N_In
4013 or else NT (N).Nkind = N_Not_In
4014 or else NT (N).Nkind = N_Or_Else
4015 or else NT (N).Nkind in N_Binary_Op);
4016 Set_Node2_With_Parent (N, Val);
4019 procedure Set_Library_Unit
4020 (N : Node_Id; Val : Node_Id) is
4022 pragma Assert (False
4023 or else NT (N).Nkind = N_Compilation_Unit
4024 or else NT (N).Nkind = N_Package_Body_Stub
4025 or else NT (N).Nkind = N_Protected_Body_Stub
4026 or else NT (N).Nkind = N_Subprogram_Body_Stub
4027 or else NT (N).Nkind = N_Task_Body_Stub
4028 or else NT (N).Nkind = N_With_Clause);
4029 Set_Node4 (N, Val); -- semantic field, no parent set
4030 end Set_Library_Unit;
4032 procedure Set_Limited_View_Installed
4033 (N : Node_Id; Val : Boolean := True) is
4035 pragma Assert (False
4036 or else NT (N).Nkind = N_Package_Specification
4037 or else NT (N).Nkind = N_With_Clause);
4038 Set_Flag18 (N, Val);
4039 end Set_Limited_View_Installed;
4041 procedure Set_Limited_Present
4042 (N : Node_Id; Val : Boolean := True) is
4044 pragma Assert (False
4045 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4046 or else NT (N).Nkind = N_Private_Type_Declaration
4047 or else NT (N).Nkind = N_Record_Definition
4048 or else NT (N).Nkind = N_With_Clause);
4049 Set_Flag17 (N, Val);
4050 end Set_Limited_Present;
4052 procedure Set_Literals
4053 (N : Node_Id; Val : List_Id) is
4055 pragma Assert (False
4056 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4057 Set_List1_With_Parent (N, Val);
4060 procedure Set_Loop_Actions
4061 (N : Node_Id; Val : List_Id) is
4063 pragma Assert (False
4064 or else NT (N).Nkind = N_Component_Association);
4065 Set_List2 (N, Val); -- semantic field, no parent set
4066 end Set_Loop_Actions;
4068 procedure Set_Loop_Parameter_Specification
4069 (N : Node_Id; Val : Node_Id) is
4071 pragma Assert (False
4072 or else NT (N).Nkind = N_Iteration_Scheme);
4073 Set_Node4_With_Parent (N, Val);
4074 end Set_Loop_Parameter_Specification;
4076 procedure Set_Low_Bound
4077 (N : Node_Id; Val : Node_Id) is
4079 pragma Assert (False
4080 or else NT (N).Nkind = N_Range
4081 or else NT (N).Nkind = N_Real_Range_Specification
4082 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4083 Set_Node1_With_Parent (N, Val);
4086 procedure Set_Mod_Clause
4087 (N : Node_Id; Val : Node_Id) is
4089 pragma Assert (False
4090 or else NT (N).Nkind = N_Record_Representation_Clause);
4091 Set_Node2_With_Parent (N, Val);
4094 procedure Set_More_Ids
4095 (N : Node_Id; Val : Boolean := True) is
4097 pragma Assert (False
4098 or else NT (N).Nkind = N_Component_Declaration
4099 or else NT (N).Nkind = N_Discriminant_Specification
4100 or else NT (N).Nkind = N_Exception_Declaration
4101 or else NT (N).Nkind = N_Formal_Object_Declaration
4102 or else NT (N).Nkind = N_Number_Declaration
4103 or else NT (N).Nkind = N_Object_Declaration
4104 or else NT (N).Nkind = N_Parameter_Specification);
4108 procedure Set_Must_Be_Byte_Aligned
4109 (N : Node_Id; Val : Boolean := True) is
4111 pragma Assert (False
4112 or else NT (N).Nkind = N_Attribute_Reference);
4113 Set_Flag14 (N, Val);
4114 end Set_Must_Be_Byte_Aligned;
4116 procedure Set_Must_Not_Freeze
4117 (N : Node_Id; Val : Boolean := True) is
4119 pragma Assert (False
4120 or else NT (N).Nkind = N_Subtype_Indication
4121 or else NT (N).Nkind in N_Subexpr);
4123 end Set_Must_Not_Freeze;
4126 (N : Node_Id; Val : Node_Id) is
4128 pragma Assert (False
4129 or else NT (N).Nkind = N_Assignment_Statement
4130 or else NT (N).Nkind = N_Attribute_Definition_Clause
4131 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4132 or else NT (N).Nkind = N_Designator
4133 or else NT (N).Nkind = N_Entry_Call_Statement
4134 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4135 or else NT (N).Nkind = N_Exit_Statement
4136 or else NT (N).Nkind = N_Formal_Package_Declaration
4137 or else NT (N).Nkind = N_Function_Call
4138 or else NT (N).Nkind = N_Function_Instantiation
4139 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4140 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4141 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4142 or else NT (N).Nkind = N_Goto_Statement
4143 or else NT (N).Nkind = N_Object_Renaming_Declaration
4144 or else NT (N).Nkind = N_Package_Instantiation
4145 or else NT (N).Nkind = N_Package_Renaming_Declaration
4146 or else NT (N).Nkind = N_Procedure_Call_Statement
4147 or else NT (N).Nkind = N_Procedure_Instantiation
4148 or else NT (N).Nkind = N_Raise_Statement
4149 or else NT (N).Nkind = N_Requeue_Statement
4150 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4151 or else NT (N).Nkind = N_Subunit
4152 or else NT (N).Nkind = N_Variant_Part
4153 or else NT (N).Nkind = N_With_Clause
4154 or else NT (N).Nkind = N_With_Type_Clause);
4155 Set_Node2_With_Parent (N, Val);
4159 (N : Node_Id; Val : List_Id) is
4161 pragma Assert (False
4162 or else NT (N).Nkind = N_Abort_Statement
4163 or else NT (N).Nkind = N_Use_Package_Clause);
4164 Set_List2_With_Parent (N, Val);
4167 procedure Set_Next_Entity
4168 (N : Node_Id; Val : Node_Id) is
4170 pragma Assert (False
4171 or else NT (N).Nkind = N_Defining_Character_Literal
4172 or else NT (N).Nkind = N_Defining_Identifier
4173 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4174 Set_Node2 (N, Val); -- semantic field, no parent set
4175 end Set_Next_Entity;
4177 procedure Set_Next_Named_Actual
4178 (N : Node_Id; Val : Node_Id) is
4180 pragma Assert (False
4181 or else NT (N).Nkind = N_Parameter_Association);
4182 Set_Node4 (N, Val); -- semantic field, no parent set
4183 end Set_Next_Named_Actual;
4185 procedure Set_Next_Rep_Item
4186 (N : Node_Id; Val : Node_Id) is
4188 pragma Assert (False
4189 or else NT (N).Nkind = N_Attribute_Definition_Clause
4190 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4191 or else NT (N).Nkind = N_Pragma
4192 or else NT (N).Nkind = N_Record_Representation_Clause);
4193 Set_Node4 (N, Val); -- semantic field, no parent set
4194 end Set_Next_Rep_Item;
4196 procedure Set_Next_Use_Clause
4197 (N : Node_Id; Val : Node_Id) is
4199 pragma Assert (False
4200 or else NT (N).Nkind = N_Use_Package_Clause
4201 or else NT (N).Nkind = N_Use_Type_Clause);
4202 Set_Node3 (N, Val); -- semantic field, no parent set
4203 end Set_Next_Use_Clause;
4205 procedure Set_No_Ctrl_Actions
4206 (N : Node_Id; Val : Boolean := True) is
4208 pragma Assert (False
4209 or else NT (N).Nkind = N_Assignment_Statement);
4211 end Set_No_Ctrl_Actions;
4213 procedure Set_No_Elaboration_Check
4214 (N : Node_Id; Val : Boolean := True) is
4216 pragma Assert (False
4217 or else NT (N).Nkind = N_Function_Call
4218 or else NT (N).Nkind = N_Procedure_Call_Statement);
4219 Set_Flag14 (N, Val);
4220 end Set_No_Elaboration_Check;
4222 procedure Set_No_Entities_Ref_In_Spec
4223 (N : Node_Id; Val : Boolean := True) is
4225 pragma Assert (False
4226 or else NT (N).Nkind = N_With_Clause);
4228 end Set_No_Entities_Ref_In_Spec;
4230 procedure Set_No_Initialization
4231 (N : Node_Id; Val : Boolean := True) is
4233 pragma Assert (False
4234 or else NT (N).Nkind = N_Allocator
4235 or else NT (N).Nkind = N_Object_Declaration);
4236 Set_Flag13 (N, Val);
4237 end Set_No_Initialization;
4239 procedure Set_No_Truncation
4240 (N : Node_Id; Val : Boolean := True) is
4242 pragma Assert (False
4243 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4244 Set_Flag17 (N, Val);
4245 end Set_No_Truncation;
4247 procedure Set_Null_Present
4248 (N : Node_Id; Val : Boolean := True) is
4250 pragma Assert (False
4251 or else NT (N).Nkind = N_Component_List
4252 or else NT (N).Nkind = N_Record_Definition);
4253 Set_Flag13 (N, Val);
4254 end Set_Null_Present;
4256 procedure Set_Null_Record_Present
4257 (N : Node_Id; Val : Boolean := True) is
4259 pragma Assert (False
4260 or else NT (N).Nkind = N_Aggregate
4261 or else NT (N).Nkind = N_Extension_Aggregate);
4262 Set_Flag17 (N, Val);
4263 end Set_Null_Record_Present;
4265 procedure Set_Object_Definition
4266 (N : Node_Id; Val : Node_Id) is
4268 pragma Assert (False
4269 or else NT (N).Nkind = N_Object_Declaration);
4270 Set_Node4_With_Parent (N, Val);
4271 end Set_Object_Definition;
4273 procedure Set_OK_For_Stream
4274 (N : Node_Id; Val : Boolean := True) is
4276 pragma Assert (False
4277 or else NT (N).Nkind = N_Attribute_Reference);
4279 end Set_OK_For_Stream;
4281 procedure Set_Original_Discriminant
4282 (N : Node_Id; Val : Node_Id) is
4284 pragma Assert (False
4285 or else NT (N).Nkind = N_Identifier);
4286 Set_Node2 (N, Val); -- semantic field, no parent set
4287 end Set_Original_Discriminant;
4289 procedure Set_Original_Entity
4290 (N : Node_Id; Val : Entity_Id) is
4292 pragma Assert (False
4293 or else NT (N).Nkind = N_Integer_Literal
4294 or else NT (N).Nkind = N_Real_Literal);
4295 Set_Node2 (N, Val); -- semantic field, no parent set
4296 end Set_Original_Entity;
4298 procedure Set_Others_Discrete_Choices
4299 (N : Node_Id; Val : List_Id) is
4301 pragma Assert (False
4302 or else NT (N).Nkind = N_Others_Choice);
4303 Set_List1_With_Parent (N, Val);
4304 end Set_Others_Discrete_Choices;
4306 procedure Set_Out_Present
4307 (N : Node_Id; Val : Boolean := True) is
4309 pragma Assert (False
4310 or else NT (N).Nkind = N_Formal_Object_Declaration
4311 or else NT (N).Nkind = N_Parameter_Specification);
4312 Set_Flag17 (N, Val);
4313 end Set_Out_Present;
4315 procedure Set_Parameter_Associations
4316 (N : Node_Id; Val : List_Id) is
4318 pragma Assert (False
4319 or else NT (N).Nkind = N_Entry_Call_Statement
4320 or else NT (N).Nkind = N_Function_Call
4321 or else NT (N).Nkind = N_Procedure_Call_Statement);
4322 Set_List3_With_Parent (N, Val);
4323 end Set_Parameter_Associations;
4325 procedure Set_Parameter_List_Truncated
4326 (N : Node_Id; Val : Boolean := True) is
4328 pragma Assert (False
4329 or else NT (N).Nkind = N_Function_Call
4330 or else NT (N).Nkind = N_Procedure_Call_Statement);
4331 Set_Flag17 (N, Val);
4332 end Set_Parameter_List_Truncated;
4334 procedure Set_Parameter_Specifications
4335 (N : Node_Id; Val : List_Id) is
4337 pragma Assert (False
4338 or else NT (N).Nkind = N_Accept_Statement
4339 or else NT (N).Nkind = N_Access_Function_Definition
4340 or else NT (N).Nkind = N_Access_Procedure_Definition
4341 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4342 or else NT (N).Nkind = N_Entry_Declaration
4343 or else NT (N).Nkind = N_Function_Specification
4344 or else NT (N).Nkind = N_Procedure_Specification);
4345 Set_List3_With_Parent (N, Val);
4346 end Set_Parameter_Specifications;
4348 procedure Set_Parameter_Type
4349 (N : Node_Id; Val : Node_Id) is
4351 pragma Assert (False
4352 or else NT (N).Nkind = N_Parameter_Specification);
4353 Set_Node2_With_Parent (N, Val);
4354 end Set_Parameter_Type;
4356 procedure Set_Parent_Spec
4357 (N : Node_Id; Val : Node_Id) is
4359 pragma Assert (False
4360 or else NT (N).Nkind = N_Function_Instantiation
4361 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4362 or else NT (N).Nkind = N_Generic_Package_Declaration
4363 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4364 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4365 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4366 or else NT (N).Nkind = N_Package_Declaration
4367 or else NT (N).Nkind = N_Package_Instantiation
4368 or else NT (N).Nkind = N_Package_Renaming_Declaration
4369 or else NT (N).Nkind = N_Procedure_Instantiation
4370 or else NT (N).Nkind = N_Subprogram_Declaration
4371 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4372 Set_Node4 (N, Val); -- semantic field, no parent set
4373 end Set_Parent_Spec;
4375 procedure Set_Position
4376 (N : Node_Id; Val : Node_Id) is
4378 pragma Assert (False
4379 or else NT (N).Nkind = N_Component_Clause);
4380 Set_Node2_With_Parent (N, Val);
4383 procedure Set_Pragma_Argument_Associations
4384 (N : Node_Id; Val : List_Id) is
4386 pragma Assert (False
4387 or else NT (N).Nkind = N_Pragma);
4388 Set_List2_With_Parent (N, Val);
4389 end Set_Pragma_Argument_Associations;
4391 procedure Set_Pragmas_After
4392 (N : Node_Id; Val : List_Id) is
4394 pragma Assert (False
4395 or else NT (N).Nkind = N_Compilation_Unit_Aux
4396 or else NT (N).Nkind = N_Terminate_Alternative);
4397 Set_List5_With_Parent (N, Val);
4398 end Set_Pragmas_After;
4400 procedure Set_Pragmas_Before
4401 (N : Node_Id; Val : List_Id) is
4403 pragma Assert (False
4404 or else NT (N).Nkind = N_Accept_Alternative
4405 or else NT (N).Nkind = N_Delay_Alternative
4406 or else NT (N).Nkind = N_Entry_Call_Alternative
4407 or else NT (N).Nkind = N_Mod_Clause
4408 or else NT (N).Nkind = N_Terminate_Alternative
4409 or else NT (N).Nkind = N_Triggering_Alternative);
4410 Set_List4_With_Parent (N, Val);
4411 end Set_Pragmas_Before;
4413 procedure Set_Prefix
4414 (N : Node_Id; Val : Node_Id) is
4416 pragma Assert (False
4417 or else NT (N).Nkind = N_Attribute_Reference
4418 or else NT (N).Nkind = N_Expanded_Name
4419 or else NT (N).Nkind = N_Explicit_Dereference
4420 or else NT (N).Nkind = N_Indexed_Component
4421 or else NT (N).Nkind = N_Reference
4422 or else NT (N).Nkind = N_Selected_Component
4423 or else NT (N).Nkind = N_Slice);
4424 Set_Node3_With_Parent (N, Val);
4427 procedure Set_Present_Expr
4428 (N : Node_Id; Val : Uint) is
4430 pragma Assert (False
4431 or else NT (N).Nkind = N_Variant);
4433 end Set_Present_Expr;
4435 procedure Set_Prev_Ids
4436 (N : Node_Id; Val : Boolean := True) is
4438 pragma Assert (False
4439 or else NT (N).Nkind = N_Component_Declaration
4440 or else NT (N).Nkind = N_Discriminant_Specification
4441 or else NT (N).Nkind = N_Exception_Declaration
4442 or else NT (N).Nkind = N_Formal_Object_Declaration
4443 or else NT (N).Nkind = N_Number_Declaration
4444 or else NT (N).Nkind = N_Object_Declaration
4445 or else NT (N).Nkind = N_Parameter_Specification);
4449 procedure Set_Print_In_Hex
4450 (N : Node_Id; Val : Boolean := True) is
4452 pragma Assert (False
4453 or else NT (N).Nkind = N_Integer_Literal);
4454 Set_Flag13 (N, Val);
4455 end Set_Print_In_Hex;
4457 procedure Set_Private_Declarations
4458 (N : Node_Id; Val : List_Id) is
4460 pragma Assert (False
4461 or else NT (N).Nkind = N_Package_Specification
4462 or else NT (N).Nkind = N_Protected_Definition
4463 or else NT (N).Nkind = N_Task_Definition);
4464 Set_List3_With_Parent (N, Val);
4465 end Set_Private_Declarations;
4467 procedure Set_Private_Present
4468 (N : Node_Id; Val : Boolean := True) is
4470 pragma Assert (False
4471 or else NT (N).Nkind = N_Compilation_Unit
4472 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
4473 Set_Flag15 (N, Val);
4474 end Set_Private_Present;
4476 procedure Set_Procedure_To_Call
4477 (N : Node_Id; Val : Node_Id) is
4479 pragma Assert (False
4480 or else NT (N).Nkind = N_Allocator
4481 or else NT (N).Nkind = N_Free_Statement
4482 or else NT (N).Nkind = N_Return_Statement);
4483 Set_Node4 (N, Val); -- semantic field, no parent set
4484 end Set_Procedure_To_Call;
4486 procedure Set_Proper_Body
4487 (N : Node_Id; Val : Node_Id) is
4489 pragma Assert (False
4490 or else NT (N).Nkind = N_Subunit);
4491 Set_Node1_With_Parent (N, Val);
4492 end Set_Proper_Body;
4494 procedure Set_Protected_Definition
4495 (N : Node_Id; Val : Node_Id) is
4497 pragma Assert (False
4498 or else NT (N).Nkind = N_Protected_Type_Declaration
4499 or else NT (N).Nkind = N_Single_Protected_Declaration);
4500 Set_Node3_With_Parent (N, Val);
4501 end Set_Protected_Definition;
4503 procedure Set_Protected_Present
4504 (N : Node_Id; Val : Boolean := True) is
4506 pragma Assert (False
4507 or else NT (N).Nkind = N_Access_Function_Definition
4508 or else NT (N).Nkind = N_Access_Procedure_Definition);
4509 Set_Flag15 (N, Val);
4510 end Set_Protected_Present;
4512 procedure Set_Raises_Constraint_Error
4513 (N : Node_Id; Val : Boolean := True) is
4515 pragma Assert (False
4516 or else NT (N).Nkind in N_Subexpr);
4518 end Set_Raises_Constraint_Error;
4520 procedure Set_Range_Constraint
4521 (N : Node_Id; Val : Node_Id) is
4523 pragma Assert (False
4524 or else NT (N).Nkind = N_Delta_Constraint
4525 or else NT (N).Nkind = N_Digits_Constraint);
4526 Set_Node4_With_Parent (N, Val);
4527 end Set_Range_Constraint;
4529 procedure Set_Range_Expression
4530 (N : Node_Id; Val : Node_Id) is
4532 pragma Assert (False
4533 or else NT (N).Nkind = N_Range_Constraint);
4534 Set_Node4_With_Parent (N, Val);
4535 end Set_Range_Expression;
4537 procedure Set_Real_Range_Specification
4538 (N : Node_Id; Val : Node_Id) is
4540 pragma Assert (False
4541 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4542 or else NT (N).Nkind = N_Floating_Point_Definition
4543 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4544 Set_Node4_With_Parent (N, Val);
4545 end Set_Real_Range_Specification;
4547 procedure Set_Realval
4548 (N : Node_Id; Val : Ureal) is
4550 pragma Assert (False
4551 or else NT (N).Nkind = N_Real_Literal);
4552 Set_Ureal3 (N, Val);
4555 procedure Set_Reason
4556 (N : Node_Id; Val : Uint) is
4558 pragma Assert (False
4559 or else NT (N).Nkind = N_Raise_Constraint_Error
4560 or else NT (N).Nkind = N_Raise_Program_Error
4561 or else NT (N).Nkind = N_Raise_Storage_Error);
4565 procedure Set_Record_Extension_Part
4566 (N : Node_Id; Val : Node_Id) is
4568 pragma Assert (False
4569 or else NT (N).Nkind = N_Derived_Type_Definition);
4570 Set_Node3_With_Parent (N, Val);
4571 end Set_Record_Extension_Part;
4573 procedure Set_Redundant_Use
4574 (N : Node_Id; Val : Boolean := True) is
4576 pragma Assert (False
4577 or else NT (N).Nkind = N_Attribute_Reference
4578 or else NT (N).Nkind = N_Expanded_Name
4579 or else NT (N).Nkind = N_Identifier);
4580 Set_Flag13 (N, Val);
4581 end Set_Redundant_Use;
4583 procedure Set_Return_Type
4584 (N : Node_Id; Val : Node_Id) is
4586 pragma Assert (False
4587 or else NT (N).Nkind = N_Return_Statement);
4588 Set_Node2 (N, Val); -- semantic field, no parent set
4589 end Set_Return_Type;
4591 procedure Set_Reverse_Present
4592 (N : Node_Id; Val : Boolean := True) is
4594 pragma Assert (False
4595 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4596 Set_Flag15 (N, Val);
4597 end Set_Reverse_Present;
4599 procedure Set_Right_Opnd
4600 (N : Node_Id; Val : Node_Id) is
4602 pragma Assert (False
4603 or else NT (N).Nkind in N_Op
4604 or else NT (N).Nkind = N_And_Then
4605 or else NT (N).Nkind = N_In
4606 or else NT (N).Nkind = N_Not_In
4607 or else NT (N).Nkind = N_Or_Else);
4608 Set_Node3_With_Parent (N, Val);
4611 procedure Set_Rounded_Result
4612 (N : Node_Id; Val : Boolean := True) is
4614 pragma Assert (False
4615 or else NT (N).Nkind = N_Op_Divide
4616 or else NT (N).Nkind = N_Op_Multiply
4617 or else NT (N).Nkind = N_Type_Conversion);
4618 Set_Flag18 (N, Val);
4619 end Set_Rounded_Result;
4622 (N : Node_Id; Val : Node_Id) is
4624 pragma Assert (False
4625 or else NT (N).Nkind = N_Defining_Character_Literal
4626 or else NT (N).Nkind = N_Defining_Identifier
4627 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4628 Set_Node3 (N, Val); -- semantic field, no parent set
4631 procedure Set_Select_Alternatives
4632 (N : Node_Id; Val : List_Id) is
4634 pragma Assert (False
4635 or else NT (N).Nkind = N_Selective_Accept);
4636 Set_List1_With_Parent (N, Val);
4637 end Set_Select_Alternatives;
4639 procedure Set_Selector_Name
4640 (N : Node_Id; Val : Node_Id) is
4642 pragma Assert (False
4643 or else NT (N).Nkind = N_Expanded_Name
4644 or else NT (N).Nkind = N_Generic_Association
4645 or else NT (N).Nkind = N_Parameter_Association
4646 or else NT (N).Nkind = N_Selected_Component);
4647 Set_Node2_With_Parent (N, Val);
4648 end Set_Selector_Name;
4650 procedure Set_Selector_Names
4651 (N : Node_Id; Val : List_Id) is
4653 pragma Assert (False
4654 or else NT (N).Nkind = N_Discriminant_Association);
4655 Set_List1_With_Parent (N, Val);
4656 end Set_Selector_Names;
4658 procedure Set_Shift_Count_OK
4659 (N : Node_Id; Val : Boolean := True) is
4661 pragma Assert (False
4662 or else NT (N).Nkind = N_Op_Rotate_Left
4663 or else NT (N).Nkind = N_Op_Rotate_Right
4664 or else NT (N).Nkind = N_Op_Shift_Left
4665 or else NT (N).Nkind = N_Op_Shift_Right
4666 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4668 end Set_Shift_Count_OK;
4670 procedure Set_Source_Type
4671 (N : Node_Id; Val : Entity_Id) is
4673 pragma Assert (False
4674 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4675 Set_Node1 (N, Val); -- semantic field, no parent set
4676 end Set_Source_Type;
4678 procedure Set_Specification
4679 (N : Node_Id; Val : Node_Id) is
4681 pragma Assert (False
4682 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4683 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4684 or else NT (N).Nkind = N_Generic_Package_Declaration
4685 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4686 or else NT (N).Nkind = N_Package_Declaration
4687 or else NT (N).Nkind = N_Subprogram_Body
4688 or else NT (N).Nkind = N_Subprogram_Body_Stub
4689 or else NT (N).Nkind = N_Subprogram_Declaration
4690 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4691 Set_Node1_With_Parent (N, Val);
4692 end Set_Specification;
4694 procedure Set_Statements
4695 (N : Node_Id; Val : List_Id) is
4697 pragma Assert (False
4698 or else NT (N).Nkind = N_Abortable_Part
4699 or else NT (N).Nkind = N_Accept_Alternative
4700 or else NT (N).Nkind = N_Case_Statement_Alternative
4701 or else NT (N).Nkind = N_Delay_Alternative
4702 or else NT (N).Nkind = N_Entry_Call_Alternative
4703 or else NT (N).Nkind = N_Exception_Handler
4704 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4705 or else NT (N).Nkind = N_Loop_Statement
4706 or else NT (N).Nkind = N_Triggering_Alternative);
4707 Set_List3_With_Parent (N, Val);
4710 procedure Set_Static_Processing_OK
4711 (N : Node_Id; Val : Boolean) is
4713 pragma Assert (False
4714 or else NT (N).Nkind = N_Aggregate);
4716 end Set_Static_Processing_OK;
4718 procedure Set_Storage_Pool
4719 (N : Node_Id; Val : Node_Id) is
4721 pragma Assert (False
4722 or else NT (N).Nkind = N_Allocator
4723 or else NT (N).Nkind = N_Free_Statement
4724 or else NT (N).Nkind = N_Return_Statement);
4725 Set_Node1 (N, Val); -- semantic field, no parent set
4726 end Set_Storage_Pool;
4728 procedure Set_Strval
4729 (N : Node_Id; Val : String_Id) is
4731 pragma Assert (False
4732 or else NT (N).Nkind = N_Operator_Symbol
4733 or else NT (N).Nkind = N_String_Literal);
4737 procedure Set_Subtype_Indication
4738 (N : Node_Id; Val : Node_Id) is
4740 pragma Assert (False
4741 or else NT (N).Nkind = N_Access_To_Object_Definition
4742 or else NT (N).Nkind = N_Component_Definition
4743 or else NT (N).Nkind = N_Derived_Type_Definition
4744 or else NT (N).Nkind = N_Private_Extension_Declaration
4745 or else NT (N).Nkind = N_Subtype_Declaration);
4746 Set_Node5_With_Parent (N, Val);
4747 end Set_Subtype_Indication;
4749 procedure Set_Subtype_Mark
4750 (N : Node_Id; Val : Node_Id) is
4752 pragma Assert (False
4753 or else NT (N).Nkind = N_Access_Definition
4754 or else NT (N).Nkind = N_Access_Function_Definition
4755 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4756 or else NT (N).Nkind = N_Formal_Object_Declaration
4757 or else NT (N).Nkind = N_Function_Specification
4758 or else NT (N).Nkind = N_Object_Renaming_Declaration
4759 or else NT (N).Nkind = N_Qualified_Expression
4760 or else NT (N).Nkind = N_Subtype_Indication
4761 or else NT (N).Nkind = N_Type_Conversion
4762 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4763 Set_Node4_With_Parent (N, Val);
4764 end Set_Subtype_Mark;
4766 procedure Set_Subtype_Marks
4767 (N : Node_Id; Val : List_Id) is
4769 pragma Assert (False
4770 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4771 or else NT (N).Nkind = N_Use_Type_Clause);
4772 Set_List2_With_Parent (N, Val);
4773 end Set_Subtype_Marks;
4775 procedure Set_Tagged_Present
4776 (N : Node_Id; Val : Boolean := True) is
4778 pragma Assert (False
4779 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4780 or else NT (N).Nkind = N_Private_Type_Declaration
4781 or else NT (N).Nkind = N_Record_Definition
4782 or else NT (N).Nkind = N_With_Type_Clause);
4783 Set_Flag15 (N, Val);
4784 end Set_Tagged_Present;
4786 procedure Set_Target_Type
4787 (N : Node_Id; Val : Entity_Id) is
4789 pragma Assert (False
4790 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4791 Set_Node2 (N, Val); -- semantic field, no parent set
4792 end Set_Target_Type;
4794 procedure Set_Task_Body_Procedure
4795 (N : Node_Id; Val : Entity_Id) is
4797 pragma Assert (False
4798 or else NT (N).Nkind = N_Task_Type_Declaration);
4799 Set_Node2 (N, Val); -- semantic field, no parent set
4800 end Set_Task_Body_Procedure;
4802 procedure Set_Task_Definition
4803 (N : Node_Id; Val : Node_Id) is
4805 pragma Assert (False
4806 or else NT (N).Nkind = N_Single_Task_Declaration
4807 or else NT (N).Nkind = N_Task_Type_Declaration);
4808 Set_Node3_With_Parent (N, Val);
4809 end Set_Task_Definition;
4811 procedure Set_Then_Actions
4812 (N : Node_Id; Val : List_Id) is
4814 pragma Assert (False
4815 or else NT (N).Nkind = N_Conditional_Expression);
4816 Set_List2 (N, Val); -- semantic field, no parent set
4817 end Set_Then_Actions;
4819 procedure Set_Then_Statements
4820 (N : Node_Id; Val : List_Id) is
4822 pragma Assert (False
4823 or else NT (N).Nkind = N_Elsif_Part
4824 or else NT (N).Nkind = N_If_Statement);
4825 Set_List2_With_Parent (N, Val);
4826 end Set_Then_Statements;
4828 procedure Set_Treat_Fixed_As_Integer
4829 (N : Node_Id; Val : Boolean := True) is
4831 pragma Assert (False
4832 or else NT (N).Nkind = N_Op_Divide
4833 or else NT (N).Nkind = N_Op_Mod
4834 or else NT (N).Nkind = N_Op_Multiply
4835 or else NT (N).Nkind = N_Op_Rem);
4836 Set_Flag14 (N, Val);
4837 end Set_Treat_Fixed_As_Integer;
4839 procedure Set_Triggering_Alternative
4840 (N : Node_Id; Val : Node_Id) is
4842 pragma Assert (False
4843 or else NT (N).Nkind = N_Asynchronous_Select);
4844 Set_Node1_With_Parent (N, Val);
4845 end Set_Triggering_Alternative;
4847 procedure Set_Triggering_Statement
4848 (N : Node_Id; Val : Node_Id) is
4850 pragma Assert (False
4851 or else NT (N).Nkind = N_Triggering_Alternative);
4852 Set_Node1_With_Parent (N, Val);
4853 end Set_Triggering_Statement;
4855 procedure Set_TSS_Elist
4856 (N : Node_Id; Val : Elist_Id) is
4858 pragma Assert (False
4859 or else NT (N).Nkind = N_Freeze_Entity);
4860 Set_Elist3 (N, Val); -- semantic field, no parent set
4863 procedure Set_Type_Definition
4864 (N : Node_Id; Val : Node_Id) is
4866 pragma Assert (False
4867 or else NT (N).Nkind = N_Full_Type_Declaration);
4868 Set_Node3_With_Parent (N, Val);
4869 end Set_Type_Definition;
4872 (N : Node_Id; Val : Node_Id) is
4874 pragma Assert (False
4875 or else NT (N).Nkind = N_Compilation_Unit);
4876 Set_Node2_With_Parent (N, Val);
4879 procedure Set_Unknown_Discriminants_Present
4880 (N : Node_Id; Val : Boolean := True) is
4882 pragma Assert (False
4883 or else NT (N).Nkind = N_Formal_Type_Declaration
4884 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4885 or else NT (N).Nkind = N_Private_Extension_Declaration
4886 or else NT (N).Nkind = N_Private_Type_Declaration);
4887 Set_Flag13 (N, Val);
4888 end Set_Unknown_Discriminants_Present;
4890 procedure Set_Unreferenced_In_Spec
4891 (N : Node_Id; Val : Boolean := True) is
4893 pragma Assert (False
4894 or else NT (N).Nkind = N_With_Clause);
4896 end Set_Unreferenced_In_Spec;
4898 procedure Set_Variant_Part
4899 (N : Node_Id; Val : Node_Id) is
4901 pragma Assert (False
4902 or else NT (N).Nkind = N_Component_List);
4903 Set_Node4_With_Parent (N, Val);
4904 end Set_Variant_Part;
4906 procedure Set_Variants
4907 (N : Node_Id; Val : List_Id) is
4909 pragma Assert (False
4910 or else NT (N).Nkind = N_Variant_Part);
4911 Set_List1_With_Parent (N, Val);
4914 procedure Set_Visible_Declarations
4915 (N : Node_Id; Val : List_Id) is
4917 pragma Assert (False
4918 or else NT (N).Nkind = N_Package_Specification
4919 or else NT (N).Nkind = N_Protected_Definition
4920 or else NT (N).Nkind = N_Task_Definition);
4921 Set_List2_With_Parent (N, Val);
4922 end Set_Visible_Declarations;
4924 procedure Set_Was_Originally_Stub
4925 (N : Node_Id; Val : Boolean := True) is
4927 pragma Assert (False
4928 or else NT (N).Nkind = N_Package_Body
4929 or else NT (N).Nkind = N_Protected_Body
4930 or else NT (N).Nkind = N_Subprogram_Body
4931 or else NT (N).Nkind = N_Task_Body);
4932 Set_Flag13 (N, Val);
4933 end Set_Was_Originally_Stub;
4935 procedure Set_Zero_Cost_Handling
4936 (N : Node_Id; Val : Boolean := True) is
4938 pragma Assert (False
4939 or else NT (N).Nkind = N_Exception_Handler
4940 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4942 end Set_Zero_Cost_Handling;
4944 -------------------------
4945 -- Iterator Procedures --
4946 -------------------------
4948 procedure Next_Entity (N : in out Node_Id) is
4950 N := Next_Entity (N);
4953 procedure Next_Named_Actual (N : in out Node_Id) is
4955 N := Next_Named_Actual (N);
4956 end Next_Named_Actual;
4958 procedure Next_Rep_Item (N : in out Node_Id) is
4960 N := Next_Rep_Item (N);
4963 procedure Next_Use_Clause (N : in out Node_Id) is
4965 N := Next_Use_Clause (N);
4966 end Next_Use_Clause;
4972 function End_Location (N : Node_Id) return Source_Ptr is
4973 L : constant Uint := End_Span (N);
4979 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
4983 ----------------------
4984 -- Set_End_Location --
4985 ----------------------
4987 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
4990 UI_From_Int (Int (S) - Int (Sloc (N))));
4991 end Set_End_Location;