Commit Graph

93338 Commits

Author SHA1 Message Date
Arnaud Charlet
deef4289f2 [multiple changes]
2009-05-06  Robert Dewar  <dewar@adacore.com>

	* s-fileio.adb: Minor comment update

	* sem_ch8.adb: Minor reformatting

	* exp_ch3.adb: Update comments.

2009-05-06  Tristan Gingold  <gingold@adacore.com>

	* init.c, s-osinte-darwin.ads: Reduce alternate stack size

From-SVN: r147167
2009-05-06 12:15:30 +02:00
Arnaud Charlet
965dbd5cd4 Revert previous change.
From-SVN: r147166
2009-05-06 12:13:44 +02:00
Arnaud Charlet
895225568c Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
* gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
	Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks

	* gcc-interface/Make-lang.in: Update dependencies

From-SVN: r147165
2009-05-06 12:07:42 +02:00
Arnaud Charlet
a693f55e58 [multiple changes]
2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
	change. The context clause of a generic instance declaration must be
	preserved until the end of the compilation, because it may have to be
	installed/removed repeatedly.
	The latest change to sem.adb ensures that the context of both spec and
	body of an instance is traversed before the instance itself, making
	this patch redundant.

2009-05-06  Robert Dewar  <dewar@adacore.com>

	* sem_aggr.adb: Minor code clean-up

From-SVN: r147164
2009-05-06 11:41:39 +02:00
Arnaud Charlet
e264efcc38 [multiple changes]
2009-05-06  Gary Dismukes  <dismukes@adacore.com>

	* sem_aggr.adb: Fix typo.

2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
	declaration, do not adjust if the declaration is to be rewritten into
	a renaming.

2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Find_Type): Reject the use of a task type in its own
	discriminant part.

2009-05-06  Bob Duff  <duff@adacore.com>

	* s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
	otherwise the compiler would be allowed to optimize away the cleanup
	code.

From-SVN: r147163
2009-05-06 11:33:04 +02:00
Arnaud Charlet
69a0c1741e [multiple changes]
2009-05-06  Gary Dismukes  <dismukes@adacore.com>

	* gnat_ugn.texi: Fix typo.

2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* g-debuti.adb: Minor reformatting

	* exp_attr.adb: Minor reformatting

2009-05-06  Robert Dewar  <dewar@adacore.com>

	* sem_aggr.adb: Minor reformatting.

	* g-socthi-vms.adb: Minor reformatting

2009-05-06  Bob Duff  <duff@adacore.com>

	* g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
	(Append_All): Add Append_All to g-table and g-dyntab, similar to table.

From-SVN: r147162
2009-05-06 11:29:35 +02:00
Bob Duff
4e0d20ca84 gnat_ugn.texi, [...]: Add missing documentation for warnings flags.
2009-05-06  Bob Duff  <duff@adacore.com>

	* gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
	flags.

From-SVN: r147161
2009-05-06 11:25:37 +02:00
Javier Miranda
117951856e sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
2009-05-06  Javier Miranda  <miranda@adacore.com>

	* sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
	(Resolve_Extension_Aggregate): Do not reject C++ constructors in
	extension aggregates.
	(Resolve_Record_Aggregate): Add support for C++ constructors in
	extension aggregates.

	* exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
	constructors in extension aggregates.

From-SVN: r147160
2009-05-06 11:23:53 +02:00
Arnaud Charlet
426d271775 [multiple changes]
2009-05-06  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Record_Type): Improve error msg for bad size
	clause.

2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
	packed type, since on OpenVMS, struct msghdr is packed.

2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
	call returning an unconstrained composite value, create the proper
	subtype for it, as is done for object dclarations with unconstrained
	nominal subtypes. Perform this transformation regarless of whether
	call comes from source.

From-SVN: r147159
2009-05-06 11:19:08 +02:00
Arnaud Charlet
8dc10d38cc [multiple changes]
2009-05-06  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
	records

	* gnat_rm.texi:
	Add documentation for pragma Implicit_Packing applied to record
	types.

