aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-04-21re PR fortran/80392 ([OOP] ICE with allocatable polymorphic function result ↵Janus Weil4-3/+37
in a procedure pointer component) 2017-04-21 Janus Weil <janus@gcc.gnu.org> PR fortran/80392 * trans-types.c (gfc_get_derived_type): Prevent an infinite loop when building a derived type that includes a procedure pointer component with a polymorphic result. 2017-04-21 Janus Weil <janus@gcc.gnu.org> PR fortran/80392 * gfortran.dg/proc_ptr_comp_49.f90: New test case. From-SVN: r247069
2017-04-21PR c++/80179 - ICE with initialized flexible array member.Jason Merrill3-2/+27
* constexpr.c (verify_ctor_sanity): Handle flexible array members. From-SVN: r247067
2017-04-21i386.md (*extzvqi_mem_rex64): Move above *extzv<mode>.Uros Bizjak2-41/+42
* config/i386/i386.md (*extzvqi_mem_rex64): Move above *extzv<mode>. Remove UNSPEC_NOREX_MEM tag. Update corresponding peephole2 pattern. (*insvqi_1_mem_rex64): Move above insv<mode>_1. Remove UNSPEC_NOREX_MEM tag. Update corresponding peephole2 pattern. (UNSPEC_NOREX_MEM): Remove definition. From-SVN: r247066
2017-04-21pr79804.c: Add additional dg-error directive.Uros Bizjak2-1/+5
* gcc.target/i386/pr79804.c: Add additional dg-error directive. From-SVN: r247065
2017-04-21PR libstdc++/80316 make promise::set_value throw no_state errorJonathan Wakely6-29/+740
PR libstdc++/80316 * include/std/future (_State_baseV2::_Setter::operator()): Remove _S_check calls that are done after the pointer to the shared state is already dereferenced. (_State_baseV2::_Setter<_Res, void>): Define specialization for void as partial specialization so it can be defined within the definition of _State_baseV2. (_State_baseV2::__setter): Call _S_check. (_State_baseV2::__setter(promise<void>*)): Add overload for use by promise<void>::set_value and promise<void>::set_value_at_thread_exit. (promise<T>, promise<T&>, promise<void>): Make _State a friend. (_State_baseV2::_Setter<void, void>): Remove explicit specialization. (promise<void>::set_value, promise<void>::set_value_at_thread_exit): Use new __setter overload. * testsuite/30_threads/promise/members/at_thread_exit2.cc: New test. * testsuite/30_threads/promise/members/set_exception.cc: Test promise<T&> and promise<void> specializations. * testsuite/30_threads/promise/members/set_exception2.cc: Likewise. Test for no_state error condition. * testsuite/30_threads/promise/members/set_value2.cc: Likewise. From-SVN: r247064
2017-04-21Avoid deprecated warnings about std::auto_ptr in library headersJonathan Wakely9-5/+48
* include/backward/auto_ptr.h: Ignore deprecated warnings from use of auto_ptr. * include/bits/shared_ptr.h: Likewise. * include/bits/shared_ptr_base.h: Likewise. * include/bits/unique_ptr.h: Likewise. * libstdc++-v3/testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error lineno. * libstdc++-v3/testsuite/20_util/default_delete/void_neg.cc: Likewise. * libstdc++-v3/testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise. * libstdc++-v3/testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise. From-SVN: r247063
2017-04-21re PR tree-optimization/79547 (duplicate strlen calls with same argument not ↵Richard Biener4-0/+62
folded) 2017-04-21 Richard Biener <rguenther@suse.de> PR tree-optimization/79547 * tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Handle strlen, strcmp, strncmp, strcasecmp, strncasecmp, memcmp, bcmp, strspn, strcspn, __builtin_object_size and __builtin_constant_p without any constraints. * gcc.dg/tree-ssa/strlen-2.c: New testcase. From-SVN: r247062
2017-04-21re PR tree-optimization/78847 (pointer arithmetic from c++ ranged-based for ↵Richard Biener4-2/+41
loop not optimized) 2017-04-21 Richard Biener <rguenther@suse.de> PR tree-optimization/78847 * fold-const.c (split_tree): Handle POINTER_PLUS_EXPR. * g++.dg/tree-ssa/pr78847.C: New testcase. From-SVN: r247061
2017-04-21* es.po, fr.po: Update.Joseph Myers3-434/+333
From-SVN: r247059
2017-04-21libiberty: Limit demangler maximum d_print_comp recursion call depth.Mark Wielaard2-3/+19
The fix for PR demangler/70909 and 67264 (endless demangler recursion) catches when a demangle_component is printed in a cycle. But that doesn't protect the call stack blowing up from non-cyclic nested types printed recursively through d_print_comp. This can happen by a (very) long mangled string that simply creates a very deep pointer or qualifier chain. Limit the recursive d_print_comp call depth for a d_print_info to 1K nested types. libiberty/ChangeLog: * cp-demangle.c (MAX_RECURSION_COUNT): New constant. (struct d_print_info): Add recursion field. (d_print_init): Initialize recursion. (d_print_comp): Check and update d_print_info recursion depth. From-SVN: r247056
2017-04-21libiberty: Always return NULL if d_add_substitution fails.Mark Wielaard2-1/+7
d_add_substitution can fail for various reasons, like when the subs array is full. If d_add_substitution fails d_substitution should return NULL early and not try to continue. Every other call of d_add_substitution is handled in the same way. libiberty/ChangeLog: * cp-demangle.c (d_substitution): Return NULL if d_add_substitution fails. From-SVN: r247055
2017-04-21libiberty: Don't update and remove did_subs field from demangler structs.Mark Wielaard3-12/+10
The d_info field did_subs was used for estimating the string output size. It was no longer used when the malloc-less callback interface was introduced in 2007 (svn r121305). But the field was still updated. When backtracking was introduced in 2013 (svn r205292) did_subs was also added to the d_info_checkpoint struct. But except for updating the field it was still not used. Since it is never used just stop updating the field and remove it from the two structs. libiberty/ChangeLog: * cp-demangle.h (struct d_info): Remove did_subs field. * cp-demangle.c (struct d_info_checkpoint): Likewise. (d_template_param): Don't update did_subs. (d_substitution): Likewise. (d_checkpoint): Don't assign did_subs. (d_backtrack): Likewise. (cplus_demangle_init_info): Don't initialize did_subs. From-SVN: r247054
2017-04-21tree.h (build_qualified_type): Annotate with CXX_MEM_STAT_INFO.Richard Biener6-15/+31
2017-04-21 Richard Biener <rguenther@suse.de> * tree.h (build_qualified_type): Annotate with CXX_MEM_STAT_INFO. (build_distinct_type_copy): Likewise. (build_variant_type_copy): Likewise. * tree.c (build_qualified_type): Pass down mem-stat info. (build_distinct_type_copy): Likewise. (build_variant_type_copy): Likewise. cp/ * cp-tree.h (copy_decl): Annotate with CXX_MEM_STAT_INFO. (copy_type): Likewise. * lex.c (copy_decl): Pass down mem-stat info. (copy_type): Likewise. From-SVN: r247053
2017-04-21re PR c/80468 (ICE on invalid AVX512 code with -m32)Jakub Jelinek4-3/+27
PR c/80468 * c-decl.c (finish_declspecs) <case cts_int_n>: If int_n_idx is not enabled, set specs->type to integer_type_node. * gcc.dg/pr80468.c: New test. From-SVN: r247052
2017-04-21Add test-case (PR tree-optimization/66278).Martin Liska2-0/+24
2017-04-21 Martin Liska <mliska@suse.cz> PR tree-optimization/66278 * gcc.dg/vect/pr66278.c: New test. From-SVN: r247051
2017-04-21re PR tree-optimization/80237 (float to double conversion is not optimized away)Richard Biener5-10/+53
2017-04-21 Richard Biener <rguenther@suse.de> PR tree-optimization/80237 * tree-ssa-pre.c (find_leader_in_sets): Add third set argument, defaulted to NULL. (phi_translate_1): Also allow a leader in AVAIL_OUT of pred for a simplified result. * gcc.dg/tree-ssa/tailcall-9.c: New testcase. * gcc.dg/tree-ssa/ldist-pr45948.c: Remove undefined behavior, adjust expected optimizations. From-SVN: r247049
2017-04-21tree-ssa-loop-ivcanon.c (constant_after_peeling): Do not require sth as ↵Richard Biener6-9/+24
strict as a simple_iv but a chrec without symbols and an... 2016-04-21 Richard Biener <rguenther@suse.de> * tree-ssa-loop-ivcanon.c (constant_after_peeling): Do not require sth as strict as a simple_iv but a chrec without symbols and an operand defined in the loop we are peeling (and not some subloop). (propagate_constants_for_unrolling): Propagate all constants. * gcc.dg/vect/no-scevccp-outer-13.c: Adjust to prevent unrolling of inner loops. * gcc.dg/vect/no-scevccp-outer-7.c: Likewise. * gcc.dg/vect/vect-104.c: Likewise. From-SVN: r247048
2017-04-21re PR tree-optimization/80426 (wrong manipulation of range based on INT_MIN)Eric Botcazou2-0/+6
PR tree-optimization/80426 * gcc.c-torture/execute/20170429-1.c: Rename into... * gcc.c-torture/execute/20170419-1.c: ...this. From-SVN: r247046
2017-04-21Daily bump.GCC Administrator1-1/+1
From-SVN: r247045
2017-04-20re PR target/79804 (ICE in print_reg, at config/i386/i386.c:17637)Uros Bizjak4-6/+31
PR target/79804 * config/i386/i386.c (print_reg): Remove assert for disalowed regno values, call output_operand_lossage instead. testsuite/ChangeLog: PR target/79804 * gcc.target/i386/pr79804.c: New test. From-SVN: r247037
2017-04-20re PR target/78090 ([x86_64]: GCC allows integer register for inter unit ↵Uros Bizjak5-41/+19
conversion under -mtune-ctrl=^inter_unit_conversions .) PR target/78090 * config/i386/constraints.md (Yc): New register constraint. * config/i386/i386.md (*float<SWI48:mode><MODEF:mode>2_mixed): Use Yc constraint for alternative 2 of operand 0. Remove preferred_for_speed attribute. testsuite/ChangeLog: PR target/78090 * gcc.target/i386/conversion-2.c: Remove obsolete test. From-SVN: r247036
2017-04-20* g++/opt/pr80436.C: XFAIL on AIX.David Edelsohn2-0/+5
From-SVN: r247034
2017-04-20PR c++/80473 allow suppressing notes about over-aligned newJonathan Wakely4-7/+36
gcc/cp: PR c++/80473 * init.c (build_new_1): Suppress notes about over-aligned new when the warning is suppressed. gcc/testsuite: PR c++/80473 * g++.dg/diagnostic/pr80473.C: New test. From-SVN: r247033
2017-04-20omp-low: fix lastprivate/linear lowering for SIMTAlexander Monakov4-21/+47
gcc/ * omp-low.c (lower_lastprivate_clauses): Correct handling of linear and lastprivate clauses in SIMT case. libgomp/ * testsuite/libgomp.c/target-36.c: New testcase. From-SVN: r247029
2017-04-20c.opt (Wextra-semi): New C++ warning flag.Volker Reichelt8-2/+62
* c.opt (Wextra-semi): New C++ warning flag. * doc/invoke.texi (-Wextra-semi): Document new warning option. * parser.c (cp_parser_member_declaration): Add warning with fixit information for extra semicolon after in-class function definition. * g++.dg/warn/Wextra-semi.C: New test. From-SVN: r247028
2017-04-20PR libstdc++/68397 std::tr1::expint fails ... long double arguments.Edward Smith-Rowland4-3/+104
2017-04-20 Edward Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/68397 std::tr1::expint fails ... long double arguments. * include/tr1/exp_integral.tcc: Increase iteration limits. * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/ pr68397.cc: New test. * testsuite/special_functions/14_expint/pr68397.cc: New test. From-SVN: r247027
2017-04-20re PR target/57796 (AVX2 gather vectorization: code bloat and reduction of ↵Richard Biener2-2/+11
performance) 2017-04-20 Richard Biener <rguenther@suse.de> PR tree-optimization/57796 * tree-vect-stmts.c (vect_model_store_cost): Cost scatters as N scalar stores. (vect_model_load_cost): Cost gathers as N scalar loads. From-SVN: r247026
2017-04-20ggc-page.c (ggc_allocated_p): Rename to ...Richard Biener2-10/+21
2017-04-20 Richard Biener <rguenther@suse.de> * ggc-page.c (ggc_allocated_p): Rename to ... (safe_lookup_page_table_entry): ... this and return the lookup result. (gt_ggc_m_S): Use safe_lookup_page_table_entry. From-SVN: r247025
2017-04-20re PR debug/80453 (another compare-debug failure)Richard Biener3-10/+39
2017-04-20 Richard Biener <rguenther@suse.de> PR tree-optimization/80453 * tree-ssa-sccvn.h (struct vn_phi_s): Add cclhs and ccrhs members. * tree-ssa-sccvn.c (cond_stmts_equal_p): Use recorded lhs and rhs from the conditions. (vn_phi_eq): Pass them down. (vn_phi_lookup): Record them. (vn_phi_insert): Likewise. From-SVN: r247024
2017-04-20MIPS: Prevent buffer overrun in uninitialised variable fixMatthew Fortune2-1/+6
gcc/ * config/mips/mips.c (mips_expand_vec_perm_const): Re-fix uninitialized variable warning to avoid buffer overrun. From-SVN: r247022
2017-04-20PR79862 check macro for type aliases that depend on <stdint.h>Jonathan Wakely2-5/+21
PR libstdc++/79862 * include/std/atomic [!_GLIBCXX_USE_C99_STDINT_TR1] (atomic_int8_t) (atomic_uint8_t, atomic_int16_t, atomic_uint16_t, atomic_int32_t, (atomic_uint32_t, atomic_int64_t, atomic_uint64_t) (atomic_int_least8_t, atomic_uint_least8_t, atomic_int_least16_t) (atomic_uint_least16_t, atomic_int_least32_t, atomic_uint_least32_t) (atomic_int_least64_t, atomic_uint_least64_t, atomic_int_fast8_t) (atomic_uint_fast8_t, atomic_int_fast16_t, atomic_uint_fast16_t) (atomic_int_fast32_t, atomic_uint_fast32_t, atomic_int_fast64_t) (atomic_uint_fast64_t, atomic_intmax_t, atomic_uintmax_t): Don't define. From-SVN: r247021
2017-04-20* crontab: Enable snapshots from gcc-7-branch.Jakub Jelinek2-2/+7
From-SVN: r247020
2017-04-20doc: mention handling of {0} in -Wmissing-field-initializers (PR 71250)Alexander Monakov2-1/+15
PR other/71250 * doc/invoke.texi (-Wmissing-field-initializers): Mention that warning is suppressed for '{ 0 }' in C. From-SVN: r247018
2017-04-20* BASE-VER: Set to 8.0.0.basepoints/gcc-8Jakub Jelinek2-1/+5
From-SVN: r247017
2017-04-20[ARM] Fix type for .init_array.* and .fini_array.* sectionsThomas Preud'homme2-1/+7
2017-04-20 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm.c (arm_elf_asm_cdtor): Create non-default priority .init_array and .fini_array section with SECTION_NOTYPE flag. From-SVN: r247015
2017-04-20re PR middle-end/80423 (GC related -fcompare-debug failure)Jakub Jelinek9-21/+70
PR middle-end/80423 * tree.h (build_array_type): Add typeless_storage default argument. * tree.c (type_cache_hasher::equal): Also compare TYPE_TYPELESS_STORAGE flag for ARRAY_TYPEs. (build_array_type): Add typeless_storage argument, set TYPE_TYPELESS_STORAGE to it, if shared also hash it, and pass to recursive call. (build_nonshared_array_type): Adjust build_array_type_1 caller. (build_array_type): Likewise. Add typeless_storage argument. c-family/ * c-common.c (complete_array_type): Preserve TYPE_TYPELESS_STORAGE. cp/ * tree.c (build_cplus_array_type): Call build_array_type with the intended TYPE_TYPELESS_STORAGE flag value, instead of calling build_array_type and modifying later TYPE_TYPELESS_STORAGE on the shared type. testsuite/ * g++.dg/other/pr80423.C: New test. From-SVN: r247014
2017-04-20Skip pr80170.c for non-ptr32plus targetsSenthil Kumar Selvaraj2-0/+5
The testcase uses 32 bit or bigger pointer offsets, and that triggers an ptrofftype_p assert in tree.c. gcc/testsuite 2017-04-19 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> * gcc.dg/pr80170.c: Require ptr32plus. From-SVN: r247011
2017-04-20Daily bump.GCC Administrator1-1/+1
From-SVN: r247010
2017-04-19re PR tree-optimization/80426 (wrong manipulation of range based on INT_MIN)Eric Botcazou4-2/+65
PR tree-optimization/80426 * tree-vrp.c (extract_range_from_binary_expr_1): For an additive operation on symbolic operands, also compute the overflow for the invariant part when the operation degenerates into a negation. PR tree-optimization/80426 * gcc.c-torture/execute/20170419-1.c: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r247007
2017-04-19re PR bootstrap/77661 (--enable-maintainer-mode causes in-tree-build of MPC ↵Thomas Koenig3-10/+18
to fail) 2017-04-19 Thomas Koenig <tkoenig@gcc.gnu.org> Tobias Burnus <tobias.burnus@physik.fu-berlin.de> PR bootstrap/77661 * Makefile.def: Don't pass --enable-maintainer-mode on to an in-tree build MPC. * Makefile.in: Regenerate. Co-Authored-By: Tobias Burnus <tobias.burnus@physik.fu-berlin.de> From-SVN: r247006
2017-04-19Rationalise ABI links in libstdc++ manualJonathan Wakely7-22/+27
* doc/xml/manual/abi.xml: Rephrase one of the references to the Itanium C++ ABI. * doc/xml/manual/test.xml: Document DejaGnu 1.5.3 requirement. * doc/html/*: Regenerate. From-SVN: r247003
2017-04-19re PR debug/80461 (ICE in modified_type_die, at dwarf2out.c:12566)Jakub Jelinek4-8/+59
PR debug/80461 * dwarf2out.c (modified_type_die, gen_type_die_with_usage): Check for t with zero TYPE_QUALS_NO_ADDR_SPACE. * g++.dg/debug/pr80461.C: New test. From-SVN: r247002
2017-04-19re PR c++/80459 (c-c++-common/opaque-vector.c FAILs)Jakub Jelinek2-2/+17
PR c++/80459 * c-c++-common/opaque-vector.c (SIZEOF_MAXINT): Define. (f): Don't test long double vectors if __SIZEOF_LONG_DOUBLE__ is not power of 2, or is more than 16 or more than SIZEOF_MAXINT. From-SVN: r247001
2017-04-19re PR debug/80436 (-fcompare-debug failure)Jakub Jelinek4-0/+55
PR debug/80436 * tree-ssa-loop-manip.c (find_uses_to_rename_def): Ignore debug uses. * g++.dg/opt/pr80436.C: New test. From-SVN: r247000
2017-04-19* libsupc++/new: Update comment on #endif directive.Jonathan Wakely2-1/+3
From-SVN: r246999
2017-04-19re PR target/80462 ([avr] Incorrect "warning: uninitialized variable 'xxx' ↵Georg-Johann Lay2-3/+18
put into program memory area" for identical strings) PR target/80462 * config/avr/avr.c (tree.h): Include it. (cgraph.h): Include it. (avr_encode_section_info): Don't warn for uninitialized progmem variable if it's just an alias. From-SVN: r246997
2017-04-19Update SSA after AutoPGO early inlining (PR ipa/65972).Richard Biener2-1/+9
2017-04-19 Richard Biener <rguenther@suse.de> PR ipa/65972 * auto-profile.c (afdo_vpt_for_early_inline): Update SSA when needed by AutoPGO. From-SVN: r246996
2017-04-19Fix typo in LTO documentation (PR lto/50345).Paulo Matos2-1/+6
2017-04-19 Paulo J. Matos <paulo@matos-sorge.com> PR lto/50345 * doc/lto.texi: Remove an extra 'that'. From-SVN: r246995
2017-04-19Fix broken gcc.dg/torture/pr80341.c for avrSenthil Kumar Selvaraj2-0/+5
This patch skips pr80341.c for targets with int size less than 32 bits. The assertion in the testcase holds only if sizeof(int) > sizeof(short), which isn't true for smaller int size targets like the avr. gcc/testsuite 2017-04-19 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> * gcc.dg/torture/pr80341.c: Require int32plus. From-SVN: r246994
2017-04-19PR libstdc++/80448 remove noexcept from defaulted functionsJonathan Wakely2-4/+8
PR libstdc++/80448 * include/experimental/bits/fs_dir.h (directory_iterator) (recursive_directory_iterator): Remove noexcept from defaulted constructors. From-SVN: r246993