Commit d42ec90c by Vincent Celier Committed by Arnaud Charlet

prj-proc.adb (Process_Declarative_Items): Add Location for Array_Data

2008-08-20  Vincent Celier  <celier@adacore.com>

	* prj-proc.adb (Process_Declarative_Items): Add Location for Array_Data

	* prj.ads (Array_Data): Add a component Location

From-SVN: r139300
parent c0193e6f
......@@ -1417,6 +1417,11 @@ package body Prj.Proc is
From_Project_Node_Tree);
-- The name of the attribute
Current_Location : constant Source_Ptr :=
Location_Of
(Current_Item,
From_Project_Node_Tree);
New_Array : Array_Id;
-- The new associative array created
......@@ -1483,9 +1488,10 @@ package body Prj.Proc is
if Pkg /= No_Package then
In_Tree.Arrays.Table (New_Array) :=
(Name => Current_Item_Name,
Value => No_Array_Element,
Next =>
(Name => Current_Item_Name,
Location => Current_Location,
Value => No_Array_Element,
Next =>
In_Tree.Packages.Table (Pkg).Decl.Arrays);
In_Tree.Packages.Table (Pkg).Decl.Arrays :=
......@@ -1493,9 +1499,10 @@ package body Prj.Proc is
else
In_Tree.Arrays.Table (New_Array) :=
(Name => Current_Item_Name,
Value => No_Array_Element,
Next =>
(Name => Current_Item_Name,
Location => Current_Location,
Value => No_Array_Element,
Next =>
In_Tree.Projects.Table (Project).Decl.Arrays);
In_Tree.Projects.Table (Project).Decl.Arrays :=
......@@ -1706,6 +1713,11 @@ package body Prj.Proc is
(Current_Item,
From_Project_Node_Tree);
Current_Location : constant Source_Ptr :=
Location_Of
(Current_Item,
From_Project_Node_Tree);
begin
-- Process a typed variable declaration
......@@ -1970,9 +1982,10 @@ package body Prj.Proc is
if Pkg /= No_Package then
In_Tree.Arrays.Table (The_Array) :=
(Name => Current_Item_Name,
Value => No_Array_Element,
Next =>
(Name => Current_Item_Name,
Location => Current_Location,
Value => No_Array_Element,
Next =>
In_Tree.Packages.Table
(Pkg).Decl.Arrays);
......@@ -1981,9 +1994,10 @@ package body Prj.Proc is
else
In_Tree.Arrays.Table (The_Array) :=
(Name => Current_Item_Name,
Value => No_Array_Element,
Next =>
(Name => Current_Item_Name,
Location => Current_Location,
Value => No_Array_Element,
Next =>
In_Tree.Projects.Table
(Project).Decl.Arrays);
......
......@@ -253,9 +253,10 @@ package Prj is
type Array_Id is new Nat;
No_Array : constant Array_Id := 0;
type Array_Data is record
Name : Name_Id := No_Name;
Value : Array_Element_Id := No_Array_Element;
Next : Array_Id := No_Array;
Name : Name_Id := No_Name;
Location : Source_Ptr := No_Location;
Value : Array_Element_Id := No_Array_Element;
Next : Array_Id := No_Array;
end record;
-- Each Array_Data value represents an array.
-- Value is the id of the first element.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment