Commit Graph

123717 Commits

Author SHA1 Message Date
GCC Administrator
f6684c8d90 Daily bump.
From-SVN: r199173
2013-05-22 00:16:45 +00:00
David Edelsohn
b0f6005b1e - Remove SVN merge marker.
From-SVN: r199167
2013-05-21 19:08:28 -04:00
Paolo Carlini
4cbc4bd7ad call.c (build_conditional_expr_1): Add location_t parameter.
/cp
2013-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* call.c (build_conditional_expr_1): Add location_t parameter.
	(build_conditional_expr): Likewise.
	* typeck.c (rationalize_conditional_expr, cp_build_array_ref,
	get_member_function_from_ptrfunc, build_x_conditional_expr,
	cp_build_modify_expr): Update.
	* init.c (build_new_1): Likewise.
	* cp-tree.h: Update declaration.

/testsuite
2013-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/explicit3.C: Add column in dg-error strings.
	* g++.dg/warn/Wdouble-promotion.C: Likewise.

From-SVN: r199166
2013-05-21 22:49:24 +00:00
Easwaran Raman
4f7a634e7b re PR tree-optimization/57322 (Segfault at -O1 in build_and_add_sum)
2013-05-21  Easwaran Raman  <eraman@google.com>

	PR tree-optimization/57322
	* (build_and_add_sum): If a BB is empty, set the UID of the statement
	added to the BB to be 1.

testsuite/ChangeLog:

2013-05-21  Easwaran Raman  <eraman@google.com>

	PR tree-optimization/57322
	* gcc.dg/tree-ssa/reassoc-29.c: New testcase.

From-SVN: r199165
2013-05-21 22:36:29 +00:00
Graham Stott
639879525e scanasm.exp (dg-function-on-line): Make MIPS targets match .set (no)?micromips
gcc/testsuite/
2013-05-21  Graham Stott  <graham.stott@btinternet.com>

	* lib/scanasm.exp (dg-function-on-line): Make MIPS targets match
	.set (no)?micromips

