Commit Graph

139834 Commits

Author SHA1 Message Date
Tom de Vries
12efb1d75f Handle double reduction in parloops
2015-07-28  Tom de Vries  <tom@codesourcery.com>

	* tree-parloops.c (reduc_stmt_res): New function.
	(initialize_reductions, add_field_for_reduction)
	(create_phi_for_local_result, create_loads_for_reductions)
	(create_stores_for_reduction, build_new_reduction): Handle case that
	reduc_stmt is a phi.
	(gather_scalar_reductions): Allow double_reduc reductions.

	* gcc.dg/autopar/uns-outer-4.c: Remove xfail on scan for parallelizing
	outer loop.

	* testsuite/libgomp.c/uns-outer-4.c: New test.

From-SVN: r226300
2015-07-28 07:54:04 +00:00
Richard Biener
70b47b6199 fold-const.c (fold_comparison): Remove equality folding of decl addresses ...
2015-07-28  Richard Biener  <rguenther@suse.de>

	* fold-const.c (fold_comparison): Remove equality folding
	of decl addresses ...
	* match.pd: ... here and merge with existing pattern.

From-SVN: r226299
2015-07-28 07:20:33 +00:00
Thomas Preud'homme
68512012b7 re PR tree-optimization/66828 (gcc/tree-ssa-math-opts.c:2182:38: runtime error: left shift of 72057594037927936 by 8 places cannot be represented in type 'long int')
2015-07-28  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    PR tree-optimization/66828
    * tree-ssa-math-opts.c (perform_symbolic_merge): Change type of inc
    from int64_t to uint64_t.

From-SVN: r226298
2015-07-28 06:54:50 +00:00
Dominik Vogt
85d91a6bd4 Honour DriverOnly for enum values in error messages
/gcc/ChangeLog

	* opts-common.c (read_cmdline_option): List DriverOnly enum values as
	valid only in the error message of the driver, not in the messages of
	the language compilers.

From-SVN: r226297
2015-07-28 05:51:01 +00:00
Ben Elliston
d5e9bac57f * config.sub, config.guess: Import from upstream.
From-SVN: r226296
2015-07-28 10:57:40 +10:00
GCC Administrator
5cd5f1ca19 Daily bump.
From-SVN: r226294
2015-07-28 00:16:11 +00:00
Luis Felipe Strano Moraes
463084746c c-decl.c (get_parm_info): Remove static var.
gcc/c/ChangeLog

2015-07-28  Luis Felipe Strano Moraes  <luis.strano@gmail.com>
	    Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* c-decl.c (get_parm_info): Remove static var. Update warning
	message.

gcc/testsuite/ChangeLog

2015-07-28  Luis Felipe Strano Moraes  <luis.strano@gmail.com>
	    Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* gcc.dg/parm-incomplete-1.c: Update.
	* gcc.dg/pr18809-1.c: Update.
	* gcc.dg/pr27953.c: Update.
	* gcc.dg/vla-11.c: Update.

Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>

From-SVN: r226274
2015-07-27 22:26:34 +00:00
Marek Polacek
160654a0b8 * c-c++-common/Wtautological-compare-2.c: Remove unused line.
From-SVN: r226271
2015-07-27 20:51:48 +00:00
Tom de Vries
1e6a7b01cc Simplify gather_scalar_reductions
2015-07-27  Tom de Vries  <tom@codesourcery.com>

	* tree-parloops.c (gather_scalar_reductions): Simplify function
	structure.

From-SVN: r226270
2015-07-27 20:05:19 +00:00
Tom de Vries
383ec9fd77 Update outer-4.c and uns-outer-4.c
2015-07-27  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/autopar/outer-4.c (parloop): Remove superfluous noinline
	attribute.  Update comment.
	(main): Remove.
	Add scan for not parallelizing inner loop.
	* gcc.dg/autopar/uns-outer-4.c (parloop): Remove superfluous noinline
	attribute.
	(main): Remove.

From-SVN: r226269
2015-07-27 20:05:09 +00:00
Marek Polacek
28ee8b98ea * ipa-devirt.c (types_same_for_odr): Fix typo.
From-SVN: r226266
2015-07-27 19:36:40 +00:00
Marek Polacek
f2afe6dd93 re PR bootstrap/67030 (ARM bootstrap failure due to [-Werror=tautological-compare])
PR bootstrap/67030
	* c-common.c (warn_tautological_cmp): Don't warn for macro expansion.

	* c-c++-common/Wtautological-compare-2.c: New test.

