prj-part.adb (Create_Virtual_Extending_Project): Put virtual project into Prj.Tree...
authorVincent Celier <celier@adacore.com>
Tue, 15 Nov 2005 14:01:27 +0000 (15:01 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 15 Nov 2005 14:01:27 +0000 (15:01 +0100)
2005-11-14  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Create_Virtual_Extending_Project): Put virtual project
into Prj.Tree.Tree_Private_Part.Projects_Htable for GPS.

From-SVN: r106995

gcc/ada/prj-part.adb

index 1e711f813d7ff3af78f628e4c8d7554d1ced5fc3..f39bd486b77d710a4000613904e45f671bc555eb 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 2001-2005 Free Software Foundation, Inc.          --
+--          Copyright (C) 2001-2005, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -129,6 +129,10 @@ package body Prj.Part is
       In_Tree      : Project_Node_Tree_Ref);
    --  Create a virtual extending project of For_Project. Main_Project is
    --  the extending all project.
+   --
+   --  The String_Value_Of is not set for the automatically added with
+   --  clause and keeps the default value of No_Name. This enables Prj.PP
+   --  to skip these automatically added with clauses to be processed.
 
    procedure Look_For_Virtual_Projects_For
      (Proj                : Project_Node_Id;
@@ -328,6 +332,15 @@ package body Prj.Part is
 
       --  Source_Dirs empty list: nothing to do
 
+      --  Put virtual project into Projects_Htable
+
+      Prj.Tree.Tree_Private_Part.Projects_Htable.Set
+        (T => In_Tree.Projects_HT,
+         K => Virtual_Name_Id,
+         E => (Name           => Virtual_Name_Id,
+               Node           => Virtual_Project,
+               Canonical_Path => No_Name,
+               Extended       => False));
    end Create_Virtual_Extending_Project;
 
    ----------------------------