make better use of label for data-race and some other errors

This commit is contained in:
Ralf Jung 2025-06-07 12:08:23 +02:00
parent bb53df1db6
commit 9439f33aa6
120 changed files with 240 additions and 388 deletions

View file

@ -85,7 +85,7 @@ impl fmt::Display for TerminationInfo {
DataRace { involves_non_atomic, ptr, op1, op2, .. } =>
write!(
f,
"{} detected between (1) {} on {} and (2) {} on {} at {ptr:?}. (2) just happened here",
"{} detected between (1) {} on {} and (2) {} on {} at {ptr:?}",
if *involves_non_atomic { "Data race" } else { "Race condition" },
op1.action,
op1.thread_info,
@ -224,7 +224,7 @@ pub fn report_error<'tcx>(
use InterpErrorKind::*;
use UndefinedBehaviorInfo::*;
let mut msg = vec![];
let mut labels = vec![];
let (title, helps) = if let MachineStop(info) = e.kind() {
let info = info.downcast_ref::<TerminationInfo>().expect("invalid MachineStop payload");
@ -237,7 +237,10 @@ pub fn report_error<'tcx>(
Some("unsupported operation"),
StackedBorrowsUb { .. } | TreeBorrowsUb { .. } | DataRace { .. } =>
Some("Undefined Behavior"),
Deadlock => Some("deadlock"),
Deadlock => {
labels.push(format!("this thread got stuck here"));
None
}
GenmcStuckExecution => {
// This case should only happen in GenMC mode. We treat it like a normal program exit.
assert!(ecx.machine.data_race.as_genmc_ref().is_some());
@ -259,7 +262,7 @@ pub fn report_error<'tcx>(
]
}
StackedBorrowsUb { help, history, .. } => {
msg.extend(help.clone());
labels.extend(help.clone());
let mut helps = vec![
note!("this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental"),
note!("see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information"),
@ -297,6 +300,7 @@ pub fn report_error<'tcx>(
Int2PtrWithStrictProvenance =>
vec![note!("use Strict Provenance APIs (https://doc.rust-lang.org/nightly/std/ptr/index.html#strict-provenance, https://crates.io/crates/sptr) instead")],
DataRace { op1, extra, retag_explain, .. } => {
labels.push(format!("(2) just happened here"));
let mut helps = vec![note_span!(op1.span, "and (1) occurred earlier here")];
if let Some(extra) = extra {
helps.push(note!("{extra}"));
@ -432,12 +436,14 @@ pub fn report_error<'tcx>(
}
write!(primary_msg, "{}", format_interp_error(ecx.tcx.dcx(), e)).unwrap();
msg.insert(0, format!("{} occurred here", title.unwrap_or("error")));
if labels.is_empty() {
labels.push(format!("{} occurred here", title.unwrap_or("error")));
}
report_msg(
DiagLevel::Error,
primary_msg,
msg,
labels,
vec![],
helps,
&stacktrace,
@ -455,8 +461,8 @@ pub fn report_error<'tcx>(
any_pruned |= was_pruned;
report_msg(
DiagLevel::Error,
format!("deadlock: the evaluated program deadlocked"),
vec![format!("the evaluated program deadlocked")],
format!("the evaluated program deadlocked"),
vec![format!("this thread got stuck here")],
vec![],
vec![],
&stacktrace,
@ -617,7 +623,7 @@ impl<'tcx> MiriMachine<'tcx> {
let stacktrace = Frame::generate_stacktrace_from_stack(self.threads.active_thread_stack());
let (stacktrace, _was_pruned) = prune_stacktrace(stacktrace, self);
let (title, diag_level) = match &e {
let (label, diag_level) = match &e {
RejectedIsolatedOp(_) =>
("operation rejected by isolation".to_string(), DiagLevel::Warning),
Int2Ptr { .. } => ("integer-to-pointer cast".to_string(), DiagLevel::Warning),
@ -632,10 +638,10 @@ impl<'tcx> MiriMachine<'tcx> {
| FreedAlloc(..)
| ProgressReport { .. }
| WeakMemoryOutdatedLoad { .. } =>
("tracking was triggered".to_string(), DiagLevel::Note),
("tracking was triggered here".to_string(), DiagLevel::Note),
};
let msg = match &e {
let title = match &e {
CreatedPointerTag(tag, None, _) => format!("created base tag {tag:?}"),
CreatedPointerTag(tag, Some(perm), None) =>
format!("created {tag:?} with {perm} derived from unknown tag"),
@ -738,7 +744,7 @@ impl<'tcx> MiriMachine<'tcx> {
report_msg(
diag_level,
title,
vec![msg],
vec![label],
notes,
helps,
&stacktrace,

View file

@ -1,17 +1,17 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_mutex_deadlock.rs:LL:CC
|
LL | assert_eq!(libc::pthread_mutex_lock(lock_copy.0.get() as *mut _), 0);
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/concurrency/libc_pthread_mutex_deadlock.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC

View file

@ -12,6 +12,6 @@ fn main() {
assert_eq!(libc::pthread_mutex_lock(&mut mutex as *mut _), 0);
// A "normal" mutex properly tries to acquire the lock even if its is already held
// by the current thread -- and then we deadlock.
libc::pthread_mutex_lock(&mut mutex as *mut _); //~ ERROR: deadlock: the evaluated program deadlocked
libc::pthread_mutex_lock(&mut mutex as *mut _); //~ ERROR: the evaluated program deadlocked
}
}

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_mutex_normal_reentrant.rs:LL:CC
|
LL | libc::pthread_mutex_lock(&mut mutex as *mut _);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ deadlock occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `main` at tests/fail-dep/concurrency/libc_pthread_mutex_normal_reentrant.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_rwlock_read_write_deadlock_single_thread.rs:LL:CC
|
LL | libc::pthread_rwlock_wrlock(rw.get());
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `main` at tests/fail-dep/concurrency/libc_pthread_rwlock_read_write_deadlock_single_thread.rs:LL:CC

View file

@ -1,17 +1,17 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_rwlock_write_read_deadlock.rs:LL:CC
|
LL | assert_eq!(libc::pthread_rwlock_wrlock(lock_copy.0.get() as *mut _), 0);
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/concurrency/libc_pthread_rwlock_write_read_deadlock.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_rwlock_write_read_deadlock_single_thread.rs:LL:CC
|
LL | libc::pthread_rwlock_rdlock(rw.get());
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `main` at tests/fail-dep/concurrency/libc_pthread_rwlock_write_read_deadlock_single_thread.rs:LL:CC

View file

@ -1,17 +1,17 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_rwlock_write_write_deadlock.rs:LL:CC
|
LL | assert_eq!(libc::pthread_rwlock_wrlock(lock_copy.0.get() as *mut _), 0);
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/concurrency/libc_pthread_rwlock_write_write_deadlock.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/concurrency/libc_pthread_rwlock_write_write_deadlock_single_thread.rs:LL:CC
|
LL | libc::pthread_rwlock_wrlock(rw.get());
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `main` at tests/fail-dep/concurrency/libc_pthread_rwlock_write_write_deadlock_single_thread.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `main` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `main` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail-dep/libc/env-set_var-data-race.rs:LL:CC
|
LL | libc::getenv(b"TZ/0".as_ptr().cast());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail-dep/libc/env-set_var-data-race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -14,24 +14,24 @@ note: inside `main`
LL | thread2.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/eventfd_block_read_twice.rs:LL:CC
|
LL | let res: i64 = unsafe { libc::read(fd, buf.as_mut_ptr().cast(), 8).try_into().unwrap() };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/eventfd_block_read_twice.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -14,24 +14,24 @@ note: inside `main`
LL | thread2.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/eventfd_block_write_twice.rs:LL:CC
|
LL | libc::write(fd, sized_8_data.as_ptr() as *const libc::c_void, 8).try_into().unwrap()
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/eventfd_block_write_twice.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -1,5 +1,5 @@
//@ignore-target: windows # Sockets/pipes are not implemented yet
//~^ ERROR: deadlock: the evaluated program deadlocked
//~^ ERROR: the evaluated program deadlocked
//@compile-flags: -Zmiri-deterministic-concurrency
use std::thread;
@ -16,5 +16,5 @@ fn main() {
});
// Main thread will block on read.
let _res = unsafe { libc::read(fds[0], buf.as_mut_ptr().cast(), buf.len() as libc::size_t) };
//~^ ERROR: deadlock: the evaluated program deadlocked
//~^ ERROR: the evaluated program deadlocked
}

View file

@ -1,14 +1,14 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: deadlock occurred here
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/fcntl_fsetfl_while_blocking.rs:LL:CC
|
LL | let _res = unsafe { libc::read(fds[0], buf.as_mut_ptr().cast(), buf.len() as libc::size_t) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `main` at tests/fail-dep/libc/fcntl_fsetfl_while_blocking.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `main` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `main` at ALLOC
--> tests/fail-dep/libc/libc-epoll-data-race.rs:LL:CC
|
LL | assert_eq!({ VAL_TWO }, 51)
| ^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail-dep/libc/libc-epoll-data-race.rs:LL:CC

View file

@ -1,14 +1,14 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: deadlock occurred here
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -20,18 +20,18 @@ note: inside `main`
LL | thread1.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/libc_epoll_block_two_thread.rs:LL:CC
|
LL | check_epoll_wait::<TAG>(epfd, &[(expected_event, expected_value)], -1);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the evaluated program deadlocked
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/libc_epoll_block_two_thread.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -14,18 +14,18 @@ note: inside `main`
LL | thread1.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/socketpair-close-while-blocked.rs:LL:CC
|
LL | libc::read(fds[1], buf.as_mut_ptr().cast(), buf.len() as libc::size_t)
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/socketpair-close-while-blocked.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `main` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `main` at ALLOC
--> tests/fail-dep/libc/socketpair-data-race.rs:LL:CC
|
LL | unsafe { assert_eq!({ VAL }, 1) };
| ^^^ Undefined Behavior occurred here
| ^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail-dep/libc/socketpair-data-race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -14,24 +14,24 @@ note: inside `main`
LL | thread2.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/socketpair_block_read_twice.rs:LL:CC
|
LL | let res = unsafe { libc::read(fds[1], buf.as_mut_ptr().cast(), buf.len() as libc::size_t) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/socketpair_block_read_twice.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
|
LL | let ret = unsafe { libc::pthread_join(id, ptr::null_mut()) };
| ^ deadlock occurred here
| ^ this thread got stuck here
|
= note: BACKTRACE:
= note: inside `std::sys::pal::PLATFORM::thread::Thread::join` at RUSTLIB/std/src/sys/pal/PLATFORM/thread.rs:LL:CC
@ -14,24 +14,24 @@ note: inside `main`
LL | thread2.join().unwrap();
| ^^^^^^^^^^^^^^
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> tests/fail-dep/libc/socketpair_block_write_twice.rs:LL:CC
|
LL | let res = unsafe { libc::write(fds[0], data as *const libc::c_void, 3) };
| ^ the evaluated program deadlocked
| ^ this thread got stuck here
|
= note: BACKTRACE on thread `unnamed-ID`:
= note: inside closure at tests/fail-dep/libc/socketpair_block_write_twice.rs:LL:CC
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
|
= note: the evaluated program deadlocked
= note: this thread got stuck here
= note: (no span available)
= note: BACKTRACE on thread `unnamed-ID`:

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[OFFSET
--> tests/fail/async-shared-mutable.rs:LL:CC
|
LL | *x = 1;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[OFFSET]
| ^^^^^^ this error occurs as part of an access at ALLOC[OFFSET]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/both_borrows/alias_through_mutation.rs:LL:CC
|
LL | let _val = *target_alias;
| ^^^^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
--> tests/fail/both_borrows/aliasing_mut3.rs:LL:CC
|
LL | pub fn safe(x: &mut i32, y: &i32) {
| ^
| |
| Undefined Behavior occurred here
| this error occurs as part of function-entry retag at ALLOC[0x0..0x4]
| ^ this error occurs as part of function-entry retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/both_borrows/box_exclusive_violation1.rs:LL:CC
|
LL | *LEAK = 7;
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x4],
--> tests/fail/both_borrows/buggy_as_mut_slice.rs:LL:CC
|
LL | v1[1] = 5;
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x4..0x8]
| ^^^^^^^^^ this error occurs as part of an access at ALLOC[0x4..0x8]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -7,7 +7,6 @@ LL | | from_raw_parts_mut(ptr.offset(mid as isize), len - mid),
LL | | )
| | ^
| | |
| | Undefined Behavior occurred here
| |_____________this error occurs as part of retag (of a reference/box inside this compound value) at ALLOC[0x0..0x10]
| errors for retagging in fields are fairly new; please reach out to us (e.g. at <https://rust-lang.zulipchat.com/#narrow/stream/269128-miri>) if you find this error troubling
|

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/both_borrows/illegal_write1.rs:LL:CC
|
LL | unsafe { *x = 42 };
| ^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/both_borrows/illegal_write5.rs:LL:CC
|
LL | let _val = *xref;
| ^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
--> tests/fail/both_borrows/load_invalid_shr.rs:LL:CC
|
LL | let _val = *xref_in_mem;
| ^^^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x4]
| ^^^^^^^^^^^^ this error occurs as part of retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/both_borrows/mut_exclusive_violation1.rs:LL:CC
|
LL | *LEAK = 7;
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/both_borrows/mut_exclusive_violation2.rs:LL:CC
|
LL | let _val = *raw1;
| ^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/both_borrows/outdated_local.rs:LL:CC
|
LL | assert_eq!(unsafe { *y }, 1);
| ^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
--> tests/fail/both_borrows/pass_invalid_shr.rs:LL:CC
|
LL | foo(xref);
| ^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x4]
| ^^^^ this error occurs as part of retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -4,7 +4,6 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
LL | foo(some_xref);
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag (of a reference/box inside this compound value) at ALLOC[0x0..0x4]
| errors for retagging in fields are fairly new; please reach out to us (e.g. at <https://rust-lang.zulipchat.com/#narrow/stream/269128-miri>) if you find this error troubling
|

View file

@ -4,7 +4,6 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
LL | foo(pair_xref);
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag (of a reference/box inside this compound value) at ALLOC[0x0..0x4]
| errors for retagging in fields are fairly new; please reach out to us (e.g. at <https://rust-lang.zulipchat.com/#narrow/stream/269128-miri>) if you find this error troubling
|

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) retag write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) retag write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/both_borrows/retag_data_race_write.rs:LL:CC
|
LL | ... *p = 5;
| ^^^^^^ Undefined Behavior occurred here
| ^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/both_borrows/retag_data_race_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) retag read on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) retag read on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/both_borrows/retag_data_race_write.rs:LL:CC
|
LL | ... *p = 5;
| ^^^^^^ Undefined Behavior occurred here
| ^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/both_borrows/retag_data_race_write.rs:LL:CC

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
--> tests/fail/both_borrows/return_invalid_shr.rs:LL:CC
|
LL | ret
| ^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x4..0x8]
| ^^^ this error occurs as part of retag at ALLOC[0x4..0x8]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -4,7 +4,6 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
LL | ret
| ^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag (of a reference/box inside this compound value) at ALLOC[0x4..0x8]
| errors for retagging in fields are fairly new; please reach out to us (e.g. at <https://rust-lang.zulipchat.com/#narrow/stream/269128-miri>) if you find this error troubling
|

View file

@ -4,7 +4,6 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadOnly permiss
LL | ret
| ^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag (of a reference/box inside this compound value) at ALLOC[0x4..0x8]
| errors for retagging in fields are fairly new; please reach out to us (e.g. at <https://rust-lang.zulipchat.com/#narrow/stream/269128-miri>) if you find this error troubling
|

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/both_borrows/shr_frozen_violation1.rs:LL:CC
|
LL | *(x as *const i32 as *mut i32) = 7;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/both_borrows/shr_frozen_violation2.rs:LL:CC
|
LL | let _val = *frozen;
| ^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadWrite permis
--> tests/fail/box-cell-alias.rs:LL:CC
|
LL | unsafe { (*ptr).set(20) };
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x1]
| ^^^^^^ this error occurs as part of retag at ALLOC[0x0..0x1]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -1,8 +1,8 @@
error: deadlock: the evaluated program deadlocked
error: the evaluated program deadlocked
--> RUSTLIB/std/$FILE:LL:CC
|
LL | $CODE
| ^ deadlock occurred here
| ^ this thread got stuck here
|
note: inside `main`
--> tests/fail/concurrency/mutex-leak-move-deadlock.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/alloc_read_race.rs:LL:CC
|
LL | ... *pointer.load(Ordering::Relaxed)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/alloc_read_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/alloc_write_race.rs:LL:CC
|
LL | ... *pointer.load(Ordering::Relaxed) = 2;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/alloc_write_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) atomic load on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) atomic load on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_read_na_write_race1.rs:LL:CC
|
LL | ... (&*c.0).load(Ordering::SeqCst)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_read_na_write_race1.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) atomic load on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) atomic load on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_read_na_write_race2.rs:LL:CC
|
LL | ... *atomic_ref.get_mut() = 32;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_read_na_write_race2.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) atomic store on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) atomic store on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_write_na_read_race1.rs:LL:CC
|
LL | ... *atomic_ref.get_mut()
| ^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_write_na_read_race1.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_write_na_read_race2.rs:LL:CC
|
LL | ... (&*c.0).store(32, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_write_na_read_race2.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_write_na_write_race1.rs:LL:CC
|
LL | ... (&*c.0).store(64, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_write_na_write_race1.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) atomic store on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) atomic store on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/atomic_write_na_write_race2.rs:LL:CC
|
LL | ... *atomic_ref.get_mut() = 32;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/atomic_write_na_write_race2.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/dangling_thread_async_race.rs:LL:CC
|
LL | ... *c.0 = 64;
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dangling_thread_async_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `main` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `main` at ALLOC
--> tests/fail/data_race/dangling_thread_race.rs:LL:CC
|
LL | ... *c.0 = 64;
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dangling_thread_race.rs:LL:CC

View file

@ -1,4 +1,4 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/dealloc_read_race1.rs:LL:CC
|
LL | / __rust_dealloc(
@ -7,7 +7,7 @@ LL | | ptr.0 as *mut _,
LL | | std::mem::size_of::<usize>(),
LL | | std::mem::align_of::<usize>(),
LL | | );
| |_____________^ Undefined Behavior occurred here
| |_____________^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dealloc_read_race1.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/dealloc_read_race_stack.rs:LL:CC
|
LL | }
| ^ Undefined Behavior occurred here
| ^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dealloc_read_race_stack.rs:LL:CC

View file

@ -1,4 +1,4 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/dealloc_write_race1.rs:LL:CC
|
LL | / __rust_dealloc(
@ -7,7 +7,7 @@ LL | | ptr.0 as *mut _,
LL | | std::mem::size_of::<usize>(),
LL | | std::mem::align_of::<usize>(),
LL | | );
| |_____________^ Undefined Behavior occurred here
| |_____________^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dealloc_write_race1.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) deallocation on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/dealloc_write_race_stack.rs:LL:CC
|
LL | }
| ^ Undefined Behavior occurred here
| ^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/dealloc_write_race_stack.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/enable_after_join_to_main.rs:LL:CC
|
LL | ... *c.0 = 64;
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/enable_after_join_to_main.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `main` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `main` at ALLOC
--> tests/fail/data_race/fence_after_load.rs:LL:CC
|
LL | unsafe { V = 2 }
| ^^^^^ Undefined Behavior occurred here
| ^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/fence_after_load.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) creating a new allocation on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/local_variable_alloc_race.rs:LL:CC
|
LL | *ptr = 127;
| ^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/local_variable_alloc_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/local_variable_read_race.rs:LL:CC
|
LL | *ptr = 127;
| ^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/local_variable_read_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `main` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/local_variable_write_race.rs:LL:CC
|
LL | *ptr = 127;
| ^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/local_variable_write_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) multiple differently-sized atomic loads, including one load on thread `unnamed-ID` and (2) 2-byte atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) multiple differently-sized atomic loads, including one load on thread `unnamed-ID` and (2) 2-byte atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/mixed_size_read_read_write.rs:LL:CC
|
LL | a16.store(0, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_read_read_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) multiple differently-sized atomic loads, including one load on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) multiple differently-sized atomic loads, including one load on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/mixed_size_read_read_write.rs:LL:CC
|
LL | a8[0].store(0, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_read_read_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) 1-byte atomic load on thread `unnamed-ID` and (2) 2-byte atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) 1-byte atomic load on thread `unnamed-ID` and (2) 2-byte atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/mixed_size_read_write.rs:LL:CC
|
LL | a16.store(1, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_read_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic load on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic load on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/mixed_size_read_write.rs:LL:CC
|
LL | a8[0].load(Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_read_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/mixed_size_write_write.rs:LL:CC
|
LL | a8[idx].store(1, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_write_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC+0x1. (2) just happened here
error: Undefined Behavior: Race condition detected between (1) 2-byte atomic store on thread `unnamed-ID` and (2) 1-byte atomic store on thread `unnamed-ID` at ALLOC+0x1
--> tests/fail/data_race/mixed_size_write_write.rs:LL:CC
|
LL | a8[idx].store(1, Ordering::SeqCst);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/mixed_size_write_write.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/read_write_race.rs:LL:CC
|
LL | ... *c.0 = 64;
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/read_write_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/read_write_race_stack.rs:LL:CC
|
LL | ... stack_var
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/read_write_race_stack.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/relax_acquire_race.rs:LL:CC
|
LL | ... *c.0
| ^^^^ Undefined Behavior occurred here
| ^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/relax_acquire_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/release_seq_race.rs:LL:CC
|
LL | ... *c.0
| ^^^^ Undefined Behavior occurred here
| ^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/release_seq_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/release_seq_race_same_thread.rs:LL:CC
|
LL | ... *c.0
| ^^^^ Undefined Behavior occurred here
| ^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/release_seq_race_same_thread.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic read on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/rmw_race.rs:LL:CC
|
LL | ... *c.0
| ^^^^ Undefined Behavior occurred here
| ^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/rmw_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `main` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic read on thread `unnamed-ID` and (2) deallocation on thread `main` at ALLOC
--> tests/fail/data_race/stack_pop_race.rs:LL:CC
|
LL | race(0);
| ^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/stack_pop_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/write_write_race.rs:LL:CC
|
LL | ... *c.0 = 64;
| ^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/write_write_race.rs:LL:CC

View file

@ -1,8 +1,8 @@
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC. (2) just happened here
error: Undefined Behavior: Data race detected between (1) non-atomic write on thread `unnamed-ID` and (2) non-atomic write on thread `unnamed-ID` at ALLOC
--> tests/fail/data_race/write_write_race_stack.rs:LL:CC
|
LL | ... stack_var = 1usize;
| ^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here
| ^^^^^^^^^^^^^^^^^^ (2) just happened here
|
help: and (1) occurred earlier here
--> tests/fail/data_race/write_write_race_stack.rs:LL:CC

View file

@ -1,8 +1,8 @@
warning: reborrow of reference to `extern type`
warning: reborrow of a reference to `extern type` is not properly supported
--> tests/fail/extern-type-field-offset.rs:LL:CC
|
LL | let x: &Newtype = unsafe { &*(&buf as *const _ as *const Newtype) };
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ reborrow of a reference to `extern type` is not properly supported
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ reborrow of reference to `extern type`
|
= help: `extern type` are not compatible with the Stacked Borrows aliasing model implemented by Miri; Miri may miss bugs in this code
= help: try running with `MIRIFLAGS=-Zmiri-tree-borrows` to use the more permissive but also even more experimental Tree Borrows aliasing checks instead

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/disable_mut_does_not_merge_srw.rs:LL:CC
|
LL | let _val = *raw;
| ^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for Unique permission at A
--> RUSTLIB/core/src/ptr/mod.rs:LL:CC
|
LL | pub unsafe fn drop_in_place<T: ?Sized>(to_drop: *mut T) {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x1]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this error occurs as part of retag at ALLOC[0x0..0x1]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <wildcard> at ALLOC[0
--> tests/fail/stacked_borrows/exposed_only_ro.rs:LL:CC
|
LL | unsafe { *ptr = 0 };
| ^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/fnentry_invalidation.rs:LL:CC
|
LL | let _oof = *z;
| ^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/fnentry_invalidation2.rs:LL:CC
|
LL | let _oof = *ptr;
| ^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read1.rs:LL:CC
|
LL | let _val = *xref; // ...but any use of raw will invalidate our ref.
| ^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read2.rs:LL:CC
|
LL | let _val = *xref; // ...but any use of raw will invalidate our ref.
| ^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read3.rs:LL:CC
|
LL | let _val = *xref2;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read4.rs:LL:CC
|
LL | let _illegal = *xref2;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[$HEX],
--> tests/fail/stacked_borrows/illegal_read5.rs:LL:CC
|
LL | let _val = *xref; // the mutable one is dead and gone
| ^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[$HEX..$HEX]
| ^^^^^ this error occurs as part of an access at ALLOC[$HEX..$HEX]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read6.rs:LL:CC
|
LL | let _val = *raw;
| ^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadWrite permis
--> tests/fail/stacked_borrows/illegal_read7.rs:LL:CC
|
LL | let _val = *x.get_mut();
| ^
| |
| Undefined Behavior occurred here
| this error occurs as part of two-phase retag at ALLOC[0x0..0x4]
| ^ this error occurs as part of two-phase retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read8.rs:LL:CC
|
LL | let _fail = *y1;
| ^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read_despite_exposed1.rs:LL:CC
|
LL | let _val = *root2;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_read_despite_exposed2.rs:LL:CC
|
LL | let _val = *root2;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/stacked_borrows/illegal_write2.rs:LL:CC
|
LL | unsafe { *target2 = 13 };
| ^^^^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a write access using <TAG> at ALLOC[0x0],
--> tests/fail/stacked_borrows/illegal_write3.rs:LL:CC
|
LL | unsafe { *ptr = 42 };
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_write4.rs:LL:CC
|
LL | let _val = *reference;
| ^^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: attempting a read access using <TAG> at ALLOC[0x0], b
--> tests/fail/stacked_borrows/illegal_write_despite_exposed1.rs:LL:CC
|
LL | let _val = *root2;
| ^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of an access at ALLOC[0x0..0x4]
| ^^^^^^ this error occurs as part of an access at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadWrite permis
--> tests/fail/stacked_borrows/interior_mut1.rs:LL:CC
|
LL | let _val = *inner_shr.get();
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x4]
| ^^^^^^^^^ this error occurs as part of retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

View file

@ -2,10 +2,7 @@ error: Undefined Behavior: trying to retag from <TAG> for SharedReadWrite permis
--> tests/fail/stacked_borrows/interior_mut2.rs:LL:CC
|
LL | let _val = *inner_shr.get();
| ^^^^^^^^^
| |
| Undefined Behavior occurred here
| this error occurs as part of retag at ALLOC[0x0..0x4]
| ^^^^^^^^^ this error occurs as part of retag at ALLOC[0x0..0x4]
|
= help: this indicates a potential bug in the program: it performed an invalid operation, but the Stacked Borrows rules it violated are still experimental
= help: see https://github.com/rust-lang/unsafe-code-guidelines/blob/master/wip/stacked-borrows.md for further information

Some files were not shown because too many files have changed in this diff Show more