Skip to content

no errors encountered even though delay_span_bug issued #101548

Description

@infiniwave

The compiler panics while compiling, both for debug and release. cargo check does not find any errors. The code compiles on stable except for the nightly-only features.

Meta

rustc --version --verbose:

rustc 1.65.0-nightly (78a891d36 2022-09-06)
binary: rustc
commit-hash: 78a891d364a7358ed9eb9c93099ba2f3e6817ca6
commit-date: 2022-09-06
host: x86_64-unknown-linux-gnu
release: 1.65.0-nightly
LLVM version: 15.0.0

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:2767 ~ core[31aa]::ptr::drop_in_place), Some(tokio::runtime::task::core::Stage<warp::hyper::server::server::new_svc::NewSvcTask<warp::hyper::server::conn::AddrStream, futures_util::future::Ready<std::result::Result<warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, std::convert::Infallible>>, warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, warp::hyper::common::exec::Exec, warp::hyper::server::server::NoopWatcher>>)) (after pass PhaseChange-Runtime(Optimized)) at bb3[0]:
                                Field projection `((*_1) as Finished).field[0]` specified type `std::result::Result<(), tokio::runtime::task::error::JoinError>`, but actual type is std::result::Result<<warp::hyper::server::server::new_svc::NewSvcTask<warp::hyper::server::conn::AddrStream, futures_util::future::Ready<std::result::Result<warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, std::convert::Infallible>>, warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, warp::hyper::common::exec::Exec, warp::hyper::server::server::NoopWatcher> as warp::Future>::Output, tokio::runtime::task::error::JoinError>
   --> /home/administrator/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:487:1
    |
