RTSAN_NONBLOCKING_ASYNC

Static RTSAN_NONBLOCKING_ASYNC 

Source
pub static RTSAN_NONBLOCKING_ASYNC: &Lint
Expand description

The rtsan_nonblocking_async lint detects incompatible use of #[sanitize(realtime = "nonblocking")] on async functions.

§Example

 #![feature(sanitize)]

 #[sanitize(realtime = "nonblocking")]
 async fn x() {}

 fn main() {
     x();
 }

{{produces}}

§Explanation

The sanitizer only considers the async function body nonblocking. The executor, which runs on every .await point can run non-realtime code, without the sanitizer catching it.