Currently we have:
A rustc flag, -Z sanitizer
, to sanitize rlibs (it adds an extra LLVM pass/attribute) and executables (it links to the sanitizer runtime). Added in LeakSanitizer, ThreadSanitizer, AddressSanitizer and MemorySanitizer support #38699.
An attribute #[no_sanitize]
to disable sanitization on specific functions. Also lints if those functions are marked as requesting inlining. Added in Selectively disable sanitizer instrumentation #68164.
#[no_sanitize]
suppresses #[inline]
hints. A lint is issued if combined with #[inline(always)]
.A few violations (false positives?) in the test runner
rustc --test
) ThreadSanitizer detects a data race in the test runner (rustc --test
) #39608rustc --test
) MemorySanitizer detects an use of unitialized value in the test runner (rustc --test
) #39610Known issues
Unresolved questions:
#[no_sanitize]
or perhaps something like #[sanitize(never)]
or some other variation? In particular, might we at some point want "positive options" like #[sanitize(miri(aggressive))]
? There is much back and forth in Selectively disable sanitizer instrumentation #68164.alex, gnzlbg, LifeIsStrange, elichai, phlip9 and 27 morealex, GabrielMajeri, LifeIsStrange, phlip9 and 5 moreLifeIsStrange, phlip9, koutheir, kamulos, schneiderfelipe and 1 moreLifeIsStrange, schneiderfelipe and cramertj
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4