From-SVN: r199161
2013-05-21 18:29:21 +00:00
Tobias Burnus
86307f49a7 re PR fortran/57035 (TS29113's C535b: Wrongly accept DIMENSION(..) to TRANSFER)
2013-05-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57035
        * intrinsic.c (do_check): Add contraint check for
        NO_ARG_CHECK, assumed rank and assumed type.
        * gfortran.texi (NO_ARG_CHECK): Minor wording change,
        allow PRESENT intrinsic.

2013-05-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57035
        * gfortran.dg/assumed_type_5.f90: New.
        * gfortran.dg/assumed_rank_1.f90: Comment invalid statement.
        * gfortran.dg/assumed_rank_2.f90: Ditto.
        * gfortran.dg/assumed_type_3.f90: Update dg-error.
        * gfortran.dg/no_arg_check_3.f90: Ditto.

From-SVN: r199158
2013-05-21 19:27:04 +02:00
Jakub Jelinek
ee49aa34fd Fix up CL entry.
From-SVN: r199150
2013-05-21 17:59:54 +02:00
Jakub Jelinek
a4ce12589d re PR tree-optimization/57331 (ICE: tree check: expected integer_type or enumeral_type or boolean_type or real_type or fixed_point_type, have pointer_type in int_fits_type_p, at tree.c:8437)
PR tree-optimization/57331
	* tree-vrp.c (simplify_cond_using_ranges): Don't optimize
	comparison of conversion from pointer type to integral type
	with integer.

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

From-SVN: r199148
2013-05-21 17:17:31 +02:00
David Malcolm
f3e4f44cb2 repro_fail: filter out "-ignore SIGHUP" from the spawn lines
contrib/
	* repro_fail: filter out "-ignore SIGHUP" from the spawn lines

From-SVN: r199147
2013-05-21 14:43:16 +00:00
Martin Jambor
1b14621a88 re PR lto/57289 (ICE during 454.calculix compilation with -O3 -flto)
2013-05-21  Martin Jambor  <mjambor@suse.cz>

	PR lto/57289
	* ipa-prop.c (ipa_read_node_info): Process param_used and
	controlled_uses in the same order as when writing.

From-SVN: r199145
2013-05-21 15:49:30 +02:00
Magnus Granberg
e60661f091 Readd TARGET_H to the list of exported plugin headers, fixing PR plugins/56754.
TARGET_H was removed in commit 188166, however several plugins need it, see the
PR for details.  Applying under the trivial rule.

From-SVN: r199144
2013-05-21 13:01:34 +00:00
Richard Biener
4a61be9acc re PR tree-optimization/57318 (optimizer takes several seconds on nested loops)
2013-05-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57318
	* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Do not
	estimate stmts with side-effects as likely eliminated.

From-SVN: r199140
2013-05-21 11:59:28 +00:00
Richard Biener
c52da5f7d3 re PR tree-optimization/57330 (ICE: verify_gimple failed -O3 [tree-cfg.c:4792])
2013-05-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57330
	* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Properly
	preserve the call stmts fntype.

	* gcc.dg/torture/pr57330.c: New testcase.

From-SVN: r199139
2013-05-21 11:56:57 +00:00
Jonathan Wakely
bf5f6aa9be re PR libstdc++/57336 (Cannot INVOKE a reference_wrapper around an abstract type)
PR libstdc++/57336
	* include/std/functional (__invoke): Do not form function types with
	abstract return type.
	* testsuite/20_util/reference_wrapper/invoke-3.cc: New.

From-SVN: r199136
2013-05-21 09:15:13 +01:00
Richard Biener
7ec67e2af8 re PR tree-optimization/57303 (struct miscompiled at -O1 and above)
2013-05-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57303
	* tree-ssa-sink.c (statement_sink_location): Improve killing
	stmt detection and properly handle self-assignments.

	* gcc.dg/torture/pr57303.c: New testcase.

From-SVN: r199135
2013-05-21 08:11:23 +00:00
Jakub Jelinek
0e39213cbb re PR tree-optimization/57321 (static function call miscompiled at -Os and above)
PR tree-optimization/57321
	* gcc.c-torture/execute/pr57321.c: New test.

From-SVN: r199133
2013-05-21 09:51:59 +02:00
Christian Bruel
b112d513bd dwarf2out.c (multiple_reg_loc_descriptor): Use dbx_reg_number for spanning registers.
2013-05-21  Christian Bruel  <christian.bruel@st.com>

        * dwarf2out.c (multiple_reg_loc_descriptor): Use dbx_reg_number for
        spanning registers. LEAF_REG_REMAP is supported only for contiguous
        registers. Set register size out of the PARALLEL loop.

From-SVN: r199132
2013-05-21 09:48:08 +02:00
GCC Administrator
21633c909a Daily bump.
From-SVN: r199131
2013-05-21 00:16:27 +00:00
Jason Merrill
a31ed47cf0 re PR c++/57016 ([C++0x] ICE: unexpected expression '__is_final(hash<int>)' of kind trait_expr)
PR c++/57016
	* pt.c (instantiation_dependent_r) [TRAIT_EXPR]: Only check type2
	if there is one.

From-SVN: r199126
2013-05-20 17:34:35 -04:00
Jason Merrill
6e5fba0ef6 re PR c++/57102 (ICE: SIGSEGV in fndecl_declared_return_type with -fdump-final-insns=...)
PR c++/57102
	* decl.c (fndecl_declared_return_type): Also look in
	DECL_SAVED_FUNCTION_DATA.

From-SVN: r199125
2013-05-20 17:34:29 -04:00
Tobias Burnus
77f8682b05 re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        PR fortran/55465
        * decl.c (add_global_entry): Add sym_name.
        * parse.c (add_global_procedure): Ditto.
        * resolve.c (resolve_bind_c_derived_types): Handle multiple decl for
        a procedure.
        (resolve_global_procedure): Handle gsym->ns pointing to a module.
        * trans-decl.c (gfc_get_extern_function_decl): Ditto.

2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        PR fortran/55465
        * gfortran.dg/binding_label_tests_10_main.f03: Update dg-error.
        * gfortran.dg/binding_label_tests_11_main.f03: Ditto.
        * gfortran.dg/binding_label_tests_13_main.f03: Ditto.
        * gfortran.dg/binding_label_tests_3.f03: Ditto.
        * gfortran.dg/binding_label_tests_4.f03: Ditto.
        * gfortran.dg/binding_label_tests_5.f03: Ditto.
        * gfortran.dg/binding_label_tests_6.f03: Ditto.
        * gfortran.dg/binding_label_tests_7.f03: Ditto.
        * gfortran.dg/binding_label_tests_8.f03: Ditto.
        * gfortran.dg/c_loc_tests_12.f03: Fix test case.
        * gfortran.dg/binding_label_tests_24.f90: New.
        * gfortran.dg/binding_label_tests_25.f90: New.

From-SVN: r199120
2013-05-20 22:08:05 +02:00
Tobias Burnus
f11de7c5f8 re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        * decl.c (add_global_entry): Use nonbinding name
        only for F2003 or if no binding label exists.
        (gfc_match_entry): Update calls.
        * parse.c (gfc_global_used): Improve error message.
        (add_global_procedure): Use nonbinding name
        only for F2003 or if no binding label exists.
        (gfc_parse_file): Update call.
        * resolve.c (resolve_global_procedure): Use binding
        name when available.
        * trans-decl.c (gfc_get_extern_function_decl): Ditto.

2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        * gfortran.dg/binding_label_tests_17.f90: New.
        * gfortran.dg/binding_label_tests_18.f90: New.
        * gfortran.dg/binding_label_tests_19.f90: New.
        * gfortran.dg/binding_label_tests_20.f90: New.
        * gfortran.dg/binding_label_tests_21.f90: New.
        * gfortran.dg/binding_label_tests_22.f90: New.
        * gfortran.dg/binding_label_tests_23.f90: New.

From-SVN: r199119
2013-05-20 22:05:40 +02:00
Tobias Burnus
878cdb7b38 re PR fortran/48858 (Incorrect error for same binding label on two generic interface specifics)
2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        * decl.c (gfc_match_bind_c_stmt): Add gfc_notify_std.
        * match.c (gfc_match_common): Don't add commons to gsym.
        * resolve.c (resolve_common_blocks): Add to gsym and
        add checks.
        (resolve_bind_c_comms): Remove.
        (resolve_types): Remove call to the latter.
        * trans-common.c (gfc_common_ns): Remove static var.
        (gfc_map_of_all_commons): Add static var.
        (build_common_decl): Correctly handle binding label.

2013-05-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48858
        * gfortran.dg/test_common_binding_labels.f03: Update dg-error.
        * gfortran.dg/test_common_binding_labels_2_main.f03: Ditto.
        * gfortran.dg/test_common_binding_labels_3_main.f03: Ditto.
        * gfortran.dg/common_18.f90: New.
        * gfortran.dg/common_19.f90: New.
        * gfortran.dg/common_20.f90: New.
        * gfortran.dg/common_21.f90: New.

From-SVN: r199118
2013-05-20 22:03:48 +02:00
Paolo Carlini
9bbc95654d re PR c++/12288 (unintelligible error message for constructor declaration with misspelled type)
/cp
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/12288
	* parser.c (cp_parser_parameter_declaration): Check return value
	of cp_parser_parse_and_diagnose_invalid_type_name.

/testsuite
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/12288
	* g++.dg/parse/error52.C: New.
	* g++.dg/parse/error3.C: Adjust.
	* g++.dg/parse/error36.C: Likewise.

From-SVN: r199115
2013-05-20 17:13:47 +00:00
Jason Merrill
32bfcf8064 re PR c++/57319 (bogus "defaulted move assignment for ... calls a non-trivial move assignment operator for virtual base ...")
PR c++/57319
	* class.c (vbase_has_user_provided_move_assign): New.
	* method.c (synthesized_method_walk): Check it.
	* cp-tree.h: Declare it.

From-SVN: r199114
2013-05-20 13:01:16 -04:00
Jason Merrill
9f0bdc935f re PR c++/57325 (ICE in strip_typedefs, at cp/tree.c:1306)
PR c++/57325
	* tree.c (build_cplus_array_type): Copy layout info if element
	type is complete.

From-SVN: r199113
2013-05-20 13:01:09 -04:00
Oleg Endo
14c2ec26e2 re PR tree-optimization/56547 ([SH] missed opportunity for fmac with -ffast-math)
PR target/56547
	* config/sh/sh.md (fmasf4): Remove empty constraints strings.
	(*fmasf4, *fmasf4_media): New insns.

	PR target/56547
	* gcc.target/sh/pr56547-1.c: New.
	* gcc.target/sh/pr56547-2.c: New.

From-SVN: r199110
2013-05-20 16:18:44 +00:00
Paolo Carlini
3c1247f03d re PR c++/23608 (constant propagation (CCP) would improve -Wsign-compare)
/cp
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/23608
	* call.c (build_new_op_1): Propagate loc to cp_build_binary_op.

/testsuite
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/23608
	* g++.dg/warn/Wsign-compare-6.C: New.
	* g++.dg/warn/Wdouble-promotion.C: Adjust.

From-SVN: r199102
2013-05-20 13:20:39 +00:00
Jason Merrill
8f1352c419 re PR c++/57317 (bogus and unsuppressible warning: 'YYY' has a base 'ZZZ' whose type uses the anonymous namespace)
PR c++/57317
	* decl2.c (determine_visibility): Use PRIMARY_TEMPLATE_P to decide
	whether a template has its own args.

From-SVN: r199101
2013-05-20 08:28:49 -04:00
Paolo Carlini
a293ed6ec6 re PR c++/57327 ('derived' is an ambiguous base class of 'base' diagnostic is backwards)
/cp
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57327
	* pt.c (unify_no_common_base): Swap arg and parm arguments to inform.

/testsuite
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57327
	* g++.dg/template/error50.C: New.

From-SVN: r199097
2013-05-20 09:44:20 +00:00
Paolo Carlini
de4317cce2 re PR c++/10207 (Empty structure initialization fails under C++ (but works under C))
/cp
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/10207
	* parser.c (cp_parser_postfix_expression): Use cp_parser_braced_list
	instead of cp_parser_initializer_list for compound-literals.

/testsuite
2013-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/10207
	* g++.dg/ext/complit13.C: New.

From-SVN: r199096
2013-05-20 09:41:42 +00:00
Marc Glisse
5657d96616 re PR c++/57175 (NRVO and alignment)
2013-05-20  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/57175
gcc/cp/
	* typeck.c (check_return_expr): Reverse the alignment comparison.

gcc/testsuite/
	* g++.dg/pr57175.C: New testcase.

From-SVN: r199093
2013-05-20 07:50:54 +00:00
GCC Administrator
e82a38701a Daily bump.
From-SVN: r199090
2013-05-20 00:16:41 +00:00
Jonathan Wakely
b5a8fed6f1 tuple (get): Implement N3670.
* include/std/tuple (get): Implement N3670.
	* include/std/utility (get): Likewise.
	* testsuite/20_util/pair/get.cc: Move to ...
	* testsuite/20_util/pair/astuple/get.cc: Here.
	* testsuite/20_util/pair/astuple/astuple.cc: New.
	* testsuite/20_util/pair/astuple/constexpr_get.cc: New.
	* testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
	* testsuite/20_util/pair/astuple/get_by_type.cc: New.
	* testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
	* testsuite/20_util/pair/astuple/get_neg.cc: New.
	* testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
	* testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
	* testsuite/20_util/tuple/element_access/get_by_type.cc: New.

From-SVN: r199082
2013-05-19 14:31:36 +01:00
Paolo Carlini
eeb71f0cf5 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
* Revert last commit.

From-SVN: r199081
2013-05-19 10:39:47 +00:00
Richard Sandiford
da734fa108 mips.h (BASE_INSN_LENGTH, [...]): New macros.
gcc/
	* config/mips/mips.h (BASE_INSN_LENGTH, NOP_INSN_LENGTH): New macros.
	* config/mips/mips.c (mips_symbol_insns, mips_address_insns)
	(mips_const_insns, mips_split_const_insns, mips_load_store_insns)
	(mips_idiv_insns): Update the comments to say that the returned
	instruction counts are in units of BASE_INSN_LENGTH.
	(mips_adjust_insn_length): Multiply the mips_load_label_num_insns
	by BASE_INSN_LENGTH rather than 4.  Add the jump separately,
	using 2 rather than 4 as the length of indirect MIPS16 and
	microMIPS jumps.  Use NOP_INSN_LENGTH rather than 4 as the
	length of a NOP.  Don't divide MIPS16 lengths by 2.
	(mips16_split_long_branches): Assume a branch is long if the
	length is greater than 4 rather than 8.
	* config/mips/mips.md (length): Give MIPS16 lengths directly,
	rather than multiplying them by 2.  Multiply instruction counts
	by BASE_INSN_LENGTH rather than 4.
	(*jump_mips16, tls_get_tp_mips16_<mode>)
	(*tls_get_tp_mips16_call_<mode>): Divide lengths by 2.

From-SVN: r199080
2013-05-19 10:16:29 +00:00
Uros Bizjak
e242068731 * ChangeLog: Remove merge marker.
From-SVN: r199079
2013-05-19 12:10:58 +02:00
Richard Sandiford
13719e8b7a mips.md (extended_mips16): Remove branch case.
gcc/
	* config/mips/mips.md (extended_mips16): Remove branch case.
	(length): Remove duplicated extended_mips16 test.

From-SVN: r199078
2013-05-19 09:58:02 +00:00
Richard Sandiford
c3850d141f t-sde: Don't build 64-bit microMIPS multilibs.
gcc/
	* config/mips/t-sde: Don't build 64-bit microMIPS multilibs.

From-SVN: r199077
2013-05-19 09:48:57 +00:00
GCC Administrator
b0a7990a97 Daily bump.
From-SVN: r199075
2013-05-19 00:16:40 +00:00
Matthias Klose
ae3258be69 Makefile.am (bits_headers): Remove ${bits_host_headers}.
2013-05-19  Matthias Klose  <doko@ubuntu.com>

        * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
        (ext_headers): Remove ${ext_host_headers}.
        (stamp-${host_alias}): Create ${host_builddir}/../ext.
        (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
        (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
        * include/Makefile.in: Regenerate.

From-SVN: r199072
2013-05-18 23:39:38 +00:00
Jonathan Wakely
f891e5d196 system_error (error_category::error_category()): LWG 2145: Declare public and constexpr.
* include/std/system_error (error_category::error_category()): LWG
	2145: Declare public and constexpr.
	* src/c++11/system_error.cc (error_category::error_category()): Move
	definition to ...
	* src/c++11/compatibility-c++0x.cc: Here.

From-SVN: r199071
2013-05-19 00:11:48 +01:00
Jonathan Wakely
f92126ba39 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
From-SVN: r199070
2013-05-19 00:11:42 +01:00
Jonathan Wakely
05a4261b10 unique_ptr.h (make_unique): Declare inline.
* include/bits/unique_ptr.h (make_unique): Declare inline.
	(unique_ptr<T[],D>::reset()): Combine two overloads into one.
	(default_delete, unique_ptr): Add doxygen comments.
	* include/bits/shared_ptr_base.h: Improve doxygen comments.
	* include/bits/shared_ptr.h: Likewise.
	* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
	number.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.

From-SVN: r199069
2013-05-18 21:18:55 +01:00
Jonathan Wakely
82ec8686e7 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
From-SVN: r199066
2013-05-18 19:10:01 +01:00
Jonathan Wakely
c98b05982b utility (exchange): Define.
* include/std/utility (exchange): Define.
	* testsuite/20_util/exchange/1.cc: New.

From-SVN: r199061
2013-05-18 17:18:35 +01:00
Jonathan Wakely
a9769eb0d9 unique_ptr.h (make_unique): Define.
* include/bits/unique_ptr.h (make_unique): Define.
	* testsuite/20_util/unique_ptr/creation/single.cc: New.
	* testsuite/20_util/unique_ptr/creation/array.cc: New.
	* testsuite/20_util/unique_ptr/creation/array_neg.cc: New.

From-SVN: r199057
2013-05-18 16:07:02 +01:00
Richard Sandiford
8da2e0598d recog.h (Recog_data): Rename to...
gcc/
	* recog.h (Recog_data): Rename to...
	(recog_data_d): ...this.
	(recog_data): Update accordingly.
	* recog.c (recog_data): Likewise.
	* reload.c (save_recog_data): Likewise.
	* config/picochip/picochip.c (picochip_saved_recog_data): Likewise.
	(picochip_save_recog_data, picochip_restore_recog_data): Likewise.

From-SVN: r199050
2013-05-18 07:58:55 +00:00
Julian Brown
2df013f3cd gcse.c (compute_ld_motion_mems): If a non-simple MEM is found in a REG_EQUAL note, invalidate it.
* gcse.c (compute_ld_motion_mems): If a non-simple MEM is
       found in a REG_EQUAL note, invalidate it.

From-SVN: r199049
2013-05-17 21:48:18 -06:00
Easwaran Raman
933f507d1f tree-ssa-reassoc.c (find_insert_point): New function.
2013-05-17   Easwaran Raman  <eraman@google.com>

        * tree-ssa-reassoc.c (find_insert_point): New function.
        (insert_stmt_after): Likewise.
        (get_def_stmt): Likewise.
        (ensure_ops_are_available): Likewise.
        (not_dominated_by): Likewise.
        (rewrite_expr_tree): Do not move statements beyond what is
        necessary. Remove call to swap_ops_for_binary_stmt...
        (reassociate_bb): ... and move it here.
        (build_and_add_sum): Assign UIDs for new statements.
        (linearize_expr): Likewise.
        (do_reassoc): Renumber gimple statement UIDs.

testsuite/ChangeLog:

2013-05-17   Easwaran Raman  <eraman@google.com>

        * gcc.dg/tree-ssa/reassoc-28.c: New testcase.

From-SVN: r199048
2013-05-18 01:35:04 +00:00