dmd 1.054 and 2.038 release

Steven Schveighoffer schveiguy at yahoo.com
Thu Dec 31 12:20:04 PST 2009


On Thu, 31 Dec 2009 15:05:56 -0500, Don <nospam at nospam.com> wrote:

> bearophile wrote:
>> Walter Bright:
>>> Happy New Year!
>>  Happy end of the year to you too!
>> Is this the last release for the 2009? ;-)
>>  This is funny:
>> min(x, y) = 10;    // sets x to 10
>>  This looks by far like the most useful improvement/change of this DMD  
>> release, I've already tried it and I like it a lot, thanks to Don and  
>> to you!
>>> Bugzilla 2816: Sudden-death static assert is not very useful<
>
> I can't take credit for that. It comes from the LDC guys, I just  
> enhanced it slightly.
> There are 26 Bugzilla votes fixed in this release, which is probably a  
> record. (I'm assuming bug 1961('scoped const') is considered to be  
> fixed).

Sadly, it's not fixed yet :(


struct S
{
     int x;
     inout(int)* getX() inout { return &x;}
}

void main()
{
     S s;
     int *x = s.getX();
}


testinout.d(10): Error: function testinout.S.getX () inout is not callable  
using argument types ()
testinout.d(10): Error: cannot implicitly convert expression (s.getX()) of  
type inout(int)* to int*

It appears the auto-conversion is not happening on the return, and also  
the call isn't working.

I'm surprised this was listed as an implemented feature...  Is there some  
test code that you were using to confirm this Walter?

-Steve


More information about the Digitalmars-d-announce mailing list