Reject attempts to initialize non-aggregate types from a designated
initializer list. This previously led to some weird behaviors where we would unwrap the initializer list expression and then try to use the DesignatedInitExprs as constructor arguments. Under the C++20 language rules, it's not valid to initialize a reference-to-aggregate from a designated initializer list, but we have historically accepted that, as do other compilers, and we continue to accept that with this change. I've asked WG21 whether this should be considered a wording defect.
Loading
Please sign in to comment