Jump to page: 1 2
Thread overview
DMD 1.033 and 2.017 releases
Jul 12, 2008
Walter Bright
Jul 12, 2008
Bill Baxter
Jul 12, 2008
Lionello Lunesu
Jul 12, 2008
Bill Baxter
Jul 12, 2008
Bill Baxter
Jul 12, 2008
Koroskin Denis
Jul 12, 2008
user
Jul 12, 2008
Lars Ivar Igesund
Jul 12, 2008
Don
Jul 12, 2008
Moritz Warning
Re: DMD 1.033 (typeof() error instantiating in template)
Jul 17, 2008
David L. Davis
Jul 17, 2008
Koroskin Denis
Jul 17, 2008
David L. Davis
Jul 17, 2008
Koroskin Denis
July 12, 2008
For Tango.

http://www.digitalmars.com/d/1.0/changelog.html
http://ftp.digitalmars.com/dmd.1.033.zip

http://www.digitalmars.com/d/2.0/changelog.html
http://ftp.digitalmars.com/dmd.2.017.zip
July 12, 2008
Walter Bright wrote:
> For Tango.
> 
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.033.zip
> 
> http://www.digitalmars.com/d/2.0/changelog.html
> http://ftp.digitalmars.com/dmd.2.017.zip

Yay!  This is great.

--bb
July 12, 2008
Walter Bright wrote:
> For Tango.
> 
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.033.zip
> 
> http://www.digitalmars.com/d/2.0/changelog.html
> http://ftp.digitalmars.com/dmd.2.017.zip

YES! Release early, release often!

These bug-fix releases are the best, IMO. Thanks!

L.
July 12, 2008
"Walter Bright" <newshound1@digitalmars.com> wrote in message news:g591bf$j5j$2@digitalmars.com...
> For Tango.
>
> http://www.digitalmars.com/d/1.0/changelog.html http://ftp.digitalmars.com/dmd.1.033.zip
>
> http://www.digitalmars.com/d/2.0/changelog.html http://ftp.digitalmars.com/dmd.2.017.zip

Regression fixes _for the win_.  Let's see more of this ;)


July 12, 2008
v2.017  with '-w' switch:


warning - /dmd/bin/../bin/../src/phobos/std/file.d(1064): Error: implicit
conversion of expression (fta / 1000L) of type long to int can cause loss of
data
warning - /dmd/bin/../bin/../src/phobos/std/file.d(1065): Error: implicit
conversion of expression (cast(long)(cast(double)fta / 1000 * 1e+06) %
1000000L) of type long to int can cause loss of data
warning - /dmd/bin/../bin/../src/phobos/std/file.d(1067): Error: implicit
conversion of expression (ftm / 1000L) of type long to int can cause loss of
data
warning - /dmd/bin/../bin/../src/phobos/std/file.d(1068): Error: implicit
conversion of expression (cast(long)(cast(double)ftm / 1000 * 1e+06) %
1000000L) of type long to int can cause loss of data

July 12, 2008
Jarrett Billingsley wrote:
> "Walter Bright" <newshound1@digitalmars.com> wrote in message news:g591bf$j5j$2@digitalmars.com...
>> For Tango.
>>
>> http://www.digitalmars.com/d/1.0/changelog.html
>> http://ftp.digitalmars.com/dmd.1.033.zip
>>
>> http://www.digitalmars.com/d/2.0/changelog.html
>> http://ftp.digitalmars.com/dmd.2.017.zip
> 
> Regression fixes _for the win_.  Let's see more of this ;) 

Maybe sooner than you were thinking:

Is there any incantation I can use to make the code below work now?

I saw that typeof(Type.member) is no longer considered valid, but it seems neither are any of the replacements I can think of.


--------------
struct Thing(Scalar)
{
    Scalar x,y,z;
}

alias typeof(Thing!(float).x) SC; /* This version used to work */
/+
bug.d(30): Error: this is not in a struct or class scope
bug.d(30): Error: 'this' is only allowed in non-static member functions, not main
bug.d(30): Error: this for x needs to be type Thing not type int
+/

alias typeof(Thing!(float).init.x) SC2;
/+
bug.d(32): Error: undefined identifier struct Thing.init
bug.d(32): Error: no property 'x' for type 'void'
+/

alias typeof((Thing!(float).init).x) SC2;
/+
bug.d(37): Error: Thing!(float).init is used as a type
bug.d(37): Error: no property 'x' for type 'void'
+/

void main()
{
}

--bb
July 12, 2008
Bill Baxter wrote:
> Jarrett Billingsley wrote:
>> "Walter Bright" <newshound1@digitalmars.com> wrote in message news:g591bf$j5j$2@digitalmars.com...
>>> For Tango.
>>>
>>> http://www.digitalmars.com/d/1.0/changelog.html
>>> http://ftp.digitalmars.com/dmd.1.033.zip
>>>
>>> http://www.digitalmars.com/d/2.0/changelog.html
>>> http://ftp.digitalmars.com/dmd.2.017.zip
>>
>> Regression fixes _for the win_.  Let's see more of this ;) 
> 
> Maybe sooner than you were thinking:
> 
> Is there any incantation I can use to make the code below work now?
> 
> I saw that typeof(Type.member) is no longer considered valid, but it seems neither are any of the replacements I can think of.
> 
> 
> --------------
> struct Thing(Scalar)
> {
>     Scalar x,y,z;
> }
> 
> alias typeof(Thing!(float).x) SC; /* This version used to work */
> /+
> bug.d(30): Error: this is not in a struct or class scope
> bug.d(30): Error: 'this' is only allowed in non-static member functions, not main
> bug.d(30): Error: this for x needs to be type Thing not type int
> +/
> 
> alias typeof(Thing!(float).init.x) SC2;
> /+
> bug.d(32): Error: undefined identifier struct Thing.init
> bug.d(32): Error: no property 'x' for type 'void'
> +/
> 
> alias typeof((Thing!(float).init).x) SC2;
> /+
> bug.d(37): Error: Thing!(float).init is used as a type
> bug.d(37): Error: no property 'x' for type 'void'
> +/
> 
> void main()
> {
> }
> 
> --bb


Looks like this works:
alias typeof((Thing!(float)).init.x) SC2;

But I think this is a bug.  The parentheses shouldn't be necessary there I don't think.

I've also run into another case here where in a template struct

  static if(typeof(*this).static_bool) { .. }

fails, but with extra parens it works:

  static if((typeof(*this)).static_bool) { .. }

Also works if you define an extra alias

  private alias typeof(*this) TypeofThis
  static if(TypeofThis.static_bool) { .. }


--bb
July 12, 2008
Walter Bright wrote:

> For Tango.

Thanks :D

-- 
Lars Ivar Igesund
blog at http://larsivi.net
DSource, #d.tango & #D: larsivi
Dancing the Tango
July 12, 2008
Walter Bright wrote:
> For Tango.
> 
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.033.zip
> 
> http://www.digitalmars.com/d/2.0/changelog.html
> http://ftp.digitalmars.com/dmd.2.017.zip
Thanks, Walter.
DMD1.032 smashes the record for number of bugs fixed in one release.
It's particularly good to see some of those really old bugs get closed.
These kind of releases do a lot for D's image, I think.
July 12, 2008
Thanks for the quick turnaround!

-Steve

"Walter Bright" wrote
> For Tango.
> 
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.033.zip
> 
> http://www.digitalmars.com/d/2.0/changelog.html
> http://ftp.digitalmars.com/dmd.2.017.zip
« First   ‹ Prev
1 2