OSDN Git Service

2011-12-05 Bob Duff <duff@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / ali-util.ads
index ff919f7..707fec7 100644 (file)
@@ -6,18 +6,17 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 1992-2003 Free Software Foundation, Inc.          --
+--          Copyright (C) 1992-2011, 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- --
--- ware  Foundation;  either version 2,  or (at your option) any later ver- --
+-- ware  Foundation;  either version 3,  or (at your option) any later ver- --
 -- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
 -- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
 -- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
 -- for  more details.  You should have  received  a copy of the GNU General --
--- Public License  distributed with GNAT;  see file COPYING.  If not, write --
--- to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, --
--- Boston, MA 02110-1301, USA.                                              --
+-- Public License  distributed with GNAT; see file COPYING3.  If not, go to --
+-- http://www.gnu.org/licenses for a complete copy of the license.          --
 --                                                                          --
 -- GNAT was originally developed  by the GNAT team at  New York University. --
 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
@@ -33,9 +32,8 @@ package ALI.Util is
    -- Source File Table --
    -----------------------
 
-   --  A source file table entry is built for every source file that is
-   --  in the source dependency table of any of the ALI files that make
-   --  up the current program.
+   --  A table entry is built for every source file that is in the source
+   --  dependency table of any ALI file that is part of the current program.
 
    No_Source_Id : constant Source_Id := Source_Id'First;
    --  Special value indicating no Source table entry
@@ -102,22 +100,25 @@ package ALI.Util is
    -- Subprograms for Manipulating ALI Information --
    --------------------------------------------------
 
-   procedure Read_ALI (Id : ALI_Id);
-   --  Process an ALI file which has been read and scanned by looping
-   --  through all withed units in the ALI file, checking if they have
-   --  been processed. Each unit that has not yet been processed will
-   --  be read, scanned, and processed recursively.
+   procedure Read_Withed_ALIs
+     (Id            : ALI_Id;
+      Ignore_Errors : Boolean := False);
+   --  Process an ALI file which has been read and scanned by looping through
+   --  all withed units in the ALI file, checking if they have been processed.
+   --  Each unit that has not yet been processed will be read, scanned, and
+   --  processed recursively. If Ignore_Errors is True, then failure to read an
+   --  ALI file is not reported as an error, and scanning continues with other
+   --  ALI files.
 
    procedure Set_Source_Table (A : ALI_Id);
-   --  Build source table entry corresponding to the ALI file whose id is A.
+   --  Build source table entry corresponding to the ALI file whose id is A
 
    procedure Set_Source_Table;
-   --  Build the entire source table.
+   --  Build the entire source table
 
    function Time_Stamp_Mismatch
      (A         : ALI_Id;
-      Read_Only : Boolean := False)
-      return      File_Name_Type;
+      Read_Only : Boolean := False) return File_Name_Type;
    --  Looks in the Source_Table and checks time stamp mismatches between
    --  the sources there and the sources in the Sdep section of ali file whose
    --  id is A. If no time stamp mismatches are found No_File is returned.
@@ -139,7 +140,7 @@ package ALI.Util is
    --  in a false negative, but that is never harmful, it just means
    --  that in unusual cases an unnecessary recompilation occurs.
 
-   function Get_File_Checksum (Fname : Name_Id) return Word;
+   function Get_File_Checksum (Fname : File_Name_Type) return Word;
    --  Compute checksum for the given file. As far as possible, this circuit
    --  computes exactly the same value computed by the compiler, but it does
    --  not matter if it gets it wrong in marginal cases, since the only result