Commit Graph

109088 Commits

Author SHA1 Message Date
Jason Merrill
86d822aa63 re PR c++/47263 ([C++0x] lambda + dynamic-exception-specification std::unexpected() is not called.)
PR c++/47263
	* decl.c (use_eh_spec_block): Do use an EH spec block for a
	lambda op().

From-SVN: r174076
2011-05-23 11:48:37 -04:00
Jason Merrill
dbee8bb3da * libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
From-SVN: r174075
2011-05-23 11:39:48 -04:00
Richard Guenther
e1caba18c8 gimple.c (gimple_types_compatible_p_1): Always compare type names.
2011-05-23  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_types_compatible_p_1): Always compare type names.
	(iterative_hash_gimple_type): Always hash type names.

From-SVN: r174074
2011-05-23 15:36:32 +00:00
Jason Merrill
4d7f99c745 re PR libstdc++/49058 ([C++0x] Bind no-arguments functor failed using std::bind with -pedantic option.)
PR c++/49058
	* call.c (splice_viable): Be strict in templates.

From-SVN: r174073
2011-05-23 11:32:39 -04:00
Jason Merrill
42d1e31d0f re PR c++/47336 ([C++0x] ICE: "Error reporting routines re-entered")
PR c++/47336
	* error.c (dump_template_bindings): Suppress access control.

From-SVN: r174072
2011-05-23 11:32:29 -04:00
Jason Merrill
6474197358 re PR c++/47544 ([C++0x] linker does not find =default constructor for explicitly instantiated template)
PR c++/47544
	* pt.c (instantiate_decl): Handle =default.

From-SVN: r174071
2011-05-23 11:32:19 -04:00
Jason Merrill
08dc4c3dd7 re PR c++/48617 ([C++0x] Problem with non-type template parameters and decltype)
PR c++/48617
	* pt.c (invalid_nontype_parm_type_p): Allow DECLTYPE_TYPE.

From-SVN: r174070
2011-05-23 11:32:10 -04:00
Richard Guenther
8bdfec38fc forwprop-11.c: Adjust and un-XFAIL.
2011-05-23  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/tree-ssa/forwprop-11.c: Adjust and un-XFAIL.

From-SVN: r174069
2011-05-23 14:52:31 +00:00
Richard Guenther
e6d944b226 re PR tree-optimization/40874 (Function object abstraction penalty with inline functions.)
2011-05-23  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/40874
	* g++.dg/tree-ssa/pr40874.C: New testcase.

From-SVN: r174068
2011-05-23 14:36:28 +00:00
Nathan Froyd
dde0506718 don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
gcc/
	* c-typeck.c (build_function_call_vec): Tweak call to
	check_function_arguments.

gcc/c-family/
	* c-common.h (check_function_arguments): Tweak prototype of
	check_function_arguments.
	* c-common.c (check_function_arguments): Likewise.  Adjust
	calls to check_function_nonnull, check_function_format, and
	check_function_sentinel.
	(check_function_sentinel): Take a FUNCTION_TYPE rather than
	separate attributes and typelist arguments.  Use
	FOREACH_FUNCTION_ARGS to iterate over argument types.

gcc/cp/
	* call.c (build_over_call): Tweak call to check_function_arguments.
	* typeck.c (cp_build_function_call_vec): Likewise.

From-SVN: r174067
2011-05-23 14:20:49 +00:00
Richard Guenther
094f6ab3d5 re PR tree-optimization/49115 (invalid return value optimization (?) when exception is thrown and caught)
2011-05-23  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/49115
	* tree-ssa-alias.c (stmt_kills_ref_p_1): If the assignment
	is not necessarily carried out, do not claim it kills the ref.
	* tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Likewise.

	* g++.dg/torture/pr49115.C: New testcase.

From-SVN: r174066
2011-05-23 12:08:41 +00:00
Richard Guenther
9a9822e13e re PR tree-optimization/15419 (memcpy pessimization)
2011-05-23  Richard Guenther  <rguenther@suse.de>

	PR middle-end/15419
	* builtins.c (fold_builtin_memory_op): Be less restrictive about
	what pointer types we accept for folding.

	* gcc.dg/memcpy-3.c: New testcase.

From-SVN: r174065
2011-05-23 12:03:19 +00:00
Rainer Orth
c80286502f gthr-gnat.c: Remove.
gcc:
	* gthr-gnat.c: Remove.
	* gthr-gnat.h: Remove.
	* Makefile.in (LIB2ADDEH): Remove $(srcdir)/gthr-gnat.c.
	* config/t-freebsd (LIB2ADDEH): Likewise.
	* config/t-linux (LIB2ADDEH): Likewise.
	* config/t-sol2 (LIB2ADDEH): Likewise.
	* config/ia64/t-vms (LIB2ADDEH): Likewise.
	* configure.ac (target_thread_file): Remove gnat handling.
	* configure: Regenerate.
	* doc/install.texi (Configuration, --enable-threads): Remove gnat.

	gcc/po:
	* EXCLUDES: Remove gthr-gnat.c, gthr-gnat.h.

	libgcc:
	* config/s390/t-tpf (LIB2ADDEH): Remove $(gcc_srcdir)/gthr-gnat.c.

