blob: 272a52ba7fefe34399efdb6d9958c4f54d472d94 [file] [log] [blame]
Running GenMC Verification...
error: Undefined Behavior: Invalid unlock() operation
--> RUSTLIB/std/src/sync/poison/mutex.rs:LL:CC
|
LL | self.lock.inner.unlock();
| ^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
|
= help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior
= help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information
= note: this is on thread `unnamed-ID`
= note: stack backtrace:
0: <std::sync::MutexGuard<'_, u64> as std::ops::Drop>::drop
at RUSTLIB/std/src/sync/poison/mutex.rs:LL:CC
1: std::ptr::drop_in_place))
at RUSTLIB/core/src/ptr/mod.rs:LL:CC
2: std::ptr::drop_in_place))
at RUSTLIB/core/src/ptr/mod.rs:LL:CC
3: std::mem::drop
at RUSTLIB/core/src/mem/mod.rs:LL:CC
4: miri_start::{closure#0}
at tests/genmc/fail/shims/mutex_diff_thread_unlock.rs:LL:CC
note: the last function in that backtrace got called indirectly due to this code
--> tests/genmc/fail/shims/mutex_diff_thread_unlock.rs:LL:CC
|
LL | let handle = std::thread::spawn(move || {
| __________________^
LL | | let guard = guard; // avoid field capturing
LL | | drop(guard);
LL | | });
| |______^
note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace
note: add `-Zmiri-genmc-print-genmc-output` to MIRIFLAGS to see the detailed GenMC error report
error: aborting due to 1 previous error