http://d.puremagic.com/issues/show_bug.cgi?id=9111

           Summary: Parent object getting GCed before the elements of
                    child dynamic array
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: [email protected]
        ReportedBy: [email protected]


--- Comment #0 from Puneet Goel <[email protected]> 2012-12-03 00:51:58 PST 
---
The following code segfaults when compiled with current DMD github snapshot. It
seems that array elements of "frop" are getting garbage collected after the
parent class Foo's object is collected.

Works fine with dmd-2.059 and dmd-2.060.


class Frop {
  bar _v;
}
struct bar {
  static Foo _root;
  ~this() {
    _root.del();
  }
}
class Foo {
  int _x;
  Frop[] _frop;
  this() {
    bar._root = this;
    _frop = [new Frop()];
  }
  void del() {}
}


void main() {
  auto foo = new Foo ;
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------

Reply via email to