Can we drop static struct initializers?
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Fri Nov 20 08:15:23 PST 2009
Walter Bright wrote:
> Don wrote:
>> Now that we have struct literals, the old C-style struct initializers
>> don't seem to be necessary.
>> The variations with named initializers are not really implemented --
>> the example in the spec doesn't work, and most uses of them cause
>> compiler segfaults or wrong code generation. EG...
>>
>> struct Move{
>> int D;
>> }
>> enum Move genMove = { D:4 };
>> immutable Move b = genMove;
>>
>> It's not difficult to fix these compiler problems, but I'm just not
>> sure if it's worth implementing. Maybe they should just be dropped?
>> (The { field: value } style anyway).
>>
>>
>
> Funny, I've been thinking the same thing. Those initializers are pretty
> much obsolete, the only thing left is the field name thing. To keep the
> field name thing with the newer struct literals would require named
> function parameters as well, something doable but I'm not ready to do
> all the work to implement that yet.
>
> Or just drop the field name thing, as you suggest.
Would love to trim the book as well. My finger is on the Del button.
Just say a word.
Andrei
More information about the Digitalmars-d
mailing list