locktree 0.3.0

Experimental compiler-checked deadlock-freedom
Documentation
1
2
3
4
5
6
7
8
9
10
error[E0499]: cannot borrow `forward_a` as mutable more than once at a time
  --> $DIR/locking_from_same_forward_twice.rs:15:13
   |
13 |     let _b = forward_a.lock_m1();
   |              --------- first mutable borrow occurs here
14 |     // Invalid
15 |     let _ = forward_a.lock_m1();
   |             ^^^^^^^^^ second mutable borrow occurs here
16 | }
   | - first borrow might be used here, when `_b` is dropped and runs the destructor for type `(std::sync::MutexGuard<'_, ()>, MainLockTreeM1<'_>)`