OSDN Git Service

2004-05-17 Steve Kargl <kargls@comcast.net>
[pf3gnuchains/gcc-fork.git] / gcc / ada / prj-tree.adb
index e8603c6..2a67b57 100644 (file)
@@ -111,6 +111,7 @@ package body Prj.Tree is
             Packages         => Empty_Node,
             Pkg_Id           => Empty_Package,
             Name             => No_Name,
+            Src_Index        => 0,
             Path_Name        => No_Name,
             Value            => No_Name,
             Field1           => Empty_Node,
@@ -157,6 +158,7 @@ package body Prj.Tree is
                Packages         => Empty_Node,
                Pkg_Id           => Empty_Package,
                Name             => No_Name,
+               Src_Index        => 0,
                Path_Name        => No_Name,
                Value            => Comments.Table (J).Value,
                Field1           => Empty_Node,
@@ -204,7 +206,6 @@ package body Prj.Tree is
       Comments.Set_Last (0);
    end Add_Comments;
 
-
    --------------------------------
    -- Associative_Array_Index_Of --
    --------------------------------
@@ -310,6 +311,7 @@ package body Prj.Tree is
          Packages         => Empty_Node,
          Pkg_Id           => Empty_Package,
          Name             => No_Name,
+         Src_Index        => 0,
          Path_Name        => No_Name,
          Value            => No_Name,
          Field1           => Empty_Node,
@@ -379,6 +381,7 @@ package body Prj.Tree is
          Packages         => Empty_Node,
          Pkg_Id           => Empty_Package,
          Name             => No_Name,
+         Src_Index        => 0,
          Path_Name        => No_Name,
          Value            => No_Name,
          Field1           => Empty_Node,
@@ -411,6 +414,7 @@ package body Prj.Tree is
                Packages         => Empty_Node,
                Pkg_Id           => Empty_Package,
                Name             => No_Name,
+               Src_Index        => 0,
                Path_Name        => No_Name,
                Value            => No_Name,
                Field1           => Empty_Node,
@@ -441,6 +445,7 @@ package body Prj.Tree is
                   Packages         => Empty_Node,
                   Pkg_Id           => Empty_Package,
                   Name             => No_Name,
+                  Src_Index        => 0,
                   Path_Name        => No_Name,
                   Value            => Comments.Table (J).Value,
                   Field1           => Empty_Node,
@@ -2323,6 +2328,24 @@ package body Prj.Tree is
       Project_Nodes.Table (Node).Field1 := To;
    end Set_Project_Of_Renamed_Package_Of;
 
+   -------------------------
+   -- Set_Source_Index_Of --
+   -------------------------
+
+   procedure Set_Source_Index_Of
+     (Node : Project_Node_Id;
+      To   : Int)
+   is
+   begin
+      pragma Assert
+        (Node /= Empty_Node
+          and then
+           (Project_Nodes.Table (Node).Kind = N_Literal_String
+            or else
+            Project_Nodes.Table (Node).Kind = N_Attribute_Declaration));
+      Project_Nodes.Table (Node).Src_Index := To;
+   end Set_Source_Index_Of;
+
    ------------------------
    -- Set_String_Type_Of --
    ------------------------
@@ -2338,8 +2361,8 @@ package body Prj.Tree is
             (Project_Nodes.Table (Node).Kind = N_Variable_Reference
                or else
              Project_Nodes.Table (Node).Kind = N_Typed_Variable_Declaration)
-           and then
-            Project_Nodes.Table (To).Kind    = N_String_Type_Declaration);
+          and then
+            Project_Nodes.Table (To).Kind = N_String_Type_Declaration);
 
       if Project_Nodes.Table (Node).Kind = N_Variable_Reference then
          Project_Nodes.Table (Node).Field3 := To;
@@ -2368,13 +2391,26 @@ package body Prj.Tree is
       Project_Nodes.Table (Node).Value := To;
    end Set_String_Value_Of;
 
+   ---------------------
+   -- Source_Index_Of --
+   ---------------------
+
+   function Source_Index_Of (Node : Project_Node_Id) return Int is
+   begin
+      pragma Assert
+        (Node /= Empty_Node
+          and then
+            (Project_Nodes.Table (Node).Kind = N_Literal_String
+              or else
+             Project_Nodes.Table (Node).Kind = N_Attribute_Declaration));
+      return Project_Nodes.Table (Node).Src_Index;
+   end Source_Index_Of;
+
    --------------------
    -- String_Type_Of --
    --------------------
 
-   function String_Type_Of
-     (Node : Project_Node_Id) return Project_Node_Id
-   is
+   function String_Type_Of (Node : Project_Node_Id) return Project_Node_Id is
    begin
       pragma Assert
         (Node /= Empty_Node
@@ -2450,5 +2486,4 @@ package body Prj.Tree is
       return Unkept_Comments;
    end There_Are_Unkept_Comments;
 
-
 end Prj.Tree;