Closed
Description
This program segfaults when trying to run the destructor for "a". "b"'s destructor runs first and prints 2, then "a"'s destructor tries to access a zeroed-out ARC.
use extra::arc::*;
struct A { y: ARC<int>, x: ARC<int> }
impl Drop for A {
fn finalize(&self) { println(fmt!("x=%?", self.x.get())); }
}
fn main() {
let a = A { y: ARC(1), x: ARC(2) };
let _b = A { y: ARC(3), ..a };
}