[Issue 9633] compiles trait wrongly returns true even when object method call actually does not compile
http://d.puremagic.com/issues/show_bug.cgi?id=9633 Kenji Hara changed: What|Removed |Added Keywords||pull --- Comment #1 from Kenji Hara 2013-03-05 23:41:48 PST --- https://github.com/D-Programming-Language/dmd/pull/1722 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 2486] taking address of slice rvalue is valid
http://d.puremagic.com/issues/show_bug.cgi?id=2486 --- Comment #8 from github-bugzi...@puremagic.com 2013-03-05 22:52:16 PST --- Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/4573ac12bbe1fde782684ed9042f57ab53b05e90 fix Issue 2486 - taking address of slice rvalue is valid -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9654] Template function cannot take string by ref T[len]
http://d.puremagic.com/issues/show_bug.cgi?id=9654 yebblies changed: What|Removed |Added Status|NEW |RESOLVED CC||yebbl...@gmail.com Resolution||FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9654] Template function cannot take string by ref T[len]
http://d.puremagic.com/issues/show_bug.cgi?id=9654 --- Comment #2 from github-bugzi...@puremagic.com 2013-03-05 22:43:49 PST --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/a9c17e46e968e45c2ed329b658e714659362cae5 fix Issue 9654 - Template function cannot take string by ref T[len] https://github.com/D-Programming-Language/dmd/commit/fb5f3fb7c9f8cf60c6495bd9df4103e80553e588 Merge pull request #1723 from 9rnsr/fix9654 Issue 9654 - Template function cannot take string by ref T[len] -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9655] New: Two functions with identical implementations are allowed to have the same address
http://d.puremagic.com/issues/show_bug.cgi?id=9655 Summary: Two functions with identical implementations are allowed to have the same address Product: D Version: D2 Platform: All URL: http://www.informit.com/guides/content.aspx?g=cplusplu s&seqNum=561 OS/Version: All Status: NEW Severity: enhancement Priority: P2 Component: websites AssignedTo: nob...@puremagic.com ReportedBy: bugzi...@digitalmars.com --- Comment #0 from Walter Bright 2013-03-05 21:54:35 PST --- In regards to: http://d.puremagic.com/issues/show_bug.cgi?id=9623 Related C++ article "Can Two Functions Have the Same Address?" http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=561 This quote pretty much sells me: -- Additionally, Google's compiler team have experimented with Identical Code Folding (ICF) and reported that "[d]etailed experiments on the x86 platform show that ICF can reduce the text size [the program section in which functions' code is stored, DK] of some Google binaries, whose average text size is 50 MB, by up to 7%." -- We should settle the issue by updating the D spec to explicitly allow functions to have the same address. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9623] Illegal Win64 linker optimization?
http://d.puremagic.com/issues/show_bug.cgi?id=9623 --- Comment #3 from Walter Bright 2013-03-05 21:52:05 PST --- (In reply to comment #2) > Related C++ article "Can Two Functions Have the Same Address?" > http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=561 This quote pretty much sells me: -- Additionally, Google's compiler team have experimented with Identical Code Folding (ICF) and reported that "[d]etailed experiments on the x86 platform show that ICF can reduce the text size [the program section in which functions' code is stored, DK] of some Google binaries, whose average text size is 50 MB, by up to 7%." -- We should settle the issue by updating the D spec to explicitly allow functions to have the same address. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9231] overriding inout funcion with attribute inference reports weird error
http://d.puremagic.com/issues/show_bug.cgi?id=9231 --- Comment #3 from github-bugzi...@puremagic.com 2013-03-05 21:36:45 PST --- Commit pushed to master at https://github.com/D-Programming-Language/druntime https://github.com/D-Programming-Language/druntime/commit/c16e1210c20b6afb6ae2158405311b830a1ff16a Remove redundant attributes Bug 9231 has already fixed, so attribute inference now works correctly with inout method. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9654] Template function cannot take string by ref T[len]
http://d.puremagic.com/issues/show_bug.cgi?id=9654 Kenji Hara changed: What|Removed |Added Keywords||pull --- Comment #1 from Kenji Hara 2013-03-05 20:51:06 PST --- https://github.com/D-Programming-Language/dmd/pull/1723 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9654] New: Template function cannot take string by ref T[len]
http://d.puremagic.com/issues/show_bug.cgi?id=9654 Summary: Template function cannot take string by ref T[len] Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: k.hara...@gmail.com --- Comment #0 from Kenji Hara 2013-03-05 20:46:45 PST --- This code should work. void foo(ref const char[8] str) {} void bar(T)(ref const T[8] str) {} void main() { foo("testinfo"); // OK bar("testinfo"); // should be OK, but fails } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9653] New: Wrong implicit cast allowed with inheritance
http://d.puremagic.com/issues/show_bug.cgi?id=9653 Summary: Wrong implicit cast allowed with inheritance Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: accepts-invalid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: k.hara...@gmail.com --- Comment #0 from Kenji Hara 2013-03-05 16:53:33 PST --- C1.foo correctly reports error with wrong implicit conversion from TypeInfo to inout(TypeInfo), but C2.foo doesn't. class B { inout(TypeInfo) foo() nothrow pure inout { return null; } } class C1 { /*override*/ inout(TypeInfo) foo() inout { return typeid(Object); // error, correct } } class C2 : B { override inout(TypeInfo) foo() inout { return typeid(Object); // no error, BUG } } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9136] Add isNested trait
http://d.puremagic.com/issues/show_bug.cgi?id=9136 --- Comment #2 from github-bugzi...@puremagic.com 2013-03-05 15:38:42 PST --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/6ee244bc45b828b138aeaaf91e0005f4f4a50ae8 Fixes Issue 9136 - Add isNested trait for aggregates and functions. https://github.com/D-Programming-Language/dmd/commit/051c8be907736dadb15988aeed5d8e7acdf8603e Merge pull request #1362 from AndrejMitrovic/IsNestedTrait Issue 9136 - Add isNested trait for aggregates and functions -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9232] Parsing error on some templated methods calls
http://d.puremagic.com/issues/show_bug.cgi?id=9232 --- Comment #7 from github-bugzi...@puremagic.com 2013-03-05 14:09:45 PST --- Commits pushed to master at https://github.com/D-Programming-Language/d-programming-language.org https://github.com/D-Programming-Language/d-programming-language.org/commit/92a1b3a127ab9ecf32b0aebbd82f7e81965bb1ca fix Issue 9232 - Parsing error on some templated methods calls https://github.com/D-Programming-Language/d-programming-language.org/commit/2596485da033b347f63606761d3fca296af93e9c Merge pull request #223 from 9rnsr/fix9232 Issue 9232 - Parsing error on some templated methods calls -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9652] New: __traits(getAttributes) doesn't work with manifest constants
http://d.puremagic.com/issues/show_bug.cgi?id=9652 Summary: __traits(getAttributes) doesn't work with manifest constants Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: d...@me.com --- Comment #0 from Jacob Carlborg 2013-03-05 12:46:35 PST --- The following code: import std.typetuple; @(3) enum foo = 3; void main () { alias TypeTuple!(__traits(getAttributes, foo)) bar; } Results in the following error: test.d(7): Error: first argument is not a symbol -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9651] Returning a newly-created slice by reference
http://d.puremagic.com/issues/show_bug.cgi?id=9651 Ivan Kazmenko changed: What|Removed |Added See Also||http://d.puremagic.com/issu ||es/show_bug.cgi?id=4451 --- Comment #1 from Ivan Kazmenko 2013-03-05 12:05:11 PST --- Interestingly, a local array and a delegate do generate a warning. However, the warning says "escaping reference to local variable a" which is not true: the problem lies in escaping reference to a local unnamed slice, not variable "a" which is legally visible to the caller. The non-ref versions compile and run without problems. Example 3 (local fixed length array): - import std.stdio; void main () { int [1] a; ref int [] f () { return a [0..1]; } auto s = f (); writeln (s); } - Example 4 (local variable length array): - import std.stdio; void main () { int [] a; ref int [] f () { return a [0..1]; } a = new int [1]; auto s = f (); writeln (s); auto t = f (); writeln (t); } - -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9651] New: Returning a newly-created slice by reference
http://d.puremagic.com/issues/show_bug.cgi?id=9651 Summary: Returning a newly-created slice by reference Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: accepts-invalid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: ga...@mail.ru --- Comment #0 from Ivan Kazmenko 2013-03-05 12:00:51 PST --- There is a handy warning in DMD of the sort "escaping reference to a local variable". Below is a similar case which is wrong code but does not generate a similar warning. We declare a function returning a reference to a slice. Inside, we return a reference to a newly-created slice of some array. This is an error but goes undetected by the compiler. Example 1 (fixed length array): - import std.stdio; int [1] a; ref int [] f () { return a [0..1]; } void main () { auto s = f (); writeln (s); } - Example 2 (variable length array): - import std.stdio; int [] a; ref int [] f () { return a [0..1]; } void main () { a = new int [1]; auto s = f (); writeln (s); auto t = f (); writeln (t); } - With DMD 2.062, the first example locally crashes with Access Violation after printing ~10 Mb of some garbage array slice. The second example prints an empty slice (instead of [0]) for s and then crashes for t. Now, while returning "ref int []" instead of "int []" might have its uses, in my case it was a newbie mistake. I just wanted to return a slice of lvalues and didn't understand that the elements of the "int []" will be assignable for free. Thought I need an extra "ref" for that. The case seems obvious: the function returns by reference an entity which was created on the stack just a few instructions before that. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9635] Improved error message for failed access of array field properties from static method
http://d.puremagic.com/issues/show_bug.cgi?id=9635 Andrej Mitrovic changed: What|Removed |Added Resolution|WONTFIX |FIXED --- Comment #4 from Andrej Mitrovic 2013-03-05 11:29:57 PST --- Open it up as a new enhancement for later, I might look into it when I have the time. Let this one be fixed since a fix was implemented. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9635] Improved error message for failed access of array field properties from static method
http://d.puremagic.com/issues/show_bug.cgi?id=9635 bearophile_h...@eml.cc changed: What|Removed |Added Status|NEW |RESOLVED Resolution||WONTFIX --- Comment #3 from bearophile_h...@eml.cc 2013-03-05 10:08:40 PST --- If you think it's too much hard to implement, then I close this down. I use WONTFIX then. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9650] New: __traits(compiles) + mixin
http://d.puremagic.com/issues/show_bug.cgi?id=9650 Summary: __traits(compiles) + mixin Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: regression Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: callumena...@gmail.com --- Comment #0 from callumena...@gmail.com 2013-03-05 08:52:27 PST --- DMD2.062: http://forum.dlang.org/thread/vnnmmwhoyrdtbglqx...@forum.dlang.org#post-tdojcnsrtkygjbhwegph:40forum.dlang.org import std.conv; void main() { enum s = "`1`.to!int;"; enum c = __traits(compiles, mixin("{auto a = new "~s~";}")); // line 1 mixin("auto a = "~s~";"); // line 2 } Long errors about instantiating std.conv.to!(int).to!(string). Swap lines 1 and 2 and compilation succeeds. This worked in 2.061. Possibly related to issue 9017. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8902] Unexpected "duplicate union initialization for X" error
http://d.puremagic.com/issues/show_bug.cgi?id=8902 Walter Bright changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8902] Unexpected "duplicate union initialization for X" error
http://d.puremagic.com/issues/show_bug.cgi?id=8902 --- Comment #5 from github-bugzi...@puremagic.com 2013-03-05 08:23:20 PST --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/840d88a6e539e9817cffdc4abe8ad6357897d54a fix Issue 8902 - Unexpected "duplicate union initialization for X" error https://github.com/D-Programming-Language/dmd/commit/a975ed6aacd7e2604808a74fb509da99c10624ef Merge pull request #1369 from 9rnsr/fix8902 Issue 8902 - Unexpected "duplicate union initialization for X" error -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9647] Ignored immutable in struct literal
http://d.puremagic.com/issues/show_bug.cgi?id=9647 yebblies changed: What|Removed |Added Status|NEW |RESOLVED CC||yebbl...@gmail.com Resolution||DUPLICATE --- Comment #2 from yebblies 2013-03-06 02:25:02 EST --- *** This issue has been marked as a duplicate of issue 6578 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6578] Ignored const with struct with constructor
http://d.puremagic.com/issues/show_bug.cgi?id=6578 --- Comment #2 from yebblies 2013-03-06 02:25:03 EST --- *** Issue 9647 has been marked as a duplicate of this issue. *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9302] Document extern properly
http://d.puremagic.com/issues/show_bug.cgi?id=9302 --- Comment #4 from Andrej Mitrovic 2013-03-05 07:02:45 PST --- (In reply to comment #3) > There is still an error in the docs in the part that says: > " > D conventions are: > extern (D): > or: > extern: > " > > The last "or: extern:" should be removed because that syntax is interpreted as > the storage class, not linkage ? Yes exactly, thanks. https://github.com/D-Programming-Language/d-programming-language.org/pull/294 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9302] Document extern properly
http://d.puremagic.com/issues/show_bug.cgi?id=9302 Bruno Medeiros changed: What|Removed |Added CC||bdom.pub+deeb...@gmail.com --- Comment #3 from Bruno Medeiros 2013-03-05 06:57:25 PST --- There is still an error in the docs in the part that says: " D conventions are: extern (D): or: extern: " The last "or: extern:" should be removed because that syntax is interpreted as the storage class, not linkage ? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9648] Missing std.random import for std.algorithm.topN
http://d.puremagic.com/issues/show_bug.cgi?id=9648 Andrei Alexandrescu changed: What|Removed |Added Status|NEW |RESOLVED CC||and...@erdani.com Resolution||FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9648] Missing std.random import for std.algorithm.topN
http://d.puremagic.com/issues/show_bug.cgi?id=9648 --- Comment #3 from github-bugzi...@puremagic.com 2013-03-05 06:32:32 PST --- Commits pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/337f268cf1e24a25728eea417c4a76a907eec21e Fixes Issue 9648 - Make import to std.random independent of -unittest switch. https://github.com/D-Programming-Language/phobos/commit/f8e26734124c7867486a92133f14ceff1dbac394 Merge pull request #1187 from AndrejMitrovic/Fix9648 Issue 9648 - Make import to std.random independent of -unittest switch -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9635] Improved error message for failed access of array field properties from static method
http://d.puremagic.com/issues/show_bug.cgi?id=9635 --- Comment #2 from github-bugzi...@puremagic.com 2013-03-05 05:57:18 PST --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/49c26139d40f3c89983a1a361b15b00f63291f5e Fixes Issue 9635 - Improve message on missing this diagnostics. https://github.com/D-Programming-Language/dmd/commit/d6db1b834c24422bd28984760f662a6a37df234e Merge pull request #1721 from AndrejMitrovic/Fix9635 Issue 9635 - Improve message on missing 'this' diagnostics. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 9649] New: DMD doesn't parse valid PostfixExpression . NewExpression syntax.
http://d.puremagic.com/issues/show_bug.cgi?id=9649 Summary: DMD doesn't parse valid PostfixExpression . NewExpression syntax. Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: bdom.pub+deeb...@gmail.com --- Comment #0 from Bruno Medeiros 2013-03-05 04:21:41 PST --- The following is valid source according to the grammar (and is sensible code), but DMD doesn't parse it: class Xpto { class Inner { } } Xpto xpto; void func() { auto x = (xpto).new Inner(); // Doesn't parse } auto x = (xpto).new Inner(); // Doesn't parse -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 2525] override of function from abstract base class's interface
http://d.puremagic.com/issues/show_bug.cgi?id=2525 --- Comment #1 from Maksim Zholudev 2013-03-05 03:48:22 PST --- DMD Git head: https://github.com/D-Programming-Language/dmd/commit/13b3bdbf3819fec810ebfb077957510612dfa815 test.d(10): Error: function test.B.foo does not override any function, did you mean to override 'test.I.foo'? Yes, I did! -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 2573] [Tracker] Data integrity issues
http://d.puremagic.com/issues/show_bug.cgi?id=2573 --- Comment #5 from Don 2013-03-05 02:12:54 PST --- (In reply to comment #4) > (In reply to comment #3) > > Keywords are fully maintained (beyond the point of creation) on the > > bugs that utilize that keyword. > > Where is the keyword for data integrity issues? There isn't, it covers too many disparate things to be a helpful category. It has a very large overlap with wrong-code. > Still, it's only the opinion of a few people. OK, so there are probably more > whom we don't know about. But clearly many people find them useful for > various > reasons. The commonness of them on b.m.o is evidence of this. Nobody fixing D bugs has found them useful AFAIK. BTW this is the almost the only remaining umbrella bug in the D bugzilla. > > And this one isn't even an umbrella bug, it's a personal gripe list. > > How does a collection of data integrity bugs constitute a "personal gripe > list"??? To quote the bug description: "the point is to show how we have a D that isn't as robust against data corruption as it's cracked up to be." Very similar to your old "pending peeves" list. That's fine for a wiki, but doesn't belong in Bugzilla. It doesn't contribute to getting anything fixed. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---