https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79796

--- Comment #5 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Surprisingly my naïve attempt to fix this works:

--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -8047,6 +8047,8 @@ build_over_call (struct z_candidate *cand, int flags,
tsubst_flags_t complain)
    {
      arg = cp_build_indirect_ref (arg, RO_NULL, complain);
      val = build2 (MODIFY_EXPR, TREE_TYPE (to), to, arg);
+     if (cxx_dialect >= cxx14)
+       replace_placeholders (arg, to);
    }
       else
    {


and the C++ testsuite passes.

Reply via email to