-- --
-- S p e c --
-- --
--- --
--- Copyright (C) 1992-2001 Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2007, 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, 59 Temple Place - Suite 330, Boston, --
--- MA 02111-1307, 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. --
--- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). --
+-- Extensive contributions were provided by Ada Core Technologies Inc. --
-- --
------------------------------------------------------------------------------
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; and for each that hasn't, reading, scanning, and
- -- recursively processing.
+ -- 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 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) return File_Name_Type;
+ function Time_Stamp_Mismatch
+ (A : ALI_Id;
+ 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.
-- time stamp in the Source_Table should be the actual time stamp of the
-- source files. In minimal recompilation mode (Minimal_Recompilation set
-- to True, no mismatch is found if the file's timestamp has not changed.
+ -- If Read_Only is True, missing sources are not considered.
--------------------------------------------
-- Subprograms for manipulating checksums --
-- 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