From: charlet Date: Tue, 5 Oct 2010 09:16:23 +0000 (+0000) Subject: 2010-10-05 Vincent Celier X-Git-Tag: upstream/4.9.2~26146 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3a9cb0ab95673ab46364420e2c5fa1b7e341422d;p=platform%2Fupstream%2Flinaro-gcc.git 2010-10-05 Vincent Celier * make.adb (Check): When compiling with -gnatc, recompile if the ALI file has not been generated for the current source, for example if it has been generated for the spec, but we are compiling the body. 2010-10-05 Bob Duff * xgnatugn.adb: Remove unused procedure. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164967 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 7aeb5a7..4c5c8c8 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,13 @@ +2010-10-05 Vincent Celier + + * make.adb (Check): When compiling with -gnatc, recompile if the ALI + file has not been generated for the current source, for example if it + has been generated for the spec, but we are compiling the body. + +2010-10-05 Bob Duff + + * xgnatugn.adb: Remove unused procedure. + 2010-10-04 Vincent Celier * a-direct.adb (Copy_File): Interpret the Form parameter and call diff --git a/gcc/ada/make.adb b/gcc/ada/make.adb index 1df76a5..2c2489c 100644 --- a/gcc/ada/make.adb +++ b/gcc/ada/make.adb @@ -1658,6 +1658,32 @@ package body Make is return; end if; + -- When compiling with -gnatc, don't take ALI file into account if + -- it has not been generated for the current source, for example if + -- it has been generated for the spec, but we are compiling the body. + + if Operating_Mode = Check_Semantics then + declare + File_Name : constant String := Get_Name_String (Source_File); + OK : Boolean := False; + + begin + for U in ALIs.Table (ALI).First_Unit .. + ALIs.Table (ALI).Last_Unit + loop + OK := Get_Name_String (Units.Table (U).Sfile) = File_Name; + exit when OK; + end loop; + + if not OK then + Verbose_Msg + (Full_Lib_File, "not generated for the same source"); + ALI := No_ALI_Id; + return; + end if; + end; + end if; + -- Check for matching compiler switches if needed if Check_Switches then diff --git a/gcc/ada/xgnatugn.adb b/gcc/ada/xgnatugn.adb index ee3b07d..ab16817 100644 --- a/gcc/ada/xgnatugn.adb +++ b/gcc/ada/xgnatugn.adb @@ -127,7 +127,6 @@ procedure Xgnatugn is -- line-oriented checks (length, character set, trailing spaces). procedure Put_Line (F : Sfile; S : String); - procedure Put_Line (F : Sfile; S : VString); -- Local version of Put_Line ensures Unix style line endings Number_Of_Warnings : Natural := 0; @@ -369,11 +368,6 @@ procedure Xgnatugn is Character'Write (Stream (F), ASCII.LF); end Put_Line; - procedure Put_Line (F : Sfile; S : VString) is - begin - Put_Line (F, To_String (S)); - end Put_Line; - ----------- -- Error -- -----------