* sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
authorRobert Dewar <dewar@gnat.com>
Fri, 26 Oct 2001 18:49:37 +0000 (18:49 +0000)
committerGeert Bosch <bosch@gcc.gnu.org>
Fri, 26 Oct 2001 18:49:37 +0000 (20:49 +0200)
From-SVN: r46558

gcc/ada/ChangeLog
gcc/ada/sinfo.adb

index c302afa..7fe5186 100644 (file)
@@ -1,3 +1,7 @@
+2001-10-26  Robert Dewar <dewar@gnat.com>
+
+       * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
+
 2001-10-26  Richard Kenner <kenner@gnat.com>
 
        * gmem.c (__gnat_gmem_read_next): Properly check for EOF
index fb96678..931c991 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---                            $Revision: 1.314 $
+--                            $Revision$
 --                                                                          --
 --          Copyright (C) 1992-2001, Free Software Foundation, Inc.         --
 --                                                                          --
@@ -228,6 +228,18 @@ package body Sinfo is
       return Flag15 (N);
    end Assignment_OK;
 
+   function Associated_Node
+      (N : Node_Id) return Node_Id is
+   begin
+      pragma Assert (False
+          or else NT (N).Nkind in N_Has_Entity
+        or else NT (N).Nkind = N_Aggregate
+        or else NT (N).Nkind = N_Extension_Aggregate
+        or else NT (N).Nkind = N_Freeze_Entity
+        or else NT (N).Nkind = N_Selected_Component);
+      return Node4 (N);
+   end Associated_Node;
+
    function At_End_Proc
       (N : Node_Id) return Node_Id is
    begin
@@ -2573,6 +2585,18 @@ package body Sinfo is
       Set_Flag15 (N, Val);
    end Set_Assignment_OK;
 
+   procedure Set_Associated_Node
+      (N : Node_Id; Val : Node_Id) is
+   begin
+      pragma Assert (False
+          or else NT (N).Nkind in N_Has_Entity
+        or else NT (N).Nkind = N_Aggregate
+        or else NT (N).Nkind = N_Extension_Aggregate
+        or else NT (N).Nkind = N_Freeze_Entity
+        or else NT (N).Nkind = N_Selected_Component);
+      Set_Node4 (N, Val); -- semantic field, no parent set
+   end Set_Associated_Node;
+
    procedure Set_At_End_Proc
       (N : Node_Id; Val : Node_Id) is
    begin