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

Christophe Lyon <clyon at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |clyon at gcc dot gnu.org

--- Comment #2 from Christophe Lyon <clyon at gcc dot gnu.org> ---
FTR I tried this based on your suggestion:
diff --git a/gcc/cp/decl.cc b/gcc/cp/decl.cc
index a785d5e79cb..a709bde8f15 100644
--- a/gcc/cp/decl.cc
+++ b/gcc/cp/decl.cc
@@ -18945,6 +18945,7 @@ maybe_prepare_return_this (tree cdtor)
   if (targetm.cxx.cdtor_returns_this ())
     if (tree val = DECL_ARGUMENTS (cdtor))
       {
+       set_call_expr_flags (cdtor, ECF_RET1);
        suppress_warning (val, OPT_Wuse_after_free);
        return val;
       }
but it had no effect on codegen.

Reply via email to