From-SVN: r174064
2011-05-23 11:12:25 +00:00
Tristan Gingold
15882fe97c gcov.c (create_file_names): If no object directory is specified, keep the directory of the file.
* gcov.c (create_file_names): If no object directory is specified,
	keep the directory of the file.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r174062
2011-05-23 10:20:01 +00:00
Rainer Orth
da90c957c8 configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
* configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
	* configure: Regenerate.

From-SVN: r174061
2011-05-23 10:00:39 +00:00
Jakub Jelinek
7bba408b97 re PR middle-end/48973 (Inliner bug with one-bit (1-bit) bitfield)
PR middle-end/48973
	* expr.c (expand_expr_real_2) <case LT_EXPR>: If do_store_flag
	failed and the comparison has a single bit signed type, use
	constm1_rtx instead of const1_rtx for true value.
	(do_store_flag): If ops->type is single bit signed type, disable
	signel bit test optimization and pass -1 instead of 1 as last
	parameter to emit_store_flag_force.

	* gcc.c-torture/execute/pr48973-1.c: New test.
	* gcc.c-torture/execute/pr48973-2.c: New test.

From-SVN: r174060
2011-05-23 11:36:05 +02:00
Jonathan Wakely
c11e39b0bd re PR c++/18016 (Warn about member variables initialized with itself)
2011-05-23  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR c++/18016
	* init.c (perform_member_init): Check for self-initialization.

From-SVN: r174058
2011-05-23 09:15:16 +01:00
Tom de Vries
bc69f7ffb5 re PR middle-end/45098 (Missed induction variable optimization)
2011-05-23  Tom de Vries  <tom@codesourcery.com>

	PR target/45098
	* tree-ssa-loop-niter.c (infer_loop_bounds_from_pointer_arith): New
	function.
	(infer_loop_bounds_from_undefined): Use new function.

From-SVN: r174056
2011-05-23 07:27:59 +00:00
Tom de Vries
fec5d58b1f re PR middle-end/45098 (Missed induction variable optimization)
2011-05-23  Tom de Vries  <tom@codesourcery.com>

	PR target/45098
	* gcc.target/arm/ivopts-6.c: New test.

From-SVN: r174055
2011-05-23 07:00:02 +00:00
GCC Administrator
67520c53ed Daily bump.
From-SVN: r174054
2011-05-23 00:19:31 +00:00
Paolo Carlini
4702f095fa [multiple changes]
2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* testsuite/20_util/bind/cv_quals_2.cc: New.

2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/49058
	* include/std/functional (_Bind<_Functor(_Bound_args...)>::
	operator()(_Args&&...)): Don't cv qualify _Functor directly
	in the default template argument, SFINAE doesn't apply when
	the functor has no arguments.
	* testsuite/20_util/bind/49058_1.cc: New.
	* testsuite/20_util/bind/49058_2.cc: Likewise.

From-SVN: r174048
2011-05-23 00:05:24 +00:00
Richard Sandiford
29cedf8ef3 mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
gcc/
	* config/mips/mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
	(ASM_SPEC): Add a -O* option here.  Pass -O0 for -noasmopt,
	-O1 for -fno-delayed-branch, -O2 if optimization is enabled,
	and -O0 otherwise.
	(EXTRA_SPECS): Remove subtarget_asm_optimizing_spec.

From-SVN: r174047
2011-05-22 21:32:32 +00:00
Eric Botcazou
afe8b6ec9a cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
* cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
	(try_optimize_cfg): Update BB_FORWARDER_BLOCK if try_forward_edges
	returns true.

From-SVN: r174046
2011-05-22 21:29:20 +00:00
Richard Sandiford
872dab53fd mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.
gcc/
	* config/mips/mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.

From-SVN: r174045
2011-05-22 21:21:21 +00:00
Eric Botcazou
145f6c5b88 sparc.c (sparc_delegitimize_address): Handle UNSPEC_MOVE_PIC pattern.
* config/sparc/sparc.c (sparc_delegitimize_address): Handle
	UNSPEC_MOVE_PIC pattern.