2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem.adb (Walk_Library_Items): Place all with_clauses of an
	instantiation on the spec, because late instance bodies may generate
	with_clauses for the instance body but are inserted in the instance
	spec.

From-SVN: r147158
2009-05-06 11:13:27 +02:00
Arnaud Charlet
3249690d95 [multiple changes]
2009-05-06  Emmanuel Briot  <briot@adacore.com>

	* prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
	support for returning the directory even if it doesn't exist. This is
	used for the object directory, since we are always setting it to a
	non-null value, and we should set it to an absolute name rather than a
	relative name for the sake of external tools that might depend on it.
	(Check_Library_Attributes): When Project.Library_Dir is known, check
	that the directory exists.

2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Check_Dereference): If the prefix of an attribute
	reference is an implicit dereference, do not freeze the designated type
	if within a default expression or when preanalyzing a pre/postcondtion.

From-SVN: r147157
2009-05-06 11:08:27 +02:00
Arnaud Charlet
fd366a46fa [multiple changes]
2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
	call returning an unconstrained composite value, create the proper
	subtype for it, as is done for object dclarations with unconstrained
	nominal subtypes

2009-05-06  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
	improvements

	* freeze.adb: Minor reformatting

From-SVN: r147156
2009-05-06 11:03:57 +02:00
Paolo Carlini
326bc15919 revert: acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when possible.
2009-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2009-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when
	possible.
	* configure: Regenerate.

From-SVN: r147154
2009-05-06 09:00:34 +00:00
Arnaud Charlet
7dd1ab8497 [multiple changes]
2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* sem_ch3.adb (Access_Type_Declaration): An access type whose
	designated type is a limited view from a limited with clause (flagged
	From_With_Type) is not itself such a limited view.

2009-05-06  Emmanuel Briot  <briot@adacore.com>

	* prj-nmsc.adb: Remove unused variable.

	* clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
	prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
	makeutl.ads, since not all users of prj.ads need this.

From-SVN: r147152
2009-05-06 10:29:29 +02:00
Javier Miranda
2854148891 exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++ constructor in case of aggregates whose type is a...
2009-05-06  Javier Miranda  <miranda@adacore.com>

	* exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
	constructor in case of aggregates whose type is a CPP_Class type.

From-SVN: r147151
2009-05-06 10:28:40 +02:00
Arnaud Charlet
55c078acd9 [multiple changes]
2009-05-06  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb: Minor comment additions

	* osint.adb: Minor reformatting

2009-05-06  Pascal Obry  <obry@adacore.com>

	* initialize.c: On Windows, keep full pathname to expanded command
	line patterns.

From-SVN: r147150
2009-05-06 10:23:58 +02:00
Arnaud Charlet
6bde3eb52c [multiple changes]
2009-05-06  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
	an aggregate with box default is of a discriminated private type, do
	not build a subaggregate for it.
	A proper call to the initialization procedure is generated for it.

2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
	(Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
	Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
	use standard array code for Standard.String.
	(Exp_Dist): Bump PolyORB s-parint API version to 3.
	(Rtsfind): New entities TA_Std_String, Unbounded_String.

2009-05-06  Robert Dewar  <dewar@adacore.com>

	* g-comlin.ads: Minor reformatting

	* xoscons.adb: Minor reformatting

From-SVN: r147149
2009-05-06 10:20:13 +02:00
Arnaud Charlet
3743d5bde6 [multiple changes]
2009-05-06  Gary Dismukes  <dismukes@adacore.com>

	* sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
	Underlying_Type before retrieving the type definition for gathering
	components, to account for the case where the type is private.

2009-05-06  Tristan Gingold  <gingold@adacore.com>

	* g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).

