Skip to content

index out of bounds: the len is 188 but the index is 189 #103301

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
AntoineSebert opened this issue Oct 20, 2022 · 5 comments
Closed

index out of bounds: the len is 188 but the index is 189 #103301

AntoineSebert opened this issue Oct 20, 2022 · 5 comments
Assignees
Labels
C-bug Category: This is a bug. E-needs-mcve Call for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Example I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@AntoineSebert
Copy link

Code

let lid_prefix = warp::put()
	.and(warp::body::content_length_limit(1024))
	.and(
		interfaces::acs::bandwidth_filter()
			.untuple_one()
			.and_then(interfaces::acs::bandwidth_handler)
			.or(interfaces::lid_filter().untuple_one().and_then(
				|lid: String, parameters: std::collections::HashMap<String, String>| async move {
					interfaces::acs::lid_handler(lid, parameters)
						.await
						.or(interfaces::ossi::lid_handler(lid, parameters).await)
				},
			)),
	)
	.recover(interfaces::acs::recover)
	.recover(interfaces::ossi::recover);

Meta

rustc --version --verbose:

rustc 1.64.0 (a55dd71d5 2022-09-19)
binary: rustc
commit-hash: a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52
commit-date: 2022-09-19
host: x86_64-unknown-linux-gnu
release: 1.64.0
LLVM version: 14.0.6

Error output

