https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96645
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- If I pass tf_error instead of tf_none in constructible_expr's build_special_member call, I get: pr96645.C: In instantiation of ‘struct is_default_constructible<testVarStruct()::DataWithStruct::A>’: pr96645.C:22:36: required from here pr96645.C:12:17: error: default member initializer for ‘testVarStruct()::DataWithStruct::A::number’ required before the end of its enclosing class 12 | : bool_constant<__is_constructible(T)> | ^~~~~~~~~~~~~~~~~~~~~ so I guess the reason for the failure is that tsubst hasn't processed the nsdmis yet.