1 ------------------------------------------------------------------------------
3 -- GNAT COMPILER COMPONENTS --
9 -- Copyright (C) 1992-2003, 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_Declaration
174 or else NT (N).Nkind = N_Constrained_Array_Definition
175 or else NT (N).Nkind = N_Object_Declaration
176 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
181 (N : Node_Id) return Boolean is
184 or else NT (N).Nkind = N_Others_Choice);
189 (N : Node_Id) return Boolean is
192 or else NT (N).Nkind = N_Access_To_Object_Definition);
196 function Alternatives
197 (N : Node_Id) return List_Id is
200 or else NT (N).Nkind = N_Case_Statement);
204 function Ancestor_Part
205 (N : Node_Id) return Node_Id is
208 or else NT (N).Nkind = N_Extension_Aggregate);
212 function Array_Aggregate
213 (N : Node_Id) return Node_Id is
216 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
220 function Assignment_OK
221 (N : Node_Id) return Boolean is
224 or else NT (N).Nkind = N_Object_Declaration
225 or else NT (N).Nkind in N_Subexpr);
229 function Associated_Node
230 (N : Node_Id) return Node_Id is
233 or else NT (N).Nkind in N_Has_Entity
234 or else NT (N).Nkind = N_Aggregate
235 or else NT (N).Nkind = N_Extension_Aggregate
236 or else NT (N).Nkind = N_Selected_Component);
241 (N : Node_Id) return Node_Id is
244 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
248 function Attribute_Name
249 (N : Node_Id) return Name_Id is
252 or else NT (N).Nkind = N_Attribute_Reference);
256 function Aux_Decls_Node
257 (N : Node_Id) return Node_Id is
260 or else NT (N).Nkind = N_Compilation_Unit);
264 function Backwards_OK
265 (N : Node_Id) return Boolean is
268 or else NT (N).Nkind = N_Assignment_Statement);
272 function Bad_Is_Detected
273 (N : Node_Id) return Boolean is
276 or else NT (N).Nkind = N_Subprogram_Body);
280 function Body_Required
281 (N : Node_Id) return Boolean is
284 or else NT (N).Nkind = N_Compilation_Unit);
288 function Body_To_Inline
289 (N : Node_Id) return Node_Id is
292 or else NT (N).Nkind = N_Subprogram_Declaration);
297 (N : Node_Id) return Boolean is
300 or else NT (N).Nkind = N_Formal_Package_Declaration
301 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
306 (N : Node_Id) return Boolean is
309 or else NT (N).Nkind = N_Return_Statement);
313 function Char_Literal_Value
314 (N : Node_Id) return Char_Code is
317 or else NT (N).Nkind = N_Character_Literal);
318 return Char_Code2 (N);
319 end Char_Literal_Value;
322 (N : Node_Id) return Name_Id is
325 or else NT (N).Nkind in N_Has_Chars);
329 function Check_Address_Alignment
330 (N : Node_Id) return Boolean is
333 or else NT (N).Nkind = N_Attribute_Definition_Clause);
335 end Check_Address_Alignment;
337 function Choice_Parameter
338 (N : Node_Id) return Node_Id is
341 or else NT (N).Nkind = N_Exception_Handler);
343 end Choice_Parameter;
346 (N : Node_Id) return List_Id is
349 or else NT (N).Nkind = N_Component_Association);
353 function Compile_Time_Known_Aggregate
354 (N : Node_Id) return Boolean is
357 or else NT (N).Nkind = N_Aggregate);
359 end Compile_Time_Known_Aggregate;
361 function Component_Associations
362 (N : Node_Id) return List_Id is
365 or else NT (N).Nkind = N_Aggregate
366 or else NT (N).Nkind = N_Extension_Aggregate);
368 end Component_Associations;
370 function Component_Clauses
371 (N : Node_Id) return List_Id is
374 or else NT (N).Nkind = N_Record_Representation_Clause);
376 end Component_Clauses;
378 function Component_Items
379 (N : Node_Id) return List_Id is
382 or else NT (N).Nkind = N_Component_List);
386 function Component_List
387 (N : Node_Id) return Node_Id is
390 or else NT (N).Nkind = N_Record_Definition
391 or else NT (N).Nkind = N_Variant);
395 function Component_Name
396 (N : Node_Id) return Node_Id is
399 or else NT (N).Nkind = N_Component_Clause);
404 (N : Node_Id) return Node_Id is
407 or else NT (N).Nkind = N_Accept_Alternative
408 or else NT (N).Nkind = N_Delay_Alternative
409 or else NT (N).Nkind = N_Elsif_Part
410 or else NT (N).Nkind = N_Entry_Body_Formal_Part
411 or else NT (N).Nkind = N_Exit_Statement
412 or else NT (N).Nkind = N_If_Statement
413 or else NT (N).Nkind = N_Iteration_Scheme
414 or else NT (N).Nkind = N_Raise_Constraint_Error
415 or else NT (N).Nkind = N_Raise_Program_Error
416 or else NT (N).Nkind = N_Raise_Storage_Error
417 or else NT (N).Nkind = N_Terminate_Alternative);
421 function Condition_Actions
422 (N : Node_Id) return List_Id is
425 or else NT (N).Nkind = N_Elsif_Part
426 or else NT (N).Nkind = N_Iteration_Scheme);
428 end Condition_Actions;
430 function Config_Pragmas
431 (N : Node_Id) return List_Id is
434 or else NT (N).Nkind = N_Compilation_Unit_Aux);
438 function Constant_Present
439 (N : Node_Id) return Boolean is
442 or else NT (N).Nkind = N_Access_To_Object_Definition
443 or else NT (N).Nkind = N_Object_Declaration);
445 end Constant_Present;
448 (N : Node_Id) return Node_Id is
451 or else NT (N).Nkind = N_Subtype_Indication);
456 (N : Node_Id) return List_Id is
459 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
463 function Context_Installed
464 (N : Node_Id) return Boolean is
467 or else NT (N).Nkind = N_With_Clause);
469 end Context_Installed;
471 function Context_Items
472 (N : Node_Id) return List_Id is
475 or else NT (N).Nkind = N_Compilation_Unit);
479 function Controlling_Argument
480 (N : Node_Id) return Node_Id is
483 or else NT (N).Nkind = N_Function_Call
484 or else NT (N).Nkind = N_Procedure_Call_Statement);
486 end Controlling_Argument;
488 function Conversion_OK
489 (N : Node_Id) return Boolean is
492 or else NT (N).Nkind = N_Type_Conversion);
496 function Corresponding_Body
497 (N : Node_Id) return Node_Id is
500 or else NT (N).Nkind = N_Entry_Declaration
501 or else NT (N).Nkind = N_Generic_Package_Declaration
502 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
503 or else NT (N).Nkind = N_Package_Body_Stub
504 or else NT (N).Nkind = N_Package_Declaration
505 or else NT (N).Nkind = N_Protected_Body_Stub
506 or else NT (N).Nkind = N_Protected_Type_Declaration
507 or else NT (N).Nkind = N_Subprogram_Body_Stub
508 or else NT (N).Nkind = N_Subprogram_Declaration
509 or else NT (N).Nkind = N_Task_Body_Stub
510 or else NT (N).Nkind = N_Task_Type_Declaration);
512 end Corresponding_Body;
514 function Corresponding_Generic_Association
515 (N : Node_Id) return Node_Id is
518 or else NT (N).Nkind = N_Object_Declaration
519 or else NT (N).Nkind = N_Object_Renaming_Declaration);
521 end Corresponding_Generic_Association;
523 function Corresponding_Integer_Value
524 (N : Node_Id) return Uint is
527 or else NT (N).Nkind = N_Real_Literal);
529 end Corresponding_Integer_Value;
531 function Corresponding_Spec
532 (N : Node_Id) return Node_Id is
535 or else NT (N).Nkind = N_Package_Body
536 or else NT (N).Nkind = N_Protected_Body
537 or else NT (N).Nkind = N_Subprogram_Body
538 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
539 or else NT (N).Nkind = N_Task_Body
540 or else NT (N).Nkind = N_With_Clause);
542 end Corresponding_Spec;
544 function Corresponding_Stub
545 (N : Node_Id) return Node_Id is
548 or else NT (N).Nkind = N_Subunit);
550 end Corresponding_Stub;
552 function Dcheck_Function
553 (N : Node_Id) return Entity_Id is
556 or else NT (N).Nkind = N_Variant);
560 function Debug_Statement
561 (N : Node_Id) return Node_Id is
564 or else NT (N).Nkind = N_Pragma);
568 function Declarations
569 (N : Node_Id) return List_Id is
572 or else NT (N).Nkind = N_Accept_Statement
573 or else NT (N).Nkind = N_Block_Statement
574 or else NT (N).Nkind = N_Compilation_Unit_Aux
575 or else NT (N).Nkind = N_Entry_Body
576 or else NT (N).Nkind = N_Package_Body
577 or else NT (N).Nkind = N_Protected_Body
578 or else NT (N).Nkind = N_Subprogram_Body
579 or else NT (N).Nkind = N_Task_Body);
583 function Default_Expression
584 (N : Node_Id) return Node_Id is
587 or else NT (N).Nkind = N_Parameter_Specification);
589 end Default_Expression;
591 function Default_Name
592 (N : Node_Id) return Node_Id is
595 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
599 function Defining_Identifier
600 (N : Node_Id) return Entity_Id is
603 or else NT (N).Nkind = N_Component_Declaration
604 or else NT (N).Nkind = N_Defining_Program_Unit_Name
605 or else NT (N).Nkind = N_Discriminant_Specification
606 or else NT (N).Nkind = N_Entry_Body
607 or else NT (N).Nkind = N_Entry_Declaration
608 or else NT (N).Nkind = N_Entry_Index_Specification
609 or else NT (N).Nkind = N_Exception_Declaration
610 or else NT (N).Nkind = N_Exception_Renaming_Declaration
611 or else NT (N).Nkind = N_Formal_Object_Declaration
612 or else NT (N).Nkind = N_Formal_Package_Declaration
613 or else NT (N).Nkind = N_Formal_Type_Declaration
614 or else NT (N).Nkind = N_Full_Type_Declaration
615 or else NT (N).Nkind = N_Implicit_Label_Declaration
616 or else NT (N).Nkind = N_Incomplete_Type_Declaration
617 or else NT (N).Nkind = N_Loop_Parameter_Specification
618 or else NT (N).Nkind = N_Number_Declaration
619 or else NT (N).Nkind = N_Object_Declaration
620 or else NT (N).Nkind = N_Object_Renaming_Declaration
621 or else NT (N).Nkind = N_Package_Body_Stub
622 or else NT (N).Nkind = N_Parameter_Specification
623 or else NT (N).Nkind = N_Private_Extension_Declaration
624 or else NT (N).Nkind = N_Private_Type_Declaration
625 or else NT (N).Nkind = N_Protected_Body
626 or else NT (N).Nkind = N_Protected_Body_Stub
627 or else NT (N).Nkind = N_Protected_Type_Declaration
628 or else NT (N).Nkind = N_Single_Protected_Declaration
629 or else NT (N).Nkind = N_Single_Task_Declaration
630 or else NT (N).Nkind = N_Subtype_Declaration
631 or else NT (N).Nkind = N_Task_Body
632 or else NT (N).Nkind = N_Task_Body_Stub
633 or else NT (N).Nkind = N_Task_Type_Declaration);
635 end Defining_Identifier;
637 function Defining_Unit_Name
638 (N : Node_Id) return Node_Id is
641 or else NT (N).Nkind = N_Function_Instantiation
642 or else NT (N).Nkind = N_Function_Specification
643 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
644 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
645 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
646 or else NT (N).Nkind = N_Package_Body
647 or else NT (N).Nkind = N_Package_Instantiation
648 or else NT (N).Nkind = N_Package_Renaming_Declaration
649 or else NT (N).Nkind = N_Package_Specification
650 or else NT (N).Nkind = N_Procedure_Instantiation
651 or else NT (N).Nkind = N_Procedure_Specification);
653 end Defining_Unit_Name;
655 function Delay_Alternative
656 (N : Node_Id) return Node_Id is
659 or else NT (N).Nkind = N_Timed_Entry_Call);
661 end Delay_Alternative;
663 function Delay_Finalize_Attach
664 (N : Node_Id) return Boolean is
667 or else NT (N).Nkind = N_Object_Declaration);
669 end Delay_Finalize_Attach;
671 function Delay_Statement
672 (N : Node_Id) return Node_Id is
675 or else NT (N).Nkind = N_Delay_Alternative);
679 function Delta_Expression
680 (N : Node_Id) return Node_Id is
683 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
684 or else NT (N).Nkind = N_Delta_Constraint
685 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
687 end Delta_Expression;
689 function Digits_Expression
690 (N : Node_Id) return Node_Id is
693 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
694 or else NT (N).Nkind = N_Digits_Constraint
695 or else NT (N).Nkind = N_Floating_Point_Definition);
697 end Digits_Expression;
699 function Discr_Check_Funcs_Built
700 (N : Node_Id) return Boolean is
703 or else NT (N).Nkind = N_Full_Type_Declaration);
705 end Discr_Check_Funcs_Built;
707 function Discrete_Choices
708 (N : Node_Id) return List_Id is
711 or else NT (N).Nkind = N_Case_Statement_Alternative
712 or else NT (N).Nkind = N_Variant);
714 end Discrete_Choices;
716 function Discrete_Range
717 (N : Node_Id) return Node_Id is
720 or else NT (N).Nkind = N_Slice);
724 function Discrete_Subtype_Definition
725 (N : Node_Id) return Node_Id is
728 or else NT (N).Nkind = N_Entry_Declaration
729 or else NT (N).Nkind = N_Entry_Index_Specification
730 or else NT (N).Nkind = N_Loop_Parameter_Specification);
732 end Discrete_Subtype_Definition;
734 function Discrete_Subtype_Definitions
735 (N : Node_Id) return List_Id is
738 or else NT (N).Nkind = N_Constrained_Array_Definition);
740 end Discrete_Subtype_Definitions;
742 function Discriminant_Specifications
743 (N : Node_Id) return List_Id is
746 or else NT (N).Nkind = N_Formal_Type_Declaration
747 or else NT (N).Nkind = N_Full_Type_Declaration
748 or else NT (N).Nkind = N_Incomplete_Type_Declaration
749 or else NT (N).Nkind = N_Private_Extension_Declaration
750 or else NT (N).Nkind = N_Private_Type_Declaration
751 or else NT (N).Nkind = N_Protected_Type_Declaration
752 or else NT (N).Nkind = N_Task_Type_Declaration);
754 end Discriminant_Specifications;
756 function Discriminant_Type
757 (N : Node_Id) return Node_Id is
760 or else NT (N).Nkind = N_Discriminant_Specification);
762 end Discriminant_Type;
764 function Do_Accessibility_Check
765 (N : Node_Id) return Boolean is
768 or else NT (N).Nkind = N_Parameter_Specification);
770 end Do_Accessibility_Check;
772 function Do_Discriminant_Check
773 (N : Node_Id) return Boolean is
776 or else NT (N).Nkind = N_Selected_Component);
778 end Do_Discriminant_Check;
780 function Do_Division_Check
781 (N : Node_Id) return Boolean is
784 or else NT (N).Nkind = N_Op_Divide
785 or else NT (N).Nkind = N_Op_Mod
786 or else NT (N).Nkind = N_Op_Rem);
788 end Do_Division_Check;
790 function Do_Length_Check
791 (N : Node_Id) return Boolean is
794 or else NT (N).Nkind = N_Assignment_Statement
795 or else NT (N).Nkind = N_Op_And
796 or else NT (N).Nkind = N_Op_Or
797 or else NT (N).Nkind = N_Op_Xor
798 or else NT (N).Nkind = N_Type_Conversion);
802 function Do_Overflow_Check
803 (N : Node_Id) return Boolean is
806 or else NT (N).Nkind in N_Op
807 or else NT (N).Nkind = N_Attribute_Reference
808 or else NT (N).Nkind = N_Type_Conversion);
810 end Do_Overflow_Check;
812 function Do_Range_Check
813 (N : Node_Id) return Boolean is
816 or else NT (N).Nkind in N_Subexpr);
820 function Do_Storage_Check
821 (N : Node_Id) return Boolean is
824 or else NT (N).Nkind = N_Allocator
825 or else NT (N).Nkind = N_Subprogram_Body);
827 end Do_Storage_Check;
829 function Do_Tag_Check
830 (N : Node_Id) return Boolean is
833 or else NT (N).Nkind = N_Assignment_Statement
834 or else NT (N).Nkind = N_Function_Call
835 or else NT (N).Nkind = N_Procedure_Call_Statement
836 or else NT (N).Nkind = N_Return_Statement
837 or else NT (N).Nkind = N_Type_Conversion);
841 function Elaborate_All_Present
842 (N : Node_Id) return Boolean is
845 or else NT (N).Nkind = N_With_Clause);
847 end Elaborate_All_Present;
849 function Elaborate_Present
850 (N : Node_Id) return Boolean is
853 or else NT (N).Nkind = N_With_Clause);
855 end Elaborate_Present;
857 function Elaboration_Boolean
858 (N : Node_Id) return Node_Id is
861 or else NT (N).Nkind = N_Function_Specification
862 or else NT (N).Nkind = N_Procedure_Specification);
864 end Elaboration_Boolean;
866 function Else_Actions
867 (N : Node_Id) return List_Id is
870 or else NT (N).Nkind = N_Conditional_Expression);
874 function Else_Statements
875 (N : Node_Id) return List_Id is
878 or else NT (N).Nkind = N_Conditional_Entry_Call
879 or else NT (N).Nkind = N_If_Statement
880 or else NT (N).Nkind = N_Selective_Accept);
885 (N : Node_Id) return List_Id is
888 or else NT (N).Nkind = N_If_Statement);
892 function Enclosing_Variant
893 (N : Node_Id) return Node_Id is
896 or else NT (N).Nkind = N_Variant);
898 end Enclosing_Variant;
901 (N : Node_Id) return Node_Id is
904 or else NT (N).Nkind = N_Enumeration_Type_Definition
905 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
906 or else NT (N).Nkind = N_Loop_Statement
907 or else NT (N).Nkind = N_Package_Specification
908 or else NT (N).Nkind = N_Protected_Body
909 or else NT (N).Nkind = N_Protected_Definition
910 or else NT (N).Nkind = N_Record_Definition
911 or else NT (N).Nkind = N_Task_Definition);
916 (N : Node_Id) return Uint is
919 or else NT (N).Nkind = N_Case_Statement
920 or else NT (N).Nkind = N_If_Statement);
925 (N : Node_Id) return Node_Id is
928 or else NT (N).Nkind in N_Has_Entity
929 or else NT (N).Nkind = N_Freeze_Entity);
933 function Entry_Body_Formal_Part
934 (N : Node_Id) return Node_Id is
937 or else NT (N).Nkind = N_Entry_Body);
939 end Entry_Body_Formal_Part;
941 function Entry_Call_Alternative
942 (N : Node_Id) return Node_Id is
945 or else NT (N).Nkind = N_Conditional_Entry_Call
946 or else NT (N).Nkind = N_Timed_Entry_Call);
948 end Entry_Call_Alternative;
950 function Entry_Call_Statement
951 (N : Node_Id) return Node_Id is
954 or else NT (N).Nkind = N_Entry_Call_Alternative);
956 end Entry_Call_Statement;
958 function Entry_Direct_Name
959 (N : Node_Id) return Node_Id is
962 or else NT (N).Nkind = N_Accept_Statement);
964 end Entry_Direct_Name;
967 (N : Node_Id) return Node_Id is
970 or else NT (N).Nkind = N_Accept_Statement);
974 function Entry_Index_Specification
975 (N : Node_Id) return Node_Id is
978 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
980 end Entry_Index_Specification;
983 (N : Node_Id) return Node_Id is
986 or else NT (N).Nkind in N_Has_Etype);
990 function Exception_Choices
991 (N : Node_Id) return List_Id is
994 or else NT (N).Nkind = N_Exception_Handler);
996 end Exception_Choices;
998 function Exception_Handlers
999 (N : Node_Id) return List_Id is
1001 pragma Assert (False
1002 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1004 end Exception_Handlers;
1006 function Exception_Junk
1007 (N : Node_Id) return Boolean is
1009 pragma Assert (False
1010 or else NT (N).Nkind = N_Goto_Statement
1011 or else NT (N).Nkind = N_Label
1012 or else NT (N).Nkind = N_Object_Declaration
1013 or else NT (N).Nkind = N_Subtype_Declaration);
1017 function Expansion_Delayed
1018 (N : Node_Id) return Boolean is
1020 pragma Assert (False
1021 or else NT (N).Nkind = N_Aggregate
1022 or else NT (N).Nkind = N_Extension_Aggregate);
1024 end Expansion_Delayed;
1026 function Explicit_Actual_Parameter
1027 (N : Node_Id) return Node_Id is
1029 pragma Assert (False
1030 or else NT (N).Nkind = N_Parameter_Association);
1032 end Explicit_Actual_Parameter;
1034 function Explicit_Generic_Actual_Parameter
1035 (N : Node_Id) return Node_Id is
1037 pragma Assert (False
1038 or else NT (N).Nkind = N_Generic_Association);
1040 end Explicit_Generic_Actual_Parameter;
1043 (N : Node_Id) return Node_Id is
1045 pragma Assert (False
1046 or else NT (N).Nkind = N_Allocator
1047 or else NT (N).Nkind = N_Assignment_Statement
1048 or else NT (N).Nkind = N_At_Clause
1049 or else NT (N).Nkind = N_Attribute_Definition_Clause
1050 or else NT (N).Nkind = N_Case_Statement
1051 or else NT (N).Nkind = N_Code_Statement
1052 or else NT (N).Nkind = N_Component_Association
1053 or else NT (N).Nkind = N_Component_Declaration
1054 or else NT (N).Nkind = N_Delay_Relative_Statement
1055 or else NT (N).Nkind = N_Delay_Until_Statement
1056 or else NT (N).Nkind = N_Discriminant_Association
1057 or else NT (N).Nkind = N_Discriminant_Specification
1058 or else NT (N).Nkind = N_Exception_Declaration
1059 or else NT (N).Nkind = N_Formal_Object_Declaration
1060 or else NT (N).Nkind = N_Free_Statement
1061 or else NT (N).Nkind = N_Mod_Clause
1062 or else NT (N).Nkind = N_Modular_Type_Definition
1063 or else NT (N).Nkind = N_Number_Declaration
1064 or else NT (N).Nkind = N_Object_Declaration
1065 or else NT (N).Nkind = N_Parameter_Specification
1066 or else NT (N).Nkind = N_Pragma_Argument_Association
1067 or else NT (N).Nkind = N_Qualified_Expression
1068 or else NT (N).Nkind = N_Return_Statement
1069 or else NT (N).Nkind = N_Type_Conversion
1070 or else NT (N).Nkind = N_Unchecked_Expression
1071 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1075 function Expressions
1076 (N : Node_Id) return List_Id is
1078 pragma Assert (False
1079 or else NT (N).Nkind = N_Aggregate
1080 or else NT (N).Nkind = N_Attribute_Reference
1081 or else NT (N).Nkind = N_Conditional_Expression
1082 or else NT (N).Nkind = N_Extension_Aggregate
1083 or else NT (N).Nkind = N_Indexed_Component);
1088 (N : Node_Id) return Node_Id is
1090 pragma Assert (False
1091 or else NT (N).Nkind = N_Component_Clause);
1095 function First_Inlined_Subprogram
1096 (N : Node_Id) return Entity_Id is
1098 pragma Assert (False
1099 or else NT (N).Nkind = N_Compilation_Unit);
1101 end First_Inlined_Subprogram;
1104 (N : Node_Id) return Boolean is
1106 pragma Assert (False
1107 or else NT (N).Nkind = N_With_Clause);
1111 function First_Named_Actual
1112 (N : Node_Id) return Node_Id is
1114 pragma Assert (False
1115 or else NT (N).Nkind = N_Entry_Call_Statement
1116 or else NT (N).Nkind = N_Function_Call
1117 or else NT (N).Nkind = N_Procedure_Call_Statement);
1119 end First_Named_Actual;
1121 function First_Real_Statement
1122 (N : Node_Id) return Node_Id is
1124 pragma Assert (False
1125 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1127 end First_Real_Statement;
1129 function First_Subtype_Link
1130 (N : Node_Id) return Entity_Id is
1132 pragma Assert (False
1133 or else NT (N).Nkind = N_Freeze_Entity);
1135 end First_Subtype_Link;
1137 function Float_Truncate
1138 (N : Node_Id) return Boolean is
1140 pragma Assert (False
1141 or else NT (N).Nkind = N_Type_Conversion);
1145 function Formal_Type_Definition
1146 (N : Node_Id) return Node_Id is
1148 pragma Assert (False
1149 or else NT (N).Nkind = N_Formal_Type_Declaration);
1151 end Formal_Type_Definition;
1153 function Forwards_OK
1154 (N : Node_Id) return Boolean is
1156 pragma Assert (False
1157 or else NT (N).Nkind = N_Assignment_Statement);
1161 function From_At_Mod
1162 (N : Node_Id) return Boolean is
1164 pragma Assert (False
1165 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1169 function Generic_Associations
1170 (N : Node_Id) return List_Id is
1172 pragma Assert (False
1173 or else NT (N).Nkind = N_Formal_Package_Declaration
1174 or else NT (N).Nkind = N_Function_Instantiation
1175 or else NT (N).Nkind = N_Package_Instantiation
1176 or else NT (N).Nkind = N_Procedure_Instantiation);
1178 end Generic_Associations;
1180 function Generic_Formal_Declarations
1181 (N : Node_Id) return List_Id is
1183 pragma Assert (False
1184 or else NT (N).Nkind = N_Generic_Package_Declaration
1185 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1187 end Generic_Formal_Declarations;
1189 function Generic_Parent
1190 (N : Node_Id) return Node_Id is
1192 pragma Assert (False
1193 or else NT (N).Nkind = N_Function_Specification
1194 or else NT (N).Nkind = N_Package_Specification
1195 or else NT (N).Nkind = N_Procedure_Specification);
1199 function Generic_Parent_Type
1200 (N : Node_Id) return Node_Id is
1202 pragma Assert (False
1203 or else NT (N).Nkind = N_Subtype_Declaration);
1205 end Generic_Parent_Type;
1207 function Handled_Statement_Sequence
1208 (N : Node_Id) return Node_Id is
1210 pragma Assert (False
1211 or else NT (N).Nkind = N_Accept_Statement
1212 or else NT (N).Nkind = N_Block_Statement
1213 or else NT (N).Nkind = N_Entry_Body
1214 or else NT (N).Nkind = N_Package_Body
1215 or else NT (N).Nkind = N_Subprogram_Body
1216 or else NT (N).Nkind = N_Task_Body);
1218 end Handled_Statement_Sequence;
1220 function Handler_List_Entry
1221 (N : Node_Id) return Node_Id is
1223 pragma Assert (False
1224 or else NT (N).Nkind = N_Object_Declaration);
1226 end Handler_List_Entry;
1228 function Has_Created_Identifier
1229 (N : Node_Id) return Boolean is
1231 pragma Assert (False
1232 or else NT (N).Nkind = N_Block_Statement
1233 or else NT (N).Nkind = N_Loop_Statement);
1235 end Has_Created_Identifier;
1237 function Has_Dynamic_Length_Check
1238 (N : Node_Id) return Boolean is
1241 end Has_Dynamic_Length_Check;
1243 function Has_Dynamic_Range_Check
1244 (N : Node_Id) return Boolean is
1247 end Has_Dynamic_Range_Check;
1249 function Has_No_Elaboration_Code
1250 (N : Node_Id) return Boolean is
1252 pragma Assert (False
1253 or else NT (N).Nkind = N_Compilation_Unit);
1255 end Has_No_Elaboration_Code;
1257 function Has_Priority_Pragma
1258 (N : Node_Id) return Boolean is
1260 pragma Assert (False
1261 or else NT (N).Nkind = N_Protected_Definition
1262 or else NT (N).Nkind = N_Subprogram_Body
1263 or else NT (N).Nkind = N_Task_Definition);
1265 end Has_Priority_Pragma;
1267 function Has_Private_View
1268 (N : Node_Id) return Boolean is
1270 pragma Assert (False
1271 or else NT (N).Nkind in N_Op
1272 or else NT (N).Nkind = N_Character_Literal
1273 or else NT (N).Nkind = N_Expanded_Name
1274 or else NT (N).Nkind = N_Identifier
1275 or else NT (N).Nkind = N_Operator_Symbol);
1277 end Has_Private_View;
1279 function Has_Storage_Size_Pragma
1280 (N : Node_Id) return Boolean is
1282 pragma Assert (False
1283 or else NT (N).Nkind = N_Task_Definition);
1285 end Has_Storage_Size_Pragma;
1287 function Has_Task_Info_Pragma
1288 (N : Node_Id) return Boolean is
1290 pragma Assert (False
1291 or else NT (N).Nkind = N_Task_Definition);
1293 end Has_Task_Info_Pragma;
1295 function Has_Task_Name_Pragma
1296 (N : Node_Id) return Boolean is
1298 pragma Assert (False
1299 or else NT (N).Nkind = N_Task_Definition);
1301 end Has_Task_Name_Pragma;
1303 function Has_Wide_Character
1304 (N : Node_Id) return Boolean is
1306 pragma Assert (False
1307 or else NT (N).Nkind = N_String_Literal);
1309 end Has_Wide_Character;
1311 function Hidden_By_Use_Clause
1312 (N : Node_Id) return Elist_Id is
1314 pragma Assert (False
1315 or else NT (N).Nkind = N_Use_Package_Clause
1316 or else NT (N).Nkind = N_Use_Type_Clause);
1318 end Hidden_By_Use_Clause;
1321 (N : Node_Id) return Node_Id is
1323 pragma Assert (False
1324 or else NT (N).Nkind = N_Range
1325 or else NT (N).Nkind = N_Real_Range_Specification
1326 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1331 (N : Node_Id) return Node_Id is
1333 pragma Assert (False
1334 or else NT (N).Nkind = N_At_Clause
1335 or else NT (N).Nkind = N_Block_Statement
1336 or else NT (N).Nkind = N_Designator
1337 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1338 or else NT (N).Nkind = N_Label
1339 or else NT (N).Nkind = N_Loop_Statement
1340 or else NT (N).Nkind = N_Record_Representation_Clause
1341 or else NT (N).Nkind = N_Subprogram_Info);
1345 function Implicit_With
1346 (N : Node_Id) return Boolean is
1348 pragma Assert (False
1349 or else NT (N).Nkind = N_With_Clause);
1354 (N : Node_Id) return Boolean is
1356 pragma Assert (False
1357 or else NT (N).Nkind = N_Formal_Object_Declaration
1358 or else NT (N).Nkind = N_Parameter_Specification);
1362 function Includes_Infinities
1363 (N : Node_Id) return Boolean is
1365 pragma Assert (False
1366 or else NT (N).Nkind = N_Range);
1368 end Includes_Infinities;
1370 function Instance_Spec
1371 (N : Node_Id) return Node_Id is
1373 pragma Assert (False
1374 or else NT (N).Nkind = N_Formal_Package_Declaration
1375 or else NT (N).Nkind = N_Function_Instantiation
1376 or else NT (N).Nkind = N_Package_Instantiation
1377 or else NT (N).Nkind = N_Procedure_Instantiation);
1382 (N : Node_Id) return Uint is
1384 pragma Assert (False
1385 or else NT (N).Nkind = N_Integer_Literal);
1389 function Is_Asynchronous_Call_Block
1390 (N : Node_Id) return Boolean is
1392 pragma Assert (False
1393 or else NT (N).Nkind = N_Block_Statement);
1395 end Is_Asynchronous_Call_Block;
1397 function Is_Component_Left_Opnd
1398 (N : Node_Id) return Boolean is
1400 pragma Assert (False
1401 or else NT (N).Nkind = N_Op_Concat);
1403 end Is_Component_Left_Opnd;
1405 function Is_Component_Right_Opnd
1406 (N : Node_Id) return Boolean is
1408 pragma Assert (False
1409 or else NT (N).Nkind = N_Op_Concat);
1411 end Is_Component_Right_Opnd;
1413 function Is_Controlling_Actual
1414 (N : Node_Id) return Boolean is
1416 pragma Assert (False
1417 or else NT (N).Nkind in N_Subexpr);
1419 end Is_Controlling_Actual;
1421 function Is_In_Discriminant_Check
1422 (N : Node_Id) return Boolean is
1424 pragma Assert (False
1425 or else NT (N).Nkind = N_Selected_Component);
1427 end Is_In_Discriminant_Check;
1429 function Is_Machine_Number
1430 (N : Node_Id) return Boolean is
1432 pragma Assert (False
1433 or else NT (N).Nkind = N_Real_Literal);
1435 end Is_Machine_Number;
1437 function Is_Null_Loop
1438 (N : Node_Id) return Boolean is
1440 pragma Assert (False
1441 or else NT (N).Nkind = N_Loop_Statement);
1445 function Is_Overloaded
1446 (N : Node_Id) return Boolean is
1448 pragma Assert (False
1449 or else NT (N).Nkind in N_Subexpr);
1453 function Is_Power_Of_2_For_Shift
1454 (N : Node_Id) return Boolean is
1456 pragma Assert (False
1457 or else NT (N).Nkind = N_Op_Expon);
1459 end Is_Power_Of_2_For_Shift;
1461 function Is_Protected_Subprogram_Body
1462 (N : Node_Id) return Boolean is
1464 pragma Assert (False
1465 or else NT (N).Nkind = N_Subprogram_Body);
1467 end Is_Protected_Subprogram_Body;
1469 function Is_Static_Expression
1470 (N : Node_Id) return Boolean is
1472 pragma Assert (False
1473 or else NT (N).Nkind in N_Subexpr);
1475 end Is_Static_Expression;
1477 function Is_Subprogram_Descriptor
1478 (N : Node_Id) return Boolean is
1480 pragma Assert (False
1481 or else NT (N).Nkind = N_Object_Declaration);
1483 end Is_Subprogram_Descriptor;
1485 function Is_Task_Allocation_Block
1486 (N : Node_Id) return Boolean is
1488 pragma Assert (False
1489 or else NT (N).Nkind = N_Block_Statement);
1491 end Is_Task_Allocation_Block;
1493 function Is_Task_Master
1494 (N : Node_Id) return Boolean is
1496 pragma Assert (False
1497 or else NT (N).Nkind = N_Block_Statement
1498 or else NT (N).Nkind = N_Subprogram_Body
1499 or else NT (N).Nkind = N_Task_Body);
1503 function Iteration_Scheme
1504 (N : Node_Id) return Node_Id is
1506 pragma Assert (False
1507 or else NT (N).Nkind = N_Loop_Statement);
1509 end Iteration_Scheme;
1512 (N : Node_Id) return Node_Id is
1514 pragma Assert (False
1515 or else NT (N).Nkind = N_Itype_Reference);
1519 function Kill_Range_Check
1520 (N : Node_Id) return Boolean is
1522 pragma Assert (False
1523 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1525 end Kill_Range_Check;
1527 function Label_Construct
1528 (N : Node_Id) return Node_Id is
1530 pragma Assert (False
1531 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1533 end Label_Construct;
1536 (N : Node_Id) return Node_Id is
1538 pragma Assert (False
1539 or else NT (N).Nkind = N_Component_Clause);
1544 (N : Node_Id) return Boolean is
1546 pragma Assert (False
1547 or else NT (N).Nkind = N_With_Clause);
1552 (N : Node_Id) return Node_Id is
1554 pragma Assert (False
1555 or else NT (N).Nkind = N_And_Then
1556 or else NT (N).Nkind = N_In
1557 or else NT (N).Nkind = N_Not_In
1558 or else NT (N).Nkind = N_Or_Else
1559 or else NT (N).Nkind in N_Binary_Op);
1563 function Library_Unit
1564 (N : Node_Id) return Node_Id is
1566 pragma Assert (False
1567 or else NT (N).Nkind = N_Compilation_Unit
1568 or else NT (N).Nkind = N_Package_Body_Stub
1569 or else NT (N).Nkind = N_Protected_Body_Stub
1570 or else NT (N).Nkind = N_Subprogram_Body_Stub
1571 or else NT (N).Nkind = N_Task_Body_Stub
1572 or else NT (N).Nkind = N_With_Clause);
1576 function Limited_View_Installed
1577 (N : Node_Id) return Boolean is
1579 pragma Assert (False
1580 or else NT (N).Nkind = N_Package_Specification
1581 or else NT (N).Nkind = N_With_Clause);
1583 end Limited_View_Installed;
1585 function Limited_Present
1586 (N : Node_Id) return Boolean is
1588 pragma Assert (False
1589 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1590 or else NT (N).Nkind = N_Private_Type_Declaration
1591 or else NT (N).Nkind = N_Record_Definition
1592 or else NT (N).Nkind = N_With_Clause);
1594 end Limited_Present;
1597 (N : Node_Id) return List_Id is
1599 pragma Assert (False
1600 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1604 function Loop_Actions
1605 (N : Node_Id) return List_Id is
1607 pragma Assert (False
1608 or else NT (N).Nkind = N_Component_Association);
1612 function Loop_Parameter_Specification
1613 (N : Node_Id) return Node_Id is
1615 pragma Assert (False
1616 or else NT (N).Nkind = N_Iteration_Scheme);
1618 end Loop_Parameter_Specification;
1621 (N : Node_Id) return Node_Id is
1623 pragma Assert (False
1624 or else NT (N).Nkind = N_Range
1625 or else NT (N).Nkind = N_Real_Range_Specification
1626 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1631 (N : Node_Id) return Node_Id is
1633 pragma Assert (False
1634 or else NT (N).Nkind = N_Record_Representation_Clause);
1639 (N : Node_Id) return Boolean is
1641 pragma Assert (False
1642 or else NT (N).Nkind = N_Component_Declaration
1643 or else NT (N).Nkind = N_Discriminant_Specification
1644 or else NT (N).Nkind = N_Exception_Declaration
1645 or else NT (N).Nkind = N_Formal_Object_Declaration
1646 or else NT (N).Nkind = N_Number_Declaration
1647 or else NT (N).Nkind = N_Object_Declaration
1648 or else NT (N).Nkind = N_Parameter_Specification);
1652 function Must_Be_Byte_Aligned
1653 (N : Node_Id) return Boolean is
1655 pragma Assert (False
1656 or else NT (N).Nkind = N_Attribute_Reference);
1658 end Must_Be_Byte_Aligned;
1660 function Must_Not_Freeze
1661 (N : Node_Id) return Boolean is
1663 pragma Assert (False
1664 or else NT (N).Nkind = N_Subtype_Indication
1665 or else NT (N).Nkind in N_Subexpr);
1667 end Must_Not_Freeze;
1670 (N : Node_Id) return Node_Id is
1672 pragma Assert (False
1673 or else NT (N).Nkind = N_Assignment_Statement
1674 or else NT (N).Nkind = N_Attribute_Definition_Clause
1675 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1676 or else NT (N).Nkind = N_Designator
1677 or else NT (N).Nkind = N_Entry_Call_Statement
1678 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1679 or else NT (N).Nkind = N_Exit_Statement
1680 or else NT (N).Nkind = N_Formal_Package_Declaration
1681 or else NT (N).Nkind = N_Function_Call
1682 or else NT (N).Nkind = N_Function_Instantiation
1683 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1684 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1685 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1686 or else NT (N).Nkind = N_Goto_Statement
1687 or else NT (N).Nkind = N_Object_Renaming_Declaration
1688 or else NT (N).Nkind = N_Package_Instantiation
1689 or else NT (N).Nkind = N_Package_Renaming_Declaration
1690 or else NT (N).Nkind = N_Procedure_Call_Statement
1691 or else NT (N).Nkind = N_Procedure_Instantiation
1692 or else NT (N).Nkind = N_Raise_Statement
1693 or else NT (N).Nkind = N_Requeue_Statement
1694 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1695 or else NT (N).Nkind = N_Subunit
1696 or else NT (N).Nkind = N_Variant_Part
1697 or else NT (N).Nkind = N_With_Clause
1698 or else NT (N).Nkind = N_With_Type_Clause);
1703 (N : Node_Id) return List_Id is
1705 pragma Assert (False
1706 or else NT (N).Nkind = N_Abort_Statement
1707 or else NT (N).Nkind = N_Use_Package_Clause);
1711 function Next_Entity
1712 (N : Node_Id) return Node_Id is
1714 pragma Assert (False
1715 or else NT (N).Nkind = N_Defining_Character_Literal
1716 or else NT (N).Nkind = N_Defining_Identifier
1717 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1721 function Next_Named_Actual
1722 (N : Node_Id) return Node_Id is
1724 pragma Assert (False
1725 or else NT (N).Nkind = N_Parameter_Association);
1727 end Next_Named_Actual;
1729 function Next_Rep_Item
1730 (N : Node_Id) return Node_Id is
1732 pragma Assert (False
1733 or else NT (N).Nkind = N_Attribute_Definition_Clause
1734 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1735 or else NT (N).Nkind = N_Pragma
1736 or else NT (N).Nkind = N_Record_Representation_Clause);
1740 function Next_Use_Clause
1741 (N : Node_Id) return Node_Id is
1743 pragma Assert (False
1744 or else NT (N).Nkind = N_Use_Package_Clause
1745 or else NT (N).Nkind = N_Use_Type_Clause);
1747 end Next_Use_Clause;
1749 function No_Ctrl_Actions
1750 (N : Node_Id) return Boolean is
1752 pragma Assert (False
1753 or else NT (N).Nkind = N_Assignment_Statement);
1755 end No_Ctrl_Actions;
1757 function No_Entities_Ref_In_Spec
1758 (N : Node_Id) return Boolean is
1760 pragma Assert (False
1761 or else NT (N).Nkind = N_With_Clause);
1763 end No_Entities_Ref_In_Spec;
1765 function No_Initialization
1766 (N : Node_Id) return Boolean is
1768 pragma Assert (False
1769 or else NT (N).Nkind = N_Allocator
1770 or else NT (N).Nkind = N_Object_Declaration);
1772 end No_Initialization;
1774 function No_Truncation
1775 (N : Node_Id) return Boolean is
1777 pragma Assert (False
1778 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1782 function Null_Present
1783 (N : Node_Id) return Boolean is
1785 pragma Assert (False
1786 or else NT (N).Nkind = N_Component_List
1787 or else NT (N).Nkind = N_Record_Definition);
1791 function Null_Record_Present
1792 (N : Node_Id) return Boolean is
1794 pragma Assert (False
1795 or else NT (N).Nkind = N_Aggregate
1796 or else NT (N).Nkind = N_Extension_Aggregate);
1798 end Null_Record_Present;
1800 function Object_Definition
1801 (N : Node_Id) return Node_Id is
1803 pragma Assert (False
1804 or else NT (N).Nkind = N_Object_Declaration);
1806 end Object_Definition;
1808 function OK_For_Stream
1809 (N : Node_Id) return Boolean is
1811 pragma Assert (False
1812 or else NT (N).Nkind = N_Attribute_Reference);
1816 function Original_Discriminant
1817 (N : Node_Id) return Node_Id is
1819 pragma Assert (False
1820 or else NT (N).Nkind = N_Identifier);
1822 end Original_Discriminant;
1824 function Original_Entity
1825 (N : Node_Id) return Entity_Id is
1827 pragma Assert (False
1828 or else NT (N).Nkind = N_Integer_Literal
1829 or else NT (N).Nkind = N_Real_Literal);
1831 end Original_Entity;
1833 function Others_Discrete_Choices
1834 (N : Node_Id) return List_Id is
1836 pragma Assert (False
1837 or else NT (N).Nkind = N_Others_Choice);
1839 end Others_Discrete_Choices;
1841 function Out_Present
1842 (N : Node_Id) return Boolean is
1844 pragma Assert (False
1845 or else NT (N).Nkind = N_Formal_Object_Declaration
1846 or else NT (N).Nkind = N_Parameter_Specification);
1850 function Parameter_Associations
1851 (N : Node_Id) return List_Id is
1853 pragma Assert (False
1854 or else NT (N).Nkind = N_Entry_Call_Statement
1855 or else NT (N).Nkind = N_Function_Call
1856 or else NT (N).Nkind = N_Procedure_Call_Statement);
1858 end Parameter_Associations;
1860 function Parameter_List_Truncated
1861 (N : Node_Id) return Boolean is
1863 pragma Assert (False
1864 or else NT (N).Nkind = N_Function_Call
1865 or else NT (N).Nkind = N_Procedure_Call_Statement);
1867 end Parameter_List_Truncated;
1869 function Parameter_Specifications
1870 (N : Node_Id) return List_Id is
1872 pragma Assert (False
1873 or else NT (N).Nkind = N_Accept_Statement
1874 or else NT (N).Nkind = N_Access_Function_Definition
1875 or else NT (N).Nkind = N_Access_Procedure_Definition
1876 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1877 or else NT (N).Nkind = N_Entry_Declaration
1878 or else NT (N).Nkind = N_Function_Specification
1879 or else NT (N).Nkind = N_Procedure_Specification);
1881 end Parameter_Specifications;
1883 function Parameter_Type
1884 (N : Node_Id) return Node_Id is
1886 pragma Assert (False
1887 or else NT (N).Nkind = N_Parameter_Specification);
1891 function Parent_Spec
1892 (N : Node_Id) return Node_Id is
1894 pragma Assert (False
1895 or else NT (N).Nkind = N_Function_Instantiation
1896 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1897 or else NT (N).Nkind = N_Generic_Package_Declaration
1898 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1899 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1900 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1901 or else NT (N).Nkind = N_Package_Declaration
1902 or else NT (N).Nkind = N_Package_Instantiation
1903 or else NT (N).Nkind = N_Package_Renaming_Declaration
1904 or else NT (N).Nkind = N_Procedure_Instantiation
1905 or else NT (N).Nkind = N_Subprogram_Declaration
1906 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1911 (N : Node_Id) return Node_Id is
1913 pragma Assert (False
1914 or else NT (N).Nkind = N_Component_Clause);
1918 function Pragma_Argument_Associations
1919 (N : Node_Id) return List_Id is
1921 pragma Assert (False
1922 or else NT (N).Nkind = N_Pragma);
1924 end Pragma_Argument_Associations;
1926 function Pragmas_After
1927 (N : Node_Id) return List_Id is
1929 pragma Assert (False
1930 or else NT (N).Nkind = N_Compilation_Unit_Aux
1931 or else NT (N).Nkind = N_Terminate_Alternative);
1935 function Pragmas_Before
1936 (N : Node_Id) return List_Id is
1938 pragma Assert (False
1939 or else NT (N).Nkind = N_Accept_Alternative
1940 or else NT (N).Nkind = N_Delay_Alternative
1941 or else NT (N).Nkind = N_Entry_Call_Alternative
1942 or else NT (N).Nkind = N_Mod_Clause
1943 or else NT (N).Nkind = N_Terminate_Alternative
1944 or else NT (N).Nkind = N_Triggering_Alternative);
1949 (N : Node_Id) return Node_Id is
1951 pragma Assert (False
1952 or else NT (N).Nkind = N_Attribute_Reference
1953 or else NT (N).Nkind = N_Expanded_Name
1954 or else NT (N).Nkind = N_Explicit_Dereference
1955 or else NT (N).Nkind = N_Indexed_Component
1956 or else NT (N).Nkind = N_Reference
1957 or else NT (N).Nkind = N_Selected_Component
1958 or else NT (N).Nkind = N_Slice);
1962 function Present_Expr
1963 (N : Node_Id) return Uint is
1965 pragma Assert (False
1966 or else NT (N).Nkind = N_Variant);
1971 (N : Node_Id) return Boolean is
1973 pragma Assert (False
1974 or else NT (N).Nkind = N_Component_Declaration
1975 or else NT (N).Nkind = N_Discriminant_Specification
1976 or else NT (N).Nkind = N_Exception_Declaration
1977 or else NT (N).Nkind = N_Formal_Object_Declaration
1978 or else NT (N).Nkind = N_Number_Declaration
1979 or else NT (N).Nkind = N_Object_Declaration
1980 or else NT (N).Nkind = N_Parameter_Specification);
1984 function Print_In_Hex
1985 (N : Node_Id) return Boolean is
1987 pragma Assert (False
1988 or else NT (N).Nkind = N_Integer_Literal);
1992 function Private_Declarations
1993 (N : Node_Id) return List_Id is
1995 pragma Assert (False
1996 or else NT (N).Nkind = N_Package_Specification
1997 or else NT (N).Nkind = N_Protected_Definition
1998 or else NT (N).Nkind = N_Task_Definition);
2000 end Private_Declarations;
2002 function Private_Present
2003 (N : Node_Id) return Boolean is
2005 pragma Assert (False
2006 or else NT (N).Nkind = N_Compilation_Unit
2007 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
2009 end Private_Present;
2011 function Procedure_To_Call
2012 (N : Node_Id) return Node_Id is
2014 pragma Assert (False
2015 or else NT (N).Nkind = N_Allocator
2016 or else NT (N).Nkind = N_Free_Statement
2017 or else NT (N).Nkind = N_Return_Statement);
2019 end Procedure_To_Call;
2021 function Proper_Body
2022 (N : Node_Id) return Node_Id is
2024 pragma Assert (False
2025 or else NT (N).Nkind = N_Subunit);
2029 function Protected_Definition
2030 (N : Node_Id) return Node_Id is
2032 pragma Assert (False
2033 or else NT (N).Nkind = N_Protected_Type_Declaration
2034 or else NT (N).Nkind = N_Single_Protected_Declaration);
2036 end Protected_Definition;
2038 function Protected_Present
2039 (N : Node_Id) return Boolean is
2041 pragma Assert (False
2042 or else NT (N).Nkind = N_Access_Function_Definition
2043 or else NT (N).Nkind = N_Access_Procedure_Definition);
2045 end Protected_Present;
2047 function Raises_Constraint_Error
2048 (N : Node_Id) return Boolean is
2050 pragma Assert (False
2051 or else NT (N).Nkind in N_Subexpr);
2053 end Raises_Constraint_Error;
2055 function Range_Constraint
2056 (N : Node_Id) return Node_Id is
2058 pragma Assert (False
2059 or else NT (N).Nkind = N_Delta_Constraint
2060 or else NT (N).Nkind = N_Digits_Constraint);
2062 end Range_Constraint;
2064 function Range_Expression
2065 (N : Node_Id) return Node_Id is
2067 pragma Assert (False
2068 or else NT (N).Nkind = N_Range_Constraint);
2070 end Range_Expression;
2072 function Real_Range_Specification
2073 (N : Node_Id) return Node_Id is
2075 pragma Assert (False
2076 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2077 or else NT (N).Nkind = N_Floating_Point_Definition
2078 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2080 end Real_Range_Specification;
2083 (N : Node_Id) return Ureal is
2085 pragma Assert (False
2086 or else NT (N).Nkind = N_Real_Literal);
2091 (N : Node_Id) return Uint is
2093 pragma Assert (False
2094 or else NT (N).Nkind = N_Raise_Constraint_Error
2095 or else NT (N).Nkind = N_Raise_Program_Error
2096 or else NT (N).Nkind = N_Raise_Storage_Error);
2100 function Record_Extension_Part
2101 (N : Node_Id) return Node_Id is
2103 pragma Assert (False
2104 or else NT (N).Nkind = N_Derived_Type_Definition);
2106 end Record_Extension_Part;
2108 function Redundant_Use
2109 (N : Node_Id) return Boolean is
2111 pragma Assert (False
2112 or else NT (N).Nkind = N_Attribute_Reference
2113 or else NT (N).Nkind = N_Expanded_Name
2114 or else NT (N).Nkind = N_Identifier);
2118 function Return_Type
2119 (N : Node_Id) return Node_Id is
2121 pragma Assert (False
2122 or else NT (N).Nkind = N_Return_Statement);
2126 function Reverse_Present
2127 (N : Node_Id) return Boolean is
2129 pragma Assert (False
2130 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2132 end Reverse_Present;
2135 (N : Node_Id) return Node_Id is
2137 pragma Assert (False
2138 or else NT (N).Nkind in N_Op
2139 or else NT (N).Nkind = N_And_Then
2140 or else NT (N).Nkind = N_In
2141 or else NT (N).Nkind = N_Not_In
2142 or else NT (N).Nkind = N_Or_Else);
2146 function Rounded_Result
2147 (N : Node_Id) return Boolean is
2149 pragma Assert (False
2150 or else NT (N).Nkind = N_Op_Divide
2151 or else NT (N).Nkind = N_Op_Multiply
2152 or else NT (N).Nkind = N_Type_Conversion);
2157 (N : Node_Id) return Node_Id is
2159 pragma Assert (False
2160 or else NT (N).Nkind = N_Defining_Character_Literal
2161 or else NT (N).Nkind = N_Defining_Identifier
2162 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2166 function Select_Alternatives
2167 (N : Node_Id) return List_Id is
2169 pragma Assert (False
2170 or else NT (N).Nkind = N_Selective_Accept);
2172 end Select_Alternatives;
2174 function Selector_Name
2175 (N : Node_Id) return Node_Id is
2177 pragma Assert (False
2178 or else NT (N).Nkind = N_Expanded_Name
2179 or else NT (N).Nkind = N_Generic_Association
2180 or else NT (N).Nkind = N_Parameter_Association
2181 or else NT (N).Nkind = N_Selected_Component);
2185 function Selector_Names
2186 (N : Node_Id) return List_Id is
2188 pragma Assert (False
2189 or else NT (N).Nkind = N_Discriminant_Association);
2193 function Shift_Count_OK
2194 (N : Node_Id) return Boolean is
2196 pragma Assert (False
2197 or else NT (N).Nkind = N_Op_Rotate_Left
2198 or else NT (N).Nkind = N_Op_Rotate_Right
2199 or else NT (N).Nkind = N_Op_Shift_Left
2200 or else NT (N).Nkind = N_Op_Shift_Right
2201 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2205 function Source_Type
2206 (N : Node_Id) return Entity_Id is
2208 pragma Assert (False
2209 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2213 function Specification
2214 (N : Node_Id) return Node_Id is
2216 pragma Assert (False
2217 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2218 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2219 or else NT (N).Nkind = N_Generic_Package_Declaration
2220 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2221 or else NT (N).Nkind = N_Package_Declaration
2222 or else NT (N).Nkind = N_Subprogram_Body
2223 or else NT (N).Nkind = N_Subprogram_Body_Stub
2224 or else NT (N).Nkind = N_Subprogram_Declaration
2225 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2230 (N : Node_Id) return List_Id is
2232 pragma Assert (False
2233 or else NT (N).Nkind = N_Abortable_Part
2234 or else NT (N).Nkind = N_Accept_Alternative
2235 or else NT (N).Nkind = N_Case_Statement_Alternative
2236 or else NT (N).Nkind = N_Delay_Alternative
2237 or else NT (N).Nkind = N_Entry_Call_Alternative
2238 or else NT (N).Nkind = N_Exception_Handler
2239 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2240 or else NT (N).Nkind = N_Loop_Statement
2241 or else NT (N).Nkind = N_Triggering_Alternative);
2245 function Static_Processing_OK
2246 (N : Node_Id) return Boolean is
2248 pragma Assert (False
2249 or else NT (N).Nkind = N_Aggregate);
2251 end Static_Processing_OK;
2253 function Storage_Pool
2254 (N : Node_Id) return Node_Id is
2256 pragma Assert (False
2257 or else NT (N).Nkind = N_Allocator
2258 or else NT (N).Nkind = N_Free_Statement
2259 or else NT (N).Nkind = N_Return_Statement);
2264 (N : Node_Id) return String_Id is
2266 pragma Assert (False
2267 or else NT (N).Nkind = N_Operator_Symbol
2268 or else NT (N).Nkind = N_String_Literal);
2272 function Subtype_Indication
2273 (N : Node_Id) return Node_Id is
2275 pragma Assert (False
2276 or else NT (N).Nkind = N_Access_To_Object_Definition
2277 or else NT (N).Nkind = N_Component_Declaration
2278 or else NT (N).Nkind = N_Constrained_Array_Definition
2279 or else NT (N).Nkind = N_Derived_Type_Definition
2280 or else NT (N).Nkind = N_Private_Extension_Declaration
2281 or else NT (N).Nkind = N_Subtype_Declaration
2282 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2284 end Subtype_Indication;
2286 function Subtype_Mark
2287 (N : Node_Id) return Node_Id is
2289 pragma Assert (False
2290 or else NT (N).Nkind = N_Access_Definition
2291 or else NT (N).Nkind = N_Access_Function_Definition
2292 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2293 or else NT (N).Nkind = N_Formal_Object_Declaration
2294 or else NT (N).Nkind = N_Function_Specification
2295 or else NT (N).Nkind = N_Object_Renaming_Declaration
2296 or else NT (N).Nkind = N_Qualified_Expression
2297 or else NT (N).Nkind = N_Subtype_Indication
2298 or else NT (N).Nkind = N_Type_Conversion
2299 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2303 function Subtype_Marks
2304 (N : Node_Id) return List_Id is
2306 pragma Assert (False
2307 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2308 or else NT (N).Nkind = N_Use_Type_Clause);
2312 function Tagged_Present
2313 (N : Node_Id) return Boolean is
2315 pragma Assert (False
2316 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2317 or else NT (N).Nkind = N_Private_Type_Declaration
2318 or else NT (N).Nkind = N_Record_Definition
2319 or else NT (N).Nkind = N_With_Type_Clause);
2323 function Target_Type
2324 (N : Node_Id) return Entity_Id is
2326 pragma Assert (False
2327 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2331 function Task_Body_Procedure
2332 (N : Node_Id) return Entity_Id is
2334 pragma Assert (False
2335 or else NT (N).Nkind = N_Task_Type_Declaration);
2337 end Task_Body_Procedure;
2339 function Task_Definition
2340 (N : Node_Id) return Node_Id is
2342 pragma Assert (False
2343 or else NT (N).Nkind = N_Single_Task_Declaration
2344 or else NT (N).Nkind = N_Task_Type_Declaration);
2346 end Task_Definition;
2348 function Then_Actions
2349 (N : Node_Id) return List_Id is
2351 pragma Assert (False
2352 or else NT (N).Nkind = N_Conditional_Expression);
2356 function Then_Statements
2357 (N : Node_Id) return List_Id is
2359 pragma Assert (False
2360 or else NT (N).Nkind = N_Elsif_Part
2361 or else NT (N).Nkind = N_If_Statement);
2363 end Then_Statements;
2365 function Treat_Fixed_As_Integer
2366 (N : Node_Id) return Boolean is
2368 pragma Assert (False
2369 or else NT (N).Nkind = N_Op_Divide
2370 or else NT (N).Nkind = N_Op_Mod
2371 or else NT (N).Nkind = N_Op_Multiply
2372 or else NT (N).Nkind = N_Op_Rem);
2374 end Treat_Fixed_As_Integer;
2376 function Triggering_Alternative
2377 (N : Node_Id) return Node_Id is
2379 pragma Assert (False
2380 or else NT (N).Nkind = N_Asynchronous_Select);
2382 end Triggering_Alternative;
2384 function Triggering_Statement
2385 (N : Node_Id) return Node_Id is
2387 pragma Assert (False
2388 or else NT (N).Nkind = N_Triggering_Alternative);
2390 end Triggering_Statement;
2393 (N : Node_Id) return Elist_Id is
2395 pragma Assert (False
2396 or else NT (N).Nkind = N_Freeze_Entity);
2400 function Type_Definition
2401 (N : Node_Id) return Node_Id is
2403 pragma Assert (False
2404 or else NT (N).Nkind = N_Full_Type_Declaration);
2406 end Type_Definition;
2409 (N : Node_Id) return Node_Id is
2411 pragma Assert (False
2412 or else NT (N).Nkind = N_Compilation_Unit);
2416 function Unknown_Discriminants_Present
2417 (N : Node_Id) return Boolean is
2419 pragma Assert (False
2420 or else NT (N).Nkind = N_Formal_Type_Declaration
2421 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2422 or else NT (N).Nkind = N_Private_Extension_Declaration
2423 or else NT (N).Nkind = N_Private_Type_Declaration);
2425 end Unknown_Discriminants_Present;
2427 function Unreferenced_In_Spec
2428 (N : Node_Id) return Boolean is
2430 pragma Assert (False
2431 or else NT (N).Nkind = N_With_Clause);
2433 end Unreferenced_In_Spec;
2435 function Variant_Part
2436 (N : Node_Id) return Node_Id is
2438 pragma Assert (False
2439 or else NT (N).Nkind = N_Component_List);
2444 (N : Node_Id) return List_Id is
2446 pragma Assert (False
2447 or else NT (N).Nkind = N_Variant_Part);
2451 function Visible_Declarations
2452 (N : Node_Id) return List_Id is
2454 pragma Assert (False
2455 or else NT (N).Nkind = N_Package_Specification
2456 or else NT (N).Nkind = N_Protected_Definition
2457 or else NT (N).Nkind = N_Task_Definition);
2459 end Visible_Declarations;
2461 function Was_Originally_Stub
2462 (N : Node_Id) return Boolean is
2464 pragma Assert (False
2465 or else NT (N).Nkind = N_Package_Body
2466 or else NT (N).Nkind = N_Protected_Body
2467 or else NT (N).Nkind = N_Subprogram_Body
2468 or else NT (N).Nkind = N_Task_Body);
2470 end Was_Originally_Stub;
2472 function Zero_Cost_Handling
2473 (N : Node_Id) return Boolean is
2475 pragma Assert (False
2476 or else NT (N).Nkind = N_Exception_Handler
2477 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2479 end Zero_Cost_Handling;
2481 --------------------------
2482 -- Field Set Procedures --
2483 --------------------------
2485 procedure Set_ABE_Is_Certain
2486 (N : Node_Id; Val : Boolean := True) is
2488 pragma Assert (False
2489 or else NT (N).Nkind = N_Formal_Package_Declaration
2490 or else NT (N).Nkind = N_Function_Call
2491 or else NT (N).Nkind = N_Function_Instantiation
2492 or else NT (N).Nkind = N_Package_Instantiation
2493 or else NT (N).Nkind = N_Procedure_Call_Statement
2494 or else NT (N).Nkind = N_Procedure_Instantiation);
2495 Set_Flag18 (N, Val);
2496 end Set_ABE_Is_Certain;
2498 procedure Set_Abort_Present
2499 (N : Node_Id; Val : Boolean := True) is
2501 pragma Assert (False
2502 or else NT (N).Nkind = N_Requeue_Statement);
2503 Set_Flag15 (N, Val);
2504 end Set_Abort_Present;
2506 procedure Set_Abortable_Part
2507 (N : Node_Id; Val : Node_Id) is
2509 pragma Assert (False
2510 or else NT (N).Nkind = N_Asynchronous_Select);
2511 Set_Node2_With_Parent (N, Val);
2512 end Set_Abortable_Part;
2514 procedure Set_Abstract_Present
2515 (N : Node_Id; Val : Boolean := True) is
2517 pragma Assert (False
2518 or else NT (N).Nkind = N_Derived_Type_Definition
2519 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2520 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2521 or else NT (N).Nkind = N_Private_Extension_Declaration
2522 or else NT (N).Nkind = N_Private_Type_Declaration
2523 or else NT (N).Nkind = N_Record_Definition);
2525 end Set_Abstract_Present;
2527 procedure Set_Accept_Handler_Records
2528 (N : Node_Id; Val : List_Id) is
2530 pragma Assert (False
2531 or else NT (N).Nkind = N_Accept_Alternative);
2532 Set_List5 (N, Val); -- semantic field, no parent set
2533 end Set_Accept_Handler_Records;
2535 procedure Set_Accept_Statement
2536 (N : Node_Id; Val : Node_Id) is
2538 pragma Assert (False
2539 or else NT (N).Nkind = N_Accept_Alternative);
2540 Set_Node2_With_Parent (N, Val);
2541 end Set_Accept_Statement;
2543 procedure Set_Access_Types_To_Process
2544 (N : Node_Id; Val : Elist_Id) is
2546 pragma Assert (False
2547 or else NT (N).Nkind = N_Freeze_Entity);
2548 Set_Elist2 (N, Val); -- semantic field, no parent set
2549 end Set_Access_Types_To_Process;
2551 procedure Set_Actions
2552 (N : Node_Id; Val : List_Id) is
2554 pragma Assert (False
2555 or else NT (N).Nkind = N_And_Then
2556 or else NT (N).Nkind = N_Compilation_Unit_Aux
2557 or else NT (N).Nkind = N_Freeze_Entity
2558 or else NT (N).Nkind = N_Or_Else);
2559 Set_List1_With_Parent (N, Val);
2562 procedure Set_Activation_Chain_Entity
2563 (N : Node_Id; Val : Node_Id) is
2565 pragma Assert (False
2566 or else NT (N).Nkind = N_Block_Statement
2567 or else NT (N).Nkind = N_Entry_Body
2568 or else NT (N).Nkind = N_Generic_Package_Declaration
2569 or else NT (N).Nkind = N_Package_Declaration
2570 or else NT (N).Nkind = N_Subprogram_Body
2571 or else NT (N).Nkind = N_Task_Body);
2572 Set_Node3 (N, Val); -- semantic field, no parent set
2573 end Set_Activation_Chain_Entity;
2575 procedure Set_Acts_As_Spec
2576 (N : Node_Id; Val : Boolean := True) is
2578 pragma Assert (False
2579 or else NT (N).Nkind = N_Compilation_Unit
2580 or else NT (N).Nkind = N_Subprogram_Body);
2582 end Set_Acts_As_Spec;
2584 procedure Set_Aggregate_Bounds
2585 (N : Node_Id; Val : Node_Id) is
2587 pragma Assert (False
2588 or else NT (N).Nkind = N_Aggregate);
2589 Set_Node3 (N, Val); -- semantic field, no parent set
2590 end Set_Aggregate_Bounds;
2592 procedure Set_Aliased_Present
2593 (N : Node_Id; Val : Boolean := True) is
2595 pragma Assert (False
2596 or else NT (N).Nkind = N_Component_Declaration
2597 or else NT (N).Nkind = N_Constrained_Array_Definition
2598 or else NT (N).Nkind = N_Object_Declaration
2599 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2601 end Set_Aliased_Present;
2603 procedure Set_All_Others
2604 (N : Node_Id; Val : Boolean := True) is
2606 pragma Assert (False
2607 or else NT (N).Nkind = N_Others_Choice);
2608 Set_Flag11 (N, Val);
2611 procedure Set_All_Present
2612 (N : Node_Id; Val : Boolean := True) is
2614 pragma Assert (False
2615 or else NT (N).Nkind = N_Access_To_Object_Definition);
2616 Set_Flag15 (N, Val);
2617 end Set_All_Present;
2619 procedure Set_Alternatives
2620 (N : Node_Id; Val : List_Id) is
2622 pragma Assert (False
2623 or else NT (N).Nkind = N_Case_Statement);
2624 Set_List4_With_Parent (N, Val);
2625 end Set_Alternatives;
2627 procedure Set_Ancestor_Part
2628 (N : Node_Id; Val : Node_Id) is
2630 pragma Assert (False
2631 or else NT (N).Nkind = N_Extension_Aggregate);
2632 Set_Node3_With_Parent (N, Val);
2633 end Set_Ancestor_Part;
2635 procedure Set_Array_Aggregate
2636 (N : Node_Id; Val : Node_Id) is
2638 pragma Assert (False
2639 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2640 Set_Node3_With_Parent (N, Val);
2641 end Set_Array_Aggregate;
2643 procedure Set_Assignment_OK
2644 (N : Node_Id; Val : Boolean := True) is
2646 pragma Assert (False
2647 or else NT (N).Nkind = N_Object_Declaration
2648 or else NT (N).Nkind in N_Subexpr);
2649 Set_Flag15 (N, Val);
2650 end Set_Assignment_OK;
2652 procedure Set_Associated_Node
2653 (N : Node_Id; Val : Node_Id) is
2655 pragma Assert (False
2656 or else NT (N).Nkind in N_Has_Entity
2657 or else NT (N).Nkind = N_Aggregate
2658 or else NT (N).Nkind = N_Extension_Aggregate
2659 or else NT (N).Nkind = N_Selected_Component);
2660 Set_Node4 (N, Val); -- semantic field, no parent set
2661 end Set_Associated_Node;
2663 procedure Set_At_End_Proc
2664 (N : Node_Id; Val : Node_Id) is
2666 pragma Assert (False
2667 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2669 end Set_At_End_Proc;
2671 procedure Set_Attribute_Name
2672 (N : Node_Id; Val : Name_Id) is
2674 pragma Assert (False
2675 or else NT (N).Nkind = N_Attribute_Reference);
2677 end Set_Attribute_Name;
2679 procedure Set_Aux_Decls_Node
2680 (N : Node_Id; Val : Node_Id) is
2682 pragma Assert (False
2683 or else NT (N).Nkind = N_Compilation_Unit);
2684 Set_Node5_With_Parent (N, Val);
2685 end Set_Aux_Decls_Node;
2687 procedure Set_Backwards_OK
2688 (N : Node_Id; Val : Boolean := True) is
2690 pragma Assert (False
2691 or else NT (N).Nkind = N_Assignment_Statement);
2693 end Set_Backwards_OK;
2695 procedure Set_Bad_Is_Detected
2696 (N : Node_Id; Val : Boolean := True) is
2698 pragma Assert (False
2699 or else NT (N).Nkind = N_Subprogram_Body);
2700 Set_Flag15 (N, Val);
2701 end Set_Bad_Is_Detected;
2703 procedure Set_Body_Required
2704 (N : Node_Id; Val : Boolean := True) is
2706 pragma Assert (False
2707 or else NT (N).Nkind = N_Compilation_Unit);
2708 Set_Flag13 (N, Val);
2709 end Set_Body_Required;
2711 procedure Set_Body_To_Inline
2712 (N : Node_Id; Val : Node_Id) is
2714 pragma Assert (False
2715 or else NT (N).Nkind = N_Subprogram_Declaration);
2717 end Set_Body_To_Inline;
2719 procedure Set_Box_Present
2720 (N : Node_Id; Val : Boolean := True) is
2722 pragma Assert (False
2723 or else NT (N).Nkind = N_Formal_Package_Declaration
2724 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2725 Set_Flag15 (N, Val);
2726 end Set_Box_Present;
2728 procedure Set_By_Ref
2729 (N : Node_Id; Val : Boolean := True) is
2731 pragma Assert (False
2732 or else NT (N).Nkind = N_Return_Statement);
2736 procedure Set_Char_Literal_Value
2737 (N : Node_Id; Val : Char_Code) is
2739 pragma Assert (False
2740 or else NT (N).Nkind = N_Character_Literal);
2741 Set_Char_Code2 (N, Val);
2742 end Set_Char_Literal_Value;
2745 (N : Node_Id; Val : Name_Id) is
2747 pragma Assert (False
2748 or else NT (N).Nkind in N_Has_Chars);
2752 procedure Set_Check_Address_Alignment
2753 (N : Node_Id; Val : Boolean := True) is
2755 pragma Assert (False
2756 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2757 Set_Flag11 (N, Val);
2758 end Set_Check_Address_Alignment;
2760 procedure Set_Choice_Parameter
2761 (N : Node_Id; Val : Node_Id) is
2763 pragma Assert (False
2764 or else NT (N).Nkind = N_Exception_Handler);
2765 Set_Node2_With_Parent (N, Val);
2766 end Set_Choice_Parameter;
2768 procedure Set_Choices
2769 (N : Node_Id; Val : List_Id) is
2771 pragma Assert (False
2772 or else NT (N).Nkind = N_Component_Association);
2773 Set_List1_With_Parent (N, Val);
2776 procedure Set_Compile_Time_Known_Aggregate
2777 (N : Node_Id; Val : Boolean := True) is
2779 pragma Assert (False
2780 or else NT (N).Nkind = N_Aggregate);
2781 Set_Flag18 (N, Val);
2782 end Set_Compile_Time_Known_Aggregate;
2784 procedure Set_Component_Associations
2785 (N : Node_Id; Val : List_Id) is
2787 pragma Assert (False
2788 or else NT (N).Nkind = N_Aggregate
2789 or else NT (N).Nkind = N_Extension_Aggregate);
2790 Set_List2_With_Parent (N, Val);
2791 end Set_Component_Associations;
2793 procedure Set_Component_Clauses
2794 (N : Node_Id; Val : List_Id) is
2796 pragma Assert (False
2797 or else NT (N).Nkind = N_Record_Representation_Clause);
2798 Set_List3_With_Parent (N, Val);
2799 end Set_Component_Clauses;
2801 procedure Set_Component_Items
2802 (N : Node_Id; Val : List_Id) is
2804 pragma Assert (False
2805 or else NT (N).Nkind = N_Component_List);
2806 Set_List3_With_Parent (N, Val);
2807 end Set_Component_Items;
2809 procedure Set_Component_List
2810 (N : Node_Id; Val : Node_Id) is
2812 pragma Assert (False
2813 or else NT (N).Nkind = N_Record_Definition
2814 or else NT (N).Nkind = N_Variant);
2815 Set_Node1_With_Parent (N, Val);
2816 end Set_Component_List;
2818 procedure Set_Component_Name
2819 (N : Node_Id; Val : Node_Id) is
2821 pragma Assert (False
2822 or else NT (N).Nkind = N_Component_Clause);
2823 Set_Node1_With_Parent (N, Val);
2824 end Set_Component_Name;
2826 procedure Set_Condition
2827 (N : Node_Id; Val : Node_Id) is
2829 pragma Assert (False
2830 or else NT (N).Nkind = N_Accept_Alternative
2831 or else NT (N).Nkind = N_Delay_Alternative
2832 or else NT (N).Nkind = N_Elsif_Part
2833 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2834 or else NT (N).Nkind = N_Exit_Statement
2835 or else NT (N).Nkind = N_If_Statement
2836 or else NT (N).Nkind = N_Iteration_Scheme
2837 or else NT (N).Nkind = N_Raise_Constraint_Error
2838 or else NT (N).Nkind = N_Raise_Program_Error
2839 or else NT (N).Nkind = N_Raise_Storage_Error
2840 or else NT (N).Nkind = N_Terminate_Alternative);
2841 Set_Node1_With_Parent (N, Val);
2844 procedure Set_Condition_Actions
2845 (N : Node_Id; Val : List_Id) is
2847 pragma Assert (False
2848 or else NT (N).Nkind = N_Elsif_Part
2849 or else NT (N).Nkind = N_Iteration_Scheme);
2850 Set_List3 (N, Val); -- semantic field, no parent set
2851 end Set_Condition_Actions;
2853 procedure Set_Config_Pragmas
2854 (N : Node_Id; Val : List_Id) is
2856 pragma Assert (False
2857 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2858 Set_List4_With_Parent (N, Val);
2859 end Set_Config_Pragmas;
2861 procedure Set_Constant_Present
2862 (N : Node_Id; Val : Boolean := True) is
2864 pragma Assert (False
2865 or else NT (N).Nkind = N_Access_To_Object_Definition
2866 or else NT (N).Nkind = N_Object_Declaration);
2867 Set_Flag17 (N, Val);
2868 end Set_Constant_Present;
2870 procedure Set_Constraint
2871 (N : Node_Id; Val : Node_Id) is
2873 pragma Assert (False
2874 or else NT (N).Nkind = N_Subtype_Indication);
2875 Set_Node3_With_Parent (N, Val);
2878 procedure Set_Constraints
2879 (N : Node_Id; Val : List_Id) is
2881 pragma Assert (False
2882 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2883 Set_List1_With_Parent (N, Val);
2884 end Set_Constraints;
2886 procedure Set_Context_Installed
2887 (N : Node_Id; Val : Boolean := True) is
2889 pragma Assert (False
2890 or else NT (N).Nkind = N_With_Clause);
2891 Set_Flag13 (N, Val);
2892 end Set_Context_Installed;
2894 procedure Set_Context_Items
2895 (N : Node_Id; Val : List_Id) is
2897 pragma Assert (False
2898 or else NT (N).Nkind = N_Compilation_Unit);
2899 Set_List1_With_Parent (N, Val);
2900 end Set_Context_Items;
2902 procedure Set_Controlling_Argument
2903 (N : Node_Id; Val : Node_Id) is
2905 pragma Assert (False
2906 or else NT (N).Nkind = N_Function_Call
2907 or else NT (N).Nkind = N_Procedure_Call_Statement);
2908 Set_Node1 (N, Val); -- semantic field, no parent set
2909 end Set_Controlling_Argument;
2911 procedure Set_Conversion_OK
2912 (N : Node_Id; Val : Boolean := True) is
2914 pragma Assert (False
2915 or else NT (N).Nkind = N_Type_Conversion);
2916 Set_Flag14 (N, Val);
2917 end Set_Conversion_OK;
2919 procedure Set_Corresponding_Body
2920 (N : Node_Id; Val : Node_Id) is
2922 pragma Assert (False
2923 or else NT (N).Nkind = N_Entry_Declaration
2924 or else NT (N).Nkind = N_Generic_Package_Declaration
2925 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2926 or else NT (N).Nkind = N_Package_Body_Stub
2927 or else NT (N).Nkind = N_Package_Declaration
2928 or else NT (N).Nkind = N_Protected_Body_Stub
2929 or else NT (N).Nkind = N_Protected_Type_Declaration
2930 or else NT (N).Nkind = N_Subprogram_Body_Stub
2931 or else NT (N).Nkind = N_Subprogram_Declaration
2932 or else NT (N).Nkind = N_Task_Body_Stub
2933 or else NT (N).Nkind = N_Task_Type_Declaration);
2934 Set_Node5 (N, Val); -- semantic field, no parent set
2935 end Set_Corresponding_Body;
2937 procedure Set_Corresponding_Generic_Association
2938 (N : Node_Id; Val : Node_Id) is
2940 pragma Assert (False
2941 or else NT (N).Nkind = N_Object_Declaration
2942 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2943 Set_Node5 (N, Val); -- semantic field, no parent set
2944 end Set_Corresponding_Generic_Association;
2945 procedure Set_Corresponding_Integer_Value
2946 (N : Node_Id; Val : Uint) is
2948 pragma Assert (False
2949 or else NT (N).Nkind = N_Real_Literal);
2950 Set_Uint4 (N, Val); -- semantic field, no parent set
2951 end Set_Corresponding_Integer_Value;
2953 procedure Set_Corresponding_Spec
2954 (N : Node_Id; Val : Node_Id) is
2956 pragma Assert (False
2957 or else NT (N).Nkind = N_Package_Body
2958 or else NT (N).Nkind = N_Protected_Body
2959 or else NT (N).Nkind = N_Subprogram_Body
2960 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
2961 or else NT (N).Nkind = N_Task_Body
2962 or else NT (N).Nkind = N_With_Clause);
2963 Set_Node5 (N, Val); -- semantic field, no parent set
2964 end Set_Corresponding_Spec;
2966 procedure Set_Corresponding_Stub
2967 (N : Node_Id; Val : Node_Id) is
2969 pragma Assert (False
2970 or else NT (N).Nkind = N_Subunit);
2972 end Set_Corresponding_Stub;
2974 procedure Set_Dcheck_Function
2975 (N : Node_Id; Val : Entity_Id) is
2977 pragma Assert (False
2978 or else NT (N).Nkind = N_Variant);
2979 Set_Node5 (N, Val); -- semantic field, no parent set
2980 end Set_Dcheck_Function;
2982 procedure Set_Debug_Statement
2983 (N : Node_Id; Val : Node_Id) is
2985 pragma Assert (False
2986 or else NT (N).Nkind = N_Pragma);
2987 Set_Node3_With_Parent (N, Val);
2988 end Set_Debug_Statement;
2990 procedure Set_Declarations
2991 (N : Node_Id; Val : List_Id) is
2993 pragma Assert (False
2994 or else NT (N).Nkind = N_Accept_Statement
2995 or else NT (N).Nkind = N_Block_Statement
2996 or else NT (N).Nkind = N_Compilation_Unit_Aux
2997 or else NT (N).Nkind = N_Entry_Body
2998 or else NT (N).Nkind = N_Package_Body
2999 or else NT (N).Nkind = N_Protected_Body
3000 or else NT (N).Nkind = N_Subprogram_Body
3001 or else NT (N).Nkind = N_Task_Body);
3002 Set_List2_With_Parent (N, Val);
3003 end Set_Declarations;
3005 procedure Set_Default_Expression
3006 (N : Node_Id; Val : Node_Id) is
3008 pragma Assert (False
3009 or else NT (N).Nkind = N_Parameter_Specification);
3010 Set_Node5 (N, Val); -- semantic field, no parent set
3011 end Set_Default_Expression;
3013 procedure Set_Default_Name
3014 (N : Node_Id; Val : Node_Id) is
3016 pragma Assert (False
3017 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3018 Set_Node2_With_Parent (N, Val);
3019 end Set_Default_Name;
3021 procedure Set_Defining_Identifier
3022 (N : Node_Id; Val : Entity_Id) is
3024 pragma Assert (False
3025 or else NT (N).Nkind = N_Component_Declaration
3026 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3027 or else NT (N).Nkind = N_Discriminant_Specification
3028 or else NT (N).Nkind = N_Entry_Body
3029 or else NT (N).Nkind = N_Entry_Declaration
3030 or else NT (N).Nkind = N_Entry_Index_Specification
3031 or else NT (N).Nkind = N_Exception_Declaration
3032 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3033 or else NT (N).Nkind = N_Formal_Object_Declaration
3034 or else NT (N).Nkind = N_Formal_Package_Declaration
3035 or else NT (N).Nkind = N_Formal_Type_Declaration
3036 or else NT (N).Nkind = N_Full_Type_Declaration
3037 or else NT (N).Nkind = N_Implicit_Label_Declaration
3038 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3039 or else NT (N).Nkind = N_Loop_Parameter_Specification
3040 or else NT (N).Nkind = N_Number_Declaration
3041 or else NT (N).Nkind = N_Object_Declaration
3042 or else NT (N).Nkind = N_Object_Renaming_Declaration
3043 or else NT (N).Nkind = N_Package_Body_Stub
3044 or else NT (N).Nkind = N_Parameter_Specification
3045 or else NT (N).Nkind = N_Private_Extension_Declaration
3046 or else NT (N).Nkind = N_Private_Type_Declaration
3047 or else NT (N).Nkind = N_Protected_Body
3048 or else NT (N).Nkind = N_Protected_Body_Stub
3049 or else NT (N).Nkind = N_Protected_Type_Declaration
3050 or else NT (N).Nkind = N_Single_Protected_Declaration
3051 or else NT (N).Nkind = N_Single_Task_Declaration
3052 or else NT (N).Nkind = N_Subtype_Declaration
3053 or else NT (N).Nkind = N_Task_Body
3054 or else NT (N).Nkind = N_Task_Body_Stub
3055 or else NT (N).Nkind = N_Task_Type_Declaration);
3056 Set_Node1_With_Parent (N, Val);
3057 end Set_Defining_Identifier;
3059 procedure Set_Defining_Unit_Name
3060 (N : Node_Id; Val : Node_Id) is
3062 pragma Assert (False
3063 or else NT (N).Nkind = N_Function_Instantiation
3064 or else NT (N).Nkind = N_Function_Specification
3065 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3066 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3067 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3068 or else NT (N).Nkind = N_Package_Body
3069 or else NT (N).Nkind = N_Package_Instantiation
3070 or else NT (N).Nkind = N_Package_Renaming_Declaration
3071 or else NT (N).Nkind = N_Package_Specification
3072 or else NT (N).Nkind = N_Procedure_Instantiation
3073 or else NT (N).Nkind = N_Procedure_Specification);
3074 Set_Node1_With_Parent (N, Val);
3075 end Set_Defining_Unit_Name;
3077 procedure Set_Delay_Alternative
3078 (N : Node_Id; Val : Node_Id) is
3080 pragma Assert (False
3081 or else NT (N).Nkind = N_Timed_Entry_Call);
3082 Set_Node4_With_Parent (N, Val);
3083 end Set_Delay_Alternative;
3085 procedure Set_Delay_Finalize_Attach
3086 (N : Node_Id; Val : Boolean := True) is
3088 pragma Assert (False
3089 or else NT (N).Nkind = N_Object_Declaration);
3090 Set_Flag14 (N, Val);
3091 end Set_Delay_Finalize_Attach;
3093 procedure Set_Delay_Statement
3094 (N : Node_Id; Val : Node_Id) is
3096 pragma Assert (False
3097 or else NT (N).Nkind = N_Delay_Alternative);
3098 Set_Node2_With_Parent (N, Val);
3099 end Set_Delay_Statement;
3101 procedure Set_Delta_Expression
3102 (N : Node_Id; Val : Node_Id) is
3104 pragma Assert (False
3105 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3106 or else NT (N).Nkind = N_Delta_Constraint
3107 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3108 Set_Node3_With_Parent (N, Val);
3109 end Set_Delta_Expression;
3111 procedure Set_Digits_Expression
3112 (N : Node_Id; Val : Node_Id) is
3114 pragma Assert (False
3115 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3116 or else NT (N).Nkind = N_Digits_Constraint
3117 or else NT (N).Nkind = N_Floating_Point_Definition);
3118 Set_Node2_With_Parent (N, Val);
3119 end Set_Digits_Expression;
3121 procedure Set_Discr_Check_Funcs_Built
3122 (N : Node_Id; Val : Boolean := True) is
3124 pragma Assert (False
3125 or else NT (N).Nkind = N_Full_Type_Declaration);
3126 Set_Flag11 (N, Val);
3127 end Set_Discr_Check_Funcs_Built;
3129 procedure Set_Discrete_Choices
3130 (N : Node_Id; Val : List_Id) is
3132 pragma Assert (False
3133 or else NT (N).Nkind = N_Case_Statement_Alternative
3134 or else NT (N).Nkind = N_Variant);
3135 Set_List4_With_Parent (N, Val);
3136 end Set_Discrete_Choices;
3138 procedure Set_Discrete_Range
3139 (N : Node_Id; Val : Node_Id) is
3141 pragma Assert (False
3142 or else NT (N).Nkind = N_Slice);
3143 Set_Node4_With_Parent (N, Val);
3144 end Set_Discrete_Range;
3146 procedure Set_Discrete_Subtype_Definition
3147 (N : Node_Id; Val : Node_Id) is
3149 pragma Assert (False
3150 or else NT (N).Nkind = N_Entry_Declaration
3151 or else NT (N).Nkind = N_Entry_Index_Specification
3152 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3153 Set_Node4_With_Parent (N, Val);
3154 end Set_Discrete_Subtype_Definition;
3156 procedure Set_Discrete_Subtype_Definitions
3157 (N : Node_Id; Val : List_Id) is
3159 pragma Assert (False
3160 or else NT (N).Nkind = N_Constrained_Array_Definition);
3161 Set_List2_With_Parent (N, Val);
3162 end Set_Discrete_Subtype_Definitions;
3164 procedure Set_Discriminant_Specifications
3165 (N : Node_Id; Val : List_Id) is
3167 pragma Assert (False
3168 or else NT (N).Nkind = N_Formal_Type_Declaration
3169 or else NT (N).Nkind = N_Full_Type_Declaration
3170 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3171 or else NT (N).Nkind = N_Private_Extension_Declaration
3172 or else NT (N).Nkind = N_Private_Type_Declaration
3173 or else NT (N).Nkind = N_Protected_Type_Declaration
3174 or else NT (N).Nkind = N_Task_Type_Declaration);
3175 Set_List4_With_Parent (N, Val);
3176 end Set_Discriminant_Specifications;
3178 procedure Set_Discriminant_Type
3179 (N : Node_Id; Val : Node_Id) is
3181 pragma Assert (False
3182 or else NT (N).Nkind = N_Discriminant_Specification);
3183 Set_Node5_With_Parent (N, Val);
3184 end Set_Discriminant_Type;
3186 procedure Set_Do_Accessibility_Check
3187 (N : Node_Id; Val : Boolean := True) is
3189 pragma Assert (False
3190 or else NT (N).Nkind = N_Parameter_Specification);
3191 Set_Flag13 (N, Val);
3192 end Set_Do_Accessibility_Check;
3194 procedure Set_Do_Discriminant_Check
3195 (N : Node_Id; Val : Boolean := True) is
3197 pragma Assert (False
3198 or else NT (N).Nkind = N_Selected_Component);
3199 Set_Flag13 (N, Val);
3200 end Set_Do_Discriminant_Check;
3202 procedure Set_Do_Division_Check
3203 (N : Node_Id; Val : Boolean := True) is
3205 pragma Assert (False
3206 or else NT (N).Nkind = N_Op_Divide
3207 or else NT (N).Nkind = N_Op_Mod
3208 or else NT (N).Nkind = N_Op_Rem);
3209 Set_Flag13 (N, Val);
3210 end Set_Do_Division_Check;
3212 procedure Set_Do_Length_Check
3213 (N : Node_Id; Val : Boolean := True) is
3215 pragma Assert (False
3216 or else NT (N).Nkind = N_Assignment_Statement
3217 or else NT (N).Nkind = N_Op_And
3218 or else NT (N).Nkind = N_Op_Or
3219 or else NT (N).Nkind = N_Op_Xor
3220 or else NT (N).Nkind = N_Type_Conversion);
3222 end Set_Do_Length_Check;
3224 procedure Set_Do_Overflow_Check
3225 (N : Node_Id; Val : Boolean := True) is
3227 pragma Assert (False
3228 or else NT (N).Nkind in N_Op
3229 or else NT (N).Nkind = N_Attribute_Reference
3230 or else NT (N).Nkind = N_Type_Conversion);
3231 Set_Flag17 (N, Val);
3232 end Set_Do_Overflow_Check;
3234 procedure Set_Do_Range_Check
3235 (N : Node_Id; Val : Boolean := True) is
3237 pragma Assert (False
3238 or else NT (N).Nkind in N_Subexpr);
3240 end Set_Do_Range_Check;
3242 procedure Set_Do_Storage_Check
3243 (N : Node_Id; Val : Boolean := True) is
3245 pragma Assert (False
3246 or else NT (N).Nkind = N_Allocator
3247 or else NT (N).Nkind = N_Subprogram_Body);
3248 Set_Flag17 (N, Val);
3249 end Set_Do_Storage_Check;
3251 procedure Set_Do_Tag_Check
3252 (N : Node_Id; Val : Boolean := True) is
3254 pragma Assert (False
3255 or else NT (N).Nkind = N_Assignment_Statement
3256 or else NT (N).Nkind = N_Function_Call
3257 or else NT (N).Nkind = N_Procedure_Call_Statement
3258 or else NT (N).Nkind = N_Return_Statement
3259 or else NT (N).Nkind = N_Type_Conversion);
3260 Set_Flag13 (N, Val);
3261 end Set_Do_Tag_Check;
3263 procedure Set_Elaborate_All_Present
3264 (N : Node_Id; Val : Boolean := True) is
3266 pragma Assert (False
3267 or else NT (N).Nkind = N_With_Clause);
3268 Set_Flag15 (N, Val);
3269 end Set_Elaborate_All_Present;
3271 procedure Set_Elaborate_Present
3272 (N : Node_Id; Val : Boolean := True) is
3274 pragma Assert (False
3275 or else NT (N).Nkind = N_With_Clause);
3277 end Set_Elaborate_Present;
3279 procedure Set_Elaboration_Boolean
3280 (N : Node_Id; Val : Node_Id) is
3282 pragma Assert (False
3283 or else NT (N).Nkind = N_Function_Specification
3284 or else NT (N).Nkind = N_Procedure_Specification);
3286 end Set_Elaboration_Boolean;
3288 procedure Set_Else_Actions
3289 (N : Node_Id; Val : List_Id) is
3291 pragma Assert (False
3292 or else NT (N).Nkind = N_Conditional_Expression);
3293 Set_List3 (N, Val); -- semantic field, no parent set
3294 end Set_Else_Actions;
3296 procedure Set_Else_Statements
3297 (N : Node_Id; Val : List_Id) is
3299 pragma Assert (False
3300 or else NT (N).Nkind = N_Conditional_Entry_Call
3301 or else NT (N).Nkind = N_If_Statement
3302 or else NT (N).Nkind = N_Selective_Accept);
3303 Set_List4_With_Parent (N, Val);
3304 end Set_Else_Statements;
3306 procedure Set_Elsif_Parts
3307 (N : Node_Id; Val : List_Id) is
3309 pragma Assert (False
3310 or else NT (N).Nkind = N_If_Statement);
3311 Set_List3_With_Parent (N, Val);
3312 end Set_Elsif_Parts;
3314 procedure Set_Enclosing_Variant
3315 (N : Node_Id; Val : Node_Id) is
3317 pragma Assert (False
3318 or else NT (N).Nkind = N_Variant);
3319 Set_Node2 (N, Val); -- semantic field, no parent set
3320 end Set_Enclosing_Variant;
3322 procedure Set_End_Label
3323 (N : Node_Id; Val : Node_Id) is
3325 pragma Assert (False
3326 or else NT (N).Nkind = N_Enumeration_Type_Definition
3327 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3328 or else NT (N).Nkind = N_Loop_Statement
3329 or else NT (N).Nkind = N_Package_Specification
3330 or else NT (N).Nkind = N_Protected_Body
3331 or else NT (N).Nkind = N_Protected_Definition
3332 or else NT (N).Nkind = N_Record_Definition
3333 or else NT (N).Nkind = N_Task_Definition);
3334 Set_Node4_With_Parent (N, Val);
3337 procedure Set_End_Span
3338 (N : Node_Id; Val : Uint) is
3340 pragma Assert (False
3341 or else NT (N).Nkind = N_Case_Statement
3342 or else NT (N).Nkind = N_If_Statement);
3346 procedure Set_Entity
3347 (N : Node_Id; Val : Node_Id) is
3349 pragma Assert (False
3350 or else NT (N).Nkind in N_Has_Entity
3351 or else NT (N).Nkind = N_Freeze_Entity);
3352 Set_Node4 (N, Val); -- semantic field, no parent set
3355 procedure Set_Entry_Body_Formal_Part
3356 (N : Node_Id; Val : Node_Id) is
3358 pragma Assert (False
3359 or else NT (N).Nkind = N_Entry_Body);
3360 Set_Node5_With_Parent (N, Val);
3361 end Set_Entry_Body_Formal_Part;
3363 procedure Set_Entry_Call_Alternative
3364 (N : Node_Id; Val : Node_Id) is
3366 pragma Assert (False
3367 or else NT (N).Nkind = N_Conditional_Entry_Call
3368 or else NT (N).Nkind = N_Timed_Entry_Call);
3369 Set_Node1_With_Parent (N, Val);
3370 end Set_Entry_Call_Alternative;
3372 procedure Set_Entry_Call_Statement
3373 (N : Node_Id; Val : Node_Id) is
3375 pragma Assert (False
3376 or else NT (N).Nkind = N_Entry_Call_Alternative);
3377 Set_Node1_With_Parent (N, Val);
3378 end Set_Entry_Call_Statement;
3380 procedure Set_Entry_Direct_Name
3381 (N : Node_Id; Val : Node_Id) is
3383 pragma Assert (False
3384 or else NT (N).Nkind = N_Accept_Statement);
3385 Set_Node1_With_Parent (N, Val);
3386 end Set_Entry_Direct_Name;
3388 procedure Set_Entry_Index
3389 (N : Node_Id; Val : Node_Id) is
3391 pragma Assert (False
3392 or else NT (N).Nkind = N_Accept_Statement);
3393 Set_Node5_With_Parent (N, Val);
3394 end Set_Entry_Index;
3396 procedure Set_Entry_Index_Specification
3397 (N : Node_Id; Val : Node_Id) is
3399 pragma Assert (False
3400 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3401 Set_Node4_With_Parent (N, Val);
3402 end Set_Entry_Index_Specification;
3405 (N : Node_Id; Val : Node_Id) is
3407 pragma Assert (False
3408 or else NT (N).Nkind in N_Has_Etype);
3409 Set_Node5 (N, Val); -- semantic field, no parent set
3412 procedure Set_Exception_Choices
3413 (N : Node_Id; Val : List_Id) is
3415 pragma Assert (False
3416 or else NT (N).Nkind = N_Exception_Handler);
3417 Set_List4_With_Parent (N, Val);
3418 end Set_Exception_Choices;
3420 procedure Set_Exception_Handlers
3421 (N : Node_Id; Val : List_Id) is
3423 pragma Assert (False
3424 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3425 Set_List5_With_Parent (N, Val);
3426 end Set_Exception_Handlers;
3428 procedure Set_Exception_Junk
3429 (N : Node_Id; Val : Boolean := True) is
3431 pragma Assert (False
3432 or else NT (N).Nkind = N_Goto_Statement
3433 or else NT (N).Nkind = N_Label
3434 or else NT (N).Nkind = N_Object_Declaration
3435 or else NT (N).Nkind = N_Subtype_Declaration);
3436 Set_Flag11 (N, Val);
3437 end Set_Exception_Junk;
3439 procedure Set_Expansion_Delayed
3440 (N : Node_Id; Val : Boolean := True) is
3442 pragma Assert (False
3443 or else NT (N).Nkind = N_Aggregate
3444 or else NT (N).Nkind = N_Extension_Aggregate);
3445 Set_Flag11 (N, Val);
3446 end Set_Expansion_Delayed;
3448 procedure Set_Explicit_Actual_Parameter
3449 (N : Node_Id; Val : Node_Id) is
3451 pragma Assert (False
3452 or else NT (N).Nkind = N_Parameter_Association);
3453 Set_Node3_With_Parent (N, Val);
3454 end Set_Explicit_Actual_Parameter;
3456 procedure Set_Explicit_Generic_Actual_Parameter
3457 (N : Node_Id; Val : Node_Id) is
3459 pragma Assert (False
3460 or else NT (N).Nkind = N_Generic_Association);
3461 Set_Node1_With_Parent (N, Val);
3462 end Set_Explicit_Generic_Actual_Parameter;
3464 procedure Set_Expression
3465 (N : Node_Id; Val : Node_Id) is
3467 pragma Assert (False
3468 or else NT (N).Nkind = N_Allocator
3469 or else NT (N).Nkind = N_Assignment_Statement
3470 or else NT (N).Nkind = N_At_Clause
3471 or else NT (N).Nkind = N_Attribute_Definition_Clause
3472 or else NT (N).Nkind = N_Case_Statement
3473 or else NT (N).Nkind = N_Code_Statement
3474 or else NT (N).Nkind = N_Component_Association
3475 or else NT (N).Nkind = N_Component_Declaration
3476 or else NT (N).Nkind = N_Delay_Relative_Statement
3477 or else NT (N).Nkind = N_Delay_Until_Statement
3478 or else NT (N).Nkind = N_Discriminant_Association
3479 or else NT (N).Nkind = N_Discriminant_Specification
3480 or else NT (N).Nkind = N_Exception_Declaration
3481 or else NT (N).Nkind = N_Formal_Object_Declaration
3482 or else NT (N).Nkind = N_Free_Statement
3483 or else NT (N).Nkind = N_Mod_Clause
3484 or else NT (N).Nkind = N_Modular_Type_Definition
3485 or else NT (N).Nkind = N_Number_Declaration
3486 or else NT (N).Nkind = N_Object_Declaration
3487 or else NT (N).Nkind = N_Parameter_Specification
3488 or else NT (N).Nkind = N_Pragma_Argument_Association
3489 or else NT (N).Nkind = N_Qualified_Expression
3490 or else NT (N).Nkind = N_Return_Statement
3491 or else NT (N).Nkind = N_Type_Conversion
3492 or else NT (N).Nkind = N_Unchecked_Expression
3493 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3494 Set_Node3_With_Parent (N, Val);
3497 procedure Set_Expressions
3498 (N : Node_Id; Val : List_Id) is
3500 pragma Assert (False
3501 or else NT (N).Nkind = N_Aggregate
3502 or else NT (N).Nkind = N_Attribute_Reference
3503 or else NT (N).Nkind = N_Conditional_Expression
3504 or else NT (N).Nkind = N_Extension_Aggregate
3505 or else NT (N).Nkind = N_Indexed_Component);
3506 Set_List1_With_Parent (N, Val);
3507 end Set_Expressions;
3509 procedure Set_First_Bit
3510 (N : Node_Id; Val : Node_Id) is
3512 pragma Assert (False
3513 or else NT (N).Nkind = N_Component_Clause);
3514 Set_Node3_With_Parent (N, Val);
3517 procedure Set_First_Inlined_Subprogram
3518 (N : Node_Id; Val : Entity_Id) is
3520 pragma Assert (False
3521 or else NT (N).Nkind = N_Compilation_Unit);
3522 Set_Node3 (N, Val); -- semantic field, no parent set
3523 end Set_First_Inlined_Subprogram;
3525 procedure Set_First_Name
3526 (N : Node_Id; Val : Boolean := True) is
3528 pragma Assert (False
3529 or else NT (N).Nkind = N_With_Clause);
3533 procedure Set_First_Named_Actual
3534 (N : Node_Id; Val : Node_Id) is
3536 pragma Assert (False
3537 or else NT (N).Nkind = N_Entry_Call_Statement
3538 or else NT (N).Nkind = N_Function_Call
3539 or else NT (N).Nkind = N_Procedure_Call_Statement);
3540 Set_Node4 (N, Val); -- semantic field, no parent set
3541 end Set_First_Named_Actual;
3543 procedure Set_First_Real_Statement
3544 (N : Node_Id; Val : Node_Id) is
3546 pragma Assert (False
3547 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3548 Set_Node2 (N, Val); -- semantic field, no parent set
3549 end Set_First_Real_Statement;
3551 procedure Set_First_Subtype_Link
3552 (N : Node_Id; Val : Entity_Id) is
3554 pragma Assert (False
3555 or else NT (N).Nkind = N_Freeze_Entity);
3556 Set_Node5 (N, Val); -- semantic field, no parent set
3557 end Set_First_Subtype_Link;
3559 procedure Set_Float_Truncate
3560 (N : Node_Id; Val : Boolean := True) is
3562 pragma Assert (False
3563 or else NT (N).Nkind = N_Type_Conversion);
3564 Set_Flag11 (N, Val);
3565 end Set_Float_Truncate;
3567 procedure Set_Formal_Type_Definition
3568 (N : Node_Id; Val : Node_Id) is
3570 pragma Assert (False
3571 or else NT (N).Nkind = N_Formal_Type_Declaration);
3572 Set_Node3_With_Parent (N, Val);
3573 end Set_Formal_Type_Definition;
3575 procedure Set_Forwards_OK
3576 (N : Node_Id; Val : Boolean := True) is
3578 pragma Assert (False
3579 or else NT (N).Nkind = N_Assignment_Statement);
3581 end Set_Forwards_OK;
3583 procedure Set_From_At_Mod
3584 (N : Node_Id; Val : Boolean := True) is
3586 pragma Assert (False
3587 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3589 end Set_From_At_Mod;
3591 procedure Set_Generic_Associations
3592 (N : Node_Id; Val : List_Id) is
3594 pragma Assert (False
3595 or else NT (N).Nkind = N_Formal_Package_Declaration
3596 or else NT (N).Nkind = N_Function_Instantiation
3597 or else NT (N).Nkind = N_Package_Instantiation
3598 or else NT (N).Nkind = N_Procedure_Instantiation);
3599 Set_List3_With_Parent (N, Val);
3600 end Set_Generic_Associations;
3602 procedure Set_Generic_Formal_Declarations
3603 (N : Node_Id; Val : List_Id) is
3605 pragma Assert (False
3606 or else NT (N).Nkind = N_Generic_Package_Declaration
3607 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3608 Set_List2_With_Parent (N, Val);
3609 end Set_Generic_Formal_Declarations;
3611 procedure Set_Generic_Parent
3612 (N : Node_Id; Val : Node_Id) is
3614 pragma Assert (False
3615 or else NT (N).Nkind = N_Function_Specification
3616 or else NT (N).Nkind = N_Package_Specification
3617 or else NT (N).Nkind = N_Procedure_Specification);
3619 end Set_Generic_Parent;
3621 procedure Set_Generic_Parent_Type
3622 (N : Node_Id; Val : Node_Id) is
3624 pragma Assert (False
3625 or else NT (N).Nkind = N_Subtype_Declaration);
3627 end Set_Generic_Parent_Type;
3629 procedure Set_Handled_Statement_Sequence
3630 (N : Node_Id; Val : Node_Id) is
3632 pragma Assert (False
3633 or else NT (N).Nkind = N_Accept_Statement
3634 or else NT (N).Nkind = N_Block_Statement
3635 or else NT (N).Nkind = N_Entry_Body
3636 or else NT (N).Nkind = N_Package_Body
3637 or else NT (N).Nkind = N_Subprogram_Body
3638 or else NT (N).Nkind = N_Task_Body);
3639 Set_Node4_With_Parent (N, Val);
3640 end Set_Handled_Statement_Sequence;
3642 procedure Set_Handler_List_Entry
3643 (N : Node_Id; Val : Node_Id) is
3645 pragma Assert (False
3646 or else NT (N).Nkind = N_Object_Declaration);
3648 end Set_Handler_List_Entry;
3650 procedure Set_Has_Created_Identifier
3651 (N : Node_Id; Val : Boolean := True) is
3653 pragma Assert (False
3654 or else NT (N).Nkind = N_Block_Statement
3655 or else NT (N).Nkind = N_Loop_Statement);
3656 Set_Flag15 (N, Val);
3657 end Set_Has_Created_Identifier;
3659 procedure Set_Has_Dynamic_Length_Check
3660 (N : Node_Id; Val : Boolean := True) is
3662 Set_Flag10 (N, Val);
3663 end Set_Has_Dynamic_Length_Check;
3665 procedure Set_Has_Dynamic_Range_Check
3666 (N : Node_Id; Val : Boolean := True) is
3668 Set_Flag12 (N, Val);
3669 end Set_Has_Dynamic_Range_Check;
3671 procedure Set_Has_No_Elaboration_Code
3672 (N : Node_Id; Val : Boolean := True) is
3674 pragma Assert (False
3675 or else NT (N).Nkind = N_Compilation_Unit);
3676 Set_Flag17 (N, Val);
3677 end Set_Has_No_Elaboration_Code;
3679 procedure Set_Has_Priority_Pragma
3680 (N : Node_Id; Val : Boolean := True) is
3682 pragma Assert (False
3683 or else NT (N).Nkind = N_Protected_Definition
3684 or else NT (N).Nkind = N_Subprogram_Body
3685 or else NT (N).Nkind = N_Task_Definition);
3687 end Set_Has_Priority_Pragma;
3689 procedure Set_Has_Private_View
3690 (N : Node_Id; Val : Boolean := True) is
3692 pragma Assert (False
3693 or else NT (N).Nkind in N_Op
3694 or else NT (N).Nkind = N_Character_Literal
3695 or else NT (N).Nkind = N_Expanded_Name
3696 or else NT (N).Nkind = N_Identifier
3697 or else NT (N).Nkind = N_Operator_Symbol);
3698 Set_Flag11 (N, Val);
3699 end Set_Has_Private_View;
3701 procedure Set_Has_Storage_Size_Pragma
3702 (N : Node_Id; Val : Boolean := True) is
3704 pragma Assert (False
3705 or else NT (N).Nkind = N_Task_Definition);
3707 end Set_Has_Storage_Size_Pragma;
3709 procedure Set_Has_Task_Info_Pragma
3710 (N : Node_Id; Val : Boolean := True) is
3712 pragma Assert (False
3713 or else NT (N).Nkind = N_Task_Definition);
3715 end Set_Has_Task_Info_Pragma;
3717 procedure Set_Has_Task_Name_Pragma
3718 (N : Node_Id; Val : Boolean := True) is
3720 pragma Assert (False
3721 or else NT (N).Nkind = N_Task_Definition);
3723 end Set_Has_Task_Name_Pragma;
3725 procedure Set_Has_Wide_Character
3726 (N : Node_Id; Val : Boolean := True) is
3728 pragma Assert (False
3729 or else NT (N).Nkind = N_String_Literal);
3730 Set_Flag11 (N, Val);
3731 end Set_Has_Wide_Character;
3733 procedure Set_Hidden_By_Use_Clause
3734 (N : Node_Id; Val : Elist_Id) is
3736 pragma Assert (False
3737 or else NT (N).Nkind = N_Use_Package_Clause
3738 or else NT (N).Nkind = N_Use_Type_Clause);
3739 Set_Elist4 (N, Val);
3740 end Set_Hidden_By_Use_Clause;
3742 procedure Set_High_Bound
3743 (N : Node_Id; Val : Node_Id) is
3745 pragma Assert (False
3746 or else NT (N).Nkind = N_Range
3747 or else NT (N).Nkind = N_Real_Range_Specification
3748 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3749 Set_Node2_With_Parent (N, Val);
3752 procedure Set_Identifier
3753 (N : Node_Id; Val : Node_Id) is
3755 pragma Assert (False
3756 or else NT (N).Nkind = N_At_Clause
3757 or else NT (N).Nkind = N_Block_Statement
3758 or else NT (N).Nkind = N_Designator
3759 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3760 or else NT (N).Nkind = N_Label
3761 or else NT (N).Nkind = N_Loop_Statement
3762 or else NT (N).Nkind = N_Record_Representation_Clause
3763 or else NT (N).Nkind = N_Subprogram_Info);
3764 Set_Node1_With_Parent (N, Val);
3767 procedure Set_Implicit_With
3768 (N : Node_Id; Val : Boolean := True) is
3770 pragma Assert (False
3771 or else NT (N).Nkind = N_With_Clause);
3772 Set_Flag16 (N, Val);
3773 end Set_Implicit_With;
3775 procedure Set_In_Present
3776 (N : Node_Id; Val : Boolean := True) is
3778 pragma Assert (False
3779 or else NT (N).Nkind = N_Formal_Object_Declaration
3780 or else NT (N).Nkind = N_Parameter_Specification);
3781 Set_Flag15 (N, Val);
3784 procedure Set_Includes_Infinities
3785 (N : Node_Id; Val : Boolean := True) is
3787 pragma Assert (False
3788 or else NT (N).Nkind = N_Range);
3789 Set_Flag11 (N, Val);
3790 end Set_Includes_Infinities;
3792 procedure Set_Instance_Spec
3793 (N : Node_Id; Val : Node_Id) is
3795 pragma Assert (False
3796 or else NT (N).Nkind = N_Formal_Package_Declaration
3797 or else NT (N).Nkind = N_Function_Instantiation
3798 or else NT (N).Nkind = N_Package_Instantiation
3799 or else NT (N).Nkind = N_Procedure_Instantiation);
3800 Set_Node5 (N, Val); -- semantic field, no Parent set
3801 end Set_Instance_Spec;
3803 procedure Set_Intval
3804 (N : Node_Id; Val : Uint) is
3806 pragma Assert (False
3807 or else NT (N).Nkind = N_Integer_Literal);
3811 procedure Set_Is_Asynchronous_Call_Block
3812 (N : Node_Id; Val : Boolean := True) is
3814 pragma Assert (False
3815 or else NT (N).Nkind = N_Block_Statement);
3817 end Set_Is_Asynchronous_Call_Block;
3819 procedure Set_Is_Component_Left_Opnd
3820 (N : Node_Id; Val : Boolean := True) is
3822 pragma Assert (False
3823 or else NT (N).Nkind = N_Op_Concat);
3824 Set_Flag13 (N, Val);
3825 end Set_Is_Component_Left_Opnd;
3827 procedure Set_Is_Component_Right_Opnd
3828 (N : Node_Id; Val : Boolean := True) is
3830 pragma Assert (False
3831 or else NT (N).Nkind = N_Op_Concat);
3832 Set_Flag14 (N, Val);
3833 end Set_Is_Component_Right_Opnd;
3835 procedure Set_Is_Controlling_Actual
3836 (N : Node_Id; Val : Boolean := True) is
3838 pragma Assert (False
3839 or else NT (N).Nkind in N_Subexpr);
3840 Set_Flag16 (N, Val);
3841 end Set_Is_Controlling_Actual;
3843 procedure Set_Is_In_Discriminant_Check
3844 (N : Node_Id; Val : Boolean := True) is
3846 pragma Assert (False
3847 or else NT (N).Nkind = N_Selected_Component);
3848 Set_Flag11 (N, Val);
3849 end Set_Is_In_Discriminant_Check;
3851 procedure Set_Is_Machine_Number
3852 (N : Node_Id; Val : Boolean := True) is
3854 pragma Assert (False
3855 or else NT (N).Nkind = N_Real_Literal);
3856 Set_Flag11 (N, Val);
3857 end Set_Is_Machine_Number;
3859 procedure Set_Is_Null_Loop
3860 (N : Node_Id; Val : Boolean := True) is
3862 pragma Assert (False
3863 or else NT (N).Nkind = N_Loop_Statement);
3864 Set_Flag16 (N, Val);
3865 end Set_Is_Null_Loop;
3867 procedure Set_Is_Overloaded
3868 (N : Node_Id; Val : Boolean := True) is
3870 pragma Assert (False
3871 or else NT (N).Nkind in N_Subexpr);
3873 end Set_Is_Overloaded;
3875 procedure Set_Is_Power_Of_2_For_Shift
3876 (N : Node_Id; Val : Boolean := True) is
3878 pragma Assert (False
3879 or else NT (N).Nkind = N_Op_Expon);
3880 Set_Flag13 (N, Val);
3881 end Set_Is_Power_Of_2_For_Shift;
3883 procedure Set_Is_Protected_Subprogram_Body
3884 (N : Node_Id; Val : Boolean := True) is
3886 pragma Assert (False
3887 or else NT (N).Nkind = N_Subprogram_Body);
3889 end Set_Is_Protected_Subprogram_Body;
3891 procedure Set_Is_Static_Expression
3892 (N : Node_Id; Val : Boolean := True) is
3894 pragma Assert (False
3895 or else NT (N).Nkind in N_Subexpr);
3897 end Set_Is_Static_Expression;
3899 procedure Set_Is_Subprogram_Descriptor
3900 (N : Node_Id; Val : Boolean := True) is
3902 pragma Assert (False
3903 or else NT (N).Nkind = N_Object_Declaration);
3904 Set_Flag16 (N, Val);
3905 end Set_Is_Subprogram_Descriptor;
3907 procedure Set_Is_Task_Allocation_Block
3908 (N : Node_Id; Val : Boolean := True) is
3910 pragma Assert (False
3911 or else NT (N).Nkind = N_Block_Statement);
3913 end Set_Is_Task_Allocation_Block;
3915 procedure Set_Is_Task_Master
3916 (N : Node_Id; Val : Boolean := True) is
3918 pragma Assert (False
3919 or else NT (N).Nkind = N_Block_Statement
3920 or else NT (N).Nkind = N_Subprogram_Body
3921 or else NT (N).Nkind = N_Task_Body);
3923 end Set_Is_Task_Master;
3925 procedure Set_Iteration_Scheme
3926 (N : Node_Id; Val : Node_Id) is
3928 pragma Assert (False
3929 or else NT (N).Nkind = N_Loop_Statement);
3930 Set_Node2_With_Parent (N, Val);
3931 end Set_Iteration_Scheme;
3934 (N : Node_Id; Val : Entity_Id) is
3936 pragma Assert (False
3937 or else NT (N).Nkind = N_Itype_Reference);
3938 Set_Node1 (N, Val); -- no parent, semantic field
3941 procedure Set_Kill_Range_Check
3942 (N : Node_Id; Val : Boolean := True) is
3944 pragma Assert (False
3945 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3946 Set_Flag11 (N, Val);
3947 end Set_Kill_Range_Check;
3949 procedure Set_Label_Construct
3950 (N : Node_Id; Val : Node_Id) is
3952 pragma Assert (False
3953 or else NT (N).Nkind = N_Implicit_Label_Declaration);
3954 Set_Node2 (N, Val); -- semantic field, no parent set
3955 end Set_Label_Construct;
3957 procedure Set_Last_Bit
3958 (N : Node_Id; Val : Node_Id) is
3960 pragma Assert (False
3961 or else NT (N).Nkind = N_Component_Clause);
3962 Set_Node4_With_Parent (N, Val);
3965 procedure Set_Last_Name
3966 (N : Node_Id; Val : Boolean := True) is
3968 pragma Assert (False
3969 or else NT (N).Nkind = N_With_Clause);
3973 procedure Set_Left_Opnd
3974 (N : Node_Id; Val : Node_Id) is
3976 pragma Assert (False
3977 or else NT (N).Nkind = N_And_Then
3978 or else NT (N).Nkind = N_In
3979 or else NT (N).Nkind = N_Not_In
3980 or else NT (N).Nkind = N_Or_Else
3981 or else NT (N).Nkind in N_Binary_Op);
3982 Set_Node2_With_Parent (N, Val);
3985 procedure Set_Library_Unit
3986 (N : Node_Id; Val : Node_Id) is
3988 pragma Assert (False
3989 or else NT (N).Nkind = N_Compilation_Unit
3990 or else NT (N).Nkind = N_Package_Body_Stub
3991 or else NT (N).Nkind = N_Protected_Body_Stub
3992 or else NT (N).Nkind = N_Subprogram_Body_Stub
3993 or else NT (N).Nkind = N_Task_Body_Stub
3994 or else NT (N).Nkind = N_With_Clause);
3995 Set_Node4 (N, Val); -- semantic field, no parent set
3996 end Set_Library_Unit;
3998 procedure Set_Limited_View_Installed
3999 (N : Node_Id; Val : Boolean := True) is
4001 pragma Assert (False
4002 or else NT (N).Nkind = N_Package_Specification
4003 or else NT (N).Nkind = N_With_Clause);
4004 Set_Flag18 (N, Val);
4005 end Set_Limited_View_Installed;
4007 procedure Set_Limited_Present
4008 (N : Node_Id; Val : Boolean := True) is
4010 pragma Assert (False
4011 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4012 or else NT (N).Nkind = N_Private_Type_Declaration
4013 or else NT (N).Nkind = N_Record_Definition
4014 or else NT (N).Nkind = N_With_Clause);
4015 Set_Flag17 (N, Val);
4016 end Set_Limited_Present;
4018 procedure Set_Literals
4019 (N : Node_Id; Val : List_Id) is
4021 pragma Assert (False
4022 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4023 Set_List1_With_Parent (N, Val);
4026 procedure Set_Loop_Actions
4027 (N : Node_Id; Val : List_Id) is
4029 pragma Assert (False
4030 or else NT (N).Nkind = N_Component_Association);
4031 Set_List2 (N, Val); -- semantic field, no parent set
4032 end Set_Loop_Actions;
4034 procedure Set_Loop_Parameter_Specification
4035 (N : Node_Id; Val : Node_Id) is
4037 pragma Assert (False
4038 or else NT (N).Nkind = N_Iteration_Scheme);
4039 Set_Node4_With_Parent (N, Val);
4040 end Set_Loop_Parameter_Specification;
4042 procedure Set_Low_Bound
4043 (N : Node_Id; Val : Node_Id) is
4045 pragma Assert (False
4046 or else NT (N).Nkind = N_Range
4047 or else NT (N).Nkind = N_Real_Range_Specification
4048 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4049 Set_Node1_With_Parent (N, Val);
4052 procedure Set_Mod_Clause
4053 (N : Node_Id; Val : Node_Id) is
4055 pragma Assert (False
4056 or else NT (N).Nkind = N_Record_Representation_Clause);
4057 Set_Node2_With_Parent (N, Val);
4060 procedure Set_More_Ids
4061 (N : Node_Id; Val : Boolean := True) is
4063 pragma Assert (False
4064 or else NT (N).Nkind = N_Component_Declaration
4065 or else NT (N).Nkind = N_Discriminant_Specification
4066 or else NT (N).Nkind = N_Exception_Declaration
4067 or else NT (N).Nkind = N_Formal_Object_Declaration
4068 or else NT (N).Nkind = N_Number_Declaration
4069 or else NT (N).Nkind = N_Object_Declaration
4070 or else NT (N).Nkind = N_Parameter_Specification);
4074 procedure Set_Must_Be_Byte_Aligned
4075 (N : Node_Id; Val : Boolean := True) is
4077 pragma Assert (False
4078 or else NT (N).Nkind = N_Attribute_Reference);
4079 Set_Flag14 (N, Val);
4080 end Set_Must_Be_Byte_Aligned;
4082 procedure Set_Must_Not_Freeze
4083 (N : Node_Id; Val : Boolean := True) is
4085 pragma Assert (False
4086 or else NT (N).Nkind = N_Subtype_Indication
4087 or else NT (N).Nkind in N_Subexpr);
4089 end Set_Must_Not_Freeze;
4092 (N : Node_Id; Val : Node_Id) is
4094 pragma Assert (False
4095 or else NT (N).Nkind = N_Assignment_Statement
4096 or else NT (N).Nkind = N_Attribute_Definition_Clause
4097 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4098 or else NT (N).Nkind = N_Designator
4099 or else NT (N).Nkind = N_Entry_Call_Statement
4100 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4101 or else NT (N).Nkind = N_Exit_Statement
4102 or else NT (N).Nkind = N_Formal_Package_Declaration
4103 or else NT (N).Nkind = N_Function_Call
4104 or else NT (N).Nkind = N_Function_Instantiation
4105 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4106 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4107 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4108 or else NT (N).Nkind = N_Goto_Statement
4109 or else NT (N).Nkind = N_Object_Renaming_Declaration
4110 or else NT (N).Nkind = N_Package_Instantiation
4111 or else NT (N).Nkind = N_Package_Renaming_Declaration
4112 or else NT (N).Nkind = N_Procedure_Call_Statement
4113 or else NT (N).Nkind = N_Procedure_Instantiation
4114 or else NT (N).Nkind = N_Raise_Statement
4115 or else NT (N).Nkind = N_Requeue_Statement
4116 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4117 or else NT (N).Nkind = N_Subunit
4118 or else NT (N).Nkind = N_Variant_Part
4119 or else NT (N).Nkind = N_With_Clause
4120 or else NT (N).Nkind = N_With_Type_Clause);
4121 Set_Node2_With_Parent (N, Val);
4125 (N : Node_Id; Val : List_Id) is
4127 pragma Assert (False
4128 or else NT (N).Nkind = N_Abort_Statement
4129 or else NT (N).Nkind = N_Use_Package_Clause);
4130 Set_List2_With_Parent (N, Val);
4133 procedure Set_Next_Entity
4134 (N : Node_Id; Val : Node_Id) is
4136 pragma Assert (False
4137 or else NT (N).Nkind = N_Defining_Character_Literal
4138 or else NT (N).Nkind = N_Defining_Identifier
4139 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4140 Set_Node2 (N, Val); -- semantic field, no parent set
4141 end Set_Next_Entity;
4143 procedure Set_Next_Named_Actual
4144 (N : Node_Id; Val : Node_Id) is
4146 pragma Assert (False
4147 or else NT (N).Nkind = N_Parameter_Association);
4148 Set_Node4 (N, Val); -- semantic field, no parent set
4149 end Set_Next_Named_Actual;
4151 procedure Set_Next_Rep_Item
4152 (N : Node_Id; Val : Node_Id) is
4154 pragma Assert (False
4155 or else NT (N).Nkind = N_Attribute_Definition_Clause
4156 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4157 or else NT (N).Nkind = N_Pragma
4158 or else NT (N).Nkind = N_Record_Representation_Clause);
4159 Set_Node4 (N, Val); -- semantic field, no parent set
4160 end Set_Next_Rep_Item;
4162 procedure Set_Next_Use_Clause
4163 (N : Node_Id; Val : Node_Id) is
4165 pragma Assert (False
4166 or else NT (N).Nkind = N_Use_Package_Clause
4167 or else NT (N).Nkind = N_Use_Type_Clause);
4168 Set_Node3 (N, Val); -- semantic field, no parent set
4169 end Set_Next_Use_Clause;
4171 procedure Set_No_Ctrl_Actions
4172 (N : Node_Id; Val : Boolean := True) is
4174 pragma Assert (False
4175 or else NT (N).Nkind = N_Assignment_Statement);
4177 end Set_No_Ctrl_Actions;
4179 procedure Set_No_Entities_Ref_In_Spec
4180 (N : Node_Id; Val : Boolean := True) is
4182 pragma Assert (False
4183 or else NT (N).Nkind = N_With_Clause);
4185 end Set_No_Entities_Ref_In_Spec;
4187 procedure Set_No_Initialization
4188 (N : Node_Id; Val : Boolean := True) is
4190 pragma Assert (False
4191 or else NT (N).Nkind = N_Allocator
4192 or else NT (N).Nkind = N_Object_Declaration);
4193 Set_Flag13 (N, Val);
4194 end Set_No_Initialization;
4196 procedure Set_No_Truncation
4197 (N : Node_Id; Val : Boolean := True) is
4199 pragma Assert (False
4200 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4201 Set_Flag17 (N, Val);
4202 end Set_No_Truncation;
4204 procedure Set_Null_Present
4205 (N : Node_Id; Val : Boolean := True) is
4207 pragma Assert (False
4208 or else NT (N).Nkind = N_Component_List
4209 or else NT (N).Nkind = N_Record_Definition);
4210 Set_Flag13 (N, Val);
4211 end Set_Null_Present;
4213 procedure Set_Null_Record_Present
4214 (N : Node_Id; Val : Boolean := True) is
4216 pragma Assert (False
4217 or else NT (N).Nkind = N_Aggregate
4218 or else NT (N).Nkind = N_Extension_Aggregate);
4219 Set_Flag17 (N, Val);
4220 end Set_Null_Record_Present;
4222 procedure Set_Object_Definition
4223 (N : Node_Id; Val : Node_Id) is
4225 pragma Assert (False
4226 or else NT (N).Nkind = N_Object_Declaration);
4227 Set_Node4_With_Parent (N, Val);
4228 end Set_Object_Definition;
4230 procedure Set_OK_For_Stream
4231 (N : Node_Id; Val : Boolean := True) is
4233 pragma Assert (False
4234 or else NT (N).Nkind = N_Attribute_Reference);
4236 end Set_OK_For_Stream;
4238 procedure Set_Original_Discriminant
4239 (N : Node_Id; Val : Node_Id) is
4241 pragma Assert (False
4242 or else NT (N).Nkind = N_Identifier);
4243 Set_Node2 (N, Val); -- semantic field, no parent set
4244 end Set_Original_Discriminant;
4246 procedure Set_Original_Entity
4247 (N : Node_Id; Val : Entity_Id) is
4249 pragma Assert (False
4250 or else NT (N).Nkind = N_Integer_Literal
4251 or else NT (N).Nkind = N_Real_Literal);
4252 Set_Node2 (N, Val); -- semantic field, no parent set
4253 end Set_Original_Entity;
4255 procedure Set_Others_Discrete_Choices
4256 (N : Node_Id; Val : List_Id) is
4258 pragma Assert (False
4259 or else NT (N).Nkind = N_Others_Choice);
4260 Set_List1_With_Parent (N, Val);
4261 end Set_Others_Discrete_Choices;
4263 procedure Set_Out_Present
4264 (N : Node_Id; Val : Boolean := True) is
4266 pragma Assert (False
4267 or else NT (N).Nkind = N_Formal_Object_Declaration
4268 or else NT (N).Nkind = N_Parameter_Specification);
4269 Set_Flag17 (N, Val);
4270 end Set_Out_Present;
4272 procedure Set_Parameter_Associations
4273 (N : Node_Id; Val : List_Id) is
4275 pragma Assert (False
4276 or else NT (N).Nkind = N_Entry_Call_Statement
4277 or else NT (N).Nkind = N_Function_Call
4278 or else NT (N).Nkind = N_Procedure_Call_Statement);
4279 Set_List3_With_Parent (N, Val);
4280 end Set_Parameter_Associations;
4282 procedure Set_Parameter_List_Truncated
4283 (N : Node_Id; Val : Boolean := True) is
4285 pragma Assert (False
4286 or else NT (N).Nkind = N_Function_Call
4287 or else NT (N).Nkind = N_Procedure_Call_Statement);
4288 Set_Flag17 (N, Val);
4289 end Set_Parameter_List_Truncated;
4291 procedure Set_Parameter_Specifications
4292 (N : Node_Id; Val : List_Id) is
4294 pragma Assert (False
4295 or else NT (N).Nkind = N_Accept_Statement
4296 or else NT (N).Nkind = N_Access_Function_Definition
4297 or else NT (N).Nkind = N_Access_Procedure_Definition
4298 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4299 or else NT (N).Nkind = N_Entry_Declaration
4300 or else NT (N).Nkind = N_Function_Specification
4301 or else NT (N).Nkind = N_Procedure_Specification);
4302 Set_List3_With_Parent (N, Val);
4303 end Set_Parameter_Specifications;
4305 procedure Set_Parameter_Type
4306 (N : Node_Id; Val : Node_Id) is
4308 pragma Assert (False
4309 or else NT (N).Nkind = N_Parameter_Specification);
4310 Set_Node2_With_Parent (N, Val);
4311 end Set_Parameter_Type;
4313 procedure Set_Parent_Spec
4314 (N : Node_Id; Val : Node_Id) is
4316 pragma Assert (False
4317 or else NT (N).Nkind = N_Function_Instantiation
4318 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4319 or else NT (N).Nkind = N_Generic_Package_Declaration
4320 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4321 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4322 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4323 or else NT (N).Nkind = N_Package_Declaration
4324 or else NT (N).Nkind = N_Package_Instantiation
4325 or else NT (N).Nkind = N_Package_Renaming_Declaration
4326 or else NT (N).Nkind = N_Procedure_Instantiation
4327 or else NT (N).Nkind = N_Subprogram_Declaration
4328 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4329 Set_Node4 (N, Val); -- semantic field, no parent set
4330 end Set_Parent_Spec;
4332 procedure Set_Position
4333 (N : Node_Id; Val : Node_Id) is
4335 pragma Assert (False
4336 or else NT (N).Nkind = N_Component_Clause);
4337 Set_Node2_With_Parent (N, Val);
4340 procedure Set_Pragma_Argument_Associations
4341 (N : Node_Id; Val : List_Id) is
4343 pragma Assert (False
4344 or else NT (N).Nkind = N_Pragma);
4345 Set_List2_With_Parent (N, Val);
4346 end Set_Pragma_Argument_Associations;
4348 procedure Set_Pragmas_After
4349 (N : Node_Id; Val : List_Id) is
4351 pragma Assert (False
4352 or else NT (N).Nkind = N_Compilation_Unit_Aux
4353 or else NT (N).Nkind = N_Terminate_Alternative);
4354 Set_List5_With_Parent (N, Val);
4355 end Set_Pragmas_After;
4357 procedure Set_Pragmas_Before
4358 (N : Node_Id; Val : List_Id) is
4360 pragma Assert (False
4361 or else NT (N).Nkind = N_Accept_Alternative
4362 or else NT (N).Nkind = N_Delay_Alternative
4363 or else NT (N).Nkind = N_Entry_Call_Alternative
4364 or else NT (N).Nkind = N_Mod_Clause
4365 or else NT (N).Nkind = N_Terminate_Alternative
4366 or else NT (N).Nkind = N_Triggering_Alternative);
4367 Set_List4_With_Parent (N, Val);
4368 end Set_Pragmas_Before;
4370 procedure Set_Prefix
4371 (N : Node_Id; Val : Node_Id) is
4373 pragma Assert (False
4374 or else NT (N).Nkind = N_Attribute_Reference
4375 or else NT (N).Nkind = N_Expanded_Name
4376 or else NT (N).Nkind = N_Explicit_Dereference
4377 or else NT (N).Nkind = N_Indexed_Component
4378 or else NT (N).Nkind = N_Reference
4379 or else NT (N).Nkind = N_Selected_Component
4380 or else NT (N).Nkind = N_Slice);
4381 Set_Node3_With_Parent (N, Val);
4384 procedure Set_Present_Expr
4385 (N : Node_Id; Val : Uint) is
4387 pragma Assert (False
4388 or else NT (N).Nkind = N_Variant);
4390 end Set_Present_Expr;
4392 procedure Set_Prev_Ids
4393 (N : Node_Id; Val : Boolean := True) is
4395 pragma Assert (False
4396 or else NT (N).Nkind = N_Component_Declaration
4397 or else NT (N).Nkind = N_Discriminant_Specification
4398 or else NT (N).Nkind = N_Exception_Declaration
4399 or else NT (N).Nkind = N_Formal_Object_Declaration
4400 or else NT (N).Nkind = N_Number_Declaration
4401 or else NT (N).Nkind = N_Object_Declaration
4402 or else NT (N).Nkind = N_Parameter_Specification);
4406 procedure Set_Print_In_Hex
4407 (N : Node_Id; Val : Boolean := True) is
4409 pragma Assert (False
4410 or else NT (N).Nkind = N_Integer_Literal);
4411 Set_Flag13 (N, Val);
4412 end Set_Print_In_Hex;
4414 procedure Set_Private_Declarations
4415 (N : Node_Id; Val : List_Id) is
4417 pragma Assert (False
4418 or else NT (N).Nkind = N_Package_Specification
4419 or else NT (N).Nkind = N_Protected_Definition
4420 or else NT (N).Nkind = N_Task_Definition);
4421 Set_List3_With_Parent (N, Val);
4422 end Set_Private_Declarations;
4424 procedure Set_Private_Present
4425 (N : Node_Id; Val : Boolean := True) is
4427 pragma Assert (False
4428 or else NT (N).Nkind = N_Compilation_Unit
4429 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
4430 Set_Flag15 (N, Val);
4431 end Set_Private_Present;
4433 procedure Set_Procedure_To_Call
4434 (N : Node_Id; Val : Node_Id) is
4436 pragma Assert (False
4437 or else NT (N).Nkind = N_Allocator
4438 or else NT (N).Nkind = N_Free_Statement
4439 or else NT (N).Nkind = N_Return_Statement);
4440 Set_Node4 (N, Val); -- semantic field, no parent set
4441 end Set_Procedure_To_Call;
4443 procedure Set_Proper_Body
4444 (N : Node_Id; Val : Node_Id) is
4446 pragma Assert (False
4447 or else NT (N).Nkind = N_Subunit);
4448 Set_Node1_With_Parent (N, Val);
4449 end Set_Proper_Body;
4451 procedure Set_Protected_Definition
4452 (N : Node_Id; Val : Node_Id) is
4454 pragma Assert (False
4455 or else NT (N).Nkind = N_Protected_Type_Declaration
4456 or else NT (N).Nkind = N_Single_Protected_Declaration);
4457 Set_Node3_With_Parent (N, Val);
4458 end Set_Protected_Definition;
4460 procedure Set_Protected_Present
4461 (N : Node_Id; Val : Boolean := True) is
4463 pragma Assert (False
4464 or else NT (N).Nkind = N_Access_Function_Definition
4465 or else NT (N).Nkind = N_Access_Procedure_Definition);
4466 Set_Flag15 (N, Val);
4467 end Set_Protected_Present;
4469 procedure Set_Raises_Constraint_Error
4470 (N : Node_Id; Val : Boolean := True) is
4472 pragma Assert (False
4473 or else NT (N).Nkind in N_Subexpr);
4475 end Set_Raises_Constraint_Error;
4477 procedure Set_Range_Constraint
4478 (N : Node_Id; Val : Node_Id) is
4480 pragma Assert (False
4481 or else NT (N).Nkind = N_Delta_Constraint
4482 or else NT (N).Nkind = N_Digits_Constraint);
4483 Set_Node4_With_Parent (N, Val);
4484 end Set_Range_Constraint;
4486 procedure Set_Range_Expression
4487 (N : Node_Id; Val : Node_Id) is
4489 pragma Assert (False
4490 or else NT (N).Nkind = N_Range_Constraint);
4491 Set_Node4_With_Parent (N, Val);
4492 end Set_Range_Expression;
4494 procedure Set_Real_Range_Specification
4495 (N : Node_Id; Val : Node_Id) is
4497 pragma Assert (False
4498 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4499 or else NT (N).Nkind = N_Floating_Point_Definition
4500 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4501 Set_Node4_With_Parent (N, Val);
4502 end Set_Real_Range_Specification;
4504 procedure Set_Realval
4505 (N : Node_Id; Val : Ureal) is
4507 pragma Assert (False
4508 or else NT (N).Nkind = N_Real_Literal);
4509 Set_Ureal3 (N, Val);
4512 procedure Set_Reason
4513 (N : Node_Id; Val : Uint) is
4515 pragma Assert (False
4516 or else NT (N).Nkind = N_Raise_Constraint_Error
4517 or else NT (N).Nkind = N_Raise_Program_Error
4518 or else NT (N).Nkind = N_Raise_Storage_Error);
4522 procedure Set_Record_Extension_Part
4523 (N : Node_Id; Val : Node_Id) is
4525 pragma Assert (False
4526 or else NT (N).Nkind = N_Derived_Type_Definition);
4527 Set_Node3_With_Parent (N, Val);
4528 end Set_Record_Extension_Part;
4530 procedure Set_Redundant_Use
4531 (N : Node_Id; Val : Boolean := True) is
4533 pragma Assert (False
4534 or else NT (N).Nkind = N_Attribute_Reference
4535 or else NT (N).Nkind = N_Expanded_Name
4536 or else NT (N).Nkind = N_Identifier);
4537 Set_Flag13 (N, Val);
4538 end Set_Redundant_Use;
4540 procedure Set_Return_Type
4541 (N : Node_Id; Val : Node_Id) is
4543 pragma Assert (False
4544 or else NT (N).Nkind = N_Return_Statement);
4545 Set_Node2 (N, Val); -- semantic field, no parent set
4546 end Set_Return_Type;
4548 procedure Set_Reverse_Present
4549 (N : Node_Id; Val : Boolean := True) is
4551 pragma Assert (False
4552 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4553 Set_Flag15 (N, Val);
4554 end Set_Reverse_Present;
4556 procedure Set_Right_Opnd
4557 (N : Node_Id; Val : Node_Id) is
4559 pragma Assert (False
4560 or else NT (N).Nkind in N_Op
4561 or else NT (N).Nkind = N_And_Then
4562 or else NT (N).Nkind = N_In
4563 or else NT (N).Nkind = N_Not_In
4564 or else NT (N).Nkind = N_Or_Else);
4565 Set_Node3_With_Parent (N, Val);
4568 procedure Set_Rounded_Result
4569 (N : Node_Id; Val : Boolean := True) is
4571 pragma Assert (False
4572 or else NT (N).Nkind = N_Op_Divide
4573 or else NT (N).Nkind = N_Op_Multiply
4574 or else NT (N).Nkind = N_Type_Conversion);
4575 Set_Flag18 (N, Val);
4576 end Set_Rounded_Result;
4579 (N : Node_Id; Val : Node_Id) is
4581 pragma Assert (False
4582 or else NT (N).Nkind = N_Defining_Character_Literal
4583 or else NT (N).Nkind = N_Defining_Identifier
4584 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4585 Set_Node3 (N, Val); -- semantic field, no parent set
4588 procedure Set_Select_Alternatives
4589 (N : Node_Id; Val : List_Id) is
4591 pragma Assert (False
4592 or else NT (N).Nkind = N_Selective_Accept);
4593 Set_List1_With_Parent (N, Val);
4594 end Set_Select_Alternatives;
4596 procedure Set_Selector_Name
4597 (N : Node_Id; Val : Node_Id) is
4599 pragma Assert (False
4600 or else NT (N).Nkind = N_Expanded_Name
4601 or else NT (N).Nkind = N_Generic_Association
4602 or else NT (N).Nkind = N_Parameter_Association
4603 or else NT (N).Nkind = N_Selected_Component);
4604 Set_Node2_With_Parent (N, Val);
4605 end Set_Selector_Name;
4607 procedure Set_Selector_Names
4608 (N : Node_Id; Val : List_Id) is
4610 pragma Assert (False
4611 or else NT (N).Nkind = N_Discriminant_Association);
4612 Set_List1_With_Parent (N, Val);
4613 end Set_Selector_Names;
4615 procedure Set_Shift_Count_OK
4616 (N : Node_Id; Val : Boolean := True) is
4618 pragma Assert (False
4619 or else NT (N).Nkind = N_Op_Rotate_Left
4620 or else NT (N).Nkind = N_Op_Rotate_Right
4621 or else NT (N).Nkind = N_Op_Shift_Left
4622 or else NT (N).Nkind = N_Op_Shift_Right
4623 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4625 end Set_Shift_Count_OK;
4627 procedure Set_Source_Type
4628 (N : Node_Id; Val : Entity_Id) is
4630 pragma Assert (False
4631 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4632 Set_Node1 (N, Val); -- semantic field, no parent set
4633 end Set_Source_Type;
4635 procedure Set_Specification
4636 (N : Node_Id; Val : Node_Id) is
4638 pragma Assert (False
4639 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4640 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4641 or else NT (N).Nkind = N_Generic_Package_Declaration
4642 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4643 or else NT (N).Nkind = N_Package_Declaration
4644 or else NT (N).Nkind = N_Subprogram_Body
4645 or else NT (N).Nkind = N_Subprogram_Body_Stub
4646 or else NT (N).Nkind = N_Subprogram_Declaration
4647 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4648 Set_Node1_With_Parent (N, Val);
4649 end Set_Specification;
4651 procedure Set_Statements
4652 (N : Node_Id; Val : List_Id) is
4654 pragma Assert (False
4655 or else NT (N).Nkind = N_Abortable_Part
4656 or else NT (N).Nkind = N_Accept_Alternative
4657 or else NT (N).Nkind = N_Case_Statement_Alternative
4658 or else NT (N).Nkind = N_Delay_Alternative
4659 or else NT (N).Nkind = N_Entry_Call_Alternative
4660 or else NT (N).Nkind = N_Exception_Handler
4661 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4662 or else NT (N).Nkind = N_Loop_Statement
4663 or else NT (N).Nkind = N_Triggering_Alternative);
4664 Set_List3_With_Parent (N, Val);
4667 procedure Set_Static_Processing_OK
4668 (N : Node_Id; Val : Boolean) is
4670 pragma Assert (False
4671 or else NT (N).Nkind = N_Aggregate);
4673 end Set_Static_Processing_OK;
4675 procedure Set_Storage_Pool
4676 (N : Node_Id; Val : Node_Id) is
4678 pragma Assert (False
4679 or else NT (N).Nkind = N_Allocator
4680 or else NT (N).Nkind = N_Free_Statement
4681 or else NT (N).Nkind = N_Return_Statement);
4682 Set_Node1 (N, Val); -- semantic field, no parent set
4683 end Set_Storage_Pool;
4685 procedure Set_Strval
4686 (N : Node_Id; Val : String_Id) is
4688 pragma Assert (False
4689 or else NT (N).Nkind = N_Operator_Symbol
4690 or else NT (N).Nkind = N_String_Literal);
4694 procedure Set_Subtype_Indication
4695 (N : Node_Id; Val : Node_Id) is
4697 pragma Assert (False
4698 or else NT (N).Nkind = N_Access_To_Object_Definition
4699 or else NT (N).Nkind = N_Component_Declaration
4700 or else NT (N).Nkind = N_Constrained_Array_Definition
4701 or else NT (N).Nkind = N_Derived_Type_Definition
4702 or else NT (N).Nkind = N_Private_Extension_Declaration
4703 or else NT (N).Nkind = N_Subtype_Declaration
4704 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
4705 Set_Node5_With_Parent (N, Val);
4706 end Set_Subtype_Indication;
4708 procedure Set_Subtype_Mark
4709 (N : Node_Id; Val : Node_Id) is
4711 pragma Assert (False
4712 or else NT (N).Nkind = N_Access_Definition
4713 or else NT (N).Nkind = N_Access_Function_Definition
4714 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4715 or else NT (N).Nkind = N_Formal_Object_Declaration
4716 or else NT (N).Nkind = N_Function_Specification
4717 or else NT (N).Nkind = N_Object_Renaming_Declaration
4718 or else NT (N).Nkind = N_Qualified_Expression
4719 or else NT (N).Nkind = N_Subtype_Indication
4720 or else NT (N).Nkind = N_Type_Conversion
4721 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4722 Set_Node4_With_Parent (N, Val);
4723 end Set_Subtype_Mark;
4725 procedure Set_Subtype_Marks
4726 (N : Node_Id; Val : List_Id) is
4728 pragma Assert (False
4729 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4730 or else NT (N).Nkind = N_Use_Type_Clause);
4731 Set_List2_With_Parent (N, Val);
4732 end Set_Subtype_Marks;
4734 procedure Set_Tagged_Present
4735 (N : Node_Id; Val : Boolean := True) is
4737 pragma Assert (False
4738 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4739 or else NT (N).Nkind = N_Private_Type_Declaration
4740 or else NT (N).Nkind = N_Record_Definition
4741 or else NT (N).Nkind = N_With_Type_Clause);
4742 Set_Flag15 (N, Val);
4743 end Set_Tagged_Present;
4745 procedure Set_Target_Type
4746 (N : Node_Id; Val : Entity_Id) is
4748 pragma Assert (False
4749 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4750 Set_Node2 (N, Val); -- semantic field, no parent set
4751 end Set_Target_Type;
4753 procedure Set_Task_Body_Procedure
4754 (N : Node_Id; Val : Entity_Id) is
4756 pragma Assert (False
4757 or else NT (N).Nkind = N_Task_Type_Declaration);
4758 Set_Node2 (N, Val); -- semantic field, no parent set
4759 end Set_Task_Body_Procedure;
4761 procedure Set_Task_Definition
4762 (N : Node_Id; Val : Node_Id) is
4764 pragma Assert (False
4765 or else NT (N).Nkind = N_Single_Task_Declaration
4766 or else NT (N).Nkind = N_Task_Type_Declaration);
4767 Set_Node3_With_Parent (N, Val);
4768 end Set_Task_Definition;
4770 procedure Set_Then_Actions
4771 (N : Node_Id; Val : List_Id) is
4773 pragma Assert (False
4774 or else NT (N).Nkind = N_Conditional_Expression);
4775 Set_List2 (N, Val); -- semantic field, no parent set
4776 end Set_Then_Actions;
4778 procedure Set_Then_Statements
4779 (N : Node_Id; Val : List_Id) is
4781 pragma Assert (False
4782 or else NT (N).Nkind = N_Elsif_Part
4783 or else NT (N).Nkind = N_If_Statement);
4784 Set_List2_With_Parent (N, Val);
4785 end Set_Then_Statements;
4787 procedure Set_Treat_Fixed_As_Integer
4788 (N : Node_Id; Val : Boolean := True) is
4790 pragma Assert (False
4791 or else NT (N).Nkind = N_Op_Divide
4792 or else NT (N).Nkind = N_Op_Mod
4793 or else NT (N).Nkind = N_Op_Multiply
4794 or else NT (N).Nkind = N_Op_Rem);
4795 Set_Flag14 (N, Val);
4796 end Set_Treat_Fixed_As_Integer;
4798 procedure Set_Triggering_Alternative
4799 (N : Node_Id; Val : Node_Id) is
4801 pragma Assert (False
4802 or else NT (N).Nkind = N_Asynchronous_Select);
4803 Set_Node1_With_Parent (N, Val);
4804 end Set_Triggering_Alternative;
4806 procedure Set_Triggering_Statement
4807 (N : Node_Id; Val : Node_Id) is
4809 pragma Assert (False
4810 or else NT (N).Nkind = N_Triggering_Alternative);
4811 Set_Node1_With_Parent (N, Val);
4812 end Set_Triggering_Statement;
4814 procedure Set_TSS_Elist
4815 (N : Node_Id; Val : Elist_Id) is
4817 pragma Assert (False
4818 or else NT (N).Nkind = N_Freeze_Entity);
4819 Set_Elist3 (N, Val); -- semantic field, no parent set
4822 procedure Set_Type_Definition
4823 (N : Node_Id; Val : Node_Id) is
4825 pragma Assert (False
4826 or else NT (N).Nkind = N_Full_Type_Declaration);
4827 Set_Node3_With_Parent (N, Val);
4828 end Set_Type_Definition;
4831 (N : Node_Id; Val : Node_Id) is
4833 pragma Assert (False
4834 or else NT (N).Nkind = N_Compilation_Unit);
4835 Set_Node2_With_Parent (N, Val);
4838 procedure Set_Unknown_Discriminants_Present
4839 (N : Node_Id; Val : Boolean := True) is
4841 pragma Assert (False
4842 or else NT (N).Nkind = N_Formal_Type_Declaration
4843 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4844 or else NT (N).Nkind = N_Private_Extension_Declaration
4845 or else NT (N).Nkind = N_Private_Type_Declaration);
4846 Set_Flag13 (N, Val);
4847 end Set_Unknown_Discriminants_Present;
4849 procedure Set_Unreferenced_In_Spec
4850 (N : Node_Id; Val : Boolean := True) is
4852 pragma Assert (False
4853 or else NT (N).Nkind = N_With_Clause);
4855 end Set_Unreferenced_In_Spec;
4857 procedure Set_Variant_Part
4858 (N : Node_Id; Val : Node_Id) is
4860 pragma Assert (False
4861 or else NT (N).Nkind = N_Component_List);
4862 Set_Node4_With_Parent (N, Val);
4863 end Set_Variant_Part;
4865 procedure Set_Variants
4866 (N : Node_Id; Val : List_Id) is
4868 pragma Assert (False
4869 or else NT (N).Nkind = N_Variant_Part);
4870 Set_List1_With_Parent (N, Val);
4873 procedure Set_Visible_Declarations
4874 (N : Node_Id; Val : List_Id) is
4876 pragma Assert (False
4877 or else NT (N).Nkind = N_Package_Specification
4878 or else NT (N).Nkind = N_Protected_Definition
4879 or else NT (N).Nkind = N_Task_Definition);
4880 Set_List2_With_Parent (N, Val);
4881 end Set_Visible_Declarations;
4883 procedure Set_Was_Originally_Stub
4884 (N : Node_Id; Val : Boolean := True) is
4886 pragma Assert (False
4887 or else NT (N).Nkind = N_Package_Body
4888 or else NT (N).Nkind = N_Protected_Body
4889 or else NT (N).Nkind = N_Subprogram_Body
4890 or else NT (N).Nkind = N_Task_Body);
4891 Set_Flag13 (N, Val);
4892 end Set_Was_Originally_Stub;
4894 procedure Set_Zero_Cost_Handling
4895 (N : Node_Id; Val : Boolean := True) is
4897 pragma Assert (False
4898 or else NT (N).Nkind = N_Exception_Handler
4899 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4901 end Set_Zero_Cost_Handling;
4903 -------------------------
4904 -- Iterator Procedures --
4905 -------------------------
4907 procedure Next_Entity (N : in out Node_Id) is
4909 N := Next_Entity (N);
4912 procedure Next_Named_Actual (N : in out Node_Id) is
4914 N := Next_Named_Actual (N);
4915 end Next_Named_Actual;
4917 procedure Next_Rep_Item (N : in out Node_Id) is
4919 N := Next_Rep_Item (N);
4922 procedure Next_Use_Clause (N : in out Node_Id) is
4924 N := Next_Use_Clause (N);
4925 end Next_Use_Clause;
4931 function End_Location (N : Node_Id) return Source_Ptr is
4932 L : constant Uint := End_Span (N);
4938 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
4942 ----------------------
4943 -- Set_End_Location --
4944 ----------------------
4946 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
4949 UI_From_Int (Int (S) - Int (Sloc (N))));
4950 end Set_End_Location;