digitalmars.D.bugs - [Issue 9149] New: 'const' is broken
- d-bugmail puremagic.com (33/33) Dec 13 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9149
http://d.puremagic.com/issues/show_bug.cgi?id=9149 Summary: 'const' is broken Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: timon.gehr gmx.ch Delegates cannot implicitly convert to const without breaking const guarantees. Reading a mutable delegate out of a const reference therefore must be a compile error. (for the same reason a mutable member function cannot be called on a const receiver.) import std.stdio; class T{ int x; int delegate()pure b; this(){ b = ()pure=>x++; } } void main(){ auto s=new T(); const c = s.b; // ok, should fail const t=s; writeln(c(), c(), c(), c()); writeln(t.b(), t.b(), t.b(), t.b()); // ok, should fail } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 13 2012