From-SVN: r226264
2015-07-27 19:09:27 +00:00
Jason Merrill
cca444fb00 constexpr.c (cxx_eval_call_expression): Don't add this call to the hash table if !depth_ok.
* constexpr.c (cxx_eval_call_expression): Don't add this call to
	the hash table if !depth_ok.

From-SVN: r226256
2015-07-27 12:57:21 -04:00
Jason Merrill
ad497dbb3e re PR lto/66468 (ICE in in check_die, at dwarf2out.c:5719)
PR debug/66468
	* dwarf2out.c (gen_inlined_subroutine_die): Check
	cgraph_function_possibly_inlined_p.

From-SVN: r226255
2015-07-27 12:57:15 -04:00
H.J. Lu
b5afeda1ed Add more tests for PR target/66232
PR target/66232
	* gcc.target/i386/pr66232-6.c: New tests.
	* gcc.target/i386/pr66232-7.c: Likewise.
	* gcc.target/i386/pr66232-8.c: Likewise.
	* gcc.target/i386/pr66232-9.c: Likewise.

From-SVN: r226254
2015-07-27 09:24:35 -07:00
Wilco Dijkstra
ad7b853a10 [PATCH][AArch64] Improve spill code - swap order in shr patterns
gcc/

	* gcc/config/aarch64/aarch64.md (aarch64_lshr_sisd_or_int_<mode>3):
	Place integer variant first.
	(aarch64_ashr_sisd_or_int_<mode>3): Likewise.

From-SVN: r226253
2015-07-27 16:18:36 +00:00
Alan Lawrence
6d60b856e4 [ARM] PR/63870 Add a __builtin_lane_check
* config/arm/arm-builtins.c (enum arm_builtins):
        Add ARM_BUILTIN_NEON_BASE and ARM_BUILTIN_NEON_LANE_CHECK.
        (ARM_BUILTIN_NEON_BASE): Rename macro to....
        (ARM_BUILTIN_NEON_PATTERN_START): ...this.
        (arm_init_neon_builtins): Register __builtin_arm_lane_check.
        (arm_expand_neon_builtin): Handle ARM_BUILTIN_NEON_LANE_CHECK.

From-SVN: r226252
2015-07-27 15:55:23 +00:00
Alan Lawrence
eaa80f6464 [ARM] PR/63870 Add qualifier to check lane bounds in expand
* config/arm/arm-builtins.c (enum arm_type_qualifiers):
	Add qualifier_lane_index.
	(arm_binop_imm_qualifiers, BINOP_IMM_QUALIFIERS): New.
	(arm_getlane_qualifiers): Use qualifier_lane_index.
	(arm_lanemac_qualifiers): Rename to...
	(arm_mac_n_qualifiers): ...this.
	(LANEMAC_QUALIFIERS): Rename to...
	(MAC_N_QUALIFIERS): ...this.
	(arm_mac_lane_qualifiers, MAC_LANE_QUALIFIERS): New.
	(arm_setlane_qualifiers): Use qualifier_lane_index.
	(arm_ternop_imm_qualifiers, TERNOP_IMM_QUALIFIERS): New.
	(enum builtin_arg): Add NEON_ARG_LANE_INDEX.
	(arm_expand_neon_args): Handle NEON_ARG_LANE_INDEX.
	(arm_expand_neon_builtin): Handle qualifier_lane_index.

	* config/arm/arm-protos.h (neon_lane_bounds): Add const_tree parameter.
	* config/arm/arm.c (bounds_check): Likewise, improve error message.
	(neon_lane_bounds, neon_const_bounds): Add arguments to bounds_check.
	* config/arm/arm_neon_builtins.def (vshrs_n, vshru_n, vrshrs_n,
	vrshru_n, vshrn_n, vrshrn_n, vqshrns_n, vqshrnu_n, vqrshrns_n,
	vqrshrnu_n, vqshrun_n, vqrshrun_n, vshl_n, vqshl_s_n, vqshl_u_n,
	vqshlu_n, vshlls_n, vshllu_n): Change qualifiers to BINOP_IMM.
	(vsras_n, vsrau_n, vrsras_n, vrsrau_n, vsri_n, vsli_n): Change
	qualifiers to TERNOP_IMM.
	(vdup_lane): Change qualifiers to GETLANE.
	(vmla_lane, vmlals_lane, vmlalu_lane, vqdmlal_lane, vmls_lane,
	vmlsls_lane, vmlslu_lane, vqdmlsl_lane): Change qualifiers to MAC_LANE.
	(vmla_n, vmlals_n, vmlalu_n, vqdmlal_n, vmls_n, vmlsls_n, vmlslu_n,
	vqdmlsl_n): Change qualifiers to MAC_N.

	* config/arm/neon.md (neon_vget_lane<mode>, neon_vget_laneu<mode>,
	neon_vget_lanedi, neon_vget_lanev2di, neon_vset_lane<mode>,
	neon_vset_lanedi, neon_vdup_lane<mode>, neon_vdup_lanedi,
	neon_vdup_lanev2di, neon_vmul_lane<mode>, neon_vmul_lane<mode>,
	neon_vmull<sup>_lane<mode>, neon_vqdmull_lane<mode>,
	neon_vq<r>dmulh_lane<mode>, neon_vq<r>dmulh_lane<mode>,
	neon_vmla_lane<mode>, neon_vmla_lane<mode>, neon_vmlal<sup>_lane<mode>,
	neon_vqdmlal_lane<mode>, neon_vmls_lane<mode>, neon_vmls_lane<mode>,
	neon_vmlsl<sup>_lane<mode>, neon_vqdmlsl_lane<mode>):
	Remove call to neon_lane_bounds.

