If however you're going to change the member in the constructor, based on a runtime value, the initializer is meaningless and shouldn't have existed.> And what if you want to have BOTH default CTFE initialization and
additional initialization based on some run-time data?Then you have a flaw in your thinking. That doesn't make sense.And, I still do not believe that there is a single valid use case for the new behaviour.
Here's the reason:If you can provide an initializer for a struct member, that is the same for all instances of that struct, and you will never change that member, it shouldn't be a member of the struct in the first place. It should be static const or an enum value.