Thanks for @rsmith to point this. I'm sorry for introducing this bug.
See @rsmith 's comment in https://reviews.llvm.org/D122248
Eg:(By @rsmith ) https://godbolt.org/z/o7vcbWaEf
I have added a test case
struct:
struct U19A { int a; }; struct U19B { struct U19A a; }; struct U19B a = { .a.a = 2022 };
Dump result:
struct U19B { struct U19A a = { int a = 2022 } }
Not a fan of bool parameters, they make calls harder to read.