digitalmars.D.bugs - [Issue 4437] New: copy construction bug with "return this;"
- d-bugmail puremagic.com (24/24) Jul 07 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (27/27) Sep 18 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (8/8) Dec 10 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (12/12) Dec 10 2010 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (27/27) Feb 26 2011 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (6/6) Feb 27 2011 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (12/12) Mar 31 2011 http://d.puremagic.com/issues/show_bug.cgi?id=4437
- d-bugmail puremagic.com (10/10) Apr 24 2012 http://d.puremagic.com/issues/show_bug.cgi?id=4437
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Summary: copy construction bug with "return this;" Product: D Version: D2 Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: andrei metalanguage.com 15:55:37 PDT --- To reproduce, run this on Linux from the Phobos dir (after I'll check std.container in): make unittest BUILD=debug DMDEXTRAFLAGS="-debug=RefCounted -version=bugxxxx" where xxxx is the number of this bug. Basically in a range containing a type with an elaborate copy constructor, this works: Range save() { auto copy = this; return copy; } but this doesn't: Range save() { return this; } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jul 07 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Shin Fujishiro <rsinfu gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rsinfu gmail.com --- Reduced test case: -------------------- test.d void main() { S s; auto t = s.copy(); assert(t.count == 1); // (5) } struct S { int count; this(this) { ++count; } S copy() { return this; } } -------------------- % dmd -run test.d core.exception.AssertError test(5): Assertion failure -------------------- -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 18 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Don <clugdbug yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |critical -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 10 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Brad Roberts <braddr puremagic.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |braddr puremagic.com --- I'm 99% sure this is a dup of bug 3516 or together they form the basis of a more general ticket: structs and their postblit and dtors are just mostly unimplmented. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 10 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |k.hara.pg gmail.com Following patch fixes this bug. src/s2ir.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/s2ir.c b/src/s2ir.c index 08d802b..982adfc 100644 --- a/src/s2ir.c +++ b/src/s2ir.c -1247,7 +1247,7 void ReturnStatement::toIR(IRState *irs) */ Type *tb = exp->type->toBasetype(); //if (tb->ty == Tstruct) exp->dump(0); - if ((exp->op == TOKvar || exp->op == TOKdotvar || exp->op == TOKstar) && + if ((exp->op == TOKvar || exp->op == TOKdotvar || exp->op == TOKstar || exp->op == TOKthis) && tb->ty == Tstruct) { StructDeclaration *sd = ((TypeStruct *)tb)->sym; if (sd->postblit) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Feb 26 2011
http://d.puremagic.com/issues/show_bug.cgi?id=4437 06:37:43 PST --- Great fix! I changed my votes to vote this... -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Feb 27 2011
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED 15:48:21 PDT --- https://github.com/D-Programming-Language/dmd/commit/52dd808de9d6ec904d3ca60a8bdbd4b276a5b15b -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Mar 31 2011
http://d.puremagic.com/issues/show_bug.cgi?id=4437 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |cristi.cobzarenco gmail.com *** Issue 6195 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: -------
Apr 24 2012