From 9e895ab50a0882df6e42fdb2995fec55258a26d6 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Wed, 29 Apr 2009 15:39:13 +0200 Subject: [multiple changes] 2009-04-29 Vincent Celier * sinput-l.adb (Load_File): When preprocessing, set temporarily the Source_File_Index_Table entries for the source, to avoid crash when reporting an error. * gnatcmd.adb (Test_If_Relative_Path): Use Makeutl.Test_If_Relative_Path. * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if Including_RTS is True. * makeutl.ads (Test_If_Relative_Path): New Boolean parameter Including_RTS defaulted to False. * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with a default value. 2009-04-29 Javier Miranda * gnat_ugn.texi: Adding documentation for non-default C++ constructors. From-SVN: r146967 --- gcc/ada/gnatcmd.adb | 58 +++-------------------------------------------------- 1 file changed, 3 insertions(+), 55 deletions(-) (limited to 'gcc/ada/gnatcmd.adb') diff --git a/gcc/ada/gnatcmd.adb b/gcc/ada/gnatcmd.adb index 81e9bc4..8310cd2 100644 --- a/gcc/ada/gnatcmd.adb +++ b/gcc/ada/gnatcmd.adb @@ -26,6 +26,7 @@ with GNAT.Directory_Operations; use GNAT.Directory_Operations; with Csets; +with Makeutl; with MLib.Tgt; use MLib.Tgt; with MLib.Utl; with MLib.Fil; @@ -1265,61 +1266,8 @@ procedure GNATCmd is Parent : String) is begin - if Switch /= null then - - declare - Sw : String (1 .. Switch'Length); - Start : Positive := 1; - - begin - Sw := Switch.all; - - if Sw (1) = '-' then - if Sw'Length >= 3 - and then (Sw (2) = 'A' or else - Sw (2) = 'I' or else - Sw (2) = 'L') - then - Start := 3; - - if Sw = "-I-" then - return; - end if; - - elsif Sw'Length >= 4 - and then (Sw (2 .. 3) = "aL" or else - Sw (2 .. 3) = "aO" or else - Sw (2 .. 3) = "aI") - then - Start := 4; - - elsif Sw'Length >= 7 - and then Sw (2 .. 6) = "-RTS=" - then - Start := 7; - else - return; - end if; - end if; - - -- If the path is relative, test if it includes directory - -- information. If it does, prepend Parent to the path. - - if not Is_Absolute_Path (Sw (Start .. Sw'Last)) then - for J in Start .. Sw'Last loop - if Sw (J) = Directory_Separator then - Switch := - new String' - (Sw (1 .. Start - 1) & - Parent & - Directory_Separator & - Sw (Start .. Sw'Last)); - return; - end if; - end loop; - end if; - end; - end if; + Makeutl.Test_If_Relative_Path + (Switch, Parent, Including_Non_Switch => False, Including_RTS => True); end Test_If_Relative_Path; ------------------- -- cgit v1.1