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

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Perhaps one possibility would be even for -g0 preserve those specific BLOCKs
(those satisfying
    if (BLOCK_ABSTRACT_ORIGIN (block)
        && TREE_CODE (BLOCK_ABSTRACT_ORIGIN (block)) == FUNCTION_DECL)
      {
        tree fn = BLOCK_ABSTRACT_ORIGIN (block);

        if (flags_from_decl_or_type (fn) & (ECF_PURE | ECF_CONST))
          return false;
        return (TREE_CODE (TREE_TYPE (fn)) == METHOD_TYPE
                && (DECL_CXX_CONSTRUCTOR_P (fn)
                    || DECL_CXX_DESTRUCTOR_P (fn)));
      }
).

Reply via email to