https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101344
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|unassigned at gcc dot gnu.org |ppalka at gcc dot gnu.org CC| |ppalka at gcc dot gnu.org See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=101803 Status|NEW |ASSIGNED --- Comment #2 from Patrick Palka <ppalka at gcc dot gnu.org> --- Another rejects-valid example (I think): template<class T=void> struct C { int m; int t[2]; }; C b{1, {2, 3}}; The relevant wording seems to be https://eel.is/c++draft/over.match.class.deduct#1.5. Rather than only "considering" brace elision for int[2] (and other non-dependent aggregate type), we seem to require it.