1. 26 May, 2017 5 commits
    • Replace absolute line numbers in gcc.dg · 74ca4e36
      2017-05-26  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80557
      	* gcc.dg/20011021-1.c: Replace absolute line numbers.
      	* gcc.dg/Wcxx-compat-8.c: Same.
      	* gcc.dg/Wobjsize-1.c: Same.
      	* gcc.dg/Wshadow-local-2.c: Same.
      	* gcc.dg/Wstrict-aliasing-converted-assigned.c: Same.
      	* gcc.dg/anon-struct-6.c: Same.
      	* gcc.dg/asm-wide-1.c: Same.
      	* gcc.dg/builtin-inf-1.c: Same.
      	* gcc.dg/builtin-redefine.c: Same.
      	* gcc.dg/c90-array-lval-6.c: Same.
      	* gcc.dg/c90-array-lval-7.c: Same.
      	* gcc.dg/c90-fordecl-1.c: Same.
      	* gcc.dg/c99-fordecl-2.c: Same.
      	* gcc.dg/cast-lvalue-1.c: Same.
      	* gcc.dg/cast-lvalue-2.c: Same.
      	* gcc.dg/compound-lvalue-1.c: Same.
      	* gcc.dg/cond-lvalue-1.c: Same.
      	* gcc.dg/cpp/20000419-1.c: Same.
      	* gcc.dg/cpp/backslash.c: Same.
      	* gcc.dg/cpp/backslash2.c: Same.
      	* gcc.dg/cpp/macspace1.c: Same.
      	* gcc.dg/cpp/macspace2.c: Same.
      	* gcc.dg/cpp/multiline-2.c: Same.
      	* gcc.dg/cpp/pr27777.c: Same.
      	* gcc.dg/cpp/pr30786.c: Same.
      	* gcc.dg/cpp/pr34602.c: Same.
      	* gcc.dg/cpp/redef1.c: Same.
      	* gcc.dg/cpp/tr-warn1.c: Same.
      	* gcc.dg/cpp/tr-warn3.c: Same.
      	* gcc.dg/cpp/tr-warn6.c: Same.
      	* gcc.dg/cpp/trad/hash.c: Same.
      	* gcc.dg/cpp/trad/redef1.c: Same.
      	* gcc.dg/cpp/ucs.c: Same.
      	* gcc.dg/declspec-10.c: Same.
      	* gcc.dg/declspec-11.c: Same.
      	* gcc.dg/declspec-18.c: Same.
      	* gcc.dg/format/c99-strftime-1.c: Same.
      	* gcc.dg/format/ext-3.c: Same.
      	* gcc.dg/format/pr72858.c: Same.
      	* gcc.dg/gomp/appendix-a/a.24.1.c: Same.
      	* gcc.dg/init-string-1.c: Same.
      	* gcc.dg/label-decl-3.c: Same.
      	* gcc.dg/m-un-2.c: Same.
      	* gcc.dg/nofixed-point-2.c: Same.
      	* gcc.dg/noncompile/20020213-1.c: Same.
      	* gcc.dg/pch/counter-2.c: Same.
      	* gcc.dg/plugin/diagnostic-test-string-literals-2.c: Same.
      	* gcc.dg/pr27528.c: Same.
      	* gcc.dg/pr27953.c: Same.
      	* gcc.dg/pr35899.c: Same.
      	* gcc.dg/pr37561.c: Same.
      	* gcc.dg/pr45461.c: Same.
      	* gcc.dg/pr45750.c: Same.
      	* gcc.dg/pr53196-2.c: Same.
      	* gcc.dg/pr53265.c: Same.
      	* gcc.dg/redecl-1.c: Same.
      	* gcc.dg/tls/thr-init-1.c: Same.
      	* gcc.dg/torture/pr51106-1.c: Same.
      	* gcc.dg/torture/pr51106-2.c: Same.
      	* gcc.dg/uninit-19.c: Same.
      	* gcc.dg/uninit-pr20644.c: Same.
      
      From-SVN: r248484
      Tom de Vries committed
    • cp-tree.h (struct lang_decl_decomp): New type. · 6fc9f7aa
      	* cp-tree.h (struct lang_decl_decomp): New type.
      	(struct lang_decl): Add u.decomp.
      	(LANG_DECL_DECOMP_CHECK): Define.
      	(DECL_DECOMPOSITION_P): Note it is set also on the vars
      	for user identifiers.
      	(DECL_DECOMP_BASE): Define.
      	(retrofit_lang_decl): Add extra int = 0 argument.
      	* lex.c (retrofit_lang_decl): Add SEL argument, if non-zero
      	use it to influence the selector choices and for selector
      	0 to non-zero transition copy old content.
      	(cxx_dup_lang_specific_decl): Handle DECL_DECOMPOSITION_P.
      	* decl.c (poplevel): For DECL_DECOMPOSITION_P, check
      	!DECL_DECOMP_BASE instead of !DECL_VALUE_EXPR.  Adjust warning
      	wording if decl is a structured binding.
      	(cp_finish_decomp): Pass 4 as the new argument to retrofit_lang_decl.
      	Set DECL_DECOMP_BASE.  Ignore DECL_READ_P sets from initialization
      	of individual variables for tuple structured bindings.
      	(grokdeclarator): Pass 4 as the new argument to retrofit_lang_decl.
      	Clear DECL_DECOMP_BASE.
      	* decl2.c (mark_used): Mark DECL_DECOMP_BASE TREE_USED as well.
      	* pt.c (tsubst_decomp_names): Assert DECL_DECOMP_BASE matches what
      	is expected.
      	* expr.c (mark_exp_read): Recurse on DECL_DECOMP_BASE instead of
      	DECL_VALUE_EXPR.
      
      	* g++.dg/cpp1z/decomp29.C (p): New variable.
      	(main): Add further tests.
      
      From-SVN: r248483
      Jakub Jelinek committed
    • re PR tree-optimization/80842 (ICE at -O3 on x86_64-linux-gnu in "set_lattice_value") · 28e0e05b
      2017-05-26  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/80842
      	* tree-ssa-ccp.c (set_lattice_value): Always meet with the old
      	value.
      
      	* gcc.dg/torture/pr80842.c: New testcase.
      
      From-SVN: r248482
      Richard Biener committed
    • re PR tree-optimization/80844 (OpenMP SIMD doesn't know how to efficiently zero… · f408a635
      re PR tree-optimization/80844 (OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads))
      
      2017-05-26  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/80844
      	* tree-vectorizer.c (adjust_simduid_builtins): Propagate
      	results.
      
      From-SVN: r248481
      Richard Biener committed
    • Daily bump. · 1f06dc95
      From-SVN: r248479
      GCC Administrator committed
  2. 25 May, 2017 29 commits
  3. 24 May, 2017 6 commits
    • friend.c (do_friend): Remove check for existing decl. · 5ad4f1c8
      	cp/
      	* friend.c (do_friend): Remove check for existing decl.
      	* name-lookup.h (lookup_name_innermost_nonclass_level): Delete.
      	* name-lookup.c (push_local_binding): Directly look for binding.
      	(lookup_name_innermost_nonclass_level_1): Delete.
      	(lookup_name_innermost_nonclass_level): Delete.
      
      	testsuite/
      	* g++.dg/lookup/friend12.C: Adjust diagnostics.
      	* g++.dg/lookup/friend19.C: New.
      	* g++.dg/lookup/friend20.C: New.
      
      From-SVN: r248435
      Nathan Sidwell committed
    • * Make-lang.in (CXX_AND_OBJCXX_OBJS): Alphabetize. · 6cdb26f2
      From-SVN: r248434
      Nathan Sidwell committed
    • cp-tree.h (cp_free_lang_data): Add extern. · d48b9bbe
      	* cp-tree.h (cp_free_lang_data): Add extern.
      	(ovl_skip_hidden, is_overloaded_fn, really_overloaded_fn): Add
      	ATTRIBUTE_PURE.
      	(type_unknown_p): Return bool, make inline, lose TREE_LIST check.
      	* typeck.c (type_unknown_p): Delete.
      	* tree.c (is_overloaded_fn): Use MAYBE_BASELINE_FUNCTIONS, adjust
      	overload management.
      	(dependent_name): Likewise.
      	(decl_anon_ns_mem_p): Simplify.
      
      From-SVN: r248433
      Nathan Sidwell committed
    • PR c++/80544 strip cv-quals from cast results · d4a760d8
      gcc/cp:
      
      	PR c++/80544
      	* tree.c (reshape_init): Use unqualified type for direct enum init.
      	* typeck.c (maybe_warn_about_cast_ignoring_quals): New.
      	(build_static_cast_1, build_reinterpret_cast_1): Strip cv-quals from
      	non-class destination types.
      	(build_const_cast_1): Strip cv-quals from destination types.
      	(build_static_cast, build_reinterpret_cast, build_const_cast)
      	(cp_build_c_cast): Add calls to maybe_warn_about_cast_ignoring_quals.
      
      gcc/testsuite:
      
      	PR c++/80544
      	* g++.dg/expr/cast11.C: New test.
      
      From-SVN: r248432
      Jonathan Wakely committed
    • PR c/80731 - poor -Woverflow warnings · 3cd211af
      gcc/c-family/ChangeLog:
      
      	PR c/80731
      	* c-common.h (unsafe_conversion_p): Add a function argument.
      	* c-common.c (unsafe_conversion_p): Same.
      	Add type names and values to diagnostics.
      	(scalar_to_vector): Adjust.
      	* c-warn.c (constant_expression_error): Add a function argument.
      	Add type names and values to diagnostics.
      	(conversion_warning): Add a function argument.
      	Add type names and values to diagnostics.
      	(warnings_for_convert_and_check): Same.
      
      gcc/c/ChangeLog:
      
      	PR c/80731
      	* c-fold.c (c_fully_fold_internal): Adjust.
      	* c-typeck.c (parser_build_unary_op): Adjust.
      
      gcc/cp/ChangeLog:
      
      	PR c/80731
      	* call.c (fully_fold_internal): Adjust.
      
      gcc/testsuite/ChangeLog:
      
      	PR c/80731
      	* c-c++-common/Wfloat-conversion.c: Adjust.
      	* c-c++-common/dfp/convert-int-saturate.c: Same.
      	* c-c++-common/pr68657-1.c: Same.
      	* g++.dg/ext/utf-cvt.C: Same.
      	* g++.dg/ext/utf16-4.C: Same.
      	* g++.dg/warn/Wconversion-real-integer-3.C: Same.
      	* g++.dg/warn/Wconversion-real-integer2.C: Same.
      	* g++.dg/warn/Wconversion3.C: Same.
      	* g++.dg/warn/Wconversion4.C: Same.
      	* g++.dg/warn/Wsign-conversion.C: Same.
      	* g++.dg/warn/overflow-warn-1.C: Same.
      	* g++.dg/warn/overflow-warn-3.C: Same.
      	* g++.dg/warn/overflow-warn-4.C: Same.
      	* g++.dg/warn/pr35635.C: Same.
      	* g++.old-deja/g++.mike/enum1.C: Same.
      	* gcc.dg/Wconversion-3.c: Same.
      	* gcc.dg/Wconversion-5.c: Same.
      	* gcc.dg/Wconversion-complex-c99.c: Same.
      	* gcc.dg/Wconversion-complex-gnu.c: Same.
      	* gcc.dg/Wconversion-integer.c: Same.
      	* gcc.dg/Wsign-conversion.c: Same.
      	* gcc.dg/bitfld-2.c: Same.
      	* gcc.dg/c90-const-expr-11.c: Same.
      	* gcc.dg/c90-const-expr-7.c: Same.
      	* gcc.dg/c99-const-expr-7.c: Same.
      	* gcc.dg/overflow-warn-1.c: Same.
      	* gcc.dg/overflow-warn-2.c: Same.
      	* gcc.dg/overflow-warn-3.c: Same.
      	* gcc.dg/overflow-warn-4.c: Same.
      	* gcc.dg/overflow-warn-5.c: Same.
      	* gcc.dg/overflow-warn-8.c: Same.
      	* gcc.dg/overflow-warn-9.c: New test.
      	* gcc.dg/pr35635.c: Adjust.
      	* gcc.dg/pr59940.c: Same.
      	* gcc.dg/pr59963-2.c: Same.
      	* gcc.dg/pr60114.c: Same.
      	* gcc.dg/switch-warn-2.c: Same.
      	* gcc.dg/utf-cvt.c: Same.
      	* gcc.dg/utf16-4.c: Same.
      
      From-SVN: r248431
      Martin Sebor committed
    • waitpid.c (wait): Define as a macro that calls _cwait, so that this function works on MinGW. · 1ab4db93
      2017-05-24  Eli Zaretskii  <eliz@gnu.org>
      * libiberty/waitpid.c (wait) [__MINGW32__]: Define as a macro
      that calls _cwait, so that this function works on MinGW.
      
      From-SVN: r248430
      Eli Zaretskii committed