Commit Graph

69238 Commits

Author SHA1 Message Date
Richard Henderson
8f8abce4cf re PR tree-optimization/22035 (complex float comparison broken)
PR tree-opt/22035
        * builtins.c (fold_builtin_complex_mul): Remove.
        (fold_builtin_complex_div): Remove.
        (fold_builtin_1): Don't call them.
        * fold-const.c (fold_complex_add, fold_complex_mult_parts,
        fold_complex_mult, fold_complex_div_parts, fold_complex_div): Remove.
        (fold_binary): Don't call them.  Don't expand complex comparisons to
        elementary comparisons.
        * tree-complex.c (init_dont_simulate_again): Enhance search for
        stmts that require decomposition.
        (complex_visit_stmt): Handle RETURN_EXPR properly.
        (create_components): Handle no referenced variables properly.
        * tree.h (fold_complex_mult_parts): Remove.
        (fold_complex_div_parts): Remove.

From-SVN: r101086
2005-06-16 11:09:34 -07:00
Richard Guenther
2f84b963e9 extend.texi: Document sseregparm target attribute.
2005-06-16  Richard Guenther  <rguenth@gcc.gnu.org>

	* doc/extend.texi: Document sseregparm target attribute.
	Clarify fastcall and regparm documentation.
	* config/i386/i386.h: Adjust float_in_sse documentation.
	* config/i386/i386.c: Add new target attribute sseregparm.
	(ix86_handle_cdecl_attribute, ix86_handle_regparm_attribute):
	Merge into ...
	(ix86_handle_cconv_attribute): ... here.  Also handle
	sseregparm attribute.
	(ix86_comp_type_attributes): Compare sseregparm attributes.
	(ix86_function_sseregparm): New function, split out from ...
	(init_cumulative_args): ... here.  Use to decide use
	of SSE registers and error in case of missing support.
	(ix86_value_regno): Likewise.
	(function_arg_advance): Do not bail out for DFmode if we need
	to pass doubles in registers.
	(function_arg): Likewise.

	* gcc.target/i386/attributes-error.c: New testcase.
	* gcc.target/i386/fastcall-sseregparm.c: Likewise.
	* gcc.target/i386/regparm-stdcall.c: Likewise.
	* gcc.target/i386/sseregparm-1.c: Likewise.
	* gcc.target/i386/sseregparm-2.c: Likewise.

From-SVN: r101085
2005-06-16 16:39:51 +00:00
Paolo Bonzini
9f18db39e6 Alan Modra <amodra.bigpond.net.au>
2005-06-16  Paolo Bonzini  <bonzini@gnu.org>
            Daniel Jacobowitz  <dan@codesourcery.com>
	    Alan Modra <amodra.bigpond.net.au>

        * configure.ac (gcc_version): Set near the beginning.
        (as, ld, nm): Do not link in-tree tools.  Set gcc_cv_* if tools are
        found in the tree.  Use gcc_AC_PROG to find the tools in the system.
        (objdump): Do not look for it.
        * Makefile.in (NM_FOR_TARGET): Point to ./nm.
        (ORIGINAL_AS_FOR_TARGET, ORIGINAL_LD_FOR_TARGET,
        ORIGINAL_NM_FOR_TARGET): Substitute from autoconf.
        (as, ld, nm): New rules.
        (libgcc.mk): Depend on them.
        * aclocal.m4 (gcc_AC_TOOL_DIRS, gcc_AC_CHECK_TOOL,
        gcc_AC_BUILD_EXEEXT): New.
        (gcc_AC_CHECK_PROG_VER): Use gcc_AC_BUILD_EXEEXT.
        * configure: Regenerate.

Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>

From-SVN: r101084
2005-06-16 12:49:06 +00:00
Kelley Cook
72095b64e2 Makefile.am (libgcj_la_SOURCES): Define without conditional sources.
2005-06-16  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (libgcj_la_SOURCES): Define without conditional sources.
	(if USING_BOEHMGC): Directly append libgcj_la_SOURCES.
	(if USING_NOGC, SUPPLY_BACKTRACE, USING_POSIX_PLATFORM,
	USING_WIN32_PLATFORM, USING_DARWIN_CRT, USING_POSIX_THREADS,
	USING_WIN32_THREADS, USING_NO_THREADS): Likewise.
	* Makefile.in: Regenerate.

