Closed
Description
Code
Code is available at MilkFather/rustc-ice-221120.
Error output
error: internal compiler error: no errors encountered even though `delay_span_bug` issued
error: internal compiler error: broken MIR in DropGlue(DefId(2:2801 ~ core[590f]::ptr::drop_in_place), Some(hyper::proto::h1::dispatch::Server<hyper::service::util::ServiceFn<fn(http::request::Request<jsonrpsee::jsonrpsee_server::logger::Body>) -> impl std::future::Future<Output = std::result::Result<http::response::Response<jsonrpsee::jsonrpsee_server::logger::Body>, std::convert::Infallible>> {jsonrpsee::jsonrpsee_server::transport::http::reject_connection::{closure#0}::reject}, jsonrpsee::jsonrpsee_server::logger::Body>, jsonrpsee::jsonrpsee_server::logger::Body>)) (after phase change to runtime-optimized) at bb0[0]:
Field projection `(*_1).field[0]` specified type `std::pin::Pin<std::boxed::Box<std::option::Option<std::future::from_generator::GenFuture<[static generator@jsonrpsee::jsonrpsee_server::transport::http::reject_connection::{closure#0}::reject::{closure#0}]>>>>`, but actual type is `std::pin::Pin<std::boxed::Box<std::option::Option<<hyper::service::util::ServiceFn<fn(http::request::Request<jsonrpsee::jsonrpsee_server::logger::Body>) -> impl std::future::Future<Output = std::result::Result<http::response::Response<jsonrpsee::jsonrpsee_server::logger::Body>, std::convert::Infallible>> {jsonrpsee::jsonrpsee_server::transport::http::reject_connection::{closure#0}::reject}, jsonrpsee::jsonrpsee_server::logger::Body> as hyper::service::http::HttpService<jsonrpsee::jsonrpsee_server::logger::Body>>::Future>>>`
|
= note: delayed at compiler/rustc_const_eval/src/transform/validate.rs:88:36
thread 'rustc' panicked at 'Box<dyn Any>', compiler/rustc_errors/src/lib.rs:1591:13
stack backtrace:
0: 0x108d2d132 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h439ad59891a6d893
1: 0x108d8bb8a - core::fmt::write::hc6febfea48992551
2: 0x108d1f3ec - std::io::Write::write_fmt::h25befaf232726d5d
3: 0x108d2cefa - std::sys_common::backtrace::print::he983e0dd711e6589
4: 0x108d30226 - std::panicking::default_hook::{{closure}}::hbd746f32dacb7b9e
5: 0x108d2ff77 - std::panicking::default_hook::h0bd2fa66d45f4333
6: 0x1190db07d - rustc_driver[f66184a09ea1af9]::DEFAULT_HOOK::{closure#0}::{closure#0}
7: 0x108d30a0d - std::panicking::rust_panic_with_hook::hf33328f60da8c5e5
8: 0x11dade5e7 - std[a80ca8a44b17762]::panicking::begin_panic::<rustc_errors[8d925088020ddfb8]::ExplicitBug>::{closure#0}
9: 0x11dadc8a9 - std[a80ca8a44b17762]::sys_common::backtrace::__rust_end_short_backtrace::<std[a80ca8a44b17762]::panicking::begin_panic<rustc_errors[8d925088020ddfb8]::ExplicitBug>::{closure#0}, !>
10: 0x11dee72e9 - std[a80ca8a44b17762]::panicking::begin_panic::<rustc_errors[8d925088020ddfb8]::ExplicitBug>
11: 0x11dace3d9 - std[a80ca8a44b17762]::panic::panic_any::<rustc_errors[8d925088020ddfb8]::ExplicitBug>
12: 0x11dad5285 - <rustc_errors[8d925088020ddfb8]::HandlerInner>::flush_delayed::<alloc[9e38621ce80a9baa]::vec::Vec<rustc_errors[8d925088020ddfb8]::diagnostic::Diagnostic>, &str>
13: 0x11dad1069 - <rustc_errors[8d925088020ddfb8]::HandlerInner as core[590ff3257fc61341]::ops::drop::Drop>::drop
14: 0x11905f58a - core[590ff3257fc61341]::ptr::drop_in_place::<rustc_session[ff40f0dc0b56536b]::parse::ParseSess>
15: 0x119060cfb - core[590ff3257fc61341]::ptr::drop_in_place::<rustc_session[ff40f0dc0b56536b]::session::Session>
16: 0x1190c78ae - core[590ff3257fc61341]::ptr::drop_in_place::<rustc_interface[f7516dff5d7731bd]::interface::Compiler>
17: 0x1190b12f9 - rustc_span[6cad3b576cc36359]::with_source_map::<core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>, rustc_interface[f7516dff5d7731bd]::interface::run_compiler<core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>, rustc_driver[f66184a09ea1af9]::run_compiler::{closure#1}>::{closure#0}::{closure#1}>
18: 0x1190a86ec - <scoped_tls[1f60157cfa23d73b]::ScopedKey<rustc_span[6cad3b576cc36359]::SessionGlobals>>::set::<rustc_interface[f7516dff5d7731bd]::interface::run_compiler<core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>, rustc_driver[f66184a09ea1af9]::run_compiler::{closure#1}>::{closure#0}, core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>>
19: 0x11907096a - std[a80ca8a44b17762]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[f7516dff5d7731bd]::util::run_in_thread_pool_with_globals<rustc_interface[f7516dff5d7731bd]::interface::run_compiler<core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>, rustc_driver[f66184a09ea1af9]::run_compiler::{closure#1}>::{closure#0}, core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>>
20: 0x119052eab - <<std[a80ca8a44b17762]::thread::Builder>::spawn_unchecked_<rustc_interface[f7516dff5d7731bd]::util::run_in_thread_pool_with_globals<rustc_interface[f7516dff5d7731bd]::interface::run_compiler<core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>, rustc_driver[f66184a09ea1af9]::run_compiler::{closure#1}>::{closure#0}, core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[590ff3257fc61341]::result::Result<(), rustc_errors[8d925088020ddfb8]::ErrorGuaranteed>>::{closure#1} as core[590ff3257fc61341]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
21: 0x108d39dc7 - std::sys::unix::thread::Thread::new::thread_start::h935368a05c7abfbe
22: 0x7ff81df254e1 - __pthread_start
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.67.0-nightly (c5d82ed7a 2022-11-19) running on x86_64-apple-darwin
note: compiler flags: --crate-type bin -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C incremental=[REDACTED]
note: some of the compiler flags provided by cargo are hidden
Backtrace
0: std::panicking::begin_panic::<rustc_errors::ExplicitBug>
1: std::panic::panic_any::<rustc_errors::ExplicitBug>
2: <rustc_errors::HandlerInner>::flush_delayed::<alloc::vec::Vec<rustc_errors::diagnostic::Diagnostic>, &str>
3: <rustc_errors::HandlerInner as core::ops::drop::Drop>::drop
4: core::ptr::drop_in_place::<rustc_session::parse::ParseSess>
5: core::ptr::drop_in_place::<rustc_session::session::Session>
6: core::ptr::drop_in_place::<rustc_interface::interface::Compiler>
7: rustc_span::with_source_map::<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#0}::{closure#1}>
8: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
I ran a bisect before writing this issue, it says the regression came from nightly-2022-11-20
, and everything worked fine in nightly-2022-11-19
.
Metadata
Metadata
Assignees
Labels
Category: This is a bug.Call for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Critical priorityRelevant to the compiler team, which will review and decide on the PR/issue.Performance or correctness regression from stable to nightly.