From-SVN: r226251
2015-07-27 15:44:26 +00:00
Wilco Dijkstra
d99dacc948 [PATCH][AArch64] Improve spill code - swap order in shl pattern
gcc/

	* config/aarch64/aarch64.md (aarch64_ashl_sisd_or_int_<mode>3):
	Place integer variant first.

From-SVN: r226247
2015-07-27 15:02:55 +00:00
Thomas Schwinge
02bcdc56ee Fix logic error in Fortran OpenACC parsing
gcc/fortran/
	* parse.c (parse_oacc_structured_block): Fix logic error.
	Reported by Mikael Morin <mikael.morin@sfr.fr>.

From-SVN: r226246
2015-07-27 16:26:41 +02:00
Matthew Wahab
39c1254139 arm-arches.def: Add "armv6kz".
2015-07-27  Matthew Wahab  <matthew.wahab@arm.com>

	* config/arm/arm-arches.def: Add "armv6kz". Replace 6ZK with 6KZ
	and FL_FOR_ARCH6ZK with FL_FOR_ARCH6KZ.
	* config/arm/arm-c.c (arm_cpu_builtins): Emit "__ARM_ARCH_6ZK__"
	for armv6kz targets.
	* config/arm/arm-cores.def: Replace 6ZK with 6KZ.
	* config/arm/arm-protos.h (FL_ARCH6KZ): New.
	(FL_FOR_ARCH6ZK): Remove.
	(FL_FOR_ARCH6KZ): New.
	(arm_arch6zk): New declaration.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm.c (arm_arch6kz): New.
	(arm_option_override): Set arm_arch6kz.
	* config/arm/arm.h (BASE_ARCH_6ZK): Rename to BASE_ARCH_6KZ.
	* config/arm/driver-arm.c: Add comment to "armv6zk" entry.
        * doc/invoke.texi: Replace "armv6zk" with "armv6kz".

From-SVN: r226243
2015-07-27 13:07:09 +00:00
Marek Polacek
05b28fd6f9 re PR c++/66555 (Fails to warn for if (j == 0 && i == i))
PR c++/66555
	PR c/54979
	* c-common.c (find_array_ref_with_const_idx_r): New function.
	(warn_tautological_cmp): New function.
	* c-common.h (warn_tautological_cmp): Declare.
	* c.opt (Wtautological-compare): New option.

	* c-typeck.c (parser_build_binary_op): Call warn_tautological_cmp.

	* call.c (build_new_op_1): Call warn_tautological_cmp.
	* pt.c (tsubst_copy_and_build): Use sentinel to suppress tautological
	compare warnings.

	* doc/invoke.texi: Document -Wtautological-compare.

	* c-c++-common/Wtautological-compare-1.c: New test.

