- 16 Jun, 2018 5 commits
-
-
re PR middle-end/86095 (documentation for -Wunsafe-loop-optimizations references options which have no effect any more) PR middle-end/86095 * common.opt (Wunsafe-loop-optimizations): Add Ignore, remove Var, documented as preserved for backward compatibility only. * doc/invoke.texi: Remove -Wunsafe-loop-optimizations documentation. From-SVN: r261679
Jakub Jelinek committed -
PR rtl-optimization/86108 * bb-reorder.c (create_forwarder_block): Renamed to ... (create_eh_forwarder_block): ... this. Split OLD_BB after labels and jump from new landing pad to the second part. (sjlj_fix_up_crossing_landing_pad, dw2_fix_up_crossing_landing_pad): Adjust callers. From-SVN: r261678
Jakub Jelinek committed -
* expr.c (mark_use): Look through NOP_EXPR. From-SVN: r261676
Jason Merrill committed -
* config.guess: Import latest version. * config.sub: Likewise. From-SVN: r261675
Ben Elliston committed -
From-SVN: r261674
GCC Administrator committed
-
- 15 Jun, 2018 24 commits
-
-
When deduction guides are supported by the compiler (i.e. for C++17 and later) replace two basic_string constructors by constrained function templates as required by LWG 3075. In order to ensure that the pre-C++17 non-template constructors are still exported from the shared library define a macro in src/c++11/string-inst.cc to force the non-template declarations (this isn't strictly needed yet, because the string instantiations are compiled with -std=gnu++11, but that is likely to change). LWG 3076 basic_string CTAD ambiguity * doc/xml/manual/intro.xml: Document LWG 3076 change. * include/bits/basic_string.h [__cpp_deduction_guides && !_GLIBCXX_DEFINING_STRING_INSTANTIATIONS] (basic_string(const _CharT*, const _Alloc&)): Turn into a function template constrained by _RequireAllocator. (basic_string(size_type, _CharT, const _Alloc&)): Likewise. * src/c++11/string-inst.cc (_GLIBCXX_DEFINING_STRING_INSTANTIATIONS): Define. * testsuite/21_strings/basic_string/cons/char/deduction.cc: Test deduction * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc: Likewise. From-SVN: r261670
Jonathan Wakely committed -
PR c/86093 * c-typeck.c (pointer_diff): Cast both pointers to unqualified types before doing POINTER_DIFF_EXPR. * c-c++-common/pr86093.c: New test. From-SVN: r261663
Jakub Jelinek committed -
PR middle-end/85878 * expr.c (expand_assignment): Remove now redundant COMPLEX_MODE_P check from first store_expr, use to_mode instead of GET_MODE (to_rtx). Only call store_expr for halves if the mode is the same. * gfortran.fortran-torture/compile/pr85878.f90: New test. From-SVN: r261659
Jakub Jelinek committed -
* pt.c (tsubst_default_argument): Use push_to/pop_from_top_level. * name-lookup.c (do_pushtag): Don't look through complete types, but don't add to them either. Get context from current_binding_level. From-SVN: r261656
Jason Merrill committed -
From-SVN: r261655
Jason Merrill committed -
* lambda.c (record_null_lambda_scope): New. * pt.c (tsubst_lambda_expr): Use it. * name-lookup.c (do_pushtag): Don't give a lambda DECL_CONTEXT of a function that isn't open. From-SVN: r261654
Jason Merrill committed -
From-SVN: r261653
Jason Merrill committed -
PR middle-end/86123 * match.pd ((X / Y) == 0 -> X < Y): Don't transform complex divisions. Fix up comment formatting. * gcc.c-torture/compile/pr86123.c: New test. From-SVN: r261647
Jakub Jelinek committed -
2018-06-15 Bernd Edlinger <bernd.edlinger@hotmail.de> * typed-splay-tree.h (typed_splay_tree::remove): New function. (typed_splay_tree::closure, typed_splay_tree::inner_foreach_fn, typed_splay_tree::m_inner): Deleted. (typed_splay_tree::typed_splay_tree, typed_splay_tree::operator =): Declared private. (typed_splay_tree::splay_tree_key, typed_splay_tree::splay_tree_value, typed_splay_tree::splay_tree_node_s, typed_splay_tree::KDEL, typed_splay_tree::VDEL, typed_splay_tree::splay_tree_delete_helper, typed_splay_tree::rotate_left, typed_splay_tree::rotate_right, typed_splay_tree::splay_tree_splay, typed_splay_tree::splay_tree_foreach_helper, typed_splay_tree::splay_tree_insert, typed_splay_tree::splay_tree_remove, typed_splay_tree::splay_tree_lookup, typed_splay_tree::splay_tree_predecessor, typed_splay_tree::splay_tree_successor, typed_splay_tree::splay_tree_min, typed_splay_tree::splay_tree_max): Took over from splay-tree.c/.h. (typed_splay_tree::root, typed_splay_tree::comp, typed_splay_tree::delete_key, typed_splay_tree::delete_value): New data members. * typed-splay-tree.c (selftest::test_str_to_int): Add a test for typed_splay_tree::remove. From-SVN: r261645
Bernd Edlinger committed -
2018-06-15 Tom de Vries <tdevries@suse.de> * gcc.dg-selftests/dg-final.exp: Force sequential execution. From-SVN: r261643
Tom de Vries committed -
PR libstdc++/86169 * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI] (basic_string::data()): Unshare string. * testsuite/21_strings/basic_string/operations/data/char/86169.cc: New. From-SVN: r261642
Jonathan Wakely committed -
The C++ committee has confirmed that passing a null pointer to the unary basic_string_view constructor is undefined. This removes the check from our implementation, and adds the nonnull attribute to warn when the compiler can detect undefined input. * include/std/string_view (basic_string_view(const CharT*)): Remove check for null pointer and add nonnull attribute. (compare(const CharT*), compare(size_type, size_type, const CharT*)) (find(const CharT*, size_type), rfind(const CharT*, size_type)) (find_first_of(const CharT*, size_type)) (find_last_of(const CharT*, size_type)) (find_first_not_of(const CharT*, size_type)) (find_last_not_of(const CharT*, size_type)): Add nonnull attribute. * testsuite/21_strings/basic_string_view/cons/char/nonnull.cc: New. * testsuite/21_strings/basic_string_view/operations/compare/char/ nonnull.cc: New. * testsuite/21_strings/basic_string_view/operations/find/char/ nonnull.cc: New. * testsuite/21_strings/basic_string_view/operations/rfind/char/ nonnull.cc: New. From-SVN: r261638
Jonathan Wakely committed -
PR libstdc++/86168 * include/bits/random.h (random_device(const string&)): Remove default argument. From-SVN: r261636
Jonathan Wakely committed -
gcc/ChangeLog: 2018-06-15 Matthew Fortune <matthew.fortune@mips.com> * config/mips/mips.h (ASM_SPEC): Pass through -mcrc, -mno-crc, -mginv and -mno-ginv to the assembler. * config/mips/mips.opt (-mcrc): New option. (-mginv): Likewise. * doc/invoke.text (-mcrc): Document. (-mginv): Likewise. From-SVN: r261635
Matthew Fortune committed -
* include/bits/char_traits.h (__cpp_lib_constexpr_char_traits): Only define for C++17 and above. From-SVN: r261634
Jonathan Wakely committed -
PR 84195 gcc: * tree.c (escaped_string): New class. Converts an unescaped string into its escaped equivalent. (warn_deprecated_use): Use the new class to convert the deprecation message, if present. (test_escaped_strings): New self test. (test_c_tests): Add test_escaped_strings. * doc/extend.texi (deprecated): Add a note that the deprecation message is affected by the -fmessage-length option, and that control characters will be escaped. (#pragma GCC error): Document this pragma. (#pragma GCC warning): Likewise. * doc/invoke.texi (-fmessage-length): Document this option's effect on the #warning and #error preprocessor directives and the deprecated attribute. testsuite; * gcc.c-torture/compile/pr84195.c: New test. From-SVN: r261633
Nick Clifton committed -
* doc/xml/manual/intro.xml: Document LWG 2993 change. * include/bits/refwrap.h (reference_wrapper(_Tp&)): Remove. (reference_wrapper(_Tp&&)): Remove. (reference_wrapper<_Up>(_Up&&)): Define new constructor as constrained template. (reference_wrapper): Add deduction guide. * testsuite/20_util/reference_wrapper/deduction.cc: New. * testsuite/20_util/reference_wrapper/lwg2993.cc: New. From-SVN: r261632
Jonathan Wakely committed -
2018-06-15 Richard Biener <rguenther@suse.de> * tree-vect-slp.c (vect_slp_bb): Dump MSG_OPTIMIZED_LOCATIONS here, also noting vector size used. * tree-vectorizer.c (vectorize_loops): Adjust. Note vector size used in MSG_OPTIMIZED_LOCATIONS dump. (pass_slp_vectorize::execute): Adjust. From-SVN: r261626
Richard Biener committed -
The if condition in arc_return_address_register which selects the arc return address is not correct. The issue is signalized in bugzilla 85968. gcc/ 2018-06-15 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_return_address_register): Fix if-condition. From-SVN: r261623
Claudiu Zissulescu committed -
re PR tree-optimization/86159 (g++ ICE at -O1 and above on valid code: incorrect type of vector CONSTRUCTOR elements) 2018-06-15 Richard Biener <rguenther@suse.de> PR middle-end/86159 * tree-cfg.c (gimplify_build3): Do not strip sign conversions, leave useless conversion stripping to force_gimple_operand_gsi. (gimplify_build2): Likewise. (gimplify_build1): Likewise. * g++.dg/pr86159.C: New testcase. From-SVN: r261622
Richard Biener committed -
re PR tree-optimization/86076 (ICE: verify_gimple failed (error: location references block not in block tree)) 2018-06-15 Richard Biener <rguenther@suse.de> PR middle-end/86076 * tree-cfg.c (move_stmt_op): unshare invariant addresses before adjusting their block. * gcc.dg/pr86076.c: New testcase. From-SVN: r261620
Richard Biener committed -
Add multilib variants for -march=rv64imafd, e.g. to support the BOOMv2 core. Add -mcmodel=medany as a variant of the 64-bit multilibs for RTEMS. The rationale for this change is that several existing RISC-V chips map the RAM at 0x80000000. In RTEMS, we do not use virtual memory, so applications will run at this location which is outside the +-2GiB range in a 64-bit configuration. gcc/ * config.gcc (riscv*-*-elf* | riscv*-*-rtems*): Use custom multilibs for *-*-rtems*. * config/riscv/t-rtems: New file. From-SVN: r261619
Sebastian Huber committed -
* include/std/future (__constrain_pkgdtask): Replace with ... (packaged_task::__not_same): New alias template, using __remove_cvref_t instead of decay. * include/std/thread (thread::__not_same): Add comment. From-SVN: r261618
Jonathan Wakely committed -
From-SVN: r261617
GCC Administrator committed
-
- 14 Jun, 2018 11 commits
-
-
re PR c++/86063 (g++ ICE at tree check: expected tree_list, have expr_pack_expansion in cp_check_const_attributes, at cp/decl2.c:1391) PR c++/86063 * decl2.c (cp_check_const_attributes): Skip trees that are not TREE_LISTs. * g++.dg/cpp0x/gen-attrs-65.C: New test. From-SVN: r261613
Marek Polacek committed -
* testsuite/21_strings/basic_string/cons/char/deduction.cc: Test deduction from string views. * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc: Likewise. From-SVN: r261612
Jonathan Wakely committed -
* include/bits/valarray_after.h (_DEFINE_EXPR_BINARY_FUNCTION): Change scalar parameters to be a non-deduced context. * include/std/valarray (_DEFINE_BINARY_OPERATOR): Likewise. Adjust whitespace. * testsuite/26_numerics/valarray/operators.cc: Test scalar operands. * testsuite/26_numerics/valarray/transcend.cc: New. From-SVN: r261610
Jonathan Wakely committed -
PR target/86048 * gcc.target/i386/pr86048.c: Require sse2 effective target. Add -msse2 to dg-options. From-SVN: r261608
Jakub Jelinek committed -
PR middle-end/86122 * match.pd ((A +- CST1) +- CST2): Punt if last resort unsigned_type_for returns NULL. * gcc.c-torture/compile/pr86122.c: New test. From-SVN: r261606
Jakub Jelinek committed -
P0624R2 - Default constructible and assignable stateless lambdas * method.c (synthesized_method_walk): For C++2a don't mark sfk_constructor or sfk_copy_assignment as deleted if lambda has no lambda-captures. * g++.dg/cpp2a/lambda1.C: New test. * g++.dg/cpp0x/lambda/lambda-ice2.C: Adjust expected diagnostics for -std=c++2a. From-SVN: r261605
Jakub Jelinek committed -
Defining std::tuple_element_t in <utility> makes it available wherever std::tuple_element is available. * include/std/tuple (__cpp_lib_tuple_element_t, tuple_element_t): Move back to <utility>. * include/std/utility (__cpp_lib_tuple_element_t. tuple_element_t): Restore to here. From-SVN: r261604
Jonathan Wakely committed -
/cp 2018-06-14 Paolo Carlini <paolo.carlini@oracle.com> * decl.c (duplicate_decls): Use DECL_SOURCE_LOCATION in OPT_Wshadow warning_at. (grokfndecl): Consistently use the location_t argument in literal operator diagnostic messages. (grokdeclarator): Use declspecs->locations[ds_storage_class] in error_at call. * decl2.c (finish_static_data_member_decl): Use DECL_SOURCE_LOCATION in permerror call. /testsuite 2018-06-14 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/other/static3.C: New. * g++.dg/other/static4.C: Likewise. * g++.dg/warn/Wshadow-15.C: Likewise. * g++.dg/cpp0x/gnu_fext-numeric-literals.C: Test locations too. * g++.dg/cpp0x/std_fext-numeric-literals.C: Likewise. * g++.dg/cpp0x/std_fno-ext-numeric-literals.C: Likewise. * g++.dg/cpp0x/udlit-args-neg.C: Likewise. * g++.dg/cpp0x/udlit-clink-neg.C: Likewise. * g++.dg/cpp0x/udlit-extern-c.C: Likewise. * g++.dg/cpp0x/udlit-member-neg.C: Likewise. From-SVN: r261601
Paolo Carlini committed -
More pieces of P0935R0, making default constructors non-explicit. * include/backward/strstream (strstreambuf): Add non-explicit default constructor. * include/bits/locale_conv.h (wbuffer_convert, wstring_convert): Likewise. * include/bits/regex.h (match_results): Likewise. * testsuite/22_locale/conversions/buffer/1.cc: Test for non-explicit default constructor. * testsuite/22_locale/conversions/string/1.cc: Likewise. * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise. * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise. From-SVN: r261597
Jonathan Wakely committed -
* include/std/tuple (__cpp_lib_tuple_element_t): Move feature test macro from <utility> and change type to long. * include/std/utility (__cpp_lib_tuple_element_t): Remove. * testsuite/20_util/tuple/tuple_element_t.cc: Check for feature test macro. From-SVN: r261596
Jonathan Wakely committed -
PR target/85945 * lower-subreg.c (find_decomposable_subregs): Don't decompose float subregs of multi-word pseudos unless the float mode has word size. * gcc.c-torture/compile/pr85945.c: New test. From-SVN: r261593
Jakub Jelinek committed
-