summaryrefslogtreecommitdiff
path: root/gcc/ada/mlib-prj.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2003-12-01 13:29:28 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2003-12-01 13:29:28 +0000
commit9988dae3912ad46db3f81b489a1417c6d294fde4 (patch)
treec0ac6a55329023fb31e9b9e80f35357a07004365 /gcc/ada/mlib-prj.adb
parent1b50d7560a9c09ef6a6123511b4acdcd8a86d994 (diff)
downloadgcc-9988dae3912ad46db3f81b489a1417c6d294fde4.tar.gz
2003-12-01 Nicolas Setton <setton@act-europe.fr>
* a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point, so that the debugger can reliably access the value of the parameter, and therefore is able to display the exception name when an exception breakpoint is reached. 2003-12-01 Thomas Quinot <quinot@act-europe.fr> * fmap.adb: Fix typo in warning message. * g-socket.ads, g-socket.adb: Make Free a visible instance of Ada.Unchecked_Deallocation (no need to wrap it in a subprogram). 2003-12-01 Vincent Celier <celier@gnat.com> * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if ther is no Afile. (Build_Library): Get the switches only if Default_Switches is declared in package Binder. 2003-12-01 Ed Schonberg <schonberg@gnat.com> * exp_ch6.adb (Expand_Actuals): When applying validity checks to actuals that are indexed components, reanalyze actual to ensure that packed array references are properly expanded. * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for attempted assignment to a discriminant. 2003-12-01 Robert Dewar <dewar@gnat.com> * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor reformatting. * switch-c.adb: Minor reformatting of comments 2003-12-01 Arnaud Charlet <charlet@act-europe.fr> * Makefile.in: Clean ups. 2003-12-01 GNAT Script <nobody@gnat.com> * Make-lang.in: Makefile automatically updated git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74100 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/mlib-prj.adb')
-rw-r--r--gcc/ada/mlib-prj.adb39
1 files changed, 23 insertions, 16 deletions
diff --git a/gcc/ada/mlib-prj.adb b/gcc/ada/mlib-prj.adb
index 70fefe57a62..93025586b31 100644
--- a/gcc/ada/mlib-prj.adb
+++ b/gcc/ada/mlib-prj.adb
@@ -576,7 +576,7 @@ package body MLib.Prj is
for W in Unit_Data.First_With .. Unit_Data.Last_With loop
Afile := Withs.Table (W).Afile;
- if Library_ALIs.Get (Afile)
+ if Afile /= No_Name and then Library_ALIs.Get (Afile)
and then not Processed_ALIs.Get (Afile)
then
if not Interface_ALIs.Get (Afile) then
@@ -811,9 +811,10 @@ package body MLib.Prj is
declare
Binder_Package : constant Package_Id :=
- Value_Of
- (Name => Name_Binder,
- In_Packages => Data.Decl.Packages);
+ Value_Of
+ (Name => Name_Binder,
+ In_Packages => Data.Decl.Packages);
+
begin
if Binder_Package /= No_Package then
declare
@@ -823,20 +824,26 @@ package body MLib.Prj is
In_Arrays =>
Packages.Table
(Binder_Package).Decl.Arrays);
- Switches : Variable_Value :=
- Value_Of
- (Index => Name_Ada, In_Array => Defaults);
+ Switches : Variable_Value := Nil_Variable_Value;
+
Switch : String_List_Id := Nil_String;
+
begin
- if not Switches.Default then
- Switch := Switches.Values;
-
- while Switch /= Nil_String loop
- Add_Argument
- (Get_Name_String
- (String_Elements.Table (Switch).Value));
- Switch := String_Elements.Table (Switch).Next;
- end loop;
+ if Defaults /= No_Array_Element then
+ Switches :=
+ Value_Of
+ (Index => Name_Ada, In_Array => Defaults);
+
+ if not Switches.Default then
+ Switch := Switches.Values;
+
+ while Switch /= Nil_String loop
+ Add_Argument
+ (Get_Name_String
+ (String_Elements.Table (Switch).Value));
+ Switch := String_Elements.Table (Switch).Next;
+ end loop;
+ end if;
end if;
end;
end if;