Just wanted to say that every time I see a crate with suspiciously looking unsafe code (unint/pointer offseting) I immediately reach Miri before I start to manually analyze it and it almost always finds the UBs for me :)
So thank you for this tool! @RalfJ @oli and the rest of the contributors!
@Elichai Turkel so glad that it helps you :)
The one thing I want to warn against is using Miri instead of a manual audit. Miri being green is a great sign but for various reasons does not replace actually understanding the code and convincing yourself that it is correct.
Also, for cases where it did not find the UB but you found it later -- if you think that's a bug in Miri (and not just, say, incomplete coverage of the test suite), please let us know :D
Obviously not instead, no static analysis will ever cover real logic errors :)
And I think these were mostly either missing shims by miri, outside of miri scope, or outside of stacked borrows (validity of value behind a ref etc)
Miri is not a "static analysis" though :)
(it's a dynamic analysis)
While I have the attention of some Miri users, could I ask you for feedback on this issue concerning
cargo miri test argument handling?