www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - dmd 1.064 and 2.049 release

reply Walter Bright <newshound2 digitalmars.com> writes:
This is primarily a bug fix release.

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

http://www.digitalmars.com/d/2.0/changelog.html
http://ftp.digitalmars.com/dmd.2.049.zip
Sep 16 2010
next sibling parent BCS <none anon.com> writes:
Hello Walter,

 This is primarily a bug fix release.

And that it is! Great job! -- ... <IXOYE><
Sep 16 2010
prev sibling next sibling parent "Nick Sabalausky" <a a.a> writes:
"Walter Bright" <newshound2 digitalmars.com> wrote in message 
news:i6up2t$19cp$1 digitalmars.com...
 This is primarily a bug fix release.

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

 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.049.zip

Excellent, I see the current RDMD has been included :) Now maybe we can get these applied ("squeak" says the wheel...): http://d.puremagic.com/issues/show_bug.cgi?id=4672 http://d.puremagic.com/issues/show_bug.cgi?id=4683 http://d.puremagic.com/issues/show_bug.cgi?id=4684 http://d.puremagic.com/issues/show_bug.cgi?id=4688
Sep 17 2010
prev sibling next sibling parent reply Bernard Helyer <b.helyer gmail.com> writes:
On Thu, 16 Sep 2010 20:58:56 -0700, Walter Bright wrote:

 This is primarily a bug fix release.
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.064.zip
 
 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.049.zip

Looks solid, but it appears to have broken debugging info. (Linux) Looking through the bug tracker now.
Sep 17 2010
next sibling parent reply Bernard Helyer <b.helyer gmail.com> writes:
On Fri, 17 Sep 2010 11:45:15 +0000, Bernard Helyer wrote:
 Looks solid, but it appears to have broken debugging info. (Linux)
 
 Looking through the bug tracker now.

Uhhhh disregard that, PEBKAC. ^^;
Sep 17 2010
parent Walter Bright <newshound2 digitalmars.com> writes:
Aldo Nunez wrote:
 I filed bug report 4897.

http://ftp.digitalmars.com/link.8.00.8.zip
Sep 19 2010
prev sibling next sibling parent "Aldo Nunez" <aldoSkipallthisNunez1 gmail.com> writes:
Bernard Helyer <b.helyer gmail.com> wrote:

 On Fri, 17 Sep 2010 11:45:15 +0000, Bernard Helyer wrote:
 Looks solid, but it appears to have broken debugging info. (Linux)

 Looking through the bug tracker now.

Uhhhh disregard that, PEBKAC. ^^;

Actually, something went wrong in the debugging info on Windows. It seems to be a problem with the new linker (8.00.7). Using an older one, like from DMD release 2.048, works well. I filed bug report 4897.
Sep 19 2010
prev sibling parent "Aldo Nunez" <aldoSkipallthisNunez1 gmail.com> writes:
Walter Bright <newshound2 digitalmars.com> wrote:
 Aldo Nunez wrote:
 I filed bug report 4897.

http://ftp.digitalmars.com/link.8.00.8.zip

Looks good. -- Using Opera's revolutionary email client: http://www.opera.com/mail/
Sep 20 2010
prev sibling parent reply osa <osa aso.osa> writes:
After upgrading to 2.049, trying to compile this code:
----
import std.traits;
void foo() {}
void main() {
     static assert( ! hasUnsharedAliasing!foo );
}
----
gives this error:
dmd2/linux/bin/../../src/phobos/std/traits.d(971): Error: template 
instance isAssociativeArray!(foo) does not match template declaration 
isAssociativeArray(T)
dmd2/linux/bin/../../src/phobos/std/traits.d(971): Error: expression 
isAssociativeArray!(foo) is not constant or does not evaluate to a bool

It used to work with 2.048 so it is probably caused by fixing bug 4834.

Also, error message points to the guts of std.traits and does not give 
any clue about actual instantiation of hasUnsharedAliasing which caused 
this. It was not easy to reduce the problem to the small test case.
Sep 17 2010
parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from osa (osa aso.osa)'s article
 After upgrading to 2.049, trying to compile this code:
 ----
 import std.traits;
 void foo() {}
 void main() {
      static assert( ! hasUnsharedAliasing!foo );
 }
 ----
 gives this error:
 dmd2/linux/bin/../../src/phobos/std/traits.d(971): Error: template
 instance isAssociativeArray!(foo) does not match template declaration
 isAssociativeArray(T)
 dmd2/linux/bin/../../src/phobos/std/traits.d(971): Error: expression
 isAssociativeArray!(foo) is not constant or does not evaluate to a bool
 It used to work with 2.048 so it is probably caused by fixing bug 4834.
 Also, error message points to the guts of std.traits and does not give
 any clue about actual instantiation of hasUnsharedAliasing which caused
 this. It was not easy to reduce the problem to the small test case.

I agree the error message is obtuse, but I don't think this code is supposed to work because foo is not a type. This code does work: import std.traits; void foo() {} void main() { static assert( ! hasUnsharedAliasing!(typeof(foo)) ); }
Sep 17 2010
parent reply osa <osa aso.osa> writes:
On 09/17/2010 03:22 PM, dsimcha wrote:
 I agree the error message is obtuse, but I don't think this code is supposed to
 work because foo is not a type.  This code does work:

 import std.traits;
 void foo() {}
 void main() {
       static assert( ! hasUnsharedAliasing!(typeof(foo)) );
 }

My bad. However, old code used to work with 2.048, with hasLocalAliasing. Now the next problem. I do not think there is unshared aliasing here: ---- import std.traits; struct Foo { void function() func; } void main() { static assert( ! hasUnsharedAliasing!Foo, "struct Foo has unshared aliasing" ); } ---- but it fails to compile. As far as I understand, functions (unlike delegates) do not have any shared aliasing but hasUnsharedAliasing thinks they do.
Sep 17 2010
parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from osa (osa aso.osa)'s article
 On 09/17/2010 03:22 PM, dsimcha wrote:
 I agree the error message is obtuse, but I don't think this code is supposed to
 work because foo is not a type.  This code does work:

 import std.traits;
 void foo() {}
 void main() {
       static assert( ! hasUnsharedAliasing!(typeof(foo)) );
 }

Now the next problem. I do not think there is unshared aliasing here: ---- import std.traits; struct Foo { void function() func; } void main() { static assert( ! hasUnsharedAliasing!Foo, "struct Foo has unshared aliasing" ); } ---- but it fails to compile. As far as I understand, functions (unlike delegates) do not have any shared aliasing but hasUnsharedAliasing thinks they do.

This is a real bug. Please file a bug report. I'll look into it soon.
Sep 17 2010
parent osa <osa aso.osa> writes:
On 09/17/2010 04:05 PM, dsimcha wrote:

 This is a real bug.  Please file a bug report.  I'll look into it soon.

Done: http://d.puremagic.com/issues/show_bug.cgi?id=4882
Sep 17 2010