From-SVN: r101083
2005-06-16 12:13:34 +00:00
Jan Hubicka
5e2d947ce8 basic-block.h (rtl_bb_info): Break out head_, end_, global_live_at_start, global_live_at_end from ...
* basic-block.h (rtl_bb_info): Break out head_, end_,
	global_live_at_start, global_live_at_end from ...
	(basic_block_def): ... here; update all references
	(BB_RTL): New flag.
	(init_rtl_bb_info): Declare.
	* cfgexpand.c (expand_gimple_basic_block): Init bb info, set BB_RTL
	flag.
	* cfgrtl.c: Include ggc.h
	(create_basic_block_structure): Init bb info.
	(rtl_verify_flow_info_1): Check BB_RTL flag and rtl_bb_info pointer.
	(init_rtl_bb_info): New function.
	(rtl_merge_block, cfglayout_merge_block): Copy global_live_at_end here.
	* cfghooks.c (merge_block): Do not copy global_live_at_end here.
	* cfg.c (clear_bb_flags): Skip BB_RTL flag.
	(dump_flow_info): Gueard global_live_* dumping.

From-SVN: r101082
2005-06-16 10:33:40 +00:00
Arnaud Charlet
0adcdb66ec resync
From-SVN: r101081
2005-06-16 12:01:50 +02:00
Arnaud Charlet
8d3ed5b85b Resync with latest version of AI-302
From-SVN: r101079
2005-06-16 11:07:25 +02:00
Arnaud Charlet
bc979ad1ee Update header.
From-SVN: r101078
2005-06-16 11:06:53 +02:00
Arnaud Charlet
5ecdbd8c98 Update comments and spec.
From-SVN: r101077
2005-06-16 11:05:52 +02:00
Arnaud Charlet
a35e2879a3 Minor reformatting.
From-SVN: r101076
2005-06-16 11:05:06 +02:00
Arnaud Charlet
ad34d10544 Minor reformatting.
Update header.

From-SVN: r101075
2005-06-16 11:04:35 +02:00
Arnaud Charlet
ab5a098826 Update copyright
From-SVN: r101074
2005-06-16 11:04:01 +02:00
Arnaud Charlet
53a54647ba Removed, no longer used.
From-SVN: r101073
2005-06-16 11:01:52 +02:00
Arnaud Charlet
84fdd8a35e [multiple changes]
2005-06-10  Arnaud Charlet  <charlet@adacore.com>

	* Makefile.in: Add initialize.o when needed.
	Adapt to new VMS package body Symbols and subunits
	No specialized version of a-sytaco is needed for VxWorks.

	* a-wichun.ads, a-wichun.adb, a-zchuni.ads, a-zchuni.adb: New files.
	* a-zchara.ads, a-widcha.ads: New files.

	* system-hpux-ia64.ads: New file.

	* i-vxwork-x86.ads, i-vxwork.ads (intContext): Add this function which
	is imported from the VxWorks kernel.

2005-06-14  Robert Dewar  <dewar@adacore.com>

	* g-soliop-mingw.ads, g-soccon-vms.adb, a-swmwco.ads, exp_smem.adb,
	fmap.adb, a-szmzco.ads, s-traent-vms.adb, s-traent-vms.ads,
	a-direio.ads, a-exctra.ads, a-exexda.adb, a-exextr.adb, a-stream.ads,
	s-restri.ads, s-restri.adb, s-traent.adb, s-traent.ads, a-slcain.adb,
	a-stzhas.ads, a-tiinau.adb, comperr.adb, exp_ch11.adb, g-boubuf.adb,
	g-calend.adb, g-debpoo.ads, g-moreex.ads, gprep.adb, g-regpat.ads,
	i-cexten.ads, i-os2thr.ads, makeutl.ads, memroot.adb, mlib-prj.adb,
	namet.adb, namet.ads, prj-makr.adb, prj-proc.adb, sem_dist.adb,
	sem_elim.ads, s-valint.adb, s-vallli.adb, s-vallli.adb, s-vallli.ads,
	s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, scn.adb,
	s-tasinf.adb, targparm.adb, uname.adb, uname.ads, xnmake.adb,
	xsinfo.adb, a-direct.ads: Remove extra blank lines. Minor reformatting.

2005-06-14  Thomas Quinot  <quinot@adacore.com>

	* xeinfo.adb: Fix typo in comment

2005-06-14  Javier Miranda  <miranda@adacore.com>

	* repinfo.ads: Fix typo in comment

2005-06-14  Gary Dismukes  <dismukes@adacore.com>

	* s-finimp.adb (Parent_Tag): Delete this imported function (function
	Parent_Tag is now in the visible part of Ada.Tags).
	(Get_Deep_Controller): Call Ada.Tags.Parent_Tag directly instead of
	using imported function.

2005-06-14  Bernard Banner  <banner@adacore.com>

	* vxaddr2line.adb: Add support for Windows hosted x86 vxworks. Should
	also apply for handling support for VxSim 653.

