https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80095
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jason at gcc dot gnu.org
--- Comment #3 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
In store_init_value, we have
decl: a
type: const struct A &
value: D.2291.p = (void *) &<PLACEHOLDER_EXPR struct A>;, (const struct A &)
&D.2291;
but because type isn't CLASS_TYPE_P, we're not calling replace_placeholders.
We cannot just call replace_placeholders, that would crash, because obj has
type "const struct A &" whereas *t is "<PLACEHOLDER_EXPR struct A>".