From-SVN: r226242
2015-07-27 12:40:45 +00:00
Richard Biener
0fd357f27d genmatch.c (decision_tree::gen_gimple): Split out large subtrees into separate functions.
2015-07-27  Richard Biener  <rguenther@suse.de>

	* genmatch.c (decision_tree::gen_gimple): Split out large
	subtrees into separate functions.
	(decision_tree::gen_generic): Likewise.

From-SVN: r226241
2015-07-27 10:59:18 +00:00
GCC Administrator
26b4522dd4 Daily bump.
From-SVN: r226240
2015-07-27 00:16:14 +00:00
Patrick Palka
11f2c78ae8 Fix PR c++/18969 (invalid return statement diagnosed too late)
gcc/cp/ChangeLog:

	PR c++/18969
	* typeck.c (check_return_expr): Also do the basic return-value
	validity checking if processing_template_decl and yet types are
	not dependent.  Remove obsolete code.

gcc/testsuite/ChangeLog:

	PR c++/18969
	* g++.dg/template/pr18969.C: New test.
	* g++.dg/template/pr18969-2.C: New test.
	* g++.old-deja/g++.jason/overload.C: Remove return value in
	template function returning void.

From-SVN: r226236
2015-07-26 17:04:31 +00:00
Paolo Carlini
af7186706c decl.c (poplevel): Use Use DECL_SOURCE_LOCATION and "%qD" in warning_at instead of "%q+D" in warning.
2015-07-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (poplevel): Use Use DECL_SOURCE_LOCATION and "%qD"
	in warning_at instead of "%q+D" in warning.
	(warn_extern_redeclared_static): Likewise for inform.
	(check_redeclaration_no_default_args): Likewise for permerror.
	(duplicate_decls): Likewise.
	(check_previous_goto_1): Likewise for inform.
	(check_goto, start_decl, check_for_uninitialized_const_var,
	start_preparsed_function, finish_function§): Likewise.
	* decl2.c (build_anon_union_vars, c_parse_final_cleanups): Likewise.
	* init.c (sort_mem_initializers): Likewise.
	* typeck.c (convert_for_initialization): Likewise for inform.
	(maybe_warn_about_returning_address_of_local): Likewise.
	* typeck2.c (abstract_virtuals_error_sfinae): Likewise for inform.
	(cxx_incomplete_type_diagnostic): Likewise for emit_diagnostic.

From-SVN: r226234
2015-07-26 09:17:03 +00:00
Uros Bizjak
6e07a52e77 pr66140.c (lpfc_bg_setup_bpl): Use unsigned immediates to avoid shift-overflow warnings.
* gcc.target/alpha/pr66140.c (lpfc_bg_setup_bpl): Use unsigned
	immediates to avoid shift-overflow warnings.

From-SVN: r226233
2015-07-26 11:08:04 +02:00
Uros Bizjak
e4e040f1a2 alpha.c: Use SUBREG_P predicate.
* config/alpha/alpha.c: Use SUBREG_P predicate.
	* config/alpha/predicates.md: Ditto.

From-SVN: r226232
2015-07-26 10:51:14 +02:00
GCC Administrator
2446df2021 Daily bump.
From-SVN: r226231
2015-07-26 00:16:17 +00:00
Patrick Palka
9783ae5a2f re PR c++/66857 (Reference not bound to lvalue)
Fix PR c++/66857

gcc/cp/ChangeLog:

	PR c++/66857
	* cvt.c (ocp_convert): Don't call scalar_constant_value when
	converting to a class type.

gcc/testsuite/ChangeLog:

	PR c++/66857
	* g++.dg/init/pr66857.C: New test.

From-SVN: r226228
2015-07-25 23:15:44 +00:00
Dominik Vogt
39a8bd7b64 S390: Clean up cross-compile for S390.
gcc/ChangeLog

	* config.host (s390*-*-*): Include driver-native.c only when
	building with s390* as host *and* target.

From-SVN: r226223
2015-07-25 18:34:15 +00:00
Oleg Endo
9354f9e7e2 re PR target/66930 (gengtype.c is miscompiled during stage2)
gcc/
	PR target/66930
	* config/sh/sh.c (sh_split_movrt_negc_to_movt_xor): Add missing
	T bit register modified_between_p check.

