diff options
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r-- | gcc/cp/ChangeLog | 245 |
1 files changed, 245 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 8ce0c68168a..5a1c4c5765b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,248 @@ +2019-10-22 Marek Polacek <polacek@redhat.com> + + Backported from mainline + 2019-10-21 Marek Polacek <polacek@redhat.com> + + PR c++/92106 - ICE with structured bindings and -Wreturn-local-addr. + * typeck.c (maybe_warn_about_returning_address_of_local): Avoid + recursing on null initializer and return false instead. + +2019-09-03 Iain Sandoe <iain@sandoe.co.uk> + + Backported from mainline + 2019-08-23 Iain Sandoe <iain@sandoe.co.uk> + + PR pch/61250 + * parser.c (cp_parser_initial_pragma): Call c_common_no_more_pch () + after determining that the first token is not + PRAGMA_GCC_PCH_PREPROCESS. + +2019-08-30 Richard Biener <rguenther@suse.de> + + Backport from mainline + 2019-02-21 Richard Biener <rguenther@suse.de> + + PR middle-end/89392 + * vtable-class-hierarchy.c (vtv_generate_init_routine): Do not + make symtab process new functions here. + +2019-08-29 Jakub Jelinek <jakub@redhat.com> + + Backported from mainline + 2019-06-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/90950 + * semantics.c (finish_omp_clauses): Don't reject references to + incomplete types if processing_template_decl. + + 2019-05-15 Jakub Jelinek <jakub@redhat.com> + + PR debug/90197 + * cp-gimplify.c (genericize_cp_loop): Emit a DEBUG_BEGIN_STMT + before the condition (or if missing or constant non-zero at the end + of the loop. Emit a DEBUG_BEGIN_STMT before the increment expression + if any. Don't call protected_set_expr_location on incr if it already + has a location. + + 2019-05-10 Jakub Jelinek <jakub@redhat.com> + + PR pch/90326 + * config-lang.in (gtfiles): Remove c-family/c-lex.c, add + c-family/c-cppbuiltin.c. + +2019-08-15 Jonathan Wakely <jwakely@redhat.com> + + Backport from mainline. + 2019-08-14 Jonathan Wakely <jwakely@redhat.com> + + PR c++/91436 + * name-lookup.c (get_std_name_hint): Fix min_dialect field for + complex_literals and make_unique entries. + +2019-08-01 Marek Polacek <polacek@redhat.com> + + Backported from mainline + 2018-06-12 Jason Merrill <jason@redhat.com> + + PR c++/86098 - ICE with template placeholder for TTP. + * typeck.c (structural_comptypes) [TEMPLATE_TYPE_PARM]: Check + CLASS_PLACEHOLDER_TEMPLATE. + +2019-06-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/90810 + * init.c (constant_value_1): Handle VECTOR_CST DECL_INITIAL for + !DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P decls like CONSTRUCTOR. + +2019-05-22 Eric Botcazou <ebotcazou@adacore.com> + + Backport from mainline + 2018-05-10 Eric Botcazou <ebotcazou@adacore.com> + + PR c++/85400 + * decl2.c (adjust_var_decl_tls_model): New static function. + (comdat_linkage): Call it on a variable. + (maybe_make_one_only): Likewise. + +2019-05-20 Jonathan Wakely <jwakely@redhat.com> + + Backported from mainline + 2019-05-20 Jonathan Wakely <jwakely@redhat.com> + + PR c++/90532 Ensure __is_constructible(T[]) is false + * method.c (is_xible_helper): Return error_mark_node for construction + of an array of unknown bound. + +2019-05-07 Marek Polacek <polacek@redhat.com> + + Backported from mainline + 2019-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/88857 - ICE with value-initialization of argument in template. + * call.c (convert_like_real): Don't call build_value_init in template. + + 2019-03-25 Marek Polacek <polacek@redhat.com> + + PR c++/89214 - ICE when initializing aggregates with bases. + * typeck2.c (digest_init_r): Warn about object slicing instead of + crashing. + + 2019-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/89511 - ICE with using-declaration and unscoped enumerator. + * parser.c (cp_parser_using_declaration): For an unscoped enum + only use its context if it's not a function declaration. + + 2019-03-25 Marek Polacek <polacek@redhat.com> + + PR c++/89705 - ICE with reference binding with conversion function. + * call.c (reference_binding): If the result of the conversion function + is a prvalue of non-class type, use the cv-unqualified type. + + 2019-03-29 Marek Polacek <polacek@redhat.com> + + PR c++/89876 - ICE with deprecated conversion. + * call.c (convert_like_real): Only give warnings with tf_warning. + +2019-04-30 Jakub Jelinek <jakub@redhat.com> + + Backported from mainline + 2019-04-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/90108 + * decl.c (duplicate_decls): If remove is main variant and + DECL_ORIGINAL_TYPE is some other type, remove a DECL_ORIGINAL_TYPE + variant that has newdecl as TYPE_NAME if any. + + 2019-04-12 Jakub Jelinek <jakub@redhat.com> + + PR c/89933 + * decl.c (duplicate_decls): When newdecl's type is its main variant, + don't try to remove it from the variant list, but instead assert + it has no variants. + + 2019-03-29 Jakub Jelinek <jakub@redhat.com> + + PR sanitizer/89869 + * typeck.c: Include gimplify.h. + (cp_build_modify_expr) <case COND_EXPR>: Unshare rhs before using it + for second time. Formatting fixes. + + 2019-03-26 Jakub Jelinek <jakub@redhat.com> + + PR c++/89796 + * semantics.c (finish_omp_atomic): Add warning_sentinel for + -Wunused-value around finish_expr_stmt call. + + 2019-03-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/60702 + * cp-tree.h (get_tls_wrapper_fn): Remove declaration. + (maybe_get_tls_wrapper_call): Declare. + * decl2.c (get_tls_wrapper_fn): Make static. + (maybe_get_tls_wrapper_call): New function. + * typeck.c (build_class_member_access_expr): Handle accesses to TLS + variables. + * semantics.c (finish_qualified_id_expr): Likewise. + (finish_id_expression_1): Use maybe_get_tls_wrapper_call. + * pt.c (tsubst_copy_and_build): Likewise. + + 2019-03-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/89767 + * parser.c (cp_parser_lambda_introducer): Add ids and first_capture_id + variables, check for duplicates in this function. + * lambda.c (add_capture): Don't check for duplicates nor use + IDENTIFIER_MARKED. + (register_capture_members): Don't clear IDENTIFIER_MARKED here. + + 2019-03-14 Jakub Jelinek <jakub@redhat.com> + + PR c++/89512 + * semantics.c (finish_qualified_id_expr): Reject variable templates. + + 2019-03-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/87148 + * init.c (build_value_init_noctor): Ignore flexible array members. + + 2019-02-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/89403 + * decl2.c (c_parse_final_cleanups): Move TREE_ASM_WRITTEN setting + for flag_syntax_only from here... + * semantics.c (expand_or_defer_fn_1): ... here. + + PR c++/89405 + * decl.c (maybe_commonize_var): When clearing TREE_PUBLIC and + DECL_COMMON, set DECL_INTERFACE_KNOWN. + +2019-03-08 Jason Merrill <jason@redhat.com> + + PR c++/88820 - ICE with CTAD and member template used in DMI. + * pt.c (do_class_deduction): Handle parm used as its own arg. + + PR c++/88869 - C++17 ICE with CTAD and explicit specialization. + * pt.c (do_class_deduction): Don't include explicit specialization + args in outer_args. + + PR c++/88419 - C++17 ICE with class template arg deduction. + * pt.c (make_template_placeholder): Set TYPE_CANONICAL after + CLASS_PLACEHOLDER_TEMPLATE. + + PR c++/88690 - C++17 ICE with empty base in aggregate. + * typeck2.c (process_init_constructor_record): Skip trivial + initialization of an empty base. + + PR c++/87921 - wrong error with inline static data member. + * decl2.c (c_parse_final_cleanups): Don't force out uninstantiated + inline static data members. + + PR c++/89381 - implicit copy and using-declaration. + * class.c (classtype_has_move_assign_or_move_ctor_p): Don't consider + op= brought in by a using-declaration. + + PR c++/89576 - if constexpr of lambda capture. + * semantics.c (maybe_convert_cond): Do convert a non-dependent + condition in a template. + * typeck.c (condition_conversion): Handle being called in a + template. + + PR c++/89422 - ICE with -g and lambda in default arg in template. + * pt.c (tsubst_function_decl): SET_DECL_FRIEND_CONTEXT sooner. + + PR c++/87513 - 'sorry' mangling PMF template-id. + * mangle.c (write_expression): Handle SCOPE_REF to BASELINK. + + PR c++/88183 - ICE with .* fold-expression. + * pt.c (fold_expression) [DOTSTAR_EXPR]: Remove special handling. + +2019-03-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/89585 + * parser.c (cp_parser_asm_definition): Parse asm qualifiers even + at toplevel, but diagnose them. + 2019-02-26 Marek Polacek <polacek@redhat.com> Backported from mainline |