Closed
Description
While working on an experimental runtime rio and using a couple of experimental features I found that the compiler while in resolving the async call on a trait crash badly.
This is a minimal reproducible example
#![feature(async_fn_in_trait)]
#![feature(associated_type_defaults)]
use rio_rt::runitime as rio;
trait AsyncTrait {
async fn foo(&self) -> Result<(), ()>;
}
struct AsyncStruct;
impl AsyncTrait for AsyncStruct {
async fn foo(&self) -> Result<(), ()> {
Ok(())
}
}
async fn run_async_workflow(a: &impl AsyncTrait) -> Result<(), ()> {
a.foo().await
}
fn main() {
rio::block_on(async {
let obj = AsyncStruct{};
run_async_workflow(&obj).await.unwrap();
});
rio::wait();
}
and this is the stacktrace generated
Compiling rio_triage_await v0.1.0 (/home/vincent/Github/rio/examples/rio_triage_await)
warning: the feature `async_fn_in_trait` is incomplete and may not be safe to use and/or cause compiler crashes
--> examples/rio_triage_await/src/main.rs:1:12
|
1 | #![feature(async_fn_in_trait)]
| ^^^^^^^^^^^^^^^^^
|
= note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information
= note: `#[warn(incomplete_features)]` on by default
thread 'rustc' panicked at 'index out of bounds: the len is 0 but the index is 0', /cargo/registry/src/github.com-1ecc6299db9ec823/ena-0.14.0/src/snapshot_vec.rs:199:10
stack backtrace:
0: 0x7fc3a1303460 - std::backtrace_rs::backtrace::libunwind::trace::h845489be954216a1
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
1: 0x7fc3a1303460 - std::backtrace_rs::backtrace::trace_unsynchronized::hc22c3fc36941637e
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x7fc3a1303460 - std::sys_common::backtrace::_print_fmt::h21566367032e35d4
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys_common/backtrace.rs:66:5
3: 0x7fc3a1303460 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h72366b9f7489658b
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys_common/backtrace.rs:45:22
4: 0x7fc3a135f42e - core::fmt::write::h1440c0152f5352ee
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/core/src/fmt/mod.rs:1209:17
5: 0x7fc3a12f3545 - std::io::Write::write_fmt::h01a0c683f4011cbd
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/io/mod.rs:1680:15
6: 0x7fc3a1306203 - std::sys_common::backtrace::_print::hb6b7d9350a1bf6ea
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys_common/backtrace.rs:48:5
7: 0x7fc3a1306203 - std::sys_common::backtrace::print::h5fef162fa4c4a90c
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys_common/backtrace.rs:35:9
8: 0x7fc3a1306203 - std::panicking::default_hook::{{closure}}::h91c8dfae313a0a3c
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/panicking.rs:267:22
9: 0x7fc3a1305eda - std::panicking::default_hook::hd50d8a920cc08614
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/panicking.rs:286:9
10: 0x7fc3a3c3eff1 - rustc_driver[7242de1449df662b]::DEFAULT_HOOK::{closure#0}::{closure#0}
11: 0x7fc3a1306a3b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h4f4e2f6011476f3f
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/alloc/src/boxed.rs:1952:9
12: 0x7fc3a1306a3b - std::panicking::rust_panic_with_hook::h23e14c7d62d93ab4
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/panicking.rs:673:13
13: 0x7fc3a1306897 - std::panicking::begin_panic_handler::{{closure}}::hfe0bce4b7c5df181
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/panicking.rs:560:13
14: 0x7fc3a130390c - std::sys_common::backtrace::__rust_end_short_backtrace::h2e38c83ce0dfcc0c
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys_common/backtrace.rs:138:18
15: 0x7fc3a13065b2 - rust_begin_unwind
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/panicking.rs:556:5
16: 0x7fc3a135c003 - core::panicking::panic_fmt::h0c090a9cb6ea02e8
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/core/src/panicking.rs:142:14
17: 0x7fc3a135bf42 - core::panicking::panic_bounds_check::h20be9564d1e56957
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/core/src/panicking.rs:84:5
18: 0x7fc3a2474ac5 - <ena[9a97d731a16b0418]::unify::UnificationTable<ena[9a97d731a16b0418]::unify::backing_vec::InPlace<rustc_middle[95e307ed1fbbba30]::infer::unify_key::RegionVidKey, &mut alloc[86689f62ac00be20]::vec::Vec<ena[9a97d731a16b0418]::unify::VarValue<rustc_middle[95e307ed1fbbba30]::infer::unify_key::RegionVidKey>>, &mut rustc_infer[ad47d2b440a203e4]::infer::undo_log::InferCtxtUndoLogs>>>::uninlined_get_root_key
19: 0x7fc3a3431a13 - <rustc_middle[95e307ed1fbbba30]::ty::sty::Region as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFoldable>::try_fold_with::<rustc_infer[ad47d2b440a203e4]::infer::resolve::OpportunisticRegionResolver>
20: 0x7fc3a34324ce - <&rustc_middle[95e307ed1fbbba30]::ty::list::List<rustc_middle[95e307ed1fbbba30]::ty::subst::GenericArg> as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFoldable>::try_fold_with::<rustc_infer[ad47d2b440a203e4]::infer::resolve::OpportunisticRegionResolver>
21: 0x7fc3a3431d88 - <rustc_middle[95e307ed1fbbba30]::ty::Ty as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeSuperFoldable>::super_fold_with::<rustc_infer[ad47d2b440a203e4]::infer::resolve::OpportunisticRegionResolver>
22: 0x7fc3a27d19ff - rustc_trait_selection[1972b1c7572a008]::traits::project::opt_normalize_projection_type
23: 0x7fc3a27c840d - <rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFolder>::fold_ty
24: 0x7fc3a27dd037 - <&rustc_middle[95e307ed1fbbba30]::ty::list::List<rustc_middle[95e307ed1fbbba30]::ty::Ty> as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFoldable>::try_fold_with::<rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer>
25: 0x7fc3a4a6c1cf - <rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer as rustc_middle[95e307ed1fbbba30]::ty::fold::FallibleTypeFolder>::try_fold_binder::<&rustc_middle[95e307ed1fbbba30]::ty::list::List<rustc_middle[95e307ed1fbbba30]::ty::Ty>>
26: 0x7fc3a27c826e - <rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFolder>::fold_ty
27: 0x7fc3a27c8a0d - rustc_middle[95e307ed1fbbba30]::ty::util::fold_list::<rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer, rustc_middle[95e307ed1fbbba30]::ty::subst::GenericArg, <&rustc_middle[95e307ed1fbbba30]::ty::list::List<rustc_middle[95e307ed1fbbba30]::ty::subst::GenericArg> as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFoldable>::try_fold_with<rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer>::{closure#0}>
28: 0x7fc3a27c82af - <rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFolder>::fold_ty
29: 0x7fc3a2ad9249 - <&rustc_middle[95e307ed1fbbba30]::ty::list::List<rustc_middle[95e307ed1fbbba30]::ty::subst::GenericArg> as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeFoldable>::try_fold_with::<rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer>
30: 0x7fc3a27e1ccc - <rustc_middle[95e307ed1fbbba30]::ty::Ty as rustc_middle[95e307ed1fbbba30]::ty::fold::TypeSuperFoldable>::super_fold_with::<rustc_trait_selection[1972b1c7572a008]::traits::project::AssocTypeNormalizer>
31: 0x7fc3a250dfd6 - <&mut <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::collect_predicates_for_types::{closure#0} as core[3ffd720ca1c42488]::ops::function::FnOnce<(&rustc_middle[95e307ed1fbbba30]::ty::Ty,)>>::call_once
32: 0x7fc3a250d157 - <alloc[86689f62ac00be20]::vec::Vec<rustc_infer[ad47d2b440a203e4]::traits::Obligation<rustc_middle[95e307ed1fbbba30]::ty::Predicate>> as alloc[86689f62ac00be20]::vec::spec_from_iter::SpecFromIter<rustc_infer[ad47d2b440a203e4]::traits::Obligation<rustc_middle[95e307ed1fbbba30]::ty::Predicate>, core[3ffd720ca1c42488]::iter::adapters::flatten::FlatMap<core[3ffd720ca1c42488]::slice::iter::Iter<rustc_middle[95e307ed1fbbba30]::ty::Ty>, alloc[86689f62ac00be20]::vec::Vec<rustc_infer[ad47d2b440a203e4]::traits::Obligation<rustc_middle[95e307ed1fbbba30]::ty::Predicate>>, <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::collect_predicates_for_types::{closure#0}>>>::from_iter
33: 0x7fc3a24e6e89 - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::confirm_candidate
34: 0x7fc3a3014d29 - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::evaluate_stack
35: 0x7fc3a251bdd5 - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[86689f62ac00be20]::vec::into_iter::IntoIter<rustc_infer[ad47d2b440a203e4]::traits::Obligation<rustc_middle[95e307ed1fbbba30]::ty::Predicate>>>
36: 0x7fc3a3014db6 - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::evaluate_stack
37: 0x7fc3a2e4bf0e - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::evaluate_predicate_recursively
38: 0x7fc3a2e4a4db - <rustc_trait_selection[1972b1c7572a008]::traits::select::SelectionContext>::evaluate_root_obligation
39: 0x7fc3a2e48a02 - rustc_traits[c47d1f977f9a2400]::evaluate_obligation::evaluate_obligation
40: 0x7fc3a30d7c43 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::get_query::<rustc_query_impl[5acd0bb7c17f3c56]::queries::evaluate_obligation, rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt>
41: 0x7fc3a30d6f55 - <rustc_query_impl[5acd0bb7c17f3c56]::Queries as rustc_middle[95e307ed1fbbba30]::ty::query::QueryEngine>::evaluate_obligation
42: 0x7fc3a29557d2 - <rustc_trait_selection[1972b1c7572a008]::traits::fulfill::FulfillProcessor as rustc_data_structures[ea39d62d1b4f5af4]::obligation_forest::ObligationProcessor>::process_obligation
43: 0x7fc3a2952a89 - <rustc_data_structures[ea39d62d1b4f5af4]::obligation_forest::ObligationForest<rustc_trait_selection[1972b1c7572a008]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[1972b1c7572a008]::traits::fulfill::FulfillProcessor>
44: 0x7fc3a35164ab - <rustc_trait_selection[1972b1c7572a008]::traits::fulfill::FulfillmentContext as rustc_infer[ad47d2b440a203e4]::traits::engine::TraitEngine>::select_all_or_error
45: 0x7fc3a314b5df - <rustc_hir_analysis[c205a317ae4aae01]::check::inherited::InheritedBuilder>::enter::<rustc_hir_analysis[c205a317ae4aae01]::check::typeck_with_fallback<rustc_hir_analysis[c205a317ae4aae01]::check::typeck::{closure#0}>::{closure#1}, &rustc_middle[95e307ed1fbbba30]::ty::context::TypeckResults>
46: 0x7fc3a31498ac - rustc_hir_analysis[c205a317ae4aae01]::check::typeck
47: 0x7fc3a3286363 - <rustc_query_system[1567c4f72cef5d5a]::dep_graph::graph::DepGraph<rustc_middle[95e307ed1fbbba30]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[95e307ed1fbbba30]::ty::context::TyCtxt, rustc_span[db13f476b7ea05ff]::def_id::LocalDefId, &rustc_middle[95e307ed1fbbba30]::ty::context::TypeckResults>
48: 0x7fc3a3275271 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::try_execute_query::<rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt, rustc_query_system[1567c4f72cef5d5a]::query::caches::DefaultCache<rustc_span[db13f476b7ea05ff]::def_id::LocalDefId, &rustc_middle[95e307ed1fbbba30]::ty::context::TypeckResults>>
49: 0x7fc3a3b3ed6e - <rustc_query_impl[5acd0bb7c17f3c56]::Queries as rustc_middle[95e307ed1fbbba30]::ty::query::QueryEngine>::typeck
50: 0x7fc3a3971a27 - rustc_data_structures[ea39d62d1b4f5af4]::sync::par_for_each_in::<&[rustc_span[db13f476b7ea05ff]::def_id::LocalDefId], <rustc_middle[95e307ed1fbbba30]::hir::map::Map>::par_body_owners<rustc_hir_analysis[c205a317ae4aae01]::check::typeck_item_bodies::{closure#0}>::{closure#0}>
51: 0x7fc3a39717e3 - rustc_hir_analysis[c205a317ae4aae01]::check::typeck_item_bodies
52: 0x7fc3a3890209 - <rustc_query_system[1567c4f72cef5d5a]::dep_graph::graph::DepGraph<rustc_middle[95e307ed1fbbba30]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[95e307ed1fbbba30]::ty::context::TyCtxt, (), ()>
53: 0x7fc3a388f1d8 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::try_execute_query::<rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt, rustc_query_system[1567c4f72cef5d5a]::query::caches::DefaultCache<(), ()>>
54: 0x7fc3a388ebe7 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::get_query::<rustc_query_impl[5acd0bb7c17f3c56]::queries::typeck_item_bodies, rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt>
55: 0x7fc3a3634e1f - <rustc_session[33be129fa9a3b2db]::session::Session>::time::<(), rustc_hir_analysis[c205a317ae4aae01]::check_crate::{closure#7}>
56: 0x7fc3a363462f - rustc_hir_analysis[c205a317ae4aae01]::check_crate
57: 0x7fc3a3634137 - rustc_interface[b5c7f094b608ea39]::passes::analysis
58: 0x7fc3a39cac56 - <rustc_query_system[1567c4f72cef5d5a]::dep_graph::graph::DepGraph<rustc_middle[95e307ed1fbbba30]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[95e307ed1fbbba30]::ty::context::TyCtxt, (), core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>
59: 0x7fc3a39c9ff6 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::try_execute_query::<rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt, rustc_query_system[1567c4f72cef5d5a]::query::caches::DefaultCache<(), core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>>
60: 0x7fc3a39c9ad7 - rustc_query_system[1567c4f72cef5d5a]::query::plumbing::get_query::<rustc_query_impl[5acd0bb7c17f3c56]::queries::analysis, rustc_query_impl[5acd0bb7c17f3c56]::plumbing::QueryCtxt>
61: 0x7fc3a2826614 - <rustc_interface[b5c7f094b608ea39]::passes::QueryContext>::enter::<rustc_driver[7242de1449df662b]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>
62: 0x7fc3a2822a66 - <rustc_interface[b5c7f094b608ea39]::interface::Compiler>::enter::<rustc_driver[7242de1449df662b]::run_compiler::{closure#1}::{closure#2}, core[3ffd720ca1c42488]::result::Result<core[3ffd720ca1c42488]::option::Option<rustc_interface[b5c7f094b608ea39]::queries::Linker>, rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>
63: 0x7fc3a281da0c - rustc_span[db13f476b7ea05ff]::with_source_map::<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_interface[b5c7f094b608ea39]::interface::create_compiler_and_run<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_driver[7242de1449df662b]::run_compiler::{closure#1}>::{closure#1}>
64: 0x7fc3a281d40f - rustc_interface[b5c7f094b608ea39]::interface::create_compiler_and_run::<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_driver[7242de1449df662b]::run_compiler::{closure#1}>
65: 0x7fc3a281c602 - <scoped_tls[f5e6faabecdf262b]::ScopedKey<rustc_span[db13f476b7ea05ff]::SessionGlobals>>::set::<rustc_interface[b5c7f094b608ea39]::interface::run_compiler<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_driver[7242de1449df662b]::run_compiler::{closure#1}>::{closure#0}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>
66: 0x7fc3a281badf - std[a6dc0af1ec52a2ce]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[b5c7f094b608ea39]::util::run_in_thread_pool_with_globals<rustc_interface[b5c7f094b608ea39]::interface::run_compiler<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_driver[7242de1449df662b]::run_compiler::{closure#1}>::{closure#0}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>::{closure#0}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>
67: 0x7fc3a3a5b240 - <<std[a6dc0af1ec52a2ce]::thread::Builder>::spawn_unchecked_<rustc_interface[b5c7f094b608ea39]::util::run_in_thread_pool_with_globals<rustc_interface[b5c7f094b608ea39]::interface::run_compiler<core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>, rustc_driver[7242de1449df662b]::run_compiler::{closure#1}>::{closure#0}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>::{closure#0}, core[3ffd720ca1c42488]::result::Result<(), rustc_errors[9e9e85828f9a000d]::ErrorGuaranteed>>::{closure#1} as core[3ffd720ca1c42488]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
68: 0x7fc3a1310643 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2a8f9144a9e03d40
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/alloc/src/boxed.rs:1938:9
69: 0x7fc3a1310643 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0460607c3f53db9e
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/alloc/src/boxed.rs:1938:9
70: 0x7fc3a1310643 - std::sys::unix::thread::Thread::new::thread_start::h5611122d9afa23bd
at /rustc/a6b7274a462829f8ef08a1ddcdcec7ac80dbf3e1/library/std/src/sys/unix/thread.rs:108:17
71: 0x7fc3a11c7609 - start_thread
at /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477:8
72: 0x7fc3a10ea133 - clone
at /build/glibc-SzIz7B/glibc-2.31/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95
73: 0x0 - <unknown>
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.66.0-nightly (a6b7274a4 2022-10-10) running on x86_64-unknown-linux-gnu
note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED]
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [evaluate_obligation] evaluating trait selection obligation `for<'a, 'b> {core::future::ResumeTy, AsyncStruct, &'a AsyncStruct, impl core::future::future::Future<Output = core::result::Result<(), ()>>, ()}: core::marker::Send`
#1 [typeck] type-checking `main`
#2 [typeck_item_bodies] type-checking all item bodies
#3 [analysis] running analysis passes on this crate
end of query stack
warning: `rio_triage_await` (bin "rio_triage_await") generated 1 warning
error: could not compile `rio_triage_await`; 1 warning emitted
N.B: I guess this happens with any runtime? BTW also if happens only with rio the compiler should not crash, but I do not think this is related to a specific runtime, but I guess instead, the runtime triggers the resolution of the futures