Re: dmd 1.064 and 2.049 release
Don: > Sorry bearophile, regressions and wrong-code bugs will ALWAYS have top > priority. There will be no apology for fixing bugs like 3996, 4681, and > 4009. . Thinking quite more about it, I don't agree. Those are critical implementation bugs, but they are bugs still. Design bugs come before critical implementation bugs because if you don't fix them sooner, they become permanent. Among my list of little design bugs to fix there are things more important than 3996, 4681, and 4009, and the risk of seeing them become permanent is growing at every dmd2 release after TDPL publication. Bye, bearophile
Re: dmd 1.064 and 2.049 release
Walter Bright 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/
Re: dmd 1.064 and 2.049 release
Don: > Sorry bearophile, regressions and wrong-code bugs will ALWAYS have top > priority. There will be no apology for fixing bugs like 3996, 4681, and > 4009. . I see. On the other hand little design bugs are important too because despite they now look temporary, they risk becoming permanent, I have some past experience on this. This is why I am using all the chances I have to put them under attention. So far only two of the ones I have listed have being discussed and only one of them was fixed (the one about a|b>c). Unrelated: in Bugzilla I have few small Phobos patches. If no one finds time or interest in them, then I may eventually desire to apply those patches myself. Bye, bearophile
Re: dmd 1.064 and 2.049 release
bearophile wrote: Walter Bright: This is primarily a bug fix release. I was away. Thank you for all the work. For the close future I suggest to focus a bit more on fixing language/design corner cases, instead of just on normal dmd/Phobos/druntime bugs (as done in this release). Sorry bearophile, regressions and wrong-code bugs will ALWAYS have top priority. There will be no apology for fixing bugs like 3996, 4681, and 4009. .
Re: dmd 1.064 and 2.049 release
Walter Bright: > This is primarily a bug fix release. I was away. Thank you for all the work. For the close future I suggest to focus a bit more on fixing language/design corner cases, instead of just on normal dmd/Phobos/druntime bugs (as done in this release). The Changelog of 2.049 says: Bugzilla 4603: array(iota(1, 0)) error. But it's not closed, here time ago I have explained why: http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=115725 See also: http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=117461 --- Regarding bug 3554/3957: http://d.puremagic.com/issues/show_bug.cgi?id=3554 It doesn't seem fixed in dmd 2.049. This program: /// Return a random number in [0, 10 $(LPAREN) void foo() {} void main() {} Generates an html that doesn't show the closing left parenthesis: ... Return a random number in [0, 10 ... So if I am not mistaken I may reopen bug 3554. Bye, bearophile
Re: dmd 1.064 and 2.049 release
Aldo Nunez wrote: I filed bug report 4897. http://ftp.digitalmars.com/link.8.00.8.zip
Re: dmd 1.064 and 2.049 release
Bernard Helyer wrote: On Fri, 17 Sep 2010 11:45:15 +, Bernard Helyer wrote: Looks solid, but it appears to have broken debugging info. (Linux) Looking through the bug tracker now. U 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.
Re: dmd 1.064 and 2.049 release
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
Re: dmd 1.064 and 2.049 release
== Quote from osa (o...@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)) ); > > } > 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. This is a real bug. Please file a bug report. I'll look into it soon.
Re: dmd 1.064 and 2.049 release
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.
Re: dmd 1.064 and 2.049 release
== Quote from osa (o...@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)) ); }
Re: dmd 1.064 and 2.049 release
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.
Re: dmd 1.064 and 2.049 release
On Fri, 17 Sep 2010 11:45:15 +, Bernard Helyer wrote: > Looks solid, but it appears to have broken debugging info. (Linux) > > Looking through the bug tracker now. U disregard that, PEBKAC. ^^;
Re: dmd 1.064 and 2.049 release
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.
Re: dmd 1.064 and 2.049 release
"Walter Bright" wrote in message news:i6up2t$19c...@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
Re: dmd 1.064 and 2.049 release
Hello Walter, This is primarily a bug fix release. And that it is! Great job! -- ... <
dmd 1.064 and 2.049 release
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