gcc/gcc/ada/back_end.ads
Arnaud Charlet 1c218ac3ff [multiple changes]
2010-10-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb: Do not elaborate type definition if syntax error.

2010-10-05  Javier Miranda  <miranda@adacore.com>

	* sprint.adb (Sprint_Node_Actual): Improve output of subprogram bodies
	to generate the full-qualified names of its corresponding spec.
	This facilitates locating the corresponing body when reading
	the DG output.

2010-10-05  Thomas Quinot  <quinot@adacore.com>

	* exp_dist.adb (Make_Helper_Function_Name): For a tagged type, use
	canonical name without serial number only if the helper is becoming a
	primitive of the type.

2010-10-05  Javier Miranda  <miranda@adacore.com>

	* exp_disp.adb (Make_DT): Minor code reorganization.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

	* par-ch6.adb: improve recovery with extra paren in function spec.

2010-10-05  Quentin Ochem  <ochem@adacore.com>

	* prj-tree.ads: Project_Path is now aliased.

2010-10-05  Thomas Quinot  <quinot@adacore.com>

	* checks.adb: Minor reformatting.

2010-10-05  Eric Botcazou  <ebotcazou@adacore.com>

	* mlib-tgt-specific-mingw.adb (No_Argument_List): Delete.
	(Shared_Libgcc): New aliased variable.
	(Shared_Libgcc_Switch): New constant.
	(Build_Dynamic_Library): Pass Shared_Libgcc_Switch to the compiler
	* gcc-interface/Makefile.in (gnatlib-shared-win32): Pass -shared-libgcc
	to the compiler.
	
2010-10-05  Vincent Celier  <celier@adacore.com>

	* prj-part.adb (Parse_Simple_Project): When checking if a child project
	imports its parent project, also look in projects being extended by
	imported projects.

2010-10-05  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_ugn.texi: Adjust instructions in G.10 Building DLLs with GNAT.

2010-10-05  Javier Miranda  <miranda@adacore.com>

	* exp_cg.adb (Slot_Number): Add support to handle aliased entities.
	(Generate_CG_Output): Switch -gnatd.Z is no longer needed to
	activate this output.

2010-10-05  Arnaud Charlet  <charlet@adacore.com>

	* back_end.adb (Call_Back_End): Generate an error message when scil
	generation is enabled, and no scil back-end (by default) is available.

2010-10-05  Javier Miranda  <miranda@adacore.com>

	* debug.adb: Update documentation because -gnatd.Z is no longer required
	to generate the call-graph information.

2010-10-05  Javier Miranda  <miranda@adacore.com>

	* exp_ch5.adb (Expand_Simple_Function_Return): Rewrite expansion of a
	runtime access check by an equivalent expansion that causes
	no problems in the VM backend. The original expansion was
	not good for the VM backends because when Tagged_Type_Expansion
	is disabled the attribute Access_Disp_Table is not available.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_type.adb (Covers): In a dispatching context, T1 covers T2 if T2
	is class-wide and T1 is its specific type.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

	* einfo.adb: Add guard to Is_String_Type to prevent cascaded errors.

2010-10-05  Vincent Celier  <celier@adacore.com>

	* back_end.ads: Minor spelling error correction.

2010-10-05  Arnaud Charlet  <charlet@adacore.com>

	* switch-c.adb, gnat1drv.adb (Scan_Front_End_Switches): Disable
	warnings when -gnatC is specified here so that warnings can be
	re-enabled  explicitly.
	(Adjust_Global_Switches): No longer suppress warnings.

2010-10-05  Vincent Celier  <celier@adacore.com>

	* makeutl.adb: Minor reformatting.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb: add guard in Analyze_One_Call to prevent crash when a
	non-discrete type appears as an actual in a call.

From-SVN: r164976
2010-10-05 11:57:10 +02:00

65 lines
3.5 KiB
Ada

------------------------------------------------------------------------------
-- --
-- GNAT COMPILER COMPONENTS --
-- --
-- B A C K _ E N D --
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2010, 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- --
-- ware Foundation; either version 3, or (at your option) any later ver- --
-- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
-- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
-- for more details. You should have received a copy of the GNU General --
-- Public License distributed with GNAT; see file COPYING3. If not, go to --
-- http://www.gnu.org/licenses for a complete copy of the license. --
-- --
-- GNAT was originally developed by the GNAT team at New York University. --
-- Extensive contributions were provided by Ada Core Technologies Inc. --
-- --
------------------------------------------------------------------------------
-- Call the back end with all the information needed. Also contains other
-- back-end specific interfaces required by the front end.
package Back_End is
type Back_End_Mode_Type is (
Generate_Object,
-- Full back end operation with object file generation
Declarations_Only,
-- Partial back end operation with no object file generation. In this
-- mode the only useful action performed by gigi is to process all
-- declarations issuing any error messages (in particular those to
-- do with rep clauses), and to back annotate representation info.
Skip);
-- Back end call is skipped (syntax only, or errors found)
pragma Convention (C, Back_End_Mode_Type);
for Back_End_Mode_Type use (0, 1, 2);
procedure Call_Back_End (Mode : Back_End_Mode_Type);
-- Call back end, i.e. make call to driver traversing the tree and
-- outputting code. This call is made with all tables locked.
-- The back end is responsible for unlocking any tables it may need
-- to change, and locking them again before returning.
procedure Scan_Compiler_Arguments;
-- Acquires command-line parameters passed to the compiler and processes
-- them. Calls Scan_Front_End_Switches for any front-end switches found.
--
-- The processing of arguments is private to the back end, since the way
-- of acquiring the arguments as well as the set of allowable back end
-- switches is different depending on the particular back end being used.
--
-- Any processed switches that influence the result of a compilation must
-- be added to the Compilation_Arguments table.
end Back_End;