2009-05-06  Thomas Quinot  <quinot@adacore.com>

	* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
	g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
	g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
	(GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
	Windows versions): Fix incorrect base
	address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
	(GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
	System.Address for the To parameter instead of a Sockaddr_In_Access, to
	achieve independance from AF_INET family, and also to allow this
	parameter to be retrieved from a Msghdr for the Windows case where
	these routines are used to implement C_Sendmsg and C_Recvmsg.

2009-05-06  Bob Duff  <duff@adacore.com>

	* g-expect.adb, g-expect.ads: Minor reformatting

	* sdefault.ads: Minor comment fix

	* g-expect-vms.adb: Minor reformatting

	* table.ads, table.adb (Append_All): New convenience procedure for
	appending a whole array.

	* comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
	box message. Call Osint.Dump_Source_File_Names to print out the file
	list, instead of rummaging around in various data structures.

	* debug.adb: New switch -gnatd.n, to print source file names as they
	are read.

	* alloc.ads: Add parameters for Osint.File_Name_Chars.

	* osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
	out source file names during a "bug box".
	(Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
	(Read_Source_File): Print out the file name, if requested via -gnatd.n.
	If it's not part of the runtimes, store it for later printing by
	Dump_Source_File_Names.

2009-05-06  Javier Miranda  <miranda@adacore.com>

	* gnat_rm.texi (CPP_Constructor): Avoid duplication of the
	documentation and add reference to the GNAT user guide for further
	details.

2009-05-06  Javier Miranda  <miranda@adacore.com>

	* gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
	also wrong examples that use extension aggregates.

2009-05-06  Albert Lee  <lee@adacore.com>

	* s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
	of Msg_Iovlen_T for VMS.

From-SVN: r147148
2009-05-06 10:11:41 +02:00
GCC Administrator
95914172e6 Daily bump.
From-SVN: r147143
2009-05-06 00:16:48 +00:00
Jonathan Wakely
efdb734755 re PR libstdc++/39909 (non-TLS version of std::call_once causes terminate)
2009-05-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/39909
	* include/std/mutex (__get_once_functor_lock, __get_once_mutex,
	__set_once_functor_lock_ptr): Replace global lock object with local
	locks on global mutex.
	* src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
	__set_once_functor_lock_ptr): Likewise, keeping old function to
	preserve ABI.
	(__once_proxy): Use pointer to local lock if set, global lock
	otherwise.
	* config/abi/pre/gnu.ver: Add new symbols to new ABI version.
	* testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
	* testsuite/30_threads/call_once/39909.cc: New.

From-SVN: r147137
2009-05-05 22:32:38 +01:00
Jakub Jelinek
32f579f6eb re PR middle-end/39666 (spurious warning with ranged-switch statements)
PR middle-end/39666
	* gimplify.c (gimplify_switch_expr): If case labels cover the whole
	range of the type, but default label is missing, add it with one
	of the existing labels instead of adding a new label for it.

	* gcc.dg/pr39666-1.c: New test.
	* gcc.dg/pr39666-2.c: Likewise.
	* g++.dg/warn/Wuninitialized-4.C: Likewise.
	* g++.dg/warn/Wuninitialized-5.C: Likewise.
	* gfortran.dg/pr39666-1.f90: Likewise.
	* gfortran.dg/pr39666-2.f90: Likewise.

From-SVN: r147136
2009-05-05 23:09:16 +02:00
Jakub Jelinek
6e57a01df4 tree.h: Remove DECL_BY_REFERENCE from private_flag comment.
* tree.h: Remove DECL_BY_REFERENCE from private_flag comment.
	(struct tree_base): Adjust spacing for 8 bit boundaries.
	(struct tree_decl_common): Add decl_by_reference_flag bit.
	(DECL_BY_REFERENCE): Adjust.
	* print-tree.c (print_node): For VAR_DECL, PARM_DECL or RESULT_DECL,
	print DECL_BY_REFERENCE bit.
	* dbxout.c (DECL_ACCESSIBILITY_CHAR): Revert last change.
	* dwarf2out.c (loc_by_reference, gen_decl_die): Check
	DECL_BY_REFERENCE for all VAR_DECLs, not just non-static ones.
	(gen_variable_die): Likewise.  Check TREE_PRIVATE/TREE_PROTECTED
	unconditionally.

From-SVN: r147135
2009-05-05 23:07:05 +02:00
Adam Nemet
21c3348aea mips.exp: Add -mtune= to mips_option_groups.
* gcc.target/mips/mips.exp: Add -mtune= to mips_option_groups.
	* gcc.target/mips/dspr2-MULT.c: Pass -mtune=74kc
	* gcc.target/mips/dspr2-MULTU.c: Likewise.

From-SVN: r147134
2009-05-05 20:54:06 +00:00
Janus Weil
210aee68d4 re PR fortran/39998 (Procedure Pointer Assignments: Statement Functions & Internal Functions)
2009-05-05  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/39998
	* expr.c (gfc_check_pointer_assign): Check for statement functions and
	internal procedures in procedure pointer assignments.


2009-05-05  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/39998
	* gfortran.dg/proc_ptr_17.f90: New.

From-SVN: r147133
2009-05-05 22:41:00 +02:00
Shujing Zhao
2650d9e15a cp-tree.h: (opname_tab...
2009-05-05  Shujing Zhao  <pearly.zhao@oracle.com>

	* cp-tree.h:
       	(opname_tab, assignop_tab, update_member_visibility, yyerror, yyhook,
       	mangle_compound_literal): Remove unused declarations.
       	(build_vfield_ref, cxx_print_statistics, clone_function_decl,
       	adjust_clone_args, maybe_push_cleanup_level, pushtag, make_anon_name,
       	pushdecl_top_level_maybe_friend, pushdecl_top_level_and_finish,
       	check_for_out_of_scope_variable, print_other_binding_stack,
       	maybe_push_decl, cxx_mark_addressable, force_target_expr,
       	build_target_expr_with_type, finish_case_label,
       	cxx_maybe_build_cleanup, begin_eh_spec_block, finish_eh_spec_block,
       	check_template_keyword, cxx_omp_predetermined_sharing,
       	cxx_omp_clause_default_ctor, cxx_omp_clause_copy_ctor,
       	cxx_omp_clause_assign_op, cxx_omp_clause_dtor, cxx_omp_finish_clause,
       	cxx_omp_privatize_by_reference): Rearrange the declarations line to
       	match the comment that indicates the .c file which the functions are
       	defined.
       	(cxx_print_xnode, cxx_print_decl, cxx_print_type,
       	cxx_print_identifier, cxx_print_error_function, pushdecl): Add comment.

From-SVN: r147132
2009-05-05 20:29:40 +00:00
Joseph Myers
617ab7432f * dwarf.h: Remove.
From-SVN: r147131
2009-05-05 21:15:30 +01:00
Rafael Avila de Espindola
bf016de890 Makefile.in (enable_plugin, [...]): New.
2009-05-05  Rafael Avila de Espindola  <espindola@google.com>

	* Makefile.in (enable_plugin, plugin_includedir): New.
	(install): Depend on install-plugin.
	(PLUGIN_HEADERS): New.
	(install-plugin): New.
	* config.gcc: Add vxworks-dummy.h to tm_file for x86 and x86-64.

From-SVN: r147130
2009-05-05 19:14:20 +00:00
Richard Guenther
7f8fdb9ff9 re PR middle-end/40022 (Alpine miscompilation)
2009-05-05  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/40022
	* tree-ssa-phiprop.c (struct phiprop_d): Exchange vop_stmt for
	the only vuse.
	(phivn_valid_p): Fix tuplification error, simplify.
	(phiprop_insert_phi): Add dumps.
	(propagate_with_phi): Simplify.

	* gcc.c-torture/execute/pr40022.c: New testcase.

From-SVN: r147128
2009-05-05 16:09:46 +00:00
Richard Guenther
8d972839df re PR middle-end/40023 (type mismatch in address expression)
2009-05-05  Richard Guenther  <rguenther@suse.de>

	PR middle-end/40023
	* builtins.c (gimplify_va_arg_expr): Properly build the
	address.

	* gcc.c-torture/compile/pr40023.c: New testcase.

From-SVN: r147127
2009-05-05 16:08:24 +00:00
Nathan Sidwell
95e2076828 typeck.c (cp_build_compound_expr): Require RHS to have a known type.
cp/
	* typeck.c (cp_build_compound_expr): Require RHS to have a known
	type.
	* class.c (resolve_address_of_overloaded_function): Use
	OVL_CURRENT for error message.
	(instantiate_type): Forbid COMPOUND_EXPRs and remove code dealing
	with them.  Do not copy the node.

	testsuite/
	* g++.old-deja/g++.other/overload11.C: Adjust expected errors.
	* g++.dg/template/overload9.C: Likewise.
	* g++.dg/ext/ms-1.C: New.

From-SVN: r147125
2009-05-05 13:00:03 +00:00
Shujing Zhao
66ba9b0b15 tree.h (strip_float_extensions): Remove duplicate declaration.
2009-05-05  Shujing Zhao  <pearly.zhao@oracle.com>

	* tree.h (strip_float_extensions): Remove duplicate declaration.
      	(build_low_bits_mask, debug_fold_checksum, expand_function_end,
      	expand_function_start, stack_protect_prologue, stack_protect_epilogue,
      	block_ultimate_origin): Rearrange the declarations line to match the
      	comment that indicates the .c file which the functions are defined.
      	(dwarf2out_*, set_decl_rtl): Add comment.
      	(get_base_address): Adjust comment.
      	(change_decl_assembler_name, maybe_fold_*, build_addr): Rearrange the
      	declarations line and add comment.
      	(is_builtin_name): Add blank after function name, for clarity.

From-SVN: r147122
2009-05-05 10:06:52 +00:00
Jakub Jelinek
5bbca03966 re PR c++/40013 (ICE when creating a local array with size from the return value of a member function of an object in a nested class in a template class)
PR c++/40013
	* pt.c (tsubst): If magic NOP_EXPR with side-effects has no type,
	set it from its operand's type after tsubst_expr.

	* g++.dg/ext/vla7.C: New test.

From-SVN: r147119
2009-05-05 08:37:05 +02:00
GCC Administrator
4fbe73ec80 Daily bump.
From-SVN: r147115
2009-05-05 00:16:43 +00:00
Joseph Myers
4f1e4960a6 attribs.c (decl_attributes): Use %qE for identifiers in diagnostics.
* attribs.c (decl_attributes): Use %qE for identifiers in
	diagnostics.
	* cgraphunit.c (verify_cgraph_node): Translate function names to
	locale character set in diagnostics.
	* coverage.c (get_coverage_counts): Use %qE for identifiers in
	diagnostics.
	* doc/invoke.texi (-finstrument-functions-exclude-function-list):
	Document that functions are named in UTF-8.
	* expr.c (expand_expr_real_1): Translate function names to locale
	character set in diagnostics.
	* gimplify.c (omp_notice_variable, omp_is_private,
	gimplify_scan_omp_clauses): Use %qE for identifiers in
	diagnostics.
	* langhooks.c (lhd_print_error_function): Translate function names
	to locale character set.
	* langhooks.h (decl_printable_name): Document that return value is
	in internal character set.
	* stmt.c: Include pretty-print.h
	(tree_conflicts_with_clobbers_p): Use %qE for identifiers in
	diagnostics.
	(resolve_operand_name_1): Translate named operand name to locale
	character set.
	* stor-layout.c (finalize_record_size): Use %qE for identifiers in
	diagnostics.
	* toplev.c (announce_function): Translate function names to locale
	character set.
	(warn_deprecated_use): Use %qE for identifiers in diagnostics.
	(default_tree_printer): Use pp_identifier or translate identifiers
	to locale character set.  Mark "<anonymous>" for translation.
	* tree-mudflap.c (mx_register_decls, mudflap_finish_file): Use %qE
	for identifiers in diagnostics.
	* tree.c (handle_dll_attribute): Use %qE for identifiers in
	diagnostics.
	* varasm.c (output_constructor): Use %qE for identifiers in
	diagnostics.

testsuite:
	* gcc.dg/ucnid-11.c, gcc.dg/ucnid-12.c, gcc.dg/ucnid-13.c: New
	tests.

From-SVN: r147111
2009-05-05 00:44:36 +01:00
Rafael Avila de Espindola
40540e682a configure.ac: use instead of $()
2009-05-04  Rafael Avila de Espindola  <espindola@google.com>

	* configure.ac: use ` ` instead of $()
	* configure: Regenerate.

From-SVN: r147110
2009-05-04 22:08:44 +00:00
Ben Elliston
33fc884c96 linux-atomic.c: Eliminate conditional include of errno.h on non-LP64 systems to simplify build...
* config/pa/linux-atomic.c: Eliminate conditional include of
	errno.h on non-LP64 systems to simplify build requirements.

From-SVN: r147109
2009-05-05 07:34:41 +10:00
Joseph Myers
88388a5229 c-common.c (handle_mode_attribute): Use %qE for identifiers in diagnostics.
* c-common.c (handle_mode_attribute): Use %qE for identifiers in
	diagnostics.
	* c-decl.c (check_bitfield_type_and_width): Make orig_name a tree
	and pass value to identifier_to_locale.
	(warn_variable_length_array): Make name a tree.
	(grokdeclarator): Separate diagnostic texts for named and unnamed
	declarators.  Use %qE for named declarators.
	* c-parser.c (c_lex_one_token): Use %qE for identifiers in
	diagnostics.
	* c-pragma.c (pop_alignment, handle_pragma_pack): Use %qE for
	identifiers in diagnostics.
	* c-typeck.c (push_member_name, start_init): Pass identifiers to
	identifier_to_locale.  Mark "anonymous" strings for translation.

testsuite:
	* gcc.dg/ucnid-8.c, gcc.dg/ucnid-9.c, gcc.dg/ucnid-10.c: New
	tests.
	* gcc.dg/declspec-9.c, gcc.dg/declspec-10.c, gcc.dg/declspec-11.c:
	Update expected errors.

From-SVN: r147108
2009-05-04 21:24:22 +01:00
Michael Eager
960c5c791a Allow address for DImode/DFmode only if double-precision FP regs.
From-SVN: r147105
2009-05-04 15:57:46 +00:00
Michael Eager
d083fbba42 Add TARGET_SINGLE_FLOAT check.
From-SVN: r147104
2009-05-04 15:48:59 +00:00
Laurent GUERBY
ffef121932 re PR ada/38874 (gnatmake doesn't pass through --param options)
2009-05-04   Laurent GUERBY  <laurent@guerby.net>

	PR ada/38874
	* make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.

From-SVN: r147102
2009-05-04 15:32:00 +00:00
Michael Eager
c3ba8d3243 Add CPP_SPEC for -mxilinx-fpu.
From-SVN: r147101
2009-05-04 15:22:22 +00:00
Michael Eager
edce9f18ec Add t-xilinx for powerpc-xilinx-eabi*.
From-SVN: r147100
2009-05-04 15:16:20 +00:00
Paolo Bonzini
506d7b686c tm.texi (LEGITIMIZE_ADDRESS): Revise documentation.
2009-05-04  Paolo Bonzini  <bonzini@gnu.org>

 	* doc/tm.texi (LEGITIMIZE_ADDRESS): Revise documentation.
	* gcc/defaults.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/explow.c (memory_address): Use target hook.
	* gcc/targhooks.c (default_legitimize_address): New.
	* gcc/targhooks.h (default_legitimize_address): New.
	* gcc/target.h (legitimize_address): New.
	* gcc/target-def.h (TARGET_LEGITIMIZE_ADDRESS): New.
	(TARGET_INITIALIZER): Include it.
	* gcc/system.h (LEGITIMIZE_ADDRESS): Poison.

	* config/bfin/bfin-protos.h (legitimize_address): Remove.
	* config/bfin/bfin.c (legitimize_address): Remove.
	* config/bfin/bfin.h (LEGITIMIZE_ADDRESS): Remove.
	* config/m68hc11/m68hc11-protos.h (m68hc11_legitimize_address): Remove.
	* config/m68hc11/m68hc11.c (m68hc11_legitimize_address): Remove.
	* config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Remove.

	* gcc/config/arm/arm.h (LEGITIMIZE_ADDRESS, ARM_LEGITIMIZE_ADDRESS,
	THUMB_LEGITIMIZE_ADDRESS, THUMB2_LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/s390/s390.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/m32c/m32c.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/sparc/sparc.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/m32r/m32r.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/i386/i386.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/sh/sh.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/avr/avr.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/iq2000/iq2000.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/mn10300/mn10300.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/m68k/m68k.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/score/score.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/pa/pa.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/mips/mips.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/alpha/alpha.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/frv/frv.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/spu/spu.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/xtensa/xtensa.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/cris/cris.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/rs6000/rs6000.h (LEGITIMIZE_ADDRESS): Delete.
	* gcc/config/picochip/picochip.h (LEGITIMIZE_ADDRESS): Delete.

	* gcc/config/s390/s390-protos.h (legitimize_address): Delete.
	* gcc/config/m32c/m32c-protos.h (m32c_legitimize_address): Delete.
	* gcc/config/sparc/sparc-protos.h (legitimize_address): Delete.
	* gcc/config/i386/i386-protos.h (legitimize_address): Delete.
	* gcc/config/avr/avr-protos.h (legitimize_address): Delete.
	* gcc/config/mn10300/mn10300-protos.h (legitimize_address): Delete.
	* gcc/config/score/score-protos.h (score_legitimize_address): Delete.
	* gcc/config/arm/arm-protos.h (arm_legitimize_address,
	(thumb_legitimize_address): Delete.
	* gcc/config/pa/pa-protos.h (hppa_legitimize_address): Delete.
	* gcc/config/mips/mips-protos.h (mips_legitimize_address): Delete.
	* gcc/config/alpha/alpha-protos.h (alpha_legitimize_address): Delete.
	* gcc/config/frv/frv-protos.h (frv_legitimize_address): Delete.
	* gcc/config/spu/spu-protos.h (spu_legitimize_address): Delete.
	* gcc/config/xtensa/xtensa-protos.h (xtensa_legitimize_address): Delete.
	* gcc/config/rs6000/rs6000-protos.h (rs6000_legitimize_address): Delete.

	* config/arm/arm.c (arm_legitimize_address): Maybe call Thumb version.
	* config/m32c/m32c.c (m32c_legitimize_address): Standardize.
	* config/m32r/m32r.c (m32r_legitimize_address): New.
	* config/m68k/m68k.c (m68k_legitimize_address): New.
	* config/score/score.c (score_legitimize_address): Standardize.
	* config/score/score3.c (score3_legitimize_address): Standardize.
	* config/score/score3.h (score3_legitimize_address): Adjust.
	* config/score/score7.c (score7_legitimize_address): Standardize.
	* config/score/score7.h (score7_legitimize_address): Adjust.
	* config/sh/sh.c (sh_legitimize_address): New.
	* config/iq2000/iq2000.c (iq2000_legitimize_address): New.

	* gcc/config/s390/s390.c (legitimize_address): Rename to...
 	(s390_legitimize_address): ... this.
	* gcc/config/sparc/sparc.c (legitimize_address): Rename to...
	(sparc_legitimize_address): ... this.
	* gcc/config/i386/i386.c (legitimize_address): Rename to...
	(ix86_legitimize_address): ... this.
	* gcc/config/avr/avr.c (legitimize_address): Rename to...
	(avr_legitimize_address): ... this.
	* gcc/config/mn10300/mn10300.c (legitimize_address): Rename to...
	(mn10300_legitimize_address): ... this.
	* config/alpha/alpha.c (alpha_legitimize_address): Wrap...
	(alpha_legitimize_address_1): ... the old alpha_legitimize_address.
	(alpha_expand_mov): Adjust call.

	* config/frv/frv.c (frv_legitimize_address): Return x on failure.
	* config/spu/spu.c (spu_legitimize_address): Likewise.
	* config/xtensa/xtensa.c (xtensa_legitimize_address): Likewise.
	* config/rs6000/rs6000.c (rs6000_legitimize_address): Likewise.

From-SVN: r147098
2009-05-04 12:52:41 +00:00
Manuel López-Ibáñez
67beaaa685 re PR c++/28152 (Diagnostic about wrong use _Complex prints __complex__)
2009-05-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	PR c++/28152
cp/	
	* parser.c (cp_lexer_get_preprocessor_token):  Do not store the
	canonical spelling for keywords.
	(cp_parser_attribute_list): Use the canonical spelling for
	keywords in attributes.
testsuite/
	* g++.dg/parse/parser-pr28152.C: New.
	* g++.dg/parse/parser-pr28152-2.C: New.

From-SVN: r147097
2009-05-04 12:47:53 +00:00
Joseph Myers
a3af5087d9 intl.c (locale_encoding, [...]): New.
* intl.c (locale_encoding, locale_utf8): New.
	(gcc_init_libintl): Initialize locale_encoding and locale_utf8.
	* intl.h (locale_encoding, locale_utf8): Declare.
	* pretty-print.c: Include ggc.h.  Include iconv.h if HAVE_ICONV.
	(pp_base_tree_identifier, decode_utf8_char, identifier_to_locale):
	New.
	* pretty-print.h (pp_identifier): Call identifier_to_locale on ID
	argument.
	(pp_tree_identifier): Define to call pp_base_tree_identifier.
	(pp_base_tree_identifier): Declare as function.
	(identifier_to_locale): Declare.
	* Makefile.in (pretty-print.o): Update dependencies.
	* varasm.c (finish_aliases_1): Use %qE for identifiers in
	diagnostics.

testsuite:
	* gcc.dg/attr-alias-5.c, gcc.dg/ucnid-7.c: New tests.

From-SVN: r147096
2009-05-04 13:23:50 +01:00
Richard Guenther
ea5cd5f17f re PR middle-end/40015 (Revision 147083 failed gfortran.dg/array_memcpy_4.f90)
2009-05-04  Richard Guenther  <rguenther@suse.de>

	PR middle-end/40015
	* builtins.c (fold_builtin_memory_op): Do not decay to element
	type if the size matches the whole array.

From-SVN: r147094
2009-05-04 11:01:59 +00:00
GCC Administrator
a967a1b62f Daily bump.
From-SVN: r147090
2009-05-04 00:16:50 +00:00
Kazu Hirata
ddc2690ac0 expmed.c (synth_mult): When trying out a shift, pass the result of a signed shift.
* expmed.c (synth_mult): When trying out a shift, pass the result
	of a signed shift.

From-SVN: r147087
2009-05-03 23:31:18 +00:00
Kazu Hirata
ef268d34b7 expmed.c (shiftsub_cost): Rename to shiftsub0_cost.
* expmed.c (shiftsub_cost): Rename to shiftsub0_cost.
	(shiftsub1_cost): New.
	(init_expmed): Compute shiftsub1_cost.
	(synth_mult): Optimize multiplications by constants of the form
	-(2^^m-1) for some constant positive integer m.

From-SVN: r147086
2009-05-03 23:27:10 +00:00
Eric Botcazou
97f0e9d9e0 fpmul-2.c: Replace final_cleanup with optimized.
* gcc.target/sparc/fpmul-2.c: Replace final_cleanup with optimized.
	* gcc.target/sparc/fexpand-2.c: Likewise.
	* gcc.target/sparc/fpmerge-2.c: Likewise.
	* gcc.target/sparc/pdist-2.c: Likewise.

From-SVN: r147085
2009-05-03 21:10:20 +00:00