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

Jason Merrill <jason at gcc dot gnu.org> changed:

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

--- Comment #20 from Jason Merrill <jason at gcc dot gnu.org> ---
The problem seems to be

  /* Abstract decls do not need an assembler name.  */
  if (DECL_ABSTRACT_P (decl))
=>  return false;

in need_assembler_name_p combined with

  if (DECL_FROM_INLINE (decl))
    return get_index_by_decl (DECL_ABSTRACT_ORIGIN (decl));

in get_index_by_decl.  These two functions are making incompatible assumptions;
the latter causes autofdo to rely on the assembler name for the abstract
maybe-in-charge constructor that the former decided wasn't needed.

Reply via email to