digitalmars.D.bugs - [Issue 4416] New: Function with ref argument breaks struct method const attribute
- d-bugmail puremagic.com (36/36) Jul 02 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4416
- d-bugmail puremagic.com (31/31) Aug 29 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4416
- d-bugmail puremagic.com (9/9) Aug 29 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4416
- d-bugmail puremagic.com (12/12) Jan 26 2011 http://d.puremagic.com/issues/show_bug.cgi?id=4416
http://d.puremagic.com/issues/show_bug.cgi?id=4416 Summary: Function with ref argument breaks struct method const attribute Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Keywords: accepts-invalid Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: bearophile_hugs eml.cc This is a wrong D2 program, because bar() modifies the state of the Foo instance, despite bar is const, but with v2.047 it compiles and runs with no errors: void spam(ref int x) { x++; } struct Foo { int x; void bar() const { spam(x); } } void main() { Foo b; assert(b.x == 0); b.bar(); assert(b.x == 1); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jul 02 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4416 Andrej Mitrovic <andrej.mitrovich gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andrej.mitrovich gmail.com 19:47:59 PDT --- This also breaks immutable class objects, which is really bad: void spam(ref int x) { x++; } class Foo { int x = 5; void bar() immutable { spam(x); } } void main() { auto b = new immutable(Foo); //~ b.x = 10; // uncommment for error assert(b.x == 5); b.bar(); assert(b.x == 6); } If you uncomment b.x = 10, you will of course get an error. Maybe raise this bug to a higher priority? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 29 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4416 This is a normal bug, no need to raise its priority. There are far more urgent bugs to fix. I have recently shown in the D newsgroup a list of my bug reports that need higher priority. What needs higher priority are the non-additive changes that are not just bugs. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 29 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4416 yebblies <yebblies gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |yebblies gmail.com Resolution| |DUPLICATE *** This issue has been marked as a duplicate of issue 5493 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jan 26 2011