From-SVN: r226218
2015-07-25 14:07:17 +00:00
Uros Bizjak
97157e0f9e ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* testsuite/ChangeLog: Ditto.

From-SVN: r226217
2015-07-25 14:57:23 +02:00
Uros Bizjak
3a6d28d685 i386.c: Use SUBREG_P predicate.
* config/i386/i386.c: Use SUBREG_P predicate.
	* config/i386/i386.md: Ditto.
	* config/i386/sse.md: Ditto.
	* config/i386/predicates.md: Ditto.

From-SVN: r226216
2015-07-25 14:47:35 +02:00
Uros Bizjak
0453025d3f re PR target/67004 (valgrind error in recog_memoized & shorten_branches)
PR target/67004
	* config/i386/i386.h (ADJUST_INSN_LENGTH): Use NONDEBUG_INSN_P (INSN)
	predicate and INSN_CODE (INSN) >= 0 to check for valid instruction.

From-SVN: r226215
2015-07-25 13:34:59 +02:00
Sebastian Pop
8d2ccbd266 remove tree-browser
* Makefile.in: Remove use of TREEBROWSER.
	* config.in: Regenerated.
	* configure: Regenerated.
	* configure.ac: Remove definition of TREEBROWSER.
	* tree-browser.c: Removed.
	* tree-browser.def: Removed.

From-SVN: r226214
2015-07-25 09:29:11 +00:00
Sebastian Pop
33df361a84 dump reasons why graphite failed to detect a scop
When trying to analyze why Graphite does not handle a loop nest, it is easy to
look in the dumps of -fdump-tree-graphite-all to guess what has to be changed to
catch the loop.  This patch makes the dumps a bit more verbose and useful.

	* graphite-scop-detection.c: Include gimple-pretty-print.h.
	(stmt_simple_for_scop_p): Print when a stmt is not handled in Graphite.
	(scopdet_basic_block_info): Print when a loop or bb cannot be
	represented in Graphite.

From-SVN: r226213
2015-07-25 09:22:29 +00:00
Uros Bizjak
4c141304a8 re PR target/66648 (incorrect memcpy expansion with unrolled_loop strategy at -O2)
PR target/66648
	* config/i386/i386.c (ix86_expand_set_or_movmem): Emit main loop
	execution guard when min_size is less than size_needed.

testsuite/ChangeLog:

	PR target/66648
	* gcc.target/i386/pr66648.c: New test.

From-SVN: r226212
2015-07-25 11:19:24 +02:00
Sebastian Pop
f50d98b543 update doc for supported isl versions
* doc/install.texi: Document supported versions of ISL.

From-SVN: r226211
2015-07-25 09:14:55 +00:00
Tom de Vries
b23fdfb763 Fixup graphite/uns-*.c testcases
2015-07-25  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/graphite/graphite.exp: Include uns-*.c files in
	interchange_files and block_files variables.
	* gcc.dg/graphite/uns-block-1.c (main): Change signed into unsigned
	arithmetic.
	* gcc.dg/graphite/uns-interchange-12.c: Same.
	* gcc.dg/graphite/uns-interchange-14.c: Same.
	* gcc.dg/graphite/uns-interchange-15.c: Same.
	* gcc.dg/graphite/uns-interchange-9.c (foo): Same.
	* gcc.dg/graphite/uns-interchange-mvt.c: Same.

From-SVN: r226209
2015-07-25 07:52:59 +00:00
Jason Merrill
003670443a re PR c++/64969 (generic functions do not work with placeholder return types)
PR c++/64969
	* pt.c (splice_late_return_type): Correct deduced return type for
	abbreviated function template.

From-SVN: r226208
2015-07-25 03:12:31 -04:00
Jason Merrill
0c0d447a96 re PR c++/64989 (constant-initialization of self-referencing array)
PR c++/64989
	* pt.c (splice_late_return_type): Correct deduced return type for
	abbreviated function template.

