aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r--gcc/cp/ChangeLog245
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