aboutsummaryrefslogtreecommitdiffstats
path: root/tests/compile-fail/mutable.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/compile-fail/mutable.rs')
-rw-r--r--tests/compile-fail/mutable.rs51
1 files changed, 0 insertions, 51 deletions
diff --git a/tests/compile-fail/mutable.rs b/tests/compile-fail/mutable.rs
deleted file mode 100644
index e888503..0000000
--- a/tests/compile-fail/mutable.rs
+++ /dev/null
@@ -1,51 +0,0 @@
-extern crate clint;
-
-use clint::Handler;
-
-static mut HANDLER: Handler = Handler::new();
-
-fn main() {
- need_move();
- borrow_error();
- no_borrow_needed();
-}
-
-fn need_move() {
- let x = vec![1, 2, 3];
- let c = || {
- //~^ ERROR closure may outlive
- println!("x(h-c): {:?}", x);
- };
- unsafe {
- HANDLER.replace(&c);
- HANDLER.call();
- HANDLER.call();
- }
- println!("x(h-o): {:?}", x);
-}
-
-fn borrow_error() {
- let x = vec![1, 2, 3];
- let c = move || {
- println!("x(h-c): {:?}", x);
- };
- unsafe {
- HANDLER.replace(&c);
- HANDLER.call();
- HANDLER.call();
- }
- println!("x(h-o): {:?}", x); //~ ERROR borrow of moved value
-}
-
-fn no_borrow_needed() {
- let x = vec![1, 2, 3];
- let c = || {
- println!("x(h-c): hi!");
- };
- unsafe {
- HANDLER.replace(&c);
- HANDLER.call();
- HANDLER.call();
- }
- println!("x(h-o): {:?}", x);
-}