From-SVN: r226207
2015-07-25 02:54:57 -04:00
Jeff Law
8edd0f66d8 revert: re PR lto/66752 (spec2000 255.vortex performance compiled with GCC is ~20% lower than with CLANG)
Revert:
        PR lto/66752
        * tree-ssa-threadedge.c (simplify_conrol_stmt_condition): If we are
        unable to find X NE 0 in the tables, return X as the simplified
        condition.
        (fsm_find_control_statement_thread_paths): If nodes in NEXT_PATH are
        in VISISTED_BBS, then return failure.  Else add nodes from NEXT_PATH
        to VISISTED_BBS.  */
        * tree-ssa-threadupdate.c (duplicate_thread_path): Fix up edge flags
        after removing the control flow statement and unnecessary edges.

    testsuite/
        PR lto/66752
        * gcc.dg/tree-ssa/pr66752-2.c: New test.
        * gcc.dg/torture/pr66752-1.c: New test
        * g++.dg/torture/pr66752-2.C: New test.

From-SVN: r226206
2015-07-24 23:45:42 -06:00
David Edelsohn
64d7fb90be Revert:
2015-07-23  Alexandre Oliva <aoliva@redhat.com>

From-SVN: r226202
2015-07-24 21:28:21 -04:00
GCC Administrator
a406c8ce3f Daily bump.
From-SVN: r226199
2015-07-25 00:16:13 +00:00
Ian Lance Taylor
2850beb940 syscall: Add ioctl consts from if_tun.h
During the gccgo build define constants from
    some header files are processed by mksysinfo.sh and
    added to syscall.go.  In some cases the constants
    are based on macros which are not processed
    correctly by mksysinfo.sh.  This adds the support
    to generate the correct values for the TUN* constants
    from linux/if_tun.h.
    
    Fixes golang/go#11707
    
    Reviewed-on: https://go-review.googlesource.com/12491

From-SVN: r226196
2015-07-25 00:01:04 +00:00
Uros Bizjak
120536c753 i386.c (ix86_va_start): Remove unneeded !TARGET_64BIT check.
* config/i386/i386.c (ix86_va_start): Remove
	unneeded !TARGET_64BIT check.
	(ix86_gimplify_va_arg): Ditto.

From-SVN: r226195
2015-07-25 00:21:54 +02:00
Tom de Vries
5fed2e0d17 Enable reductions without fassociative-math in graphite
2015-07-24  Tom de Vries  <tom@codesourcery.com>

	* graphite-sese-to-poly.c (build_poly_scop): Always call
	rewrite_commutative_reductions_out_of_ssa.

From-SVN: r226194
2015-07-24 20:55:31 +00:00
Tom de Vries
e6df850973 Don't allow unsafe reductions in graphite
2015-07-24  Tom de Vries  <tom@codesourcery.com>

	* graphite-sese-to-poly.c (is_reduction_operation_p): Limit
	flag_associative_math to FLOAT_TYPE_P.  Honour
	TYPE_OVERFLOW_WRAPS for INTEGRAL_TYPE_P. Don't allow any other types.

	* gcc.dg/graphite/block-1.c: Xfail scan.
	* gcc.dg/graphite/interchange-12.c: Same.
	* gcc.dg/graphite/interchange-14.c: Same.
	* gcc.dg/graphite/interchange-15.c: Same.
	* gcc.dg/graphite/interchange-9.c: Same.
	* gcc.dg/graphite/interchange-mvt.c: Same.
	* gcc.dg/graphite/uns-block-1.c: New test.
	* gcc.dg/graphite/uns-interchange-12.c: New test.
	* gcc.dg/graphite/uns-interchange-14.c: New test.
	* gcc.dg/graphite/uns-interchange-15.c: New test.
	* gcc.dg/graphite/uns-interchange-9.c: New test.
	* gcc.dg/graphite/uns-interchange-mvt.c: New test.

From-SVN: r226193
2015-07-24 20:55:22 +00:00
Manuel López-Ibáñez
274d8c11f3 re PR c++/64079 (%+D in diagnostics breaks pragma GCC diagnostic)
2015-07-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR c++/64079
	* toplev.c (check_global_declaration): Use DECL_SOURCE_LOCATION
	and "%qD" in warning_at instead of "%q+D" in warning.

/testsuite
2015-07-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR c++/64079
	* c-c++-common/Wunused-function-1.c: New.

From-SVN: r226191
2015-07-24 20:20:13 +00:00