487 | pub unsafe fn drop_in_place<T: ?Sized>(to_drop: *mut T) {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: delayed at compiler/rustc_const_eval/src/transform/validate.rs:127:36

error: internal compiler error: broken MIR in DropGlue(DefId(2:2767 ~ core[31aa]::ptr::drop_in_place), Some(warp::hyper::server::server::new_svc::State<warp::hyper::server::conn::AddrStream, futures_util::future::Ready<std::result::Result<warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, std::convert::Infallible>>, warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, warp::hyper::common::exec::Exec, warp::hyper::server::server::NoopWatcher>)) (after pass PhaseChange-Runtime(Optimized)) at bb3[0]:
                                Field projection `((*_1) as Connected).field[0]` specified type `warp::hyper::server::conn::upgrades::UpgradeableConnection<warp::hyper::server::conn::AddrStream, warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, warp::hyper::common::exec::Exec>`, but actual type is <warp::hyper::server::server::NoopWatcher as warp::hyper::server::server::Watcher<warp::hyper::server::conn::AddrStream, warp::hyper::service::util::ServiceFn<[closure@warp::Server<warp::filter::map::Map<warp::filter::and::And<warp::filter::and::And<warp::filter::FilterFn<[closure@warp::filters::method::method_is<[closure@warp::post::{closure#0}]>::{closure#0}]>, warp::filter::and::And<warp::filter::and::And<warp::filter::and::And<warp::filters::any::Any, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::path::Exact<warp::path::internal::Opaque<main::main::{closure#0}::__StaticPath>>>, warp::filter::FilterFn<[closure@warp::path::end::{closure#0}]>>>, warp::filter::and_then::AndThen<warp::filter::FilterFn<[closure@warp::filter::filter_fn_one<[closure@warp::body::body::{closure#0}], futures_util::future::Ready<std::result::Result<warp::hyper::Body, warp::Rejection>>>::{closure#0}]>, [closure@warp::body::bytes::{closure#0}]>>, fn(warp::hyper::body::Bytes) -> impl warp::Reply {methods::rpc::routes}>>::bind_ephemeral<([u8; 4], u16)>::{closure#1}::{closure#0}::{closure#0}], warp::hyper::Body>, warp::hyper::common::exec::Exec>>::Future
   --> /home/administrator/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:487:1
    |
487 | pub unsafe fn drop_in_place<T: ?Sized>(to_drop: *mut T) {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: delayed at compiler/rustc_const_eval/src/transform/validate.rs:127:36

thread 'rustc' panicked at 'Box<dyn Any>', compiler/rustc_errors/src/lib.rs:1494:13
<backtrace>

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.65.0-nightly (78a891d36 2022-09-06) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type bin -C opt-level=3 -C embed-bitcode=no

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

query stack during panic:
end of query stack
error: could not compile `easylink`
Backtrace

stack backtrace:
   0:     0x7fd95152d210 - std::backtrace_rs::backtrace::libunwind::trace::h21646be08690cc40
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   1:     0x7fd95152d210 - std::backtrace_rs::backtrace::trace_unsynchronized::h9f1fe42f44553716
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fd95152d210 - std::sys_common::backtrace::_print_fmt::hab0a8a42ed612520
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7fd95152d210 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h8335f52e54d46ccf
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7fd95158802e - core::fmt::write::hfcbb54030acb2744
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/core/src/fmt/mod.rs:1202:17
   5:     0x7fd95151dcd5 - std::io::Write::write_fmt::hed351c44331cd179
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/io/mod.rs:1679:15
   6:     0x7fd95152fe63 - std::sys_common::backtrace::_print::h40cfc30b9abc5c43
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7fd95152fe63 - std::sys_common::backtrace::print::h9d34bfe87c2cc4a0
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7fd95152fe63 - std::panicking::default_hook::{{closure}}::h7e3919c83aded8ae
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/panicking.rs:295:22
   9:     0x7fd95152fb4f - std::panicking::default_hook::h7f7edfc94586dad5
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/panicking.rs:314:9
  10:     0x7fd953d9c4e1 - rustc_driver[2795d98b07d801db]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7fd95153069d - std::panicking::rust_panic_with_hook::h62ce697bbafdcf0b
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/panicking.rs:702:17
  12:     0x7fd954ee2041 - std[8e0d3d70c3a8d58a]::panicking::begin_panic::<rustc_errors[bdb1f8fbd8907e61]::ExplicitBug>::{closure#0}
  13:     0x7fd954ee1b96 - std[8e0d3d70c3a8d58a]::sys_common::backtrace::__rust_end_short_backtrace::<std[8e0d3d70c3a8d58a]::panicking::begin_panic<rustc_errors[bdb1f8fbd8907e61]::ExplicitBug>::{closure#0}, !>
  14:     0x7fd954ee1b56 - std[8e0d3d70c3a8d58a]::panicking::begin_panic::<rustc_errors[bdb1f8fbd8907e61]::ExplicitBug>
  15:     0x7fd954ee4776 - std[8e0d3d70c3a8d58a]::panic::panic_any::<rustc_errors[bdb1f8fbd8907e61]::ExplicitBug>
  16:     0x7fd9538f2cd8 - <rustc_errors[bdb1f8fbd8907e61]::HandlerInner as core[31aaf346d0c050fe]::ops::drop::Drop>::drop
  17:     0x7fd952b96c68 - core[31aaf346d0c050fe]::ptr::drop_in_place::<rustc_session[e3515b6a49b6e8ce]::parse::ParseSess>
  18:     0x7fd952b54fe8 - <alloc[812cd34b3dffb023]::rc::Rc<rustc_session[e3515b6a49b6e8ce]::session::Session> as core[31aaf346d0c050fe]::ops::drop::Drop>::drop
  19:     0x7fd952b51f9d - core[31aaf346d0c050fe]::ptr::drop_in_place::<rustc_interface[9bc1f0c6c5e6f2d9]::interface::Compiler>
  20:     0x7fd952b4f7cf - rustc_interface[9bc1f0c6c5e6f2d9]::interface::create_compiler_and_run::<core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>, rustc_driver[2795d98b07d801db]::run_compiler::{closure#1}>
  21:     0x7fd952b4dce1 - <scoped_tls[cfe2a4079d5abda6]::ScopedKey<rustc_span[fcbe8f7b61d422ec]::SessionGlobals>>::set::<rustc_interface[9bc1f0c6c5e6f2d9]::interface::run_compiler<core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>, rustc_driver[2795d98b07d801db]::run_compiler::{closure#1}>::{closure#0}, core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>>
  22:     0x7fd952b4d9cf - std[8e0d3d70c3a8d58a]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[9bc1f0c6c5e6f2d9]::util::run_in_thread_pool_with_globals<rustc_interface[9bc1f0c6c5e6f2d9]::interface::run_compiler<core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>, rustc_driver[2795d98b07d801db]::run_compiler::{closure#1}>::{closure#0}, core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>>::{closure#0}, core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>>
  23:     0x7fd953c0aba9 - <<std[8e0d3d70c3a8d58a]::thread::Builder>::spawn_unchecked_<rustc_interface[9bc1f0c6c5e6f2d9]::util::run_in_thread_pool_with_globals<rustc_interface[9bc1f0c6c5e6f2d9]::interface::run_compiler<core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>, rustc_driver[2795d98b07d801db]::run_compiler::{closure#1}>::{closure#0}, core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>>::{closure#0}, core[31aaf346d0c050fe]::result::Result<(), rustc_errors[bdb1f8fbd8907e61]::ErrorGuaranteed>>::{closure#1} as core[31aaf346d0c050fe]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  24:     0x7fd95153a4f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hdf9c758750ff5822
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/alloc/src/boxed.rs:1940:9
  25:     0x7fd95153a4f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0f4b4f05b38d1a00
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/alloc/src/boxed.rs:1940:9
  26:     0x7fd95153a4f3 - std::sys::unix::thread::Thread::new::thread_start::hfdfaccc5f3b267e1
                               at /rustc/78a891d364a7358ed9eb9c93099ba2f3e6817ca6/library/std/src/sys/unix/thread.rs:108:17
  27:     0x7fd95128fb43 - <unknown>
  28:     0x7fd951321a00 - <unknown>
  29:                0x0 - <unknown>

Activity

  1. added
    C-bugCategory: This is a bug.
    I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
    T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.
    on Sep 7, 2022
  2. compiler-errors commented on Sep 7, 2022

    @compiler-errors
    Contributor

    This should be fixed by #101437

  3. infiniwave commented on Sep 9, 2022

    @infiniwave
    Author

    With the fix it now builds on last night's nightly build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions