Commit 946db1e2 by Arnaud Charlet

[multiple changes]

2010-06-22  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_disp.adb: Minor code fixes.
	* sem_eval.adb: Minor reformatting.

2010-06-22  Vincent Celier  <celier@adacore.com>

	* make.adb (Scan_Make_Arg): When invoked with -nostdlib, pass -nostdlib
	to gnatlink, except on Open VMS.
	* osint.adb (Add_Default_Search_Dirs): Do not suppress the default
	object directories if -nostdlib is used.

From-SVN: r161141
parent 7ec8363d
2010-06-22 Robert Dewar <dewar@adacore.com> 2010-06-22 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb, sem_disp.adb: Minor code fixes.
* sem_eval.adb: Minor reformatting.
2010-06-22 Vincent Celier <celier@adacore.com>
* make.adb (Scan_Make_Arg): When invoked with -nostdlib, pass -nostdlib
to gnatlink, except on Open VMS.
* osint.adb (Add_Default_Search_Dirs): Do not suppress the default
object directories if -nostdlib is used.
2010-06-22 Robert Dewar <dewar@adacore.com>
* sem_util.adb (Is_Delegate): Put in proper alpha order. * sem_util.adb (Is_Delegate): Put in proper alpha order.
* sem_eval.adb: Minor reformatting. * sem_eval.adb: Minor reformatting.
......
...@@ -8213,14 +8213,18 @@ package body Make is ...@@ -8213,14 +8213,18 @@ package body Make is
elsif Argv (2 .. Argv'Last) = "nostdlib" then elsif Argv (2 .. Argv'Last) = "nostdlib" then
-- Don't pass -nostdlib to gnatlink, it will disable
-- linking with all standard library files.
No_Stdlib := True; No_Stdlib := True;
Add_Switch (Argv, Compiler, And_Save => And_Save); Add_Switch (Argv, Compiler, And_Save => And_Save);
Add_Switch (Argv, Binder, And_Save => And_Save); Add_Switch (Argv, Binder, And_Save => And_Save);
-- On Open VMS, do not pass -nostdlib to gnatlink, it will disable
-- linking with all standard library files.
if not OpenVMS then
Add_Switch (Argv, Linker, And_Save => And_Save);
end if;
elsif Argv (2 .. Argv'Last) = "nostdinc" then elsif Argv (2 .. Argv'Last) = "nostdinc" then
-- Pass -nostdinc to the Compiler and to gnatbind -- Pass -nostdinc to the Compiler and to gnatbind
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2009, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- 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- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -538,7 +538,11 @@ package body Osint is ...@@ -538,7 +538,11 @@ package body Osint is
end loop; end loop;
end if; end if;
if not Opt.No_Stdlib and not Opt.RTS_Switch then -- Even when -nostdlib is used, we still want to have visibility on
-- the run-time object directory, as it is used by gnatbind to find
-- the run-time ALI files in "real" ZFP set up.
if not Opt.RTS_Switch then
Search_Path := Search_Path :=
Read_Default_Search_Dirs Read_Default_Search_Dirs
(String_Access (Update_Path (Search_Dir_Prefix)), (String_Access (Update_Path (Search_Dir_Prefix)),
......
...@@ -6941,9 +6941,8 @@ package body Sem_Ch3 is ...@@ -6941,9 +6941,8 @@ package body Sem_Ch3 is
-- Ada 2005 (AI-251) -- Ada 2005 (AI-251)
if Ada_Version = Ada_05 if Ada_Version >= Ada_05 and then Is_Tagged then
and then Is_Tagged
then
-- "The declaration of a specific descendant of an interface type -- "The declaration of a specific descendant of an interface type
-- freezes the interface type" (RM 13.14). -- freezes the interface type" (RM 13.14).
......
...@@ -679,7 +679,7 @@ package body Sem_Disp is ...@@ -679,7 +679,7 @@ package body Sem_Disp is
-- Ada 2005 (AI-345) -- Ada 2005 (AI-345)
if Ada_Version = Ada_05 if Ada_Version >= Ada_05
and then Present (Tagged_Type) and then Present (Tagged_Type)
and then Is_Concurrent_Type (Tagged_Type) and then Is_Concurrent_Type (Tagged_Type)
then then
......
...@@ -3827,10 +3827,13 @@ package body Sem_Eval is ...@@ -3827,10 +3827,13 @@ package body Sem_Eval is
then then
return Empty; return Empty;
-- There are two cases where the context does not imply the type of the -- There are several cases where the context does not imply the type of
-- operands: either the universal expression appears in a type -- the operands:
-- conversion, or we are in the case of a predefined relational -- - the universal expression appears in a type conversion;
-- operator, where the context type is always Boolean. -- - the expression is a relational operator applied to universal
-- operands;
-- - the expression is a membership test with a universal operand
-- and a range with universal bounds.
elsif Nkind (Parent (N)) = N_Type_Conversion elsif Nkind (Parent (N)) = N_Type_Conversion
or else Is_Relational or else Is_Relational
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment