wit-bindgen
wit-bindgen copied to clipboard
rust: Panic dropping a future outside of an async context
Code such as this:
fn main() {
let (tx, rx) = wit_future::new(|| Ok(None));
drop(tx);
drop(rx);
}
will currently fail with:
thread 'main' (1) panicked at /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/wit-bindgen-0.48.1/src/rt/async_support/waitable.rs:193:13:
assertion failed: !task.is_null()
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
(more context/discussion are here)
I'm not sure how best to handle this myself. It's not clear how frequently this will come up and if this means we basically need more libc integration or what.