https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89083
--- Comment #3 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Untested patch: --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -6166,6 +6166,8 @@ reshape_init_r (tree type, reshape_iter *d, bool first_initializer_p, before calling digest_init, so changing this code would still not be necessary. */ gcc_assert (!BRACE_ENCLOSED_INITIALIZER_P (stripped_init)); + else if (!BRACE_ENCLOSED_INITIALIZER_P (stripped_init)) + /* We've already reshaped it. */; else { ++d->cur;