[multiple changes]

2011-08-04  Emmanuel Briot  <briot@adacore.com>

	* makeutl.adb (Complete_Mains): if the user has passed a relative file
	name on the command line (for instance "../dummy"), never assume it can
	be a unit name.

2011-08-04  Tristan Gingold  <gingold@adacore.com>

	* bindgen.adb: Remove code the reference or create the
	Break_Start/__gnat_break_start procedure.
	* s-stalib.adb (Break_Start): Removed.

From-SVN: r177374
This commit is contained in:
Arnaud Charlet 2011-08-04 14:58:36 +02:00
parent e2fee30d54
commit cef1420198
4 changed files with 18 additions and 39 deletions

View File

@ -1,3 +1,15 @@
2011-08-04 Emmanuel Briot <briot@adacore.com>
* makeutl.adb (Complete_Mains): if the user has passed a relative file
name on the command line (for instance "../dummy"), never assume it can
be a unit name.
2011-08-04 Tristan Gingold <gingold@adacore.com>
* bindgen.adb: Remove code the reference or create the
Break_Start/__gnat_break_start procedure.
* s-stalib.adb (Break_Start): Removed.
2011-08-04 Emmanuel Briot <briot@adacore.com>
* make.adb, makeutl.adb, makeutl.ads (Compute_Builder_Switches): now

View File

@ -2301,7 +2301,6 @@ package body Bindgen is
WBI (" " & Ada_Init_Name.all & ";");
if not No_Main_Subprogram then
WBI (" Break_Start;");
if CodePeer_Mode then
@ -2477,7 +2476,6 @@ package body Bindgen is
WBI (" " & Ada_Init_Name.all & " ();");
if not No_Main_Subprogram then
WBI (" __gnat_break_start ();");
-- Output main program name
@ -3059,19 +3057,6 @@ package body Bindgen is
if Bind_Main_Program and then VM_Target = No_VM then
-- If we have the standard library, then Break_Start is defined
-- there, but when the standard library is suppressed, Break_Start
-- is defined here.
WBI ("");
WBI (" procedure Break_Start;");
if Suppress_Standard_Library_On_Target then
WBI (" pragma Export (C, Break_Start, ""__gnat_break_start"");");
else
WBI (" pragma Import (C, Break_Start, ""__gnat_break_start"");");
end if;
WBI ("");
if Exit_Status_Supported_On_Target then
@ -3232,18 +3217,6 @@ package body Bindgen is
Gen_Adainit_Ada;
if Bind_Main_Program and then VM_Target = No_VM then
-- When suppressing the standard library then generate dummy body
-- for Break_Start
if Suppress_Standard_Library_On_Target then
WBI ("");
WBI (" procedure Break_Start is");
WBI (" begin");
WBI (" null;");
WBI (" end;");
end if;
Gen_Main_Ada;
end if;
@ -3321,7 +3294,6 @@ package body Bindgen is
WBI ("extern void exit (int);");
end if;
WBI ("extern void __gnat_break_start (void);");
Set_String ("extern ");
if ALIs.Table (ALIs.First).Main_Program = Proc then
@ -3417,14 +3389,6 @@ package body Bindgen is
WBI ("");
end if;
-- When suppressing the standard library, the __gnat_break_start routine
-- (for the debugger to get initial control) is defined in this file.
if Suppress_Standard_Library_On_Target then
WBI ("void __gnat_break_start (void) {}");
WBI ("");
end if;
-- Generate the __gnat_version and __gnat_ada_main_program_name info
-- only for the main program. Otherwise, it can lead under some
-- circumstances to a symbol duplication during the link (for instance

View File

@ -1510,7 +1510,9 @@ package body Makeutl is
Source := No_Source;
end if;
if Source = No_Source then
if Source = No_Source
and then not Is_Absolute
then
-- Still not found? Maybe we have a unit name

View File

@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1995-2009, Free Software Foundation, Inc. --
-- Copyright (C) 1995-2011, 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- --
@ -94,7 +94,8 @@ package body System.Standard_Library is
pragma Export (C, Break_Start, "__gnat_break_start");
-- This is a dummy procedure that is called at the start of execution.
-- Its sole purpose is to provide a well defined point for the placement
-- of a main program breakpoint.
-- of a main program breakpoint. This is not used anymore but kept for
-- bootstrapping issues (still referenced by old gnatbind generated files).
procedure Break_Start is
begin