Skip to content

Commit d537a7a

Browse files
committed
clarify that we do not prove soundness
1 parent 0548274 commit d537a7a

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/tools/miri/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,12 @@ behavior** in your program, and cannot run all programs:
7474
unobservable by compiled programs running on real hardware when `SeqCst` fences are used, and it
7575
cannot produce all behaviors possibly observable on real hardware.
7676

77+
Moreover, Miri fundamentally cannot tell you whether your code is *sound*. Soundness is the property
78+
of never causing undefined behavior when invoked from arbitrary safe code, even in combination with
79+
other sound code. In contrast, Miri can just tell you if *a particular way of interacting with your
80+
code* (e.g., a test suite) causes any undefined behavior. It is up to you to ensure sufficient
81+
coverage.
82+
7783
[rust]: https://www.rust-lang.org/
7884
[mir]: https://github.com/rust-lang/rfcs/blob/master/text/1211-mir.md
7985
[`unreachable_unchecked`]: https://doc.rust-lang.org/stable/std/hint/fn.unreachable_unchecked.html

0 commit comments

Comments
 (0)