From 38d16ccacc761ce31477f2ad3efc87ea53bfab06 Mon Sep 17 00:00:00 2001 From: Oliver Schneider Date: Wed, 15 Feb 2017 16:38:27 +0100 Subject: [PATCH] add test with an Rc cycle to create a memleak --- tests/compile-fail/memleak_rc.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 tests/compile-fail/memleak_rc.rs diff --git a/tests/compile-fail/memleak_rc.rs b/tests/compile-fail/memleak_rc.rs new file mode 100644 index 000000000000..b2bc6722afb0 --- /dev/null +++ b/tests/compile-fail/memleak_rc.rs @@ -0,0 +1,12 @@ +//error-pattern: the evaluated program leaked memory + +use std::rc::Rc; +use std::cell::RefCell; + +struct Dummy(Rc>>); + +fn main() { + let x = Dummy(Rc::new(RefCell::new(None))); + let y = Dummy(x.0.clone()); + *x.0.borrow_mut() = Some(y); +}