File : sinfo.adb


   1 ------------------------------------------------------------------------------
   2 --                                                                          --
   3 --                         GNAT COMPILER COMPONENTS                         --
   4 --                                                                          --
   5 --                                S I N F O                                 --
   6 --                                                                          --
   7 --                                 B o d y                                  --
   8 --                                                                          --
   9 --          Copyright (C) 1992-2016, Free Software Foundation, Inc.         --
  10 --                                                                          --
  11 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
  12 -- terms of the  GNU General Public License as published  by the Free Soft- --
  13 -- ware  Foundation;  either version 3,  or (at your option) any later ver- --
  14 -- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
  15 -- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
  16 -- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
  17 --                                                                          --
  18 --                                                                          --
  19 --                                                                          --
  20 --                                                                          --
  21 --                                                                          --
  22 -- You should have received a copy of the GNU General Public License and    --
  23 -- a copy of the GCC Runtime Library Exception along with this program;     --
  24 -- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
  25 -- <http://www.gnu.org/licenses/>.                                          --
  26 --                                                                          --
  27 -- GNAT was originally developed  by the GNAT team at  New York University. --
  28 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
  29 --                                                                          --
  30 ------------------------------------------------------------------------------
  31 
  32 pragma Style_Checks (All_Checks);
  33 --  No subprogram ordering check, due to logical grouping
  34 
  35 with Atree; use Atree;
  36 
  37 package body Sinfo is
  38 
  39    use Atree.Unchecked_Access;
  40    --  This package is one of the few packages which is allowed to make direct
  41    --  references to tree nodes (since it is in the business of providing a
  42    --  higher level of tree access which other clients are expected to use and
  43    --  which implements checks).
  44 
  45    use Atree_Private_Part;
  46    --  The only reason that we ask for direct access to the private part of
  47    --  the tree package is so that we can directly reference the Nkind field
  48    --  of nodes table entries. We do this since it helps the efficiency of
  49    --  the Sinfo debugging checks considerably (note that when we are checking
  50    --  Nkind values, we don't need to check for a valid node reference, because
  51    --  we will check that anyway when we reference the field).
  52 
  53    NT : Nodes.Table_Ptr renames Nodes.Table;
  54    --  A short hand abbreviation, useful for the debugging checks
  55 
  56    ----------------------------
  57    -- Field Access Functions --
  58    ----------------------------
  59 
  60    --  Note: The use of Assert (False or else ...) is just a device to allow
  61    --  uniform format of the conditions following this. Note that csinfo
  62    --  expects this uniform format.
  63 
  64    function ABE_Is_Certain
  65       (N : Node_Id) return Boolean is
  66    begin
  67       pragma Assert (False
  68         or else NT (N).Nkind = N_Formal_Package_Declaration
  69         or else NT (N).Nkind = N_Function_Call
  70         or else NT (N).Nkind = N_Function_Instantiation
  71         or else NT (N).Nkind = N_Package_Instantiation
  72         or else NT (N).Nkind = N_Procedure_Call_Statement
  73         or else NT (N).Nkind = N_Procedure_Instantiation);
  74       return Flag18 (N);
  75    end ABE_Is_Certain;
  76 
  77    function Abort_Present
  78       (N : Node_Id) return Boolean is
  79    begin
  80       pragma Assert (False
  81         or else NT (N).Nkind = N_Requeue_Statement);
  82       return Flag15 (N);
  83    end Abort_Present;
  84 
  85    function Abortable_Part
  86       (N : Node_Id) return Node_Id is
  87    begin
  88       pragma Assert (False
  89         or else NT (N).Nkind = N_Asynchronous_Select);
  90       return Node2 (N);
  91    end Abortable_Part;
  92 
  93    function Abstract_Present
  94       (N : Node_Id) return Boolean is
  95    begin
  96       pragma Assert (False
  97         or else NT (N).Nkind = N_Derived_Type_Definition
  98         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
  99         or else NT (N).Nkind = N_Formal_Private_Type_Definition
 100         or else NT (N).Nkind = N_Private_Extension_Declaration
 101         or else NT (N).Nkind = N_Private_Type_Declaration
 102         or else NT (N).Nkind = N_Record_Definition);
 103       return Flag4 (N);
 104    end Abstract_Present;
 105 
 106    function Accept_Handler_Records
 107       (N : Node_Id) return List_Id is
 108    begin
 109       pragma Assert (False
 110         or else NT (N).Nkind = N_Accept_Alternative);
 111       return List5 (N);
 112    end Accept_Handler_Records;
 113 
 114    function Accept_Statement
 115       (N : Node_Id) return Node_Id is
 116    begin
 117       pragma Assert (False
 118         or else NT (N).Nkind = N_Accept_Alternative);
 119       return Node2 (N);
 120    end Accept_Statement;
 121 
 122    function Access_Definition
 123      (N : Node_Id) return Node_Id is
 124    begin
 125       pragma Assert (False
 126         or else NT (N).Nkind = N_Component_Definition
 127         or else NT (N).Nkind = N_Formal_Object_Declaration
 128         or else NT (N).Nkind = N_Object_Renaming_Declaration);
 129       return Node3 (N);
 130    end Access_Definition;
 131 
 132    function Access_To_Subprogram_Definition
 133      (N : Node_Id) return Node_Id is
 134    begin
 135       pragma Assert (False
 136         or else NT (N).Nkind = N_Access_Definition);
 137       return Node3 (N);
 138    end Access_To_Subprogram_Definition;
 139 
 140    function Access_Types_To_Process
 141       (N : Node_Id) return Elist_Id is
 142    begin
 143       pragma Assert (False
 144         or else NT (N).Nkind = N_Freeze_Entity);
 145       return Elist2 (N);
 146    end Access_Types_To_Process;
 147 
 148    function Actions
 149       (N : Node_Id) return List_Id is
 150    begin
 151       pragma Assert (False
 152         or else NT (N).Nkind = N_And_Then
 153         or else NT (N).Nkind = N_Case_Expression_Alternative
 154         or else NT (N).Nkind = N_Compilation_Unit_Aux
 155         or else NT (N).Nkind = N_Compound_Statement
 156         or else NT (N).Nkind = N_Expression_With_Actions
 157         or else NT (N).Nkind = N_Freeze_Entity
 158         or else NT (N).Nkind = N_Or_Else);
 159       return List1 (N);
 160    end Actions;
 161 
 162    function Activation_Chain_Entity
 163       (N : Node_Id) return Node_Id is
 164    begin
 165       pragma Assert (False
 166         or else NT (N).Nkind = N_Block_Statement
 167         or else NT (N).Nkind = N_Entry_Body
 168         or else NT (N).Nkind = N_Generic_Package_Declaration
 169         or else NT (N).Nkind = N_Package_Declaration
 170         or else NT (N).Nkind = N_Subprogram_Body
 171         or else NT (N).Nkind = N_Task_Body);
 172       return Node3 (N);
 173    end Activation_Chain_Entity;
 174 
 175    function Acts_As_Spec
 176       (N : Node_Id) return Boolean is
 177    begin
 178       pragma Assert (False
 179         or else NT (N).Nkind = N_Compilation_Unit
 180         or else NT (N).Nkind = N_Subprogram_Body);
 181       return Flag4 (N);
 182    end Acts_As_Spec;
 183 
 184    function Actual_Designated_Subtype
 185      (N : Node_Id) return Node_Id is
 186    begin
 187       pragma Assert (False
 188         or else NT (N).Nkind = N_Explicit_Dereference
 189         or else NT (N).Nkind = N_Free_Statement);
 190       return Node4 (N);
 191    end Actual_Designated_Subtype;
 192 
 193    function Address_Warning_Posted
 194       (N : Node_Id) return Boolean is
 195    begin
 196       pragma Assert (False
 197         or else NT (N).Nkind = N_Attribute_Definition_Clause);
 198       return Flag18 (N);
 199    end Address_Warning_Posted;
 200 
 201    function Aggregate_Bounds
 202       (N : Node_Id) return Node_Id is
 203    begin
 204       pragma Assert (False
 205         or else NT (N).Nkind = N_Aggregate);
 206       return Node3 (N);
 207    end Aggregate_Bounds;
 208 
 209    function Aliased_Present
 210       (N : Node_Id) return Boolean is
 211    begin
 212       pragma Assert (False
 213         or else NT (N).Nkind = N_Component_Definition
 214         or else NT (N).Nkind = N_Object_Declaration
 215         or else NT (N).Nkind = N_Parameter_Specification);
 216       return Flag4 (N);
 217    end Aliased_Present;
 218 
 219    function All_Others
 220       (N : Node_Id) return Boolean is
 221    begin
 222       pragma Assert (False
 223         or else NT (N).Nkind = N_Others_Choice);
 224       return Flag11 (N);
 225    end All_Others;
 226 
 227    function All_Present
 228       (N : Node_Id) return Boolean is
 229    begin
 230       pragma Assert (False
 231         or else NT (N).Nkind = N_Access_Definition
 232         or else NT (N).Nkind = N_Access_To_Object_Definition
 233         or else NT (N).Nkind = N_Quantified_Expression
 234         or else NT (N).Nkind = N_Use_Type_Clause);
 235       return Flag15 (N);
 236    end All_Present;
 237 
 238    function Alternatives
 239       (N : Node_Id) return List_Id is
 240    begin
 241       pragma Assert (False
 242         or else NT (N).Nkind = N_Case_Expression
 243         or else NT (N).Nkind = N_Case_Statement
 244         or else NT (N).Nkind = N_In
 245         or else NT (N).Nkind = N_Not_In);
 246       return List4 (N);
 247    end Alternatives;
 248 
 249    function Ancestor_Part
 250       (N : Node_Id) return Node_Id is
 251    begin
 252       pragma Assert (False
 253         or else NT (N).Nkind = N_Extension_Aggregate);
 254       return Node3 (N);
 255    end Ancestor_Part;
 256 
 257    function Atomic_Sync_Required
 258       (N : Node_Id) return Boolean is
 259    begin
 260       pragma Assert (False
 261         or else NT (N).Nkind = N_Expanded_Name
 262         or else NT (N).Nkind = N_Explicit_Dereference
 263         or else NT (N).Nkind = N_Identifier
 264         or else NT (N).Nkind = N_Indexed_Component
 265         or else NT (N).Nkind = N_Selected_Component);
 266       return Flag14 (N);
 267    end Atomic_Sync_Required;
 268 
 269    function Array_Aggregate
 270       (N : Node_Id) return Node_Id is
 271    begin
 272       pragma Assert (False
 273         or else NT (N).Nkind = N_Enumeration_Representation_Clause);
 274       return Node3 (N);
 275    end Array_Aggregate;
 276 
 277    function Aspect_Rep_Item
 278       (N : Node_Id) return Node_Id is
 279    begin
 280       pragma Assert (False
 281         or else NT (N).Nkind = N_Aspect_Specification);
 282       return Node2 (N);
 283    end Aspect_Rep_Item;
 284 
 285    function Assignment_OK
 286       (N : Node_Id) return Boolean is
 287    begin
 288       pragma Assert (False
 289         or else NT (N).Nkind = N_Object_Declaration
 290         or else NT (N).Nkind in N_Subexpr);
 291       return Flag15 (N);
 292    end Assignment_OK;
 293 
 294    function Associated_Node
 295       (N : Node_Id) return Node_Id is
 296    begin
 297       pragma Assert (False
 298         or else NT (N).Nkind in N_Has_Entity
 299         or else NT (N).Nkind = N_Aggregate
 300         or else NT (N).Nkind = N_Extension_Aggregate
 301         or else NT (N).Nkind = N_Selected_Component);
 302       return Node4 (N);
 303    end Associated_Node;
 304 
 305    function At_End_Proc
 306       (N : Node_Id) return Node_Id is
 307    begin
 308       pragma Assert (False
 309         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
 310       return Node1 (N);
 311    end At_End_Proc;
 312 
 313    function Attribute_Name
 314       (N : Node_Id) return Name_Id is
 315    begin
 316       pragma Assert (False
 317         or else NT (N).Nkind = N_Attribute_Reference);
 318       return Name2 (N);
 319    end Attribute_Name;
 320 
 321    function Aux_Decls_Node
 322       (N : Node_Id) return Node_Id is
 323    begin
 324       pragma Assert (False
 325         or else NT (N).Nkind = N_Compilation_Unit);
 326       return Node5 (N);
 327    end Aux_Decls_Node;
 328 
 329    function Backwards_OK
 330       (N : Node_Id) return Boolean is
 331    begin
 332       pragma Assert (False
 333         or else NT (N).Nkind = N_Assignment_Statement);
 334       return Flag6 (N);
 335    end Backwards_OK;
 336 
 337    function Bad_Is_Detected
 338       (N : Node_Id) return Boolean is
 339    begin
 340       pragma Assert (False
 341         or else NT (N).Nkind = N_Subprogram_Body);
 342       return Flag15 (N);
 343    end Bad_Is_Detected;
 344 
 345    function Body_Required
 346       (N : Node_Id) return Boolean is
 347    begin
 348       pragma Assert (False
 349         or else NT (N).Nkind = N_Compilation_Unit);
 350       return Flag13 (N);
 351    end Body_Required;
 352 
 353    function Body_To_Inline
 354       (N : Node_Id) return Node_Id is
 355    begin
 356       pragma Assert (False
 357         or else NT (N).Nkind = N_Subprogram_Declaration);
 358       return Node3 (N);
 359    end Body_To_Inline;
 360 
 361    function Box_Present
 362       (N : Node_Id) return Boolean is
 363    begin
 364       pragma Assert (False
 365         or else NT (N).Nkind = N_Component_Association
 366         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
 367         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
 368         or else NT (N).Nkind = N_Formal_Package_Declaration
 369         or else NT (N).Nkind = N_Generic_Association);
 370       return Flag15 (N);
 371    end Box_Present;
 372 
 373    function By_Ref
 374       (N : Node_Id) return Boolean is
 375    begin
 376       pragma Assert (False
 377         or else NT (N).Nkind = N_Extended_Return_Statement
 378         or else NT (N).Nkind = N_Simple_Return_Statement);
 379       return Flag5 (N);
 380    end By_Ref;
 381 
 382    function Char_Literal_Value
 383       (N : Node_Id) return Uint is
 384    begin
 385       pragma Assert (False
 386         or else NT (N).Nkind = N_Character_Literal);
 387       return Uint2 (N);
 388    end Char_Literal_Value;
 389 
 390    function Chars
 391       (N : Node_Id) return Name_Id is
 392    begin
 393       pragma Assert (False
 394         or else NT (N).Nkind in N_Has_Chars);
 395       return Name1 (N);
 396    end Chars;
 397 
 398    function Check_Address_Alignment
 399       (N : Node_Id) return Boolean is
 400    begin
 401       pragma Assert (False
 402           or else NT (N).Nkind = N_Attribute_Definition_Clause);
 403       return Flag11 (N);
 404    end Check_Address_Alignment;
 405 
 406    function Choice_Parameter
 407       (N : Node_Id) return Node_Id is
 408    begin
 409       pragma Assert (False
 410         or else NT (N).Nkind = N_Exception_Handler);
 411       return Node2 (N);
 412    end Choice_Parameter;
 413 
 414    function Choices
 415       (N : Node_Id) return List_Id is
 416    begin
 417       pragma Assert (False
 418         or else NT (N).Nkind = N_Component_Association);
 419       return List1 (N);
 420    end Choices;
 421 
 422    function Class_Present
 423       (N : Node_Id) return Boolean is
 424    begin
 425       pragma Assert (False
 426         or else NT (N).Nkind = N_Aspect_Specification
 427         or else NT (N).Nkind = N_Pragma);
 428       return Flag6 (N);
 429    end Class_Present;
 430 
 431    function Classifications
 432       (N : Node_Id) return Node_Id is
 433    begin
 434       pragma Assert (False
 435         or else NT (N).Nkind = N_Contract);
 436       return Node3 (N);
 437    end Classifications;
 438 
 439    function Cleanup_Actions
 440      (N : Node_Id) return List_Id is
 441    begin
 442       pragma Assert (False
 443         or else NT (N).Nkind = N_Block_Statement);
 444       return List5 (N);
 445    end Cleanup_Actions;
 446 
 447    function Comes_From_Extended_Return_Statement
 448      (N : Node_Id) return Boolean is
 449    begin
 450       pragma Assert (False
 451         or else NT (N).Nkind = N_Simple_Return_Statement);
 452       return Flag18 (N);
 453    end Comes_From_Extended_Return_Statement;
 454 
 455    function Compile_Time_Known_Aggregate
 456       (N : Node_Id) return Boolean is
 457    begin
 458       pragma Assert (False
 459         or else NT (N).Nkind = N_Aggregate);
 460       return Flag18 (N);
 461    end Compile_Time_Known_Aggregate;
 462 
 463    function Component_Associations
 464       (N : Node_Id) return List_Id is
 465    begin
 466       pragma Assert (False
 467         or else NT (N).Nkind = N_Aggregate
 468         or else NT (N).Nkind = N_Extension_Aggregate);
 469       return List2 (N);
 470    end Component_Associations;
 471 
 472    function Component_Clauses
 473       (N : Node_Id) return List_Id is
 474    begin
 475       pragma Assert (False
 476         or else NT (N).Nkind = N_Record_Representation_Clause);
 477       return List3 (N);
 478    end Component_Clauses;
 479 
 480    function Component_Definition
 481       (N : Node_Id) return Node_Id is
 482    begin
 483       pragma Assert (False
 484         or else NT (N).Nkind = N_Component_Declaration
 485         or else NT (N).Nkind = N_Constrained_Array_Definition
 486         or else NT (N).Nkind = N_Unconstrained_Array_Definition);
 487       return Node4 (N);
 488    end Component_Definition;
 489 
 490    function Component_Items
 491       (N : Node_Id) return List_Id is
 492    begin
 493       pragma Assert (False
 494         or else NT (N).Nkind = N_Component_List);
 495       return List3 (N);
 496    end Component_Items;
 497 
 498    function Component_List
 499       (N : Node_Id) return Node_Id is
 500    begin
 501       pragma Assert (False
 502         or else NT (N).Nkind = N_Record_Definition
 503         or else NT (N).Nkind = N_Variant);
 504       return Node1 (N);
 505    end Component_List;
 506 
 507    function Component_Name
 508       (N : Node_Id) return Node_Id is
 509    begin
 510       pragma Assert (False
 511         or else NT (N).Nkind = N_Component_Clause);
 512       return Node1 (N);
 513    end Component_Name;
 514 
 515    function Componentwise_Assignment
 516       (N : Node_Id) return Boolean is
 517    begin
 518       pragma Assert (False
 519         or else NT (N).Nkind = N_Assignment_Statement);
 520       return Flag14 (N);
 521    end Componentwise_Assignment;
 522 
 523    function Condition
 524       (N : Node_Id) return Node_Id is
 525    begin
 526       pragma Assert (False
 527         or else NT (N).Nkind = N_Accept_Alternative
 528         or else NT (N).Nkind = N_Delay_Alternative
 529         or else NT (N).Nkind = N_Elsif_Part
 530         or else NT (N).Nkind = N_Entry_Body_Formal_Part
 531         or else NT (N).Nkind = N_Exit_Statement
 532         or else NT (N).Nkind = N_If_Statement
 533         or else NT (N).Nkind = N_Iteration_Scheme
 534         or else NT (N).Nkind = N_Quantified_Expression
 535         or else NT (N).Nkind = N_Raise_Constraint_Error
 536         or else NT (N).Nkind = N_Raise_Program_Error
 537         or else NT (N).Nkind = N_Raise_Storage_Error
 538         or else NT (N).Nkind = N_Terminate_Alternative);
 539       return Node1 (N);
 540    end Condition;
 541 
 542    function Condition_Actions
 543       (N : Node_Id) return List_Id is
 544    begin
 545       pragma Assert (False
 546         or else NT (N).Nkind = N_Elsif_Part
 547         or else NT (N).Nkind = N_Iteration_Scheme);
 548       return List3 (N);
 549    end Condition_Actions;
 550 
 551    function Config_Pragmas
 552       (N : Node_Id) return List_Id is
 553    begin
 554       pragma Assert (False
 555         or else NT (N).Nkind = N_Compilation_Unit_Aux);
 556       return List4 (N);
 557    end Config_Pragmas;
 558 
 559    function Constant_Present
 560       (N : Node_Id) return Boolean is
 561    begin
 562       pragma Assert (False
 563         or else NT (N).Nkind = N_Access_Definition
 564         or else NT (N).Nkind = N_Access_To_Object_Definition
 565         or else NT (N).Nkind = N_Object_Declaration);
 566       return Flag17 (N);
 567    end Constant_Present;
 568 
 569    function Constraint
 570       (N : Node_Id) return Node_Id is
 571    begin
 572       pragma Assert (False
 573         or else NT (N).Nkind = N_Subtype_Indication);
 574       return Node3 (N);
 575    end Constraint;
 576 
 577    function Constraints
 578       (N : Node_Id) return List_Id is
 579    begin
 580       pragma Assert (False
 581         or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
 582       return List1 (N);
 583    end Constraints;
 584 
 585    function Context_Installed
 586       (N : Node_Id) return Boolean is
 587    begin
 588       pragma Assert (False
 589         or else NT (N).Nkind = N_With_Clause);
 590       return Flag13 (N);
 591    end Context_Installed;
 592 
 593    function Context_Items
 594       (N : Node_Id) return List_Id is
 595    begin
 596       pragma Assert (False
 597         or else NT (N).Nkind = N_Compilation_Unit);
 598       return List1 (N);
 599    end Context_Items;
 600 
 601    function Context_Pending
 602       (N : Node_Id) return Boolean is
 603    begin
 604       pragma Assert (False
 605         or else NT (N).Nkind = N_Compilation_Unit);
 606       return Flag16 (N);
 607    end Context_Pending;
 608 
 609    function Contract_Test_Cases
 610       (N : Node_Id) return Node_Id is
 611    begin
 612       pragma Assert (False
 613         or else NT (N).Nkind = N_Contract);
 614       return Node2 (N);
 615    end Contract_Test_Cases;
 616 
 617    function Controlling_Argument
 618       (N : Node_Id) return Node_Id is
 619    begin
 620       pragma Assert (False
 621         or else NT (N).Nkind = N_Function_Call
 622         or else NT (N).Nkind = N_Procedure_Call_Statement);
 623       return Node1 (N);
 624    end Controlling_Argument;
 625 
 626    function Conversion_OK
 627       (N : Node_Id) return Boolean is
 628    begin
 629       pragma Assert (False
 630         or else NT (N).Nkind = N_Type_Conversion);
 631       return Flag14 (N);
 632    end Conversion_OK;
 633 
 634    function Convert_To_Return_False
 635       (N : Node_Id) return Boolean is
 636    begin
 637       pragma Assert (False
 638         or else NT (N).Nkind = N_Raise_Expression);
 639       return Flag13 (N);
 640    end Convert_To_Return_False;
 641 
 642    function Corresponding_Aspect
 643       (N : Node_Id) return Node_Id is
 644    begin
 645       pragma Assert (False
 646         or else NT (N).Nkind = N_Pragma);
 647       return Node3 (N);
 648    end Corresponding_Aspect;
 649 
 650    function Corresponding_Body
 651       (N : Node_Id) return Node_Id is
 652    begin
 653       pragma Assert (False
 654         or else NT (N).Nkind = N_Entry_Declaration
 655         or else NT (N).Nkind = N_Generic_Package_Declaration
 656         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
 657         or else NT (N).Nkind = N_Package_Body_Stub
 658         or else NT (N).Nkind = N_Package_Declaration
 659         or else NT (N).Nkind = N_Protected_Body_Stub
 660         or else NT (N).Nkind = N_Protected_Type_Declaration
 661         or else NT (N).Nkind = N_Subprogram_Body_Stub
 662         or else NT (N).Nkind = N_Subprogram_Declaration
 663         or else NT (N).Nkind = N_Task_Body_Stub
 664         or else NT (N).Nkind = N_Task_Type_Declaration);
 665       return Node5 (N);
 666    end Corresponding_Body;
 667 
 668    function Corresponding_Formal_Spec
 669       (N : Node_Id) return Node_Id is
 670    begin
 671       pragma Assert (False
 672         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
 673       return Node3 (N);
 674    end Corresponding_Formal_Spec;
 675 
 676    function Corresponding_Generic_Association
 677       (N : Node_Id) return Node_Id is
 678    begin
 679       pragma Assert (False
 680         or else NT (N).Nkind = N_Object_Declaration
 681         or else NT (N).Nkind = N_Object_Renaming_Declaration);
 682       return Node5 (N);
 683    end Corresponding_Generic_Association;
 684 
 685    function Corresponding_Integer_Value
 686       (N : Node_Id) return Uint is
 687    begin
 688       pragma Assert (False
 689         or else NT (N).Nkind = N_Real_Literal);
 690       return Uint4 (N);
 691    end Corresponding_Integer_Value;
 692 
 693    function Corresponding_Spec
 694       (N : Node_Id) return Entity_Id is
 695    begin
 696       pragma Assert (False
 697         or else NT (N).Nkind = N_Expression_Function
 698         or else NT (N).Nkind = N_Package_Body
 699         or else NT (N).Nkind = N_Protected_Body
 700         or else NT (N).Nkind = N_Subprogram_Body
 701         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
 702         or else NT (N).Nkind = N_Task_Body
 703         or else NT (N).Nkind = N_With_Clause);
 704       return Node5 (N);
 705    end Corresponding_Spec;
 706 
 707    function Corresponding_Spec_Of_Stub
 708       (N : Node_Id) return Entity_Id is
 709    begin
 710       pragma Assert (False
 711         or else NT (N).Nkind = N_Package_Body_Stub
 712         or else NT (N).Nkind = N_Protected_Body_Stub
 713         or else NT (N).Nkind = N_Subprogram_Body_Stub
 714         or else NT (N).Nkind = N_Task_Body_Stub);
 715       return Node2 (N);
 716    end Corresponding_Spec_Of_Stub;
 717 
 718    function Corresponding_Stub
 719       (N : Node_Id) return Node_Id is
 720    begin
 721       pragma Assert (False
 722         or else NT (N).Nkind = N_Subunit);
 723       return Node3 (N);
 724    end Corresponding_Stub;
 725 
 726    function Dcheck_Function
 727       (N : Node_Id) return Entity_Id is
 728    begin
 729       pragma Assert (False
 730         or else NT (N).Nkind = N_Variant);
 731       return Node5 (N);
 732    end Dcheck_Function;
 733 
 734    function Declarations
 735       (N : Node_Id) return List_Id is
 736    begin
 737       pragma Assert (False
 738         or else NT (N).Nkind = N_Accept_Statement
 739         or else NT (N).Nkind = N_Block_Statement
 740         or else NT (N).Nkind = N_Compilation_Unit_Aux
 741         or else NT (N).Nkind = N_Entry_Body
 742         or else NT (N).Nkind = N_Package_Body
 743         or else NT (N).Nkind = N_Protected_Body
 744         or else NT (N).Nkind = N_Subprogram_Body
 745         or else NT (N).Nkind = N_Task_Body);
 746       return List2 (N);
 747    end Declarations;
 748 
 749    function Default_Expression
 750       (N : Node_Id) return Node_Id is
 751    begin
 752       pragma Assert (False
 753         or else NT (N).Nkind = N_Formal_Object_Declaration
 754         or else NT (N).Nkind = N_Parameter_Specification);
 755       return Node5 (N);
 756    end Default_Expression;
 757 
 758    function Default_Storage_Pool
 759       (N : Node_Id) return Node_Id is
 760    begin
 761       pragma Assert (False
 762         or else NT (N).Nkind = N_Compilation_Unit_Aux);
 763       return Node3 (N);
 764    end Default_Storage_Pool;
 765 
 766    function Default_Name
 767       (N : Node_Id) return Node_Id is
 768    begin
 769       pragma Assert (False
 770         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
 771         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
 772       return Node2 (N);
 773    end Default_Name;
 774 
 775    function Defining_Identifier
 776       (N : Node_Id) return Entity_Id is
 777    begin
 778       pragma Assert (False
 779         or else NT (N).Nkind = N_Component_Declaration
 780         or else NT (N).Nkind = N_Defining_Program_Unit_Name
 781         or else NT (N).Nkind = N_Discriminant_Specification
 782         or else NT (N).Nkind = N_Entry_Body
 783         or else NT (N).Nkind = N_Entry_Declaration
 784         or else NT (N).Nkind = N_Entry_Index_Specification
 785         or else NT (N).Nkind = N_Exception_Declaration
 786         or else NT (N).Nkind = N_Exception_Renaming_Declaration
 787         or else NT (N).Nkind = N_Formal_Object_Declaration
 788         or else NT (N).Nkind = N_Formal_Package_Declaration
 789         or else NT (N).Nkind = N_Formal_Type_Declaration
 790         or else NT (N).Nkind = N_Full_Type_Declaration
 791         or else NT (N).Nkind = N_Implicit_Label_Declaration
 792         or else NT (N).Nkind = N_Incomplete_Type_Declaration
 793         or else NT (N).Nkind = N_Iterator_Specification
 794         or else NT (N).Nkind = N_Loop_Parameter_Specification
 795         or else NT (N).Nkind = N_Number_Declaration
 796         or else NT (N).Nkind = N_Object_Declaration
 797         or else NT (N).Nkind = N_Object_Renaming_Declaration
 798         or else NT (N).Nkind = N_Package_Body_Stub
 799         or else NT (N).Nkind = N_Parameter_Specification
 800         or else NT (N).Nkind = N_Private_Extension_Declaration
 801         or else NT (N).Nkind = N_Private_Type_Declaration
 802         or else NT (N).Nkind = N_Protected_Body
 803         or else NT (N).Nkind = N_Protected_Body_Stub
 804         or else NT (N).Nkind = N_Protected_Type_Declaration
 805         or else NT (N).Nkind = N_Single_Protected_Declaration
 806         or else NT (N).Nkind = N_Single_Task_Declaration
 807         or else NT (N).Nkind = N_Subtype_Declaration
 808         or else NT (N).Nkind = N_Task_Body
 809         or else NT (N).Nkind = N_Task_Body_Stub
 810         or else NT (N).Nkind = N_Task_Type_Declaration);
 811       return Node1 (N);
 812    end Defining_Identifier;
 813 
 814    function Defining_Unit_Name
 815       (N : Node_Id) return Node_Id is
 816    begin
 817       pragma Assert (False
 818         or else NT (N).Nkind = N_Function_Instantiation
 819         or else NT (N).Nkind = N_Function_Specification
 820         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
 821         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
 822         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
 823         or else NT (N).Nkind = N_Package_Body
 824         or else NT (N).Nkind = N_Package_Instantiation
 825         or else NT (N).Nkind = N_Package_Renaming_Declaration
 826         or else NT (N).Nkind = N_Package_Specification
 827         or else NT (N).Nkind = N_Procedure_Instantiation
 828         or else NT (N).Nkind = N_Procedure_Specification);
 829       return Node1 (N);
 830    end Defining_Unit_Name;
 831 
 832    function Delay_Alternative
 833       (N : Node_Id) return Node_Id is
 834    begin
 835       pragma Assert (False
 836         or else NT (N).Nkind = N_Timed_Entry_Call);
 837       return Node4 (N);
 838    end Delay_Alternative;
 839 
 840    function Delay_Statement
 841       (N : Node_Id) return Node_Id is
 842    begin
 843       pragma Assert (False
 844         or else NT (N).Nkind = N_Delay_Alternative);
 845       return Node2 (N);
 846    end Delay_Statement;
 847 
 848    function Delta_Expression
 849       (N : Node_Id) return Node_Id is
 850    begin
 851       pragma Assert (False
 852         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
 853         or else NT (N).Nkind = N_Delta_Constraint
 854         or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
 855       return Node3 (N);
 856    end Delta_Expression;
 857 
 858    function Digits_Expression
 859       (N : Node_Id) return Node_Id is
 860    begin
 861       pragma Assert (False
 862         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
 863         or else NT (N).Nkind = N_Digits_Constraint
 864         or else NT (N).Nkind = N_Floating_Point_Definition);
 865       return Node2 (N);
 866    end Digits_Expression;
 867 
 868    function Discr_Check_Funcs_Built
 869       (N : Node_Id) return Boolean is
 870    begin
 871       pragma Assert (False
 872         or else NT (N).Nkind = N_Full_Type_Declaration);
 873       return Flag11 (N);
 874    end Discr_Check_Funcs_Built;
 875 
 876    function Discrete_Choices
 877       (N : Node_Id) return List_Id is
 878    begin
 879       pragma Assert (False
 880         or else NT (N).Nkind = N_Case_Expression_Alternative
 881         or else NT (N).Nkind = N_Case_Statement_Alternative
 882         or else NT (N).Nkind = N_Variant);
 883       return List4 (N);
 884    end Discrete_Choices;
 885 
 886    function Discrete_Range
 887       (N : Node_Id) return Node_Id is
 888    begin
 889       pragma Assert (False
 890         or else NT (N).Nkind = N_Slice);
 891       return Node4 (N);
 892    end Discrete_Range;
 893 
 894    function Discrete_Subtype_Definition
 895       (N : Node_Id) return Node_Id is
 896    begin
 897       pragma Assert (False
 898         or else NT (N).Nkind = N_Entry_Declaration
 899         or else NT (N).Nkind = N_Entry_Index_Specification
 900         or else NT (N).Nkind = N_Loop_Parameter_Specification);
 901       return Node4 (N);
 902    end Discrete_Subtype_Definition;
 903 
 904    function Discrete_Subtype_Definitions
 905       (N : Node_Id) return List_Id is
 906    begin
 907       pragma Assert (False
 908         or else NT (N).Nkind = N_Constrained_Array_Definition);
 909       return List2 (N);
 910    end Discrete_Subtype_Definitions;
 911 
 912    function Discriminant_Specifications
 913       (N : Node_Id) return List_Id is
 914    begin
 915       pragma Assert (False
 916         or else NT (N).Nkind = N_Formal_Type_Declaration
 917         or else NT (N).Nkind = N_Full_Type_Declaration
 918         or else NT (N).Nkind = N_Incomplete_Type_Declaration
 919         or else NT (N).Nkind = N_Private_Extension_Declaration
 920         or else NT (N).Nkind = N_Private_Type_Declaration
 921         or else NT (N).Nkind = N_Protected_Type_Declaration
 922         or else NT (N).Nkind = N_Task_Type_Declaration);
 923       return List4 (N);
 924    end Discriminant_Specifications;
 925 
 926    function Discriminant_Type
 927       (N : Node_Id) return Node_Id is
 928    begin
 929       pragma Assert (False
 930         or else NT (N).Nkind = N_Discriminant_Specification);
 931       return Node5 (N);
 932    end Discriminant_Type;
 933 
 934    function Do_Accessibility_Check
 935       (N : Node_Id) return Boolean is
 936    begin
 937       pragma Assert (False
 938         or else NT (N).Nkind = N_Parameter_Specification);
 939       return Flag13 (N);
 940    end Do_Accessibility_Check;
 941 
 942    function Do_Discriminant_Check
 943       (N : Node_Id) return Boolean is
 944    begin
 945       pragma Assert (False
 946         or else NT (N).Nkind = N_Assignment_Statement
 947         or else NT (N).Nkind = N_Selected_Component
 948         or else NT (N).Nkind = N_Type_Conversion);
 949       return Flag1 (N);
 950    end Do_Discriminant_Check;
 951 
 952    function Do_Division_Check
 953       (N : Node_Id) return Boolean is
 954    begin
 955       pragma Assert (False
 956         or else NT (N).Nkind = N_Op_Divide
 957         or else NT (N).Nkind = N_Op_Mod
 958         or else NT (N).Nkind = N_Op_Rem);
 959       return Flag13 (N);
 960    end Do_Division_Check;
 961 
 962    function Do_Length_Check
 963       (N : Node_Id) return Boolean is
 964    begin
 965       pragma Assert (False
 966         or else NT (N).Nkind = N_Assignment_Statement
 967         or else NT (N).Nkind = N_Op_And
 968         or else NT (N).Nkind = N_Op_Or
 969         or else NT (N).Nkind = N_Op_Xor
 970         or else NT (N).Nkind = N_Type_Conversion);
 971       return Flag4 (N);
 972    end Do_Length_Check;
 973 
 974    function Do_Overflow_Check
 975       (N : Node_Id) return Boolean is
 976    begin
 977       pragma Assert (False
 978         or else NT (N).Nkind in N_Op
 979         or else NT (N).Nkind = N_Attribute_Reference
 980         or else NT (N).Nkind = N_Case_Expression
 981         or else NT (N).Nkind = N_If_Expression
 982         or else NT (N).Nkind = N_Type_Conversion);
 983       return Flag17 (N);
 984    end Do_Overflow_Check;
 985 
 986    function Do_Range_Check
 987       (N : Node_Id) return Boolean is
 988    begin
 989       pragma Assert (False
 990         or else NT (N).Nkind in N_Subexpr);
 991       return Flag9 (N);
 992    end Do_Range_Check;
 993 
 994    function Do_Storage_Check
 995       (N : Node_Id) return Boolean is
 996    begin
 997       pragma Assert (False
 998         or else NT (N).Nkind = N_Allocator
 999         or else NT (N).Nkind = N_Subprogram_Body);
1000       return Flag17 (N);
1001    end Do_Storage_Check;
1002 
1003    function Do_Tag_Check
1004       (N : Node_Id) return Boolean is
1005    begin
1006       pragma Assert (False
1007         or else NT (N).Nkind = N_Assignment_Statement
1008         or else NT (N).Nkind = N_Extended_Return_Statement
1009         or else NT (N).Nkind = N_Function_Call
1010         or else NT (N).Nkind = N_Procedure_Call_Statement
1011         or else NT (N).Nkind = N_Simple_Return_Statement
1012         or else NT (N).Nkind = N_Type_Conversion);
1013       return Flag13 (N);
1014    end Do_Tag_Check;
1015 
1016    function Elaborate_All_Desirable
1017       (N : Node_Id) return Boolean is
1018    begin
1019       pragma Assert (False
1020         or else NT (N).Nkind = N_With_Clause);
1021       return Flag9 (N);
1022    end Elaborate_All_Desirable;
1023 
1024    function Elaborate_All_Present
1025       (N : Node_Id) return Boolean is
1026    begin
1027       pragma Assert (False
1028         or else NT (N).Nkind = N_With_Clause);
1029       return Flag14 (N);
1030    end Elaborate_All_Present;
1031 
1032    function Elaborate_Desirable
1033       (N : Node_Id) return Boolean is
1034    begin
1035       pragma Assert (False
1036         or else NT (N).Nkind = N_With_Clause);
1037       return Flag11 (N);
1038    end Elaborate_Desirable;
1039 
1040    function Elaborate_Present
1041       (N : Node_Id) return Boolean is
1042    begin
1043       pragma Assert (False
1044         or else NT (N).Nkind = N_With_Clause);
1045       return Flag4 (N);
1046    end Elaborate_Present;
1047 
1048    function Else_Actions
1049       (N : Node_Id) return List_Id is
1050    begin
1051       pragma Assert (False
1052         or else NT (N).Nkind = N_If_Expression);
1053       return List3 (N);
1054    end Else_Actions;
1055 
1056    function Else_Statements
1057       (N : Node_Id) return List_Id is
1058    begin
1059       pragma Assert (False
1060         or else NT (N).Nkind = N_Conditional_Entry_Call
1061         or else NT (N).Nkind = N_If_Statement
1062         or else NT (N).Nkind = N_Selective_Accept);
1063       return List4 (N);
1064    end Else_Statements;
1065 
1066    function Elsif_Parts
1067       (N : Node_Id) return List_Id is
1068    begin
1069       pragma Assert (False
1070         or else NT (N).Nkind = N_If_Statement);
1071       return List3 (N);
1072    end Elsif_Parts;
1073 
1074    function Enclosing_Variant
1075       (N : Node_Id) return Node_Id is
1076    begin
1077       pragma Assert (False
1078         or else NT (N).Nkind = N_Variant);
1079       return Node2 (N);
1080    end Enclosing_Variant;
1081 
1082    function End_Label
1083       (N : Node_Id) return Node_Id is
1084    begin
1085       pragma Assert (False
1086         or else NT (N).Nkind = N_Enumeration_Type_Definition
1087         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
1088         or else NT (N).Nkind = N_Loop_Statement
1089         or else NT (N).Nkind = N_Package_Specification
1090         or else NT (N).Nkind = N_Protected_Body
1091         or else NT (N).Nkind = N_Protected_Definition
1092         or else NT (N).Nkind = N_Record_Definition
1093         or else NT (N).Nkind = N_Task_Definition);
1094       return Node4 (N);
1095    end End_Label;
1096 
1097    function End_Span
1098       (N : Node_Id) return Uint is
1099    begin
1100       pragma Assert (False
1101         or else NT (N).Nkind = N_Case_Statement
1102         or else NT (N).Nkind = N_If_Statement);
1103       return Uint5 (N);
1104    end End_Span;
1105 
1106    function Entity
1107       (N : Node_Id) return Node_Id is
1108    begin
1109       pragma Assert (False
1110         or else NT (N).Nkind in N_Has_Entity
1111         or else NT (N).Nkind = N_Aspect_Specification
1112         or else NT (N).Nkind = N_Attribute_Definition_Clause
1113         or else NT (N).Nkind = N_Freeze_Entity
1114         or else NT (N).Nkind = N_Freeze_Generic_Entity);
1115       return Node4 (N);
1116    end Entity;
1117 
1118    function Entity_Or_Associated_Node
1119       (N : Node_Id) return Node_Id is
1120    begin
1121       pragma Assert (False
1122         or else NT (N).Nkind in N_Has_Entity
1123         or else NT (N).Nkind = N_Freeze_Entity);
1124       return Node4 (N);
1125    end Entity_Or_Associated_Node;
1126 
1127    function Entry_Body_Formal_Part
1128       (N : Node_Id) return Node_Id is
1129    begin
1130       pragma Assert (False
1131         or else NT (N).Nkind = N_Entry_Body);
1132       return Node5 (N);
1133    end Entry_Body_Formal_Part;
1134 
1135    function Entry_Call_Alternative
1136       (N : Node_Id) return Node_Id is
1137    begin
1138       pragma Assert (False
1139         or else NT (N).Nkind = N_Conditional_Entry_Call
1140         or else NT (N).Nkind = N_Timed_Entry_Call);
1141       return Node1 (N);
1142    end Entry_Call_Alternative;
1143 
1144    function Entry_Call_Statement
1145       (N : Node_Id) return Node_Id is
1146    begin
1147       pragma Assert (False
1148         or else NT (N).Nkind = N_Entry_Call_Alternative);
1149       return Node1 (N);
1150    end Entry_Call_Statement;
1151 
1152    function Entry_Direct_Name
1153       (N : Node_Id) return Node_Id is
1154    begin
1155       pragma Assert (False
1156         or else NT (N).Nkind = N_Accept_Statement);
1157       return Node1 (N);
1158    end Entry_Direct_Name;
1159 
1160    function Entry_Index
1161       (N : Node_Id) return Node_Id is
1162    begin
1163       pragma Assert (False
1164         or else NT (N).Nkind = N_Accept_Statement);
1165       return Node5 (N);
1166    end Entry_Index;
1167 
1168    function Entry_Index_Specification
1169       (N : Node_Id) return Node_Id is
1170    begin
1171       pragma Assert (False
1172         or else NT (N).Nkind = N_Entry_Body_Formal_Part);
1173       return Node4 (N);
1174    end Entry_Index_Specification;
1175 
1176    function Etype
1177       (N : Node_Id) return Node_Id is
1178    begin
1179       pragma Assert (False
1180         or else NT (N).Nkind in N_Has_Etype);
1181       return Node5 (N);
1182    end Etype;
1183 
1184    function Exception_Choices
1185       (N : Node_Id) return List_Id is
1186    begin
1187       pragma Assert (False
1188         or else NT (N).Nkind = N_Exception_Handler);
1189       return List4 (N);
1190    end Exception_Choices;
1191 
1192    function Exception_Handlers
1193       (N : Node_Id) return List_Id is
1194    begin
1195       pragma Assert (False
1196         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1197       return List5 (N);
1198    end Exception_Handlers;
1199 
1200    function Exception_Junk
1201      (N : Node_Id) return Boolean is
1202    begin
1203       pragma Assert (False
1204         or else NT (N).Nkind = N_Block_Statement
1205         or else NT (N).Nkind = N_Goto_Statement
1206         or else NT (N).Nkind = N_Label
1207         or else NT (N).Nkind = N_Object_Declaration
1208         or else NT (N).Nkind = N_Subtype_Declaration);
1209       return Flag8 (N);
1210    end Exception_Junk;
1211 
1212    function Exception_Label
1213      (N : Node_Id) return Node_Id is
1214    begin
1215       pragma Assert (False
1216         or else NT (N).Nkind = N_Exception_Handler
1217         or else NT (N).Nkind = N_Push_Constraint_Error_Label
1218         or else NT (N).Nkind = N_Push_Program_Error_Label
1219         or else NT (N).Nkind = N_Push_Storage_Error_Label);
1220       return Node5 (N);
1221    end Exception_Label;
1222 
1223    function Expansion_Delayed
1224      (N : Node_Id) return Boolean is
1225    begin
1226       pragma Assert (False
1227         or else NT (N).Nkind = N_Aggregate
1228         or else NT (N).Nkind = N_Extension_Aggregate);
1229       return Flag11 (N);
1230    end Expansion_Delayed;
1231 
1232    function Explicit_Actual_Parameter
1233       (N : Node_Id) return Node_Id is
1234    begin
1235       pragma Assert (False
1236         or else NT (N).Nkind = N_Parameter_Association);
1237       return Node3 (N);
1238    end Explicit_Actual_Parameter;
1239 
1240    function Explicit_Generic_Actual_Parameter
1241       (N : Node_Id) return Node_Id is
1242    begin
1243       pragma Assert (False
1244         or else NT (N).Nkind = N_Generic_Association);
1245       return Node1 (N);
1246    end Explicit_Generic_Actual_Parameter;
1247 
1248    function Expression
1249       (N : Node_Id) return Node_Id is
1250    begin
1251       pragma Assert (False
1252         or else NT (N).Nkind = N_Allocator
1253         or else NT (N).Nkind = N_Aspect_Specification
1254         or else NT (N).Nkind = N_Assignment_Statement
1255         or else NT (N).Nkind = N_At_Clause
1256         or else NT (N).Nkind = N_Attribute_Definition_Clause
1257         or else NT (N).Nkind = N_Case_Expression
1258         or else NT (N).Nkind = N_Case_Expression_Alternative
1259         or else NT (N).Nkind = N_Case_Statement
1260         or else NT (N).Nkind = N_Code_Statement
1261         or else NT (N).Nkind = N_Component_Association
1262         or else NT (N).Nkind = N_Component_Declaration
1263         or else NT (N).Nkind = N_Delay_Relative_Statement
1264         or else NT (N).Nkind = N_Delay_Until_Statement
1265         or else NT (N).Nkind = N_Discriminant_Association
1266         or else NT (N).Nkind = N_Discriminant_Specification
1267         or else NT (N).Nkind = N_Exception_Declaration
1268         or else NT (N).Nkind = N_Expression_Function
1269         or else NT (N).Nkind = N_Expression_With_Actions
1270         or else NT (N).Nkind = N_Free_Statement
1271         or else NT (N).Nkind = N_Mod_Clause
1272         or else NT (N).Nkind = N_Modular_Type_Definition
1273         or else NT (N).Nkind = N_Number_Declaration
1274         or else NT (N).Nkind = N_Object_Declaration
1275         or else NT (N).Nkind = N_Parameter_Specification
1276         or else NT (N).Nkind = N_Pragma_Argument_Association
1277         or else NT (N).Nkind = N_Qualified_Expression
1278         or else NT (N).Nkind = N_Raise_Expression
1279         or else NT (N).Nkind = N_Raise_Statement
1280         or else NT (N).Nkind = N_Simple_Return_Statement
1281         or else NT (N).Nkind = N_Type_Conversion
1282         or else NT (N).Nkind = N_Unchecked_Expression
1283         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
1284       return Node3 (N);
1285    end Expression;
1286 
1287    function Expressions
1288       (N : Node_Id) return List_Id is
1289    begin
1290       pragma Assert (False
1291         or else NT (N).Nkind = N_Aggregate
1292         or else NT (N).Nkind = N_Attribute_Reference
1293         or else NT (N).Nkind = N_Extension_Aggregate
1294         or else NT (N).Nkind = N_If_Expression
1295         or else NT (N).Nkind = N_Indexed_Component);
1296       return List1 (N);
1297    end Expressions;
1298 
1299    function First_Bit
1300       (N : Node_Id) return Node_Id is
1301    begin
1302       pragma Assert (False
1303         or else NT (N).Nkind = N_Component_Clause);
1304       return Node3 (N);
1305    end First_Bit;
1306 
1307    function First_Inlined_Subprogram
1308       (N : Node_Id) return Entity_Id is
1309    begin
1310       pragma Assert (False
1311         or else NT (N).Nkind = N_Compilation_Unit);
1312       return Node3 (N);
1313    end First_Inlined_Subprogram;
1314 
1315    function First_Name
1316       (N : Node_Id) return Boolean is
1317    begin
1318       pragma Assert (False
1319         or else NT (N).Nkind = N_With_Clause);
1320       return Flag5 (N);
1321    end First_Name;
1322 
1323    function First_Named_Actual
1324       (N : Node_Id) return Node_Id is
1325    begin
1326       pragma Assert (False
1327         or else NT (N).Nkind = N_Entry_Call_Statement
1328         or else NT (N).Nkind = N_Function_Call
1329         or else NT (N).Nkind = N_Procedure_Call_Statement);
1330       return Node4 (N);
1331    end First_Named_Actual;
1332 
1333    function First_Real_Statement
1334       (N : Node_Id) return Node_Id is
1335    begin
1336       pragma Assert (False
1337         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
1338       return Node2 (N);
1339    end First_Real_Statement;
1340 
1341    function First_Subtype_Link
1342       (N : Node_Id) return Entity_Id is
1343    begin
1344       pragma Assert (False
1345         or else NT (N).Nkind = N_Freeze_Entity);
1346       return Node5 (N);
1347    end First_Subtype_Link;
1348 
1349    function Float_Truncate
1350       (N : Node_Id) return Boolean is
1351    begin
1352       pragma Assert (False
1353         or else NT (N).Nkind = N_Type_Conversion);
1354       return Flag11 (N);
1355    end Float_Truncate;
1356 
1357    function Formal_Type_Definition
1358       (N : Node_Id) return Node_Id is
1359    begin
1360       pragma Assert (False
1361         or else NT (N).Nkind = N_Formal_Type_Declaration);
1362       return Node3 (N);
1363    end Formal_Type_Definition;
1364 
1365    function Forwards_OK
1366       (N : Node_Id) return Boolean is
1367    begin
1368       pragma Assert (False
1369         or else NT (N).Nkind = N_Assignment_Statement);
1370       return Flag5 (N);
1371    end Forwards_OK;
1372 
1373    function From_Aspect_Specification
1374       (N : Node_Id) return Boolean is
1375    begin
1376       pragma Assert (False
1377         or else NT (N).Nkind = N_Attribute_Definition_Clause
1378         or else NT (N).Nkind = N_Pragma);
1379       return Flag13 (N);
1380    end From_Aspect_Specification;
1381 
1382    function From_At_End
1383       (N : Node_Id) return Boolean is
1384    begin
1385       pragma Assert (False
1386         or else NT (N).Nkind = N_Raise_Statement);
1387       return Flag4 (N);
1388    end From_At_End;
1389 
1390    function From_At_Mod
1391       (N : Node_Id) return Boolean is
1392    begin
1393       pragma Assert (False
1394         or else NT (N).Nkind = N_Attribute_Definition_Clause);
1395       return Flag4 (N);
1396    end From_At_Mod;
1397 
1398    function From_Conditional_Expression
1399       (N : Node_Id) return Boolean is
1400    begin
1401       pragma Assert (False
1402         or else NT (N).Nkind = N_Case_Statement
1403         or else NT (N).Nkind = N_If_Statement);
1404       return Flag1 (N);
1405    end From_Conditional_Expression;
1406 
1407    function From_Default
1408       (N : Node_Id) return Boolean is
1409    begin
1410       pragma Assert (False
1411         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
1412       return Flag6 (N);
1413    end From_Default;
1414 
1415    function Generalized_Indexing
1416       (N : Node_Id) return Node_Id is
1417    begin
1418       pragma Assert (False
1419         or else NT (N).Nkind = N_Indexed_Component);
1420       return Node4 (N);
1421    end Generalized_Indexing;
1422 
1423    function Generic_Associations
1424       (N : Node_Id) return List_Id is
1425    begin
1426       pragma Assert (False
1427         or else NT (N).Nkind = N_Formal_Package_Declaration
1428         or else NT (N).Nkind = N_Function_Instantiation
1429         or else NT (N).Nkind = N_Package_Instantiation
1430         or else NT (N).Nkind = N_Procedure_Instantiation);
1431       return List3 (N);
1432    end Generic_Associations;
1433 
1434    function Generic_Formal_Declarations
1435       (N : Node_Id) return List_Id is
1436    begin
1437       pragma Assert (False
1438         or else NT (N).Nkind = N_Generic_Package_Declaration
1439         or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
1440       return List2 (N);
1441    end Generic_Formal_Declarations;
1442 
1443    function Generic_Parent
1444       (N : Node_Id) return Node_Id is
1445    begin
1446       pragma Assert (False
1447         or else NT (N).Nkind = N_Function_Specification
1448         or else NT (N).Nkind = N_Package_Specification
1449         or else NT (N).Nkind = N_Procedure_Specification);
1450       return Node5 (N);
1451    end Generic_Parent;
1452 
1453    function Generic_Parent_Type
1454       (N : Node_Id) return Node_Id is
1455    begin
1456       pragma Assert (False
1457         or else NT (N).Nkind = N_Subtype_Declaration);
1458       return Node4 (N);
1459    end Generic_Parent_Type;
1460 
1461    function Handled_Statement_Sequence
1462       (N : Node_Id) return Node_Id is
1463    begin
1464       pragma Assert (False
1465         or else NT (N).Nkind = N_Accept_Statement
1466         or else NT (N).Nkind = N_Block_Statement
1467         or else NT (N).Nkind = N_Entry_Body
1468         or else NT (N).Nkind = N_Extended_Return_Statement
1469         or else NT (N).Nkind = N_Package_Body
1470         or else NT (N).Nkind = N_Subprogram_Body
1471         or else NT (N).Nkind = N_Task_Body);
1472       return Node4 (N);
1473    end Handled_Statement_Sequence;
1474 
1475    function Handler_List_Entry
1476       (N : Node_Id) return Node_Id is
1477    begin
1478       pragma Assert (False
1479         or else NT (N).Nkind = N_Object_Declaration);
1480       return Node2 (N);
1481    end Handler_List_Entry;
1482 
1483    function Has_Created_Identifier
1484       (N : Node_Id) return Boolean is
1485    begin
1486       pragma Assert (False
1487         or else NT (N).Nkind = N_Block_Statement
1488         or else NT (N).Nkind = N_Loop_Statement);
1489       return Flag15 (N);
1490    end Has_Created_Identifier;
1491 
1492    function Has_Dereference_Action
1493       (N : Node_Id) return Boolean is
1494    begin
1495       pragma Assert (False
1496         or else NT (N).Nkind = N_Explicit_Dereference);
1497       return Flag13 (N);
1498    end Has_Dereference_Action;
1499 
1500    function Has_Dynamic_Length_Check
1501       (N : Node_Id) return Boolean is
1502    begin
1503       pragma Assert (False
1504         or else NT (N).Nkind in N_Subexpr);
1505       return Flag10 (N);
1506    end Has_Dynamic_Length_Check;
1507 
1508    function Has_Dynamic_Range_Check
1509       (N : Node_Id) return Boolean is
1510    begin
1511       pragma Assert (False
1512         or else NT (N).Nkind =  N_Subtype_Declaration
1513         or else NT (N).Nkind in N_Subexpr);
1514       return Flag12 (N);
1515    end Has_Dynamic_Range_Check;
1516 
1517    function Has_Init_Expression
1518       (N : Node_Id) return Boolean is
1519    begin
1520       pragma Assert (False
1521         or else NT (N).Nkind = N_Object_Declaration);
1522       return Flag14 (N);
1523    end Has_Init_Expression;
1524 
1525    function Has_Local_Raise
1526       (N : Node_Id) return Boolean is
1527    begin
1528       pragma Assert (False
1529         or else NT (N).Nkind = N_Exception_Handler);
1530       return Flag8 (N);
1531    end Has_Local_Raise;
1532 
1533    function Has_No_Elaboration_Code
1534       (N : Node_Id) return Boolean is
1535    begin
1536       pragma Assert (False
1537         or else NT (N).Nkind = N_Compilation_Unit);
1538       return Flag17 (N);
1539    end Has_No_Elaboration_Code;
1540 
1541    function Has_Pragma_Suppress_All
1542       (N : Node_Id) return Boolean is
1543    begin
1544       pragma Assert (False
1545         or else NT (N).Nkind = N_Compilation_Unit);
1546       return Flag14 (N);
1547    end Has_Pragma_Suppress_All;
1548 
1549    function Has_Private_View
1550       (N : Node_Id) return Boolean is
1551    begin
1552       pragma Assert (False
1553        or else NT (N).Nkind in N_Op
1554        or else NT (N).Nkind = N_Character_Literal
1555        or else NT (N).Nkind = N_Expanded_Name
1556        or else NT (N).Nkind = N_Identifier
1557        or else NT (N).Nkind = N_Operator_Symbol);
1558       return Flag11 (N);
1559    end Has_Private_View;
1560 
1561    function Has_Relative_Deadline_Pragma
1562       (N : Node_Id) return Boolean is
1563    begin
1564       pragma Assert (False
1565         or else NT (N).Nkind = N_Subprogram_Body
1566         or else NT (N).Nkind = N_Task_Definition);
1567       return Flag9 (N);
1568    end Has_Relative_Deadline_Pragma;
1569 
1570    function Has_Self_Reference
1571       (N : Node_Id) return Boolean is
1572    begin
1573       pragma Assert (False
1574         or else NT (N).Nkind = N_Aggregate
1575         or else NT (N).Nkind = N_Extension_Aggregate);
1576       return Flag13 (N);
1577    end Has_Self_Reference;
1578 
1579    function Has_SP_Choice
1580       (N : Node_Id) return Boolean is
1581    begin
1582       pragma Assert (False
1583         or else NT (N).Nkind = N_Case_Expression_Alternative
1584         or else NT (N).Nkind = N_Case_Statement_Alternative
1585         or else NT (N).Nkind = N_Variant);
1586       return Flag15 (N);
1587    end Has_SP_Choice;
1588 
1589    function Has_Storage_Size_Pragma
1590       (N : Node_Id) return Boolean is
1591    begin
1592       pragma Assert (False
1593         or else NT (N).Nkind = N_Task_Definition);
1594       return Flag5 (N);
1595    end Has_Storage_Size_Pragma;
1596 
1597    function Has_Wide_Character
1598       (N : Node_Id) return Boolean is
1599    begin
1600       pragma Assert (False
1601         or else NT (N).Nkind = N_String_Literal);
1602       return Flag11 (N);
1603    end Has_Wide_Character;
1604 
1605    function Has_Wide_Wide_Character
1606       (N : Node_Id) return Boolean is
1607    begin
1608       pragma Assert (False
1609         or else NT (N).Nkind = N_String_Literal);
1610       return Flag13 (N);
1611    end Has_Wide_Wide_Character;
1612 
1613    function Header_Size_Added
1614       (N : Node_Id) return Boolean is
1615    begin
1616       pragma Assert (False
1617         or else NT (N).Nkind = N_Attribute_Reference);
1618       return Flag11 (N);
1619    end Header_Size_Added;
1620 
1621    function Hidden_By_Use_Clause
1622      (N : Node_Id) return Elist_Id is
1623    begin
1624       pragma Assert (False
1625         or else NT (N).Nkind = N_Use_Package_Clause
1626         or else NT (N).Nkind = N_Use_Type_Clause);
1627       return Elist4 (N);
1628    end Hidden_By_Use_Clause;
1629 
1630    function High_Bound
1631       (N : Node_Id) return Node_Id is
1632    begin
1633       pragma Assert (False
1634         or else NT (N).Nkind = N_Range
1635         or else NT (N).Nkind = N_Real_Range_Specification
1636         or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
1637       return Node2 (N);
1638    end High_Bound;
1639 
1640    function Identifier
1641       (N : Node_Id) return Node_Id is
1642    begin
1643       pragma Assert (False
1644         or else NT (N).Nkind = N_Aspect_Specification
1645         or else NT (N).Nkind = N_At_Clause
1646         or else NT (N).Nkind = N_Block_Statement
1647         or else NT (N).Nkind = N_Designator
1648         or else NT (N).Nkind = N_Enumeration_Representation_Clause
1649         or else NT (N).Nkind = N_Label
1650         or else NT (N).Nkind = N_Loop_Statement
1651         or else NT (N).Nkind = N_Record_Representation_Clause);
1652       return Node1 (N);
1653    end Identifier;
1654 
1655    function Implicit_With
1656       (N : Node_Id) return Boolean is
1657    begin
1658       pragma Assert (False
1659         or else NT (N).Nkind = N_With_Clause);
1660       return Flag16 (N);
1661    end Implicit_With;
1662 
1663    function Implicit_With_From_Instantiation
1664       (N : Node_Id) return Boolean is
1665    begin
1666       pragma Assert (False
1667         or else NT (N).Nkind = N_With_Clause);
1668       return Flag12 (N);
1669    end Implicit_With_From_Instantiation;
1670 
1671    function Interface_List
1672       (N : Node_Id) return List_Id is
1673    begin
1674       pragma Assert (False
1675         or else NT (N).Nkind = N_Derived_Type_Definition
1676         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
1677         or else NT (N).Nkind = N_Private_Extension_Declaration
1678         or else NT (N).Nkind = N_Protected_Type_Declaration
1679         or else NT (N).Nkind = N_Record_Definition
1680         or else NT (N).Nkind = N_Single_Protected_Declaration
1681         or else NT (N).Nkind = N_Single_Task_Declaration
1682         or else NT (N).Nkind = N_Task_Type_Declaration);
1683       return List2 (N);
1684    end Interface_List;
1685 
1686    function Interface_Present
1687       (N : Node_Id) return Boolean is
1688    begin
1689       pragma Assert (False
1690         or else NT (N).Nkind = N_Derived_Type_Definition
1691         or else NT (N).Nkind = N_Record_Definition);
1692       return Flag16 (N);
1693    end Interface_Present;
1694 
1695    function Import_Interface_Present
1696       (N : Node_Id) return Boolean is
1697    begin
1698       pragma Assert (False
1699         or else NT (N).Nkind = N_Pragma);
1700       return Flag16 (N);
1701    end Import_Interface_Present;
1702 
1703    function In_Present
1704       (N : Node_Id) return Boolean is
1705    begin
1706       pragma Assert (False
1707         or else NT (N).Nkind = N_Formal_Object_Declaration
1708         or else NT (N).Nkind = N_Parameter_Specification);
1709       return Flag15 (N);
1710    end In_Present;
1711 
1712    function Includes_Infinities
1713       (N : Node_Id) return Boolean is
1714    begin
1715       pragma Assert (False
1716         or else NT (N).Nkind = N_Range);
1717       return Flag11 (N);
1718    end Includes_Infinities;
1719 
1720    function Incomplete_View
1721      (N : Node_Id) return Node_Id is
1722    begin
1723       pragma Assert (False
1724         or else NT (N).Nkind = N_Full_Type_Declaration);
1725       return Node2 (N);
1726    end Incomplete_View;
1727 
1728    function Inherited_Discriminant
1729       (N : Node_Id) return Boolean is
1730    begin
1731       pragma Assert (False
1732         or else NT (N).Nkind = N_Component_Association);
1733       return Flag13 (N);
1734    end Inherited_Discriminant;
1735 
1736    function Instance_Spec
1737       (N : Node_Id) return Node_Id is
1738    begin
1739       pragma Assert (False
1740         or else NT (N).Nkind = N_Formal_Package_Declaration
1741         or else NT (N).Nkind = N_Function_Instantiation
1742         or else NT (N).Nkind = N_Package_Instantiation
1743         or else NT (N).Nkind = N_Procedure_Instantiation);
1744       return Node5 (N);
1745    end Instance_Spec;
1746 
1747    function Intval
1748       (N : Node_Id) return Uint is
1749    begin
1750       pragma Assert (False
1751         or else NT (N).Nkind = N_Integer_Literal);
1752       return Uint3 (N);
1753    end Intval;
1754 
1755    function Is_Accessibility_Actual
1756      (N : Node_Id) return Boolean is
1757    begin
1758       pragma Assert (False
1759         or else NT (N).Nkind = N_Parameter_Association);
1760       return Flag13 (N);
1761    end Is_Accessibility_Actual;
1762 
1763    function Is_Analyzed_Pragma
1764       (N : Node_Id) return Boolean is
1765    begin
1766       pragma Assert (False
1767         or else NT (N).Nkind = N_Pragma);
1768       return Flag5 (N);
1769    end Is_Analyzed_Pragma;
1770 
1771    function Is_Asynchronous_Call_Block
1772       (N : Node_Id) return Boolean is
1773    begin
1774       pragma Assert (False
1775         or else NT (N).Nkind = N_Block_Statement);
1776       return Flag7 (N);
1777    end Is_Asynchronous_Call_Block;
1778 
1779    function Is_Boolean_Aspect
1780       (N : Node_Id) return Boolean is
1781    begin
1782       pragma Assert (False
1783         or else NT (N).Nkind = N_Aspect_Specification);
1784       return Flag16 (N);
1785    end Is_Boolean_Aspect;
1786 
1787    function Is_Checked
1788       (N : Node_Id) return Boolean is
1789    begin
1790       pragma Assert (False
1791         or else NT (N).Nkind = N_Aspect_Specification
1792         or else NT (N).Nkind = N_Pragma);
1793       return Flag11 (N);
1794    end Is_Checked;
1795 
1796    function Is_Component_Left_Opnd
1797       (N : Node_Id) return Boolean is
1798    begin
1799       pragma Assert (False
1800         or else NT (N).Nkind = N_Op_Concat);
1801       return Flag13 (N);
1802    end Is_Component_Left_Opnd;
1803 
1804    function Is_Component_Right_Opnd
1805       (N : Node_Id) return Boolean is
1806    begin
1807       pragma Assert (False
1808         or else NT (N).Nkind = N_Op_Concat);
1809       return Flag14 (N);
1810    end Is_Component_Right_Opnd;
1811 
1812    function Is_Controlling_Actual
1813       (N : Node_Id) return Boolean is
1814    begin
1815       pragma Assert (False
1816         or else NT (N).Nkind in N_Subexpr);
1817       return Flag16 (N);
1818    end Is_Controlling_Actual;
1819 
1820    function Is_Disabled
1821       (N : Node_Id) return Boolean is
1822    begin
1823       pragma Assert (False
1824         or else NT (N).Nkind = N_Aspect_Specification
1825         or else NT (N).Nkind = N_Pragma);
1826       return Flag15 (N);
1827    end Is_Disabled;
1828 
1829    function Is_Delayed_Aspect
1830       (N : Node_Id) return Boolean is
1831    begin
1832       pragma Assert (False
1833         or else NT (N).Nkind = N_Aspect_Specification
1834         or else NT (N).Nkind = N_Attribute_Definition_Clause
1835         or else NT (N).Nkind = N_Pragma);
1836       return Flag14 (N);
1837    end Is_Delayed_Aspect;
1838 
1839    function Is_Dynamic_Coextension
1840       (N : Node_Id) return Boolean is
1841    begin
1842       pragma Assert (False
1843         or else NT (N).Nkind = N_Allocator);
1844       return Flag18 (N);
1845    end Is_Dynamic_Coextension;
1846 
1847    function Is_Elsif
1848      (N : Node_Id) return Boolean is
1849    begin
1850       pragma Assert (False
1851         or else NT (N).Nkind = N_If_Expression);
1852       return Flag13 (N);
1853    end Is_Elsif;
1854 
1855    function Is_Entry_Barrier_Function
1856       (N : Node_Id) return Boolean is
1857    begin
1858       pragma Assert (False
1859         or else NT (N).Nkind = N_Subprogram_Body
1860         or else NT (N).Nkind = N_Subprogram_Declaration);
1861       return Flag8 (N);
1862    end Is_Entry_Barrier_Function;
1863 
1864    function Is_Expanded_Build_In_Place_Call
1865       (N : Node_Id) return Boolean is
1866    begin
1867       pragma Assert (False
1868         or else NT (N).Nkind = N_Function_Call);
1869       return Flag11 (N);
1870    end Is_Expanded_Build_In_Place_Call;
1871 
1872    function Is_Expanded_Contract
1873       (N : Node_Id) return Boolean is
1874    begin
1875       pragma Assert (False
1876         or else NT (N).Nkind = N_Contract);
1877       return Flag1 (N);
1878    end Is_Expanded_Contract;
1879 
1880    function Is_Finalization_Wrapper
1881       (N : Node_Id) return Boolean is
1882    begin
1883       pragma Assert (False
1884         or else NT (N).Nkind = N_Block_Statement);
1885       return Flag9 (N);
1886    end Is_Finalization_Wrapper;
1887 
1888    function Is_Folded_In_Parser
1889       (N : Node_Id) return Boolean is
1890    begin
1891       pragma Assert (False
1892         or else NT (N).Nkind = N_String_Literal);
1893       return Flag4 (N);
1894    end Is_Folded_In_Parser;
1895 
1896    function Is_Generic_Contract_Pragma
1897       (N : Node_Id) return Boolean is
1898    begin
1899       pragma Assert (False
1900         or else NT (N).Nkind = N_Pragma);
1901       return Flag2 (N);
1902    end Is_Generic_Contract_Pragma;
1903 
1904    function Is_Ghost_Pragma
1905       (N : Node_Id) return Boolean is
1906    begin
1907       pragma Assert (False
1908         or else NT (N).Nkind = N_Pragma);
1909       return Flag3 (N);
1910    end Is_Ghost_Pragma;
1911 
1912    function Is_Ignored
1913       (N : Node_Id) return Boolean is
1914    begin
1915       pragma Assert (False
1916         or else NT (N).Nkind = N_Aspect_Specification
1917         or else NT (N).Nkind = N_Pragma);
1918       return Flag9 (N);
1919    end Is_Ignored;
1920 
1921    function Is_In_Discriminant_Check
1922       (N : Node_Id) return Boolean is
1923    begin
1924       pragma Assert (False
1925         or else NT (N).Nkind = N_Selected_Component);
1926       return Flag11 (N);
1927    end Is_In_Discriminant_Check;
1928 
1929    function Is_Inherited_Pragma
1930       (N : Node_Id) return Boolean is
1931    begin
1932       pragma Assert (False
1933         or else NT (N).Nkind = N_Pragma);
1934       return Flag4 (N);
1935    end Is_Inherited_Pragma;
1936 
1937    function Is_Machine_Number
1938       (N : Node_Id) return Boolean is
1939    begin
1940       pragma Assert (False
1941         or else NT (N).Nkind = N_Real_Literal);
1942       return Flag11 (N);
1943    end Is_Machine_Number;
1944 
1945    function Is_Null_Loop
1946       (N : Node_Id) return Boolean is
1947    begin
1948       pragma Assert (False
1949         or else NT (N).Nkind = N_Loop_Statement);
1950       return Flag16 (N);
1951    end Is_Null_Loop;
1952 
1953    function Is_Overloaded
1954       (N : Node_Id) return Boolean is
1955    begin
1956       pragma Assert (False
1957         or else NT (N).Nkind in N_Subexpr);
1958       return Flag5 (N);
1959    end Is_Overloaded;
1960 
1961    function Is_Power_Of_2_For_Shift
1962       (N : Node_Id) return Boolean is
1963    begin
1964       pragma Assert (False
1965         or else NT (N).Nkind = N_Op_Expon);
1966       return Flag13 (N);
1967    end Is_Power_Of_2_For_Shift;
1968 
1969    function Is_Prefixed_Call
1970       (N : Node_Id) return Boolean is
1971    begin
1972       pragma Assert (False
1973         or else NT (N).Nkind = N_Selected_Component);
1974       return Flag17 (N);
1975    end Is_Prefixed_Call;
1976 
1977    function Is_Protected_Subprogram_Body
1978       (N : Node_Id) return Boolean is
1979    begin
1980       pragma Assert (False
1981         or else NT (N).Nkind = N_Subprogram_Body);
1982       return Flag7 (N);
1983    end Is_Protected_Subprogram_Body;
1984 
1985    function Is_Qualified_Universal_Literal
1986       (N : Node_Id) return Boolean is
1987    begin
1988       pragma Assert (False
1989         or else NT (N).Nkind = N_Qualified_Expression);
1990       return Flag4 (N);
1991    end Is_Qualified_Universal_Literal;
1992 
1993    function Is_Static_Coextension
1994       (N : Node_Id) return Boolean is
1995    begin
1996       pragma Assert (False
1997         or else NT (N).Nkind = N_Allocator);
1998       return Flag14 (N);
1999    end Is_Static_Coextension;
2000 
2001    function Is_Static_Expression
2002       (N : Node_Id) return Boolean is
2003    begin
2004       pragma Assert (False
2005         or else NT (N).Nkind in N_Subexpr);
2006       return Flag6 (N);
2007    end Is_Static_Expression;
2008 
2009    function Is_Subprogram_Descriptor
2010       (N : Node_Id) return Boolean is
2011    begin
2012       pragma Assert (False
2013         or else NT (N).Nkind = N_Object_Declaration);
2014       return Flag16 (N);
2015    end Is_Subprogram_Descriptor;
2016 
2017    function Is_Task_Allocation_Block
2018       (N : Node_Id) return Boolean is
2019    begin
2020       pragma Assert (False
2021         or else NT (N).Nkind = N_Block_Statement);
2022       return Flag6 (N);
2023    end Is_Task_Allocation_Block;
2024 
2025    function Is_Task_Body_Procedure
2026       (N : Node_Id) return Boolean is
2027    begin
2028       pragma Assert (False
2029         or else NT (N).Nkind = N_Subprogram_Body
2030         or else NT (N).Nkind = N_Subprogram_Declaration);
2031       return Flag1 (N);
2032    end Is_Task_Body_Procedure;
2033 
2034    function Is_Task_Master
2035       (N : Node_Id) return Boolean is
2036    begin
2037       pragma Assert (False
2038         or else NT (N).Nkind = N_Block_Statement
2039         or else NT (N).Nkind = N_Subprogram_Body
2040         or else NT (N).Nkind = N_Task_Body);
2041       return Flag5 (N);
2042    end Is_Task_Master;
2043 
2044    function Iteration_Scheme
2045       (N : Node_Id) return Node_Id is
2046    begin
2047       pragma Assert (False
2048         or else NT (N).Nkind = N_Loop_Statement);
2049       return Node2 (N);
2050    end Iteration_Scheme;
2051 
2052    function Iterator_Specification
2053      (N : Node_Id) return Node_Id is
2054    begin
2055       pragma Assert (False
2056         or else NT (N).Nkind = N_Iteration_Scheme
2057         or else NT (N).Nkind = N_Quantified_Expression);
2058       return Node2 (N);
2059    end Iterator_Specification;
2060 
2061    function Itype
2062       (N : Node_Id) return Node_Id is
2063    begin
2064       pragma Assert (False
2065       or else NT (N).Nkind = N_Itype_Reference);
2066       return Node1 (N);
2067    end Itype;
2068 
2069    function Kill_Range_Check
2070       (N : Node_Id) return Boolean is
2071    begin
2072       pragma Assert (False
2073         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2074       return Flag11 (N);
2075    end Kill_Range_Check;
2076 
2077    function Label_Construct
2078       (N : Node_Id) return Node_Id is
2079    begin
2080       pragma Assert (False
2081         or else NT (N).Nkind = N_Implicit_Label_Declaration);
2082       return Node2 (N);
2083    end Label_Construct;
2084 
2085    function Last_Bit
2086       (N : Node_Id) return Node_Id is
2087    begin
2088       pragma Assert (False
2089         or else NT (N).Nkind = N_Component_Clause);
2090       return Node4 (N);
2091    end Last_Bit;
2092 
2093    function Last_Name
2094       (N : Node_Id) return Boolean is
2095    begin
2096       pragma Assert (False
2097         or else NT (N).Nkind = N_With_Clause);
2098       return Flag6 (N);
2099    end Last_Name;
2100 
2101    function Left_Opnd
2102       (N : Node_Id) return Node_Id is
2103    begin
2104       pragma Assert (False
2105         or else NT (N).Nkind = N_And_Then
2106         or else NT (N).Nkind = N_In
2107         or else NT (N).Nkind = N_Not_In
2108         or else NT (N).Nkind = N_Or_Else
2109         or else NT (N).Nkind in N_Binary_Op);
2110       return Node2 (N);
2111    end Left_Opnd;
2112 
2113    function Library_Unit
2114       (N : Node_Id) return Node_Id is
2115    begin
2116       pragma Assert (False
2117         or else NT (N).Nkind = N_Compilation_Unit
2118         or else NT (N).Nkind = N_Package_Body_Stub
2119         or else NT (N).Nkind = N_Protected_Body_Stub
2120         or else NT (N).Nkind = N_Subprogram_Body_Stub
2121         or else NT (N).Nkind = N_Task_Body_Stub
2122         or else NT (N).Nkind = N_With_Clause);
2123       return Node4 (N);
2124    end Library_Unit;
2125 
2126    function Limited_View_Installed
2127       (N : Node_Id) return Boolean is
2128    begin
2129       pragma Assert (False
2130         or else NT (N).Nkind = N_Package_Specification
2131         or else NT (N).Nkind = N_With_Clause);
2132       return Flag18 (N);
2133    end Limited_View_Installed;
2134 
2135    function Limited_Present
2136       (N : Node_Id) return Boolean is
2137    begin
2138       pragma Assert (False
2139         or else NT (N).Nkind = N_Derived_Type_Definition
2140         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2141         or else NT (N).Nkind = N_Formal_Private_Type_Definition
2142         or else NT (N).Nkind = N_Private_Extension_Declaration
2143         or else NT (N).Nkind = N_Private_Type_Declaration
2144         or else NT (N).Nkind = N_Record_Definition
2145         or else NT (N).Nkind = N_With_Clause);
2146       return Flag17 (N);
2147    end Limited_Present;
2148 
2149    function Literals
2150       (N : Node_Id) return List_Id is
2151    begin
2152       pragma Assert (False
2153         or else NT (N).Nkind = N_Enumeration_Type_Definition);
2154       return List1 (N);
2155    end Literals;
2156 
2157    function Local_Raise_Not_OK
2158       (N : Node_Id) return Boolean is
2159    begin
2160       pragma Assert (False
2161         or else NT (N).Nkind = N_Exception_Handler);
2162       return Flag7 (N);
2163    end Local_Raise_Not_OK;
2164 
2165    function Local_Raise_Statements
2166       (N : Node_Id) return Elist_Id is
2167    begin
2168       pragma Assert (False
2169         or else NT (N).Nkind = N_Exception_Handler);
2170       return Elist1 (N);
2171    end Local_Raise_Statements;
2172 
2173    function Loop_Actions
2174       (N : Node_Id) return List_Id is
2175    begin
2176       pragma Assert (False
2177         or else NT (N).Nkind = N_Component_Association);
2178       return List2 (N);
2179    end Loop_Actions;
2180 
2181    function Loop_Parameter_Specification
2182       (N : Node_Id) return Node_Id is
2183    begin
2184       pragma Assert (False
2185         or else NT (N).Nkind = N_Iteration_Scheme
2186         or else NT (N).Nkind = N_Quantified_Expression);
2187       return Node4 (N);
2188    end Loop_Parameter_Specification;
2189 
2190    function Low_Bound
2191       (N : Node_Id) return Node_Id is
2192    begin
2193       pragma Assert (False
2194         or else NT (N).Nkind = N_Range
2195         or else NT (N).Nkind = N_Real_Range_Specification
2196         or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
2197       return Node1 (N);
2198    end Low_Bound;
2199 
2200    function Mod_Clause
2201       (N : Node_Id) return Node_Id is
2202    begin
2203       pragma Assert (False
2204         or else NT (N).Nkind = N_Record_Representation_Clause);
2205       return Node2 (N);
2206    end Mod_Clause;
2207 
2208    function More_Ids
2209       (N : Node_Id) return Boolean is
2210    begin
2211       pragma Assert (False
2212         or else NT (N).Nkind = N_Component_Declaration
2213         or else NT (N).Nkind = N_Discriminant_Specification
2214         or else NT (N).Nkind = N_Exception_Declaration
2215         or else NT (N).Nkind = N_Formal_Object_Declaration
2216         or else NT (N).Nkind = N_Number_Declaration
2217         or else NT (N).Nkind = N_Object_Declaration
2218         or else NT (N).Nkind = N_Parameter_Specification);
2219       return Flag5 (N);
2220    end More_Ids;
2221 
2222    function Must_Be_Byte_Aligned
2223       (N : Node_Id) return Boolean is
2224    begin
2225       pragma Assert (False
2226         or else NT (N).Nkind = N_Attribute_Reference);
2227       return Flag14 (N);
2228    end Must_Be_Byte_Aligned;
2229 
2230    function Must_Not_Freeze
2231       (N : Node_Id) return Boolean is
2232    begin
2233       pragma Assert (False
2234         or else NT (N).Nkind = N_Subtype_Indication
2235         or else NT (N).Nkind in N_Subexpr);
2236       return Flag8 (N);
2237    end Must_Not_Freeze;
2238 
2239    function Must_Not_Override
2240       (N : Node_Id) return Boolean is
2241    begin
2242       pragma Assert (False
2243         or else NT (N).Nkind = N_Entry_Declaration
2244         or else NT (N).Nkind = N_Function_Instantiation
2245         or else NT (N).Nkind = N_Function_Specification
2246         or else NT (N).Nkind = N_Procedure_Instantiation
2247         or else NT (N).Nkind = N_Procedure_Specification);
2248       return Flag15 (N);
2249    end Must_Not_Override;
2250 
2251    function Must_Override
2252       (N : Node_Id) return Boolean is
2253    begin
2254       pragma Assert (False
2255         or else NT (N).Nkind = N_Entry_Declaration
2256         or else NT (N).Nkind = N_Function_Instantiation
2257         or else NT (N).Nkind = N_Function_Specification
2258         or else NT (N).Nkind = N_Procedure_Instantiation
2259         or else NT (N).Nkind = N_Procedure_Specification);
2260       return Flag14 (N);
2261    end Must_Override;
2262 
2263    function Name
2264       (N : Node_Id) return Node_Id is
2265    begin
2266       pragma Assert (False
2267         or else NT (N).Nkind = N_Assignment_Statement
2268         or else NT (N).Nkind = N_Attribute_Definition_Clause
2269         or else NT (N).Nkind = N_Defining_Program_Unit_Name
2270         or else NT (N).Nkind = N_Designator
2271         or else NT (N).Nkind = N_Entry_Call_Statement
2272         or else NT (N).Nkind = N_Exception_Renaming_Declaration
2273         or else NT (N).Nkind = N_Exit_Statement
2274         or else NT (N).Nkind = N_Formal_Package_Declaration
2275         or else NT (N).Nkind = N_Function_Call
2276         or else NT (N).Nkind = N_Function_Instantiation
2277         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
2278         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
2279         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
2280         or else NT (N).Nkind = N_Goto_Statement
2281         or else NT (N).Nkind = N_Iterator_Specification
2282         or else NT (N).Nkind = N_Object_Renaming_Declaration
2283         or else NT (N).Nkind = N_Package_Instantiation
2284         or else NT (N).Nkind = N_Package_Renaming_Declaration
2285         or else NT (N).Nkind = N_Procedure_Call_Statement
2286         or else NT (N).Nkind = N_Procedure_Instantiation
2287         or else NT (N).Nkind = N_Raise_Expression
2288         or else NT (N).Nkind = N_Raise_Statement
2289         or else NT (N).Nkind = N_Requeue_Statement
2290         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
2291         or else NT (N).Nkind = N_Subunit
2292         or else NT (N).Nkind = N_Variant_Part
2293         or else NT (N).Nkind = N_With_Clause);
2294       return Node2 (N);
2295    end Name;
2296 
2297    function Names
2298       (N : Node_Id) return List_Id is
2299    begin
2300       pragma Assert (False
2301         or else NT (N).Nkind = N_Abort_Statement
2302         or else NT (N).Nkind = N_Use_Package_Clause);
2303       return List2 (N);
2304    end Names;
2305 
2306    function Next_Entity
2307       (N : Node_Id) return Node_Id is
2308    begin
2309       pragma Assert (False
2310         or else NT (N).Nkind = N_Defining_Character_Literal
2311         or else NT (N).Nkind = N_Defining_Identifier
2312         or else NT (N).Nkind = N_Defining_Operator_Symbol);
2313       return Node2 (N);
2314    end Next_Entity;
2315 
2316    function Next_Exit_Statement
2317      (N : Node_Id) return Node_Id is
2318    begin
2319       pragma Assert (False
2320         or else NT (N).Nkind = N_Exit_Statement);
2321       return Node3 (N);
2322    end Next_Exit_Statement;
2323 
2324    function Next_Implicit_With
2325      (N : Node_Id) return Node_Id is
2326    begin
2327       pragma Assert (False
2328         or else NT (N).Nkind = N_With_Clause);
2329       return Node3 (N);
2330    end Next_Implicit_With;
2331 
2332    function Next_Named_Actual
2333       (N : Node_Id) return Node_Id is
2334    begin
2335       pragma Assert (False
2336         or else NT (N).Nkind = N_Parameter_Association);
2337       return Node4 (N);
2338    end Next_Named_Actual;
2339 
2340    function Next_Pragma
2341       (N : Node_Id) return Node_Id is
2342    begin
2343       pragma Assert (False
2344         or else NT (N).Nkind = N_Pragma);
2345       return Node1 (N);
2346    end Next_Pragma;
2347 
2348    function Next_Rep_Item
2349       (N : Node_Id) return Node_Id is
2350    begin
2351       pragma Assert (False
2352         or else NT (N).Nkind = N_Aspect_Specification
2353         or else NT (N).Nkind = N_Attribute_Definition_Clause
2354         or else NT (N).Nkind = N_Enumeration_Representation_Clause
2355         or else NT (N).Nkind = N_Pragma
2356         or else NT (N).Nkind = N_Record_Representation_Clause);
2357       return Node5 (N);
2358    end Next_Rep_Item;
2359 
2360    function Next_Use_Clause
2361       (N : Node_Id) return Node_Id is
2362    begin
2363       pragma Assert (False
2364         or else NT (N).Nkind = N_Use_Package_Clause
2365         or else NT (N).Nkind = N_Use_Type_Clause);
2366       return Node3 (N);
2367    end Next_Use_Clause;
2368 
2369    function No_Ctrl_Actions
2370       (N : Node_Id) return Boolean is
2371    begin
2372       pragma Assert (False
2373         or else NT (N).Nkind = N_Assignment_Statement);
2374       return Flag7 (N);
2375    end No_Ctrl_Actions;
2376 
2377    function No_Elaboration_Check
2378       (N : Node_Id) return Boolean is
2379    begin
2380       pragma Assert (False
2381         or else NT (N).Nkind = N_Function_Call
2382         or else NT (N).Nkind = N_Procedure_Call_Statement);
2383       return Flag14 (N);
2384    end No_Elaboration_Check;
2385 
2386    function No_Entities_Ref_In_Spec
2387       (N : Node_Id) return Boolean is
2388    begin
2389       pragma Assert (False
2390         or else NT (N).Nkind = N_With_Clause);
2391       return Flag8 (N);
2392    end No_Entities_Ref_In_Spec;
2393 
2394    function No_Initialization
2395       (N : Node_Id) return Boolean is
2396    begin
2397       pragma Assert (False
2398         or else NT (N).Nkind = N_Allocator
2399         or else NT (N).Nkind = N_Object_Declaration);
2400       return Flag13 (N);
2401    end No_Initialization;
2402 
2403    function No_Minimize_Eliminate
2404       (N : Node_Id) return Boolean is
2405    begin
2406       pragma Assert (False
2407         or else NT (N).Nkind = N_In
2408         or else NT (N).Nkind = N_Not_In);
2409       return Flag17 (N);
2410    end No_Minimize_Eliminate;
2411 
2412    function No_Side_Effect_Removal
2413       (N : Node_Id) return Boolean is
2414    begin
2415       pragma Assert (False
2416         or else NT (N).Nkind = N_Function_Call);
2417       return Flag1 (N);
2418    end No_Side_Effect_Removal;
2419 
2420    function No_Truncation
2421       (N : Node_Id) return Boolean is
2422    begin
2423       pragma Assert (False
2424         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
2425       return Flag17 (N);
2426    end No_Truncation;
2427 
2428    function Non_Aliased_Prefix
2429      (N : Node_Id) return Boolean is
2430    begin
2431       pragma Assert (False
2432         or else NT (N).Nkind = N_Attribute_Reference);
2433       return Flag18 (N);
2434    end Non_Aliased_Prefix;
2435 
2436    function Null_Present
2437       (N : Node_Id) return Boolean is
2438    begin
2439       pragma Assert (False
2440         or else NT (N).Nkind = N_Component_List
2441         or else NT (N).Nkind = N_Procedure_Specification
2442         or else NT (N).Nkind = N_Record_Definition);
2443       return Flag13 (N);
2444    end Null_Present;
2445 
2446    function Null_Excluding_Subtype
2447       (N : Node_Id) return Boolean is
2448    begin
2449       pragma Assert (False
2450         or else NT (N).Nkind = N_Access_To_Object_Definition);
2451       return Flag16 (N);
2452    end Null_Excluding_Subtype;
2453 
2454    function Null_Exclusion_Present
2455       (N : Node_Id) return Boolean is
2456    begin
2457       pragma Assert (False
2458         or else NT (N).Nkind = N_Access_Definition
2459         or else NT (N).Nkind = N_Access_Function_Definition
2460         or else NT (N).Nkind = N_Access_Procedure_Definition
2461         or else NT (N).Nkind = N_Access_To_Object_Definition
2462         or else NT (N).Nkind = N_Allocator
2463         or else NT (N).Nkind = N_Component_Definition
2464         or else NT (N).Nkind = N_Derived_Type_Definition
2465         or else NT (N).Nkind = N_Discriminant_Specification
2466         or else NT (N).Nkind = N_Formal_Object_Declaration
2467         or else NT (N).Nkind = N_Function_Specification
2468         or else NT (N).Nkind = N_Object_Declaration
2469         or else NT (N).Nkind = N_Object_Renaming_Declaration
2470         or else NT (N).Nkind = N_Parameter_Specification
2471         or else NT (N).Nkind = N_Subtype_Declaration);
2472       return Flag11 (N);
2473    end Null_Exclusion_Present;
2474 
2475    function Null_Exclusion_In_Return_Present
2476       (N : Node_Id) return Boolean is
2477    begin
2478       pragma Assert (False
2479         or else NT (N).Nkind = N_Access_Function_Definition);
2480       return Flag14 (N);
2481    end Null_Exclusion_In_Return_Present;
2482 
2483    function Null_Record_Present
2484       (N : Node_Id) return Boolean is
2485    begin
2486       pragma Assert (False
2487         or else NT (N).Nkind = N_Aggregate
2488         or else NT (N).Nkind = N_Extension_Aggregate);
2489       return Flag17 (N);
2490    end Null_Record_Present;
2491 
2492    function Object_Definition
2493       (N : Node_Id) return Node_Id is
2494    begin
2495       pragma Assert (False
2496         or else NT (N).Nkind = N_Object_Declaration);
2497       return Node4 (N);
2498    end Object_Definition;
2499 
2500    function Of_Present
2501       (N : Node_Id) return Boolean is
2502    begin
2503       pragma Assert (False
2504         or else NT (N).Nkind = N_Iterator_Specification);
2505       return Flag16 (N);
2506    end Of_Present;
2507 
2508    function Original_Discriminant
2509       (N : Node_Id) return Node_Id is
2510    begin
2511       pragma Assert (False
2512         or else NT (N).Nkind = N_Identifier);
2513       return Node2 (N);
2514    end Original_Discriminant;
2515 
2516    function Original_Entity
2517       (N : Node_Id) return Entity_Id is
2518    begin
2519       pragma Assert (False
2520         or else NT (N).Nkind = N_Integer_Literal
2521         or else NT (N).Nkind = N_Real_Literal);
2522       return Node2 (N);
2523    end Original_Entity;
2524 
2525    function Others_Discrete_Choices
2526       (N : Node_Id) return List_Id is
2527    begin
2528       pragma Assert (False
2529         or else NT (N).Nkind = N_Others_Choice);
2530       return List1 (N);
2531    end Others_Discrete_Choices;
2532 
2533    function Out_Present
2534       (N : Node_Id) return Boolean is
2535    begin
2536       pragma Assert (False
2537         or else NT (N).Nkind = N_Formal_Object_Declaration
2538         or else NT (N).Nkind = N_Parameter_Specification);
2539       return Flag17 (N);
2540    end Out_Present;
2541 
2542    function Parameter_Associations
2543       (N : Node_Id) return List_Id is
2544    begin
2545       pragma Assert (False
2546         or else NT (N).Nkind = N_Entry_Call_Statement
2547         or else NT (N).Nkind = N_Function_Call
2548         or else NT (N).Nkind = N_Procedure_Call_Statement);
2549       return List3 (N);
2550    end Parameter_Associations;
2551 
2552    function Parameter_Specifications
2553       (N : Node_Id) return List_Id is
2554    begin
2555       pragma Assert (False
2556         or else NT (N).Nkind = N_Accept_Statement
2557         or else NT (N).Nkind = N_Access_Function_Definition
2558         or else NT (N).Nkind = N_Access_Procedure_Definition
2559         or else NT (N).Nkind = N_Entry_Body_Formal_Part
2560         or else NT (N).Nkind = N_Entry_Declaration
2561         or else NT (N).Nkind = N_Function_Specification
2562         or else NT (N).Nkind = N_Procedure_Specification);
2563       return List3 (N);
2564    end Parameter_Specifications;
2565 
2566    function Parameter_Type
2567       (N : Node_Id) return Node_Id is
2568    begin
2569       pragma Assert (False
2570         or else NT (N).Nkind = N_Parameter_Specification);
2571       return Node2 (N);
2572    end Parameter_Type;
2573 
2574    function Parent_Spec
2575       (N : Node_Id) return Node_Id is
2576    begin
2577       pragma Assert (False
2578         or else NT (N).Nkind = N_Function_Instantiation
2579         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
2580         or else NT (N).Nkind = N_Generic_Package_Declaration
2581         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
2582         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
2583         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2584         or else NT (N).Nkind = N_Package_Declaration
2585         or else NT (N).Nkind = N_Package_Instantiation
2586         or else NT (N).Nkind = N_Package_Renaming_Declaration
2587         or else NT (N).Nkind = N_Procedure_Instantiation
2588         or else NT (N).Nkind = N_Subprogram_Declaration
2589         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
2590       return Node4 (N);
2591    end Parent_Spec;
2592 
2593    function Position
2594       (N : Node_Id) return Node_Id is
2595    begin
2596       pragma Assert (False
2597         or else NT (N).Nkind = N_Component_Clause);
2598       return Node2 (N);
2599    end Position;
2600 
2601    function Pragma_Argument_Associations
2602       (N : Node_Id) return List_Id is
2603    begin
2604       pragma Assert (False
2605         or else NT (N).Nkind = N_Pragma);
2606       return List2 (N);
2607    end Pragma_Argument_Associations;
2608 
2609    function Pragma_Identifier
2610       (N : Node_Id) return Node_Id is
2611    begin
2612       pragma Assert (False
2613         or else NT (N).Nkind = N_Pragma);
2614       return Node4 (N);
2615    end Pragma_Identifier;
2616 
2617    function Pragmas_After
2618       (N : Node_Id) return List_Id is
2619    begin
2620       pragma Assert (False
2621         or else NT (N).Nkind = N_Compilation_Unit_Aux
2622         or else NT (N).Nkind = N_Terminate_Alternative);
2623       return List5 (N);
2624    end Pragmas_After;
2625 
2626    function Pragmas_Before
2627       (N : Node_Id) return List_Id is
2628    begin
2629       pragma Assert (False
2630         or else NT (N).Nkind = N_Accept_Alternative
2631         or else NT (N).Nkind = N_Delay_Alternative
2632         or else NT (N).Nkind = N_Entry_Call_Alternative
2633         or else NT (N).Nkind = N_Mod_Clause
2634         or else NT (N).Nkind = N_Terminate_Alternative
2635         or else NT (N).Nkind = N_Triggering_Alternative);
2636       return List4 (N);
2637    end Pragmas_Before;
2638 
2639    function Pre_Post_Conditions
2640       (N : Node_Id) return Node_Id is
2641    begin
2642       pragma Assert (False
2643         or else NT (N).Nkind = N_Contract);
2644       return Node1 (N);
2645    end Pre_Post_Conditions;
2646 
2647    function Prefix
2648       (N : Node_Id) return Node_Id is
2649    begin
2650       pragma Assert (False
2651         or else NT (N).Nkind = N_Attribute_Reference
2652         or else NT (N).Nkind = N_Expanded_Name
2653         or else NT (N).Nkind = N_Explicit_Dereference
2654         or else NT (N).Nkind = N_Indexed_Component
2655         or else NT (N).Nkind = N_Reference
2656         or else NT (N).Nkind = N_Selected_Component
2657         or else NT (N).Nkind = N_Slice);
2658       return Node3 (N);
2659    end Prefix;
2660 
2661    function Premature_Use
2662       (N : Node_Id) return Node_Id is
2663    begin
2664       pragma Assert (False
2665         or else NT (N).Nkind = N_Incomplete_Type_Declaration);
2666       return Node5 (N);
2667    end Premature_Use;
2668 
2669    function Present_Expr
2670       (N : Node_Id) return Uint is
2671    begin
2672       pragma Assert (False
2673         or else NT (N).Nkind = N_Variant);
2674       return Uint3 (N);
2675    end Present_Expr;
2676 
2677    function Prev_Ids
2678       (N : Node_Id) return Boolean is
2679    begin
2680       pragma Assert (False
2681         or else NT (N).Nkind = N_Component_Declaration
2682         or else NT (N).Nkind = N_Discriminant_Specification
2683         or else NT (N).Nkind = N_Exception_Declaration
2684         or else NT (N).Nkind = N_Formal_Object_Declaration
2685         or else NT (N).Nkind = N_Number_Declaration
2686         or else NT (N).Nkind = N_Object_Declaration
2687         or else NT (N).Nkind = N_Parameter_Specification);
2688       return Flag6 (N);
2689    end Prev_Ids;
2690 
2691    function Print_In_Hex
2692       (N : Node_Id) return Boolean is
2693    begin
2694       pragma Assert (False
2695         or else NT (N).Nkind = N_Integer_Literal);
2696       return Flag13 (N);
2697    end Print_In_Hex;
2698 
2699    function Private_Declarations
2700       (N : Node_Id) return List_Id is
2701    begin
2702       pragma Assert (False
2703         or else NT (N).Nkind = N_Package_Specification
2704         or else NT (N).Nkind = N_Protected_Definition
2705         or else NT (N).Nkind = N_Task_Definition);
2706       return List3 (N);
2707    end Private_Declarations;
2708 
2709    function Private_Present
2710       (N : Node_Id) return Boolean is
2711    begin
2712       pragma Assert (False
2713         or else NT (N).Nkind = N_Compilation_Unit
2714         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
2715         or else NT (N).Nkind = N_With_Clause);
2716       return Flag15 (N);
2717    end Private_Present;
2718 
2719    function Procedure_To_Call
2720       (N : Node_Id) return Node_Id is
2721    begin
2722       pragma Assert (False
2723         or else NT (N).Nkind = N_Allocator
2724         or else NT (N).Nkind = N_Extended_Return_Statement
2725         or else NT (N).Nkind = N_Free_Statement
2726         or else NT (N).Nkind = N_Simple_Return_Statement);
2727       return Node2 (N);
2728    end Procedure_To_Call;
2729 
2730    function Proper_Body
2731       (N : Node_Id) return Node_Id is
2732    begin
2733       pragma Assert (False
2734         or else NT (N).Nkind = N_Subunit);
2735       return Node1 (N);
2736    end Proper_Body;
2737 
2738    function Protected_Definition
2739       (N : Node_Id) return Node_Id is
2740    begin
2741       pragma Assert (False
2742         or else NT (N).Nkind = N_Protected_Type_Declaration
2743         or else NT (N).Nkind = N_Single_Protected_Declaration);
2744       return Node3 (N);
2745    end Protected_Definition;
2746 
2747    function Protected_Present
2748       (N : Node_Id) return Boolean is
2749    begin
2750       pragma Assert (False
2751         or else NT (N).Nkind = N_Access_Function_Definition
2752         or else NT (N).Nkind = N_Access_Procedure_Definition
2753         or else NT (N).Nkind = N_Derived_Type_Definition
2754         or else NT (N).Nkind = N_Record_Definition);
2755       return Flag6 (N);
2756    end Protected_Present;
2757 
2758    function Raises_Constraint_Error
2759       (N : Node_Id) return Boolean is
2760    begin
2761       pragma Assert (False
2762         or else NT (N).Nkind in N_Subexpr);
2763       return Flag7 (N);
2764    end Raises_Constraint_Error;
2765 
2766    function Range_Constraint
2767       (N : Node_Id) return Node_Id is
2768    begin
2769       pragma Assert (False
2770         or else NT (N).Nkind = N_Delta_Constraint
2771         or else NT (N).Nkind = N_Digits_Constraint);
2772       return Node4 (N);
2773    end Range_Constraint;
2774 
2775    function Range_Expression
2776       (N : Node_Id) return Node_Id is
2777    begin
2778       pragma Assert (False
2779         or else NT (N).Nkind = N_Range_Constraint);
2780       return Node4 (N);
2781    end Range_Expression;
2782 
2783    function Real_Range_Specification
2784       (N : Node_Id) return Node_Id is
2785    begin
2786       pragma Assert (False
2787         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
2788         or else NT (N).Nkind = N_Floating_Point_Definition
2789         or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
2790       return Node4 (N);
2791    end Real_Range_Specification;
2792 
2793    function Realval
2794       (N : Node_Id) return Ureal is
2795    begin
2796       pragma Assert (False
2797         or else NT (N).Nkind = N_Real_Literal);
2798       return Ureal3 (N);
2799    end Realval;
2800 
2801    function Reason
2802       (N : Node_Id) return Uint is
2803    begin
2804       pragma Assert (False
2805         or else NT (N).Nkind = N_Raise_Constraint_Error
2806         or else NT (N).Nkind = N_Raise_Program_Error
2807         or else NT (N).Nkind = N_Raise_Storage_Error);
2808       return Uint3 (N);
2809    end Reason;
2810 
2811    function Record_Extension_Part
2812       (N : Node_Id) return Node_Id is
2813    begin
2814       pragma Assert (False
2815         or else NT (N).Nkind = N_Derived_Type_Definition);
2816       return Node3 (N);
2817    end Record_Extension_Part;
2818 
2819    function Redundant_Use
2820       (N : Node_Id) return Boolean is
2821    begin
2822       pragma Assert (False
2823         or else NT (N).Nkind = N_Attribute_Reference
2824         or else NT (N).Nkind = N_Expanded_Name
2825         or else NT (N).Nkind = N_Identifier);
2826       return Flag13 (N);
2827    end Redundant_Use;
2828 
2829    function Renaming_Exception
2830       (N : Node_Id) return Node_Id is
2831    begin
2832       pragma Assert (False
2833         or else NT (N).Nkind = N_Exception_Declaration);
2834       return Node2 (N);
2835    end Renaming_Exception;
2836 
2837    function Result_Definition
2838      (N : Node_Id) return Node_Id is
2839    begin
2840       pragma Assert (False
2841         or else NT (N).Nkind = N_Access_Function_Definition
2842         or else NT (N).Nkind = N_Function_Specification);
2843       return Node4 (N);
2844    end Result_Definition;
2845 
2846    function Return_Object_Declarations
2847      (N : Node_Id) return List_Id is
2848    begin
2849       pragma Assert (False
2850         or else NT (N).Nkind = N_Extended_Return_Statement);
2851       return List3 (N);
2852    end Return_Object_Declarations;
2853 
2854    function Return_Statement_Entity
2855      (N : Node_Id) return Node_Id is
2856    begin
2857       pragma Assert (False
2858         or else NT (N).Nkind = N_Extended_Return_Statement
2859         or else NT (N).Nkind = N_Simple_Return_Statement);
2860       return Node5 (N);
2861    end Return_Statement_Entity;
2862 
2863    function Reverse_Present
2864       (N : Node_Id) return Boolean is
2865    begin
2866       pragma Assert (False
2867         or else NT (N).Nkind = N_Iterator_Specification
2868         or else NT (N).Nkind = N_Loop_Parameter_Specification);
2869       return Flag15 (N);
2870    end Reverse_Present;
2871 
2872    function Right_Opnd
2873       (N : Node_Id) return Node_Id is
2874    begin
2875       pragma Assert (False
2876         or else NT (N).Nkind in N_Op
2877         or else NT (N).Nkind = N_And_Then
2878         or else NT (N).Nkind = N_In
2879         or else NT (N).Nkind = N_Not_In
2880         or else NT (N).Nkind = N_Or_Else);
2881       return Node3 (N);
2882    end Right_Opnd;
2883 
2884    function Rounded_Result
2885       (N : Node_Id) return Boolean is
2886    begin
2887       pragma Assert (False
2888         or else NT (N).Nkind = N_Op_Divide
2889         or else NT (N).Nkind = N_Op_Multiply
2890         or else NT (N).Nkind = N_Type_Conversion);
2891       return Flag18 (N);
2892    end Rounded_Result;
2893 
2894    function SCIL_Controlling_Tag
2895       (N : Node_Id) return Node_Id is
2896    begin
2897       pragma Assert (False
2898         or else NT (N).Nkind = N_SCIL_Dispatching_Call);
2899       return Node5 (N);
2900    end SCIL_Controlling_Tag;
2901 
2902    function SCIL_Entity
2903       (N : Node_Id) return Node_Id is
2904    begin
2905       pragma Assert (False
2906         or else NT (N).Nkind = N_SCIL_Dispatch_Table_Tag_Init
2907         or else NT (N).Nkind = N_SCIL_Dispatching_Call
2908         or else NT (N).Nkind = N_SCIL_Membership_Test);
2909       return Node4 (N);
2910    end SCIL_Entity;
2911 
2912    function SCIL_Tag_Value
2913       (N : Node_Id) return Node_Id is
2914    begin
2915       pragma Assert (False
2916         or else NT (N).Nkind = N_SCIL_Membership_Test);
2917       return Node5 (N);
2918    end SCIL_Tag_Value;
2919 
2920    function SCIL_Target_Prim
2921       (N : Node_Id) return Node_Id is
2922    begin
2923       pragma Assert (False
2924         or else NT (N).Nkind = N_SCIL_Dispatching_Call);
2925       return Node2 (N);
2926    end SCIL_Target_Prim;
2927 
2928    function Scope
2929       (N : Node_Id) return Node_Id is
2930    begin
2931       pragma Assert (False
2932         or else NT (N).Nkind = N_Defining_Character_Literal
2933         or else NT (N).Nkind = N_Defining_Identifier
2934         or else NT (N).Nkind = N_Defining_Operator_Symbol);
2935       return Node3 (N);
2936    end Scope;
2937 
2938    function Select_Alternatives
2939       (N : Node_Id) return List_Id is
2940    begin
2941       pragma Assert (False
2942         or else NT (N).Nkind = N_Selective_Accept);
2943       return List1 (N);
2944    end Select_Alternatives;
2945 
2946    function Selector_Name
2947       (N : Node_Id) return Node_Id is
2948    begin
2949       pragma Assert (False
2950         or else NT (N).Nkind = N_Expanded_Name
2951         or else NT (N).Nkind = N_Generic_Association
2952         or else NT (N).Nkind = N_Parameter_Association
2953         or else NT (N).Nkind = N_Selected_Component);
2954       return Node2 (N);
2955    end Selector_Name;
2956 
2957    function Selector_Names
2958       (N : Node_Id) return List_Id is
2959    begin
2960       pragma Assert (False
2961         or else NT (N).Nkind = N_Discriminant_Association);
2962       return List1 (N);
2963    end Selector_Names;
2964 
2965    function Shift_Count_OK
2966       (N : Node_Id) return Boolean is
2967    begin
2968       pragma Assert (False
2969         or else NT (N).Nkind = N_Op_Rotate_Left
2970         or else NT (N).Nkind = N_Op_Rotate_Right
2971         or else NT (N).Nkind = N_Op_Shift_Left
2972         or else NT (N).Nkind = N_Op_Shift_Right
2973         or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
2974       return Flag4 (N);
2975    end Shift_Count_OK;
2976 
2977    function Source_Type
2978       (N : Node_Id) return Entity_Id is
2979    begin
2980       pragma Assert (False
2981         or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
2982       return Node1 (N);
2983    end Source_Type;
2984 
2985    function Specification
2986       (N : Node_Id) return Node_Id is
2987    begin
2988       pragma Assert (False
2989         or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
2990         or else NT (N).Nkind = N_Expression_Function
2991         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
2992         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
2993         or else NT (N).Nkind = N_Generic_Package_Declaration
2994         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
2995         or else NT (N).Nkind = N_Package_Declaration
2996         or else NT (N).Nkind = N_Subprogram_Body
2997         or else NT (N).Nkind = N_Subprogram_Body_Stub
2998         or else NT (N).Nkind = N_Subprogram_Declaration
2999         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
3000       return Node1 (N);
3001    end Specification;
3002 
3003    function Split_PPC
3004       (N : Node_Id) return Boolean is
3005    begin
3006       pragma Assert (False
3007         or else NT (N).Nkind = N_Aspect_Specification
3008         or else NT (N).Nkind = N_Pragma);
3009       return Flag17 (N);
3010    end Split_PPC;
3011 
3012    function Statements
3013       (N : Node_Id) return List_Id is
3014    begin
3015       pragma Assert (False
3016         or else NT (N).Nkind = N_Abortable_Part
3017         or else NT (N).Nkind = N_Accept_Alternative
3018         or else NT (N).Nkind = N_Case_Statement_Alternative
3019         or else NT (N).Nkind = N_Delay_Alternative
3020         or else NT (N).Nkind = N_Entry_Call_Alternative
3021         or else NT (N).Nkind = N_Exception_Handler
3022         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
3023         or else NT (N).Nkind = N_Loop_Statement
3024         or else NT (N).Nkind = N_Triggering_Alternative);
3025       return List3 (N);
3026    end Statements;
3027 
3028    function Storage_Pool
3029       (N : Node_Id) return Node_Id is
3030    begin
3031       pragma Assert (False
3032         or else NT (N).Nkind = N_Allocator
3033         or else NT (N).Nkind = N_Extended_Return_Statement
3034         or else NT (N).Nkind = N_Free_Statement
3035         or else NT (N).Nkind = N_Simple_Return_Statement);
3036       return Node1 (N);
3037    end Storage_Pool;
3038 
3039    function Subpool_Handle_Name
3040       (N : Node_Id) return Node_Id is
3041    begin
3042       pragma Assert (False
3043         or else NT (N).Nkind = N_Allocator);
3044       return Node4 (N);
3045    end Subpool_Handle_Name;
3046 
3047    function Strval
3048       (N : Node_Id) return String_Id is
3049    begin
3050       pragma Assert (False
3051         or else NT (N).Nkind = N_Operator_Symbol
3052         or else NT (N).Nkind = N_String_Literal);
3053       return Str3 (N);
3054    end Strval;
3055 
3056    function Subtype_Indication
3057       (N : Node_Id) return Node_Id is
3058    begin
3059       pragma Assert (False
3060         or else NT (N).Nkind = N_Access_To_Object_Definition
3061         or else NT (N).Nkind = N_Component_Definition
3062         or else NT (N).Nkind = N_Derived_Type_Definition
3063         or else NT (N).Nkind = N_Iterator_Specification
3064         or else NT (N).Nkind = N_Private_Extension_Declaration
3065         or else NT (N).Nkind = N_Subtype_Declaration);
3066       return Node5 (N);
3067    end Subtype_Indication;
3068 
3069    function Suppress_Assignment_Checks
3070       (N : Node_Id) return Boolean is
3071    begin
3072       pragma Assert (False
3073         or else NT (N).Nkind = N_Assignment_Statement
3074         or else NT (N).Nkind = N_Object_Declaration);
3075       return Flag18 (N);
3076    end Suppress_Assignment_Checks;
3077 
3078    function Suppress_Loop_Warnings
3079       (N : Node_Id) return Boolean is
3080    begin
3081       pragma Assert (False
3082         or else NT (N).Nkind = N_Loop_Statement);
3083       return Flag17 (N);
3084    end Suppress_Loop_Warnings;
3085 
3086    function Subtype_Mark
3087       (N : Node_Id) return Node_Id is
3088    begin
3089       pragma Assert (False
3090         or else NT (N).Nkind = N_Access_Definition
3091         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
3092         or else NT (N).Nkind = N_Formal_Object_Declaration
3093         or else NT (N).Nkind = N_Object_Renaming_Declaration
3094         or else NT (N).Nkind = N_Qualified_Expression
3095         or else NT (N).Nkind = N_Subtype_Indication
3096         or else NT (N).Nkind = N_Type_Conversion
3097         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
3098       return Node4 (N);
3099    end Subtype_Mark;
3100 
3101    function Subtype_Marks
3102       (N : Node_Id) return List_Id is
3103    begin
3104       pragma Assert (False
3105         or else NT (N).Nkind = N_Unconstrained_Array_Definition
3106         or else NT (N).Nkind = N_Use_Type_Clause);
3107       return List2 (N);
3108    end Subtype_Marks;
3109 
3110    function Synchronized_Present
3111      (N : Node_Id) return Boolean is
3112    begin
3113       pragma Assert (False
3114         or else NT (N).Nkind = N_Derived_Type_Definition
3115         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
3116         or else NT (N).Nkind = N_Private_Extension_Declaration
3117         or else NT (N).Nkind = N_Record_Definition);
3118       return Flag7 (N);
3119    end Synchronized_Present;
3120 
3121    function Tagged_Present
3122       (N : Node_Id) return Boolean is
3123    begin
3124       pragma Assert (False
3125         or else NT (N).Nkind = N_Formal_Incomplete_Type_Definition
3126         or else NT (N).Nkind = N_Formal_Private_Type_Definition
3127         or else NT (N).Nkind = N_Incomplete_Type_Declaration
3128         or else NT (N).Nkind = N_Private_Type_Declaration
3129         or else NT (N).Nkind = N_Record_Definition);
3130       return Flag15 (N);
3131    end Tagged_Present;
3132 
3133    function Target_Type
3134       (N : Node_Id) return Entity_Id is
3135    begin
3136       pragma Assert (False
3137         or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
3138       return Node2 (N);
3139    end Target_Type;
3140 
3141    function Task_Definition
3142       (N : Node_Id) return Node_Id is
3143    begin
3144       pragma Assert (False
3145         or else NT (N).Nkind = N_Single_Task_Declaration
3146         or else NT (N).Nkind = N_Task_Type_Declaration);
3147       return Node3 (N);
3148    end Task_Definition;
3149 
3150    function Task_Present
3151      (N : Node_Id) return Boolean is
3152    begin
3153       pragma Assert (False
3154         or else NT (N).Nkind = N_Derived_Type_Definition
3155         or else NT (N).Nkind = N_Record_Definition);
3156       return Flag5 (N);
3157    end Task_Present;
3158 
3159    function Then_Actions
3160       (N : Node_Id) return List_Id is
3161    begin
3162       pragma Assert (False
3163         or else NT (N).Nkind = N_If_Expression);
3164       return List2 (N);
3165    end Then_Actions;
3166 
3167    function Then_Statements
3168       (N : Node_Id) return List_Id is
3169    begin
3170       pragma Assert (False
3171         or else NT (N).Nkind = N_Elsif_Part
3172         or else NT (N).Nkind = N_If_Statement);
3173       return List2 (N);
3174    end Then_Statements;
3175 
3176    function Treat_Fixed_As_Integer
3177       (N : Node_Id) return Boolean is
3178    begin
3179       pragma Assert (False
3180         or else NT (N).Nkind = N_Op_Divide
3181         or else NT (N).Nkind = N_Op_Mod
3182         or else NT (N).Nkind = N_Op_Multiply
3183         or else NT (N).Nkind = N_Op_Rem);
3184       return Flag14 (N);
3185    end Treat_Fixed_As_Integer;
3186 
3187    function Triggering_Alternative
3188       (N : Node_Id) return Node_Id is
3189    begin
3190       pragma Assert (False
3191         or else NT (N).Nkind = N_Asynchronous_Select);
3192       return Node1 (N);
3193    end Triggering_Alternative;
3194 
3195    function Triggering_Statement
3196       (N : Node_Id) return Node_Id is
3197    begin
3198       pragma Assert (False
3199         or else NT (N).Nkind = N_Triggering_Alternative);
3200       return Node1 (N);
3201    end Triggering_Statement;
3202 
3203    function TSS_Elist
3204       (N : Node_Id) return Elist_Id is
3205    begin
3206       pragma Assert (False
3207         or else NT (N).Nkind = N_Freeze_Entity);
3208       return Elist3 (N);
3209    end TSS_Elist;
3210 
3211    function Type_Definition
3212       (N : Node_Id) return Node_Id is
3213    begin
3214       pragma Assert (False
3215         or else NT (N).Nkind = N_Full_Type_Declaration);
3216       return Node3 (N);
3217    end Type_Definition;
3218 
3219    function Uneval_Old_Accept
3220      (N : Node_Id) return Boolean is
3221    begin
3222       pragma Assert (False
3223         or else NT (N).Nkind = N_Pragma);
3224       return Flag7 (N);
3225    end Uneval_Old_Accept;
3226 
3227    function Uneval_Old_Warn
3228      (N : Node_Id) return Boolean is
3229    begin
3230       pragma Assert (False
3231         or else NT (N).Nkind = N_Pragma);
3232       return Flag18 (N);
3233    end Uneval_Old_Warn;
3234 
3235    function Unit
3236       (N : Node_Id) return Node_Id is
3237    begin
3238       pragma Assert (False
3239         or else NT (N).Nkind = N_Compilation_Unit);
3240       return Node2 (N);
3241    end Unit;
3242 
3243    function Unknown_Discriminants_Present
3244       (N : Node_Id) return Boolean is
3245    begin
3246       pragma Assert (False
3247         or else NT (N).Nkind = N_Formal_Type_Declaration
3248         or else NT (N).Nkind = N_Incomplete_Type_Declaration
3249         or else NT (N).Nkind = N_Private_Extension_Declaration
3250         or else NT (N).Nkind = N_Private_Type_Declaration);
3251       return Flag13 (N);
3252    end Unknown_Discriminants_Present;
3253 
3254    function Unreferenced_In_Spec
3255       (N : Node_Id) return Boolean is
3256    begin
3257       pragma Assert (False
3258         or else NT (N).Nkind = N_With_Clause);
3259       return Flag7 (N);
3260    end Unreferenced_In_Spec;
3261 
3262    function Variant_Part
3263       (N : Node_Id) return Node_Id is
3264    begin
3265       pragma Assert (False
3266         or else NT (N).Nkind = N_Component_List);
3267       return Node4 (N);
3268    end Variant_Part;
3269 
3270    function Variants
3271       (N : Node_Id) return List_Id is
3272    begin
3273       pragma Assert (False
3274         or else NT (N).Nkind = N_Variant_Part);
3275       return List1 (N);
3276    end Variants;
3277 
3278    function Visible_Declarations
3279       (N : Node_Id) return List_Id is
3280    begin
3281       pragma Assert (False
3282         or else NT (N).Nkind = N_Package_Specification
3283         or else NT (N).Nkind = N_Protected_Definition
3284         or else NT (N).Nkind = N_Task_Definition);
3285       return List2 (N);
3286    end Visible_Declarations;
3287 
3288    function Uninitialized_Variable
3289      (N : Node_Id) return Node_Id is
3290    begin
3291       pragma Assert (False
3292         or else NT (N).Nkind = N_Formal_Private_Type_Definition
3293         or else NT (N).Nkind = N_Private_Extension_Declaration);
3294       return Node3 (N);
3295    end Uninitialized_Variable;
3296 
3297    function Used_Operations
3298      (N : Node_Id) return Elist_Id is
3299    begin
3300       pragma Assert (False
3301         or else NT (N).Nkind = N_Use_Type_Clause);
3302       return Elist5 (N);
3303    end Used_Operations;
3304 
3305    function Was_Expression_Function
3306       (N : Node_Id) return Boolean is
3307    begin
3308       pragma Assert (False
3309         or else NT (N).Nkind = N_Subprogram_Body);
3310       return Flag18 (N);
3311    end Was_Expression_Function;
3312 
3313    function Was_Originally_Stub
3314       (N : Node_Id) return Boolean is
3315    begin
3316       pragma Assert (False
3317         or else NT (N).Nkind = N_Package_Body
3318         or else NT (N).Nkind = N_Protected_Body
3319         or else NT (N).Nkind = N_Subprogram_Body
3320         or else NT (N).Nkind = N_Task_Body);
3321       return Flag13 (N);
3322    end Was_Originally_Stub;
3323 
3324    function Withed_Body
3325       (N : Node_Id) return Node_Id is
3326    begin
3327       pragma Assert (False
3328         or else NT (N).Nkind = N_With_Clause);
3329       return Node1 (N);
3330    end Withed_Body;
3331 
3332    --------------------------
3333    -- Field Set Procedures --
3334    --------------------------
3335 
3336    procedure Set_ABE_Is_Certain
3337       (N : Node_Id; Val : Boolean := True) is
3338    begin
3339       pragma Assert (False
3340         or else NT (N).Nkind = N_Formal_Package_Declaration
3341         or else NT (N).Nkind = N_Function_Call
3342         or else NT (N).Nkind = N_Function_Instantiation
3343         or else NT (N).Nkind = N_Package_Instantiation
3344         or else NT (N).Nkind = N_Procedure_Call_Statement
3345         or else NT (N).Nkind = N_Procedure_Instantiation);
3346       Set_Flag18 (N, Val);
3347    end Set_ABE_Is_Certain;
3348 
3349    procedure Set_Abort_Present
3350       (N : Node_Id; Val : Boolean := True) is
3351    begin
3352       pragma Assert (False
3353         or else NT (N).Nkind = N_Requeue_Statement);
3354       Set_Flag15 (N, Val);
3355    end Set_Abort_Present;
3356 
3357    procedure Set_Abortable_Part
3358       (N : Node_Id; Val : Node_Id) is
3359    begin
3360       pragma Assert (False
3361         or else NT (N).Nkind = N_Asynchronous_Select);
3362       Set_Node2_With_Parent (N, Val);
3363    end Set_Abortable_Part;
3364 
3365    procedure Set_Abstract_Present
3366       (N : Node_Id; Val : Boolean := True) is
3367    begin
3368       pragma Assert (False
3369         or else NT (N).Nkind = N_Derived_Type_Definition
3370         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
3371         or else NT (N).Nkind = N_Formal_Private_Type_Definition
3372         or else NT (N).Nkind = N_Private_Extension_Declaration
3373         or else NT (N).Nkind = N_Private_Type_Declaration
3374         or else NT (N).Nkind = N_Record_Definition);
3375       Set_Flag4 (N, Val);
3376    end Set_Abstract_Present;
3377 
3378    procedure Set_Accept_Handler_Records
3379       (N : Node_Id; Val : List_Id) is
3380    begin
3381       pragma Assert (False
3382         or else NT (N).Nkind = N_Accept_Alternative);
3383       Set_List5 (N, Val); -- semantic field, no parent set
3384    end Set_Accept_Handler_Records;
3385 
3386    procedure Set_Accept_Statement
3387       (N : Node_Id; Val : Node_Id) is
3388    begin
3389       pragma Assert (False
3390         or else NT (N).Nkind = N_Accept_Alternative);
3391       Set_Node2_With_Parent (N, Val);
3392    end Set_Accept_Statement;
3393 
3394    procedure Set_Access_Definition
3395      (N : Node_Id; Val : Node_Id) is
3396    begin
3397       pragma Assert (False
3398         or else NT (N).Nkind = N_Component_Definition
3399         or else NT (N).Nkind = N_Formal_Object_Declaration
3400         or else NT (N).Nkind = N_Object_Renaming_Declaration);
3401       Set_Node3_With_Parent (N, Val);
3402    end Set_Access_Definition;
3403 
3404    procedure Set_Access_To_Subprogram_Definition
3405      (N : Node_Id; Val : Node_Id) is
3406    begin
3407       pragma Assert (False
3408         or else NT (N).Nkind = N_Access_Definition);
3409       Set_Node3_With_Parent (N, Val);
3410    end Set_Access_To_Subprogram_Definition;
3411 
3412    procedure Set_Access_Types_To_Process
3413       (N : Node_Id; Val : Elist_Id) is
3414    begin
3415       pragma Assert (False
3416         or else NT (N).Nkind = N_Freeze_Entity);
3417       Set_Elist2 (N, Val); -- semantic field, no parent set
3418    end Set_Access_Types_To_Process;
3419 
3420    procedure Set_Actions
3421       (N : Node_Id; Val : List_Id) is
3422    begin
3423       pragma Assert (False
3424         or else NT (N).Nkind = N_And_Then
3425         or else NT (N).Nkind = N_Case_Expression_Alternative
3426         or else NT (N).Nkind = N_Compilation_Unit_Aux
3427         or else NT (N).Nkind = N_Compound_Statement
3428         or else NT (N).Nkind = N_Expression_With_Actions
3429         or else NT (N).Nkind = N_Freeze_Entity
3430         or else NT (N).Nkind = N_Or_Else);
3431       Set_List1_With_Parent (N, Val);
3432    end Set_Actions;
3433 
3434    procedure Set_Activation_Chain_Entity
3435       (N : Node_Id; Val : Node_Id) is
3436    begin
3437       pragma Assert (False
3438         or else NT (N).Nkind = N_Block_Statement
3439         or else NT (N).Nkind = N_Entry_Body
3440         or else NT (N).Nkind = N_Generic_Package_Declaration
3441         or else NT (N).Nkind = N_Package_Declaration
3442         or else NT (N).Nkind = N_Subprogram_Body
3443         or else NT (N).Nkind = N_Task_Body);
3444       Set_Node3 (N, Val); -- semantic field, no parent set
3445    end Set_Activation_Chain_Entity;
3446 
3447    procedure Set_Acts_As_Spec
3448       (N : Node_Id; Val : Boolean := True) is
3449    begin
3450       pragma Assert (False
3451         or else NT (N).Nkind = N_Compilation_Unit
3452         or else NT (N).Nkind = N_Subprogram_Body);
3453       Set_Flag4 (N, Val);
3454    end Set_Acts_As_Spec;
3455 
3456    procedure Set_Actual_Designated_Subtype
3457      (N : Node_Id; Val : Node_Id) is
3458    begin
3459       pragma Assert (False
3460         or else NT (N).Nkind = N_Explicit_Dereference
3461         or else NT (N).Nkind = N_Free_Statement);
3462       Set_Node4 (N, Val);
3463    end Set_Actual_Designated_Subtype;
3464 
3465    procedure Set_Address_Warning_Posted
3466       (N : Node_Id; Val : Boolean := True) is
3467    begin
3468       pragma Assert (False
3469         or else NT (N).Nkind = N_Attribute_Definition_Clause);
3470       Set_Flag18 (N, Val);
3471    end Set_Address_Warning_Posted;
3472 
3473    procedure Set_Aggregate_Bounds
3474       (N : Node_Id; Val : Node_Id) is
3475    begin
3476       pragma Assert (False
3477         or else NT (N).Nkind = N_Aggregate);
3478       Set_Node3 (N, Val); -- semantic field, no parent set
3479    end Set_Aggregate_Bounds;
3480 
3481    procedure Set_Aliased_Present
3482       (N : Node_Id; Val : Boolean := True) is
3483    begin
3484       pragma Assert (False
3485         or else NT (N).Nkind = N_Component_Definition
3486         or else NT (N).Nkind = N_Object_Declaration
3487         or else NT (N).Nkind = N_Parameter_Specification);
3488       Set_Flag4 (N, Val);
3489    end Set_Aliased_Present;
3490 
3491    procedure Set_All_Others
3492       (N : Node_Id; Val : Boolean := True) is
3493    begin
3494       pragma Assert (False
3495         or else NT (N).Nkind = N_Others_Choice);
3496       Set_Flag11 (N, Val);
3497    end Set_All_Others;
3498 
3499    procedure Set_All_Present
3500       (N : Node_Id; Val : Boolean := True) is
3501    begin
3502       pragma Assert (False
3503         or else NT (N).Nkind = N_Access_Definition
3504         or else NT (N).Nkind = N_Access_To_Object_Definition
3505         or else NT (N).Nkind = N_Quantified_Expression
3506         or else NT (N).Nkind = N_Use_Type_Clause);
3507       Set_Flag15 (N, Val);
3508    end Set_All_Present;
3509 
3510    procedure Set_Alternatives
3511       (N : Node_Id; Val : List_Id) is
3512    begin
3513       pragma Assert (False
3514         or else NT (N).Nkind = N_Case_Expression
3515         or else NT (N).Nkind = N_Case_Statement
3516         or else NT (N).Nkind = N_In
3517         or else NT (N).Nkind = N_Not_In);
3518       Set_List4_With_Parent (N, Val);
3519    end Set_Alternatives;
3520 
3521    procedure Set_Ancestor_Part
3522       (N : Node_Id; Val : Node_Id) is
3523    begin
3524       pragma Assert (False
3525         or else NT (N).Nkind = N_Extension_Aggregate);
3526       Set_Node3_With_Parent (N, Val);
3527    end Set_Ancestor_Part;
3528 
3529    procedure Set_Atomic_Sync_Required
3530       (N : Node_Id; Val : Boolean := True) is
3531    begin
3532       pragma Assert (False
3533         or else NT (N).Nkind = N_Expanded_Name
3534         or else NT (N).Nkind = N_Explicit_Dereference
3535         or else NT (N).Nkind = N_Identifier
3536         or else NT (N).Nkind = N_Indexed_Component
3537         or else NT (N).Nkind = N_Selected_Component);
3538       Set_Flag14 (N, Val);
3539    end Set_Atomic_Sync_Required;
3540 
3541    procedure Set_Array_Aggregate
3542       (N : Node_Id; Val : Node_Id) is
3543    begin
3544       pragma Assert (False
3545         or else NT (N).Nkind = N_Enumeration_Representation_Clause);
3546       Set_Node3_With_Parent (N, Val);
3547    end Set_Array_Aggregate;
3548 
3549    procedure Set_Aspect_Rep_Item
3550       (N : Node_Id; Val : Node_Id) is
3551    begin
3552       pragma Assert (False
3553         or else NT (N).Nkind = N_Aspect_Specification);
3554       Set_Node2 (N, Val);
3555    end Set_Aspect_Rep_Item;
3556 
3557    procedure Set_Assignment_OK
3558       (N : Node_Id; Val : Boolean := True) is
3559    begin
3560       pragma Assert (False
3561         or else NT (N).Nkind = N_Object_Declaration
3562         or else NT (N).Nkind in N_Subexpr);
3563       Set_Flag15 (N, Val);
3564    end Set_Assignment_OK;
3565 
3566    procedure Set_Associated_Node
3567       (N : Node_Id; Val : Node_Id) is
3568    begin
3569       pragma Assert (False
3570         or else NT (N).Nkind in N_Has_Entity
3571         or else NT (N).Nkind = N_Aggregate
3572         or else NT (N).Nkind = N_Extension_Aggregate
3573         or else NT (N).Nkind = N_Selected_Component);
3574       Set_Node4 (N, Val); -- semantic field, no parent set
3575    end Set_Associated_Node;
3576 
3577    procedure Set_At_End_Proc
3578       (N : Node_Id; Val : Node_Id) is
3579    begin
3580       pragma Assert (False
3581         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
3582       Set_Node1 (N, Val);
3583    end Set_At_End_Proc;
3584 
3585    procedure Set_Attribute_Name
3586       (N : Node_Id; Val : Name_Id) is
3587    begin
3588       pragma Assert (False
3589         or else NT (N).Nkind = N_Attribute_Reference);
3590       Set_Name2 (N, Val);
3591    end Set_Attribute_Name;
3592 
3593    procedure Set_Aux_Decls_Node
3594       (N : Node_Id; Val : Node_Id) is
3595    begin
3596       pragma Assert (False
3597         or else NT (N).Nkind = N_Compilation_Unit);
3598       Set_Node5_With_Parent (N, Val);
3599    end Set_Aux_Decls_Node;
3600 
3601    procedure Set_Backwards_OK
3602       (N : Node_Id; Val : Boolean := True) is
3603    begin
3604       pragma Assert (False
3605         or else NT (N).Nkind = N_Assignment_Statement);
3606       Set_Flag6 (N, Val);
3607    end Set_Backwards_OK;
3608 
3609    procedure Set_Bad_Is_Detected
3610       (N : Node_Id; Val : Boolean := True) is
3611    begin
3612       pragma Assert (False
3613         or else NT (N).Nkind = N_Subprogram_Body);
3614       Set_Flag15 (N, Val);
3615    end Set_Bad_Is_Detected;
3616 
3617    procedure Set_Body_Required
3618       (N : Node_Id; Val : Boolean := True) is
3619    begin
3620       pragma Assert (False
3621         or else NT (N).Nkind = N_Compilation_Unit);
3622       Set_Flag13 (N, Val);
3623    end Set_Body_Required;
3624 
3625    procedure Set_Body_To_Inline
3626       (N : Node_Id; Val : Node_Id) is
3627    begin
3628       pragma Assert (False
3629         or else NT (N).Nkind = N_Subprogram_Declaration);
3630       Set_Node3 (N, Val);
3631    end Set_Body_To_Inline;
3632 
3633    procedure Set_Box_Present
3634       (N : Node_Id; Val : Boolean := True) is
3635    begin
3636       pragma Assert (False
3637         or else NT (N).Nkind = N_Component_Association
3638         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
3639         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
3640         or else NT (N).Nkind = N_Formal_Package_Declaration
3641         or else NT (N).Nkind = N_Generic_Association);
3642       Set_Flag15 (N, Val);
3643    end Set_Box_Present;
3644 
3645    procedure Set_By_Ref
3646       (N : Node_Id; Val : Boolean := True) is
3647    begin
3648       pragma Assert (False
3649         or else NT (N).Nkind = N_Extended_Return_Statement
3650         or else NT (N).Nkind = N_Simple_Return_Statement);
3651       Set_Flag5 (N, Val);
3652    end Set_By_Ref;
3653 
3654    procedure Set_Char_Literal_Value
3655       (N : Node_Id; Val : Uint) is
3656    begin
3657       pragma Assert (False
3658         or else NT (N).Nkind = N_Character_Literal);
3659       Set_Uint2 (N, Val);
3660    end Set_Char_Literal_Value;
3661 
3662    procedure Set_Chars
3663       (N : Node_Id; Val : Name_Id) is
3664    begin
3665       pragma Assert (False
3666         or else NT (N).Nkind in N_Has_Chars);
3667       Set_Name1 (N, Val);
3668    end Set_Chars;
3669 
3670    procedure Set_Check_Address_Alignment
3671       (N : Node_Id; Val : Boolean := True) is
3672    begin
3673       pragma Assert (False
3674           or else NT (N).Nkind = N_Attribute_Definition_Clause);
3675       Set_Flag11 (N, Val);
3676    end Set_Check_Address_Alignment;
3677 
3678    procedure Set_Choice_Parameter
3679       (N : Node_Id; Val : Node_Id) is
3680    begin
3681       pragma Assert (False
3682         or else NT (N).Nkind = N_Exception_Handler);
3683       Set_Node2_With_Parent (N, Val);
3684    end Set_Choice_Parameter;
3685 
3686    procedure Set_Choices
3687       (N : Node_Id; Val : List_Id) is
3688    begin
3689       pragma Assert (False
3690         or else NT (N).Nkind = N_Component_Association);
3691       Set_List1_With_Parent (N, Val);
3692    end Set_Choices;
3693 
3694    procedure Set_Class_Present
3695       (N : Node_Id; Val : Boolean := True) is
3696    begin
3697       pragma Assert (False
3698         or else NT (N).Nkind = N_Aspect_Specification
3699         or else NT (N).Nkind = N_Pragma);
3700       Set_Flag6 (N, Val);
3701    end Set_Class_Present;
3702 
3703    procedure Set_Classifications
3704       (N : Node_Id; Val : Node_Id) is
3705    begin
3706       pragma Assert (False
3707         or else NT (N).Nkind = N_Contract);
3708       Set_Node3 (N, Val); -- semantic field, no parent set
3709    end Set_Classifications;
3710 
3711    procedure Set_Cleanup_Actions
3712       (N : Node_Id; Val : List_Id) is
3713    begin
3714       pragma Assert (False
3715         or else NT (N).Nkind = N_Block_Statement);
3716       Set_List5 (N, Val); -- semantic field, no parent set
3717    end Set_Cleanup_Actions;
3718 
3719    procedure Set_Comes_From_Extended_Return_Statement
3720       (N : Node_Id; Val : Boolean := True) is
3721    begin
3722       pragma Assert (False
3723         or else NT (N).Nkind = N_Simple_Return_Statement);
3724       Set_Flag18 (N, Val);
3725    end Set_Comes_From_Extended_Return_Statement;
3726 
3727    procedure Set_Compile_Time_Known_Aggregate
3728       (N : Node_Id; Val : Boolean := True) is
3729    begin
3730       pragma Assert (False
3731         or else NT (N).Nkind = N_Aggregate);
3732       Set_Flag18 (N, Val);
3733    end Set_Compile_Time_Known_Aggregate;
3734 
3735    procedure Set_Component_Associations
3736       (N : Node_Id; Val : List_Id) is
3737    begin
3738       pragma Assert (False
3739         or else NT (N).Nkind = N_Aggregate
3740         or else NT (N).Nkind = N_Extension_Aggregate);
3741       Set_List2_With_Parent (N, Val);
3742    end Set_Component_Associations;
3743 
3744    procedure Set_Component_Clauses
3745       (N : Node_Id; Val : List_Id) is
3746    begin
3747       pragma Assert (False
3748         or else NT (N).Nkind = N_Record_Representation_Clause);
3749       Set_List3_With_Parent (N, Val);
3750    end Set_Component_Clauses;
3751 
3752    procedure Set_Component_Definition
3753       (N : Node_Id; Val : Node_Id) is
3754    begin
3755       pragma Assert (False
3756         or else NT (N).Nkind = N_Component_Declaration
3757         or else NT (N).Nkind = N_Constrained_Array_Definition
3758         or else NT (N).Nkind = N_Unconstrained_Array_Definition);
3759       Set_Node4_With_Parent (N, Val);
3760    end Set_Component_Definition;
3761 
3762    procedure Set_Component_Items
3763       (N : Node_Id; Val : List_Id) is
3764    begin
3765       pragma Assert (False
3766         or else NT (N).Nkind = N_Component_List);
3767       Set_List3_With_Parent (N, Val);
3768    end Set_Component_Items;
3769 
3770    procedure Set_Component_List
3771       (N : Node_Id; Val : Node_Id) is
3772    begin
3773       pragma Assert (False
3774         or else NT (N).Nkind = N_Record_Definition
3775         or else NT (N).Nkind = N_Variant);
3776       Set_Node1_With_Parent (N, Val);
3777    end Set_Component_List;
3778 
3779    procedure Set_Component_Name
3780       (N : Node_Id; Val : Node_Id) is
3781    begin
3782       pragma Assert (False
3783         or else NT (N).Nkind = N_Component_Clause);
3784       Set_Node1_With_Parent (N, Val);
3785    end Set_Component_Name;
3786 
3787    procedure Set_Componentwise_Assignment
3788       (N : Node_Id; Val : Boolean := True) is
3789    begin
3790       pragma Assert (False
3791         or else NT (N).Nkind = N_Assignment_Statement);
3792       Set_Flag14 (N, Val);
3793    end Set_Componentwise_Assignment;
3794 
3795    procedure Set_Condition
3796       (N : Node_Id; Val : Node_Id) is
3797    begin
3798       pragma Assert (False
3799         or else NT (N).Nkind = N_Accept_Alternative
3800         or else NT (N).Nkind = N_Delay_Alternative
3801         or else NT (N).Nkind = N_Elsif_Part
3802         or else NT (N).Nkind = N_Entry_Body_Formal_Part
3803         or else NT (N).Nkind = N_Exit_Statement
3804         or else NT (N).Nkind = N_If_Statement
3805         or else NT (N).Nkind = N_Iteration_Scheme
3806         or else NT (N).Nkind = N_Quantified_Expression
3807         or else NT (N).Nkind = N_Raise_Constraint_Error
3808         or else NT (N).Nkind = N_Raise_Program_Error
3809         or else NT (N).Nkind = N_Raise_Storage_Error
3810         or else NT (N).Nkind = N_Terminate_Alternative);
3811       Set_Node1_With_Parent (N, Val);
3812    end Set_Condition;
3813 
3814    procedure Set_Condition_Actions
3815       (N : Node_Id; Val : List_Id) is
3816    begin
3817       pragma Assert (False
3818         or else NT (N).Nkind = N_Elsif_Part
3819         or else NT (N).Nkind = N_Iteration_Scheme);
3820       Set_List3 (N, Val); -- semantic field, no parent set
3821    end Set_Condition_Actions;
3822 
3823    procedure Set_Config_Pragmas
3824       (N : Node_Id; Val : List_Id) is
3825    begin
3826       pragma Assert (False
3827         or else NT (N).Nkind = N_Compilation_Unit_Aux);
3828       Set_List4_With_Parent (N, Val);
3829    end Set_Config_Pragmas;
3830 
3831    procedure Set_Constant_Present
3832       (N : Node_Id; Val : Boolean := True) is
3833    begin
3834       pragma Assert (False
3835         or else NT (N).Nkind = N_Access_Definition
3836         or else NT (N).Nkind = N_Access_To_Object_Definition
3837         or else NT (N).Nkind = N_Object_Declaration);
3838       Set_Flag17 (N, Val);
3839    end Set_Constant_Present;
3840 
3841    procedure Set_Constraint
3842       (N : Node_Id; Val : Node_Id) is
3843    begin
3844       pragma Assert (False
3845         or else NT (N).Nkind = N_Subtype_Indication);
3846       Set_Node3_With_Parent (N, Val);
3847    end Set_Constraint;
3848 
3849    procedure Set_Constraints
3850       (N : Node_Id; Val : List_Id) is
3851    begin
3852       pragma Assert (False
3853         or else NT (N).Nkind = N_Index_Or_Discriminant_Constraint);
3854       Set_List1_With_Parent (N, Val);
3855    end Set_Constraints;
3856 
3857    procedure Set_Context_Installed
3858       (N : Node_Id; Val : Boolean := True) is
3859    begin
3860       pragma Assert (False
3861         or else NT (N).Nkind = N_With_Clause);
3862       Set_Flag13 (N, Val);
3863    end Set_Context_Installed;
3864 
3865    procedure Set_Context_Items
3866       (N : Node_Id; Val : List_Id) is
3867    begin
3868       pragma Assert (False
3869         or else NT (N).Nkind = N_Compilation_Unit);
3870       Set_List1_With_Parent (N, Val);
3871    end Set_Context_Items;
3872 
3873    procedure Set_Context_Pending
3874       (N : Node_Id; Val : Boolean := True) is
3875    begin
3876       pragma Assert (False
3877         or else NT (N).Nkind = N_Compilation_Unit);
3878       Set_Flag16 (N, Val);
3879    end Set_Context_Pending;
3880 
3881    procedure Set_Contract_Test_Cases
3882       (N : Node_Id; Val : Node_Id) is
3883    begin
3884       pragma Assert (False
3885         or else NT (N).Nkind = N_Contract);
3886       Set_Node2 (N, Val); -- semantic field, no parent set
3887    end Set_Contract_Test_Cases;
3888 
3889    procedure Set_Controlling_Argument
3890       (N : Node_Id; Val : Node_Id) is
3891    begin
3892       pragma Assert (False
3893         or else NT (N).Nkind = N_Function_Call
3894         or else NT (N).Nkind = N_Procedure_Call_Statement);
3895       Set_Node1 (N, Val); -- semantic field, no parent set
3896    end Set_Controlling_Argument;
3897 
3898    procedure Set_Conversion_OK
3899       (N : Node_Id; Val : Boolean := True) is
3900    begin
3901       pragma Assert (False
3902         or else NT (N).Nkind = N_Type_Conversion);
3903       Set_Flag14 (N, Val);
3904    end Set_Conversion_OK;
3905 
3906    procedure Set_Convert_To_Return_False
3907       (N : Node_Id; Val : Boolean := True) is
3908    begin
3909       pragma Assert (False
3910         or else NT (N).Nkind = N_Raise_Expression);
3911       Set_Flag13 (N, Val);
3912    end Set_Convert_To_Return_False;
3913 
3914    procedure Set_Corresponding_Aspect
3915       (N : Node_Id; Val : Node_Id) is
3916    begin
3917       pragma Assert (False
3918         or else NT (N).Nkind = N_Pragma);
3919       Set_Node3 (N, Val);
3920    end Set_Corresponding_Aspect;
3921 
3922    procedure Set_Corresponding_Body
3923       (N : Node_Id; Val : Node_Id) is
3924    begin
3925       pragma Assert (False
3926         or else NT (N).Nkind = N_Entry_Declaration
3927         or else NT (N).Nkind = N_Generic_Package_Declaration
3928         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
3929         or else NT (N).Nkind = N_Package_Body_Stub
3930         or else NT (N).Nkind = N_Package_Declaration
3931         or else NT (N).Nkind = N_Protected_Body_Stub
3932         or else NT (N).Nkind = N_Protected_Type_Declaration
3933         or else NT (N).Nkind = N_Subprogram_Body_Stub
3934         or else NT (N).Nkind = N_Subprogram_Declaration
3935         or else NT (N).Nkind = N_Task_Body_Stub
3936         or else NT (N).Nkind = N_Task_Type_Declaration);
3937       Set_Node5 (N, Val); -- semantic field, no parent set
3938    end Set_Corresponding_Body;
3939 
3940    procedure Set_Corresponding_Formal_Spec
3941       (N : Node_Id; Val : Node_Id) is
3942    begin
3943       pragma Assert (False
3944         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
3945       Set_Node3 (N, Val); -- semantic field, no parent set
3946    end Set_Corresponding_Formal_Spec;
3947 
3948    procedure Set_Corresponding_Generic_Association
3949       (N : Node_Id; Val : Node_Id) is
3950    begin
3951       pragma Assert (False
3952         or else NT (N).Nkind = N_Object_Declaration
3953         or else NT (N).Nkind = N_Object_Renaming_Declaration);
3954       Set_Node5 (N, Val); -- semantic field, no parent set
3955    end Set_Corresponding_Generic_Association;
3956 
3957    procedure Set_Corresponding_Integer_Value
3958       (N : Node_Id; Val : Uint) is
3959    begin
3960       pragma Assert (False
3961         or else NT (N).Nkind = N_Real_Literal);
3962       Set_Uint4 (N, Val); -- semantic field, no parent set
3963    end Set_Corresponding_Integer_Value;
3964 
3965    procedure Set_Corresponding_Spec
3966       (N : Node_Id; Val : Entity_Id) is
3967    begin
3968       pragma Assert (False
3969         or else NT (N).Nkind = N_Expression_Function
3970         or else NT (N).Nkind = N_Package_Body
3971         or else NT (N).Nkind = N_Protected_Body
3972         or else NT (N).Nkind = N_Subprogram_Body
3973         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
3974         or else NT (N).Nkind = N_Task_Body
3975         or else NT (N).Nkind = N_With_Clause);
3976       Set_Node5 (N, Val); -- semantic field, no parent set
3977    end Set_Corresponding_Spec;
3978 
3979    procedure Set_Corresponding_Spec_Of_Stub
3980       (N : Node_Id; Val : Entity_Id) is
3981    begin
3982       pragma Assert (False
3983         or else NT (N).Nkind = N_Package_Body_Stub
3984         or else NT (N).Nkind = N_Protected_Body_Stub
3985         or else NT (N).Nkind = N_Subprogram_Body_Stub
3986         or else NT (N).Nkind = N_Task_Body_Stub);
3987       Set_Node2 (N, Val); -- semantic field, no parent set
3988    end Set_Corresponding_Spec_Of_Stub;
3989 
3990    procedure Set_Corresponding_Stub
3991       (N : Node_Id; Val : Node_Id) is
3992    begin
3993       pragma Assert (False
3994         or else NT (N).Nkind = N_Subunit);
3995       Set_Node3 (N, Val);
3996    end Set_Corresponding_Stub;
3997 
3998    procedure Set_Dcheck_Function
3999       (N : Node_Id; Val : Entity_Id) is
4000    begin
4001       pragma Assert (False
4002         or else NT (N).Nkind = N_Variant);
4003       Set_Node5 (N, Val); -- semantic field, no parent set
4004    end Set_Dcheck_Function;
4005 
4006    procedure Set_Declarations
4007       (N : Node_Id; Val : List_Id) is
4008    begin
4009       pragma Assert (False
4010         or else NT (N).Nkind = N_Accept_Statement
4011         or else NT (N).Nkind = N_Block_Statement
4012         or else NT (N).Nkind = N_Compilation_Unit_Aux
4013         or else NT (N).Nkind = N_Entry_Body
4014         or else NT (N).Nkind = N_Package_Body
4015         or else NT (N).Nkind = N_Protected_Body
4016         or else NT (N).Nkind = N_Subprogram_Body
4017         or else NT (N).Nkind = N_Task_Body);
4018       Set_List2_With_Parent (N, Val);
4019    end Set_Declarations;
4020 
4021    procedure Set_Default_Expression
4022       (N : Node_Id; Val : Node_Id) is
4023    begin
4024       pragma Assert (False
4025         or else NT (N).Nkind = N_Formal_Object_Declaration
4026         or else NT (N).Nkind = N_Parameter_Specification);
4027       Set_Node5 (N, Val); -- semantic field, no parent set
4028    end Set_Default_Expression;
4029 
4030    procedure Set_Default_Storage_Pool
4031       (N : Node_Id; Val : Node_Id) is
4032    begin
4033       pragma Assert (False
4034         or else NT (N).Nkind = N_Compilation_Unit_Aux);
4035       Set_Node3 (N, Val); -- semantic field, no parent set
4036    end Set_Default_Storage_Pool;
4037 
4038    procedure Set_Default_Name
4039       (N : Node_Id; Val : Node_Id) is
4040    begin
4041       pragma Assert (False
4042         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
4043         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration);
4044       Set_Node2_With_Parent (N, Val);
4045    end Set_Default_Name;
4046 
4047    procedure Set_Defining_Identifier
4048       (N : Node_Id; Val : Entity_Id) is
4049    begin
4050       pragma Assert (False
4051         or else NT (N).Nkind = N_Component_Declaration
4052         or else NT (N).Nkind = N_Defining_Program_Unit_Name
4053         or else NT (N).Nkind = N_Discriminant_Specification
4054         or else NT (N).Nkind = N_Entry_Body
4055         or else NT (N).Nkind = N_Entry_Declaration
4056         or else NT (N).Nkind = N_Entry_Index_Specification
4057         or else NT (N).Nkind = N_Exception_Declaration
4058         or else NT (N).Nkind = N_Exception_Renaming_Declaration
4059         or else NT (N).Nkind = N_Formal_Object_Declaration
4060         or else NT (N).Nkind = N_Formal_Package_Declaration
4061         or else NT (N).Nkind = N_Formal_Type_Declaration
4062         or else NT (N).Nkind = N_Full_Type_Declaration
4063         or else NT (N).Nkind = N_Implicit_Label_Declaration
4064         or else NT (N).Nkind = N_Incomplete_Type_Declaration
4065         or else NT (N).Nkind = N_Iterator_Specification
4066         or else NT (N).Nkind = N_Loop_Parameter_Specification
4067         or else NT (N).Nkind = N_Number_Declaration
4068         or else NT (N).Nkind = N_Object_Declaration
4069         or else NT (N).Nkind = N_Object_Renaming_Declaration
4070         or else NT (N).Nkind = N_Package_Body_Stub
4071         or else NT (N).Nkind = N_Parameter_Specification
4072         or else NT (N).Nkind = N_Private_Extension_Declaration
4073         or else NT (N).Nkind = N_Private_Type_Declaration
4074         or else NT (N).Nkind = N_Protected_Body
4075         or else NT (N).Nkind = N_Protected_Body_Stub
4076         or else NT (N).Nkind = N_Protected_Type_Declaration
4077         or else NT (N).Nkind = N_Single_Protected_Declaration
4078         or else NT (N).Nkind = N_Single_Task_Declaration
4079         or else NT (N).Nkind = N_Subtype_Declaration
4080         or else NT (N).Nkind = N_Task_Body
4081         or else NT (N).Nkind = N_Task_Body_Stub
4082         or else NT (N).Nkind = N_Task_Type_Declaration);
4083       Set_Node1_With_Parent (N, Val);
4084    end Set_Defining_Identifier;
4085 
4086    procedure Set_Defining_Unit_Name
4087       (N : Node_Id; Val : Node_Id) is
4088    begin
4089       pragma Assert (False
4090         or else NT (N).Nkind = N_Function_Instantiation
4091         or else NT (N).Nkind = N_Function_Specification
4092         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
4093         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
4094         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
4095         or else NT (N).Nkind = N_Package_Body
4096         or else NT (N).Nkind = N_Package_Instantiation
4097         or else NT (N).Nkind = N_Package_Renaming_Declaration
4098         or else NT (N).Nkind = N_Package_Specification
4099         or else NT (N).Nkind = N_Procedure_Instantiation
4100         or else NT (N).Nkind = N_Procedure_Specification);
4101       Set_Node1_With_Parent (N, Val);
4102    end Set_Defining_Unit_Name;
4103 
4104    procedure Set_Delay_Alternative
4105       (N : Node_Id; Val : Node_Id) is
4106    begin
4107       pragma Assert (False
4108         or else NT (N).Nkind = N_Timed_Entry_Call);
4109       Set_Node4_With_Parent (N, Val);
4110    end Set_Delay_Alternative;
4111 
4112    procedure Set_Delay_Statement
4113       (N : Node_Id; Val : Node_Id) is
4114    begin
4115       pragma Assert (False
4116         or else NT (N).Nkind = N_Delay_Alternative);
4117       Set_Node2_With_Parent (N, Val);
4118    end Set_Delay_Statement;
4119 
4120    procedure Set_Delta_Expression
4121       (N : Node_Id; Val : Node_Id) is
4122    begin
4123       pragma Assert (False
4124         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4125         or else NT (N).Nkind = N_Delta_Constraint
4126         or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
4127       Set_Node3_With_Parent (N, Val);
4128    end Set_Delta_Expression;
4129 
4130    procedure Set_Digits_Expression
4131       (N : Node_Id; Val : Node_Id) is
4132    begin
4133       pragma Assert (False
4134         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
4135         or else NT (N).Nkind = N_Digits_Constraint
4136         or else NT (N).Nkind = N_Floating_Point_Definition);
4137       Set_Node2_With_Parent (N, Val);
4138    end Set_Digits_Expression;
4139 
4140    procedure Set_Discr_Check_Funcs_Built
4141       (N : Node_Id; Val : Boolean := True) is
4142    begin
4143       pragma Assert (False
4144         or else NT (N).Nkind = N_Full_Type_Declaration);
4145       Set_Flag11 (N, Val);
4146    end Set_Discr_Check_Funcs_Built;
4147 
4148    procedure Set_Discrete_Choices
4149       (N : Node_Id; Val : List_Id) is
4150    begin
4151       pragma Assert (False
4152         or else NT (N).Nkind = N_Case_Expression_Alternative
4153         or else NT (N).Nkind = N_Case_Statement_Alternative
4154         or else NT (N).Nkind = N_Variant);
4155       Set_List4_With_Parent (N, Val);
4156    end Set_Discrete_Choices;
4157 
4158    procedure Set_Discrete_Range
4159       (N : Node_Id; Val : Node_Id) is
4160    begin
4161       pragma Assert (False
4162         or else NT (N).Nkind = N_Slice);
4163       Set_Node4_With_Parent (N, Val);
4164    end Set_Discrete_Range;
4165 
4166    procedure Set_Discrete_Subtype_Definition
4167       (N : Node_Id; Val : Node_Id) is
4168    begin
4169       pragma Assert (False
4170         or else NT (N).Nkind = N_Entry_Declaration
4171         or else NT (N).Nkind = N_Entry_Index_Specification
4172         or else NT (N).Nkind = N_Loop_Parameter_Specification);
4173       Set_Node4_With_Parent (N, Val);
4174    end Set_Discrete_Subtype_Definition;
4175 
4176    procedure Set_Discrete_Subtype_Definitions
4177       (N : Node_Id; Val : List_Id) is
4178    begin
4179       pragma Assert (False
4180         or else NT (N).Nkind = N_Constrained_Array_Definition);
4181       Set_List2_With_Parent (N, Val);
4182    end Set_Discrete_Subtype_Definitions;
4183 
4184    procedure Set_Discriminant_Specifications
4185       (N : Node_Id; Val : List_Id) is
4186    begin
4187       pragma Assert (False
4188         or else NT (N).Nkind = N_Formal_Type_Declaration
4189         or else NT (N).Nkind = N_Full_Type_Declaration
4190         or else NT (N).Nkind = N_Incomplete_Type_Declaration
4191         or else NT (N).Nkind = N_Private_Extension_Declaration
4192         or else NT (N).Nkind = N_Private_Type_Declaration
4193         or else NT (N).Nkind = N_Protected_Type_Declaration
4194         or else NT (N).Nkind = N_Task_Type_Declaration);
4195       Set_List4_With_Parent (N, Val);
4196    end Set_Discriminant_Specifications;
4197 
4198    procedure Set_Discriminant_Type
4199       (N : Node_Id; Val : Node_Id) is
4200    begin
4201       pragma Assert (False
4202         or else NT (N).Nkind = N_Discriminant_Specification);
4203       Set_Node5_With_Parent (N, Val);
4204    end Set_Discriminant_Type;
4205 
4206    procedure Set_Do_Accessibility_Check
4207       (N : Node_Id; Val : Boolean := True) is
4208    begin
4209       pragma Assert (False
4210         or else NT (N).Nkind = N_Parameter_Specification);
4211       Set_Flag13 (N, Val);
4212    end Set_Do_Accessibility_Check;
4213 
4214    procedure Set_Do_Discriminant_Check
4215       (N : Node_Id; Val : Boolean := True) is
4216    begin
4217       pragma Assert (False
4218         or else NT (N).Nkind = N_Assignment_Statement
4219         or else NT (N).Nkind = N_Selected_Component
4220         or else NT (N).Nkind = N_Type_Conversion);
4221       Set_Flag1 (N, Val);
4222    end Set_Do_Discriminant_Check;
4223 
4224    procedure Set_Do_Division_Check
4225       (N : Node_Id; Val : Boolean := True) is
4226    begin
4227       pragma Assert (False
4228         or else NT (N).Nkind = N_Op_Divide
4229         or else NT (N).Nkind = N_Op_Mod
4230         or else NT (N).Nkind = N_Op_Rem);
4231       Set_Flag13 (N, Val);
4232    end Set_Do_Division_Check;
4233 
4234    procedure Set_Do_Length_Check
4235       (N : Node_Id; Val : Boolean := True) is
4236    begin
4237       pragma Assert (False
4238         or else NT (N).Nkind = N_Assignment_Statement
4239         or else NT (N).Nkind = N_Op_And
4240         or else NT (N).Nkind = N_Op_Or
4241         or else NT (N).Nkind = N_Op_Xor
4242         or else NT (N).Nkind = N_Type_Conversion);
4243       Set_Flag4 (N, Val);
4244    end Set_Do_Length_Check;
4245 
4246    procedure Set_Do_Overflow_Check
4247       (N : Node_Id; Val : Boolean := True) is
4248    begin
4249       pragma Assert (False
4250         or else NT (N).Nkind in N_Op
4251         or else NT (N).Nkind = N_Attribute_Reference
4252         or else NT (N).Nkind = N_Case_Expression
4253         or else NT (N).Nkind = N_If_Expression
4254         or else NT (N).Nkind = N_Type_Conversion);
4255       Set_Flag17 (N, Val);
4256    end Set_Do_Overflow_Check;
4257 
4258    procedure Set_Do_Range_Check
4259       (N : Node_Id; Val : Boolean := True) is
4260    begin
4261       pragma Assert (False
4262         or else NT (N).Nkind in N_Subexpr);
4263       Set_Flag9 (N, Val);
4264    end Set_Do_Range_Check;
4265 
4266    procedure Set_Do_Storage_Check
4267       (N : Node_Id; Val : Boolean := True) is
4268    begin
4269       pragma Assert (False
4270         or else NT (N).Nkind = N_Allocator
4271         or else NT (N).Nkind = N_Subprogram_Body);
4272       Set_Flag17 (N, Val);
4273    end Set_Do_Storage_Check;
4274 
4275    procedure Set_Do_Tag_Check
4276       (N : Node_Id; Val : Boolean := True) is
4277    begin
4278       pragma Assert (False
4279         or else NT (N).Nkind = N_Assignment_Statement
4280         or else NT (N).Nkind = N_Extended_Return_Statement
4281         or else NT (N).Nkind = N_Function_Call
4282         or else NT (N).Nkind = N_Procedure_Call_Statement
4283         or else NT (N).Nkind = N_Simple_Return_Statement
4284         or else NT (N).Nkind = N_Type_Conversion);
4285       Set_Flag13 (N, Val);
4286    end Set_Do_Tag_Check;
4287 
4288    procedure Set_Elaborate_All_Desirable
4289       (N : Node_Id; Val : Boolean := True) is
4290    begin
4291       pragma Assert (False
4292         or else NT (N).Nkind = N_With_Clause);
4293       Set_Flag9 (N, Val);
4294    end Set_Elaborate_All_Desirable;
4295 
4296    procedure Set_Elaborate_All_Present
4297       (N : Node_Id; Val : Boolean := True) is
4298    begin
4299       pragma Assert (False
4300         or else NT (N).Nkind = N_With_Clause);
4301       Set_Flag14 (N, Val);
4302    end Set_Elaborate_All_Present;
4303 
4304    procedure Set_Elaborate_Desirable
4305       (N : Node_Id; Val : Boolean := True) is
4306    begin
4307       pragma Assert (False
4308         or else NT (N).Nkind = N_With_Clause);
4309       Set_Flag11 (N, Val);
4310    end Set_Elaborate_Desirable;
4311 
4312    procedure Set_Elaborate_Present
4313       (N : Node_Id; Val : Boolean := True) is
4314    begin
4315       pragma Assert (False
4316         or else NT (N).Nkind = N_With_Clause);
4317       Set_Flag4 (N, Val);
4318    end Set_Elaborate_Present;
4319 
4320    procedure Set_Else_Actions
4321       (N : Node_Id; Val : List_Id) is
4322    begin
4323       pragma Assert (False
4324         or else NT (N).Nkind = N_If_Expression);
4325       Set_List3_With_Parent (N, Val); -- semantic field, but needs parents
4326    end Set_Else_Actions;
4327 
4328    procedure Set_Else_Statements
4329       (N : Node_Id; Val : List_Id) is
4330    begin
4331       pragma Assert (False
4332         or else NT (N).Nkind = N_Conditional_Entry_Call
4333         or else NT (N).Nkind = N_If_Statement
4334         or else NT (N).Nkind = N_Selective_Accept);
4335       Set_List4_With_Parent (N, Val);
4336    end Set_Else_Statements;
4337 
4338    procedure Set_Elsif_Parts
4339       (N : Node_Id; Val : List_Id) is
4340    begin
4341       pragma Assert (False
4342         or else NT (N).Nkind = N_If_Statement);
4343       Set_List3_With_Parent (N, Val);
4344    end Set_Elsif_Parts;
4345 
4346    procedure Set_Enclosing_Variant
4347       (N : Node_Id; Val : Node_Id) is
4348    begin
4349       pragma Assert (False
4350         or else NT (N).Nkind = N_Variant);
4351       Set_Node2 (N, Val); -- semantic field, no parent set
4352    end Set_Enclosing_Variant;
4353 
4354    procedure Set_End_Label
4355       (N : Node_Id; Val : Node_Id) is
4356    begin
4357       pragma Assert (False
4358         or else NT (N).Nkind = N_Enumeration_Type_Definition
4359         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
4360         or else NT (N).Nkind = N_Loop_Statement
4361         or else NT (N).Nkind = N_Package_Specification
4362         or else NT (N).Nkind = N_Protected_Body
4363         or else NT (N).Nkind = N_Protected_Definition
4364         or else NT (N).Nkind = N_Record_Definition
4365         or else NT (N).Nkind = N_Task_Definition);
4366       Set_Node4_With_Parent (N, Val);
4367    end Set_End_Label;
4368 
4369    procedure Set_End_Span
4370       (N : Node_Id; Val : Uint) is
4371    begin
4372       pragma Assert (False
4373         or else NT (N).Nkind = N_Case_Statement
4374         or else NT (N).Nkind = N_If_Statement);
4375       Set_Uint5 (N, Val);
4376    end Set_End_Span;
4377 
4378    procedure Set_Entity
4379       (N : Node_Id; Val : Node_Id) is
4380    begin
4381       pragma Assert (False
4382         or else NT (N).Nkind in N_Has_Entity
4383         or else NT (N).Nkind = N_Aspect_Specification
4384         or else NT (N).Nkind = N_Attribute_Definition_Clause
4385         or else NT (N).Nkind = N_Freeze_Entity
4386         or else NT (N).Nkind = N_Freeze_Generic_Entity);
4387       Set_Node4 (N, Val); -- semantic field, no parent set
4388    end Set_Entity;
4389 
4390    procedure Set_Entry_Body_Formal_Part
4391       (N : Node_Id; Val : Node_Id) is
4392    begin
4393       pragma Assert (False
4394         or else NT (N).Nkind = N_Entry_Body);
4395       Set_Node5_With_Parent (N, Val);
4396    end Set_Entry_Body_Formal_Part;
4397 
4398    procedure Set_Entry_Call_Alternative
4399       (N : Node_Id; Val : Node_Id) is
4400    begin
4401       pragma Assert (False
4402         or else NT (N).Nkind = N_Conditional_Entry_Call
4403         or else NT (N).Nkind = N_Timed_Entry_Call);
4404       Set_Node1_With_Parent (N, Val);
4405    end Set_Entry_Call_Alternative;
4406 
4407    procedure Set_Entry_Call_Statement
4408       (N : Node_Id; Val : Node_Id) is
4409    begin
4410       pragma Assert (False
4411         or else NT (N).Nkind = N_Entry_Call_Alternative);
4412       Set_Node1_With_Parent (N, Val);
4413    end Set_Entry_Call_Statement;
4414 
4415    procedure Set_Entry_Direct_Name
4416       (N : Node_Id; Val : Node_Id) is
4417    begin
4418       pragma Assert (False
4419         or else NT (N).Nkind = N_Accept_Statement);
4420       Set_Node1_With_Parent (N, Val);
4421    end Set_Entry_Direct_Name;
4422 
4423    procedure Set_Entry_Index
4424       (N : Node_Id; Val : Node_Id) is
4425    begin
4426       pragma Assert (False
4427         or else NT (N).Nkind = N_Accept_Statement);
4428       Set_Node5_With_Parent (N, Val);
4429    end Set_Entry_Index;
4430 
4431    procedure Set_Entry_Index_Specification
4432       (N : Node_Id; Val : Node_Id) is
4433    begin
4434       pragma Assert (False
4435         or else NT (N).Nkind = N_Entry_Body_Formal_Part);
4436       Set_Node4_With_Parent (N, Val);
4437    end Set_Entry_Index_Specification;
4438 
4439    procedure Set_Etype
4440       (N : Node_Id; Val : Node_Id) is
4441    begin
4442       pragma Assert (False
4443         or else NT (N).Nkind in N_Has_Etype);
4444       Set_Node5 (N, Val); -- semantic field, no parent set
4445    end Set_Etype;
4446 
4447    procedure Set_Exception_Choices
4448       (N : Node_Id; Val : List_Id) is
4449    begin
4450       pragma Assert (False
4451         or else NT (N).Nkind = N_Exception_Handler);
4452       Set_List4_With_Parent (N, Val);
4453    end Set_Exception_Choices;
4454 
4455    procedure Set_Exception_Handlers
4456       (N : Node_Id; Val : List_Id) is
4457    begin
4458       pragma Assert (False
4459         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4460       Set_List5_With_Parent (N, Val);
4461    end Set_Exception_Handlers;
4462 
4463    procedure Set_Exception_Junk
4464      (N : Node_Id; Val : Boolean := True) is
4465    begin
4466       pragma Assert (False
4467         or else NT (N).Nkind = N_Block_Statement
4468         or else NT (N).Nkind = N_Goto_Statement
4469         or else NT (N).Nkind = N_Label
4470         or else NT (N).Nkind = N_Object_Declaration
4471         or else NT (N).Nkind = N_Subtype_Declaration);
4472       Set_Flag8 (N, Val);
4473    end Set_Exception_Junk;
4474 
4475    procedure Set_Exception_Label
4476      (N : Node_Id; Val : Node_Id) is
4477    begin
4478       pragma Assert (False
4479         or else NT (N).Nkind = N_Exception_Handler
4480         or else NT (N).Nkind = N_Push_Constraint_Error_Label
4481         or else NT (N).Nkind = N_Push_Program_Error_Label
4482         or else NT (N).Nkind = N_Push_Storage_Error_Label);
4483       Set_Node5 (N, Val); -- semantic field, no parent set
4484    end Set_Exception_Label;
4485 
4486    procedure Set_Expansion_Delayed
4487      (N : Node_Id; Val : Boolean := True) is
4488    begin
4489       pragma Assert (False
4490         or else NT (N).Nkind = N_Aggregate
4491         or else NT (N).Nkind = N_Extension_Aggregate);
4492       Set_Flag11 (N, Val);
4493    end Set_Expansion_Delayed;
4494 
4495    procedure Set_Explicit_Actual_Parameter
4496       (N : Node_Id; Val : Node_Id) is
4497    begin
4498       pragma Assert (False
4499         or else NT (N).Nkind = N_Parameter_Association);
4500       Set_Node3_With_Parent (N, Val);
4501    end Set_Explicit_Actual_Parameter;
4502 
4503    procedure Set_Explicit_Generic_Actual_Parameter
4504       (N : Node_Id; Val : Node_Id) is
4505    begin
4506       pragma Assert (False
4507         or else NT (N).Nkind = N_Generic_Association);
4508       Set_Node1_With_Parent (N, Val);
4509    end Set_Explicit_Generic_Actual_Parameter;
4510 
4511    procedure Set_Expression
4512       (N : Node_Id; Val : Node_Id) is
4513    begin
4514       pragma Assert (False
4515         or else NT (N).Nkind = N_Allocator
4516         or else NT (N).Nkind = N_Aspect_Specification
4517         or else NT (N).Nkind = N_Assignment_Statement
4518         or else NT (N).Nkind = N_At_Clause
4519         or else NT (N).Nkind = N_Attribute_Definition_Clause
4520         or else NT (N).Nkind = N_Case_Expression
4521         or else NT (N).Nkind = N_Case_Expression_Alternative
4522         or else NT (N).Nkind = N_Case_Statement
4523         or else NT (N).Nkind = N_Code_Statement
4524         or else NT (N).Nkind = N_Component_Association
4525         or else NT (N).Nkind = N_Component_Declaration
4526         or else NT (N).Nkind = N_Delay_Relative_Statement
4527         or else NT (N).Nkind = N_Delay_Until_Statement
4528         or else NT (N).Nkind = N_Discriminant_Association
4529         or else NT (N).Nkind = N_Discriminant_Specification
4530         or else NT (N).Nkind = N_Exception_Declaration
4531         or else NT (N).Nkind = N_Expression_Function
4532         or else NT (N).Nkind = N_Expression_With_Actions
4533         or else NT (N).Nkind = N_Free_Statement
4534         or else NT (N).Nkind = N_Mod_Clause
4535         or else NT (N).Nkind = N_Modular_Type_Definition
4536         or else NT (N).Nkind = N_Number_Declaration
4537         or else NT (N).Nkind = N_Object_Declaration
4538         or else NT (N).Nkind = N_Parameter_Specification
4539         or else NT (N).Nkind = N_Pragma_Argument_Association
4540         or else NT (N).Nkind = N_Qualified_Expression
4541         or else NT (N).Nkind = N_Raise_Expression
4542         or else NT (N).Nkind = N_Raise_Statement
4543         or else NT (N).Nkind = N_Simple_Return_Statement
4544         or else NT (N).Nkind = N_Type_Conversion
4545         or else NT (N).Nkind = N_Unchecked_Expression
4546         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
4547       Set_Node3_With_Parent (N, Val);
4548    end Set_Expression;
4549 
4550    procedure Set_Expressions
4551       (N : Node_Id; Val : List_Id) is
4552    begin
4553       pragma Assert (False
4554         or else NT (N).Nkind = N_Aggregate
4555         or else NT (N).Nkind = N_Attribute_Reference
4556         or else NT (N).Nkind = N_Extension_Aggregate
4557         or else NT (N).Nkind = N_If_Expression
4558         or else NT (N).Nkind = N_Indexed_Component);
4559       Set_List1_With_Parent (N, Val);
4560    end Set_Expressions;
4561 
4562    procedure Set_First_Bit
4563       (N : Node_Id; Val : Node_Id) is
4564    begin
4565       pragma Assert (False
4566         or else NT (N).Nkind = N_Component_Clause);
4567       Set_Node3_With_Parent (N, Val);
4568    end Set_First_Bit;
4569 
4570    procedure Set_First_Inlined_Subprogram
4571       (N : Node_Id; Val : Entity_Id) is
4572    begin
4573       pragma Assert (False
4574         or else NT (N).Nkind = N_Compilation_Unit);
4575       Set_Node3 (N, Val);  -- semantic field, no parent set
4576    end Set_First_Inlined_Subprogram;
4577 
4578    procedure Set_First_Name
4579       (N : Node_Id; Val : Boolean := True) is
4580    begin
4581       pragma Assert (False
4582         or else NT (N).Nkind = N_With_Clause);
4583       Set_Flag5 (N, Val);
4584    end Set_First_Name;
4585 
4586    procedure Set_First_Named_Actual
4587       (N : Node_Id; Val : Node_Id) is
4588    begin
4589       pragma Assert (False
4590         or else NT (N).Nkind = N_Entry_Call_Statement
4591         or else NT (N).Nkind = N_Function_Call
4592         or else NT (N).Nkind = N_Procedure_Call_Statement);
4593       Set_Node4 (N, Val); -- semantic field, no parent set
4594    end Set_First_Named_Actual;
4595 
4596    procedure Set_First_Real_Statement
4597       (N : Node_Id; Val : Node_Id) is
4598    begin
4599       pragma Assert (False
4600         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements);
4601       Set_Node2 (N, Val); -- semantic field, no parent set
4602    end Set_First_Real_Statement;
4603 
4604    procedure Set_First_Subtype_Link
4605       (N : Node_Id; Val : Entity_Id) is
4606    begin
4607       pragma Assert (False
4608         or else NT (N).Nkind = N_Freeze_Entity);
4609       Set_Node5 (N, Val); -- semantic field, no parent set
4610    end Set_First_Subtype_Link;
4611 
4612    procedure Set_Float_Truncate
4613       (N : Node_Id; Val : Boolean := True) is
4614    begin
4615       pragma Assert (False
4616         or else NT (N).Nkind = N_Type_Conversion);
4617       Set_Flag11 (N, Val);
4618    end Set_Float_Truncate;
4619 
4620    procedure Set_Formal_Type_Definition
4621       (N : Node_Id; Val : Node_Id) is
4622    begin
4623       pragma Assert (False
4624         or else NT (N).Nkind = N_Formal_Type_Declaration);
4625       Set_Node3_With_Parent (N, Val);
4626    end Set_Formal_Type_Definition;
4627 
4628    procedure Set_Forwards_OK
4629       (N : Node_Id; Val : Boolean := True) is
4630    begin
4631       pragma Assert (False
4632         or else NT (N).Nkind = N_Assignment_Statement);
4633       Set_Flag5 (N, Val);
4634    end Set_Forwards_OK;
4635 
4636    procedure Set_From_Aspect_Specification
4637       (N : Node_Id; Val : Boolean := True) is
4638    begin
4639       pragma Assert (False
4640         or else NT (N).Nkind = N_Attribute_Definition_Clause
4641         or else NT (N).Nkind = N_Pragma);
4642       Set_Flag13 (N, Val);
4643    end Set_From_Aspect_Specification;
4644 
4645    procedure Set_From_At_End
4646       (N : Node_Id; Val : Boolean := True) is
4647    begin
4648       pragma Assert (False
4649         or else NT (N).Nkind = N_Raise_Statement);
4650       Set_Flag4 (N, Val);
4651    end Set_From_At_End;
4652 
4653    procedure Set_From_At_Mod
4654       (N : Node_Id; Val : Boolean := True) is
4655    begin
4656       pragma Assert (False
4657         or else NT (N).Nkind = N_Attribute_Definition_Clause);
4658       Set_Flag4 (N, Val);
4659    end Set_From_At_Mod;
4660 
4661    procedure Set_From_Conditional_Expression
4662       (N : Node_Id; Val : Boolean := True) is
4663    begin
4664       pragma Assert (False
4665         or else NT (N).Nkind = N_Case_Statement
4666         or else NT (N).Nkind = N_If_Statement);
4667       Set_Flag1 (N, Val);
4668    end Set_From_Conditional_Expression;
4669 
4670    procedure Set_From_Default
4671       (N : Node_Id; Val : Boolean := True) is
4672    begin
4673       pragma Assert (False
4674         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
4675       Set_Flag6 (N, Val);
4676    end Set_From_Default;
4677 
4678    procedure Set_Generalized_Indexing
4679       (N : Node_Id; Val : Node_Id) is
4680    begin
4681       pragma Assert (False
4682         or else NT (N).Nkind = N_Indexed_Component);
4683       Set_Node4 (N, Val);
4684    end Set_Generalized_Indexing;
4685 
4686    procedure Set_Generic_Associations
4687       (N : Node_Id; Val : List_Id) is
4688    begin
4689       pragma Assert (False
4690         or else NT (N).Nkind = N_Formal_Package_Declaration
4691         or else NT (N).Nkind = N_Function_Instantiation
4692         or else NT (N).Nkind = N_Package_Instantiation
4693         or else NT (N).Nkind = N_Procedure_Instantiation);
4694       Set_List3_With_Parent (N, Val);
4695    end Set_Generic_Associations;
4696 
4697    procedure Set_Generic_Formal_Declarations
4698       (N : Node_Id; Val : List_Id) is
4699    begin
4700       pragma Assert (False
4701         or else NT (N).Nkind = N_Generic_Package_Declaration
4702         or else NT (N).Nkind = N_Generic_Subprogram_Declaration);
4703       Set_List2_With_Parent (N, Val);
4704    end Set_Generic_Formal_Declarations;
4705 
4706    procedure Set_Generic_Parent
4707       (N : Node_Id; Val : Node_Id) is
4708    begin
4709       pragma Assert (False
4710         or else NT (N).Nkind = N_Function_Specification
4711         or else NT (N).Nkind = N_Package_Specification
4712         or else NT (N).Nkind = N_Procedure_Specification);
4713       Set_Node5 (N, Val);
4714    end Set_Generic_Parent;
4715 
4716    procedure Set_Generic_Parent_Type
4717       (N : Node_Id; Val : Node_Id) is
4718    begin
4719       pragma Assert (False
4720         or else NT (N).Nkind = N_Subtype_Declaration);
4721       Set_Node4 (N, Val);
4722    end Set_Generic_Parent_Type;
4723 
4724    procedure Set_Handled_Statement_Sequence
4725       (N : Node_Id; Val : Node_Id) is
4726    begin
4727       pragma Assert (False
4728         or else NT (N).Nkind = N_Accept_Statement
4729         or else NT (N).Nkind = N_Block_Statement
4730         or else NT (N).Nkind = N_Entry_Body
4731         or else NT (N).Nkind = N_Extended_Return_Statement
4732         or else NT (N).Nkind = N_Package_Body
4733         or else NT (N).Nkind = N_Subprogram_Body
4734         or else NT (N).Nkind = N_Task_Body);
4735       Set_Node4_With_Parent (N, Val);
4736    end Set_Handled_Statement_Sequence;
4737 
4738    procedure Set_Handler_List_Entry
4739       (N : Node_Id; Val : Node_Id) is
4740    begin
4741       pragma Assert (False
4742         or else NT (N).Nkind = N_Object_Declaration);
4743       Set_Node2 (N, Val);
4744    end Set_Handler_List_Entry;
4745 
4746    procedure Set_Has_Created_Identifier
4747       (N : Node_Id; Val : Boolean := True) is
4748    begin
4749       pragma Assert (False
4750         or else NT (N).Nkind = N_Block_Statement
4751         or else NT (N).Nkind = N_Loop_Statement);
4752       Set_Flag15 (N, Val);
4753    end Set_Has_Created_Identifier;
4754 
4755    procedure Set_Has_Dereference_Action
4756       (N : Node_Id; Val : Boolean := True) is
4757    begin
4758       pragma Assert (False
4759         or else NT (N).Nkind = N_Explicit_Dereference);
4760       Set_Flag13 (N, Val);
4761    end Set_Has_Dereference_Action;
4762 
4763    procedure Set_Has_Dynamic_Length_Check
4764       (N : Node_Id; Val : Boolean := True) is
4765    begin
4766       pragma Assert (False
4767         or else NT (N).Nkind in N_Subexpr);
4768       Set_Flag10 (N, Val);
4769    end Set_Has_Dynamic_Length_Check;
4770 
4771    procedure Set_Has_Dynamic_Range_Check
4772       (N : Node_Id; Val : Boolean := True) is
4773    begin
4774       pragma Assert (False
4775         or else NT (N).Nkind =  N_Subtype_Declaration
4776         or else NT (N).Nkind in N_Subexpr);
4777       Set_Flag12 (N, Val);
4778    end Set_Has_Dynamic_Range_Check;
4779 
4780    procedure Set_Has_Init_Expression
4781       (N : Node_Id; Val : Boolean := True) is
4782    begin
4783       pragma Assert (False
4784         or else NT (N).Nkind = N_Object_Declaration);
4785       Set_Flag14 (N, Val);
4786    end Set_Has_Init_Expression;
4787 
4788    procedure Set_Has_Local_Raise
4789       (N : Node_Id; Val : Boolean := True) is
4790    begin
4791       pragma Assert (False
4792         or else NT (N).Nkind = N_Exception_Handler);
4793       Set_Flag8 (N, Val);
4794    end Set_Has_Local_Raise;
4795 
4796    procedure Set_Has_No_Elaboration_Code
4797       (N : Node_Id; Val : Boolean := True) is
4798    begin
4799       pragma Assert (False
4800         or else NT (N).Nkind = N_Compilation_Unit);
4801       Set_Flag17 (N, Val);
4802    end Set_Has_No_Elaboration_Code;
4803 
4804    procedure Set_Has_Pragma_Suppress_All
4805       (N : Node_Id; Val : Boolean := True) is
4806    begin
4807       pragma Assert (False
4808         or else NT (N).Nkind = N_Compilation_Unit);
4809       Set_Flag14 (N, Val);
4810    end Set_Has_Pragma_Suppress_All;
4811 
4812    procedure Set_Has_Private_View
4813       (N : Node_Id; Val : Boolean := True) is
4814    begin
4815       pragma Assert (False
4816        or else NT (N).Nkind in N_Op
4817        or else NT (N).Nkind = N_Character_Literal
4818        or else NT (N).Nkind = N_Expanded_Name
4819        or else NT (N).Nkind = N_Identifier
4820        or else NT (N).Nkind = N_Operator_Symbol);
4821       Set_Flag11 (N, Val);
4822    end Set_Has_Private_View;
4823 
4824    procedure Set_Has_Relative_Deadline_Pragma
4825       (N : Node_Id; Val : Boolean := True) is
4826    begin
4827       pragma Assert (False
4828         or else NT (N).Nkind = N_Subprogram_Body
4829         or else NT (N).Nkind = N_Task_Definition);
4830       Set_Flag9 (N, Val);
4831    end Set_Has_Relative_Deadline_Pragma;
4832 
4833    procedure Set_Has_Self_Reference
4834       (N : Node_Id; Val : Boolean := True) is
4835    begin
4836       pragma Assert (False
4837         or else NT (N).Nkind = N_Aggregate
4838         or else NT (N).Nkind = N_Extension_Aggregate);
4839       Set_Flag13 (N, Val);
4840    end Set_Has_Self_Reference;
4841 
4842    procedure Set_Has_SP_Choice
4843       (N : Node_Id; Val : Boolean := True) is
4844    begin
4845       pragma Assert (False
4846         or else NT (N).Nkind = N_Case_Expression_Alternative
4847         or else NT (N).Nkind = N_Case_Statement_Alternative
4848         or else NT (N).Nkind = N_Variant);
4849       Set_Flag15 (N, Val);
4850    end Set_Has_SP_Choice;
4851 
4852    procedure Set_Has_Storage_Size_Pragma
4853       (N : Node_Id; Val : Boolean := True) is
4854    begin
4855       pragma Assert (False
4856         or else NT (N).Nkind = N_Task_Definition);
4857       Set_Flag5 (N, Val);
4858    end Set_Has_Storage_Size_Pragma;
4859 
4860    procedure Set_Has_Wide_Character
4861       (N : Node_Id; Val : Boolean := True) is
4862    begin
4863       pragma Assert (False
4864         or else NT (N).Nkind = N_String_Literal);
4865       Set_Flag11 (N, Val);
4866    end Set_Has_Wide_Character;
4867 
4868    procedure Set_Has_Wide_Wide_Character
4869       (N : Node_Id; Val : Boolean := True) is
4870    begin
4871       pragma Assert (False
4872         or else NT (N).Nkind = N_String_Literal);
4873       Set_Flag13 (N, Val);
4874    end Set_Has_Wide_Wide_Character;
4875 
4876    procedure Set_Header_Size_Added
4877       (N : Node_Id; Val : Boolean := True) is
4878    begin
4879       pragma Assert (False
4880         or else NT (N).Nkind = N_Attribute_Reference);
4881       Set_Flag11 (N, Val);
4882    end Set_Header_Size_Added;
4883 
4884    procedure Set_Hidden_By_Use_Clause
4885      (N : Node_Id; Val : Elist_Id) is
4886    begin
4887       pragma Assert (False
4888         or else NT (N).Nkind = N_Use_Package_Clause
4889         or else NT (N).Nkind = N_Use_Type_Clause);
4890       Set_Elist4 (N, Val);
4891    end Set_Hidden_By_Use_Clause;
4892 
4893    procedure Set_High_Bound
4894       (N : Node_Id; Val : Node_Id) is
4895    begin
4896       pragma Assert (False
4897         or else NT (N).Nkind = N_Range
4898         or else NT (N).Nkind = N_Real_Range_Specification
4899         or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
4900       Set_Node2_With_Parent (N, Val);
4901    end Set_High_Bound;
4902 
4903    procedure Set_Identifier
4904       (N : Node_Id; Val : Node_Id) is
4905    begin
4906       pragma Assert (False
4907         or else NT (N).Nkind = N_Aspect_Specification
4908         or else NT (N).Nkind = N_At_Clause
4909         or else NT (N).Nkind = N_Block_Statement
4910         or else NT (N).Nkind = N_Designator
4911         or else NT (N).Nkind = N_Enumeration_Representation_Clause
4912         or else NT (N).Nkind = N_Label
4913         or else NT (N).Nkind = N_Loop_Statement
4914         or else NT (N).Nkind = N_Record_Representation_Clause);
4915       Set_Node1_With_Parent (N, Val);
4916    end Set_Identifier;
4917 
4918    procedure Set_Implicit_With
4919       (N : Node_Id; Val : Boolean := True) is
4920    begin
4921       pragma Assert (False
4922         or else NT (N).Nkind = N_With_Clause);
4923       Set_Flag16 (N, Val);
4924    end Set_Implicit_With;
4925 
4926    procedure Set_Implicit_With_From_Instantiation
4927       (N : Node_Id; Val : Boolean := True) is
4928    begin
4929       pragma Assert (False
4930         or else NT (N).Nkind = N_With_Clause);
4931       Set_Flag12 (N, Val);
4932    end Set_Implicit_With_From_Instantiation;
4933 
4934    procedure Set_Interface_List
4935       (N : Node_Id; Val : List_Id) is
4936    begin
4937       pragma Assert (False
4938         or else NT (N).Nkind = N_Derived_Type_Definition
4939         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
4940         or else NT (N).Nkind = N_Private_Extension_Declaration
4941         or else NT (N).Nkind = N_Protected_Type_Declaration
4942         or else NT (N).Nkind = N_Record_Definition
4943         or else NT (N).Nkind = N_Single_Protected_Declaration
4944         or else NT (N).Nkind = N_Single_Task_Declaration
4945         or else NT (N).Nkind = N_Task_Type_Declaration);
4946       Set_List2_With_Parent (N, Val);
4947    end Set_Interface_List;
4948 
4949    procedure Set_Interface_Present
4950       (N : Node_Id; Val : Boolean := True) is
4951    begin
4952       pragma Assert (False
4953         or else NT (N).Nkind = N_Derived_Type_Definition
4954         or else NT (N).Nkind = N_Record_Definition);
4955       Set_Flag16 (N, Val);
4956    end Set_Interface_Present;
4957 
4958    procedure Set_Import_Interface_Present
4959       (N : Node_Id; Val : Boolean := True) is
4960    begin
4961       pragma Assert (False
4962         or else NT (N).Nkind = N_Pragma);
4963       Set_Flag16 (N, Val);
4964    end Set_Import_Interface_Present;
4965 
4966    procedure Set_In_Present
4967       (N : Node_Id; Val : Boolean := True) is
4968    begin
4969       pragma Assert (False
4970         or else NT (N).Nkind = N_Formal_Object_Declaration
4971         or else NT (N).Nkind = N_Parameter_Specification);
4972       Set_Flag15 (N, Val);
4973    end Set_In_Present;
4974 
4975    procedure Set_Includes_Infinities
4976       (N : Node_Id; Val : Boolean := True) is
4977    begin
4978       pragma Assert (False
4979         or else NT (N).Nkind = N_Range);
4980       Set_Flag11 (N, Val);
4981    end Set_Includes_Infinities;
4982 
4983    procedure Set_Incomplete_View
4984      (N : Node_Id; Val : Node_Id) is
4985    begin
4986       pragma Assert (False
4987         or else NT (N).Nkind = N_Full_Type_Declaration);
4988       Set_Node2 (N, Val); --  semantic field, no Parent set
4989    end Set_Incomplete_View;
4990 
4991    procedure Set_Inherited_Discriminant
4992       (N : Node_Id; Val : Boolean := True) is
4993    begin
4994       pragma Assert (False
4995         or else NT (N).Nkind = N_Component_Association);
4996       Set_Flag13 (N, Val);
4997    end Set_Inherited_Discriminant;
4998 
4999    procedure Set_Instance_Spec
5000       (N : Node_Id; Val : Node_Id) is
5001    begin
5002       pragma Assert (False
5003         or else NT (N).Nkind = N_Formal_Package_Declaration
5004         or else NT (N).Nkind = N_Function_Instantiation
5005         or else NT (N).Nkind = N_Package_Instantiation
5006         or else NT (N).Nkind = N_Procedure_Instantiation);
5007       Set_Node5 (N, Val); -- semantic field, no Parent set
5008    end Set_Instance_Spec;
5009 
5010    procedure Set_Intval
5011       (N : Node_Id; Val : Uint) is
5012    begin
5013       pragma Assert (False
5014         or else NT (N).Nkind = N_Integer_Literal);
5015       Set_Uint3 (N, Val);
5016    end Set_Intval;
5017 
5018    procedure Set_Is_Accessibility_Actual
5019       (N : Node_Id; Val : Boolean := True) is
5020    begin
5021       pragma Assert (False
5022         or else NT (N).Nkind = N_Parameter_Association);
5023       Set_Flag13 (N, Val);
5024    end Set_Is_Accessibility_Actual;
5025 
5026    procedure Set_Is_Analyzed_Pragma
5027       (N : Node_Id; Val : Boolean := True) is
5028    begin
5029       pragma Assert (False
5030         or else NT (N).Nkind = N_Pragma);
5031       Set_Flag5 (N, Val);
5032    end Set_Is_Analyzed_Pragma;
5033 
5034    procedure Set_Is_Asynchronous_Call_Block
5035       (N : Node_Id; Val : Boolean := True) is
5036    begin
5037       pragma Assert (False
5038         or else NT (N).Nkind = N_Block_Statement);
5039       Set_Flag7 (N, Val);
5040    end Set_Is_Asynchronous_Call_Block;
5041 
5042    procedure Set_Is_Boolean_Aspect
5043       (N : Node_Id; Val : Boolean := True) is
5044    begin
5045       pragma Assert (False
5046         or else NT (N).Nkind = N_Aspect_Specification);
5047       Set_Flag16 (N, Val);
5048    end Set_Is_Boolean_Aspect;
5049 
5050    procedure Set_Is_Checked
5051       (N : Node_Id; Val : Boolean := True) is
5052    begin
5053       pragma Assert (False
5054         or else NT (N).Nkind = N_Aspect_Specification
5055         or else NT (N).Nkind = N_Pragma);
5056       Set_Flag11 (N, Val);
5057    end Set_Is_Checked;
5058 
5059    procedure Set_Is_Component_Left_Opnd
5060       (N : Node_Id; Val : Boolean := True) is
5061    begin
5062       pragma Assert (False
5063         or else NT (N).Nkind = N_Op_Concat);
5064       Set_Flag13 (N, Val);
5065    end Set_Is_Component_Left_Opnd;
5066 
5067    procedure Set_Is_Component_Right_Opnd
5068       (N : Node_Id; Val : Boolean := True) is
5069    begin
5070       pragma Assert (False
5071         or else NT (N).Nkind = N_Op_Concat);
5072       Set_Flag14 (N, Val);
5073    end Set_Is_Component_Right_Opnd;
5074 
5075    procedure Set_Is_Controlling_Actual
5076       (N : Node_Id; Val : Boolean := True) is
5077    begin
5078       pragma Assert (False
5079         or else NT (N).Nkind in N_Subexpr);
5080       Set_Flag16 (N, Val);
5081    end Set_Is_Controlling_Actual;
5082 
5083    procedure Set_Is_Delayed_Aspect
5084       (N : Node_Id; Val : Boolean := True) is
5085    begin
5086       pragma Assert (False
5087         or else NT (N).Nkind = N_Aspect_Specification
5088         or else NT (N).Nkind = N_Attribute_Definition_Clause
5089         or else NT (N).Nkind = N_Pragma);
5090       Set_Flag14 (N, Val);
5091    end Set_Is_Delayed_Aspect;
5092 
5093    procedure Set_Is_Disabled
5094       (N : Node_Id; Val : Boolean := True) is
5095    begin
5096       pragma Assert (False
5097         or else NT (N).Nkind = N_Aspect_Specification
5098         or else NT (N).Nkind = N_Pragma);
5099       Set_Flag15 (N, Val);
5100    end Set_Is_Disabled;
5101 
5102    procedure Set_Is_Dynamic_Coextension
5103       (N : Node_Id; Val : Boolean := True) is
5104    begin
5105       pragma Assert (False
5106         or else NT (N).Nkind = N_Allocator);
5107       Set_Flag18 (N, Val);
5108    end Set_Is_Dynamic_Coextension;
5109 
5110    procedure Set_Is_Elsif
5111      (N : Node_Id; Val : Boolean := True) is
5112    begin
5113       pragma Assert (False
5114         or else NT (N).Nkind = N_If_Expression);
5115       Set_Flag13 (N, Val);
5116    end Set_Is_Elsif;
5117 
5118    procedure Set_Is_Entry_Barrier_Function
5119       (N : Node_Id; Val : Boolean := True) is
5120    begin
5121       pragma Assert (False
5122         or else NT (N).Nkind = N_Subprogram_Body
5123         or else NT (N).Nkind = N_Subprogram_Declaration);
5124       Set_Flag8 (N, Val);
5125    end Set_Is_Entry_Barrier_Function;
5126 
5127    procedure Set_Is_Expanded_Build_In_Place_Call
5128       (N : Node_Id; Val : Boolean := True) is
5129    begin
5130       pragma Assert (False
5131         or else NT (N).Nkind = N_Function_Call);
5132       Set_Flag11 (N, Val);
5133    end Set_Is_Expanded_Build_In_Place_Call;
5134 
5135    procedure Set_Is_Expanded_Contract
5136       (N : Node_Id; Val : Boolean := True) is
5137    begin
5138       pragma Assert (False
5139         or else NT (N).Nkind = N_Contract);
5140       Set_Flag1 (N, Val);
5141    end Set_Is_Expanded_Contract;
5142 
5143    procedure Set_Is_Finalization_Wrapper
5144       (N : Node_Id; Val : Boolean := True) is
5145    begin
5146       pragma Assert (False
5147         or else NT (N).Nkind = N_Block_Statement);
5148       Set_Flag9 (N, Val);
5149    end Set_Is_Finalization_Wrapper;
5150 
5151    procedure Set_Is_Folded_In_Parser
5152       (N : Node_Id; Val : Boolean := True) is
5153    begin
5154       pragma Assert (False
5155         or else NT (N).Nkind = N_String_Literal);
5156       Set_Flag4 (N, Val);
5157    end Set_Is_Folded_In_Parser;
5158 
5159    procedure Set_Is_Generic_Contract_Pragma
5160       (N : Node_Id; Val : Boolean := True) is
5161    begin
5162       pragma Assert (False
5163         or else NT (N).Nkind = N_Pragma);
5164       Set_Flag2 (N, Val);
5165    end Set_Is_Generic_Contract_Pragma;
5166 
5167    procedure Set_Is_Ghost_Pragma
5168       (N : Node_Id; Val : Boolean := True) is
5169    begin
5170       pragma Assert (False
5171         or else NT (N).Nkind = N_Pragma);
5172       Set_Flag3 (N, Val);
5173    end Set_Is_Ghost_Pragma;
5174 
5175    procedure Set_Is_Ignored
5176       (N : Node_Id; Val : Boolean := True) is
5177    begin
5178       pragma Assert (False
5179         or else NT (N).Nkind = N_Aspect_Specification
5180         or else NT (N).Nkind = N_Pragma);
5181       Set_Flag9 (N, Val);
5182    end Set_Is_Ignored;
5183 
5184    procedure Set_Is_In_Discriminant_Check
5185       (N : Node_Id; Val : Boolean := True) is
5186    begin
5187       pragma Assert (False
5188         or else NT (N).Nkind = N_Selected_Component);
5189       Set_Flag11 (N, Val);
5190    end Set_Is_In_Discriminant_Check;
5191 
5192    procedure Set_Is_Inherited_Pragma
5193       (N : Node_Id; Val : Boolean := True) is
5194    begin
5195       pragma Assert (False
5196         or else NT (N).Nkind = N_Pragma);
5197       Set_Flag4 (N, Val);
5198    end Set_Is_Inherited_Pragma;
5199 
5200    procedure Set_Is_Machine_Number
5201       (N : Node_Id; Val : Boolean := True) is
5202    begin
5203       pragma Assert (False
5204         or else NT (N).Nkind = N_Real_Literal);
5205       Set_Flag11 (N, Val);
5206    end Set_Is_Machine_Number;
5207 
5208    procedure Set_Is_Null_Loop
5209       (N : Node_Id; Val : Boolean := True) is
5210    begin
5211       pragma Assert (False
5212         or else NT (N).Nkind = N_Loop_Statement);
5213       Set_Flag16 (N, Val);
5214    end Set_Is_Null_Loop;
5215 
5216    procedure Set_Is_Overloaded
5217       (N : Node_Id; Val : Boolean := True) is
5218    begin
5219       pragma Assert (False
5220         or else NT (N).Nkind in N_Subexpr);
5221       Set_Flag5 (N, Val);
5222    end Set_Is_Overloaded;
5223 
5224    procedure Set_Is_Power_Of_2_For_Shift
5225       (N : Node_Id; Val : Boolean := True) is
5226    begin
5227       pragma Assert (False
5228         or else NT (N).Nkind = N_Op_Expon);
5229       Set_Flag13 (N, Val);
5230    end Set_Is_Power_Of_2_For_Shift;
5231 
5232    procedure Set_Is_Prefixed_Call
5233       (N : Node_Id; Val : Boolean := True) is
5234    begin
5235       pragma Assert (False
5236         or else NT (N).Nkind = N_Selected_Component);
5237       Set_Flag17 (N, Val);
5238    end Set_Is_Prefixed_Call;
5239 
5240    procedure Set_Is_Protected_Subprogram_Body
5241       (N : Node_Id; Val : Boolean := True) is
5242    begin
5243       pragma Assert (False
5244         or else NT (N).Nkind = N_Subprogram_Body);
5245       Set_Flag7 (N, Val);
5246    end Set_Is_Protected_Subprogram_Body;
5247 
5248    procedure Set_Is_Qualified_Universal_Literal
5249       (N : Node_Id; Val : Boolean := True) is
5250    begin
5251       pragma Assert (False
5252         or else NT (N).Nkind = N_Qualified_Expression);
5253       Set_Flag4 (N, Val);
5254    end Set_Is_Qualified_Universal_Literal;
5255 
5256    procedure Set_Is_Static_Coextension
5257       (N : Node_Id; Val : Boolean := True) is
5258    begin
5259       pragma Assert (False
5260         or else NT (N).Nkind = N_Allocator);
5261       Set_Flag14 (N, Val);
5262    end Set_Is_Static_Coextension;
5263 
5264    procedure Set_Is_Static_Expression
5265       (N : Node_Id; Val : Boolean := True) is
5266    begin
5267       pragma Assert (False
5268         or else NT (N).Nkind in N_Subexpr);
5269       Set_Flag6 (N, Val);
5270    end Set_Is_Static_Expression;
5271 
5272    procedure Set_Is_Subprogram_Descriptor
5273       (N : Node_Id; Val : Boolean := True) is
5274    begin
5275       pragma Assert (False
5276         or else NT (N).Nkind = N_Object_Declaration);
5277       Set_Flag16 (N, Val);
5278    end Set_Is_Subprogram_Descriptor;
5279 
5280    procedure Set_Is_Task_Allocation_Block
5281       (N : Node_Id; Val : Boolean := True) is
5282    begin
5283       pragma Assert (False
5284         or else NT (N).Nkind = N_Block_Statement);
5285       Set_Flag6 (N, Val);
5286    end Set_Is_Task_Allocation_Block;
5287 
5288    procedure Set_Is_Task_Body_Procedure
5289       (N : Node_Id; Val : Boolean := True) is
5290    begin
5291       pragma Assert (False
5292         or else NT (N).Nkind = N_Subprogram_Body
5293         or else NT (N).Nkind = N_Subprogram_Declaration);
5294       Set_Flag1 (N, Val);
5295    end Set_Is_Task_Body_Procedure;
5296 
5297    procedure Set_Is_Task_Master
5298       (N : Node_Id; Val : Boolean := True) is
5299    begin
5300       pragma Assert (False
5301         or else NT (N).Nkind = N_Block_Statement
5302         or else NT (N).Nkind = N_Subprogram_Body
5303         or else NT (N).Nkind = N_Task_Body);
5304       Set_Flag5 (N, Val);
5305    end Set_Is_Task_Master;
5306 
5307    procedure Set_Iteration_Scheme
5308       (N : Node_Id; Val : Node_Id) is
5309    begin
5310       pragma Assert (False
5311         or else NT (N).Nkind = N_Loop_Statement);
5312       Set_Node2_With_Parent (N, Val);
5313    end Set_Iteration_Scheme;
5314 
5315    procedure Set_Iterator_Specification
5316      (N : Node_Id; Val : Node_Id) is
5317    begin
5318       pragma Assert (False
5319         or else NT (N).Nkind = N_Iteration_Scheme
5320         or else NT (N).Nkind = N_Quantified_Expression);
5321       Set_Node2_With_Parent (N, Val);
5322    end Set_Iterator_Specification;
5323 
5324    procedure Set_Itype
5325       (N : Node_Id; Val : Entity_Id) is
5326    begin
5327       pragma Assert (False
5328       or else NT (N).Nkind = N_Itype_Reference);
5329       Set_Node1 (N, Val); -- no parent, semantic field
5330    end Set_Itype;
5331 
5332    procedure Set_Kill_Range_Check
5333       (N : Node_Id; Val : Boolean := True) is
5334    begin
5335       pragma Assert (False
5336         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
5337       Set_Flag11 (N, Val);
5338    end Set_Kill_Range_Check;
5339 
5340    procedure Set_Label_Construct
5341       (N : Node_Id; Val : Node_Id) is
5342    begin
5343       pragma Assert (False
5344         or else NT (N).Nkind = N_Implicit_Label_Declaration);
5345       Set_Node2 (N, Val); -- semantic field, no parent set
5346    end Set_Label_Construct;
5347 
5348    procedure Set_Last_Bit
5349       (N : Node_Id; Val : Node_Id) is
5350    begin
5351       pragma Assert (False
5352         or else NT (N).Nkind = N_Component_Clause);
5353       Set_Node4_With_Parent (N, Val);
5354    end Set_Last_Bit;
5355 
5356    procedure Set_Last_Name
5357       (N : Node_Id; Val : Boolean := True) is
5358    begin
5359       pragma Assert (False
5360         or else NT (N).Nkind = N_With_Clause);
5361       Set_Flag6 (N, Val);
5362    end Set_Last_Name;
5363 
5364    procedure Set_Left_Opnd
5365       (N : Node_Id; Val : Node_Id) is
5366    begin
5367       pragma Assert (False
5368         or else NT (N).Nkind = N_And_Then
5369         or else NT (N).Nkind = N_In
5370         or else NT (N).Nkind = N_Not_In
5371         or else NT (N).Nkind = N_Or_Else
5372         or else NT (N).Nkind in N_Binary_Op);
5373       Set_Node2_With_Parent (N, Val);
5374    end Set_Left_Opnd;
5375 
5376    procedure Set_Library_Unit
5377       (N : Node_Id; Val : Node_Id) is
5378    begin
5379       pragma Assert (False
5380         or else NT (N).Nkind = N_Compilation_Unit
5381         or else NT (N).Nkind = N_Package_Body_Stub
5382         or else NT (N).Nkind = N_Protected_Body_Stub
5383         or else NT (N).Nkind = N_Subprogram_Body_Stub
5384         or else NT (N).Nkind = N_Task_Body_Stub
5385         or else NT (N).Nkind = N_With_Clause);
5386       Set_Node4 (N, Val); -- semantic field, no parent set
5387    end Set_Library_Unit;
5388 
5389    procedure Set_Limited_View_Installed
5390       (N : Node_Id; Val : Boolean := True) is
5391    begin
5392       pragma Assert (False
5393         or else NT (N).Nkind = N_Package_Specification
5394         or else NT (N).Nkind = N_With_Clause);
5395       Set_Flag18 (N, Val);
5396    end Set_Limited_View_Installed;
5397 
5398    procedure Set_Limited_Present
5399       (N : Node_Id; Val : Boolean := True) is
5400    begin
5401       pragma Assert (False
5402         or else NT (N).Nkind = N_Derived_Type_Definition
5403         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5404         or else NT (N).Nkind = N_Formal_Private_Type_Definition
5405         or else NT (N).Nkind = N_Private_Extension_Declaration
5406         or else NT (N).Nkind = N_Private_Type_Declaration
5407         or else NT (N).Nkind = N_Record_Definition
5408         or else NT (N).Nkind = N_With_Clause);
5409       Set_Flag17 (N, Val);
5410    end Set_Limited_Present;
5411 
5412    procedure Set_Literals
5413       (N : Node_Id; Val : List_Id) is
5414    begin
5415       pragma Assert (False
5416         or else NT (N).Nkind = N_Enumeration_Type_Definition);
5417       Set_List1_With_Parent (N, Val);
5418    end Set_Literals;
5419 
5420    procedure Set_Local_Raise_Not_OK
5421       (N : Node_Id; Val : Boolean := True) is
5422    begin
5423       pragma Assert (False
5424         or else NT (N).Nkind = N_Exception_Handler);
5425       Set_Flag7 (N, Val);
5426    end Set_Local_Raise_Not_OK;
5427 
5428    procedure Set_Local_Raise_Statements
5429       (N : Node_Id; Val : Elist_Id) is
5430    begin
5431       pragma Assert (False
5432         or else NT (N).Nkind = N_Exception_Handler);
5433       Set_Elist1 (N, Val);
5434    end Set_Local_Raise_Statements;
5435 
5436    procedure Set_Loop_Actions
5437       (N : Node_Id; Val : List_Id) is
5438    begin
5439       pragma Assert (False
5440         or else NT (N).Nkind = N_Component_Association);
5441       Set_List2 (N, Val); -- semantic field, no parent set
5442    end Set_Loop_Actions;
5443 
5444    procedure Set_Loop_Parameter_Specification
5445       (N : Node_Id; Val : Node_Id) is
5446    begin
5447       pragma Assert (False
5448         or else NT (N).Nkind = N_Iteration_Scheme
5449         or else NT (N).Nkind = N_Quantified_Expression);
5450       Set_Node4_With_Parent (N, Val);
5451    end Set_Loop_Parameter_Specification;
5452 
5453    procedure Set_Low_Bound
5454       (N : Node_Id; Val : Node_Id) is
5455    begin
5456       pragma Assert (False
5457         or else NT (N).Nkind = N_Range
5458         or else NT (N).Nkind = N_Real_Range_Specification
5459         or else NT (N).Nkind = N_Signed_Integer_Type_Definition);
5460       Set_Node1_With_Parent (N, Val);
5461    end Set_Low_Bound;
5462 
5463    procedure Set_Mod_Clause
5464       (N : Node_Id; Val : Node_Id) is
5465    begin
5466       pragma Assert (False
5467         or else NT (N).Nkind = N_Record_Representation_Clause);
5468       Set_Node2_With_Parent (N, Val);
5469    end Set_Mod_Clause;
5470 
5471    procedure Set_More_Ids
5472       (N : Node_Id; Val : Boolean := True) is
5473    begin
5474       pragma Assert (False
5475         or else NT (N).Nkind = N_Component_Declaration
5476         or else NT (N).Nkind = N_Discriminant_Specification
5477         or else NT (N).Nkind = N_Exception_Declaration
5478         or else NT (N).Nkind = N_Formal_Object_Declaration
5479         or else NT (N).Nkind = N_Number_Declaration
5480         or else NT (N).Nkind = N_Object_Declaration
5481         or else NT (N).Nkind = N_Parameter_Specification);
5482       Set_Flag5 (N, Val);
5483    end Set_More_Ids;
5484 
5485    procedure Set_Must_Be_Byte_Aligned
5486       (N : Node_Id; Val : Boolean := True) is
5487    begin
5488       pragma Assert (False
5489         or else NT (N).Nkind = N_Attribute_Reference);
5490       Set_Flag14 (N, Val);
5491    end Set_Must_Be_Byte_Aligned;
5492 
5493    procedure Set_Must_Not_Freeze
5494       (N : Node_Id; Val : Boolean := True) is
5495    begin
5496       pragma Assert (False
5497         or else NT (N).Nkind = N_Subtype_Indication
5498         or else NT (N).Nkind in N_Subexpr);
5499       Set_Flag8 (N, Val);
5500    end Set_Must_Not_Freeze;
5501 
5502    procedure Set_Must_Not_Override
5503       (N : Node_Id; Val : Boolean := True) is
5504    begin
5505       pragma Assert (False
5506         or else NT (N).Nkind = N_Entry_Declaration
5507         or else NT (N).Nkind = N_Function_Instantiation
5508         or else NT (N).Nkind = N_Function_Specification
5509         or else NT (N).Nkind = N_Procedure_Instantiation
5510         or else NT (N).Nkind = N_Procedure_Specification);
5511       Set_Flag15 (N, Val);
5512    end Set_Must_Not_Override;
5513 
5514    procedure Set_Must_Override
5515       (N : Node_Id; Val : Boolean := True) is
5516    begin
5517       pragma Assert (False
5518         or else NT (N).Nkind = N_Entry_Declaration
5519         or else NT (N).Nkind = N_Function_Instantiation
5520         or else NT (N).Nkind = N_Function_Specification
5521         or else NT (N).Nkind = N_Procedure_Instantiation
5522         or else NT (N).Nkind = N_Procedure_Specification);
5523       Set_Flag14 (N, Val);
5524    end Set_Must_Override;
5525 
5526    procedure Set_Name
5527       (N : Node_Id; Val : Node_Id) is
5528    begin
5529       pragma Assert (False
5530         or else NT (N).Nkind = N_Assignment_Statement
5531         or else NT (N).Nkind = N_Attribute_Definition_Clause
5532         or else NT (N).Nkind = N_Defining_Program_Unit_Name
5533         or else NT (N).Nkind = N_Designator
5534         or else NT (N).Nkind = N_Entry_Call_Statement
5535         or else NT (N).Nkind = N_Exception_Renaming_Declaration
5536         or else NT (N).Nkind = N_Exit_Statement
5537         or else NT (N).Nkind = N_Formal_Package_Declaration
5538         or else NT (N).Nkind = N_Function_Call
5539         or else NT (N).Nkind = N_Function_Instantiation
5540         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
5541         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
5542         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
5543         or else NT (N).Nkind = N_Goto_Statement
5544         or else NT (N).Nkind = N_Iterator_Specification
5545         or else NT (N).Nkind = N_Object_Renaming_Declaration
5546         or else NT (N).Nkind = N_Package_Instantiation
5547         or else NT (N).Nkind = N_Package_Renaming_Declaration
5548         or else NT (N).Nkind = N_Procedure_Call_Statement
5549         or else NT (N).Nkind = N_Procedure_Instantiation
5550         or else NT (N).Nkind = N_Raise_Expression
5551         or else NT (N).Nkind = N_Raise_Statement
5552         or else NT (N).Nkind = N_Requeue_Statement
5553         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration
5554         or else NT (N).Nkind = N_Subunit
5555         or else NT (N).Nkind = N_Variant_Part
5556         or else NT (N).Nkind = N_With_Clause);
5557       Set_Node2_With_Parent (N, Val);
5558    end Set_Name;
5559 
5560    procedure Set_Names
5561       (N : Node_Id; Val : List_Id) is
5562    begin
5563       pragma Assert (False
5564         or else NT (N).Nkind = N_Abort_Statement
5565         or else NT (N).Nkind = N_Use_Package_Clause);
5566       Set_List2_With_Parent (N, Val);
5567    end Set_Names;
5568 
5569    procedure Set_Next_Entity
5570       (N : Node_Id; Val : Node_Id) is
5571    begin
5572       pragma Assert (False
5573         or else NT (N).Nkind = N_Defining_Character_Literal
5574         or else NT (N).Nkind = N_Defining_Identifier
5575         or else NT (N).Nkind = N_Defining_Operator_Symbol);
5576       Set_Node2 (N, Val); -- semantic field, no parent set
5577    end Set_Next_Entity;
5578 
5579    procedure Set_Next_Exit_Statement
5580       (N : Node_Id; Val : Node_Id) is
5581    begin
5582       pragma Assert (False
5583         or else NT (N).Nkind = N_Exit_Statement);
5584       Set_Node3 (N, Val); -- semantic field, no parent set
5585    end Set_Next_Exit_Statement;
5586 
5587    procedure Set_Next_Implicit_With
5588       (N : Node_Id; Val : Node_Id) is
5589    begin
5590       pragma Assert (False
5591         or else NT (N).Nkind = N_With_Clause);
5592       Set_Node3 (N, Val); -- semantic field, no parent set
5593    end Set_Next_Implicit_With;
5594 
5595    procedure Set_Next_Named_Actual
5596       (N : Node_Id; Val : Node_Id) is
5597    begin
5598       pragma Assert (False
5599         or else NT (N).Nkind = N_Parameter_Association);
5600       Set_Node4 (N, Val); -- semantic field, no parent set
5601    end Set_Next_Named_Actual;
5602 
5603    procedure Set_Next_Pragma
5604       (N : Node_Id; Val : Node_Id) is
5605    begin
5606       pragma Assert (False
5607         or else NT (N).Nkind = N_Pragma);
5608       Set_Node1 (N, Val); -- semantic field, no parent set
5609    end Set_Next_Pragma;
5610 
5611    procedure Set_Next_Rep_Item
5612       (N : Node_Id; Val : Node_Id) is
5613    begin
5614       pragma Assert (False
5615         or else NT (N).Nkind = N_Aspect_Specification
5616         or else NT (N).Nkind = N_Attribute_Definition_Clause
5617         or else NT (N).Nkind = N_Enumeration_Representation_Clause
5618         or else NT (N).Nkind = N_Pragma
5619         or else NT (N).Nkind = N_Record_Representation_Clause);
5620       Set_Node5 (N, Val); -- semantic field, no parent set
5621    end Set_Next_Rep_Item;
5622 
5623    procedure Set_Next_Use_Clause
5624       (N : Node_Id; Val : Node_Id) is
5625    begin
5626       pragma Assert (False
5627         or else NT (N).Nkind = N_Use_Package_Clause
5628         or else NT (N).Nkind = N_Use_Type_Clause);
5629       Set_Node3 (N, Val); -- semantic field, no parent set
5630    end Set_Next_Use_Clause;
5631 
5632    procedure Set_No_Ctrl_Actions
5633       (N : Node_Id; Val : Boolean := True) is
5634    begin
5635       pragma Assert (False
5636         or else NT (N).Nkind = N_Assignment_Statement);
5637       Set_Flag7 (N, Val);
5638    end Set_No_Ctrl_Actions;
5639 
5640    procedure Set_No_Elaboration_Check
5641       (N : Node_Id; Val : Boolean := True) is
5642    begin
5643       pragma Assert (False
5644         or else NT (N).Nkind = N_Function_Call
5645         or else NT (N).Nkind = N_Procedure_Call_Statement);
5646       Set_Flag14 (N, Val);
5647    end Set_No_Elaboration_Check;
5648 
5649    procedure Set_No_Entities_Ref_In_Spec
5650       (N : Node_Id; Val : Boolean := True) is
5651    begin
5652       pragma Assert (False
5653         or else NT (N).Nkind = N_With_Clause);
5654       Set_Flag8 (N, Val);
5655    end Set_No_Entities_Ref_In_Spec;
5656 
5657    procedure Set_No_Initialization
5658       (N : Node_Id; Val : Boolean := True) is
5659    begin
5660       pragma Assert (False
5661         or else NT (N).Nkind = N_Allocator
5662         or else NT (N).Nkind = N_Object_Declaration);
5663       Set_Flag13 (N, Val);
5664    end Set_No_Initialization;
5665 
5666    procedure Set_No_Minimize_Eliminate
5667       (N : Node_Id; Val : Boolean := True) is
5668    begin
5669       pragma Assert (False
5670         or else NT (N).Nkind = N_In
5671         or else NT (N).Nkind = N_Not_In);
5672       Set_Flag17 (N, Val);
5673    end Set_No_Minimize_Eliminate;
5674 
5675    procedure Set_No_Side_Effect_Removal
5676       (N : Node_Id; Val : Boolean := True) is
5677    begin
5678       pragma Assert (False
5679         or else NT (N).Nkind = N_Function_Call);
5680       Set_Flag1 (N, Val);
5681    end Set_No_Side_Effect_Removal;
5682 
5683    procedure Set_No_Truncation
5684       (N : Node_Id; Val : Boolean := True) is
5685    begin
5686       pragma Assert (False
5687         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
5688       Set_Flag17 (N, Val);
5689    end Set_No_Truncation;
5690 
5691    procedure Set_Non_Aliased_Prefix
5692      (N : Node_Id; Val : Boolean := True) is
5693    begin
5694       pragma Assert (False
5695         or else NT (N).Nkind = N_Attribute_Reference);
5696       Set_Flag18 (N, Val);
5697    end Set_Non_Aliased_Prefix;
5698 
5699    procedure Set_Null_Present
5700       (N : Node_Id; Val : Boolean := True) is
5701    begin
5702       pragma Assert (False
5703         or else NT (N).Nkind = N_Component_List
5704         or else NT (N).Nkind = N_Procedure_Specification
5705         or else NT (N).Nkind = N_Record_Definition);
5706       Set_Flag13 (N, Val);
5707    end Set_Null_Present;
5708 
5709    procedure Set_Null_Excluding_Subtype
5710       (N : Node_Id; Val : Boolean := True) is
5711    begin
5712       pragma Assert (False
5713         or else NT (N).Nkind = N_Access_To_Object_Definition);
5714       Set_Flag16 (N, Val);
5715    end Set_Null_Excluding_Subtype;
5716 
5717    procedure Set_Null_Exclusion_Present
5718       (N : Node_Id; Val : Boolean := True) is
5719    begin
5720       pragma Assert (False
5721         or else NT (N).Nkind = N_Access_Definition
5722         or else NT (N).Nkind = N_Access_Function_Definition
5723         or else NT (N).Nkind = N_Access_Procedure_Definition
5724         or else NT (N).Nkind = N_Access_To_Object_Definition
5725         or else NT (N).Nkind = N_Allocator
5726         or else NT (N).Nkind = N_Component_Definition
5727         or else NT (N).Nkind = N_Derived_Type_Definition
5728         or else NT (N).Nkind = N_Discriminant_Specification
5729         or else NT (N).Nkind = N_Formal_Object_Declaration
5730         or else NT (N).Nkind = N_Function_Specification
5731         or else NT (N).Nkind = N_Object_Declaration
5732         or else NT (N).Nkind = N_Object_Renaming_Declaration
5733         or else NT (N).Nkind = N_Parameter_Specification
5734         or else NT (N).Nkind = N_Subtype_Declaration);
5735       Set_Flag11 (N, Val);
5736    end Set_Null_Exclusion_Present;
5737 
5738    procedure Set_Null_Exclusion_In_Return_Present
5739       (N : Node_Id; Val : Boolean := True) is
5740    begin
5741       pragma Assert (False
5742         or else NT (N).Nkind = N_Access_Function_Definition);
5743       Set_Flag14 (N, Val);
5744    end Set_Null_Exclusion_In_Return_Present;
5745 
5746    procedure Set_Null_Record_Present
5747       (N : Node_Id; Val : Boolean := True) is
5748    begin
5749       pragma Assert (False
5750         or else NT (N).Nkind = N_Aggregate
5751         or else NT (N).Nkind = N_Extension_Aggregate);
5752       Set_Flag17 (N, Val);
5753    end Set_Null_Record_Present;
5754 
5755    procedure Set_Object_Definition
5756       (N : Node_Id; Val : Node_Id) is
5757    begin
5758       pragma Assert (False
5759         or else NT (N).Nkind = N_Object_Declaration);
5760       Set_Node4_With_Parent (N, Val);
5761    end Set_Object_Definition;
5762 
5763    procedure Set_Of_Present
5764       (N : Node_Id; Val : Boolean := True) is
5765    begin
5766       pragma Assert (False
5767         or else NT (N).Nkind = N_Iterator_Specification);
5768       Set_Flag16 (N, Val);
5769    end Set_Of_Present;
5770 
5771    procedure Set_Original_Discriminant
5772       (N : Node_Id; Val : Node_Id) is
5773    begin
5774       pragma Assert (False
5775         or else NT (N).Nkind = N_Identifier);
5776       Set_Node2 (N, Val); -- semantic field, no parent set
5777    end Set_Original_Discriminant;
5778 
5779    procedure Set_Original_Entity
5780       (N : Node_Id; Val : Entity_Id) is
5781    begin
5782       pragma Assert (False
5783         or else NT (N).Nkind = N_Integer_Literal
5784         or else NT (N).Nkind = N_Real_Literal);
5785       Set_Node2 (N, Val); --  semantic field, no parent set
5786    end Set_Original_Entity;
5787 
5788    procedure Set_Others_Discrete_Choices
5789       (N : Node_Id; Val : List_Id) is
5790    begin
5791       pragma Assert (False
5792         or else NT (N).Nkind = N_Others_Choice);
5793       Set_List1_With_Parent (N, Val);
5794    end Set_Others_Discrete_Choices;
5795 
5796    procedure Set_Out_Present
5797       (N : Node_Id; Val : Boolean := True) is
5798    begin
5799       pragma Assert (False
5800         or else NT (N).Nkind = N_Formal_Object_Declaration
5801         or else NT (N).Nkind = N_Parameter_Specification);
5802       Set_Flag17 (N, Val);
5803    end Set_Out_Present;
5804 
5805    procedure Set_Parameter_Associations
5806       (N : Node_Id; Val : List_Id) is
5807    begin
5808       pragma Assert (False
5809         or else NT (N).Nkind = N_Entry_Call_Statement
5810         or else NT (N).Nkind = N_Function_Call
5811         or else NT (N).Nkind = N_Procedure_Call_Statement);
5812       Set_List3_With_Parent (N, Val);
5813    end Set_Parameter_Associations;
5814 
5815    procedure Set_Parameter_Specifications
5816       (N : Node_Id; Val : List_Id) is
5817    begin
5818       pragma Assert (False
5819         or else NT (N).Nkind = N_Accept_Statement
5820         or else NT (N).Nkind = N_Access_Function_Definition
5821         or else NT (N).Nkind = N_Access_Procedure_Definition
5822         or else NT (N).Nkind = N_Entry_Body_Formal_Part
5823         or else NT (N).Nkind = N_Entry_Declaration
5824         or else NT (N).Nkind = N_Function_Specification
5825         or else NT (N).Nkind = N_Procedure_Specification);
5826       Set_List3_With_Parent (N, Val);
5827    end Set_Parameter_Specifications;
5828 
5829    procedure Set_Parameter_Type
5830       (N : Node_Id; Val : Node_Id) is
5831    begin
5832       pragma Assert (False
5833         or else NT (N).Nkind = N_Parameter_Specification);
5834       Set_Node2_With_Parent (N, Val);
5835    end Set_Parameter_Type;
5836 
5837    procedure Set_Parent_Spec
5838       (N : Node_Id; Val : Node_Id) is
5839    begin
5840       pragma Assert (False
5841         or else NT (N).Nkind = N_Function_Instantiation
5842         or else NT (N).Nkind = N_Generic_Function_Renaming_Declaration
5843         or else NT (N).Nkind = N_Generic_Package_Declaration
5844         or else NT (N).Nkind = N_Generic_Package_Renaming_Declaration
5845         or else NT (N).Nkind = N_Generic_Procedure_Renaming_Declaration
5846         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
5847         or else NT (N).Nkind = N_Package_Declaration
5848         or else NT (N).Nkind = N_Package_Instantiation
5849         or else NT (N).Nkind = N_Package_Renaming_Declaration
5850         or else NT (N).Nkind = N_Procedure_Instantiation
5851         or else NT (N).Nkind = N_Subprogram_Declaration
5852         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
5853       Set_Node4 (N, Val); -- semantic field, no parent set
5854    end Set_Parent_Spec;
5855 
5856    procedure Set_Position
5857       (N : Node_Id; Val : Node_Id) is
5858    begin
5859       pragma Assert (False
5860         or else NT (N).Nkind = N_Component_Clause);
5861       Set_Node2_With_Parent (N, Val);
5862    end Set_Position;
5863 
5864    procedure Set_Pragma_Argument_Associations
5865       (N : Node_Id; Val : List_Id) is
5866    begin
5867       pragma Assert (False
5868         or else NT (N).Nkind = N_Pragma);
5869       Set_List2_With_Parent (N, Val);
5870    end Set_Pragma_Argument_Associations;
5871 
5872    procedure Set_Pragma_Identifier
5873       (N : Node_Id; Val : Node_Id) is
5874    begin
5875       pragma Assert (False
5876         or else NT (N).Nkind = N_Pragma);
5877       Set_Node4_With_Parent (N, Val);
5878    end Set_Pragma_Identifier;
5879 
5880    procedure Set_Pragmas_After
5881       (N : Node_Id; Val : List_Id) is
5882    begin
5883       pragma Assert (False
5884         or else NT (N).Nkind = N_Compilation_Unit_Aux
5885         or else NT (N).Nkind = N_Terminate_Alternative);
5886       Set_List5_With_Parent (N, Val);
5887    end Set_Pragmas_After;
5888 
5889    procedure Set_Pragmas_Before
5890       (N : Node_Id; Val : List_Id) is
5891    begin
5892       pragma Assert (False
5893         or else NT (N).Nkind = N_Accept_Alternative
5894         or else NT (N).Nkind = N_Delay_Alternative
5895         or else NT (N).Nkind = N_Entry_Call_Alternative
5896         or else NT (N).Nkind = N_Mod_Clause
5897         or else NT (N).Nkind = N_Terminate_Alternative
5898         or else NT (N).Nkind = N_Triggering_Alternative);
5899       Set_List4_With_Parent (N, Val);
5900    end Set_Pragmas_Before;
5901 
5902    procedure Set_Pre_Post_Conditions
5903       (N : Node_Id; Val : Node_Id) is
5904    begin
5905       pragma Assert (False
5906         or else NT (N).Nkind = N_Contract);
5907       Set_Node1 (N, Val); -- semantic field, no parent set
5908    end Set_Pre_Post_Conditions;
5909 
5910    procedure Set_Prefix
5911       (N : Node_Id; Val : Node_Id) is
5912    begin
5913       pragma Assert (False
5914         or else NT (N).Nkind = N_Attribute_Reference
5915         or else NT (N).Nkind = N_Expanded_Name
5916         or else NT (N).Nkind = N_Explicit_Dereference
5917         or else NT (N).Nkind = N_Indexed_Component
5918         or else NT (N).Nkind = N_Reference
5919         or else NT (N).Nkind = N_Selected_Component
5920         or else NT (N).Nkind = N_Slice);
5921       Set_Node3_With_Parent (N, Val);
5922    end Set_Prefix;
5923 
5924    procedure Set_Premature_Use
5925       (N : Node_Id; Val : Node_Id) is
5926    begin
5927       pragma Assert (False
5928         or else NT (N).Nkind = N_Incomplete_Type_Declaration);
5929       Set_Node5 (N, Val);
5930    end Set_Premature_Use;
5931 
5932    procedure Set_Present_Expr
5933       (N : Node_Id; Val : Uint) is
5934    begin
5935       pragma Assert (False
5936         or else NT (N).Nkind = N_Variant);
5937       Set_Uint3 (N, Val);
5938    end Set_Present_Expr;
5939 
5940    procedure Set_Prev_Ids
5941       (N : Node_Id; Val : Boolean := True) is
5942    begin
5943       pragma Assert (False
5944         or else NT (N).Nkind = N_Component_Declaration
5945         or else NT (N).Nkind = N_Discriminant_Specification
5946         or else NT (N).Nkind = N_Exception_Declaration
5947         or else NT (N).Nkind = N_Formal_Object_Declaration
5948         or else NT (N).Nkind = N_Number_Declaration
5949         or else NT (N).Nkind = N_Object_Declaration
5950         or else NT (N).Nkind = N_Parameter_Specification);
5951       Set_Flag6 (N, Val);
5952    end Set_Prev_Ids;
5953 
5954    procedure Set_Print_In_Hex
5955       (N : Node_Id; Val : Boolean := True) is
5956    begin
5957       pragma Assert (False
5958         or else NT (N).Nkind = N_Integer_Literal);
5959       Set_Flag13 (N, Val);
5960    end Set_Print_In_Hex;
5961 
5962    procedure Set_Private_Declarations
5963       (N : Node_Id; Val : List_Id) is
5964    begin
5965       pragma Assert (False
5966         or else NT (N).Nkind = N_Package_Specification
5967         or else NT (N).Nkind = N_Protected_Definition
5968         or else NT (N).Nkind = N_Task_Definition);
5969       Set_List3_With_Parent (N, Val);
5970    end Set_Private_Declarations;
5971 
5972    procedure Set_Private_Present
5973       (N : Node_Id; Val : Boolean := True) is
5974    begin
5975       pragma Assert (False
5976         or else NT (N).Nkind = N_Compilation_Unit
5977         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
5978         or else NT (N).Nkind = N_With_Clause);
5979       Set_Flag15 (N, Val);
5980    end Set_Private_Present;
5981 
5982    procedure Set_Procedure_To_Call
5983       (N : Node_Id; Val : Node_Id) is
5984    begin
5985       pragma Assert (False
5986         or else NT (N).Nkind = N_Allocator
5987         or else NT (N).Nkind = N_Extended_Return_Statement
5988         or else NT (N).Nkind = N_Free_Statement
5989         or else NT (N).Nkind = N_Simple_Return_Statement);
5990       Set_Node2 (N, Val); -- semantic field, no parent set
5991    end Set_Procedure_To_Call;
5992 
5993    procedure Set_Proper_Body
5994       (N : Node_Id; Val : Node_Id) is
5995    begin
5996       pragma Assert (False
5997         or else NT (N).Nkind = N_Subunit);
5998       Set_Node1_With_Parent (N, Val);
5999    end Set_Proper_Body;
6000 
6001    procedure Set_Protected_Definition
6002       (N : Node_Id; Val : Node_Id) is
6003    begin
6004       pragma Assert (False
6005         or else NT (N).Nkind = N_Protected_Type_Declaration
6006         or else NT (N).Nkind = N_Single_Protected_Declaration);
6007       Set_Node3_With_Parent (N, Val);
6008    end Set_Protected_Definition;
6009 
6010    procedure Set_Protected_Present
6011       (N : Node_Id; Val : Boolean := True) is
6012    begin
6013       pragma Assert (False
6014         or else NT (N).Nkind = N_Access_Function_Definition
6015         or else NT (N).Nkind = N_Access_Procedure_Definition
6016         or else NT (N).Nkind = N_Derived_Type_Definition
6017         or else NT (N).Nkind = N_Record_Definition);
6018       Set_Flag6 (N, Val);
6019    end Set_Protected_Present;
6020 
6021    procedure Set_Raises_Constraint_Error
6022       (N : Node_Id; Val : Boolean := True) is
6023    begin
6024       pragma Assert (False
6025         or else NT (N).Nkind in N_Subexpr);
6026       Set_Flag7 (N, Val);
6027    end Set_Raises_Constraint_Error;
6028 
6029    procedure Set_Range_Constraint
6030       (N : Node_Id; Val : Node_Id) is
6031    begin
6032       pragma Assert (False
6033         or else NT (N).Nkind = N_Delta_Constraint
6034         or else NT (N).Nkind = N_Digits_Constraint);
6035       Set_Node4_With_Parent (N, Val);
6036    end Set_Range_Constraint;
6037 
6038    procedure Set_Range_Expression
6039       (N : Node_Id; Val : Node_Id) is
6040    begin
6041       pragma Assert (False
6042         or else NT (N).Nkind = N_Range_Constraint);
6043       Set_Node4_With_Parent (N, Val);
6044    end Set_Range_Expression;
6045 
6046    procedure Set_Real_Range_Specification
6047       (N : Node_Id; Val : Node_Id) is
6048    begin
6049       pragma Assert (False
6050         or else NT (N).Nkind = N_Decimal_Fixed_Point_Definition
6051         or else NT (N).Nkind = N_Floating_Point_Definition
6052         or else NT (N).Nkind = N_Ordinary_Fixed_Point_Definition);
6053       Set_Node4_With_Parent (N, Val);
6054    end Set_Real_Range_Specification;
6055 
6056    procedure Set_Realval
6057      (N : Node_Id; Val : Ureal) is
6058    begin
6059       pragma Assert (False
6060         or else NT (N).Nkind = N_Real_Literal);
6061       Set_Ureal3 (N, Val);
6062    end Set_Realval;
6063 
6064    procedure Set_Reason
6065       (N : Node_Id; Val : Uint) is
6066    begin
6067       pragma Assert (False
6068         or else NT (N).Nkind = N_Raise_Constraint_Error
6069         or else NT (N).Nkind = N_Raise_Program_Error
6070         or else NT (N).Nkind = N_Raise_Storage_Error);
6071       Set_Uint3 (N, Val);
6072    end Set_Reason;
6073 
6074    procedure Set_Record_Extension_Part
6075       (N : Node_Id; Val : Node_Id) is
6076    begin
6077       pragma Assert (False
6078         or else NT (N).Nkind = N_Derived_Type_Definition);
6079       Set_Node3_With_Parent (N, Val);
6080    end Set_Record_Extension_Part;
6081 
6082    procedure Set_Redundant_Use
6083       (N : Node_Id; Val : Boolean := True) is
6084    begin
6085       pragma Assert (False
6086         or else NT (N).Nkind = N_Attribute_Reference
6087         or else NT (N).Nkind = N_Expanded_Name
6088         or else NT (N).Nkind = N_Identifier);
6089       Set_Flag13 (N, Val);
6090    end Set_Redundant_Use;
6091 
6092    procedure Set_Renaming_Exception
6093       (N : Node_Id; Val : Node_Id) is
6094    begin
6095       pragma Assert (False
6096         or else NT (N).Nkind = N_Exception_Declaration);
6097       Set_Node2 (N, Val);
6098    end Set_Renaming_Exception;
6099 
6100    procedure Set_Result_Definition
6101      (N : Node_Id; Val : Node_Id) is
6102    begin
6103       pragma Assert (False
6104         or else NT (N).Nkind = N_Access_Function_Definition
6105         or else NT (N).Nkind = N_Function_Specification);
6106       Set_Node4_With_Parent (N, Val);
6107    end Set_Result_Definition;
6108 
6109    procedure Set_Return_Object_Declarations
6110      (N : Node_Id; Val : List_Id) is
6111    begin
6112       pragma Assert (False
6113         or else NT (N).Nkind = N_Extended_Return_Statement);
6114       Set_List3_With_Parent (N, Val);
6115    end Set_Return_Object_Declarations;
6116 
6117    procedure Set_Return_Statement_Entity
6118      (N : Node_Id; Val : Node_Id) is
6119    begin
6120       pragma Assert (False
6121         or else NT (N).Nkind = N_Extended_Return_Statement
6122         or else NT (N).Nkind = N_Simple_Return_Statement);
6123       Set_Node5 (N, Val); -- semantic field, no parent set
6124    end Set_Return_Statement_Entity;
6125 
6126    procedure Set_Reverse_Present
6127       (N : Node_Id; Val : Boolean := True) is
6128    begin
6129       pragma Assert (False
6130         or else NT (N).Nkind = N_Iterator_Specification
6131         or else NT (N).Nkind = N_Loop_Parameter_Specification);
6132       Set_Flag15 (N, Val);
6133    end Set_Reverse_Present;
6134 
6135    procedure Set_Right_Opnd
6136       (N : Node_Id; Val : Node_Id) is
6137    begin
6138       pragma Assert (False
6139         or else NT (N).Nkind in N_Op
6140         or else NT (N).Nkind = N_And_Then
6141         or else NT (N).Nkind = N_In
6142         or else NT (N).Nkind = N_Not_In
6143         or else NT (N).Nkind = N_Or_Else);
6144       Set_Node3_With_Parent (N, Val);
6145    end Set_Right_Opnd;
6146 
6147    procedure Set_Rounded_Result
6148       (N : Node_Id; Val : Boolean := True) is
6149    begin
6150       pragma Assert (False
6151         or else NT (N).Nkind = N_Op_Divide
6152         or else NT (N).Nkind = N_Op_Multiply
6153         or else NT (N).Nkind = N_Type_Conversion);
6154       Set_Flag18 (N, Val);
6155    end Set_Rounded_Result;
6156 
6157    procedure Set_SCIL_Controlling_Tag
6158       (N : Node_Id; Val : Node_Id) is
6159    begin
6160       pragma Assert (False
6161         or else NT (N).Nkind = N_SCIL_Dispatching_Call);
6162       Set_Node5 (N, Val); -- semantic field, no parent set
6163    end Set_SCIL_Controlling_Tag;
6164 
6165    procedure Set_SCIL_Entity
6166       (N : Node_Id; Val : Node_Id) is
6167    begin
6168       pragma Assert (False
6169         or else NT (N).Nkind = N_SCIL_Dispatch_Table_Tag_Init
6170         or else NT (N).Nkind = N_SCIL_Dispatching_Call
6171         or else NT (N).Nkind = N_SCIL_Membership_Test);
6172       Set_Node4 (N, Val); -- semantic field, no parent set
6173    end Set_SCIL_Entity;
6174 
6175    procedure Set_SCIL_Tag_Value
6176       (N : Node_Id; Val : Node_Id) is
6177    begin
6178       pragma Assert (False
6179         or else NT (N).Nkind = N_SCIL_Membership_Test);
6180       Set_Node5 (N, Val); -- semantic field, no parent set
6181    end Set_SCIL_Tag_Value;
6182 
6183    procedure Set_SCIL_Target_Prim
6184       (N : Node_Id; Val : Node_Id) is
6185    begin
6186       pragma Assert (False
6187         or else NT (N).Nkind = N_SCIL_Dispatching_Call);
6188       Set_Node2 (N, Val); -- semantic field, no parent set
6189    end Set_SCIL_Target_Prim;
6190 
6191    procedure Set_Scope
6192       (N : Node_Id; Val : Node_Id) is
6193    begin
6194       pragma Assert (False
6195         or else NT (N).Nkind = N_Defining_Character_Literal
6196         or else NT (N).Nkind = N_Defining_Identifier
6197         or else NT (N).Nkind = N_Defining_Operator_Symbol);
6198       Set_Node3 (N, Val); -- semantic field, no parent set
6199    end Set_Scope;
6200 
6201    procedure Set_Select_Alternatives
6202       (N : Node_Id; Val : List_Id) is
6203    begin
6204       pragma Assert (False
6205         or else NT (N).Nkind = N_Selective_Accept);
6206       Set_List1_With_Parent (N, Val);
6207    end Set_Select_Alternatives;
6208 
6209    procedure Set_Selector_Name
6210       (N : Node_Id; Val : Node_Id) is
6211    begin
6212       pragma Assert (False
6213         or else NT (N).Nkind = N_Expanded_Name
6214         or else NT (N).Nkind = N_Generic_Association
6215         or else NT (N).Nkind = N_Parameter_Association
6216         or else NT (N).Nkind = N_Selected_Component);
6217       Set_Node2_With_Parent (N, Val);
6218    end Set_Selector_Name;
6219 
6220    procedure Set_Selector_Names
6221       (N : Node_Id; Val : List_Id) is
6222    begin
6223       pragma Assert (False
6224         or else NT (N).Nkind = N_Discriminant_Association);
6225       Set_List1_With_Parent (N, Val);
6226    end Set_Selector_Names;
6227 
6228    procedure Set_Shift_Count_OK
6229       (N : Node_Id; Val : Boolean := True) is
6230    begin
6231       pragma Assert (False
6232         or else NT (N).Nkind = N_Op_Rotate_Left
6233         or else NT (N).Nkind = N_Op_Rotate_Right
6234         or else NT (N).Nkind = N_Op_Shift_Left
6235         or else NT (N).Nkind = N_Op_Shift_Right
6236         or else NT (N).Nkind = N_Op_Shift_Right_Arithmetic);
6237       Set_Flag4 (N, Val);
6238    end Set_Shift_Count_OK;
6239 
6240    procedure Set_Source_Type
6241       (N : Node_Id; Val : Entity_Id) is
6242    begin
6243       pragma Assert (False
6244         or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
6245       Set_Node1 (N, Val); -- semantic field, no parent set
6246    end Set_Source_Type;
6247 
6248    procedure Set_Specification
6249       (N : Node_Id; Val : Node_Id) is
6250    begin
6251       pragma Assert (False
6252         or else NT (N).Nkind = N_Abstract_Subprogram_Declaration
6253         or else NT (N).Nkind = N_Expression_Function
6254         or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
6255         or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
6256         or else NT (N).Nkind = N_Generic_Package_Declaration
6257         or else NT (N).Nkind = N_Generic_Subprogram_Declaration
6258         or else NT (N).Nkind = N_Package_Declaration
6259         or else NT (N).Nkind = N_Subprogram_Body
6260         or else NT (N).Nkind = N_Subprogram_Body_Stub
6261         or else NT (N).Nkind = N_Subprogram_Declaration
6262         or else NT (N).Nkind = N_Subprogram_Renaming_Declaration);
6263       Set_Node1_With_Parent (N, Val);
6264    end Set_Specification;
6265 
6266    procedure Set_Split_PPC
6267       (N : Node_Id; Val : Boolean) is
6268    begin
6269       pragma Assert (False
6270         or else NT (N).Nkind = N_Aspect_Specification
6271         or else NT (N).Nkind = N_Pragma);
6272       Set_Flag17 (N, Val);
6273    end Set_Split_PPC;
6274 
6275    procedure Set_Statements
6276       (N : Node_Id; Val : List_Id) is
6277    begin
6278       pragma Assert (False
6279         or else NT (N).Nkind = N_Abortable_Part
6280         or else NT (N).Nkind = N_Accept_Alternative
6281         or else NT (N).Nkind = N_Case_Statement_Alternative
6282         or else NT (N).Nkind = N_Delay_Alternative
6283         or else NT (N).Nkind = N_Entry_Call_Alternative
6284         or else NT (N).Nkind = N_Exception_Handler
6285         or else NT (N).Nkind = N_Handled_Sequence_Of_Statements
6286         or else NT (N).Nkind = N_Loop_Statement
6287         or else NT (N).Nkind = N_Triggering_Alternative);
6288       Set_List3_With_Parent (N, Val);
6289    end Set_Statements;
6290 
6291    procedure Set_Storage_Pool
6292       (N : Node_Id; Val : Node_Id) is
6293    begin
6294       pragma Assert (False
6295         or else NT (N).Nkind = N_Allocator
6296         or else NT (N).Nkind = N_Extended_Return_Statement
6297         or else NT (N).Nkind = N_Free_Statement
6298         or else NT (N).Nkind = N_Simple_Return_Statement);
6299       Set_Node1 (N, Val); -- semantic field, no parent set
6300    end Set_Storage_Pool;
6301 
6302    procedure Set_Subpool_Handle_Name
6303       (N : Node_Id; Val : Node_Id) is
6304    begin
6305       pragma Assert (False
6306         or else NT (N).Nkind = N_Allocator);
6307       Set_Node4_With_Parent (N, Val);
6308    end Set_Subpool_Handle_Name;
6309 
6310    procedure Set_Strval
6311       (N : Node_Id; Val : String_Id) is
6312    begin
6313       pragma Assert (False
6314         or else NT (N).Nkind = N_Operator_Symbol
6315         or else NT (N).Nkind = N_String_Literal);
6316       Set_Str3 (N, Val);
6317    end Set_Strval;
6318 
6319    procedure Set_Subtype_Indication
6320       (N : Node_Id; Val : Node_Id) is
6321    begin
6322       pragma Assert (False
6323         or else NT (N).Nkind = N_Access_To_Object_Definition
6324         or else NT (N).Nkind = N_Component_Definition
6325         or else NT (N).Nkind = N_Derived_Type_Definition
6326         or else NT (N).Nkind = N_Iterator_Specification
6327         or else NT (N).Nkind = N_Private_Extension_Declaration
6328         or else NT (N).Nkind = N_Subtype_Declaration);
6329       Set_Node5_With_Parent (N, Val);
6330    end Set_Subtype_Indication;
6331 
6332    procedure Set_Subtype_Mark
6333       (N : Node_Id; Val : Node_Id) is
6334    begin
6335       pragma Assert (False
6336         or else NT (N).Nkind = N_Access_Definition
6337         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
6338         or else NT (N).Nkind = N_Formal_Object_Declaration
6339         or else NT (N).Nkind = N_Object_Renaming_Declaration
6340         or else NT (N).Nkind = N_Qualified_Expression
6341         or else NT (N).Nkind = N_Subtype_Indication
6342         or else NT (N).Nkind = N_Type_Conversion
6343         or else NT (N).Nkind = N_Unchecked_Type_Conversion);
6344       Set_Node4_With_Parent (N, Val);
6345    end Set_Subtype_Mark;
6346 
6347    procedure Set_Subtype_Marks
6348       (N : Node_Id; Val : List_Id) is
6349    begin
6350       pragma Assert (False
6351         or else NT (N).Nkind = N_Unconstrained_Array_Definition
6352         or else NT (N).Nkind = N_Use_Type_Clause);
6353       Set_List2_With_Parent (N, Val);
6354    end Set_Subtype_Marks;
6355 
6356    procedure Set_Suppress_Assignment_Checks
6357       (N : Node_Id; Val : Boolean := True) is
6358    begin
6359       pragma Assert (False
6360         or else NT (N).Nkind = N_Assignment_Statement
6361         or else NT (N).Nkind = N_Object_Declaration);
6362       Set_Flag18 (N, Val);
6363    end Set_Suppress_Assignment_Checks;
6364 
6365    procedure Set_Suppress_Loop_Warnings
6366       (N : Node_Id; Val : Boolean := True) is
6367    begin
6368       pragma Assert (False
6369         or else NT (N).Nkind = N_Loop_Statement);
6370       Set_Flag17 (N, Val);
6371    end Set_Suppress_Loop_Warnings;
6372 
6373    procedure Set_Synchronized_Present
6374      (N : Node_Id; Val : Boolean := True) is
6375    begin
6376       pragma Assert (False
6377         or else NT (N).Nkind = N_Derived_Type_Definition
6378         or else NT (N).Nkind = N_Formal_Derived_Type_Definition
6379         or else NT (N).Nkind = N_Private_Extension_Declaration
6380         or else NT (N).Nkind = N_Record_Definition);
6381       Set_Flag7 (N, Val);
6382    end Set_Synchronized_Present;
6383 
6384    procedure Set_Tagged_Present
6385       (N : Node_Id; Val : Boolean := True) is
6386    begin
6387       pragma Assert (False
6388         or else NT (N).Nkind = N_Formal_Incomplete_Type_Definition
6389         or else NT (N).Nkind = N_Formal_Private_Type_Definition
6390         or else NT (N).Nkind = N_Incomplete_Type_Declaration
6391         or else NT (N).Nkind = N_Private_Type_Declaration
6392         or else NT (N).Nkind = N_Record_Definition);
6393       Set_Flag15 (N, Val);
6394    end Set_Tagged_Present;
6395 
6396    procedure Set_Target_Type
6397       (N : Node_Id; Val : Entity_Id) is
6398    begin
6399       pragma Assert (False
6400         or else NT (N).Nkind = N_Validate_Unchecked_Conversion);
6401       Set_Node2 (N, Val); -- semantic field, no parent set
6402    end Set_Target_Type;
6403 
6404    procedure Set_Task_Definition
6405       (N : Node_Id; Val : Node_Id) is
6406    begin
6407       pragma Assert (False
6408         or else NT (N).Nkind = N_Single_Task_Declaration
6409         or else NT (N).Nkind = N_Task_Type_Declaration);
6410       Set_Node3_With_Parent (N, Val);
6411    end Set_Task_Definition;
6412 
6413    procedure Set_Task_Present
6414      (N : Node_Id; Val : Boolean := True) is
6415    begin
6416       pragma Assert (False
6417         or else NT (N).Nkind = N_Derived_Type_Definition
6418         or else NT (N).Nkind = N_Record_Definition);
6419       Set_Flag5 (N, Val);
6420    end Set_Task_Present;
6421 
6422    procedure Set_Then_Actions
6423       (N : Node_Id; Val : List_Id) is
6424    begin
6425       pragma Assert (False
6426         or else NT (N).Nkind = N_If_Expression);
6427       Set_List2_With_Parent (N, Val); -- semantic field, but needs parents
6428    end Set_Then_Actions;
6429 
6430    procedure Set_Then_Statements
6431       (N : Node_Id; Val : List_Id) is
6432    begin
6433       pragma Assert (False
6434         or else NT (N).Nkind = N_Elsif_Part
6435         or else NT (N).Nkind = N_If_Statement);
6436       Set_List2_With_Parent (N, Val);
6437    end Set_Then_Statements;
6438 
6439    procedure Set_Treat_Fixed_As_Integer
6440       (N : Node_Id; Val : Boolean := True) is
6441    begin
6442       pragma Assert (False
6443         or else NT (N).Nkind = N_Op_Divide
6444         or else NT (N).Nkind = N_Op_Mod
6445         or else NT (N).Nkind = N_Op_Multiply
6446         or else NT (N).Nkind = N_Op_Rem);
6447       Set_Flag14 (N, Val);
6448    end Set_Treat_Fixed_As_Integer;
6449 
6450    procedure Set_Triggering_Alternative
6451       (N : Node_Id; Val : Node_Id) is
6452    begin
6453       pragma Assert (False
6454         or else NT (N).Nkind = N_Asynchronous_Select);
6455       Set_Node1_With_Parent (N, Val);
6456    end Set_Triggering_Alternative;
6457 
6458    procedure Set_Triggering_Statement
6459       (N : Node_Id; Val : Node_Id) is
6460    begin
6461       pragma Assert (False
6462         or else NT (N).Nkind = N_Triggering_Alternative);
6463       Set_Node1_With_Parent (N, Val);
6464    end Set_Triggering_Statement;
6465 
6466    procedure Set_TSS_Elist
6467       (N : Node_Id; Val : Elist_Id) is
6468    begin
6469       pragma Assert (False
6470         or else NT (N).Nkind = N_Freeze_Entity);
6471       Set_Elist3 (N, Val); -- semantic field, no parent set
6472    end Set_TSS_Elist;
6473 
6474    procedure Set_Uneval_Old_Accept
6475      (N : Node_Id; Val : Boolean := True) is
6476    begin
6477       pragma Assert (False
6478         or else NT (N).Nkind = N_Pragma);
6479       Set_Flag7 (N, Val);
6480    end Set_Uneval_Old_Accept;
6481 
6482    procedure Set_Uneval_Old_Warn
6483      (N : Node_Id; Val : Boolean := True) is
6484    begin
6485       pragma Assert (False
6486         or else NT (N).Nkind = N_Pragma);
6487       Set_Flag18 (N, Val);
6488    end Set_Uneval_Old_Warn;
6489 
6490    procedure Set_Type_Definition
6491       (N : Node_Id; Val : Node_Id) is
6492    begin
6493       pragma Assert (False
6494         or else NT (N).Nkind = N_Full_Type_Declaration);
6495       Set_Node3_With_Parent (N, Val);
6496    end Set_Type_Definition;
6497 
6498    procedure Set_Unit
6499       (N : Node_Id; Val : Node_Id) is
6500    begin
6501       pragma Assert (False
6502         or else NT (N).Nkind = N_Compilation_Unit);
6503       Set_Node2_With_Parent (N, Val);
6504    end Set_Unit;
6505 
6506    procedure Set_Unknown_Discriminants_Present
6507       (N : Node_Id; Val : Boolean := True) is
6508    begin
6509       pragma Assert (False
6510         or else NT (N).Nkind = N_Formal_Type_Declaration
6511         or else NT (N).Nkind = N_Incomplete_Type_Declaration
6512         or else NT (N).Nkind = N_Private_Extension_Declaration
6513         or else NT (N).Nkind = N_Private_Type_Declaration);
6514       Set_Flag13 (N, Val);
6515    end Set_Unknown_Discriminants_Present;
6516 
6517    procedure Set_Unreferenced_In_Spec
6518       (N : Node_Id; Val : Boolean := True) is
6519    begin
6520       pragma Assert (False
6521         or else NT (N).Nkind = N_With_Clause);
6522       Set_Flag7 (N, Val);
6523    end Set_Unreferenced_In_Spec;
6524 
6525    procedure Set_Variant_Part
6526       (N : Node_Id; Val : Node_Id) is
6527    begin
6528       pragma Assert (False
6529         or else NT (N).Nkind = N_Component_List);
6530       Set_Node4_With_Parent (N, Val);
6531    end Set_Variant_Part;
6532 
6533    procedure Set_Variants
6534       (N : Node_Id; Val : List_Id) is
6535    begin
6536       pragma Assert (False
6537         or else NT (N).Nkind = N_Variant_Part);
6538       Set_List1_With_Parent (N, Val);
6539    end Set_Variants;
6540 
6541    procedure Set_Visible_Declarations
6542       (N : Node_Id; Val : List_Id) is
6543    begin
6544       pragma Assert (False
6545         or else NT (N).Nkind = N_Package_Specification
6546         or else NT (N).Nkind = N_Protected_Definition
6547         or else NT (N).Nkind = N_Task_Definition);
6548       Set_List2_With_Parent (N, Val);
6549    end Set_Visible_Declarations;
6550 
6551    procedure Set_Uninitialized_Variable
6552      (N : Node_Id; Val : Node_Id) is
6553    begin
6554       pragma Assert (False
6555         or else NT (N).Nkind = N_Formal_Private_Type_Definition
6556         or else NT (N).Nkind = N_Private_Extension_Declaration);
6557       Set_Node3 (N, Val);
6558    end Set_Uninitialized_Variable;
6559 
6560    procedure Set_Used_Operations
6561      (N : Node_Id; Val :  Elist_Id) is
6562    begin
6563       pragma Assert (False
6564         or else NT (N).Nkind = N_Use_Type_Clause);
6565       Set_Elist5 (N, Val);
6566    end Set_Used_Operations;
6567 
6568    procedure Set_Was_Expression_Function
6569       (N : Node_Id; Val : Boolean := True) is
6570    begin
6571       pragma Assert (False
6572         or else NT (N).Nkind = N_Subprogram_Body);
6573       Set_Flag18 (N, Val);
6574    end Set_Was_Expression_Function;
6575 
6576    procedure Set_Was_Originally_Stub
6577       (N : Node_Id; Val : Boolean := True) is
6578    begin
6579       pragma Assert (False
6580         or else NT (N).Nkind = N_Package_Body
6581         or else NT (N).Nkind = N_Protected_Body
6582         or else NT (N).Nkind = N_Subprogram_Body
6583         or else NT (N).Nkind = N_Task_Body);
6584       Set_Flag13 (N, Val);
6585    end Set_Was_Originally_Stub;
6586 
6587    procedure Set_Withed_Body
6588      (N : Node_Id; Val : Node_Id) is
6589    begin
6590       pragma Assert (False
6591         or else NT (N).Nkind = N_With_Clause);
6592       Set_Node1 (N, Val);
6593    end Set_Withed_Body;
6594 
6595    -------------------------
6596    -- Iterator Procedures --
6597    -------------------------
6598 
6599    procedure Next_Entity       (N : in out Node_Id) is
6600    begin
6601       N := Next_Entity (N);
6602    end Next_Entity;
6603 
6604    procedure Next_Named_Actual (N : in out Node_Id) is
6605    begin
6606       N := Next_Named_Actual (N);
6607    end Next_Named_Actual;
6608 
6609    procedure Next_Rep_Item     (N : in out Node_Id) is
6610    begin
6611       N := Next_Rep_Item (N);
6612    end Next_Rep_Item;
6613 
6614    procedure Next_Use_Clause   (N : in out Node_Id) is
6615    begin
6616       N := Next_Use_Clause (N);
6617    end Next_Use_Clause;
6618 
6619    ------------------
6620    -- End_Location --
6621    ------------------
6622 
6623    function End_Location (N : Node_Id) return Source_Ptr is
6624       L : constant Uint := End_Span (N);
6625    begin
6626       if L = No_Uint then
6627          return No_Location;
6628       else
6629          return Source_Ptr (Int (Sloc (N)) + UI_To_Int (L));
6630       end if;
6631    end End_Location;
6632 
6633    --------------------
6634    -- Get_Pragma_Arg --
6635    --------------------
6636 
6637    function Get_Pragma_Arg (Arg : Node_Id) return Node_Id is
6638    begin
6639       if Nkind (Arg) = N_Pragma_Argument_Association then
6640          return Expression (Arg);
6641       else
6642          return Arg;
6643       end if;
6644    end Get_Pragma_Arg;
6645 
6646    ----------------------
6647    -- Set_End_Location --
6648    ----------------------
6649 
6650    procedure Set_End_Location (N : Node_Id; S : Source_Ptr) is
6651    begin
6652       Set_End_Span (N,
6653         UI_From_Int (Int (S) - Int (Sloc (N))));
6654    end Set_End_Location;
6655 
6656    --------------
6657    -- Nkind_In --
6658    --------------
6659 
6660    function Nkind_In
6661      (T  : Node_Kind;
6662       V1 : Node_Kind;
6663       V2 : Node_Kind) return Boolean
6664    is
6665    begin
6666       return T = V1 or else
6667              T = V2;
6668    end Nkind_In;
6669 
6670    function Nkind_In
6671      (T  : Node_Kind;
6672       V1 : Node_Kind;
6673       V2 : Node_Kind;
6674       V3 : Node_Kind) return Boolean
6675    is
6676    begin
6677       return T = V1 or else
6678              T = V2 or else
6679              T = V3;
6680    end Nkind_In;
6681 
6682    function Nkind_In
6683      (T  : Node_Kind;
6684       V1 : Node_Kind;
6685       V2 : Node_Kind;
6686       V3 : Node_Kind;
6687       V4 : Node_Kind) return Boolean
6688    is
6689    begin
6690       return T = V1 or else
6691              T = V2 or else
6692              T = V3 or else
6693              T = V4;
6694    end Nkind_In;
6695 
6696    function Nkind_In
6697      (T  : Node_Kind;
6698       V1 : Node_Kind;
6699       V2 : Node_Kind;
6700       V3 : Node_Kind;
6701       V4 : Node_Kind;
6702       V5 : Node_Kind) return Boolean
6703    is
6704    begin
6705       return T = V1 or else
6706              T = V2 or else
6707              T = V3 or else
6708              T = V4 or else
6709              T = V5;
6710    end Nkind_In;
6711 
6712    function Nkind_In
6713      (T  : Node_Kind;
6714       V1 : Node_Kind;
6715       V2 : Node_Kind;
6716       V3 : Node_Kind;
6717       V4 : Node_Kind;
6718       V5 : Node_Kind;
6719       V6 : Node_Kind) return Boolean
6720    is
6721    begin
6722       return T = V1 or else
6723              T = V2 or else
6724              T = V3 or else
6725              T = V4 or else
6726              T = V5 or else
6727              T = V6;
6728    end Nkind_In;
6729 
6730    function Nkind_In
6731      (T  : Node_Kind;
6732       V1 : Node_Kind;
6733       V2 : Node_Kind;
6734       V3 : Node_Kind;
6735       V4 : Node_Kind;
6736       V5 : Node_Kind;
6737       V6 : Node_Kind;
6738       V7 : Node_Kind) return Boolean
6739    is
6740    begin
6741       return T = V1 or else
6742              T = V2 or else
6743              T = V3 or else
6744              T = V4 or else
6745              T = V5 or else
6746              T = V6 or else
6747              T = V7;
6748    end Nkind_In;
6749 
6750    function Nkind_In
6751      (T  : Node_Kind;
6752       V1 : Node_Kind;
6753       V2 : Node_Kind;
6754       V3 : Node_Kind;
6755       V4 : Node_Kind;
6756       V5 : Node_Kind;
6757       V6 : Node_Kind;
6758       V7 : Node_Kind;
6759       V8 : Node_Kind) return Boolean
6760    is
6761    begin
6762       return T = V1 or else
6763              T = V2 or else
6764              T = V3 or else
6765              T = V4 or else
6766              T = V5 or else
6767              T = V6 or else
6768              T = V7 or else
6769              T = V8;
6770    end Nkind_In;
6771 
6772    function Nkind_In
6773      (T  : Node_Kind;
6774       V1 : Node_Kind;
6775       V2 : Node_Kind;
6776       V3 : Node_Kind;
6777       V4 : Node_Kind;
6778       V5 : Node_Kind;
6779       V6 : Node_Kind;
6780       V7 : Node_Kind;
6781       V8 : Node_Kind;
6782       V9 : Node_Kind) return Boolean
6783    is
6784    begin
6785       return T = V1 or else
6786              T = V2 or else
6787              T = V3 or else
6788              T = V4 or else
6789              T = V5 or else
6790              T = V6 or else
6791              T = V7 or else
6792              T = V8 or else
6793              T = V9;
6794    end Nkind_In;
6795 
6796    -----------------
6797    -- Pragma_Name --
6798    -----------------
6799 
6800    function Pragma_Name (N : Node_Id) return Name_Id is
6801    begin
6802       return Chars (Pragma_Identifier (N));
6803    end Pragma_Name;
6804 
6805 end Sinfo;