thread 'rustc' panicked at 'index out of bounds: the len is 188 but the index is 189', /cargo/registry/src/github.com-1ecc6299db9ec823/ena-0.14.0/src/snapshot_vec.rs:199:10
Backtrace

   0:     0x7f9f5bb3519d - std::backtrace_rs::backtrace::libunwind::trace::h9135f25bc195152c
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7f9f5bb3519d - std::backtrace_rs::backtrace::trace_unsynchronized::h015ee85be510df51
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7f9f5bb3519d - std::sys_common::backtrace::_print_fmt::h5fad03caa9652a2c
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7f9f5bb3519d - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h2b42ca28d244e5c7
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7f9f5bb906ac - core::fmt::write::h401e827d053130ed
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/fmt/mod.rs:1198:17
   5:     0x7f9f5bb264e1 - std::io::Write::write_fmt::hffec93268f5cde32
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/io/mod.rs:1672:15
   6:     0x7f9f5bb37eb5 - std::sys_common::backtrace::_print::h180c4c706ee1d3fb
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7f9f5bb37eb5 - std::sys_common::backtrace::print::hd0c35d18765761c9
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7f9f5bb37eb5 - std::panicking::default_hook::{{closure}}::h1f023310983bc730
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:295:22
   9:     0x7f9f5bb37bd1 - std::panicking::default_hook::h188fec3334afd5be
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:314:9
  10:     0x7f9f5e40d484 - rustc_driver[4568cc0a685fd94d]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7f9f5bb385ea - std::panicking::rust_panic_with_hook::hf26e9d4f97b40096
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:702:17
  12:     0x7f9f5bb38427 - std::panicking::begin_panic_handler::{{closure}}::hfab912107608087a
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:588:13
  13:     0x7f9f5bb35694 - std::sys_common::backtrace::__rust_end_short_backtrace::h434b685ce8d9965b
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys_common/backtrace.rs:138:18
  14:     0x7f9f5bb38159 - rust_begin_unwind
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:584:5
  15:     0x7f9f5bb8d1c3 - core::panicking::panic_fmt::ha6dc7f2ab2479463
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/panicking.rs:142:14
  16:     0x7f9f5bb8d102 - core::panicking::panic_bounds_check::ha6e6615eae13afdc
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/panicking.rs:84:5
  17:     0x7f9f5cc66e2f - <rustc_infer[b9251f21a0aa6bc7]::infer::ShallowResolver as rustc_middle[b6cf56a787d1e2a1]::ty::fold::TypeFolder>::fold_ty
  18:     0x7f9f5cc62315 - <&rustc_middle[b6cf56a787d1e2a1]::ty::list::List<rustc_middle[b6cf56a787d1e2a1]::ty::subst::GenericArg> as rustc_middle[b6cf56a787d1e2a1]::ty::fold::TypeFoldable>::try_fold_with::<rustc_infer[b9251f21a0aa6bc7]::infer::resolve::OpportunisticVarResolver>
  19:     0x7f9f5cc65cdb - <rustc_infer[b9251f21a0aa6bc7]::infer::resolve::OpportunisticVarResolver as rustc_middle[b6cf56a787d1e2a1]::ty::fold::FallibleTypeFolder>::try_fold_ty
  20:     0x7f9f5f380c26 - <(rustc_middle[b6cf56a787d1e2a1]::ty::Ty, rustc_middle[b6cf56a787d1e2a1]::ty::Ty) as rustc_middle[b6cf56a787d1e2a1]::ty::fold::TypeFoldable>::fold_with::<rustc_infer[b9251f21a0aa6bc7]::infer::resolve::OpportunisticVarResolver>
  21:     0x7f9f5f318185 - <rustc_infer[b9251f21a0aa6bc7]::infer::InferCtxt>::same_type_modulo_infer
  22:     0x7f9f5f31c84e - <rustc_infer[b9251f21a0aa6bc7]::infer::InferCtxt>::note_type_err
  23:     0x7f9f5f3149f2 - <rustc_infer[b9251f21a0aa6bc7]::infer::InferCtxt>::report_and_explain_type_error
  24:     0x7f9f5e77da98 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::report_arg_errors
  25:     0x7f9f5ce759a2 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  26:     0x7f9f5cde5f83 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  27:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  28:     0x7f9f5ce0aa79 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_block_with_expected
  29:     0x7f9f5cde55c9 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  30:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  31:     0x7f9f5d5161da - rustc_typeck[8db86e16038c4234]::check::check::check_fn
  32:     0x7f9f5cead9a7 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_closure
  33:     0x7f9f5cde7d3b - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  34:     0x7f9f5ce71c5a - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  35:     0x7f9f5ce25c97 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_call
  36:     0x7f9f5cde5594 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  37:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  38:     0x7f9f5d5161da - rustc_typeck[8db86e16038c4234]::check::check::check_fn
  39:     0x7f9f5cead9a7 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_closure
  40:     0x7f9f5cde7d3b - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  41:     0x7f9f5ce71c5a - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  42:     0x7f9f5cde5f83 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  43:     0x7f9f5ce71c5a - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  44:     0x7f9f5cde5f83 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  45:     0x7f9f5ce71c5a - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  46:     0x7f9f5cde5f83 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  47:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  48:     0x7f9f5cde561f - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  49:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  50:     0x7f9f5cde561f - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  51:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  52:     0x7f9f5ce1b701 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_decl
  53:     0x7f9f5ce0a95d - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_block_with_expected
  54:     0x7f9f5cde55c9 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  55:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  56:     0x7f9f5d5161da - rustc_typeck[8db86e16038c4234]::check::check::check_fn
  57:     0x7f9f5cead9a7 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_closure
  58:     0x7f9f5cde7d3b - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  59:     0x7f9f5ce71c5a - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_argument_types
  60:     0x7f9f5ce25c97 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_call
  61:     0x7f9f5cde5594 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  62:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  63:     0x7f9f5ce1b701 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_decl
  64:     0x7f9f5ce0a95d - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_block_with_expected
  65:     0x7f9f5cde55c9 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_kind
  66:     0x7f9f5cdf0f30 - <rustc_typeck[8db86e16038c4234]::check::fn_ctxt::FnCtxt>::check_expr_with_expectation
  67:     0x7f9f5d5161da - rustc_typeck[8db86e16038c4234]::check::check::check_fn
  68:     0x7f9f5d506fab - <rustc_infer[b9251f21a0aa6bc7]::infer::InferCtxtBuilder>::enter::<&rustc_middle[b6cf56a787d1e2a1]::ty::context::TypeckResults, <rustc_typeck[8db86e16038c4234]::check::inherited::InheritedBuilder>::enter<rustc_typeck[8db86e16038c4234]::check::typeck_with_fallback<rustc_typeck[8db86e16038c4234]::check::typeck::{closure#0}>::{closure#1}, &rustc_middle[b6cf56a787d1e2a1]::ty::context::TypeckResults>::{closure#0}>
  69:     0x7f9f5de04b1d - rustc_typeck[8db86e16038c4234]::check::typeck
  70:     0x7f9f5cf104cf - <rustc_query_system[8caf4755e287670e]::dep_graph::graph::DepGraph<rustc_middle[b6cf56a787d1e2a1]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b6cf56a787d1e2a1]::ty::context::TyCtxt, rustc_span[721a57c036170ce]::def_id::LocalDefId, &rustc_middle[b6cf56a787d1e2a1]::ty::context::TypeckResults>
  71:     0x7f9f5cf05fb3 - rustc_query_system[8caf4755e287670e]::query::plumbing::try_execute_query::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt, rustc_query_system[8caf4755e287670e]::query::caches::DefaultCache<rustc_span[721a57c036170ce]::def_id::LocalDefId, &rustc_middle[b6cf56a787d1e2a1]::ty::context::TypeckResults>>
  72:     0x7f9f5e088316 - rustc_query_system[8caf4755e287670e]::query::plumbing::force_query::<rustc_query_impl[232efbc2900411f9]::queries::typeck, rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt>
  73:     0x7f9f5e08815e - rustc_query_impl[232efbc2900411f9]::query_callbacks::typeck::force_from_dep_node
  74:     0x7f9f5cda9531 - <rustc_middle[b6cf56a787d1e2a1]::ty::context::TyCtxt as rustc_query_system[8caf4755e287670e]::dep_graph::DepContext>::try_force_from_dep_node
  75:     0x7f9f5cda8969 - <rustc_query_system[8caf4755e287670e]::dep_graph::graph::DepGraph<rustc_middle[b6cf56a787d1e2a1]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt>
  76:     0x7f9f5cda8060 - <rustc_query_system[8caf4755e287670e]::dep_graph::graph::DepGraph<rustc_middle[b6cf56a787d1e2a1]::dep_graph::dep_node::DepKind>>::try_mark_green::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt>
  77:     0x7f9f5e0f3c59 - rustc_query_system[8caf4755e287670e]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt, (), ()>
  78:     0x7f9f5e0f2e77 - rustc_query_system[8caf4755e287670e]::query::plumbing::try_execute_query::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt, rustc_query_system[8caf4755e287670e]::query::caches::DefaultCache<(), ()>>
  79:     0x7f9f5e0f2a21 - rustc_query_system[8caf4755e287670e]::query::plumbing::get_query::<rustc_query_impl[232efbc2900411f9]::queries::typeck_item_bodies, rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt>
  80:     0x7f9f5ddfe4bf - <rustc_session[98f7faf1d37bb5fb]::session::Session>::time::<(), rustc_typeck[8db86e16038c4234]::check_crate::{closure#7}>
  81:     0x7f9f5ddfbd43 - rustc_typeck[8db86e16038c4234]::check_crate
  82:     0x7f9f5ddf7917 - rustc_interface[f934826ba4c12dd9]::passes::analysis
  83:     0x7f9f5e1b22bc - <rustc_query_system[8caf4755e287670e]::dep_graph::graph::DepGraph<rustc_middle[b6cf56a787d1e2a1]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b6cf56a787d1e2a1]::ty::context::TyCtxt, (), core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>
  84:     0x7f9f5e1b1aab - rustc_query_system[8caf4755e287670e]::query::plumbing::try_execute_query::<rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt, rustc_query_system[8caf4755e287670e]::query::caches::DefaultCache<(), core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>>
  85:     0x7f9f5e1b15fe - rustc_query_system[8caf4755e287670e]::query::plumbing::get_query::<rustc_query_impl[232efbc2900411f9]::queries::analysis, rustc_query_impl[232efbc2900411f9]::plumbing::QueryCtxt>
  86:     0x7f9f5db8bd87 - <rustc_interface[f934826ba4c12dd9]::passes::QueryContext>::enter::<rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>
  87:     0x7f9f5db8497f - <rustc_interface[f934826ba4c12dd9]::interface::Compiler>::enter::<rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}::{closure#2}, core[6fcc70bcc91a5bf5]::result::Result<core[6fcc70bcc91a5bf5]::option::Option<rustc_interface[f934826ba4c12dd9]::queries::Linker>, rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>
  88:     0x7f9f5db7986a - rustc_span[721a57c036170ce]::with_source_map::<core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>, rustc_interface[f934826ba4c12dd9]::interface::create_compiler_and_run<core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>, rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}>::{closure#1}>
  89:     0x7f9f5db791a2 - <scoped_tls[80743de900a7f844]::ScopedKey<rustc_span[721a57c036170ce]::SessionGlobals>>::set::<rustc_interface[f934826ba4c12dd9]::interface::run_compiler<core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>, rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}>::{closure#0}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>
  90:     0x7f9f5db775cf - std[306a94a967d8f5ee]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[f934826ba4c12dd9]::util::run_in_thread_pool_with_globals<rustc_interface[f934826ba4c12dd9]::interface::run_compiler<core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>, rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}>::{closure#0}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>::{closure#0}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>
  91:     0x7f9f5e2310b9 - <<std[306a94a967d8f5ee]::thread::Builder>::spawn_unchecked_<rustc_interface[f934826ba4c12dd9]::util::run_in_thread_pool_with_globals<rustc_interface[f934826ba4c12dd9]::interface::run_compiler<core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>, rustc_driver[4568cc0a685fd94d]::run_compiler::{closure#1}>::{closure#0}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>::{closure#0}, core[6fcc70bcc91a5bf5]::result::Result<(), rustc_errors[5fcb1a1f56a762e6]::ErrorGuaranteed>>::{closure#1} as core[6fcc70bcc91a5bf5]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  92:     0x7f9f5bb42723 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h56d5fc072706762b
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/alloc/src/boxed.rs:1935:9
  93:     0x7f9f5bb42723 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h41deef8e33b824bb
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/alloc/src/boxed.rs:1935:9
  94:     0x7f9f5bb42723 - std::sys::unix::thread::Thread::new::thread_start::ha6436304a1170bba
                               at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/sys/unix/thread.rs:108:17
  95:     0x7f9f5b88fb43 - start_thread
                               at ./nptl/./nptl/pthread_create.c:442:8
  96:     0x7f9f5b921a00 - clone3
                               at ./misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
  97:                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.64.0 (a55dd71d5 2022-09-19) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [typeck] type-checking `main`
#1 [typeck_item_bodies] type-checking all item bodies
#2 [analysis] running analysis passes on this crate
end of query stack

@AntoineSebert AntoineSebert added C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 20, 2022
@AntoineSebert
Copy link
Author

The code snippet is part of an application made with the https://docs.rs/warp/latest/warp/ crate.
I am not allowed to share more of the code, unfortunately.

@rustbot rustbot added the E-needs-mcve Call for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Example label Oct 20, 2022
@compiler-errors
Copy link
Member

@AntoineSebert can you verify that this still crashes on nightly Rust?

@AntoineSebert
Copy link
Author

This does not crash on nightly Rust, but produces an error E0308:

error[E0308]: mismatched types
    --> src/main.rs:130:12
     |
130  | ...                   .or(interfaces::ossi::lid_handler(lid, parameters))
     |                        -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `Result`, found opaque type
     |                        |
     |                        arguments to this function are incorrect
     |
note: while checking the return type of the `async fn`
    --> src/interfaces/ossi.rs:621:6
     |
621  | ) -> Result<StatusCode, Rejection> {
     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ checked the `Output` of this `async fn`, found opaque type
     = note:     expected enum `Result<StatusCode, _>`
             found opaque type `impl Future<Output = Result<StatusCode, Rejection>>`
note: associated function defined here
    --> /home/antoine/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/result.rs:1409:18
     |
1409 |     pub const fn or<F>(self, res: Result<T, F>) -> Result<T, F>
     |                  ^^
help: consider `await`ing on the `Future`
     |
130  |                             .or(interfaces::ossi::lid_handler(lid, parameters).await)
     |                                                                               ++++++
help: try wrapping the expression in `Err`
     |
130  |                             .or(Err(interfaces::ossi::lid_handler(lid, parameters)))
     |                                 ++++                                              +

I had already noticed yesterday that there was an issue in my code and created a workaround.

@compiler-errors
Copy link
Member

This should be fixed on stable rust 1.65 (due to #99928), so I'll close it.

@AntoineSebert
Copy link
Author

Great, thanks !

@compiler-errors compiler-errors self-assigned this Mar 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. E-needs-mcve Call for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Example I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants