[Issue 6813] Yet another cannot get frame pointer error
http://d.puremagic.com/issues/show_bug.cgi?id=6813 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6665] Regression(2.055) ICE(cg87.c): static double inside closure
http://d.puremagic.com/issues/show_bug.cgi?id=6665 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||FIXED --- Comment #8 from Walter Bright bugzi...@digitalmars.com 2011-10-22 00:28:07 PDT --- https://github.com/D-Programming-Language/dmd/commit/517098887b5dee1e91c69610b8c4056c17e191ce https://github.com/D-Programming-Language/dmd/commit/6277161a9c606c6cdba37500a230e7d71a31d629 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6733] Regression(2.054) ICE(cod2.c) pure nothrow func with side-effect parameters
http://d.puremagic.com/issues/show_bug.cgi?id=6733 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||FIXED --- Comment #7 from Walter Bright bugzi...@digitalmars.com 2011-10-22 02:53:28 PDT --- https://github.com/D-Programming-Language/dmd/commit/6536012f7e23d5dc5928567224d47cc7d9997ceb https://github.com/D-Programming-Language/dmd/commit/ab50833d7ca7fde0380525ed11e66908c440667a -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6838] New: Covariant return types don't work with static arrays
http://d.puremagic.com/issues/show_bug.cgi?id=6838 Summary: Covariant return types don't work with static arrays Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: psztur...@tlen.pl --- Comment #0 from Piotr Szturmaj psztur...@tlen.pl 2011-10-22 09:07:48 PDT --- This is an example from http://d-programming-language.org/function.html, but with changed return types: class Foo { int[] test() { return null; } } class Bar : Foo { int[2] test() { return [1, 2]; } // overrides and is covariant with Foo.test() } // and here's additional test code: void main() { Foo f = new Bar(); auto arr = f.test(); assert(arr.length == 2); } This code compiles but fails on assert. Returned arr.length is 1 and accessing the first element of that array results in access violation. Given that static arrays are implicitly convertible to dynamic arrays, it should work. If not, it at least should not compile. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6839] New: documentation for opAssign incorrect
http://d.puremagic.com/issues/show_bug.cgi?id=6839 Summary: documentation for opAssign incorrect Product: D Version: D2 Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: websites AssignedTo: nob...@puremagic.com ReportedBy: chisophu...@gmail.com --- Comment #0 from Sean Silva chisophu...@gmail.com 2011-10-22 10:10:44 PDT --- The documentation about opAssign seems be incorrect: http://d-programming-language.org/struct.html It says: Struct assignment t=s is defined to be semantically equivalent to: t = S.opAssign(s); which I think should be `t.opAssign(s)`. also, just below, the signature is stated as `S* opAssign(S s)`. According to this post on the newsgroup http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.comgroup=digitalmars.D.learnartnum=30203, the correct signature should be `void opAssign(ref const S rhs)`. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6753] Regression(2.055beta) Reinterpret cast of array to a tail const one doesn't work inside @trusted
http://d.puremagic.com/issues/show_bug.cgi?id=6753 Don clugd...@yahoo.com.au changed: What|Removed |Added CC||clugd...@yahoo.com.au Summary|Reinterpret cast of array |Regression(2.055beta) |to a tail const one doesn't |Reinterpret cast of array |work inside @trusted|to a tail const one doesn't ||work inside @trusted --- Comment #1 from Don clugd...@yahoo.com.au 2011-10-22 13:14:29 PDT --- Regression was introduced by this commit: https://github.com/D-Programming-Language/dmd/commit/a1566e372bf48c2b414ead04104569562202be1a -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6840] New: std.conv.maybeTo
http://d.puremagic.com/issues/show_bug.cgi?id=6840 Summary: std.conv.maybeTo Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: enhancement Priority: P2 Component: Phobos AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2011-10-22 13:20:49 PDT --- This simple idea comes from usage of some Haskell. I think in Phobos (probably in std.conv) it's useful to have a function template that works like this maybeTo: import std.stdio, std.typecons, std.conv; template maybeTo(Tout) { Nullable!Tout maybeTo(Tin)(Tin x) nothrow /*pure*/ { typeof(return) result; try { result = to!Tout(x); } catch (ConvException e) { } catch (Throwable e) { assert(0, Not supposed to happen.); } return result; } } void main() nothrow { auto mx1 = maybeTo!int(12); assert(!mx1.isNull mx1 == 12); //writeln(mx1); // Nullable!(int)(12, false) auto mx2 = maybeTo!int(12a); assert(mx2.isNull); //writeln(mx2); // Nullable!(int)(0, true) } Notes: 1) This maybeTo code is not meant to be its final implementation, it's here mostly to show its intended semantics. 2) maybeTo is not meant to replace to!(), it is meant to be just an alternative. Advantages of maybeTo: 1) It's usable in nothrow functions too. Maybe it will be usable in pure functions too. 2) This simple implementation of maybeTo contains a try-catch, but there is no need to actually throw and catch an exception in all wrong conversion cases. Example: when Tin is string and Tout is int, maybeTo is free to use something lighter, like a C function that produces no exceptions, instead of to!(). I think this allows the compiler to perform some extra optimizations. Alternative name: nullableTo. But I like the name Maybe, as in Haskell. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6841] New: writeln problem with array of tuples
http://d.puremagic.com/issues/show_bug.cgi?id=6841 Summary: writeln problem with array of tuples Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: Phobos AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2011-10-22 18:07:35 PDT --- A D2 program: import std.stdio, std.typecons; void main() { Tuple!(const(char))[] a1; Tuple!(immutable(char))[] a2; writeln(a1, a2); } DMD 2.056head gives: ...\dmd2\src\phobos\std\format.d(1657): Error: static assert (isInputRange!(Tuple!(const(char))[])) is false ...\dmd2\src\phobos\std\format.d(2032):instantiated from here: formatValue!(LockingTextWriter,Tuple!(const(char))[],char) ...\dmd2\src\phobos\std\format.d(313):instantiated from here: formatGeneric!(LockingTextWriter,Tuple!(const(char))[],immutable(char)) ...\dmd2\src\phobos\std\stdio.d(678):instantiated from here: formattedWrite!(LockingTextWriter,immutable(char),Tuple!(const(char))[]) ...\dmd2\src\phobos\std\stdio.d(1511):instantiated from here: write!(Tuple!(const(char))[],Tuple!(immutable(char))[],char) temp.d(5):instantiated from here: writeln!(Tuple!(const(char))[],Tuple!(immutable(char))[]) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6842] New: Can't use alias of instance member
http://d.puremagic.com/issues/show_bug.cgi?id=6842 Summary: Can't use alias of instance member Product: D Version: D2 Platform: Other OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: cbkbbej...@mailinator.com --- Comment #0 from Nick Sabalausky cbkbbej...@mailinator.com 2011-10-22 18:14:44 PDT --- struct Foo { int a; } Foo foo; alias foo.a b; void main() { b = 5; // -- Error } dmd test.d test.d(11): Error: need 'this' to access member a -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6842] Can't use alias of instance member
http://d.puremagic.com/issues/show_bug.cgi?id=6842 Kenji Hara k.hara...@gmail.com changed: What|Removed |Added Keywords|rejects-valid | Severity|normal |enhancement --- Comment #1 from Kenji Hara k.hara...@gmail.com 2011-10-22 22:28:33 PDT --- This is an enhancement, not rejects-valid. Because foo.a is an expression, and it is neither type nor symbol. http://d-programming-language.org/declaration.html AliasDeclaration allows type or symbol as the first argument. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6325] ICE(glue.c) forward reference error in template constraint
http://d.puremagic.com/issues/show_bug.cgi?id=6325 Don clugd...@yahoo.com.au changed: What|Removed |Added CC||clugd...@yahoo.com.au Summary|Assertion failure: '0' on |ICE(glue.c) forward |line 1123 in file 'glue.c' |reference error in template ||constraint --- Comment #6 from Don clugd...@yahoo.com.au 2011-10-22 22:38:23 PDT --- Probably the same issue as bug 6774. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---