2005-06-14  Eric Botcazou  <ebotcazou@adacore.com>

	* xsnames.adb: Add automatic generation of snames.h.

2005-06-14  Thomas Quinot  <quinot@adacore.com>

	* gen-soccon.c: Add IP_MULTICAST_IF constant
	Minor reformatting and adjustments to prevent warnings.

2005-06-14  Pascal Obry  <obry@adacore.com>

	* seh_init.c: Do not include <sys/stat.h>. This is not needed.

From-SVN: r101072
2005-06-16 11:00:13 +02:00
Robert Dewar
0453ca3d72 gnat_rm.texi: Add documentation for pragma Persistent_BSS Document second argument (Ada_05)...
2005-06-10  Robert Dewar  <dewar@adacore.com>
	    Eric Botcazou  <ebotcazou@adacore.com>
	    Ben Brosgol  <brosgol@adacore.com>
	    Cyrille Comar  <comar@adacore.com>
	    Sergey Rybin  <rybin@adacore.com>
	    Pascal Obry  <obry@adacore.com>

	* gnat_rm.texi: Add documentation for pragma Persistent_BSS
	Document second argument (Ada_05) of pragma Obsolescent
	Add note that call to subprogram marked with pragma Obsolescent
	is now considered to be a violation of program Restrictions
	(No_Obsolescent_Features).
	(Implementation Defined Pragmas) <Machine_Attribute>: Make it clear
	that only machine-dependent attributes are supported.

	* gnat_ugn.texi:
	Commented out menu lines and empty section for gnatclean examples
	Document -gnatwy/Y
	Fix some over long lines
	Clarify and enhance documentation of ADA_PROJECT_PATH.
	Rework section 2.11.2(3) about linking with a non-GNU compiler.
	Mention new switch -fcallgraph-info.
	Mention new switch -fstack-usage.
	For gnatpp, replace '-notab' with '-N' and add this option to Index
	Corrected VMS example.
	VMS keyword for style check -gnatyd is DOS_LINE_ENDINGS, no NOCRLF
	Minor reformatting
	Add documentation for -gnatyu switch (unnecessary blank lines)
	Document new switch -U for GNAT PRETTY and GNAT METRIC
	Add note about Stdcall being handled as C convention on non Windows OS.
	Remove some junk typo in description of gnatbind -S switch
	Remove reference to Extensions_Allowed pragma
	Document the new order of the directories to be searched (source and
	object directories of project files before directories in ADA_*_PATH
	environment variables.

        * g-trasym.ads: Document that IRIX is supported

From-SVN: r101071
2005-06-16 10:57:18 +02:00
Eric Botcazou
ea6ac85938 re PR ada/20515 ("stdcall" imports are not handled correctly)
2005-06-10  Eric Botcazou  <ebotcazou@adacore.com>
	    Olivier Hainque  <hainque@adacore.com>
	    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
	    Pascal Obry  <obry@adacore.com>

	* gigi.h: (build_allocator): Add arg IGNORE_INIT_TYPE.

	* trans.c (call_to_gnu): Issue a warning for users of Starlet when
	making a temporary around a procedure call because of non-addressable
	actual parameter.
	(process_freeze_entity): If entity is a private type, capture size
	information that may have been computed for the full view.
	(tree_transform, case N_Allocator): If have initializing expression,
	check type for Has_Constrained_Partial_View and pass that to
	build_allocator.
	(tree_transform, case N_Return_Statement): Pass extra arg to
	build_allocator.

	* decl.c (annotate_value): Remove early return if -gnatR is not
	specified.
	(gnat_to_gnu_field): Don't make a packable type for a component clause
	if the position is byte aligned, the field is aliased, and the clause
	size isn't a multiple of the packable alignment. It serves no useful
	purpose packing-wise and would be rejected later on.
	(gnat_to_gnu_entity, case object): Pass extra arg to build_allocator.

	PR ada/20515
	(gnat_to_gnu_entity): Remove use of macro _WIN32 which is wrong in the
	context of cross compilers. We use TARGET_DLLIMPORT_DECL_ATTRIBUTES
	instead.
	(create_concat_name): Idem.

From-SVN: r101070
2005-06-16 10:56:46 +02:00
Matthew Heaney
8704d4b30e a-swunha.ads, [...]: Removed.
2005-06-14  Matthew Heaney  <heaney@adacore.com>

	* a-swunha.ads, a-swunha.adb: Removed. Replaced by a-swuwha.ad[sb]
	* a-swuwha.ads, a-swuwha.adb: New files

	* a-szunha.ads, a-szunha.adb: Removed, replaced by a-szuzha.ad[sb]
	* a-szuzha.ads, a-szuzha.adb: New files.

	* a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, a-crbtgk.ads,
	a-crbtgk.adb, a-crbltr.ads, a-coorse.ads, a-coorse.adb, a-convec.ads,
	a-convec.adb, a-coinve.ads, a-coinve.adb, a-cohata.ads, a-cohama.ads,
	a-cohama.adb, a-ciorse.ads, a-ciorse.adb, a-cihama.ads, a-cihama.adb,
	a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cdlili.ads,
	a-cdlili.adb, a-coormu.adb, a-ciormu.adb, a-cihase.adb, a-cohase.adb,
	a-cohase.ads, a-ciorma.ads, a-coorma.ads, a-ciormu.ads, a-coormu.ads,
	a-swunha.adb, a-stunha.adb, a-ciorma.adb, a-coorma.adb, a-shcain.ads,
	a-shcain.adb, a-chtgke.ads, a-chtgke.adb, a-stwiha.ads, a-stwiha.adb,
	a-strhas.adb, a-stzhas.adb: synchronized to the latest version of the
	Ada 2005 RM.

From-SVN: r101069
2005-06-16 10:56:24 +02:00
Vincent Celier
dc8f57914c makegpr.adb (Compile_Link_With_Gnatmake): Invoke gnatmake with -d if gprmake was invoked with -d.
2005-06-14  Vincent Celier  <celier@adacore.com>

	* makegpr.adb (Compile_Link_With_Gnatmake): Invoke gnatmake with -d if
	gprmake was invoked with -d.
	(Compile_Sources): If -d was used, output the "completed ..." message
	for each compilation.
	(Scan_Arg): Recognize new switch -d
	When -c and at least one main is specified, set
	Unique_Compile to True to guarantee that no other sources will be
	compiled.

From-SVN: r101068
2005-06-16 10:55:59 +02:00
Doug Rupp
a46edbad59 vms_conv.ads, [...]: Remove "Library" command.
2005-06-14  Doug Rupp  <rupp@adacore.com>
	    Vincent Celier  <celier@adacore.com>

	* vms_conv.ads, vms_conv.adb: Remove "Library" command.
	Update copyright.

	* vms_data.ads: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY
	Remove "Library" command.
	Change keyword for style check -gnatyd from NOCRLF to
	DOS_LINE_ENDINGS.
	Remove useless second style check keyword NONE
	Remove help documentation for inexistent style check keyword
	RM_COLUMN_LAYOUT.
	Add help documentation for style check keywords DOS_LINE_ENDINGS,
	UNNECESSARY_BLANK_LINES and XTRA_PARENS
	Add UNNECESSARY_BLANK_LINES for -gnatyu
	Add qualifiers /ALL_PROJECTS (-U) for GNAT PRETTY and GNAT METRIC

        * ug_words: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY

From-SVN: r101067
2005-06-16 10:55:47 +02:00
Sergey Rybin
f3d771b30e styleg-c.adb (Body_With_No_Spec): Remove ':' from warning message.
2005-06-14  Sergey Rybin  <rybin@adacore.com>

	* styleg-c.adb (Body_With_No_Spec): Remove ':' from warning message.

From-SVN: r101066
2005-06-16 10:55:22 +02:00
Robert Dewar
d026bfa56c nmake.adt: Modify header so that xnmake does not generate output files with multiple blank...
2005-06-14  Robert Dewar  <dewar@adacore.com>

	* nmake.adt: Modify header so that xnmake does not generate output
	files with multiple blank lines.

        * treeprs.adt: Remove a blank line so that output from xtreeprs does
        not have an extra blank line

From-SVN: r101065
2005-06-16 10:53:02 +02:00
Arnaud Charlet
ff7cce69d5 2005-06-14 Arnaud Charlet <charlet@adacore.com>
Jose Ruiz  <ruiz@adacore.com>

	* s-tposen.adb, s-tpobop.adb
	(Exceptional_Complete_Rendezvous): Save the occurrence and not only
	the exception id.
	(PO_Do_Or_Queue): Before queuing a task on an entry queue we check that
	there is no violation of the Max_Entry_Queue_Length restriction (if it
	has been set); Program_Error is raised otherwise.
	(Requeue_Call): Before requeuing the task on the target entry queue we
	check that there is no violation of the Max_Entry_Queue_Length
	restriction (if it has been set); Program_Error is raised otherwise.

From-SVN: r101064
2005-06-16 10:49:41 +02:00
Arnaud Charlet
f51ab33b26 s-tasren.adb (Exceptional_Complete_Rendezvous): Fix race condition.
2005-06-14  Arnaud Charlet  <charlet@adacore.com>

	* s-tasren.adb (Exceptional_Complete_Rendezvous): Fix race condition.

From-SVN: r101063
2005-06-16 10:47:16 +02:00
Thomas Quinot
ab129900a4 s-strxdr.adb: Follow AI95-00132
2005-06-14  Thomas Quinot  <quinot@adacore.com>

	* s-strxdr.adb: Follow AI95-00132

From-SVN: r101062
2005-06-16 10:46:59 +02:00
Ed Schonberg
bd6f5b5cb2 sem_warn.adb (Warn_On_Known_Condition): If the constant expression appears within a negation (either from source or as...
2005-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_warn.adb (Warn_On_Known_Condition): If the constant expression
	appears within a negation (either from source or as a rewriting of
	inequality) adjust text of warning accordingly.

From-SVN: r101061
2005-06-16 10:46:48 +02:00
Robert Dewar
59e5fbe064 re PR ada/10671 (improve error message for named notation used in pragma)
2005-06-14  Robert Dewar  <dewar@adacore.com>
	    Ed Schonberg  <schonberg@adacore.com>

	PR ada/10671

	* sem_prag.adb: Implement pragma Persistent_BSS
	Remove obsolete pragma Persistent_Data, Persistent_Object
	Set Ada_Version_Explicit, for implementation of AI-362
	Test Ada_Version_Explicit for Preelaborate_05 and Pure_05
	Add processing for pragma Pure_05 and Preelaborate_05
	Add processing for Assertion_Policy pragma
	Add pragma identifiers for Assert
	(Analyze_Pragma, case Assert): Check number of arguments
	(Process_Inline): Additional guard against an illegal program, where the
	argument of the pragma is undefined, and warnings on redundant
	constructs are enabled.
	(Analyze_Pragma, case Obsolescent): Allow an optional second argument
	Ada_05 to this pragma, specifying that the pragma is only active in
	Ada_05 mode.
	(Check_Arg_Order): New procedure
	Add appropriate calls to this procedure throughout
	Also throughout, check entity name before doing any other checks

	* snames.h snames.ads, snames.adb: Add pragma Persistent_BSS
	Remove obsolete pragma Persistent_Data, Persistent_Object
	Add entries for pragma Pure_05 and Preelaborate_05
	Add entries for Assertion_Policy pragma and associated names
	Add some names for pragma argument processing

	* tbuild.ads, tbuild.adb: (Make_Linker_Section_Pragma): New function

From-SVN: r101060
2005-06-16 10:46:36 +02:00
Ed Schonberg
6eaf409547 sem_eval.adb (Subtypes_Statically_Match): Use discriminant constraint of full view if present...
2005-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_eval.adb (Subtypes_Statically_Match): Use discriminant
	constraint of full view if present, when other type is discriminated.
	(Eval_Relational_Op): Recognize tests of pointer values against Null,
	when the pointer is known to be non-null, and emit appropriate warning.

From-SVN: r101059
2005-06-16 10:46:01 +02:00
Ed Schonberg
4875fbba52 sem_case.adb (Expand_Others_Choice): Improve warning.
2005-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_case.adb (Expand_Others_Choice): Improve warning.

From-SVN: r101058
2005-06-16 10:45:45 +02:00
Gary Dismukes
bc49df98e8 sem_aggr.adb (Aggregate_Constraint_Checks): Apply a conversion to the expression when the component type is an anonymous...
2005-06-14  Gary Dismukes  <dismukes@adacore.com>

	* sem_aggr.adb (Aggregate_Constraint_Checks): Apply a conversion to the
	expression when the component type is an anonymous access type to
	ensure that appropriate accessibility checks are done.

	* sem_ch5.adb (Analyze_Assignment): Apply a implicit conversion to the
	expression of an assignment when the target object is of an anonymous
	access type. This ensures that required accessibility checks are done.
	(One_Bound): Move the check for type Universal_Integer to
	Process_Bounds.
	(Process_Bounds): Check whether the type of the preanalyzed range is
	Universal_Integer, and in that case set Typ to Integer_Type prior
	to setting the type of the original range and the calls to One_Bound.

From-SVN: r101057
2005-06-16 10:45:32 +02:00
Robert Dewar
357ac4df50 scng.adb: Add call to new Check_EOF routine
2005-06-14  Robert Dewar  <dewar@adacore.com>

	* scng.adb: Add call to new Check_EOF routine
	(Accumulate_Checksum): Properly handle wide wide char >= 2 ** 24
	Add some comments regarding wide character handling

	* style.ads, styleg.ads, styleg.adb: Implement new style switch -gnatyu

	* stylesw.ads, stylesw.adb: Implement new style switch -gnatyu

	* g-utf_32.ads, g-utf_32.adb (Is_UTF_32_Non_Graphic): Other_Format
	characters are now considered graphic characters and hence yield false
	in this call.

From-SVN: r101056
2005-06-16 10:45:19 +02:00
Eric Botcazou
38d7a13afc s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer.
2005-06-14  Eric Botcazou  <ebotcazou@adacore.com>

	* s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer.

From-SVN: r101055
2005-06-16 10:44:56 +02:00
Vincent Celier
a493557f3a prj-part.adb (Pre_Parse_Context_Clause): Call Set_Is_Not_Last_In_List when the project file in a with clause is not the...
2005-06-14  Vincent Celier  <celier@adacore.com>

	* prj-part.adb (Pre_Parse_Context_Clause): Call Set_Is_Not_Last_In_List
	when the project file in a with clause is not the last one, that is the
	project file name is followed by a comma.
	* prj-pp.adb: (First_With_In_List): New Boolean global variable
	(Print): Issue list of project files separated by commas in with clauses
	according to the values returned by Is_Not_Last_In_List.
	* prj-tree.ads, prj-tree.adb: (Is_Not_Last_In_List): New function
	(Set_Is_Not_Last_In_List): New procedure

From-SVN: r101054
2005-06-16 10:44:38 +02:00
Vincent Celier
88664966ce prj-nmsc.adb (Suffix_For): Change default suffix for C++ to ".cpp"
2005-06-14  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Suffix_For): Change default suffix for C++ to ".cpp"
	(Check_Stand_Alone_Library): If the specified reference symbol file does
	not exist, only issue a warning when the symbol policy is not
	Controlled. And, when symbol policy is Compliant, set the symbol
	policy to Autonomous.

From-SVN: r101053
2005-06-16 10:44:23 +02:00
Vincent Celier
474e8cbe94 prep.adb (Preprocess): Ignore error when scanning the first token of a line.
2005-06-14  Vincent Celier  <celier@adacore.com>

	* prep.adb (Preprocess): Ignore error when scanning the first token of
	a line.

From-SVN: r101052
2005-06-16 10:44:11 +02:00
Robert Dewar
f073e741c9 re PR ada/15613 (Accepts named parameters not last)
2005-06-14  Robert Dewar  <dewar@adacore.com>

	PR ada/15613

	* par-ch2.adb (Scan_Pragma_Argument): New procedure
	(P_Pragma): Implement RM 2.8(4) check for no pos args after named args

From-SVN: r101051
2005-06-16 10:43:57 +02:00
Vincent Celier
96f2e32fff osint.adb (Add_Default_Search_Dirs): Put source and object directories of project files before directories coming...
2005-06-14  Vincent Celier  <celier@adacore.com>

	* osint.adb (Add_Default_Search_Dirs): Put source and object
	directories of project files before directories coming from
	ADA_INCLUDE_PATH and ADA_OBJECTS_PATH.

From-SVN: r101050
2005-06-16 10:43:43 +02:00
Robert Dewar
f81e6250d5 opt.ads, opt.adb: New flags for persistent_bss mode Add Ada_Version_Explicit...
2005-06-14  Robert Dewar  <dewar@adacore.com>

	* opt.ads, opt.adb: New flags for persistent_bss mode
	Add Ada_Version_Explicit, for implementation of AI-362
	Add Assertions_Enabled_Config and associated handling
	Needed since setting can be changed with Assertion_Policy pragma
	Add new flag Warn_On_Ada_2005_Compatibility

	* switch-c.adb: Recognize -gnatwy/Y
	Set Ada_Version_Explicit, for implementation of AI-362
	The -gnatg switch now includes -gnatyu

	* usage.adb: Add -gnatwy/Y
	Remove wrong asterisk on -gnatwX line
	Add line for -gnatyu switch

From-SVN: r101049
2005-06-16 10:43:32 +02:00
Pascal Obry
ebccab778e mdll.adb (Get_Dll_Name): New routine that returns the DLL name given the library name.
2005-06-14  Pascal Obry  <obry@adacore.com>

	* mdll.adb (Get_Dll_Name): New routine that returns the DLL name given
	the library name.

From-SVN: r101048
2005-06-16 10:43:17 +02:00
Doug Rupp
844e7daa7e Make-lang.in: Add initialize.o when needed.
2005-06-10  Doug Rupp  <rupp@adacore.com>
	    Arnaud Charlet  <charlet@adacore.com>
	    Olivier Hainque  <hainque@adacore.com>
	    Jose Ruiz  <ruiz@adacore.com>

	* Make-lang.in: Add initialize.o when needed.
	Remove obsolete references to RT_FLAGS.
	Add missing dependencies for sdefault.o

	* initialize.c: New file.

	* init.c [VMS] Declare ADA$ externs weak to fix build problem in IVMS.
	[VMS] cond_signal_table: Fix problem in declaration.
	[VMS] __gnat_error_handler: rewrite.
	Move all __gnat_initialize() routines to initialize.c
	Specialize the former "hpux" section to "hppa hpux", as this is what the
	section really is here for and we now have other hpux ports that need
	different contents.
	(__gnat_adjust_context_for_raise) i386-linux: First version of this
	function for this target. Adjust PC by one in the machine context. This
	adjustment was previously done in the MD_FALLBACK_FRAME_STATE_FOR, but
	it is more reliable to do that in the signal handler itself.
	(__gnat_install_handler) i386-linux: Set SA_SIGINFO in the sigaction
	flags, so that the handler is passed the context structure to adjust
	prior to the raise.
	(__gnat_error_handler) i386-linux: Adjust the signature to match what a
	SA_SIGINFO sigaction should look like. Call
	__gnat_adjust_context_for_raise before actually raising. Cleanup unused
	Machine_State_Operations stuff.
	Add conditional code so that the x86_64 is also supported.

From-SVN: r101047
2005-06-16 10:43:05 +02:00
Ed Schonberg
217efe162d lib-xref.ads, [...] (Generate_Definition): Treat any entity declared within an inlined body as referenced...
2005-06-14  Ed Schonberg  <schonberg@adacore.com>
	    Emmanuel Briot  <briot@adacore.com>

	* lib-xref.ads, lib-xref.adb (Generate_Definition): Treat any entity
	declared within an inlined body as referenced, to prevent spurious
	warnings.
	(Output_One_Ref): If an entity renames an array component, indicate in
	the ALI file that this aliases (renames) the array. Capture as well
	function renamings that rename predefined operations.
	Add information about generic parent for package and subprogram
	instances.
	(Get_Type_Reference): For a subtype that is the renaming of an actual in
	an instantiation, use the first_subtype to ensure that we don't generate
	cross-reference information for internal types.
	For objects and parameters of a generic private type, retain the '*'
	indicator to distinguish such an entity from its type.

        * ali.ads (Xref_Entity_Record): New fields Iref_File_Num and Iref_Line,
        to store information about instantiated entities.

        * ali.adb (Scan_ALI): Add support for parsing the reference to the
        generic parent

        * xref_lib.adb (Skip_To_Matching_Closing_Bracket): New subprogram
        (Parse_Identifier_Info, Parse_Token): Add support for the generic parent
        information.

From-SVN: r101046
2005-06-16 10:42:37 +02:00
Javier Miranda
e9437007b8 lib-load.ads, [...] (Load_Unit): Addition of a new parameter that indicates if...
2005-06-14  Javier Miranda  <miranda@adacore.com>
	    Jose Ruiz  <ruiz@adacore.com>
	    Robert Dewar  <dewar@adacore.com>
	    Ed Schonberg  <schonberg@adacore.com>

	* lib-load.ads, lib-load.adb (Load_Unit): Addition of a new parameter
	that indicates if we are parsing a compilation unit found in a
	limited-with clause.
	It is use to avoid the circularity check.

	* par.ads, par.adb (Par): Addition of a new parameter to indicate if
	we are parsing a compilation unit found in a limited-with clause. This
	is use to avoid the circularity check.

	* par-load.adb (Load): Indicate Lib.Load_Unit if we are loading the
	unit as a consequence of parsing a limited-with clause. This is used
	to avoid the circularity check.

	* sem_ch10.adb: Suppress Ada 2005 unit warning if -gnatwY used
	(Analyze_Context): Limited-with clauses are now allowed
	in more compilation units.
	(Analyze_Subunit_Context, Check_Parent): Protect the frontend
	againts previously reported critical errors in context clauses
	(Install_Limited_Withed_Unit): Code cleanup plus static detection
	of two further errors: renamed subprograms and renamed packages
	are not allowed in limited with clauses.
	(Install_Siblings): Do not install private_with_clauses on the package
	declaration for a non-private child unit.
	(Re_Install_Parents): When a parent of the subunit is reinstalled,
	reset visibility of child units properly.
	(Install_Withed_Unit): When a child unit appears in a with_clause of its
	parent, it is immediately visible.

From-SVN: r101045
2005-06-16 10:42:20 +02:00
Gary Dismukes
d37209bffb layout.adb (Discrimify): Remove resetting of Vtype to the underlying type which turns out to be an...
2005-06-14  Gary Dismukes  <dismukes@adacore.com>

	* layout.adb (Discrimify): Remove resetting of Vtype to the underlying
	type which turns out to be an incomplete and incorrect fix.
	(Layout_Array_Type): Use Underlying_Type when checking whether the scope
	of the type is declared in a record (for determination of insertion
	type).
	(SO_Ref_From_Expr): Test whether Vtype denotes a partial or full view of
	a private type and ensure that the primary entity is used for the type
	of the newly created function's V formal by taking the Etype of the
	view.

From-SVN: r101044
2005-06-16 10:42:04 +02:00
Thomas Quinot
564383da33 re PR ada/6717 (Race condition in GNAT.Sockets.Create_Selector)
2005-06-14  Thomas Quinot  <quinot@adacore.com>

	PR ada/6717

	* g-socket.ads, g-socket.adb (Inet_Addr): Special case the all-ones
	broadcast address.
	(Create_Selector): Bind listening socket used to create the signalling
	socket pair to 127.0.0.1 to limit the scope for 'theft' of connection.
	Set listen backlog to 1 to ensure that we detect socket theft by a
	failure of our own connect(2) call.
	(Check_Selector): Improve documentation of the selector mechanism.
	(Broadcast_Inet_Addr): New constant.

From-SVN: r101043
2005-06-16 10:41:50 +02:00
Vincent Celier
e5a97c1329 g-os_lib.ads, [...] (Non_Blocking_Spawn): Two new versions with output file descriptor and with output file name.
2005-06-14  Vincent Celier  <celier@adacore.com>
	    Cyrille Comar  <comar@adacore.com>

	* g-os_lib.ads, g-os_lib.adb (Non_Blocking_Spawn): Two new versions
	with output file descriptor and with output file name.
	(Dup, Dup2): Now global procedures as they are used by two subprograms
	(Copy): Allocate the 200K buffer on the heap rather than on the stack.

From-SVN: r101042
2005-06-16 10:41:09 +02:00
Pascal Obry
de972f9de7 g-dynhta.ads, [...] (Reset): Free the table itself after releasing the items.
2005-06-14  Pascal Obry  <obry@adacore.com>

	* g-dynhta.ads, g-dynhta.adb (Reset): Free the table itself after
	releasing the items.

From-SVN: r101041
2005-06-16 10:40:36 +02:00
Nicolas Roche
df9572726b g-diopit.adb (Wildcard_Iterator): Return directly if Path is equal to ""
2005-06-14  Nicolas Roche  <roche@adacore.com>

	* g-diopit.adb (Wildcard_Iterator): Return directly if Path is equal
	to ""
	(Next_Level): Fix minor bug in handling of ../dir case
	(Read): Add dir separator to Directory name so that "" is understood as
	 "/"

From-SVN: r101040
2005-06-16 10:40:05 +02:00
Emmanuel Briot
ee936a6982 g-debpoo.adb (Deallocate, [...]): Improve output.
2005-06-14  Emmanuel Briot  <briot@adacore.com>

	* g-debpoo.adb (Deallocate, Dereference): Improve output.

From-SVN: r101039
2005-06-16 10:39:12 +02:00
Joel Brobecker
ffdbd4c44e g-comlin.adb (Getopt): Skip any leading space in the Switches string.
2005-06-14  Joel Brobecker  <brobecker@adacore.com>

	* g-comlin.adb (Getopt): Skip any leading space in the Switches string.
	Avoids a CE when it starts with spaces.

From-SVN: r101038
2005-06-16 10:38:55 +02:00
Jose Ruiz
a49c3e1607 fe.h: Add entry for Opt.Exception_Locations_Suppressed so that gigi can determine...
2005-06-14  Jose Ruiz  <ruiz@adacore.com>

	* fe.h: Add entry for Opt.Exception_Locations_Suppressed so that gigi
	can determine whether pragma Suppress_Exception_Locations is in effect.

	* utils2.c (build_call_raise): Do not pass the file name to the
	exception handler if pragma Suppress_Exception_Locations is in effect.
	(build_allocator): Add and process arg IGNORE_INIT_TYPE.

From-SVN: r101037
2005-06-16 10:38:39 +02:00
Robert Dewar
84f8ad69c8 exp_intr.adb, [...]: Minor fix to error message text
2005-06-14  Robert Dewar  <dewar@adacore.com>

	* exp_intr.adb, par-ch5.adb: Minor fix to error message text

From-SVN: r101036
2005-06-16 10:38:22 +02:00