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 Entity_Or_Associated_Node
934 (N : Node_Id) return Node_Id is
937 or else NT (N).Nkind in N_Has_Entity
938 or else NT (N).Nkind = N_Freeze_Entity);
940 end Entity_Or_Associated_Node;
942 function Entry_Body_Formal_Part
943 (N : Node_Id) return Node_Id is
946 or else NT (N).Nkind = N_Entry_Body);
948 end Entry_Body_Formal_Part;
950 function Entry_Call_Alternative
951 (N : Node_Id) return Node_Id is
954 or else NT (N).Nkind = N_Conditional_Entry_Call
955 or else NT (N).Nkind = N_Timed_Entry_Call);
957 end Entry_Call_Alternative;
959 function Entry_Call_Statement
960 (N : Node_Id) return Node_Id is
963 or else NT (N).Nkind = N_Entry_Call_Alternative);
965 end Entry_Call_Statement;
967 function Entry_Direct_Name
968 (N : Node_Id) return Node_Id is
971 or else NT (N).Nkind = N_Accept_Statement);
973 end Entry_Direct_Name;
976 (N : Node_Id) return Node_Id is
979 or else NT (N).Nkind = N_Accept_Statement);
983 function Entry_Index_Specification
984 (N : Node_Id) return Node_Id is
987 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
989 end Entry_Index_Specification;
992 (N : Node_Id) return Node_Id is
995 or else NT (N).Nkind in N_Has_Etype);
999 function Exception_Choices
1000 (N : Node_Id) return List_Id is
1002 pragma Assert (False
1003 or else NT (N).Nkind = N_Exception_Handler);
1005 end Exception_Choices;
1007 function Exception_Handlers
1008 (N : Node_Id) return List_Id is
1010 pragma Assert (False
1011 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1013 end Exception_Handlers;
1015 function Exception_Junk
1016 (N : Node_Id) return Boolean is
1018 pragma Assert (False
1019 or else NT (N).Nkind = N_Goto_Statement
1020 or else NT (N).Nkind = N_Label
1021 or else NT (N).Nkind = N_Object_Declaration
1022 or else NT (N).Nkind = N_Subtype_Declaration);
1026 function Expansion_Delayed
1027 (N : Node_Id) return Boolean is
1029 pragma Assert (False
1030 or else NT (N).Nkind = N_Aggregate
1031 or else NT (N).Nkind = N_Extension_Aggregate);
1033 end Expansion_Delayed;
1035 function Explicit_Actual_Parameter
1036 (N : Node_Id) return Node_Id is
1038 pragma Assert (False
1039 or else NT (N).Nkind = N_Parameter_Association);
1041 end Explicit_Actual_Parameter;
1043 function Explicit_Generic_Actual_Parameter
1044 (N : Node_Id) return Node_Id is
1046 pragma Assert (False
1047 or else NT (N).Nkind = N_Generic_Association);
1049 end Explicit_Generic_Actual_Parameter;
1052 (N : Node_Id) return Node_Id is
1054 pragma Assert (False
1055 or else NT (N).Nkind = N_Allocator
1056 or else NT (N).Nkind = N_Assignment_Statement
1057 or else NT (N).Nkind = N_At_Clause
1058 or else NT (N).Nkind = N_Attribute_Definition_Clause
1059 or else NT (N).Nkind = N_Case_Statement
1060 or else NT (N).Nkind = N_Code_Statement
1061 or else NT (N).Nkind = N_Component_Association
1062 or else NT (N).Nkind = N_Component_Declaration
1063 or else NT (N).Nkind = N_Delay_Relative_Statement
1064 or else NT (N).Nkind = N_Delay_Until_Statement
1065 or else NT (N).Nkind = N_Discriminant_Association
1066 or else NT (N).Nkind = N_Discriminant_Specification
1067 or else NT (N).Nkind = N_Exception_Declaration
1068 or else NT (N).Nkind = N_Formal_Object_Declaration
1069 or else NT (N).Nkind = N_Free_Statement
1070 or else NT (N).Nkind = N_Mod_Clause
1071 or else NT (N).Nkind = N_Modular_Type_Definition
1072 or else NT (N).Nkind = N_Number_Declaration
1073 or else NT (N).Nkind = N_Object_Declaration
1074 or else NT (N).Nkind = N_Parameter_Specification
1075 or else NT (N).Nkind = N_Pragma_Argument_Association
1076 or else NT (N).Nkind = N_Qualified_Expression
1077 or else NT (N).Nkind = N_Return_Statement
1078 or else NT (N).Nkind = N_Type_Conversion
1079 or else NT (N).Nkind = N_Unchecked_Expression
1080 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1084 function Expressions
1085 (N : Node_Id) return List_Id is
1087 pragma Assert (False
1088 or else NT (N).Nkind = N_Aggregate
1089 or else NT (N).Nkind = N_Attribute_Reference
1090 or else NT (N).Nkind = N_Conditional_Expression
1091 or else NT (N).Nkind = N_Extension_Aggregate
1092 or else NT (N).Nkind = N_Indexed_Component);
1097 (N : Node_Id) return Node_Id is
1099 pragma Assert (False
1100 or else NT (N).Nkind = N_Component_Clause);
1104 function First_Inlined_Subprogram
1105 (N : Node_Id) return Entity_Id is
1107 pragma Assert (False
1108 or else NT (N).Nkind = N_Compilation_Unit);
1110 end First_Inlined_Subprogram;
1113 (N : Node_Id) return Boolean is
1115 pragma Assert (False
1116 or else NT (N).Nkind = N_With_Clause);
1120 function First_Named_Actual
1121 (N : Node_Id) return Node_Id is
1123 pragma Assert (False
1124 or else NT (N).Nkind = N_Entry_Call_Statement
1125 or else NT (N).Nkind = N_Function_Call
1126 or else NT (N).Nkind = N_Procedure_Call_Statement);
1128 end First_Named_Actual;
1130 function First_Real_Statement
1131 (N : Node_Id) return Node_Id is
1133 pragma Assert (False
1134 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1136 end First_Real_Statement;
1138 function First_Subtype_Link
1139 (N : Node_Id) return Entity_Id is
1141 pragma Assert (False
1142 or else NT (N).Nkind = N_Freeze_Entity);
1144 end First_Subtype_Link;
1146 function Float_Truncate
1147 (N : Node_Id) return Boolean is
1149 pragma Assert (False
1150 or else NT (N).Nkind = N_Type_Conversion);
1154 function Formal_Type_Definition
1155 (N : Node_Id) return Node_Id is
1157 pragma Assert (False
1158 or else NT (N).Nkind = N_Formal_Type_Declaration);
1160 end Formal_Type_Definition;
1162 function Forwards_OK
1163 (N : Node_Id) return Boolean is
1165 pragma Assert (False
1166 or else NT (N).Nkind = N_Assignment_Statement);
1170 function From_At_Mod
1171 (N : Node_Id) return Boolean is
1173 pragma Assert (False
1174 or else NT (N).Nkind = N_Attribute_Definition_Clause);
1178 function Generic_Associations
1179 (N : Node_Id) return List_Id is
1181 pragma Assert (False
1182 or else NT (N).Nkind = N_Formal_Package_Declaration
1183 or else NT (N).Nkind = N_Function_Instantiation
1184 or else NT (N).Nkind = N_Package_Instantiation
1185 or else NT (N).Nkind = N_Procedure_Instantiation);
1187 end Generic_Associations;
1189 function Generic_Formal_Declarations
1190 (N : Node_Id) return List_Id is
1192 pragma Assert (False
1193 or else NT (N).Nkind = N_Generic_Package_Declaration
1194 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1196 end Generic_Formal_Declarations;
1198 function Generic_Parent
1199 (N : Node_Id) return Node_Id is
1201 pragma Assert (False
1202 or else NT (N).Nkind = N_Function_Specification
1203 or else NT (N).Nkind = N_Package_Specification
1204 or else NT (N).Nkind = N_Procedure_Specification);
1208 function Generic_Parent_Type
1209 (N : Node_Id) return Node_Id is
1211 pragma Assert (False
1212 or else NT (N).Nkind = N_Subtype_Declaration);
1214 end Generic_Parent_Type;
1216 function Handled_Statement_Sequence
1217 (N : Node_Id) return Node_Id is
1219 pragma Assert (False
1220 or else NT (N).Nkind = N_Accept_Statement
1221 or else NT (N).Nkind = N_Block_Statement
1222 or else NT (N).Nkind = N_Entry_Body
1223 or else NT (N).Nkind = N_Package_Body
1224 or else NT (N).Nkind = N_Subprogram_Body
1225 or else NT (N).Nkind = N_Task_Body);
1227 end Handled_Statement_Sequence;
1229 function Handler_List_Entry
1230 (N : Node_Id) return Node_Id is
1232 pragma Assert (False
1233 or else NT (N).Nkind = N_Object_Declaration);
1235 end Handler_List_Entry;
1237 function Has_Created_Identifier
1238 (N : Node_Id) return Boolean is
1240 pragma Assert (False
1241 or else NT (N).Nkind = N_Block_Statement
1242 or else NT (N).Nkind = N_Loop_Statement);
1244 end Has_Created_Identifier;
1246 function Has_Dynamic_Length_Check
1247 (N : Node_Id) return Boolean is
1250 end Has_Dynamic_Length_Check;
1252 function Has_Dynamic_Range_Check
1253 (N : Node_Id) return Boolean is
1256 end Has_Dynamic_Range_Check;
1258 function Has_No_Elaboration_Code
1259 (N : Node_Id) return Boolean is
1261 pragma Assert (False
1262 or else NT (N).Nkind = N_Compilation_Unit);
1264 end Has_No_Elaboration_Code;
1266 function Has_Priority_Pragma
1267 (N : Node_Id) return Boolean is
1269 pragma Assert (False
1270 or else NT (N).Nkind = N_Protected_Definition
1271 or else NT (N).Nkind = N_Subprogram_Body
1272 or else NT (N).Nkind = N_Task_Definition);
1274 end Has_Priority_Pragma;
1276 function Has_Private_View
1277 (N : Node_Id) return Boolean is
1279 pragma Assert (False
1280 or else NT (N).Nkind in N_Op
1281 or else NT (N).Nkind = N_Character_Literal
1282 or else NT (N).Nkind = N_Expanded_Name
1283 or else NT (N).Nkind = N_Identifier
1284 or else NT (N).Nkind = N_Operator_Symbol);
1286 end Has_Private_View;
1288 function Has_Storage_Size_Pragma
1289 (N : Node_Id) return Boolean is
1291 pragma Assert (False
1292 or else NT (N).Nkind = N_Task_Definition);
1294 end Has_Storage_Size_Pragma;
1296 function Has_Task_Info_Pragma
1297 (N : Node_Id) return Boolean is
1299 pragma Assert (False
1300 or else NT (N).Nkind = N_Task_Definition);
1302 end Has_Task_Info_Pragma;
1304 function Has_Task_Name_Pragma
1305 (N : Node_Id) return Boolean is
1307 pragma Assert (False
1308 or else NT (N).Nkind = N_Task_Definition);
1310 end Has_Task_Name_Pragma;
1312 function Has_Wide_Character
1313 (N : Node_Id) return Boolean is
1315 pragma Assert (False
1316 or else NT (N).Nkind = N_String_Literal);
1318 end Has_Wide_Character;
1320 function Hidden_By_Use_Clause
1321 (N : Node_Id) return Elist_Id is
1323 pragma Assert (False
1324 or else NT (N).Nkind = N_Use_Package_Clause
1325 or else NT (N).Nkind = N_Use_Type_Clause);
1327 end Hidden_By_Use_Clause;
1330 (N : Node_Id) return Node_Id is
1332 pragma Assert (False
1333 or else NT (N).Nkind = N_Range
1334 or else NT (N).Nkind = N_Real_Range_Specification
1335 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1340 (N : Node_Id) return Node_Id is
1342 pragma Assert (False
1343 or else NT (N).Nkind = N_At_Clause
1344 or else NT (N).Nkind = N_Block_Statement
1345 or else NT (N).Nkind = N_Designator
1346 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1347 or else NT (N).Nkind = N_Label
1348 or else NT (N).Nkind = N_Loop_Statement
1349 or else NT (N).Nkind = N_Record_Representation_Clause
1350 or else NT (N).Nkind = N_Subprogram_Info);
1354 function Implicit_With
1355 (N : Node_Id) return Boolean is
1357 pragma Assert (False
1358 or else NT (N).Nkind = N_With_Clause);
1363 (N : Node_Id) return Boolean is
1365 pragma Assert (False
1366 or else NT (N).Nkind = N_Formal_Object_Declaration
1367 or else NT (N).Nkind = N_Parameter_Specification);
1371 function Includes_Infinities
1372 (N : Node_Id) return Boolean is
1374 pragma Assert (False
1375 or else NT (N).Nkind = N_Range);
1377 end Includes_Infinities;
1379 function Instance_Spec
1380 (N : Node_Id) return Node_Id is
1382 pragma Assert (False
1383 or else NT (N).Nkind = N_Formal_Package_Declaration
1384 or else NT (N).Nkind = N_Function_Instantiation
1385 or else NT (N).Nkind = N_Package_Instantiation
1386 or else NT (N).Nkind = N_Procedure_Instantiation);
1391 (N : Node_Id) return Uint is
1393 pragma Assert (False
1394 or else NT (N).Nkind = N_Integer_Literal);
1398 function Is_Asynchronous_Call_Block
1399 (N : Node_Id) return Boolean is
1401 pragma Assert (False
1402 or else NT (N).Nkind = N_Block_Statement);
1404 end Is_Asynchronous_Call_Block;
1406 function Is_Component_Left_Opnd
1407 (N : Node_Id) return Boolean is
1409 pragma Assert (False
1410 or else NT (N).Nkind = N_Op_Concat);
1412 end Is_Component_Left_Opnd;
1414 function Is_Component_Right_Opnd
1415 (N : Node_Id) return Boolean is
1417 pragma Assert (False
1418 or else NT (N).Nkind = N_Op_Concat);
1420 end Is_Component_Right_Opnd;
1422 function Is_Controlling_Actual
1423 (N : Node_Id) return Boolean is
1425 pragma Assert (False
1426 or else NT (N).Nkind in N_Subexpr);
1428 end Is_Controlling_Actual;
1430 function Is_In_Discriminant_Check
1431 (N : Node_Id) return Boolean is
1433 pragma Assert (False
1434 or else NT (N).Nkind = N_Selected_Component);
1436 end Is_In_Discriminant_Check;
1438 function Is_Machine_Number
1439 (N : Node_Id) return Boolean is
1441 pragma Assert (False
1442 or else NT (N).Nkind = N_Real_Literal);
1444 end Is_Machine_Number;
1446 function Is_Null_Loop
1447 (N : Node_Id) return Boolean is
1449 pragma Assert (False
1450 or else NT (N).Nkind = N_Loop_Statement);
1454 function Is_Overloaded
1455 (N : Node_Id) return Boolean is
1457 pragma Assert (False
1458 or else NT (N).Nkind in N_Subexpr);
1462 function Is_Power_Of_2_For_Shift
1463 (N : Node_Id) return Boolean is
1465 pragma Assert (False
1466 or else NT (N).Nkind = N_Op_Expon);
1468 end Is_Power_Of_2_For_Shift;
1470 function Is_Protected_Subprogram_Body
1471 (N : Node_Id) return Boolean is
1473 pragma Assert (False
1474 or else NT (N).Nkind = N_Subprogram_Body);
1476 end Is_Protected_Subprogram_Body;
1478 function Is_Static_Expression
1479 (N : Node_Id) return Boolean is
1481 pragma Assert (False
1482 or else NT (N).Nkind in N_Subexpr);
1484 end Is_Static_Expression;
1486 function Is_Subprogram_Descriptor
1487 (N : Node_Id) return Boolean is
1489 pragma Assert (False
1490 or else NT (N).Nkind = N_Object_Declaration);
1492 end Is_Subprogram_Descriptor;
1494 function Is_Task_Allocation_Block
1495 (N : Node_Id) return Boolean is
1497 pragma Assert (False
1498 or else NT (N).Nkind = N_Block_Statement);
1500 end Is_Task_Allocation_Block;
1502 function Is_Task_Master
1503 (N : Node_Id) return Boolean is
1505 pragma Assert (False
1506 or else NT (N).Nkind = N_Block_Statement
1507 or else NT (N).Nkind = N_Subprogram_Body
1508 or else NT (N).Nkind = N_Task_Body);
1512 function Iteration_Scheme
1513 (N : Node_Id) return Node_Id is
1515 pragma Assert (False
1516 or else NT (N).Nkind = N_Loop_Statement);
1518 end Iteration_Scheme;
1521 (N : Node_Id) return Node_Id is
1523 pragma Assert (False
1524 or else NT (N).Nkind = N_Itype_Reference);
1528 function Kill_Range_Check
1529 (N : Node_Id) return Boolean is
1531 pragma Assert (False
1532 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1534 end Kill_Range_Check;
1536 function Label_Construct
1537 (N : Node_Id) return Node_Id is
1539 pragma Assert (False
1540 or else NT (N).Nkind = N_Implicit_Label_Declaration);
1542 end Label_Construct;
1545 (N : Node_Id) return Node_Id is
1547 pragma Assert (False
1548 or else NT (N).Nkind = N_Component_Clause);
1553 (N : Node_Id) return Boolean is
1555 pragma Assert (False
1556 or else NT (N).Nkind = N_With_Clause);
1561 (N : Node_Id) return Node_Id is
1563 pragma Assert (False
1564 or else NT (N).Nkind = N_And_Then
1565 or else NT (N).Nkind = N_In
1566 or else NT (N).Nkind = N_Not_In
1567 or else NT (N).Nkind = N_Or_Else
1568 or else NT (N).Nkind in N_Binary_Op);
1572 function Library_Unit
1573 (N : Node_Id) return Node_Id is
1575 pragma Assert (False
1576 or else NT (N).Nkind = N_Compilation_Unit
1577 or else NT (N).Nkind = N_Package_Body_Stub
1578 or else NT (N).Nkind = N_Protected_Body_Stub
1579 or else NT (N).Nkind = N_Subprogram_Body_Stub
1580 or else NT (N).Nkind = N_Task_Body_Stub
1581 or else NT (N).Nkind = N_With_Clause);
1585 function Limited_View_Installed
1586 (N : Node_Id) return Boolean is
1588 pragma Assert (False
1589 or else NT (N).Nkind = N_Package_Specification
1590 or else NT (N).Nkind = N_With_Clause);
1592 end Limited_View_Installed;
1594 function Limited_Present
1595 (N : Node_Id) return Boolean is
1597 pragma Assert (False
1598 or else NT (N).Nkind = N_Formal_Private_Type_Definition
1599 or else NT (N).Nkind = N_Private_Type_Declaration
1600 or else NT (N).Nkind = N_Record_Definition
1601 or else NT (N).Nkind = N_With_Clause);
1603 end Limited_Present;
1606 (N : Node_Id) return List_Id is
1608 pragma Assert (False
1609 or else NT (N).Nkind = N_Enumeration_Type_Definition);
1613 function Loop_Actions
1614 (N : Node_Id) return List_Id is
1616 pragma Assert (False
1617 or else NT (N).Nkind = N_Component_Association);
1621 function Loop_Parameter_Specification
1622 (N : Node_Id) return Node_Id is
1624 pragma Assert (False
1625 or else NT (N).Nkind = N_Iteration_Scheme);
1627 end Loop_Parameter_Specification;
1630 (N : Node_Id) return Node_Id is
1632 pragma Assert (False
1633 or else NT (N).Nkind = N_Range
1634 or else NT (N).Nkind = N_Real_Range_Specification
1635 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1640 (N : Node_Id) return Node_Id is
1642 pragma Assert (False
1643 or else NT (N).Nkind = N_Record_Representation_Clause);
1648 (N : Node_Id) return Boolean is
1650 pragma Assert (False
1651 or else NT (N).Nkind = N_Component_Declaration
1652 or else NT (N).Nkind = N_Discriminant_Specification
1653 or else NT (N).Nkind = N_Exception_Declaration
1654 or else NT (N).Nkind = N_Formal_Object_Declaration
1655 or else NT (N).Nkind = N_Number_Declaration
1656 or else NT (N).Nkind = N_Object_Declaration
1657 or else NT (N).Nkind = N_Parameter_Specification);
1661 function Must_Be_Byte_Aligned
1662 (N : Node_Id) return Boolean is
1664 pragma Assert (False
1665 or else NT (N).Nkind = N_Attribute_Reference);
1667 end Must_Be_Byte_Aligned;
1669 function Must_Not_Freeze
1670 (N : Node_Id) return Boolean is
1672 pragma Assert (False
1673 or else NT (N).Nkind = N_Subtype_Indication
1674 or else NT (N).Nkind in N_Subexpr);
1676 end Must_Not_Freeze;
1679 (N : Node_Id) return Node_Id is
1681 pragma Assert (False
1682 or else NT (N).Nkind = N_Assignment_Statement
1683 or else NT (N).Nkind = N_Attribute_Definition_Clause
1684 or else NT (N).Nkind = N_Defining_Program_Unit_Name
1685 or else NT (N).Nkind = N_Designator
1686 or else NT (N).Nkind = N_Entry_Call_Statement
1687 or else NT (N).Nkind = N_Exception_Renaming_Declaration
1688 or else NT (N).Nkind = N_Exit_Statement
1689 or else NT (N).Nkind = N_Formal_Package_Declaration
1690 or else NT (N).Nkind = N_Function_Call
1691 or else NT (N).Nkind = N_Function_Instantiation
1692 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1693 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1694 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1695 or else NT (N).Nkind = N_Goto_Statement
1696 or else NT (N).Nkind = N_Object_Renaming_Declaration
1697 or else NT (N).Nkind = N_Package_Instantiation
1698 or else NT (N).Nkind = N_Package_Renaming_Declaration
1699 or else NT (N).Nkind = N_Procedure_Call_Statement
1700 or else NT (N).Nkind = N_Procedure_Instantiation
1701 or else NT (N).Nkind = N_Raise_Statement
1702 or else NT (N).Nkind = N_Requeue_Statement
1703 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
1704 or else NT (N).Nkind = N_Subunit
1705 or else NT (N).Nkind = N_Variant_Part
1706 or else NT (N).Nkind = N_With_Clause
1707 or else NT (N).Nkind = N_With_Type_Clause);
1712 (N : Node_Id) return List_Id is
1714 pragma Assert (False
1715 or else NT (N).Nkind = N_Abort_Statement
1716 or else NT (N).Nkind = N_Use_Package_Clause);
1720 function Next_Entity
1721 (N : Node_Id) return Node_Id is
1723 pragma Assert (False
1724 or else NT (N).Nkind = N_Defining_Character_Literal
1725 or else NT (N).Nkind = N_Defining_Identifier
1726 or else NT (N).Nkind = N_Defining_Operator_Symbol);
1730 function Next_Named_Actual
1731 (N : Node_Id) return Node_Id is
1733 pragma Assert (False
1734 or else NT (N).Nkind = N_Parameter_Association);
1736 end Next_Named_Actual;
1738 function Next_Rep_Item
1739 (N : Node_Id) return Node_Id is
1741 pragma Assert (False
1742 or else NT (N).Nkind = N_Attribute_Definition_Clause
1743 or else NT (N).Nkind = N_Enumeration_Representation_Clause
1744 or else NT (N).Nkind = N_Pragma
1745 or else NT (N).Nkind = N_Record_Representation_Clause);
1749 function Next_Use_Clause
1750 (N : Node_Id) return Node_Id is
1752 pragma Assert (False
1753 or else NT (N).Nkind = N_Use_Package_Clause
1754 or else NT (N).Nkind = N_Use_Type_Clause);
1756 end Next_Use_Clause;
1758 function No_Ctrl_Actions
1759 (N : Node_Id) return Boolean is
1761 pragma Assert (False
1762 or else NT (N).Nkind = N_Assignment_Statement);
1764 end No_Ctrl_Actions;
1766 function No_Entities_Ref_In_Spec
1767 (N : Node_Id) return Boolean is
1769 pragma Assert (False
1770 or else NT (N).Nkind = N_With_Clause);
1772 end No_Entities_Ref_In_Spec;
1774 function No_Initialization
1775 (N : Node_Id) return Boolean is
1777 pragma Assert (False
1778 or else NT (N).Nkind = N_Allocator
1779 or else NT (N).Nkind = N_Object_Declaration);
1781 end No_Initialization;
1783 function No_Truncation
1784 (N : Node_Id) return Boolean is
1786 pragma Assert (False
1787 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1791 function Null_Present
1792 (N : Node_Id) return Boolean is
1794 pragma Assert (False
1795 or else NT (N).Nkind = N_Component_List
1796 or else NT (N).Nkind = N_Record_Definition);
1800 function Null_Record_Present
1801 (N : Node_Id) return Boolean is
1803 pragma Assert (False
1804 or else NT (N).Nkind = N_Aggregate
1805 or else NT (N).Nkind = N_Extension_Aggregate);
1807 end Null_Record_Present;
1809 function Object_Definition
1810 (N : Node_Id) return Node_Id is
1812 pragma Assert (False
1813 or else NT (N).Nkind = N_Object_Declaration);
1815 end Object_Definition;
1817 function OK_For_Stream
1818 (N : Node_Id) return Boolean is
1820 pragma Assert (False
1821 or else NT (N).Nkind = N_Attribute_Reference);
1825 function Original_Discriminant
1826 (N : Node_Id) return Node_Id is
1828 pragma Assert (False
1829 or else NT (N).Nkind = N_Identifier);
1831 end Original_Discriminant;
1833 function Original_Entity
1834 (N : Node_Id) return Entity_Id is
1836 pragma Assert (False
1837 or else NT (N).Nkind = N_Integer_Literal
1838 or else NT (N).Nkind = N_Real_Literal);
1840 end Original_Entity;
1842 function Others_Discrete_Choices
1843 (N : Node_Id) return List_Id is
1845 pragma Assert (False
1846 or else NT (N).Nkind = N_Others_Choice);
1848 end Others_Discrete_Choices;
1850 function Out_Present
1851 (N : Node_Id) return Boolean is
1853 pragma Assert (False
1854 or else NT (N).Nkind = N_Formal_Object_Declaration
1855 or else NT (N).Nkind = N_Parameter_Specification);
1859 function Parameter_Associations
1860 (N : Node_Id) return List_Id is
1862 pragma Assert (False
1863 or else NT (N).Nkind = N_Entry_Call_Statement
1864 or else NT (N).Nkind = N_Function_Call
1865 or else NT (N).Nkind = N_Procedure_Call_Statement);
1867 end Parameter_Associations;
1869 function Parameter_List_Truncated
1870 (N : Node_Id) return Boolean is
1872 pragma Assert (False
1873 or else NT (N).Nkind = N_Function_Call
1874 or else NT (N).Nkind = N_Procedure_Call_Statement);
1876 end Parameter_List_Truncated;
1878 function Parameter_Specifications
1879 (N : Node_Id) return List_Id is
1881 pragma Assert (False
1882 or else NT (N).Nkind = N_Accept_Statement
1883 or else NT (N).Nkind = N_Access_Function_Definition
1884 or else NT (N).Nkind = N_Access_Procedure_Definition
1885 or else NT (N).Nkind = N_Entry_Body_Formal_Part
1886 or else NT (N).Nkind = N_Entry_Declaration
1887 or else NT (N).Nkind = N_Function_Specification
1888 or else NT (N).Nkind = N_Procedure_Specification);
1890 end Parameter_Specifications;
1892 function Parameter_Type
1893 (N : Node_Id) return Node_Id is
1895 pragma Assert (False
1896 or else NT (N).Nkind = N_Parameter_Specification);
1900 function Parent_Spec
1901 (N : Node_Id) return Node_Id is
1903 pragma Assert (False
1904 or else NT (N).Nkind = N_Function_Instantiation
1905 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
1906 or else NT (N).Nkind = N_Generic_Package_Declaration
1907 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
1908 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
1909 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
1910 or else NT (N).Nkind = N_Package_Declaration
1911 or else NT (N).Nkind = N_Package_Instantiation
1912 or else NT (N).Nkind = N_Package_Renaming_Declaration
1913 or else NT (N).Nkind = N_Procedure_Instantiation
1914 or else NT (N).Nkind = N_Subprogram_Declaration
1915 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1920 (N : Node_Id) return Node_Id is
1922 pragma Assert (False
1923 or else NT (N).Nkind = N_Component_Clause);
1927 function Pragma_Argument_Associations
1928 (N : Node_Id) return List_Id is
1930 pragma Assert (False
1931 or else NT (N).Nkind = N_Pragma);
1933 end Pragma_Argument_Associations;
1935 function Pragmas_After
1936 (N : Node_Id) return List_Id is
1938 pragma Assert (False
1939 or else NT (N).Nkind = N_Compilation_Unit_Aux
1940 or else NT (N).Nkind = N_Terminate_Alternative);
1944 function Pragmas_Before
1945 (N : Node_Id) return List_Id is
1947 pragma Assert (False
1948 or else NT (N).Nkind = N_Accept_Alternative
1949 or else NT (N).Nkind = N_Delay_Alternative
1950 or else NT (N).Nkind = N_Entry_Call_Alternative
1951 or else NT (N).Nkind = N_Mod_Clause
1952 or else NT (N).Nkind = N_Terminate_Alternative
1953 or else NT (N).Nkind = N_Triggering_Alternative);
1958 (N : Node_Id) return Node_Id is
1960 pragma Assert (False
1961 or else NT (N).Nkind = N_Attribute_Reference
1962 or else NT (N).Nkind = N_Expanded_Name
1963 or else NT (N).Nkind = N_Explicit_Dereference
1964 or else NT (N).Nkind = N_Indexed_Component
1965 or else NT (N).Nkind = N_Reference
1966 or else NT (N).Nkind = N_Selected_Component
1967 or else NT (N).Nkind = N_Slice);
1971 function Present_Expr
1972 (N : Node_Id) return Uint is
1974 pragma Assert (False
1975 or else NT (N).Nkind = N_Variant);
1980 (N : Node_Id) return Boolean is
1982 pragma Assert (False
1983 or else NT (N).Nkind = N_Component_Declaration
1984 or else NT (N).Nkind = N_Discriminant_Specification
1985 or else NT (N).Nkind = N_Exception_Declaration
1986 or else NT (N).Nkind = N_Formal_Object_Declaration
1987 or else NT (N).Nkind = N_Number_Declaration
1988 or else NT (N).Nkind = N_Object_Declaration
1989 or else NT (N).Nkind = N_Parameter_Specification);
1993 function Print_In_Hex
1994 (N : Node_Id) return Boolean is
1996 pragma Assert (False
1997 or else NT (N).Nkind = N_Integer_Literal);
2001 function Private_Declarations
2002 (N : Node_Id) return List_Id is
2004 pragma Assert (False
2005 or else NT (N).Nkind = N_Package_Specification
2006 or else NT (N).Nkind = N_Protected_Definition
2007 or else NT (N).Nkind = N_Task_Definition);
2009 end Private_Declarations;
2011 function Private_Present
2012 (N : Node_Id) return Boolean is
2014 pragma Assert (False
2015 or else NT (N).Nkind = N_Compilation_Unit
2016 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
2018 end Private_Present;
2020 function Procedure_To_Call
2021 (N : Node_Id) return Node_Id is
2023 pragma Assert (False
2024 or else NT (N).Nkind = N_Allocator
2025 or else NT (N).Nkind = N_Free_Statement
2026 or else NT (N).Nkind = N_Return_Statement);
2028 end Procedure_To_Call;
2030 function Proper_Body
2031 (N : Node_Id) return Node_Id is
2033 pragma Assert (False
2034 or else NT (N).Nkind = N_Subunit);
2038 function Protected_Definition
2039 (N : Node_Id) return Node_Id is
2041 pragma Assert (False
2042 or else NT (N).Nkind = N_Protected_Type_Declaration
2043 or else NT (N).Nkind = N_Single_Protected_Declaration);
2045 end Protected_Definition;
2047 function Protected_Present
2048 (N : Node_Id) return Boolean is
2050 pragma Assert (False
2051 or else NT (N).Nkind = N_Access_Function_Definition
2052 or else NT (N).Nkind = N_Access_Procedure_Definition);
2054 end Protected_Present;
2056 function Raises_Constraint_Error
2057 (N : Node_Id) return Boolean is
2059 pragma Assert (False
2060 or else NT (N).Nkind in N_Subexpr);
2062 end Raises_Constraint_Error;
2064 function Range_Constraint
2065 (N : Node_Id) return Node_Id is
2067 pragma Assert (False
2068 or else NT (N).Nkind = N_Delta_Constraint
2069 or else NT (N).Nkind = N_Digits_Constraint);
2071 end Range_Constraint;
2073 function Range_Expression
2074 (N : Node_Id) return Node_Id is
2076 pragma Assert (False
2077 or else NT (N).Nkind = N_Range_Constraint);
2079 end Range_Expression;
2081 function Real_Range_Specification
2082 (N : Node_Id) return Node_Id is
2084 pragma Assert (False
2085 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2086 or else NT (N).Nkind = N_Floating_Point_Definition
2087 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2089 end Real_Range_Specification;
2092 (N : Node_Id) return Ureal is
2094 pragma Assert (False
2095 or else NT (N).Nkind = N_Real_Literal);
2100 (N : Node_Id) return Uint is
2102 pragma Assert (False
2103 or else NT (N).Nkind = N_Raise_Constraint_Error
2104 or else NT (N).Nkind = N_Raise_Program_Error
2105 or else NT (N).Nkind = N_Raise_Storage_Error);
2109 function Record_Extension_Part
2110 (N : Node_Id) return Node_Id is
2112 pragma Assert (False
2113 or else NT (N).Nkind = N_Derived_Type_Definition);
2115 end Record_Extension_Part;
2117 function Redundant_Use
2118 (N : Node_Id) return Boolean is
2120 pragma Assert (False
2121 or else NT (N).Nkind = N_Attribute_Reference
2122 or else NT (N).Nkind = N_Expanded_Name
2123 or else NT (N).Nkind = N_Identifier);
2127 function Return_Type
2128 (N : Node_Id) return Node_Id is
2130 pragma Assert (False
2131 or else NT (N).Nkind = N_Return_Statement);
2135 function Reverse_Present
2136 (N : Node_Id) return Boolean is
2138 pragma Assert (False
2139 or else NT (N).Nkind = N_Loop_Parameter_Specification);
2141 end Reverse_Present;
2144 (N : Node_Id) return Node_Id is
2146 pragma Assert (False
2147 or else NT (N).Nkind in N_Op
2148 or else NT (N).Nkind = N_And_Then
2149 or else NT (N).Nkind = N_In
2150 or else NT (N).Nkind = N_Not_In
2151 or else NT (N).Nkind = N_Or_Else);
2155 function Rounded_Result
2156 (N : Node_Id) return Boolean is
2158 pragma Assert (False
2159 or else NT (N).Nkind = N_Op_Divide
2160 or else NT (N).Nkind = N_Op_Multiply
2161 or else NT (N).Nkind = N_Type_Conversion);
2166 (N : Node_Id) return Node_Id is
2168 pragma Assert (False
2169 or else NT (N).Nkind = N_Defining_Character_Literal
2170 or else NT (N).Nkind = N_Defining_Identifier
2171 or else NT (N).Nkind = N_Defining_Operator_Symbol);
2175 function Select_Alternatives
2176 (N : Node_Id) return List_Id is
2178 pragma Assert (False
2179 or else NT (N).Nkind = N_Selective_Accept);
2181 end Select_Alternatives;
2183 function Selector_Name
2184 (N : Node_Id) return Node_Id is
2186 pragma Assert (False
2187 or else NT (N).Nkind = N_Expanded_Name
2188 or else NT (N).Nkind = N_Generic_Association
2189 or else NT (N).Nkind = N_Parameter_Association
2190 or else NT (N).Nkind = N_Selected_Component);
2194 function Selector_Names
2195 (N : Node_Id) return List_Id is
2197 pragma Assert (False
2198 or else NT (N).Nkind = N_Discriminant_Association);
2202 function Shift_Count_OK
2203 (N : Node_Id) return Boolean is
2205 pragma Assert (False
2206 or else NT (N).Nkind = N_Op_Rotate_Left
2207 or else NT (N).Nkind = N_Op_Rotate_Right
2208 or else NT (N).Nkind = N_Op_Shift_Left
2209 or else NT (N).Nkind = N_Op_Shift_Right
2210 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2214 function Source_Type
2215 (N : Node_Id) return Entity_Id is
2217 pragma Assert (False
2218 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2222 function Specification
2223 (N : Node_Id) return Node_Id is
2225 pragma Assert (False
2226 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2227 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
2228 or else NT (N).Nkind = N_Generic_Package_Declaration
2229 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2230 or else NT (N).Nkind = N_Package_Declaration
2231 or else NT (N).Nkind = N_Subprogram_Body
2232 or else NT (N).Nkind = N_Subprogram_Body_Stub
2233 or else NT (N).Nkind = N_Subprogram_Declaration
2234 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2239 (N : Node_Id) return List_Id is
2241 pragma Assert (False
2242 or else NT (N).Nkind = N_Abortable_Part
2243 or else NT (N).Nkind = N_Accept_Alternative
2244 or else NT (N).Nkind = N_Case_Statement_Alternative
2245 or else NT (N).Nkind = N_Delay_Alternative
2246 or else NT (N).Nkind = N_Entry_Call_Alternative
2247 or else NT (N).Nkind = N_Exception_Handler
2248 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
2249 or else NT (N).Nkind = N_Loop_Statement
2250 or else NT (N).Nkind = N_Triggering_Alternative);
2254 function Static_Processing_OK
2255 (N : Node_Id) return Boolean is
2257 pragma Assert (False
2258 or else NT (N).Nkind = N_Aggregate);
2260 end Static_Processing_OK;
2262 function Storage_Pool
2263 (N : Node_Id) return Node_Id is
2265 pragma Assert (False
2266 or else NT (N).Nkind = N_Allocator
2267 or else NT (N).Nkind = N_Free_Statement
2268 or else NT (N).Nkind = N_Return_Statement);
2273 (N : Node_Id) return String_Id is
2275 pragma Assert (False
2276 or else NT (N).Nkind = N_Operator_Symbol
2277 or else NT (N).Nkind = N_String_Literal);
2281 function Subtype_Indication
2282 (N : Node_Id) return Node_Id is
2284 pragma Assert (False
2285 or else NT (N).Nkind = N_Access_To_Object_Definition
2286 or else NT (N).Nkind = N_Component_Declaration
2287 or else NT (N).Nkind = N_Constrained_Array_Definition
2288 or else NT (N).Nkind = N_Derived_Type_Definition
2289 or else NT (N).Nkind = N_Private_Extension_Declaration
2290 or else NT (N).Nkind = N_Subtype_Declaration
2291 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2293 end Subtype_Indication;
2295 function Subtype_Mark
2296 (N : Node_Id) return Node_Id is
2298 pragma Assert (False
2299 or else NT (N).Nkind = N_Access_Definition
2300 or else NT (N).Nkind = N_Access_Function_Definition
2301 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2302 or else NT (N).Nkind = N_Formal_Object_Declaration
2303 or else NT (N).Nkind = N_Function_Specification
2304 or else NT (N).Nkind = N_Object_Renaming_Declaration
2305 or else NT (N).Nkind = N_Qualified_Expression
2306 or else NT (N).Nkind = N_Subtype_Indication
2307 or else NT (N).Nkind = N_Type_Conversion
2308 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2312 function Subtype_Marks
2313 (N : Node_Id) return List_Id is
2315 pragma Assert (False
2316 or else NT (N).Nkind = N_Unconstrained_Array_Definition
2317 or else NT (N).Nkind = N_Use_Type_Clause);
2321 function Tagged_Present
2322 (N : Node_Id) return Boolean is
2324 pragma Assert (False
2325 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2326 or else NT (N).Nkind = N_Private_Type_Declaration
2327 or else NT (N).Nkind = N_Record_Definition
2328 or else NT (N).Nkind = N_With_Type_Clause);
2332 function Target_Type
2333 (N : Node_Id) return Entity_Id is
2335 pragma Assert (False
2336 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2340 function Task_Body_Procedure
2341 (N : Node_Id) return Entity_Id is
2343 pragma Assert (False
2344 or else NT (N).Nkind = N_Task_Type_Declaration);
2346 end Task_Body_Procedure;
2348 function Task_Definition
2349 (N : Node_Id) return Node_Id is
2351 pragma Assert (False
2352 or else NT (N).Nkind = N_Single_Task_Declaration
2353 or else NT (N).Nkind = N_Task_Type_Declaration);
2355 end Task_Definition;
2357 function Then_Actions
2358 (N : Node_Id) return List_Id is
2360 pragma Assert (False
2361 or else NT (N).Nkind = N_Conditional_Expression);
2365 function Then_Statements
2366 (N : Node_Id) return List_Id is
2368 pragma Assert (False
2369 or else NT (N).Nkind = N_Elsif_Part
2370 or else NT (N).Nkind = N_If_Statement);
2372 end Then_Statements;
2374 function Treat_Fixed_As_Integer
2375 (N : Node_Id) return Boolean is
2377 pragma Assert (False
2378 or else NT (N).Nkind = N_Op_Divide
2379 or else NT (N).Nkind = N_Op_Mod
2380 or else NT (N).Nkind = N_Op_Multiply
2381 or else NT (N).Nkind = N_Op_Rem);
2383 end Treat_Fixed_As_Integer;
2385 function Triggering_Alternative
2386 (N : Node_Id) return Node_Id is
2388 pragma Assert (False
2389 or else NT (N).Nkind = N_Asynchronous_Select);
2391 end Triggering_Alternative;
2393 function Triggering_Statement
2394 (N : Node_Id) return Node_Id is
2396 pragma Assert (False
2397 or else NT (N).Nkind = N_Triggering_Alternative);
2399 end Triggering_Statement;
2402 (N : Node_Id) return Elist_Id is
2404 pragma Assert (False
2405 or else NT (N).Nkind = N_Freeze_Entity);
2409 function Type_Definition
2410 (N : Node_Id) return Node_Id is
2412 pragma Assert (False
2413 or else NT (N).Nkind = N_Full_Type_Declaration);
2415 end Type_Definition;
2418 (N : Node_Id) return Node_Id is
2420 pragma Assert (False
2421 or else NT (N).Nkind = N_Compilation_Unit);
2425 function Unknown_Discriminants_Present
2426 (N : Node_Id) return Boolean is
2428 pragma Assert (False
2429 or else NT (N).Nkind = N_Formal_Type_Declaration
2430 or else NT (N).Nkind = N_Incomplete_Type_Declaration
2431 or else NT (N).Nkind = N_Private_Extension_Declaration
2432 or else NT (N).Nkind = N_Private_Type_Declaration);
2434 end Unknown_Discriminants_Present;
2436 function Unreferenced_In_Spec
2437 (N : Node_Id) return Boolean is
2439 pragma Assert (False
2440 or else NT (N).Nkind = N_With_Clause);
2442 end Unreferenced_In_Spec;
2444 function Variant_Part
2445 (N : Node_Id) return Node_Id is
2447 pragma Assert (False
2448 or else NT (N).Nkind = N_Component_List);
2453 (N : Node_Id) return List_Id is
2455 pragma Assert (False
2456 or else NT (N).Nkind = N_Variant_Part);
2460 function Visible_Declarations
2461 (N : Node_Id) return List_Id is
2463 pragma Assert (False
2464 or else NT (N).Nkind = N_Package_Specification
2465 or else NT (N).Nkind = N_Protected_Definition
2466 or else NT (N).Nkind = N_Task_Definition);
2468 end Visible_Declarations;
2470 function Was_Originally_Stub
2471 (N : Node_Id) return Boolean is
2473 pragma Assert (False
2474 or else NT (N).Nkind = N_Package_Body
2475 or else NT (N).Nkind = N_Protected_Body
2476 or else NT (N).Nkind = N_Subprogram_Body
2477 or else NT (N).Nkind = N_Task_Body);
2479 end Was_Originally_Stub;
2481 function Zero_Cost_Handling
2482 (N : Node_Id) return Boolean is
2484 pragma Assert (False
2485 or else NT (N).Nkind = N_Exception_Handler
2486 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2488 end Zero_Cost_Handling;
2490 --------------------------
2491 -- Field Set Procedures --
2492 --------------------------
2494 procedure Set_ABE_Is_Certain
2495 (N : Node_Id; Val : Boolean := True) is
2497 pragma Assert (False
2498 or else NT (N).Nkind = N_Formal_Package_Declaration
2499 or else NT (N).Nkind = N_Function_Call
2500 or else NT (N).Nkind = N_Function_Instantiation
2501 or else NT (N).Nkind = N_Package_Instantiation
2502 or else NT (N).Nkind = N_Procedure_Call_Statement
2503 or else NT (N).Nkind = N_Procedure_Instantiation);
2504 Set_Flag18 (N, Val);
2505 end Set_ABE_Is_Certain;
2507 procedure Set_Abort_Present
2508 (N : Node_Id; Val : Boolean := True) is
2510 pragma Assert (False
2511 or else NT (N).Nkind = N_Requeue_Statement);
2512 Set_Flag15 (N, Val);
2513 end Set_Abort_Present;
2515 procedure Set_Abortable_Part
2516 (N : Node_Id; Val : Node_Id) is
2518 pragma Assert (False
2519 or else NT (N).Nkind = N_Asynchronous_Select);
2520 Set_Node2_With_Parent (N, Val);
2521 end Set_Abortable_Part;
2523 procedure Set_Abstract_Present
2524 (N : Node_Id; Val : Boolean := True) is
2526 pragma Assert (False
2527 or else NT (N).Nkind = N_Derived_Type_Definition
2528 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2529 or else NT (N).Nkind = N_Formal_Private_Type_Definition
2530 or else NT (N).Nkind = N_Private_Extension_Declaration
2531 or else NT (N).Nkind = N_Private_Type_Declaration
2532 or else NT (N).Nkind = N_Record_Definition);
2534 end Set_Abstract_Present;
2536 procedure Set_Accept_Handler_Records
2537 (N : Node_Id; Val : List_Id) is
2539 pragma Assert (False
2540 or else NT (N).Nkind = N_Accept_Alternative);
2541 Set_List5 (N, Val); -- semantic field, no parent set
2542 end Set_Accept_Handler_Records;
2544 procedure Set_Accept_Statement
2545 (N : Node_Id; Val : Node_Id) is
2547 pragma Assert (False
2548 or else NT (N).Nkind = N_Accept_Alternative);
2549 Set_Node2_With_Parent (N, Val);
2550 end Set_Accept_Statement;
2552 procedure Set_Access_Types_To_Process
2553 (N : Node_Id; Val : Elist_Id) is
2555 pragma Assert (False
2556 or else NT (N).Nkind = N_Freeze_Entity);
2557 Set_Elist2 (N, Val); -- semantic field, no parent set
2558 end Set_Access_Types_To_Process;
2560 procedure Set_Actions
2561 (N : Node_Id; Val : List_Id) is
2563 pragma Assert (False
2564 or else NT (N).Nkind = N_And_Then
2565 or else NT (N).Nkind = N_Compilation_Unit_Aux
2566 or else NT (N).Nkind = N_Freeze_Entity
2567 or else NT (N).Nkind = N_Or_Else);
2568 Set_List1_With_Parent (N, Val);
2571 procedure Set_Activation_Chain_Entity
2572 (N : Node_Id; Val : Node_Id) is
2574 pragma Assert (False
2575 or else NT (N).Nkind = N_Block_Statement
2576 or else NT (N).Nkind = N_Entry_Body
2577 or else NT (N).Nkind = N_Generic_Package_Declaration
2578 or else NT (N).Nkind = N_Package_Declaration
2579 or else NT (N).Nkind = N_Subprogram_Body
2580 or else NT (N).Nkind = N_Task_Body);
2581 Set_Node3 (N, Val); -- semantic field, no parent set
2582 end Set_Activation_Chain_Entity;
2584 procedure Set_Acts_As_Spec
2585 (N : Node_Id; Val : Boolean := True) is
2587 pragma Assert (False
2588 or else NT (N).Nkind = N_Compilation_Unit
2589 or else NT (N).Nkind = N_Subprogram_Body);
2591 end Set_Acts_As_Spec;
2593 procedure Set_Aggregate_Bounds
2594 (N : Node_Id; Val : Node_Id) is
2596 pragma Assert (False
2597 or else NT (N).Nkind = N_Aggregate);
2598 Set_Node3 (N, Val); -- semantic field, no parent set
2599 end Set_Aggregate_Bounds;
2601 procedure Set_Aliased_Present
2602 (N : Node_Id; Val : Boolean := True) is
2604 pragma Assert (False
2605 or else NT (N).Nkind = N_Component_Declaration
2606 or else NT (N).Nkind = N_Constrained_Array_Definition
2607 or else NT (N).Nkind = N_Object_Declaration
2608 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
2610 end Set_Aliased_Present;
2612 procedure Set_All_Others
2613 (N : Node_Id; Val : Boolean := True) is
2615 pragma Assert (False
2616 or else NT (N).Nkind = N_Others_Choice);
2617 Set_Flag11 (N, Val);
2620 procedure Set_All_Present
2621 (N : Node_Id; Val : Boolean := True) is
2623 pragma Assert (False
2624 or else NT (N).Nkind = N_Access_To_Object_Definition);
2625 Set_Flag15 (N, Val);
2626 end Set_All_Present;
2628 procedure Set_Alternatives
2629 (N : Node_Id; Val : List_Id) is
2631 pragma Assert (False
2632 or else NT (N).Nkind = N_Case_Statement);
2633 Set_List4_With_Parent (N, Val);
2634 end Set_Alternatives;
2636 procedure Set_Ancestor_Part
2637 (N : Node_Id; Val : Node_Id) is
2639 pragma Assert (False
2640 or else NT (N).Nkind = N_Extension_Aggregate);
2641 Set_Node3_With_Parent (N, Val);
2642 end Set_Ancestor_Part;
2644 procedure Set_Array_Aggregate
2645 (N : Node_Id; Val : Node_Id) is
2647 pragma Assert (False
2648 or else NT (N).Nkind = N_Enumeration_Representation_Clause);
2649 Set_Node3_With_Parent (N, Val);
2650 end Set_Array_Aggregate;
2652 procedure Set_Assignment_OK
2653 (N : Node_Id; Val : Boolean := True) is
2655 pragma Assert (False
2656 or else NT (N).Nkind = N_Object_Declaration
2657 or else NT (N).Nkind in N_Subexpr);
2658 Set_Flag15 (N, Val);
2659 end Set_Assignment_OK;
2661 procedure Set_Associated_Node
2662 (N : Node_Id; Val : Node_Id) is
2664 pragma Assert (False
2665 or else NT (N).Nkind in N_Has_Entity
2666 or else NT (N).Nkind = N_Aggregate
2667 or else NT (N).Nkind = N_Extension_Aggregate
2668 or else NT (N).Nkind = N_Selected_Component);
2669 Set_Node4 (N, Val); -- semantic field, no parent set
2670 end Set_Associated_Node;
2672 procedure Set_At_End_Proc
2673 (N : Node_Id; Val : Node_Id) is
2675 pragma Assert (False
2676 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
2678 end Set_At_End_Proc;
2680 procedure Set_Attribute_Name
2681 (N : Node_Id; Val : Name_Id) is
2683 pragma Assert (False
2684 or else NT (N).Nkind = N_Attribute_Reference);
2686 end Set_Attribute_Name;
2688 procedure Set_Aux_Decls_Node
2689 (N : Node_Id; Val : Node_Id) is
2691 pragma Assert (False
2692 or else NT (N).Nkind = N_Compilation_Unit);
2693 Set_Node5_With_Parent (N, Val);
2694 end Set_Aux_Decls_Node;
2696 procedure Set_Backwards_OK
2697 (N : Node_Id; Val : Boolean := True) is
2699 pragma Assert (False
2700 or else NT (N).Nkind = N_Assignment_Statement);
2702 end Set_Backwards_OK;
2704 procedure Set_Bad_Is_Detected
2705 (N : Node_Id; Val : Boolean := True) is
2707 pragma Assert (False
2708 or else NT (N).Nkind = N_Subprogram_Body);
2709 Set_Flag15 (N, Val);
2710 end Set_Bad_Is_Detected;
2712 procedure Set_Body_Required
2713 (N : Node_Id; Val : Boolean := True) is
2715 pragma Assert (False
2716 or else NT (N).Nkind = N_Compilation_Unit);
2717 Set_Flag13 (N, Val);
2718 end Set_Body_Required;
2720 procedure Set_Body_To_Inline
2721 (N : Node_Id; Val : Node_Id) is
2723 pragma Assert (False
2724 or else NT (N).Nkind = N_Subprogram_Declaration);
2726 end Set_Body_To_Inline;
2728 procedure Set_Box_Present
2729 (N : Node_Id; Val : Boolean := True) is
2731 pragma Assert (False
2732 or else NT (N).Nkind = N_Formal_Package_Declaration
2733 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
2734 Set_Flag15 (N, Val);
2735 end Set_Box_Present;
2737 procedure Set_By_Ref
2738 (N : Node_Id; Val : Boolean := True) is
2740 pragma Assert (False
2741 or else NT (N).Nkind = N_Return_Statement);
2745 procedure Set_Char_Literal_Value
2746 (N : Node_Id; Val : Char_Code) is
2748 pragma Assert (False
2749 or else NT (N).Nkind = N_Character_Literal);
2750 Set_Char_Code2 (N, Val);
2751 end Set_Char_Literal_Value;
2754 (N : Node_Id; Val : Name_Id) is
2756 pragma Assert (False
2757 or else NT (N).Nkind in N_Has_Chars);
2761 procedure Set_Check_Address_Alignment
2762 (N : Node_Id; Val : Boolean := True) is
2764 pragma Assert (False
2765 or else NT (N).Nkind = N_Attribute_Definition_Clause);
2766 Set_Flag11 (N, Val);
2767 end Set_Check_Address_Alignment;
2769 procedure Set_Choice_Parameter
2770 (N : Node_Id; Val : Node_Id) is
2772 pragma Assert (False
2773 or else NT (N).Nkind = N_Exception_Handler);
2774 Set_Node2_With_Parent (N, Val);
2775 end Set_Choice_Parameter;
2777 procedure Set_Choices
2778 (N : Node_Id; Val : List_Id) is
2780 pragma Assert (False
2781 or else NT (N).Nkind = N_Component_Association);
2782 Set_List1_With_Parent (N, Val);
2785 procedure Set_Compile_Time_Known_Aggregate
2786 (N : Node_Id; Val : Boolean := True) is
2788 pragma Assert (False
2789 or else NT (N).Nkind = N_Aggregate);
2790 Set_Flag18 (N, Val);
2791 end Set_Compile_Time_Known_Aggregate;
2793 procedure Set_Component_Associations
2794 (N : Node_Id; Val : List_Id) is
2796 pragma Assert (False
2797 or else NT (N).Nkind = N_Aggregate
2798 or else NT (N).Nkind = N_Extension_Aggregate);
2799 Set_List2_With_Parent (N, Val);
2800 end Set_Component_Associations;
2802 procedure Set_Component_Clauses
2803 (N : Node_Id; Val : List_Id) is
2805 pragma Assert (False
2806 or else NT (N).Nkind = N_Record_Representation_Clause);
2807 Set_List3_With_Parent (N, Val);
2808 end Set_Component_Clauses;
2810 procedure Set_Component_Items
2811 (N : Node_Id; Val : List_Id) is
2813 pragma Assert (False
2814 or else NT (N).Nkind = N_Component_List);
2815 Set_List3_With_Parent (N, Val);
2816 end Set_Component_Items;
2818 procedure Set_Component_List
2819 (N : Node_Id; Val : Node_Id) is
2821 pragma Assert (False
2822 or else NT (N).Nkind = N_Record_Definition
2823 or else NT (N).Nkind = N_Variant);
2824 Set_Node1_With_Parent (N, Val);
2825 end Set_Component_List;
2827 procedure Set_Component_Name
2828 (N : Node_Id; Val : Node_Id) is
2830 pragma Assert (False
2831 or else NT (N).Nkind = N_Component_Clause);
2832 Set_Node1_With_Parent (N, Val);
2833 end Set_Component_Name;
2835 procedure Set_Condition
2836 (N : Node_Id; Val : Node_Id) is
2838 pragma Assert (False
2839 or else NT (N).Nkind = N_Accept_Alternative
2840 or else NT (N).Nkind = N_Delay_Alternative
2841 or else NT (N).Nkind = N_Elsif_Part
2842 or else NT (N).Nkind = N_Entry_Body_Formal_Part
2843 or else NT (N).Nkind = N_Exit_Statement
2844 or else NT (N).Nkind = N_If_Statement
2845 or else NT (N).Nkind = N_Iteration_Scheme
2846 or else NT (N).Nkind = N_Raise_Constraint_Error
2847 or else NT (N).Nkind = N_Raise_Program_Error
2848 or else NT (N).Nkind = N_Raise_Storage_Error
2849 or else NT (N).Nkind = N_Terminate_Alternative);
2850 Set_Node1_With_Parent (N, Val);
2853 procedure Set_Condition_Actions
2854 (N : Node_Id; Val : List_Id) is
2856 pragma Assert (False
2857 or else NT (N).Nkind = N_Elsif_Part
2858 or else NT (N).Nkind = N_Iteration_Scheme);
2859 Set_List3 (N, Val); -- semantic field, no parent set
2860 end Set_Condition_Actions;
2862 procedure Set_Config_Pragmas
2863 (N : Node_Id; Val : List_Id) is
2865 pragma Assert (False
2866 or else NT (N).Nkind = N_Compilation_Unit_Aux);
2867 Set_List4_With_Parent (N, Val);
2868 end Set_Config_Pragmas;
2870 procedure Set_Constant_Present
2871 (N : Node_Id; Val : Boolean := True) is
2873 pragma Assert (False
2874 or else NT (N).Nkind = N_Access_To_Object_Definition
2875 or else NT (N).Nkind = N_Object_Declaration);
2876 Set_Flag17 (N, Val);
2877 end Set_Constant_Present;
2879 procedure Set_Constraint
2880 (N : Node_Id; Val : Node_Id) is
2882 pragma Assert (False
2883 or else NT (N).Nkind = N_Subtype_Indication);
2884 Set_Node3_With_Parent (N, Val);
2887 procedure Set_Constraints
2888 (N : Node_Id; Val : List_Id) is
2890 pragma Assert (False
2891 or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
2892 Set_List1_With_Parent (N, Val);
2893 end Set_Constraints;
2895 procedure Set_Context_Installed
2896 (N : Node_Id; Val : Boolean := True) is
2898 pragma Assert (False
2899 or else NT (N).Nkind = N_With_Clause);
2900 Set_Flag13 (N, Val);
2901 end Set_Context_Installed;
2903 procedure Set_Context_Items
2904 (N : Node_Id; Val : List_Id) is
2906 pragma Assert (False
2907 or else NT (N).Nkind = N_Compilation_Unit);
2908 Set_List1_With_Parent (N, Val);
2909 end Set_Context_Items;
2911 procedure Set_Controlling_Argument
2912 (N : Node_Id; Val : Node_Id) is
2914 pragma Assert (False
2915 or else NT (N).Nkind = N_Function_Call
2916 or else NT (N).Nkind = N_Procedure_Call_Statement);
2917 Set_Node1 (N, Val); -- semantic field, no parent set
2918 end Set_Controlling_Argument;
2920 procedure Set_Conversion_OK
2921 (N : Node_Id; Val : Boolean := True) is
2923 pragma Assert (False
2924 or else NT (N).Nkind = N_Type_Conversion);
2925 Set_Flag14 (N, Val);
2926 end Set_Conversion_OK;
2928 procedure Set_Corresponding_Body
2929 (N : Node_Id; Val : Node_Id) is
2931 pragma Assert (False
2932 or else NT (N).Nkind = N_Entry_Declaration
2933 or else NT (N).Nkind = N_Generic_Package_Declaration
2934 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2935 or else NT (N).Nkind = N_Package_Body_Stub
2936 or else NT (N).Nkind = N_Package_Declaration
2937 or else NT (N).Nkind = N_Protected_Body_Stub
2938 or else NT (N).Nkind = N_Protected_Type_Declaration
2939 or else NT (N).Nkind = N_Subprogram_Body_Stub
2940 or else NT (N).Nkind = N_Subprogram_Declaration
2941 or else NT (N).Nkind = N_Task_Body_Stub
2942 or else NT (N).Nkind = N_Task_Type_Declaration);
2943 Set_Node5 (N, Val); -- semantic field, no parent set
2944 end Set_Corresponding_Body;
2946 procedure Set_Corresponding_Generic_Association
2947 (N : Node_Id; Val : Node_Id) is
2949 pragma Assert (False
2950 or else NT (N).Nkind = N_Object_Declaration
2951 or else NT (N).Nkind = N_Object_Renaming_Declaration);
2952 Set_Node5 (N, Val); -- semantic field, no parent set
2953 end Set_Corresponding_Generic_Association;
2954 procedure Set_Corresponding_Integer_Value
2955 (N : Node_Id; Val : Uint) is
2957 pragma Assert (False
2958 or else NT (N).Nkind = N_Real_Literal);
2959 Set_Uint4 (N, Val); -- semantic field, no parent set
2960 end Set_Corresponding_Integer_Value;
2962 procedure Set_Corresponding_Spec
2963 (N : Node_Id; Val : Node_Id) is
2965 pragma Assert (False
2966 or else NT (N).Nkind = N_Package_Body
2967 or else NT (N).Nkind = N_Protected_Body
2968 or else NT (N).Nkind = N_Subprogram_Body
2969 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
2970 or else NT (N).Nkind = N_Task_Body
2971 or else NT (N).Nkind = N_With_Clause);
2972 Set_Node5 (N, Val); -- semantic field, no parent set
2973 end Set_Corresponding_Spec;
2975 procedure Set_Corresponding_Stub
2976 (N : Node_Id; Val : Node_Id) is
2978 pragma Assert (False
2979 or else NT (N).Nkind = N_Subunit);
2981 end Set_Corresponding_Stub;
2983 procedure Set_Dcheck_Function
2984 (N : Node_Id; Val : Entity_Id) is
2986 pragma Assert (False
2987 or else NT (N).Nkind = N_Variant);
2988 Set_Node5 (N, Val); -- semantic field, no parent set
2989 end Set_Dcheck_Function;
2991 procedure Set_Debug_Statement
2992 (N : Node_Id; Val : Node_Id) is
2994 pragma Assert (False
2995 or else NT (N).Nkind = N_Pragma);
2996 Set_Node3_With_Parent (N, Val);
2997 end Set_Debug_Statement;
2999 procedure Set_Declarations
3000 (N : Node_Id; Val : List_Id) is
3002 pragma Assert (False
3003 or else NT (N).Nkind = N_Accept_Statement
3004 or else NT (N).Nkind = N_Block_Statement
3005 or else NT (N).Nkind = N_Compilation_Unit_Aux
3006 or else NT (N).Nkind = N_Entry_Body
3007 or else NT (N).Nkind = N_Package_Body
3008 or else NT (N).Nkind = N_Protected_Body
3009 or else NT (N).Nkind = N_Subprogram_Body
3010 or else NT (N).Nkind = N_Task_Body);
3011 Set_List2_With_Parent (N, Val);
3012 end Set_Declarations;
3014 procedure Set_Default_Expression
3015 (N : Node_Id; Val : Node_Id) is
3017 pragma Assert (False
3018 or else NT (N).Nkind = N_Parameter_Specification);
3019 Set_Node5 (N, Val); -- semantic field, no parent set
3020 end Set_Default_Expression;
3022 procedure Set_Default_Name
3023 (N : Node_Id; Val : Node_Id) is
3025 pragma Assert (False
3026 or else NT (N).Nkind = N_Formal_Subprogram_Declaration);
3027 Set_Node2_With_Parent (N, Val);
3028 end Set_Default_Name;
3030 procedure Set_Defining_Identifier
3031 (N : Node_Id; Val : Entity_Id) is
3033 pragma Assert (False
3034 or else NT (N).Nkind = N_Component_Declaration
3035 or else NT (N).Nkind = N_Defining_Program_Unit_Name
3036 or else NT (N).Nkind = N_Discriminant_Specification
3037 or else NT (N).Nkind = N_Entry_Body
3038 or else NT (N).Nkind = N_Entry_Declaration
3039 or else NT (N).Nkind = N_Entry_Index_Specification
3040 or else NT (N).Nkind = N_Exception_Declaration
3041 or else NT (N).Nkind = N_Exception_Renaming_Declaration
3042 or else NT (N).Nkind = N_Formal_Object_Declaration
3043 or else NT (N).Nkind = N_Formal_Package_Declaration
3044 or else NT (N).Nkind = N_Formal_Type_Declaration
3045 or else NT (N).Nkind = N_Full_Type_Declaration
3046 or else NT (N).Nkind = N_Implicit_Label_Declaration
3047 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3048 or else NT (N).Nkind = N_Loop_Parameter_Specification
3049 or else NT (N).Nkind = N_Number_Declaration
3050 or else NT (N).Nkind = N_Object_Declaration
3051 or else NT (N).Nkind = N_Object_Renaming_Declaration
3052 or else NT (N).Nkind = N_Package_Body_Stub
3053 or else NT (N).Nkind = N_Parameter_Specification
3054 or else NT (N).Nkind = N_Private_Extension_Declaration
3055 or else NT (N).Nkind = N_Private_Type_Declaration
3056 or else NT (N).Nkind = N_Protected_Body
3057 or else NT (N).Nkind = N_Protected_Body_Stub
3058 or else NT (N).Nkind = N_Protected_Type_Declaration
3059 or else NT (N).Nkind = N_Single_Protected_Declaration
3060 or else NT (N).Nkind = N_Single_Task_Declaration
3061 or else NT (N).Nkind = N_Subtype_Declaration
3062 or else NT (N).Nkind = N_Task_Body
3063 or else NT (N).Nkind = N_Task_Body_Stub
3064 or else NT (N).Nkind = N_Task_Type_Declaration);
3065 Set_Node1_With_Parent (N, Val);
3066 end Set_Defining_Identifier;
3068 procedure Set_Defining_Unit_Name
3069 (N : Node_Id; Val : Node_Id) is
3071 pragma Assert (False
3072 or else NT (N).Nkind = N_Function_Instantiation
3073 or else NT (N).Nkind = N_Function_Specification
3074 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
3075 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
3076 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
3077 or else NT (N).Nkind = N_Package_Body
3078 or else NT (N).Nkind = N_Package_Instantiation
3079 or else NT (N).Nkind = N_Package_Renaming_Declaration
3080 or else NT (N).Nkind = N_Package_Specification
3081 or else NT (N).Nkind = N_Procedure_Instantiation
3082 or else NT (N).Nkind = N_Procedure_Specification);
3083 Set_Node1_With_Parent (N, Val);
3084 end Set_Defining_Unit_Name;
3086 procedure Set_Delay_Alternative
3087 (N : Node_Id; Val : Node_Id) is
3089 pragma Assert (False
3090 or else NT (N).Nkind = N_Timed_Entry_Call);
3091 Set_Node4_With_Parent (N, Val);
3092 end Set_Delay_Alternative;
3094 procedure Set_Delay_Finalize_Attach
3095 (N : Node_Id; Val : Boolean := True) is
3097 pragma Assert (False
3098 or else NT (N).Nkind = N_Object_Declaration);
3099 Set_Flag14 (N, Val);
3100 end Set_Delay_Finalize_Attach;
3102 procedure Set_Delay_Statement
3103 (N : Node_Id; Val : Node_Id) is
3105 pragma Assert (False
3106 or else NT (N).Nkind = N_Delay_Alternative);
3107 Set_Node2_With_Parent (N, Val);
3108 end Set_Delay_Statement;
3110 procedure Set_Delta_Expression
3111 (N : Node_Id; Val : Node_Id) is
3113 pragma Assert (False
3114 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3115 or else NT (N).Nkind = N_Delta_Constraint
3116 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
3117 Set_Node3_With_Parent (N, Val);
3118 end Set_Delta_Expression;
3120 procedure Set_Digits_Expression
3121 (N : Node_Id; Val : Node_Id) is
3123 pragma Assert (False
3124 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
3125 or else NT (N).Nkind = N_Digits_Constraint
3126 or else NT (N).Nkind = N_Floating_Point_Definition);
3127 Set_Node2_With_Parent (N, Val);
3128 end Set_Digits_Expression;
3130 procedure Set_Discr_Check_Funcs_Built
3131 (N : Node_Id; Val : Boolean := True) is
3133 pragma Assert (False
3134 or else NT (N).Nkind = N_Full_Type_Declaration);
3135 Set_Flag11 (N, Val);
3136 end Set_Discr_Check_Funcs_Built;
3138 procedure Set_Discrete_Choices
3139 (N : Node_Id; Val : List_Id) is
3141 pragma Assert (False
3142 or else NT (N).Nkind = N_Case_Statement_Alternative
3143 or else NT (N).Nkind = N_Variant);
3144 Set_List4_With_Parent (N, Val);
3145 end Set_Discrete_Choices;
3147 procedure Set_Discrete_Range
3148 (N : Node_Id; Val : Node_Id) is
3150 pragma Assert (False
3151 or else NT (N).Nkind = N_Slice);
3152 Set_Node4_With_Parent (N, Val);
3153 end Set_Discrete_Range;
3155 procedure Set_Discrete_Subtype_Definition
3156 (N : Node_Id; Val : Node_Id) is
3158 pragma Assert (False
3159 or else NT (N).Nkind = N_Entry_Declaration
3160 or else NT (N).Nkind = N_Entry_Index_Specification
3161 or else NT (N).Nkind = N_Loop_Parameter_Specification);
3162 Set_Node4_With_Parent (N, Val);
3163 end Set_Discrete_Subtype_Definition;
3165 procedure Set_Discrete_Subtype_Definitions
3166 (N : Node_Id; Val : List_Id) is
3168 pragma Assert (False
3169 or else NT (N).Nkind = N_Constrained_Array_Definition);
3170 Set_List2_With_Parent (N, Val);
3171 end Set_Discrete_Subtype_Definitions;
3173 procedure Set_Discriminant_Specifications
3174 (N : Node_Id; Val : List_Id) is
3176 pragma Assert (False
3177 or else NT (N).Nkind = N_Formal_Type_Declaration
3178 or else NT (N).Nkind = N_Full_Type_Declaration
3179 or else NT (N).Nkind = N_Incomplete_Type_Declaration
3180 or else NT (N).Nkind = N_Private_Extension_Declaration
3181 or else NT (N).Nkind = N_Private_Type_Declaration
3182 or else NT (N).Nkind = N_Protected_Type_Declaration
3183 or else NT (N).Nkind = N_Task_Type_Declaration);
3184 Set_List4_With_Parent (N, Val);
3185 end Set_Discriminant_Specifications;
3187 procedure Set_Discriminant_Type
3188 (N : Node_Id; Val : Node_Id) is
3190 pragma Assert (False
3191 or else NT (N).Nkind = N_Discriminant_Specification);
3192 Set_Node5_With_Parent (N, Val);
3193 end Set_Discriminant_Type;
3195 procedure Set_Do_Accessibility_Check
3196 (N : Node_Id; Val : Boolean := True) is
3198 pragma Assert (False
3199 or else NT (N).Nkind = N_Parameter_Specification);
3200 Set_Flag13 (N, Val);
3201 end Set_Do_Accessibility_Check;
3203 procedure Set_Do_Discriminant_Check
3204 (N : Node_Id; Val : Boolean := True) is
3206 pragma Assert (False
3207 or else NT (N).Nkind = N_Selected_Component);
3208 Set_Flag13 (N, Val);
3209 end Set_Do_Discriminant_Check;
3211 procedure Set_Do_Division_Check
3212 (N : Node_Id; Val : Boolean := True) is
3214 pragma Assert (False
3215 or else NT (N).Nkind = N_Op_Divide
3216 or else NT (N).Nkind = N_Op_Mod
3217 or else NT (N).Nkind = N_Op_Rem);
3218 Set_Flag13 (N, Val);
3219 end Set_Do_Division_Check;
3221 procedure Set_Do_Length_Check
3222 (N : Node_Id; Val : Boolean := True) is
3224 pragma Assert (False
3225 or else NT (N).Nkind = N_Assignment_Statement
3226 or else NT (N).Nkind = N_Op_And
3227 or else NT (N).Nkind = N_Op_Or
3228 or else NT (N).Nkind = N_Op_Xor
3229 or else NT (N).Nkind = N_Type_Conversion);
3231 end Set_Do_Length_Check;
3233 procedure Set_Do_Overflow_Check
3234 (N : Node_Id; Val : Boolean := True) is
3236 pragma Assert (False
3237 or else NT (N).Nkind in N_Op
3238 or else NT (N).Nkind = N_Attribute_Reference
3239 or else NT (N).Nkind = N_Type_Conversion);
3240 Set_Flag17 (N, Val);
3241 end Set_Do_Overflow_Check;
3243 procedure Set_Do_Range_Check
3244 (N : Node_Id; Val : Boolean := True) is
3246 pragma Assert (False
3247 or else NT (N).Nkind in N_Subexpr);
3249 end Set_Do_Range_Check;
3251 procedure Set_Do_Storage_Check
3252 (N : Node_Id; Val : Boolean := True) is
3254 pragma Assert (False
3255 or else NT (N).Nkind = N_Allocator
3256 or else NT (N).Nkind = N_Subprogram_Body);
3257 Set_Flag17 (N, Val);
3258 end Set_Do_Storage_Check;
3260 procedure Set_Do_Tag_Check
3261 (N : Node_Id; Val : Boolean := True) is
3263 pragma Assert (False
3264 or else NT (N).Nkind = N_Assignment_Statement
3265 or else NT (N).Nkind = N_Function_Call
3266 or else NT (N).Nkind = N_Procedure_Call_Statement
3267 or else NT (N).Nkind = N_Return_Statement
3268 or else NT (N).Nkind = N_Type_Conversion);
3269 Set_Flag13 (N, Val);
3270 end Set_Do_Tag_Check;
3272 procedure Set_Elaborate_All_Present
3273 (N : Node_Id; Val : Boolean := True) is
3275 pragma Assert (False
3276 or else NT (N).Nkind = N_With_Clause);
3277 Set_Flag15 (N, Val);
3278 end Set_Elaborate_All_Present;
3280 procedure Set_Elaborate_Present
3281 (N : Node_Id; Val : Boolean := True) is
3283 pragma Assert (False
3284 or else NT (N).Nkind = N_With_Clause);
3286 end Set_Elaborate_Present;
3288 procedure Set_Elaboration_Boolean
3289 (N : Node_Id; Val : Node_Id) is
3291 pragma Assert (False
3292 or else NT (N).Nkind = N_Function_Specification
3293 or else NT (N).Nkind = N_Procedure_Specification);
3295 end Set_Elaboration_Boolean;
3297 procedure Set_Else_Actions
3298 (N : Node_Id; Val : List_Id) is
3300 pragma Assert (False
3301 or else NT (N).Nkind = N_Conditional_Expression);
3302 Set_List3 (N, Val); -- semantic field, no parent set
3303 end Set_Else_Actions;
3305 procedure Set_Else_Statements
3306 (N : Node_Id; Val : List_Id) is
3308 pragma Assert (False
3309 or else NT (N).Nkind = N_Conditional_Entry_Call
3310 or else NT (N).Nkind = N_If_Statement
3311 or else NT (N).Nkind = N_Selective_Accept);
3312 Set_List4_With_Parent (N, Val);
3313 end Set_Else_Statements;
3315 procedure Set_Elsif_Parts
3316 (N : Node_Id; Val : List_Id) is
3318 pragma Assert (False
3319 or else NT (N).Nkind = N_If_Statement);
3320 Set_List3_With_Parent (N, Val);
3321 end Set_Elsif_Parts;
3323 procedure Set_Enclosing_Variant
3324 (N : Node_Id; Val : Node_Id) is
3326 pragma Assert (False
3327 or else NT (N).Nkind = N_Variant);
3328 Set_Node2 (N, Val); -- semantic field, no parent set
3329 end Set_Enclosing_Variant;
3331 procedure Set_End_Label
3332 (N : Node_Id; Val : Node_Id) is
3334 pragma Assert (False
3335 or else NT (N).Nkind = N_Enumeration_Type_Definition
3336 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3337 or else NT (N).Nkind = N_Loop_Statement
3338 or else NT (N).Nkind = N_Package_Specification
3339 or else NT (N).Nkind = N_Protected_Body
3340 or else NT (N).Nkind = N_Protected_Definition
3341 or else NT (N).Nkind = N_Record_Definition
3342 or else NT (N).Nkind = N_Task_Definition);
3343 Set_Node4_With_Parent (N, Val);
3346 procedure Set_End_Span
3347 (N : Node_Id; Val : Uint) is
3349 pragma Assert (False
3350 or else NT (N).Nkind = N_Case_Statement
3351 or else NT (N).Nkind = N_If_Statement);
3355 procedure Set_Entity
3356 (N : Node_Id; Val : Node_Id) is
3358 pragma Assert (False
3359 or else NT (N).Nkind in N_Has_Entity
3360 or else NT (N).Nkind = N_Freeze_Entity);
3361 Set_Node4 (N, Val); -- semantic field, no parent set
3364 procedure Set_Entry_Body_Formal_Part
3365 (N : Node_Id; Val : Node_Id) is
3367 pragma Assert (False
3368 or else NT (N).Nkind = N_Entry_Body);
3369 Set_Node5_With_Parent (N, Val);
3370 end Set_Entry_Body_Formal_Part;
3372 procedure Set_Entry_Call_Alternative
3373 (N : Node_Id; Val : Node_Id) is
3375 pragma Assert (False
3376 or else NT (N).Nkind = N_Conditional_Entry_Call
3377 or else NT (N).Nkind = N_Timed_Entry_Call);
3378 Set_Node1_With_Parent (N, Val);
3379 end Set_Entry_Call_Alternative;
3381 procedure Set_Entry_Call_Statement
3382 (N : Node_Id; Val : Node_Id) is
3384 pragma Assert (False
3385 or else NT (N).Nkind = N_Entry_Call_Alternative);
3386 Set_Node1_With_Parent (N, Val);
3387 end Set_Entry_Call_Statement;
3389 procedure Set_Entry_Direct_Name
3390 (N : Node_Id; Val : Node_Id) is
3392 pragma Assert (False
3393 or else NT (N).Nkind = N_Accept_Statement);
3394 Set_Node1_With_Parent (N, Val);
3395 end Set_Entry_Direct_Name;
3397 procedure Set_Entry_Index
3398 (N : Node_Id; Val : Node_Id) is
3400 pragma Assert (False
3401 or else NT (N).Nkind = N_Accept_Statement);
3402 Set_Node5_With_Parent (N, Val);
3403 end Set_Entry_Index;
3405 procedure Set_Entry_Index_Specification
3406 (N : Node_Id; Val : Node_Id) is
3408 pragma Assert (False
3409 or else NT (N).Nkind = N_Entry_Body_Formal_Part);
3410 Set_Node4_With_Parent (N, Val);
3411 end Set_Entry_Index_Specification;
3414 (N : Node_Id; Val : Node_Id) is
3416 pragma Assert (False
3417 or else NT (N).Nkind in N_Has_Etype);
3418 Set_Node5 (N, Val); -- semantic field, no parent set
3421 procedure Set_Exception_Choices
3422 (N : Node_Id; Val : List_Id) is
3424 pragma Assert (False
3425 or else NT (N).Nkind = N_Exception_Handler);
3426 Set_List4_With_Parent (N, Val);
3427 end Set_Exception_Choices;
3429 procedure Set_Exception_Handlers
3430 (N : Node_Id; Val : List_Id) is
3432 pragma Assert (False
3433 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3434 Set_List5_With_Parent (N, Val);
3435 end Set_Exception_Handlers;
3437 procedure Set_Exception_Junk
3438 (N : Node_Id; Val : Boolean := True) is
3440 pragma Assert (False
3441 or else NT (N).Nkind = N_Goto_Statement
3442 or else NT (N).Nkind = N_Label
3443 or else NT (N).Nkind = N_Object_Declaration
3444 or else NT (N).Nkind = N_Subtype_Declaration);
3445 Set_Flag11 (N, Val);
3446 end Set_Exception_Junk;
3448 procedure Set_Expansion_Delayed
3449 (N : Node_Id; Val : Boolean := True) is
3451 pragma Assert (False
3452 or else NT (N).Nkind = N_Aggregate
3453 or else NT (N).Nkind = N_Extension_Aggregate);
3454 Set_Flag11 (N, Val);
3455 end Set_Expansion_Delayed;
3457 procedure Set_Explicit_Actual_Parameter
3458 (N : Node_Id; Val : Node_Id) is
3460 pragma Assert (False
3461 or else NT (N).Nkind = N_Parameter_Association);
3462 Set_Node3_With_Parent (N, Val);
3463 end Set_Explicit_Actual_Parameter;
3465 procedure Set_Explicit_Generic_Actual_Parameter
3466 (N : Node_Id; Val : Node_Id) is
3468 pragma Assert (False
3469 or else NT (N).Nkind = N_Generic_Association);
3470 Set_Node1_With_Parent (N, Val);
3471 end Set_Explicit_Generic_Actual_Parameter;
3473 procedure Set_Expression
3474 (N : Node_Id; Val : Node_Id) is
3476 pragma Assert (False
3477 or else NT (N).Nkind = N_Allocator
3478 or else NT (N).Nkind = N_Assignment_Statement
3479 or else NT (N).Nkind = N_At_Clause
3480 or else NT (N).Nkind = N_Attribute_Definition_Clause
3481 or else NT (N).Nkind = N_Case_Statement
3482 or else NT (N).Nkind = N_Code_Statement
3483 or else NT (N).Nkind = N_Component_Association
3484 or else NT (N).Nkind = N_Component_Declaration
3485 or else NT (N).Nkind = N_Delay_Relative_Statement
3486 or else NT (N).Nkind = N_Delay_Until_Statement
3487 or else NT (N).Nkind = N_Discriminant_Association
3488 or else NT (N).Nkind = N_Discriminant_Specification
3489 or else NT (N).Nkind = N_Exception_Declaration
3490 or else NT (N).Nkind = N_Formal_Object_Declaration
3491 or else NT (N).Nkind = N_Free_Statement
3492 or else NT (N).Nkind = N_Mod_Clause
3493 or else NT (N).Nkind = N_Modular_Type_Definition
3494 or else NT (N).Nkind = N_Number_Declaration
3495 or else NT (N).Nkind = N_Object_Declaration
3496 or else NT (N).Nkind = N_Parameter_Specification
3497 or else NT (N).Nkind = N_Pragma_Argument_Association
3498 or else NT (N).Nkind = N_Qualified_Expression
3499 or else NT (N).Nkind = N_Return_Statement
3500 or else NT (N).Nkind = N_Type_Conversion
3501 or else NT (N).Nkind = N_Unchecked_Expression
3502 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3503 Set_Node3_With_Parent (N, Val);
3506 procedure Set_Expressions
3507 (N : Node_Id; Val : List_Id) is
3509 pragma Assert (False
3510 or else NT (N).Nkind = N_Aggregate
3511 or else NT (N).Nkind = N_Attribute_Reference
3512 or else NT (N).Nkind = N_Conditional_Expression
3513 or else NT (N).Nkind = N_Extension_Aggregate
3514 or else NT (N).Nkind = N_Indexed_Component);
3515 Set_List1_With_Parent (N, Val);
3516 end Set_Expressions;
3518 procedure Set_First_Bit
3519 (N : Node_Id; Val : Node_Id) is
3521 pragma Assert (False
3522 or else NT (N).Nkind = N_Component_Clause);
3523 Set_Node3_With_Parent (N, Val);
3526 procedure Set_First_Inlined_Subprogram
3527 (N : Node_Id; Val : Entity_Id) is
3529 pragma Assert (False
3530 or else NT (N).Nkind = N_Compilation_Unit);
3531 Set_Node3 (N, Val); -- semantic field, no parent set
3532 end Set_First_Inlined_Subprogram;
3534 procedure Set_First_Name
3535 (N : Node_Id; Val : Boolean := True) is
3537 pragma Assert (False
3538 or else NT (N).Nkind = N_With_Clause);
3542 procedure Set_First_Named_Actual
3543 (N : Node_Id; Val : Node_Id) is
3545 pragma Assert (False
3546 or else NT (N).Nkind = N_Entry_Call_Statement
3547 or else NT (N).Nkind = N_Function_Call
3548 or else NT (N).Nkind = N_Procedure_Call_Statement);
3549 Set_Node4 (N, Val); -- semantic field, no parent set
3550 end Set_First_Named_Actual;
3552 procedure Set_First_Real_Statement
3553 (N : Node_Id; Val : Node_Id) is
3555 pragma Assert (False
3556 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3557 Set_Node2 (N, Val); -- semantic field, no parent set
3558 end Set_First_Real_Statement;
3560 procedure Set_First_Subtype_Link
3561 (N : Node_Id; Val : Entity_Id) is
3563 pragma Assert (False
3564 or else NT (N).Nkind = N_Freeze_Entity);
3565 Set_Node5 (N, Val); -- semantic field, no parent set
3566 end Set_First_Subtype_Link;
3568 procedure Set_Float_Truncate
3569 (N : Node_Id; Val : Boolean := True) is
3571 pragma Assert (False
3572 or else NT (N).Nkind = N_Type_Conversion);
3573 Set_Flag11 (N, Val);
3574 end Set_Float_Truncate;
3576 procedure Set_Formal_Type_Definition
3577 (N : Node_Id; Val : Node_Id) is
3579 pragma Assert (False
3580 or else NT (N).Nkind = N_Formal_Type_Declaration);
3581 Set_Node3_With_Parent (N, Val);
3582 end Set_Formal_Type_Definition;
3584 procedure Set_Forwards_OK
3585 (N : Node_Id; Val : Boolean := True) is
3587 pragma Assert (False
3588 or else NT (N).Nkind = N_Assignment_Statement);
3590 end Set_Forwards_OK;
3592 procedure Set_From_At_Mod
3593 (N : Node_Id; Val : Boolean := True) is
3595 pragma Assert (False
3596 or else NT (N).Nkind = N_Attribute_Definition_Clause);
3598 end Set_From_At_Mod;
3600 procedure Set_Generic_Associations
3601 (N : Node_Id; Val : List_Id) is
3603 pragma Assert (False
3604 or else NT (N).Nkind = N_Formal_Package_Declaration
3605 or else NT (N).Nkind = N_Function_Instantiation
3606 or else NT (N).Nkind = N_Package_Instantiation
3607 or else NT (N).Nkind = N_Procedure_Instantiation);
3608 Set_List3_With_Parent (N, Val);
3609 end Set_Generic_Associations;
3611 procedure Set_Generic_Formal_Declarations
3612 (N : Node_Id; Val : List_Id) is
3614 pragma Assert (False
3615 or else NT (N).Nkind = N_Generic_Package_Declaration
3616 or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
3617 Set_List2_With_Parent (N, Val);
3618 end Set_Generic_Formal_Declarations;
3620 procedure Set_Generic_Parent
3621 (N : Node_Id; Val : Node_Id) is
3623 pragma Assert (False
3624 or else NT (N).Nkind = N_Function_Specification
3625 or else NT (N).Nkind = N_Package_Specification
3626 or else NT (N).Nkind = N_Procedure_Specification);
3628 end Set_Generic_Parent;
3630 procedure Set_Generic_Parent_Type
3631 (N : Node_Id; Val : Node_Id) is
3633 pragma Assert (False
3634 or else NT (N).Nkind = N_Subtype_Declaration);
3636 end Set_Generic_Parent_Type;
3638 procedure Set_Handled_Statement_Sequence
3639 (N : Node_Id; Val : Node_Id) is
3641 pragma Assert (False
3642 or else NT (N).Nkind = N_Accept_Statement
3643 or else NT (N).Nkind = N_Block_Statement
3644 or else NT (N).Nkind = N_Entry_Body
3645 or else NT (N).Nkind = N_Package_Body
3646 or else NT (N).Nkind = N_Subprogram_Body
3647 or else NT (N).Nkind = N_Task_Body);
3648 Set_Node4_With_Parent (N, Val);
3649 end Set_Handled_Statement_Sequence;
3651 procedure Set_Handler_List_Entry
3652 (N : Node_Id; Val : Node_Id) is
3654 pragma Assert (False
3655 or else NT (N).Nkind = N_Object_Declaration);
3657 end Set_Handler_List_Entry;
3659 procedure Set_Has_Created_Identifier
3660 (N : Node_Id; Val : Boolean := True) is
3662 pragma Assert (False
3663 or else NT (N).Nkind = N_Block_Statement
3664 or else NT (N).Nkind = N_Loop_Statement);
3665 Set_Flag15 (N, Val);
3666 end Set_Has_Created_Identifier;
3668 procedure Set_Has_Dynamic_Length_Check
3669 (N : Node_Id; Val : Boolean := True) is
3671 Set_Flag10 (N, Val);
3672 end Set_Has_Dynamic_Length_Check;
3674 procedure Set_Has_Dynamic_Range_Check
3675 (N : Node_Id; Val : Boolean := True) is
3677 Set_Flag12 (N, Val);
3678 end Set_Has_Dynamic_Range_Check;
3680 procedure Set_Has_No_Elaboration_Code
3681 (N : Node_Id; Val : Boolean := True) is
3683 pragma Assert (False
3684 or else NT (N).Nkind = N_Compilation_Unit);
3685 Set_Flag17 (N, Val);
3686 end Set_Has_No_Elaboration_Code;
3688 procedure Set_Has_Priority_Pragma
3689 (N : Node_Id; Val : Boolean := True) is
3691 pragma Assert (False
3692 or else NT (N).Nkind = N_Protected_Definition
3693 or else NT (N).Nkind = N_Subprogram_Body
3694 or else NT (N).Nkind = N_Task_Definition);
3696 end Set_Has_Priority_Pragma;
3698 procedure Set_Has_Private_View
3699 (N : Node_Id; Val : Boolean := True) is
3701 pragma Assert (False
3702 or else NT (N).Nkind in N_Op
3703 or else NT (N).Nkind = N_Character_Literal
3704 or else NT (N).Nkind = N_Expanded_Name
3705 or else NT (N).Nkind = N_Identifier
3706 or else NT (N).Nkind = N_Operator_Symbol);
3707 Set_Flag11 (N, Val);
3708 end Set_Has_Private_View;
3710 procedure Set_Has_Storage_Size_Pragma
3711 (N : Node_Id; Val : Boolean := True) is
3713 pragma Assert (False
3714 or else NT (N).Nkind = N_Task_Definition);
3716 end Set_Has_Storage_Size_Pragma;
3718 procedure Set_Has_Task_Info_Pragma
3719 (N : Node_Id; Val : Boolean := True) is
3721 pragma Assert (False
3722 or else NT (N).Nkind = N_Task_Definition);
3724 end Set_Has_Task_Info_Pragma;
3726 procedure Set_Has_Task_Name_Pragma
3727 (N : Node_Id; Val : Boolean := True) is
3729 pragma Assert (False
3730 or else NT (N).Nkind = N_Task_Definition);
3732 end Set_Has_Task_Name_Pragma;
3734 procedure Set_Has_Wide_Character
3735 (N : Node_Id; Val : Boolean := True) is
3737 pragma Assert (False
3738 or else NT (N).Nkind = N_String_Literal);
3739 Set_Flag11 (N, Val);
3740 end Set_Has_Wide_Character;
3742 procedure Set_Hidden_By_Use_Clause
3743 (N : Node_Id; Val : Elist_Id) is
3745 pragma Assert (False
3746 or else NT (N).Nkind = N_Use_Package_Clause
3747 or else NT (N).Nkind = N_Use_Type_Clause);
3748 Set_Elist4 (N, Val);
3749 end Set_Hidden_By_Use_Clause;
3751 procedure Set_High_Bound
3752 (N : Node_Id; Val : Node_Id) is
3754 pragma Assert (False
3755 or else NT (N).Nkind = N_Range
3756 or else NT (N).Nkind = N_Real_Range_Specification
3757 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
3758 Set_Node2_With_Parent (N, Val);
3761 procedure Set_Identifier
3762 (N : Node_Id; Val : Node_Id) is
3764 pragma Assert (False
3765 or else NT (N).Nkind = N_At_Clause
3766 or else NT (N).Nkind = N_Block_Statement
3767 or else NT (N).Nkind = N_Designator
3768 or else NT (N).Nkind = N_Enumeration_Representation_Clause
3769 or else NT (N).Nkind = N_Label
3770 or else NT (N).Nkind = N_Loop_Statement
3771 or else NT (N).Nkind = N_Record_Representation_Clause
3772 or else NT (N).Nkind = N_Subprogram_Info);
3773 Set_Node1_With_Parent (N, Val);
3776 procedure Set_Implicit_With
3777 (N : Node_Id; Val : Boolean := True) is
3779 pragma Assert (False
3780 or else NT (N).Nkind = N_With_Clause);
3781 Set_Flag16 (N, Val);
3782 end Set_Implicit_With;
3784 procedure Set_In_Present
3785 (N : Node_Id; Val : Boolean := True) is
3787 pragma Assert (False
3788 or else NT (N).Nkind = N_Formal_Object_Declaration
3789 or else NT (N).Nkind = N_Parameter_Specification);
3790 Set_Flag15 (N, Val);
3793 procedure Set_Includes_Infinities
3794 (N : Node_Id; Val : Boolean := True) is
3796 pragma Assert (False
3797 or else NT (N).Nkind = N_Range);
3798 Set_Flag11 (N, Val);
3799 end Set_Includes_Infinities;
3801 procedure Set_Instance_Spec
3802 (N : Node_Id; Val : Node_Id) is
3804 pragma Assert (False
3805 or else NT (N).Nkind = N_Formal_Package_Declaration
3806 or else NT (N).Nkind = N_Function_Instantiation
3807 or else NT (N).Nkind = N_Package_Instantiation
3808 or else NT (N).Nkind = N_Procedure_Instantiation);
3809 Set_Node5 (N, Val); -- semantic field, no Parent set
3810 end Set_Instance_Spec;
3812 procedure Set_Intval
3813 (N : Node_Id; Val : Uint) is
3815 pragma Assert (False
3816 or else NT (N).Nkind = N_Integer_Literal);
3820 procedure Set_Is_Asynchronous_Call_Block
3821 (N : Node_Id; Val : Boolean := True) is
3823 pragma Assert (False
3824 or else NT (N).Nkind = N_Block_Statement);
3826 end Set_Is_Asynchronous_Call_Block;
3828 procedure Set_Is_Component_Left_Opnd
3829 (N : Node_Id; Val : Boolean := True) is
3831 pragma Assert (False
3832 or else NT (N).Nkind = N_Op_Concat);
3833 Set_Flag13 (N, Val);
3834 end Set_Is_Component_Left_Opnd;
3836 procedure Set_Is_Component_Right_Opnd
3837 (N : Node_Id; Val : Boolean := True) is
3839 pragma Assert (False
3840 or else NT (N).Nkind = N_Op_Concat);
3841 Set_Flag14 (N, Val);
3842 end Set_Is_Component_Right_Opnd;
3844 procedure Set_Is_Controlling_Actual
3845 (N : Node_Id; Val : Boolean := True) is
3847 pragma Assert (False
3848 or else NT (N).Nkind in N_Subexpr);
3849 Set_Flag16 (N, Val);
3850 end Set_Is_Controlling_Actual;
3852 procedure Set_Is_In_Discriminant_Check
3853 (N : Node_Id; Val : Boolean := True) is
3855 pragma Assert (False
3856 or else NT (N).Nkind = N_Selected_Component);
3857 Set_Flag11 (N, Val);
3858 end Set_Is_In_Discriminant_Check;
3860 procedure Set_Is_Machine_Number
3861 (N : Node_Id; Val : Boolean := True) is
3863 pragma Assert (False
3864 or else NT (N).Nkind = N_Real_Literal);
3865 Set_Flag11 (N, Val);
3866 end Set_Is_Machine_Number;
3868 procedure Set_Is_Null_Loop
3869 (N : Node_Id; Val : Boolean := True) is
3871 pragma Assert (False
3872 or else NT (N).Nkind = N_Loop_Statement);
3873 Set_Flag16 (N, Val);
3874 end Set_Is_Null_Loop;
3876 procedure Set_Is_Overloaded
3877 (N : Node_Id; Val : Boolean := True) is
3879 pragma Assert (False
3880 or else NT (N).Nkind in N_Subexpr);
3882 end Set_Is_Overloaded;
3884 procedure Set_Is_Power_Of_2_For_Shift
3885 (N : Node_Id; Val : Boolean := True) is
3887 pragma Assert (False
3888 or else NT (N).Nkind = N_Op_Expon);
3889 Set_Flag13 (N, Val);
3890 end Set_Is_Power_Of_2_For_Shift;
3892 procedure Set_Is_Protected_Subprogram_Body
3893 (N : Node_Id; Val : Boolean := True) is
3895 pragma Assert (False
3896 or else NT (N).Nkind = N_Subprogram_Body);
3898 end Set_Is_Protected_Subprogram_Body;
3900 procedure Set_Is_Static_Expression
3901 (N : Node_Id; Val : Boolean := True) is
3903 pragma Assert (False
3904 or else NT (N).Nkind in N_Subexpr);
3906 end Set_Is_Static_Expression;
3908 procedure Set_Is_Subprogram_Descriptor
3909 (N : Node_Id; Val : Boolean := True) is
3911 pragma Assert (False
3912 or else NT (N).Nkind = N_Object_Declaration);
3913 Set_Flag16 (N, Val);
3914 end Set_Is_Subprogram_Descriptor;
3916 procedure Set_Is_Task_Allocation_Block
3917 (N : Node_Id; Val : Boolean := True) is
3919 pragma Assert (False
3920 or else NT (N).Nkind = N_Block_Statement);
3922 end Set_Is_Task_Allocation_Block;
3924 procedure Set_Is_Task_Master
3925 (N : Node_Id; Val : Boolean := True) is
3927 pragma Assert (False
3928 or else NT (N).Nkind = N_Block_Statement
3929 or else NT (N).Nkind = N_Subprogram_Body
3930 or else NT (N).Nkind = N_Task_Body);
3932 end Set_Is_Task_Master;
3934 procedure Set_Iteration_Scheme
3935 (N : Node_Id; Val : Node_Id) is
3937 pragma Assert (False
3938 or else NT (N).Nkind = N_Loop_Statement);
3939 Set_Node2_With_Parent (N, Val);
3940 end Set_Iteration_Scheme;
3943 (N : Node_Id; Val : Entity_Id) is
3945 pragma Assert (False
3946 or else NT (N).Nkind = N_Itype_Reference);
3947 Set_Node1 (N, Val); -- no parent, semantic field
3950 procedure Set_Kill_Range_Check
3951 (N : Node_Id; Val : Boolean := True) is
3953 pragma Assert (False
3954 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3955 Set_Flag11 (N, Val);
3956 end Set_Kill_Range_Check;
3958 procedure Set_Label_Construct
3959 (N : Node_Id; Val : Node_Id) is
3961 pragma Assert (False
3962 or else NT (N).Nkind = N_Implicit_Label_Declaration);
3963 Set_Node2 (N, Val); -- semantic field, no parent set
3964 end Set_Label_Construct;
3966 procedure Set_Last_Bit
3967 (N : Node_Id; Val : Node_Id) is
3969 pragma Assert (False
3970 or else NT (N).Nkind = N_Component_Clause);
3971 Set_Node4_With_Parent (N, Val);
3974 procedure Set_Last_Name
3975 (N : Node_Id; Val : Boolean := True) is
3977 pragma Assert (False
3978 or else NT (N).Nkind = N_With_Clause);
3982 procedure Set_Left_Opnd
3983 (N : Node_Id; Val : Node_Id) is
3985 pragma Assert (False
3986 or else NT (N).Nkind = N_And_Then
3987 or else NT (N).Nkind = N_In
3988 or else NT (N).Nkind = N_Not_In
3989 or else NT (N).Nkind = N_Or_Else
3990 or else NT (N).Nkind in N_Binary_Op);
3991 Set_Node2_With_Parent (N, Val);
3994 procedure Set_Library_Unit
3995 (N : Node_Id; Val : Node_Id) is
3997 pragma Assert (False
3998 or else NT (N).Nkind = N_Compilation_Unit
3999 or else NT (N).Nkind = N_Package_Body_Stub
4000 or else NT (N).Nkind = N_Protected_Body_Stub
4001 or else NT (N).Nkind = N_Subprogram_Body_Stub
4002 or else NT (N).Nkind = N_Task_Body_Stub
4003 or else NT (N).Nkind = N_With_Clause);
4004 Set_Node4 (N, Val); -- semantic field, no parent set
4005 end Set_Library_Unit;
4007 procedure Set_Limited_View_Installed
4008 (N : Node_Id; Val : Boolean := True) is
4010 pragma Assert (False
4011 or else NT (N).Nkind = N_Package_Specification
4012 or else NT (N).Nkind = N_With_Clause);
4013 Set_Flag18 (N, Val);
4014 end Set_Limited_View_Installed;
4016 procedure Set_Limited_Present
4017 (N : Node_Id; Val : Boolean := True) is
4019 pragma Assert (False
4020 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4021 or else NT (N).Nkind = N_Private_Type_Declaration
4022 or else NT (N).Nkind = N_Record_Definition
4023 or else NT (N).Nkind = N_With_Clause);
4024 Set_Flag17 (N, Val);
4025 end Set_Limited_Present;
4027 procedure Set_Literals
4028 (N : Node_Id; Val : List_Id) is
4030 pragma Assert (False
4031 or else NT (N).Nkind = N_Enumeration_Type_Definition);
4032 Set_List1_With_Parent (N, Val);
4035 procedure Set_Loop_Actions
4036 (N : Node_Id; Val : List_Id) is
4038 pragma Assert (False
4039 or else NT (N).Nkind = N_Component_Association);
4040 Set_List2 (N, Val); -- semantic field, no parent set
4041 end Set_Loop_Actions;
4043 procedure Set_Loop_Parameter_Specification
4044 (N : Node_Id; Val : Node_Id) is
4046 pragma Assert (False
4047 or else NT (N).Nkind = N_Iteration_Scheme);
4048 Set_Node4_With_Parent (N, Val);
4049 end Set_Loop_Parameter_Specification;
4051 procedure Set_Low_Bound
4052 (N : Node_Id; Val : Node_Id) is
4054 pragma Assert (False
4055 or else NT (N).Nkind = N_Range
4056 or else NT (N).Nkind = N_Real_Range_Specification
4057 or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4058 Set_Node1_With_Parent (N, Val);
4061 procedure Set_Mod_Clause
4062 (N : Node_Id; Val : Node_Id) is
4064 pragma Assert (False
4065 or else NT (N).Nkind = N_Record_Representation_Clause);
4066 Set_Node2_With_Parent (N, Val);
4069 procedure Set_More_Ids
4070 (N : Node_Id; Val : Boolean := True) is
4072 pragma Assert (False
4073 or else NT (N).Nkind = N_Component_Declaration
4074 or else NT (N).Nkind = N_Discriminant_Specification
4075 or else NT (N).Nkind = N_Exception_Declaration
4076 or else NT (N).Nkind = N_Formal_Object_Declaration
4077 or else NT (N).Nkind = N_Number_Declaration
4078 or else NT (N).Nkind = N_Object_Declaration
4079 or else NT (N).Nkind = N_Parameter_Specification);
4083 procedure Set_Must_Be_Byte_Aligned
4084 (N : Node_Id; Val : Boolean := True) is
4086 pragma Assert (False
4087 or else NT (N).Nkind = N_Attribute_Reference);
4088 Set_Flag14 (N, Val);
4089 end Set_Must_Be_Byte_Aligned;
4091 procedure Set_Must_Not_Freeze
4092 (N : Node_Id; Val : Boolean := True) is
4094 pragma Assert (False
4095 or else NT (N).Nkind = N_Subtype_Indication
4096 or else NT (N).Nkind in N_Subexpr);
4098 end Set_Must_Not_Freeze;
4101 (N : Node_Id; Val : Node_Id) is
4103 pragma Assert (False
4104 or else NT (N).Nkind = N_Assignment_Statement
4105 or else NT (N).Nkind = N_Attribute_Definition_Clause
4106 or else NT (N).Nkind = N_Defining_Program_Unit_Name
4107 or else NT (N).Nkind = N_Designator
4108 or else NT (N).Nkind = N_Entry_Call_Statement
4109 or else NT (N).Nkind = N_Exception_Renaming_Declaration
4110 or else NT (N).Nkind = N_Exit_Statement
4111 or else NT (N).Nkind = N_Formal_Package_Declaration
4112 or else NT (N).Nkind = N_Function_Call
4113 or else NT (N).Nkind = N_Function_Instantiation
4114 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4115 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4116 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4117 or else NT (N).Nkind = N_Goto_Statement
4118 or else NT (N).Nkind = N_Object_Renaming_Declaration
4119 or else NT (N).Nkind = N_Package_Instantiation
4120 or else NT (N).Nkind = N_Package_Renaming_Declaration
4121 or else NT (N).Nkind = N_Procedure_Call_Statement
4122 or else NT (N).Nkind = N_Procedure_Instantiation
4123 or else NT (N).Nkind = N_Raise_Statement
4124 or else NT (N).Nkind = N_Requeue_Statement
4125 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
4126 or else NT (N).Nkind = N_Subunit
4127 or else NT (N).Nkind = N_Variant_Part
4128 or else NT (N).Nkind = N_With_Clause
4129 or else NT (N).Nkind = N_With_Type_Clause);
4130 Set_Node2_With_Parent (N, Val);
4134 (N : Node_Id; Val : List_Id) is
4136 pragma Assert (False
4137 or else NT (N).Nkind = N_Abort_Statement
4138 or else NT (N).Nkind = N_Use_Package_Clause);
4139 Set_List2_With_Parent (N, Val);
4142 procedure Set_Next_Entity
4143 (N : Node_Id; Val : Node_Id) is
4145 pragma Assert (False
4146 or else NT (N).Nkind = N_Defining_Character_Literal
4147 or else NT (N).Nkind = N_Defining_Identifier
4148 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4149 Set_Node2 (N, Val); -- semantic field, no parent set
4150 end Set_Next_Entity;
4152 procedure Set_Next_Named_Actual
4153 (N : Node_Id; Val : Node_Id) is
4155 pragma Assert (False
4156 or else NT (N).Nkind = N_Parameter_Association);
4157 Set_Node4 (N, Val); -- semantic field, no parent set
4158 end Set_Next_Named_Actual;
4160 procedure Set_Next_Rep_Item
4161 (N : Node_Id; Val : Node_Id) is
4163 pragma Assert (False
4164 or else NT (N).Nkind = N_Attribute_Definition_Clause
4165 or else NT (N).Nkind = N_Enumeration_Representation_Clause
4166 or else NT (N).Nkind = N_Pragma
4167 or else NT (N).Nkind = N_Record_Representation_Clause);
4168 Set_Node4 (N, Val); -- semantic field, no parent set
4169 end Set_Next_Rep_Item;
4171 procedure Set_Next_Use_Clause
4172 (N : Node_Id; Val : Node_Id) is
4174 pragma Assert (False
4175 or else NT (N).Nkind = N_Use_Package_Clause
4176 or else NT (N).Nkind = N_Use_Type_Clause);
4177 Set_Node3 (N, Val); -- semantic field, no parent set
4178 end Set_Next_Use_Clause;
4180 procedure Set_No_Ctrl_Actions
4181 (N : Node_Id; Val : Boolean := True) is
4183 pragma Assert (False
4184 or else NT (N).Nkind = N_Assignment_Statement);
4186 end Set_No_Ctrl_Actions;
4188 procedure Set_No_Entities_Ref_In_Spec
4189 (N : Node_Id; Val : Boolean := True) is
4191 pragma Assert (False
4192 or else NT (N).Nkind = N_With_Clause);
4194 end Set_No_Entities_Ref_In_Spec;
4196 procedure Set_No_Initialization
4197 (N : Node_Id; Val : Boolean := True) is
4199 pragma Assert (False
4200 or else NT (N).Nkind = N_Allocator
4201 or else NT (N).Nkind = N_Object_Declaration);
4202 Set_Flag13 (N, Val);
4203 end Set_No_Initialization;
4205 procedure Set_No_Truncation
4206 (N : Node_Id; Val : Boolean := True) is
4208 pragma Assert (False
4209 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4210 Set_Flag17 (N, Val);
4211 end Set_No_Truncation;
4213 procedure Set_Null_Present
4214 (N : Node_Id; Val : Boolean := True) is
4216 pragma Assert (False
4217 or else NT (N).Nkind = N_Component_List
4218 or else NT (N).Nkind = N_Record_Definition);
4219 Set_Flag13 (N, Val);
4220 end Set_Null_Present;
4222 procedure Set_Null_Record_Present
4223 (N : Node_Id; Val : Boolean := True) is
4225 pragma Assert (False
4226 or else NT (N).Nkind = N_Aggregate
4227 or else NT (N).Nkind = N_Extension_Aggregate);
4228 Set_Flag17 (N, Val);
4229 end Set_Null_Record_Present;
4231 procedure Set_Object_Definition
4232 (N : Node_Id; Val : Node_Id) is
4234 pragma Assert (False
4235 or else NT (N).Nkind = N_Object_Declaration);
4236 Set_Node4_With_Parent (N, Val);
4237 end Set_Object_Definition;
4239 procedure Set_OK_For_Stream
4240 (N : Node_Id; Val : Boolean := True) is
4242 pragma Assert (False
4243 or else NT (N).Nkind = N_Attribute_Reference);
4245 end Set_OK_For_Stream;
4247 procedure Set_Original_Discriminant
4248 (N : Node_Id; Val : Node_Id) is
4250 pragma Assert (False
4251 or else NT (N).Nkind = N_Identifier);
4252 Set_Node2 (N, Val); -- semantic field, no parent set
4253 end Set_Original_Discriminant;
4255 procedure Set_Original_Entity
4256 (N : Node_Id; Val : Entity_Id) is
4258 pragma Assert (False
4259 or else NT (N).Nkind = N_Integer_Literal
4260 or else NT (N).Nkind = N_Real_Literal);
4261 Set_Node2 (N, Val); -- semantic field, no parent set
4262 end Set_Original_Entity;
4264 procedure Set_Others_Discrete_Choices
4265 (N : Node_Id; Val : List_Id) is
4267 pragma Assert (False
4268 or else NT (N).Nkind = N_Others_Choice);
4269 Set_List1_With_Parent (N, Val);
4270 end Set_Others_Discrete_Choices;
4272 procedure Set_Out_Present
4273 (N : Node_Id; Val : Boolean := True) is
4275 pragma Assert (False
4276 or else NT (N).Nkind = N_Formal_Object_Declaration
4277 or else NT (N).Nkind = N_Parameter_Specification);
4278 Set_Flag17 (N, Val);
4279 end Set_Out_Present;
4281 procedure Set_Parameter_Associations
4282 (N : Node_Id; Val : List_Id) is
4284 pragma Assert (False
4285 or else NT (N).Nkind = N_Entry_Call_Statement
4286 or else NT (N).Nkind = N_Function_Call
4287 or else NT (N).Nkind = N_Procedure_Call_Statement);
4288 Set_List3_With_Parent (N, Val);
4289 end Set_Parameter_Associations;
4291 procedure Set_Parameter_List_Truncated
4292 (N : Node_Id; Val : Boolean := True) is
4294 pragma Assert (False
4295 or else NT (N).Nkind = N_Function_Call
4296 or else NT (N).Nkind = N_Procedure_Call_Statement);
4297 Set_Flag17 (N, Val);
4298 end Set_Parameter_List_Truncated;
4300 procedure Set_Parameter_Specifications
4301 (N : Node_Id; Val : List_Id) is
4303 pragma Assert (False
4304 or else NT (N).Nkind = N_Accept_Statement
4305 or else NT (N).Nkind = N_Access_Function_Definition
4306 or else NT (N).Nkind = N_Access_Procedure_Definition
4307 or else NT (N).Nkind = N_Entry_Body_Formal_Part
4308 or else NT (N).Nkind = N_Entry_Declaration
4309 or else NT (N).Nkind = N_Function_Specification
4310 or else NT (N).Nkind = N_Procedure_Specification);
4311 Set_List3_With_Parent (N, Val);
4312 end Set_Parameter_Specifications;
4314 procedure Set_Parameter_Type
4315 (N : Node_Id; Val : Node_Id) is
4317 pragma Assert (False
4318 or else NT (N).Nkind = N_Parameter_Specification);
4319 Set_Node2_With_Parent (N, Val);
4320 end Set_Parameter_Type;
4322 procedure Set_Parent_Spec
4323 (N : Node_Id; Val : Node_Id) is
4325 pragma Assert (False
4326 or else NT (N).Nkind = N_Function_Instantiation
4327 or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4328 or else NT (N).Nkind = N_Generic_Package_Declaration
4329 or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4330 or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4331 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4332 or else NT (N).Nkind = N_Package_Declaration
4333 or else NT (N).Nkind = N_Package_Instantiation
4334 or else NT (N).Nkind = N_Package_Renaming_Declaration
4335 or else NT (N).Nkind = N_Procedure_Instantiation
4336 or else NT (N).Nkind = N_Subprogram_Declaration
4337 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4338 Set_Node4 (N, Val); -- semantic field, no parent set
4339 end Set_Parent_Spec;
4341 procedure Set_Position
4342 (N : Node_Id; Val : Node_Id) is
4344 pragma Assert (False
4345 or else NT (N).Nkind = N_Component_Clause);
4346 Set_Node2_With_Parent (N, Val);
4349 procedure Set_Pragma_Argument_Associations
4350 (N : Node_Id; Val : List_Id) is
4352 pragma Assert (False
4353 or else NT (N).Nkind = N_Pragma);
4354 Set_List2_With_Parent (N, Val);
4355 end Set_Pragma_Argument_Associations;
4357 procedure Set_Pragmas_After
4358 (N : Node_Id; Val : List_Id) is
4360 pragma Assert (False
4361 or else NT (N).Nkind = N_Compilation_Unit_Aux
4362 or else NT (N).Nkind = N_Terminate_Alternative);
4363 Set_List5_With_Parent (N, Val);
4364 end Set_Pragmas_After;
4366 procedure Set_Pragmas_Before
4367 (N : Node_Id; Val : List_Id) is
4369 pragma Assert (False
4370 or else NT (N).Nkind = N_Accept_Alternative
4371 or else NT (N).Nkind = N_Delay_Alternative
4372 or else NT (N).Nkind = N_Entry_Call_Alternative
4373 or else NT (N).Nkind = N_Mod_Clause
4374 or else NT (N).Nkind = N_Terminate_Alternative
4375 or else NT (N).Nkind = N_Triggering_Alternative);
4376 Set_List4_With_Parent (N, Val);
4377 end Set_Pragmas_Before;
4379 procedure Set_Prefix
4380 (N : Node_Id; Val : Node_Id) is
4382 pragma Assert (False
4383 or else NT (N).Nkind = N_Attribute_Reference
4384 or else NT (N).Nkind = N_Expanded_Name
4385 or else NT (N).Nkind = N_Explicit_Dereference
4386 or else NT (N).Nkind = N_Indexed_Component
4387 or else NT (N).Nkind = N_Reference
4388 or else NT (N).Nkind = N_Selected_Component
4389 or else NT (N).Nkind = N_Slice);
4390 Set_Node3_With_Parent (N, Val);
4393 procedure Set_Present_Expr
4394 (N : Node_Id; Val : Uint) is
4396 pragma Assert (False
4397 or else NT (N).Nkind = N_Variant);
4399 end Set_Present_Expr;
4401 procedure Set_Prev_Ids
4402 (N : Node_Id; Val : Boolean := True) is
4404 pragma Assert (False
4405 or else NT (N).Nkind = N_Component_Declaration
4406 or else NT (N).Nkind = N_Discriminant_Specification
4407 or else NT (N).Nkind = N_Exception_Declaration
4408 or else NT (N).Nkind = N_Formal_Object_Declaration
4409 or else NT (N).Nkind = N_Number_Declaration
4410 or else NT (N).Nkind = N_Object_Declaration
4411 or else NT (N).Nkind = N_Parameter_Specification);
4415 procedure Set_Print_In_Hex
4416 (N : Node_Id; Val : Boolean := True) is
4418 pragma Assert (False
4419 or else NT (N).Nkind = N_Integer_Literal);
4420 Set_Flag13 (N, Val);
4421 end Set_Print_In_Hex;
4423 procedure Set_Private_Declarations
4424 (N : Node_Id; Val : List_Id) is
4426 pragma Assert (False
4427 or else NT (N).Nkind = N_Package_Specification
4428 or else NT (N).Nkind = N_Protected_Definition
4429 or else NT (N).Nkind = N_Task_Definition);
4430 Set_List3_With_Parent (N, Val);
4431 end Set_Private_Declarations;
4433 procedure Set_Private_Present
4434 (N : Node_Id; Val : Boolean := True) is
4436 pragma Assert (False
4437 or else NT (N).Nkind = N_Compilation_Unit
4438 or else NT (N).Nkind = N_Formal_Derived_Type_Definition);
4439 Set_Flag15 (N, Val);
4440 end Set_Private_Present;
4442 procedure Set_Procedure_To_Call
4443 (N : Node_Id; Val : Node_Id) is
4445 pragma Assert (False
4446 or else NT (N).Nkind = N_Allocator
4447 or else NT (N).Nkind = N_Free_Statement
4448 or else NT (N).Nkind = N_Return_Statement);
4449 Set_Node4 (N, Val); -- semantic field, no parent set
4450 end Set_Procedure_To_Call;
4452 procedure Set_Proper_Body
4453 (N : Node_Id; Val : Node_Id) is
4455 pragma Assert (False
4456 or else NT (N).Nkind = N_Subunit);
4457 Set_Node1_With_Parent (N, Val);
4458 end Set_Proper_Body;
4460 procedure Set_Protected_Definition
4461 (N : Node_Id; Val : Node_Id) is
4463 pragma Assert (False
4464 or else NT (N).Nkind = N_Protected_Type_Declaration
4465 or else NT (N).Nkind = N_Single_Protected_Declaration);
4466 Set_Node3_With_Parent (N, Val);
4467 end Set_Protected_Definition;
4469 procedure Set_Protected_Present
4470 (N : Node_Id; Val : Boolean := True) is
4472 pragma Assert (False
4473 or else NT (N).Nkind = N_Access_Function_Definition
4474 or else NT (N).Nkind = N_Access_Procedure_Definition);
4475 Set_Flag15 (N, Val);
4476 end Set_Protected_Present;
4478 procedure Set_Raises_Constraint_Error
4479 (N : Node_Id; Val : Boolean := True) is
4481 pragma Assert (False
4482 or else NT (N).Nkind in N_Subexpr);
4484 end Set_Raises_Constraint_Error;
4486 procedure Set_Range_Constraint
4487 (N : Node_Id; Val : Node_Id) is
4489 pragma Assert (False
4490 or else NT (N).Nkind = N_Delta_Constraint
4491 or else NT (N).Nkind = N_Digits_Constraint);
4492 Set_Node4_With_Parent (N, Val);
4493 end Set_Range_Constraint;
4495 procedure Set_Range_Expression
4496 (N : Node_Id; Val : Node_Id) is
4498 pragma Assert (False
4499 or else NT (N).Nkind = N_Range_Constraint);
4500 Set_Node4_With_Parent (N, Val);
4501 end Set_Range_Expression;
4503 procedure Set_Real_Range_Specification
4504 (N : Node_Id; Val : Node_Id) is
4506 pragma Assert (False
4507 or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4508 or else NT (N).Nkind = N_Floating_Point_Definition
4509 or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4510 Set_Node4_With_Parent (N, Val);
4511 end Set_Real_Range_Specification;
4513 procedure Set_Realval
4514 (N : Node_Id; Val : Ureal) is
4516 pragma Assert (False
4517 or else NT (N).Nkind = N_Real_Literal);
4518 Set_Ureal3 (N, Val);
4521 procedure Set_Reason
4522 (N : Node_Id; Val : Uint) is
4524 pragma Assert (False
4525 or else NT (N).Nkind = N_Raise_Constraint_Error
4526 or else NT (N).Nkind = N_Raise_Program_Error
4527 or else NT (N).Nkind = N_Raise_Storage_Error);
4531 procedure Set_Record_Extension_Part
4532 (N : Node_Id; Val : Node_Id) is
4534 pragma Assert (False
4535 or else NT (N).Nkind = N_Derived_Type_Definition);
4536 Set_Node3_With_Parent (N, Val);
4537 end Set_Record_Extension_Part;
4539 procedure Set_Redundant_Use
4540 (N : Node_Id; Val : Boolean := True) is
4542 pragma Assert (False
4543 or else NT (N).Nkind = N_Attribute_Reference
4544 or else NT (N).Nkind = N_Expanded_Name
4545 or else NT (N).Nkind = N_Identifier);
4546 Set_Flag13 (N, Val);
4547 end Set_Redundant_Use;
4549 procedure Set_Return_Type
4550 (N : Node_Id; Val : Node_Id) is
4552 pragma Assert (False
4553 or else NT (N).Nkind = N_Return_Statement);
4554 Set_Node2 (N, Val); -- semantic field, no parent set
4555 end Set_Return_Type;
4557 procedure Set_Reverse_Present
4558 (N : Node_Id; Val : Boolean := True) is
4560 pragma Assert (False
4561 or else NT (N).Nkind = N_Loop_Parameter_Specification);
4562 Set_Flag15 (N, Val);
4563 end Set_Reverse_Present;
4565 procedure Set_Right_Opnd
4566 (N : Node_Id; Val : Node_Id) is
4568 pragma Assert (False
4569 or else NT (N).Nkind in N_Op
4570 or else NT (N).Nkind = N_And_Then
4571 or else NT (N).Nkind = N_In
4572 or else NT (N).Nkind = N_Not_In
4573 or else NT (N).Nkind = N_Or_Else);
4574 Set_Node3_With_Parent (N, Val);
4577 procedure Set_Rounded_Result
4578 (N : Node_Id; Val : Boolean := True) is
4580 pragma Assert (False
4581 or else NT (N).Nkind = N_Op_Divide
4582 or else NT (N).Nkind = N_Op_Multiply
4583 or else NT (N).Nkind = N_Type_Conversion);
4584 Set_Flag18 (N, Val);
4585 end Set_Rounded_Result;
4588 (N : Node_Id; Val : Node_Id) is
4590 pragma Assert (False
4591 or else NT (N).Nkind = N_Defining_Character_Literal
4592 or else NT (N).Nkind = N_Defining_Identifier
4593 or else NT (N).Nkind = N_Defining_Operator_Symbol);
4594 Set_Node3 (N, Val); -- semantic field, no parent set
4597 procedure Set_Select_Alternatives
4598 (N : Node_Id; Val : List_Id) is
4600 pragma Assert (False
4601 or else NT (N).Nkind = N_Selective_Accept);
4602 Set_List1_With_Parent (N, Val);
4603 end Set_Select_Alternatives;
4605 procedure Set_Selector_Name
4606 (N : Node_Id; Val : Node_Id) is
4608 pragma Assert (False
4609 or else NT (N).Nkind = N_Expanded_Name
4610 or else NT (N).Nkind = N_Generic_Association
4611 or else NT (N).Nkind = N_Parameter_Association
4612 or else NT (N).Nkind = N_Selected_Component);
4613 Set_Node2_With_Parent (N, Val);
4614 end Set_Selector_Name;
4616 procedure Set_Selector_Names
4617 (N : Node_Id; Val : List_Id) is
4619 pragma Assert (False
4620 or else NT (N).Nkind = N_Discriminant_Association);
4621 Set_List1_With_Parent (N, Val);
4622 end Set_Selector_Names;
4624 procedure Set_Shift_Count_OK
4625 (N : Node_Id; Val : Boolean := True) is
4627 pragma Assert (False
4628 or else NT (N).Nkind = N_Op_Rotate_Left
4629 or else NT (N).Nkind = N_Op_Rotate_Right
4630 or else NT (N).Nkind = N_Op_Shift_Left
4631 or else NT (N).Nkind = N_Op_Shift_Right
4632 or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
4634 end Set_Shift_Count_OK;
4636 procedure Set_Source_Type
4637 (N : Node_Id; Val : Entity_Id) is
4639 pragma Assert (False
4640 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4641 Set_Node1 (N, Val); -- semantic field, no parent set
4642 end Set_Source_Type;
4644 procedure Set_Specification
4645 (N : Node_Id; Val : Node_Id) is
4647 pragma Assert (False
4648 or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
4649 or else NT (N).Nkind = N_Formal_Subprogram_Declaration
4650 or else NT (N).Nkind = N_Generic_Package_Declaration
4651 or else NT (N).Nkind = N_Generic_Subprogram_Declaration
4652 or else NT (N).Nkind = N_Package_Declaration
4653 or else NT (N).Nkind = N_Subprogram_Body
4654 or else NT (N).Nkind = N_Subprogram_Body_Stub
4655 or else NT (N).Nkind = N_Subprogram_Declaration
4656 or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4657 Set_Node1_With_Parent (N, Val);
4658 end Set_Specification;
4660 procedure Set_Statements
4661 (N : Node_Id; Val : List_Id) is
4663 pragma Assert (False
4664 or else NT (N).Nkind = N_Abortable_Part
4665 or else NT (N).Nkind = N_Accept_Alternative
4666 or else NT (N).Nkind = N_Case_Statement_Alternative
4667 or else NT (N).Nkind = N_Delay_Alternative
4668 or else NT (N).Nkind = N_Entry_Call_Alternative
4669 or else NT (N).Nkind = N_Exception_Handler
4670 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4671 or else NT (N).Nkind = N_Loop_Statement
4672 or else NT (N).Nkind = N_Triggering_Alternative);
4673 Set_List3_With_Parent (N, Val);
4676 procedure Set_Static_Processing_OK
4677 (N : Node_Id; Val : Boolean) is
4679 pragma Assert (False
4680 or else NT (N).Nkind = N_Aggregate);
4682 end Set_Static_Processing_OK;
4684 procedure Set_Storage_Pool
4685 (N : Node_Id; Val : Node_Id) is
4687 pragma Assert (False
4688 or else NT (N).Nkind = N_Allocator
4689 or else NT (N).Nkind = N_Free_Statement
4690 or else NT (N).Nkind = N_Return_Statement);
4691 Set_Node1 (N, Val); -- semantic field, no parent set
4692 end Set_Storage_Pool;
4694 procedure Set_Strval
4695 (N : Node_Id; Val : String_Id) is
4697 pragma Assert (False
4698 or else NT (N).Nkind = N_Operator_Symbol
4699 or else NT (N).Nkind = N_String_Literal);
4703 procedure Set_Subtype_Indication
4704 (N : Node_Id; Val : Node_Id) is
4706 pragma Assert (False
4707 or else NT (N).Nkind = N_Access_To_Object_Definition
4708 or else NT (N).Nkind = N_Component_Declaration
4709 or else NT (N).Nkind = N_Constrained_Array_Definition
4710 or else NT (N).Nkind = N_Derived_Type_Definition
4711 or else NT (N).Nkind = N_Private_Extension_Declaration
4712 or else NT (N).Nkind = N_Subtype_Declaration
4713 or else NT (N).Nkind = N_Unconstrained_Array_Definition);
4714 Set_Node5_With_Parent (N, Val);
4715 end Set_Subtype_Indication;
4717 procedure Set_Subtype_Mark
4718 (N : Node_Id; Val : Node_Id) is
4720 pragma Assert (False
4721 or else NT (N).Nkind = N_Access_Definition
4722 or else NT (N).Nkind = N_Access_Function_Definition
4723 or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4724 or else NT (N).Nkind = N_Formal_Object_Declaration
4725 or else NT (N).Nkind = N_Function_Specification
4726 or else NT (N).Nkind = N_Object_Renaming_Declaration
4727 or else NT (N).Nkind = N_Qualified_Expression
4728 or else NT (N).Nkind = N_Subtype_Indication
4729 or else NT (N).Nkind = N_Type_Conversion
4730 or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4731 Set_Node4_With_Parent (N, Val);
4732 end Set_Subtype_Mark;
4734 procedure Set_Subtype_Marks
4735 (N : Node_Id; Val : List_Id) is
4737 pragma Assert (False
4738 or else NT (N).Nkind = N_Unconstrained_Array_Definition
4739 or else NT (N).Nkind = N_Use_Type_Clause);
4740 Set_List2_With_Parent (N, Val);
4741 end Set_Subtype_Marks;
4743 procedure Set_Tagged_Present
4744 (N : Node_Id; Val : Boolean := True) is
4746 pragma Assert (False
4747 or else NT (N).Nkind = N_Formal_Private_Type_Definition
4748 or else NT (N).Nkind = N_Private_Type_Declaration
4749 or else NT (N).Nkind = N_Record_Definition
4750 or else NT (N).Nkind = N_With_Type_Clause);
4751 Set_Flag15 (N, Val);
4752 end Set_Tagged_Present;
4754 procedure Set_Target_Type
4755 (N : Node_Id; Val : Entity_Id) is
4757 pragma Assert (False
4758 or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
4759 Set_Node2 (N, Val); -- semantic field, no parent set
4760 end Set_Target_Type;
4762 procedure Set_Task_Body_Procedure
4763 (N : Node_Id; Val : Entity_Id) is
4765 pragma Assert (False
4766 or else NT (N).Nkind = N_Task_Type_Declaration);
4767 Set_Node2 (N, Val); -- semantic field, no parent set
4768 end Set_Task_Body_Procedure;
4770 procedure Set_Task_Definition
4771 (N : Node_Id; Val : Node_Id) is
4773 pragma Assert (False
4774 or else NT (N).Nkind = N_Single_Task_Declaration
4775 or else NT (N).Nkind = N_Task_Type_Declaration);
4776 Set_Node3_With_Parent (N, Val);
4777 end Set_Task_Definition;
4779 procedure Set_Then_Actions
4780 (N : Node_Id; Val : List_Id) is
4782 pragma Assert (False
4783 or else NT (N).Nkind = N_Conditional_Expression);
4784 Set_List2 (N, Val); -- semantic field, no parent set
4785 end Set_Then_Actions;
4787 procedure Set_Then_Statements
4788 (N : Node_Id; Val : List_Id) is
4790 pragma Assert (False
4791 or else NT (N).Nkind = N_Elsif_Part
4792 or else NT (N).Nkind = N_If_Statement);
4793 Set_List2_With_Parent (N, Val);
4794 end Set_Then_Statements;
4796 procedure Set_Treat_Fixed_As_Integer
4797 (N : Node_Id; Val : Boolean := True) is
4799 pragma Assert (False
4800 or else NT (N).Nkind = N_Op_Divide
4801 or else NT (N).Nkind = N_Op_Mod
4802 or else NT (N).Nkind = N_Op_Multiply
4803 or else NT (N).Nkind = N_Op_Rem);
4804 Set_Flag14 (N, Val);
4805 end Set_Treat_Fixed_As_Integer;
4807 procedure Set_Triggering_Alternative
4808 (N : Node_Id; Val : Node_Id) is
4810 pragma Assert (False
4811 or else NT (N).Nkind = N_Asynchronous_Select);
4812 Set_Node1_With_Parent (N, Val);
4813 end Set_Triggering_Alternative;
4815 procedure Set_Triggering_Statement
4816 (N : Node_Id; Val : Node_Id) is
4818 pragma Assert (False
4819 or else NT (N).Nkind = N_Triggering_Alternative);
4820 Set_Node1_With_Parent (N, Val);
4821 end Set_Triggering_Statement;
4823 procedure Set_TSS_Elist
4824 (N : Node_Id; Val : Elist_Id) is
4826 pragma Assert (False
4827 or else NT (N).Nkind = N_Freeze_Entity);
4828 Set_Elist3 (N, Val); -- semantic field, no parent set
4831 procedure Set_Type_Definition
4832 (N : Node_Id; Val : Node_Id) is
4834 pragma Assert (False
4835 or else NT (N).Nkind = N_Full_Type_Declaration);
4836 Set_Node3_With_Parent (N, Val);
4837 end Set_Type_Definition;
4840 (N : Node_Id; Val : Node_Id) is
4842 pragma Assert (False
4843 or else NT (N).Nkind = N_Compilation_Unit);
4844 Set_Node2_With_Parent (N, Val);
4847 procedure Set_Unknown_Discriminants_Present
4848 (N : Node_Id; Val : Boolean := True) is
4850 pragma Assert (False
4851 or else NT (N).Nkind = N_Formal_Type_Declaration
4852 or else NT (N).Nkind = N_Incomplete_Type_Declaration
4853 or else NT (N).Nkind = N_Private_Extension_Declaration
4854 or else NT (N).Nkind = N_Private_Type_Declaration);
4855 Set_Flag13 (N, Val);
4856 end Set_Unknown_Discriminants_Present;
4858 procedure Set_Unreferenced_In_Spec
4859 (N : Node_Id; Val : Boolean := True) is
4861 pragma Assert (False
4862 or else NT (N).Nkind = N_With_Clause);
4864 end Set_Unreferenced_In_Spec;
4866 procedure Set_Variant_Part
4867 (N : Node_Id; Val : Node_Id) is
4869 pragma Assert (False
4870 or else NT (N).Nkind = N_Component_List);
4871 Set_Node4_With_Parent (N, Val);
4872 end Set_Variant_Part;
4874 procedure Set_Variants
4875 (N : Node_Id; Val : List_Id) is
4877 pragma Assert (False
4878 or else NT (N).Nkind = N_Variant_Part);
4879 Set_List1_With_Parent (N, Val);
4882 procedure Set_Visible_Declarations
4883 (N : Node_Id; Val : List_Id) is
4885 pragma Assert (False
4886 or else NT (N).Nkind = N_Package_Specification
4887 or else NT (N).Nkind = N_Protected_Definition
4888 or else NT (N).Nkind = N_Task_Definition);
4889 Set_List2_With_Parent (N, Val);
4890 end Set_Visible_Declarations;
4892 procedure Set_Was_Originally_Stub
4893 (N : Node_Id; Val : Boolean := True) is
4895 pragma Assert (False
4896 or else NT (N).Nkind = N_Package_Body
4897 or else NT (N).Nkind = N_Protected_Body
4898 or else NT (N).Nkind = N_Subprogram_Body
4899 or else NT (N).Nkind = N_Task_Body);
4900 Set_Flag13 (N, Val);
4901 end Set_Was_Originally_Stub;
4903 procedure Set_Zero_Cost_Handling
4904 (N : Node_Id; Val : Boolean := True) is
4906 pragma Assert (False
4907 or else NT (N).Nkind = N_Exception_Handler
4908 or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4910 end Set_Zero_Cost_Handling;
4912 -------------------------
4913 -- Iterator Procedures --
4914 -------------------------
4916 procedure Next_Entity (N : in out Node_Id) is
4918 N := Next_Entity (N);
4921 procedure Next_Named_Actual (N : in out Node_Id) is
4923 N := Next_Named_Actual (N);
4924 end Next_Named_Actual;
4926 procedure Next_Rep_Item (N : in out Node_Id) is
4928 N := Next_Rep_Item (N);
4931 procedure Next_Use_Clause (N : in out Node_Id) is
4933 N := Next_Use_Clause (N);
4934 end Next_Use_Clause;
4940 function End_Location (N : Node_Id) return Source_Ptr is
4941 L : constant Uint := End_Span (N);
4947 return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
4951 ----------------------
4952 -- Set_End_Location --
4953 ----------------------
4955 procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
4958 UI_From_Int (Int (S) - Int (Sloc (N))));
4959 end Set_End_Location;