[Issue 7491] import symbol name unavailable in class scope
http://d.puremagic.com/issues/show_bug.cgi?id=7491 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||INVALID --- Comment #1 from Walter Bright bugzi...@digitalmars.com 2012-02-13 01:48:01 PST --- Right, the lookup rules are being followed by the compiler, that is, super classes are looked at before module scope is. To get around that, prefix with the . as in: module b; import a, std.stdio; class Derived : Base { void foo() { .std.stdio.writeln(Derived); ^ note . prefix } } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7455] Allow a cast to discard precision from a floating point during constant folding
http://d.puremagic.com/issues/show_bug.cgi?id=7455 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||WONTFIX --- Comment #4 from Walter Bright bugzi...@digitalmars.com 2012-02-13 01:56:55 PST --- So I've no reliable way to round to a single precision float? Store it to a float variable that is owned by something the compiler doesn't know about (and so cannot optimize it). One way would be to pass it to an extern function: float foo(float); and implement foo: float foo(float f) { return f; } in some separately compiled module. I think such a method adequately addresses this, and no language enhancement is required. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6815] Char array is turned into string expression during constant folding
http://d.puremagic.com/issues/show_bug.cgi?id=6815 Denis verylonglogin@gmail.com changed: What|Removed |Added CC||verylonglogin@gmail.com --- Comment #1 from Denis verylonglogin@gmail.com 2012-02-13 14:44:03 MSK --- Probably the same issue: --- char[] f() { char[] buff = new char[1]; buff[0] = 0; // works buff.ptr[0] = 0; // works *(buff[0]) = 0; // works char* t = buff[0]; *t = 0; // error foreach(ref el; buff) el = 0; // error return buff; } static assert(f() == \0); --- Where `error` means: `Error: cannot cast a read-only string literal to mutable in CTFE` -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7492] New: [CTFE] Error at assign to immutable character array
http://d.puremagic.com/issues/show_bug.cgi?id=7492 Summary: [CTFE] Error at assign to immutable character array Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: verylonglogin@gmail.com --- Comment #0 from Denis verylonglogin@gmail.com 2012-02-13 14:55:15 MSK --- --- auto f() { return new char[1]; } immutable s = f(); // error, works with non-character arrays --- Error: cannot implicitly convert expression (\xff) of type char[] to immutable(char[]) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7455] Allow a cast to discard precision from a floating point during constant folding
http://d.puremagic.com/issues/show_bug.cgi?id=7455 --- Comment #5 from Stewart Gordon s...@iname.com 2012-02-13 04:32:27 PST --- Therein lies the point - it's a bit convoluted. And I'm sure somebody will come up with a use case for rounding a number to float precision at compile time. Moreover, why allow cast(float) if it isn't supposed to work? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7493] New: Initialization of void[][N]
http://d.puremagic.com/issues/show_bug.cgi?id=7493 Summary: Initialization of void[][N] Product: D Version: D1 Platform: All OS/Version: All Status: NEW Keywords: wrong-code Severity: regression Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: thecybersha...@gmail.com --- Comment #0 from Vladimir Panteleev thecybersha...@gmail.com 2012-02-13 06:26:16 PST --- void main() { string str = Hi; void[][1] arr = [str]; assert(arr[0].length == str.length); } Notably, changing the second line to void[][1] arr = str; will make the assert pass, so I guess DMD is now trying some new way of array assignment which succeeds due to the implicit void[] conversion. Worked in 1.070, doesn't work in 1.071 or the latest D1 beta. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7491] import symbol name unavailable in class scope
http://d.puremagic.com/issues/show_bug.cgi?id=7491 d...@dawgfoto.de changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|INVALID | --- Comment #2 from d...@dawgfoto.de 2012-02-13 07:47:09 PST --- If that's how things are supposed to work we should enable 'Base.std.stdio' access. https://github.com/D-Programming-Language/dmd/pull/712 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7494] New: Selective import does not work inside a function
http://d.puremagic.com/issues/show_bug.cgi?id=7494 Summary: Selective import does not work inside a function Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: rejects-valid Severity: regression Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: kenn...@gmail.com --- Comment #0 from kenn...@gmail.com 2012-02-13 08:27:27 PST --- Test case: == void test7494() { import core.bitop : bsr; // ^ or just any selective import statements bsr(1); } == Compiling with 'dmd -c test.d' gives Error: undefined identifier bsr The error was introduced in commit c022036c8f9fea1672bb2c56edd610715f6335c8 (for fixing bug 314). -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7495] New: Scoped imports broken
http://d.puremagic.com/issues/show_bug.cgi?id=7495 Summary: Scoped imports broken Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: d...@dawgfoto.de --- Comment #0 from d...@dawgfoto.de 2012-02-13 08:43:01 PST --- cat a.d EOF module a; void bar() { import b : foo; foo(); } EOF cat b.d EOF module b; void foo() { } EOF dmd -c a.d Selective imports in local function scope are not visible. Reference: https://github.com/D-Programming-Language/d-programming-language.org/blob/59fd17365e9544d285bdb0b3c321ea1d6808218c/module.dd#L366 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7495] Scoped imports broken
http://d.puremagic.com/issues/show_bug.cgi?id=7495 d...@dawgfoto.de changed: What|Removed |Added Status|NEW |RESOLVED Resolution||DUPLICATE --- Comment #1 from d...@dawgfoto.de 2012-02-13 09:38:05 PST --- *** This issue has been marked as a duplicate of issue 7494 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7494] Selective import does not work inside a function
http://d.puremagic.com/issues/show_bug.cgi?id=7494 d...@dawgfoto.de changed: What|Removed |Added CC||d...@dawgfoto.de --- Comment #1 from d...@dawgfoto.de 2012-02-13 09:38:05 PST --- *** Issue 7495 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 7494] Selective import does not work inside a function
http://d.puremagic.com/issues/show_bug.cgi?id=7494 d...@dawgfoto.de changed: What|Removed |Added Severity|regression |major --- Comment #2 from d...@dawgfoto.de 2012-02-13 09:38:54 PST --- It's not a regression though. This is 2.057 behavior. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7455] Allow a cast to discard precision from a floating point during constant folding
http://d.puremagic.com/issues/show_bug.cgi?id=7455 --- Comment #6 from d...@dawgfoto.de 2012-02-13 10:30:16 PST --- Moreover, why allow cast(float) if it isn't supposed to work? To summarize it. The floating point rules are relaxed such that omitting cast(real)cast(float) is a valid transformation. I think that's generally a better idea than to waste all those cycles. There is currently no mechanism to distinguish explicit casts from implicit casts in the backend. Walter's solution solves the problem so this should be fine. Any opinion on whether this would be a candidate for std.math? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3505] [module] static imports should be binded to the leaf module, not the fully qualified name
http://d.puremagic.com/issues/show_bug.cgi?id=3505 d...@dawgfoto.de changed: What|Removed |Added Status|NEW |RESOLVED CC||d...@dawgfoto.de Resolution||WONTFIX --- Comment #3 from d...@dawgfoto.de 2012-02-13 10:44:03 PST --- It seems that renamed imports are sufficient for this given how much code it would break. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7496] New: Selective imports make module accessible with another import from the same package
http://d.puremagic.com/issues/show_bug.cgi?id=7496 Summary: Selective imports make module accessible with another import from the same package Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: d...@dawgfoto.de --- Comment #0 from d...@dawgfoto.de 2012-02-13 10:51:49 PST --- import std.algorithm; import std.stdio : writeln; void bar() { std.stdio.writeln(); } Without importing std.algorithm this will fail. This is because std.algorithm make the std package available which in turn 'knows' stdio because of the selective import. There are two solutions. Either disallowing std.stdio or making std.stdio available for selective imports too. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3505] [module] static imports should be binded to the leaf module, not the fully qualified name
http://d.puremagic.com/issues/show_bug.cgi?id=3505 --- Comment #4 from Leandro Lucarella leandro.lucare...@sociomantic.com 2012-02-13 11:10:27 PST --- (In reply to comment #3) It seems that renamed imports are sufficient for this given how much code it would break. You might want to close bug 3503 and bug 3504 then too, because they were part of the same proposal to rethink the module system. This also was before D2 was considered frozen and there was some place to make breaking changes, now I don't think it will happen until a very major update, which doesn't seems to be very close either. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7497] New: optimizer/inliner misplaces load instruction
http://d.puremagic.com/issues/show_bug.cgi?id=7497 Summary: optimizer/inliner misplaces load instruction Product: D Version: D2 Platform: x86_64 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: ellery-newco...@utulsa.edu --- Comment #0 from Ellery Newcomer ellery-newco...@utulsa.edu 2012-02-13 11:32:09 PST --- At least I'm guessing that is what is happening, as my intel x86_64 fu is weak. the compilation: dmd -O -inline xyz the fireworks: core.exception.AssertError@xyz.d(61): dookie 6 the code: attached, I hope. Offending line is assert((z=xyz1!byte(0,8,5,6)) == 6,format(dookie %s,z)); // yay! 6==6 is false! Compiled without -O or -inline, or if the preceding assertion is removed, or if the following calls are removed, the assertion passes. This one was lots of fun to reduce. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7497] optimizer/inliner misplaces load instruction
http://d.puremagic.com/issues/show_bug.cgi?id=7497 --- Comment #1 from Ellery Newcomer ellery-newco...@utulsa.edu 2012-02-13 11:33:18 PST --- Created an attachment (id=1074) teh codez why did attachment creation fail? why did I know it would? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 314] [module] Static, renamed, and selective imports are always public
http://d.puremagic.com/issues/show_bug.cgi?id=314 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED | --- Comment #40 from Walter Bright bugzi...@digitalmars.com 2012-02-13 12:36:49 PST --- Reopened because the original test case now fails again due to the revert. Please, folks, when doing pull requests that fix problems, add the cases into the test suite. The current test suite passes even with the reversion, meaning that no useful test cases were added with the patch. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7229] GC.collect fails when being called from Fiber
http://d.puremagic.com/issues/show_bug.cgi?id=7229 klickverbot c...@klickverbot.at changed: What|Removed |Added CC||c...@klickverbot.at --- Comment #1 from klickverbot c...@klickverbot.at 2012-02-13 13:31:46 PST --- I can't reproduce the issue on Windows Server 2008 R2 – you are getting a Unable to load thread context exception? In any case, rewriting the code directly in assembler should be easy enough (and potentially faster), so I'll have a look at it. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7229] GC.collect fails when being called from Fiber
http://d.puremagic.com/issues/show_bug.cgi?id=7229 --- Comment #2 from d...@dawgfoto.de 2012-02-13 14:47:26 PST --- I get a 0 return value and an empty context but I don't remember the error code. Don't waste your time on this until I've rechecked it. There probably IS some issue with getting the context from suspended threads as well. Note: This is definitely no stack overflow issue. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7497] optimizer/inliner misplaces load instruction
http://d.puremagic.com/issues/show_bug.cgi?id=7497 --- Comment #2 from Ellery Newcomer ellery-newco...@utulsa.edu 2012-02-13 15:19:49 PST --- At least on dmd 2.057.. The 2.058 beta seems not to exhibit this behavior. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3503] [module] Imports should be static by default
http://d.puremagic.com/issues/show_bug.cgi?id=3503 d...@dawgfoto.de changed: What|Removed |Added Status|NEW |RESOLVED CC||d...@dawgfoto.de Resolution||WONTFIX -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3504] [module] import foo: *; should be supported if imports are static by default
http://d.puremagic.com/issues/show_bug.cgi?id=3504 d...@dawgfoto.de changed: What|Removed |Added Status|NEW |RESOLVED CC||d...@dawgfoto.de Resolution||WONTFIX -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3505] [module] static imports should be binded to the leaf module, not the fully qualified name
http://d.puremagic.com/issues/show_bug.cgi?id=3505 --- Comment #5 from d...@dawgfoto.de 2012-02-13 15:36:09 PST --- I have to say though that I fully agree with your proposals. Only it's a controversial thing and has way too much impact to be still considered. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7497] optimizer/inliner misplaces load instruction
http://d.puremagic.com/issues/show_bug.cgi?id=7497 d...@dawgfoto.de changed: What|Removed |Added CC||d...@dawgfoto.de --- Comment #3 from d...@dawgfoto.de 2012-02-13 16:43:03 PST --- Bisecting says that solving bug 7309 also fixed your issue. https://github.com/D-Programming-Language/dmd/commit/21c62d6 But I don't know if that's just a side-effect. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7498] New: function expected before (), not function
http://d.puremagic.com/issues/show_bug.cgi?id=7498 Summary: function expected before (), not function Product: D Version: D2 Platform: x86_64 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: ellery-newco...@utulsa.edu --- Comment #0 from Ellery Newcomer ellery-newco...@utulsa.edu 2012-02-13 16:47:04 PST --- dmd 2.058 beta. the code: template Heap(){ template Inner(){ mixin template IndexMixin(){ void insert(SomeValue)(SomeValue value){ } } } } class MultiIndexContainer(Value, Args...){ alias Args[0] L0; alias L0.Inner!() M0; mixin M0.IndexMixin!() index0; class Index0{ void baburk(){ this.outer.index0.insert(1); } } } alias MultiIndexContainer!(int, Heap!()) C1; void main(){} the fireworks: multi_index.d(15): Error: function expected before (), not 'this.this.this.insert(SomeValue)' -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7494] Selective import does not work inside a function
http://d.puremagic.com/issues/show_bug.cgi?id=7494 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added CC||bugzi...@digitalmars.com --- Comment #3 from Walter Bright bugzi...@digitalmars.com 2012-02-13 17:59:00 PST --- Why is this marked as major? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7494] Selective import does not work inside a function
http://d.puremagic.com/issues/show_bug.cgi?id=7494 d...@dawgfoto.de changed: What|Removed |Added Severity|major |normal --- Comment #4 from d...@dawgfoto.de 2012-02-13 18:14:20 PST --- It was filed as a regression. But it's a regression against 2.058git not against 2.057. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7498] function expected before (), not function
http://d.puremagic.com/issues/show_bug.cgi?id=7498 d...@dawgfoto.de changed: What|Removed |Added CC||d...@dawgfoto.de Severity|normal |regression --- Comment #1 from d...@dawgfoto.de 2012-02-13 18:16:45 PST --- This compiles fine with 2.057. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7498] function expected before (), not function
http://d.puremagic.com/issues/show_bug.cgi?id=7498 --- Comment #2 from d...@dawgfoto.de 2012-02-13 18:21:47 PST --- Introduced with: https://github.com/D-Programming-Language/dmd/commit/1d4438f -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7499] New: [ICE] ('cast.c line 1495) with lambda array
http://d.puremagic.com/issues/show_bug.cgi?id=7499 Summary: [ICE] ('cast.c line 1495) with lambda array Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2012-02-13 20:48:27 PST --- void main() { int function(int)[] a = [x = x]; } DMD 2.058beta3: Assertion failure: 'type type != Type::tvoid' on line 1495 in file 'cast.c' -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7500] New: [ICE] (template.c line 5287) with immutable lambda function
http://d.puremagic.com/issues/show_bug.cgi?id=7500 Summary: [ICE] (template.c line 5287) with immutable lambda function Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2012-02-13 20:49:10 PST --- void main() { alias immutable bool function(int[]) Foo; Foo f = a = true; } DMD 2.058beta3: Assertion failure: 'global.errors' on line 5287 in file 'template.c' -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 7501] New: Array of function pointers append
http://d.puremagic.com/issues/show_bug.cgi?id=7501 Summary: Array of function pointers append Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2012-02-13 20:50:03 PST --- void main() { bool function(int)[] predicates; predicates.length = 1; predicates[0] = s = true; // OK predicates ~= s = true; // Error } DMD 2.058beta3: test.d(5): Error: expression __lambda4 is void and has no value -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 6391] Line-less error when passing the '.im' of floating pointer value by reference
http://d.puremagic.com/issues/show_bug.cgi?id=6391 Don clugd...@yahoo.com.au changed: What|Removed |Added CC||clugd...@yahoo.com.au Severity|normal |critical -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---