digitalmars.D.bugs - [Issue 9036] New: postblit is called for nested structs when assigning `init`
- d-bugmail puremagic.com (46/46) Nov 16 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9036
- d-bugmail puremagic.com (11/11) Nov 18 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9036
- d-bugmail puremagic.com (10/10) Nov 18 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9036
- d-bugmail puremagic.com (11/11) Dec 03 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9036
- d-bugmail puremagic.com (9/9) Dec 04 2012 http://d.puremagic.com/issues/show_bug.cgi?id=9036
http://d.puremagic.com/issues/show_bug.cgi?id=9036 Summary: postblit is called for nested structs when assigning `init` Product: D Version: D2 Platform: All OS/Version: All Status: NEW Keywords: wrong-code Severity: major Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: verylonglogin.reg gmail.com --- Comment #0 from Denis Shelomovskij <verylonglogin.reg gmail.com> 2012-11-16 22:40:07 MSK --- Note that we have zero context pointer in such postblit call: --- int i; struct S { this(this) { ++i; } } void main() { S s = S.init; assert(i == 0); // postblit not called s = S.init; assert(i == 0); // postblit not called int k; static int j = 0; struct N { this(this) { ++j; assert(this.tupleof[$-1] != null); // fails } void f() { ++k; } } N n = N.init; assert(j == 0); // fails, j = 1, postblit called n = N.init; assert(j == 0); // fails, j = 2, postblit called } --- -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 16 2012
http://d.puremagic.com/issues/show_bug.cgi?id=9036 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |9035 --- Comment #1 from Kenji Hara <k.hara.pg gmail.com> 2012-11-18 20:31:14 PST --- This is a derived issue from the bug 9035. If it is correctly fixed, this bug will be disappeared. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 18 2012
http://d.puremagic.com/issues/show_bug.cgi?id=9036 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull --- Comment #2 from Kenji Hara <k.hara.pg gmail.com> 2012-11-18 21:48:42 PST --- https://github.com/D-Programming-Language/dmd/pull/1301 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 18 2012
http://d.puremagic.com/issues/show_bug.cgi?id=9036 --- Comment #3 from github-bugzilla puremagic.com 2012-12-03 20:58:29 PST --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/6861282d3877f504c4b9e586917d0333e8b1c5f4 fix Issue 9036 - postblit is called for nested structs when assigning `init` https://github.com/D-Programming-Language/dmd/commit/3b061322300c5b7a39f1b5c5f76016a4d9906899 Merge pull request #1301 from 9rnsr/fix9035 Issue 9035 & 9036 - Nested struct `init` is lvalue and can be modified -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 03 2012
http://d.puremagic.com/issues/show_bug.cgi?id=9036 Kenji Hara <k.hara.pg gmail.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: -------
Dec 04 2012