DMD 0.177 release
Jarrett Billingsley
kb3ctd2 at yahoo.com
Sat Dec 9 12:03:49 PST 2006
"Walter Bright" <newshound at digitalmars.com> wrote in message
news:ele2k9$2hr5$1 at digitaldaemon.com...
> More ABI changes, and implicit [] => * no longer allowed.
>
> http://www.digitalmars.com/d/changelog.html
>
> http://ftp.digitalmars.com/dmd.175.zip
No offense, but would it honestly kill you to allow ctors in structs? We've
been using static opCall as a _workaround_ for the lack of struct ctors, and
making it part of the language doesn't really seem to be addressing the
problem. That, and it doesn't make any sense that classes use "this()" and
structs use "static S opCall()". We're starting to get into "overloading
indexing in C++" territory.
That, and which would be more efficient? The static opCall needs to return
an instance of the struct on the stack, which could be very inefficient for
large structs. With a true ctor, the struct is passed by reference to the
ctor and has its fields set directly.
And I also can't figure out how to make the implicit opCall work with more
than one parameter. :P
I'm also a little wary about opAssign. Not that I don't find it useful,
just that you've been vehemently opposed to overloading it in D for how many
years, and three weeks before 1.0 you reverse your opinion. What does that
mean?
But complaints aside, thanks for removing the []=>* implicit cast and the
bugfixes. Man, this last month has been an exciting time for D :)
More information about the Digitalmars-d-announce
mailing list