diff options
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r-- | gcc/cp/ChangeLog | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index fd80576..4905378 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,66 @@ +2022-03-12 Patrick Palka <ppalka@redhat.com> + + PR c++/104641 + * cp-tree.h (tsubst_flags::tf_tst_ok): New flag. + * decl.cc (make_typename_type): Allow a typename-specifier to + resolve to a template when tf_tst_ok, in which case return + a CTAD placeholder for the template. + * pt.cc (tsubst_decl) <case VAR_DECL>: Set tf_tst_ok when + substituting the type. + (tsubst): Clear tf_tst_ok and remember if it was set. + <case TYPENAME_TYPE>: Pass tf_tst_ok to make_typename_type + appropriately. + (tsubst_copy) <case CAST_EXPR>: Set tf_tst_ok when substituting + the type. + (tsubst_copy_and_build) <case CAST_EXPR>: Likewise. + <case CONSTRUCTOR>: Likewise. + +2022-03-12 Patrick Palka <ppalka@redhat.com> + + PR c++/104622 + * call.cc (missing_conversion_p): Define. + (add_candidates): Use it. + * pt.cc (check_non_deducible_conversion): Change type of strict + parameter to unification_kind_t and directly test for DEDUCE_CALL. + +2022-03-12 Patrick Palka <ppalka@redhat.com> + + PR c++/104527 + * constraint.cc (normalize_atom): Set + ATOMIC_CONSTR_EXPR_FROM_CONCEPT_P appropriately. + (get_mapped_args): Make static, adjust parameters. Always + return a vector whose depth corresponds to the template depth of + the context of the atomic constraint expression. Micro-optimize + by passing false as exact to safe_grow_cleared and by collapsing + a multi-level depth-one argument vector. + (satisfy_atom): Adjust call to get_mapped_args and + diagnose_atomic_constraint. + (diagnose_atomic_constraint): Replace map parameter with an args + parameter. + * cp-tree.h (ATOMIC_CONSTR_EXPR_FROM_CONCEPT_P): Define. + (get_mapped_args): Remove declaration. + +2022-03-12 Patrick Palka <ppalka@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c++/98644 + * constexpr.cc (mark_non_constant): Define, split out from ... + (cxx_eval_outermost_constant_expr): ... here. + (maybe_constant_value): Use it. + +2022-03-12 Patrick Palka <ppalka@redhat.com> + + * semantics.cc (finish_unary_fold_expr): Use input_location + instead of UNKNOWN_LOCATION. + (finish_binary_fold_expr): Likewise. + +2022-03-12 Thomas Schwinge <thomas@codesourcery.com> + + PR other/65095 + * semantics.cc (handle_omp_array_sections_1) + (cp_oacc_check_attachments): Call 'user_omp_clause_code_name' + instead of 'c_omp_map_clause_name'. + 2022-03-10 Marek Polacek <polacek@redhat.com> PR c++/104608 |