From-SVN: r174043
2011-05-22 20:10:54 +00:00
Eric Botcazou
8ac798357f config.gcc (sparc-*-elf*): Add sparc/t-crtin.
* config.gcc (sparc-*-elf*): Add sparc/t-crtin.
	(sparc-*-rtems*): Likewise.
	(sparc64-*-elf*): Likewise.
	(sparc64-*-rtems*): Likewise.
	(sparc*-*-solaris2*): Likewise.  Remove crti.o crtn.o extra parts.
	* config/sparc/t-crtin: New file.
	* config/sparc/t-sol2 (crti.o): Delete rule.
	(crtn.o): Likewise.
	* config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Delete.
	* config/sparc/t-sol2-64 (EXTRA_MULTILIB_PARTS): Likewise.
	* config/sparc/sp64-elf.h (STARTFILE_SPEC): Tidy and add crti.o.
	(ENDFILE_SPEC): Add crtn.o.

From-SVN: r174041
2011-05-22 20:01:01 +00:00
Tom de Vries
dc0a3366fc Fix formulation
From-SVN: r174040
2011-05-22 19:59:17 +00:00
Tobias Burnus
1523ffa92a stop.c (stop_string,error_stop_string): Minor cleanup.
2011-05-22  Tobias Burnus  <burnus@net-b.de>

        * runtime/stop.c (stop_string,error_stop_string): Minor cleanup.

From-SVN: r174039
2011-05-22 21:34:16 +02:00
Uros Bizjak
5e70c0b572 * lex.c (init_vectorized_lexer): Fix comparison of masked value.
From-SVN: r174037
2011-05-22 21:04:54 +02:00
Tom de Vries
5fb43dd835 re PR middle-end/48689 (ICE in fold-const.c:13798 with fold checking)
2011-05-22  Tom de Vries  <tom@codesourcery.com>

	PR middle-end/48689
	* fold-const.c (fold_checksum_tree): Guard TREE_CHAIN use with
	CODE_CONTAINS_STRUCT (TS_COMMON).

From-SVN: r174035
2011-05-22 19:00:33 +00:00
Jakub Jelinek
ccb1b17ba8 re PR middle-end/49029 (ICE in simplify_subreg, at simplify-rtx.c:5266)
PR middle-end/49029
	* expmed.c (extract_fixed_bit_field): Test whether target can be used
	only after deciding which mode to use.

	* gcc.c-torture/compile/pr49029.c: New test.

From-SVN: r174034
2011-05-22 21:00:00 +02:00
Tom de Vries
50ad7db2a8 re PR middle-end/45098 (Missed induction variable optimization)
2011-05-22  Tom de Vries  <tom@codesourcery.com>

	PR target/45098
	* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Fix const test
	for call to get_shiftadd_cost.

From-SVN: r174033
2011-05-22 18:57:19 +00:00
Uros Bizjak
ef230b3836 re PR bootstrap/49104 (bootstrap failure on AMD K6-2 with illegal instruction (cmove) in stage2)
PR target/49104
	* config/i386/cpuid.h (bit_MMXEXT): New define.

libcpp/ChangeLog:

2011-05-22  Uros Bizjak  <ubizjak@gmail.com>

	PR target/49104
	* lex.c (init_vectorized_lexer): Do not set "minimum" when __3dNOW_A__
	is defined.  Check bit_MMXEXT and bit_CMOV to use search_line_mmx.

From-SVN: r174032
2011-05-22 20:53:32 +02:00
Jason Merrill
7a1db261de re PR c++/48647 ([C++0x] SFINAE does not handle incompatible pointer types well in conditional operator)
PR c++/48647
	* typeck.c (composite_pointer_type_r): Return error_mark_node
	on error in SFINAE context.

From-SVN: r174031
2011-05-22 14:48:39 -04:00
Janne Blomqvist
eec2794c17 PR 48931 Make backtrace async-signal-safe, reformat output
From-SVN: r174030
2011-05-22 19:38:05 +03:00
Nick Clifton
15f072f97b stormy16.c (xstormy16_init_builtins): prevent initialisation of non-existant args[2] element.
* config/stormy16/stormy16.c (xstormy16_init_builtins): prevent
	initialisation of non-existant args[2] element.  Use args[] array
	not arg[] array to pass arguments to build_function_type_list.

From-SVN: r174029
2011-05-22 14:51:34 +00:00
Joseph Myers
ba7923d19f gcc_release (adjust_dirs, [...]): Remove.
* gcc_release (adjust_dirs, maybe_build_tarfile): Remove.
	(build_tarfiles): Don't build separate files for languages and
	core.
	(build_diffs): Only build one set of diffs.
	(announce_snapshot): Only announce one tar file.
	(ADA_DIRS, CPLUSPLUS_DIRS, FORTRAN95_DIRS, GO_DIRS, JAVA_DIRS,
	OBJECTIVEC_DIRS, TESTSUITE_DIRS): Remove.  Don't adjust names
	relative to WORKING_DIRECTORY.

From-SVN: r174028
2011-05-22 15:20:12 +01:00
Thomas Koenig
42a2717cb7 frontend-passes.c (cfe_register_funcs): Also register character functions if their charlens are known and constant.
2011-05-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* frontend-passes.c (cfe_register_funcs):  Also register
	character functions if their charlens are known and constant.
	Also register allocatable functions.

2011-05-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* gfortran.dg/function_optimize_8.f90:  New test case.

From-SVN: r174027
2011-05-22 10:38:09 +00:00
Ira Rosen
e38fdc948a re PR tree-optimization/49087 (crash in vect_is_slp_reduction)
PR tree-optimization/49087
        * tree-vect-loop.c (vect_is_slp_reduction): Fail if
        LHS has no uses.

From-SVN: r174026
2011-05-22 08:04:43 +00:00
Jason Merrill
5b018c651a re PR c++/49092 (ice in tree_add_const_value_attribute)
PR c++/49092
	* dwarf2out.c (tree_add_const_value_attribute_for_decl): Check for
	static storage duration.

From-SVN: r174024
2011-05-22 00:40:55 -04:00
GCC Administrator
b42bf620b0 Daily bump.
From-SVN: r174021
2011-05-22 00:18:45 +00:00
Eric Botcazou
abd9a770ee sparc.md (setjmp): Handle PIC mode and use the hard frame pointer.
* config/sparc/sparc.md (setjmp): Handle PIC mode and use the hard
	frame pointer.

From-SVN: r174013
2011-05-21 22:49:05 +00:00
Eric Botcazou
bd9a3248ab sparc.c (eligible_for_return_delay): Do not return false if there are call-saved registers here...
* config/sparc/sparc.c (eligible_for_return_delay): Do not return
	false if there are call-saved registers here...
	(sparc_can_use_return_insn_p): ...but here instead.
	(save_or_restore_regs): Fix thinko.
	(sparc_expand_prologue): Use current_function_is_leaf.
	(sparc_frame_pointer_required): Likewise.

From-SVN: r174010
2011-05-21 22:03:37 +00:00
Eric Botcazou
6d1e6c0f5b sparc.c (eligible_for_return_delay): Do not return false if there are call-saved registers here...
* config/sparc/sparc.c (eligible_for_return_delay): Do not return
	false if there are call-saved registers here...
	(sparc_can_use_return_insn_p): ...but here instead.
	(save_or_restore_regs): Fix thinko.
	(sparc_expand_prologue): Use current_function_is_leaf.
	(sparc_frame_pointer_required): Likewise.

From-SVN: r174008
2011-05-21 22:02:25 +00:00
Jason Merrill
fa4a1e468d re PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of class)
PR c++/48945
	* decl.c (grokdeclarator): Don't add set const function-cv-qual
	for constexpr fns to memfn_quals, just add it to the type.
	(revert_static_member_fn): Don't complain about quals.
	(check_static_quals): New.
	(grokfndecl): Call it.
	(start_preparsed_function): Don't call revert_static_member_fn.

From-SVN: r174007
2011-05-21 18:01:45 -04:00
Jason Merrill
b6413764c0 re PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of class)
PR c++/48945
	* decl.c (revert_static_member_fn): Ignore const on constexpr fn.

From-SVN: r174006
2011-05-21 18:01:38 -04:00
Jason Merrill
967444bbf8 re PR c++/48780 ([C++0x] scoped enumerations and va_arg (default argument promotions))
PR c++/48780
	* cvt.c (type_promotes_to): Don't promote scoped enums.

From-SVN: r174005
2011-05-21 18:01:29 -04:00
Paolo Carlini
525fe1cf88 unique_ptr.h: Use noexcept per the FDIS.
2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/unique_ptr.h: Use noexcept per the FDIS.

From-SVN: r174004
2011-05-21 21:50:39 +00:00
Joseph Myers
9fe72ebdc8 re PR ada/49097 (gnatbind link fails to find version_string, potential ranlib concurrency problem)
PR ada/49097
	* gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on
	$(LIBDEPS).

From-SVN: r174002
2011-05-21 20:45:27 +01:00
Janus Weil
43a9eec7c4 re PR fortran/48699 ([OOP] MOVE_ALLOC inside SELECT TYPE)
2011-05-21  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/48699
	* match.c (select_type_set_tmp): Make the temporary ALLOCATABLE if the
	selector is ALLOCATABLE.

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

	PR fortran/48699
	* gfortran.dg/select_type_23.f03: New.

From-SVN: r174001
2011-05-21 21:12:51 +02:00