Skip to content

[ICE] when compiling abi_stable: Failed to normalize ..., maybe try to call try_normalize_erasing_regions instead #113900

Closed
@oxalica

Description

@oxalica

Code

Create an empty crate, add abi_stable to dependencies, and cargo check.

[dependencies]
abi_stable = "0.11"

Affected release channels

  • Previous Stable
  • Current Stable
  • Current Beta
  • Current Nightly

Rust Version

First on: 1.72.0-nightly (0ab38e95b 2023-07-03)

Also reproduced on:
rustc 1.72.0-beta.1 (7ba605cd9 2023-07-11)
binary: rustc
commit-hash: 7ba605cd90d6467bda469d1cd2148ac32ea562bf
commit-date: 2023-07-11
host: x86_64-unknown-linux-gnu
release: 1.72.0-beta.1
LLVM version: 16.0.5

Current error output

error: internal compiler error: compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:195:90: Failed to normalize unsafe extern "C" fn(sabi_types::rref::RRef<'_, marker_type::ErasedObject>) -> std_types::result::RResult<<I as erased_types::traits::GetSerializeProxyType<'_>>::ProxyType, std_types::std_error::RBoxError_>, maybe try to call `try_normalize_erasing_regions` instead

Backtrace

Compiling abi_stable v0.11.1
error: internal compiler error: compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:195:90: Failed to normalize unsafe extern "C" fn(sabi_types::rref::RRef<'_, marker_type::ErasedObject>) -> std_types::result::RResult<<I as erased_types::traits::GetSerializeProxyType<'_>>::ProxyType, std_types::std_error::RBoxError_>, maybe try to call `try_normalize_erasing_regions` instead

thread 'rustc' panicked at 'Box<dyn Any>', /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/compiler/rustc_errors/src/lib.rs:1650:9
stack backtrace:
   0:     0x7fadb1d28ac1 - std::backtrace_rs::backtrace::libunwind::trace::h468530b9ed459a5e
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fadb1d28ac1 - std::backtrace_rs::backtrace::trace_unsynchronized::h1a2d5b62e76fd25f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fadb1d28ac1 - std::sys_common::backtrace::_print_fmt::h260037bf2065d399
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7fadb1d28ac1 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hd7fc81831607cf60
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7fadb1d8edcf - core::fmt::rt::Argument::fmt::h01afab03bee30eeb
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/core/src/fmt/rt.rs:138:9
   5:     0x7fadb1d8edcf - core::fmt::write::h83c42ba3ca76c4aa
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/core/src/fmt/mod.rs:1094:21
   6:     0x7fadb1d1b407 - std::io::Write::write_fmt::h2430223c04b84a0f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/io/mod.rs:1714:15
   7:     0x7fadb1d288d5 - std::sys_common::backtrace::_print::h7c08448e622e2b58
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7fadb1d288d5 - std::sys_common::backtrace::print::h8f55173e6a80d5ad
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7fadb1d2b6b3 - std::panicking::default_hook::{{closure}}::heb93e2549b3b187f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:269:22
  10:     0x7fadb1d2b444 - std::panicking::default_hook::h915abe4b17644eca
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:288:9
  11:     0x7fadb508497b - <rustc_driver_impl[146e28695489c3b6]::install_ice_hook::{closure#0} as core[cc24119d2f561fcf]::ops::function::FnOnce<(&core[cc24119d2f561fcf]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
  12:     0x7fadb1d2bede - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h092e69b77f2ec5c7
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2024:9
  13:     0x7fadb1d2bede - std::panicking::rust_panic_with_hook::ha1753497d761687d
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:709:13
  14:     0x7fadb5636791 - std[adcf6cea4a8307ac]::panicking::begin_panic::<rustc_errors[aec17b3fed28f496]::ExplicitBug>::{closure#0}
  15:     0x7fadb5634e36 - std[adcf6cea4a8307ac]::sys_common::backtrace::__rust_end_short_backtrace::<std[adcf6cea4a8307ac]::panicking::begin_panic<rustc_errors[aec17b3fed28f496]::ExplicitBug>::{closure#0}, !>
  16:     0x7fadb56152d6 - std[adcf6cea4a8307ac]::panicking::begin_panic::<rustc_errors[aec17b3fed28f496]::ExplicitBug>
  17:     0x7fadb558b0f4 - <rustc_errors[aec17b3fed28f496]::HandlerInner>::bug::<alloc[15e4fbd2c78cea59]::string::String>
  18:     0x7fadb558af76 - <rustc_errors[aec17b3fed28f496]::Handler>::bug::<alloc[15e4fbd2c78cea59]::string::String>
  19:     0x7fadb5586bbc - rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt::<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}
  20:     0x7fadb55869fa - rustc_middle[e56c0de64a470188]::ty::context::tls::with_opt::<rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  21:     0x7fadb55869ca - rustc_middle[e56c0de64a470188]::ty::context::tls::with_context_opt::<rustc_middle[e56c0de64a470188]::ty::context::tls::with_opt<rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  22:     0x7fadb33623ad - rustc_middle[e56c0de64a470188]::util::bug::bug_fmt
  23:     0x7fadb3416251 - <rustc_middle[e56c0de64a470188]::ty::normalize_erasing_regions::NormalizeAfterErasingRegionsFolder as rustc_type_ir[58512d4361c0fd4]::fold::TypeFolder<rustc_middle[e56c0de64a470188]::ty::context::TyCtxt>>::fold_ty
  24:     0x7fadb31532b4 - <rustc_lint[aae1a744e9c8a593]::types::ImproperCTypesVisitor>::check_type_for_ffi_and_report_errors
  25:     0x7fadb3291370 - <rustc_lint[aae1a744e9c8a593]::types::ImproperCTypesDefinitions>::check_ty_maybe_containing_foreign_fnptr
  26:     0x7fadb314b1f8 - <rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass as rustc_lint[aae1a744e9c8a593]::passes::LateLintPass>::check_item
  27:     0x7fadb3146391 - rustc_hir[b06bd0061bc5c78]::intravisit::walk_mod::<rustc_lint[aae1a744e9c8a593]::late::LateContextAndPass<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass>>
  28:     0x7fadb3145ca6 - rustc_lint[aae1a744e9c8a593]::late::late_lint_mod::<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass>
  29:     0x7fadb3145a5c - rustc_lint[aae1a744e9c8a593]::lint_mod
  30:     0x7fadb3c5a78c - rustc_query_impl[5e6cc1cea09d293]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 0usize]>>
  31:     0x7fadb3c5a76e - <rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::dynamic_query::{closure#2} as core[cc24119d2f561fcf]::ops::function::FnOnce<(rustc_middle[e56c0de64a470188]::ty::context::TyCtxt, rustc_span[5b039f53ab17f7a0]::def_id::LocalDefId)>>::call_once
  32:     0x7fadb36d4d2f - rustc_query_system[3139d05a59a2b03]::query::plumbing::try_execute_query::<rustc_query_impl[5e6cc1cea09d293]::DynamicConfig<rustc_query_system[3139d05a59a2b03]::query::caches::VecCache<rustc_span[5b039f53ab17f7a0]::def_id::LocalDefId, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[5e6cc1cea09d293]::plumbing::QueryCtxt, false>
  33:     0x7fadb49d0d84 - rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::get_query_non_incr::__rust_end_short_backtrace
  34:     0x7fadb44a6375 - std[adcf6cea4a8307ac]::panicking::try::<(), core[cc24119d2f561fcf]::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures[5f6be1826adedcab]::sync::par_for_each_in<&[rustc_hir[b06bd0061bc5c78]::hir_id::OwnerId], <rustc_middle[e56c0de64a470188]::hir::map::Map>::par_for_each_module<rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}::{closure#0}>>
  35:     0x7fadb44a6297 - rustc_data_structures[5f6be1826adedcab]::sync::par_for_each_in::<&[rustc_hir[b06bd0061bc5c78]::hir_id::OwnerId], <rustc_middle[e56c0de64a470188]::hir::map::Map>::par_for_each_module<rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>
  36:     0x7fadb44a6005 - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}>
  37:     0x7fadb44a5c5e - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}>
  38:     0x7fadb44a57f9 - std[adcf6cea4a8307ac]::panicking::try::<(), core[cc24119d2f561fcf]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}>>
  39:     0x7fadb44a4c00 - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}>
  40:     0x7fadb44a2887 - rustc_interface[a6e5b8ea369f438f]::passes::analysis
  41:     0x7fadb454400a - rustc_query_impl[5e6cc1cea09d293]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 1usize]>>
  42:     0x7fadb4543ff9 - <rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::dynamic_query::{closure#2} as core[cc24119d2f561fcf]::ops::function::FnOnce<(rustc_middle[e56c0de64a470188]::ty::context::TyCtxt, ())>>::call_once
  43:     0x7fadb46d8818 - rustc_query_system[3139d05a59a2b03]::query::plumbing::try_execute_query::<rustc_query_impl[5e6cc1cea09d293]::DynamicConfig<rustc_query_system[3139d05a59a2b03]::query::caches::SingleCache<rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[5e6cc1cea09d293]::plumbing::QueryCtxt, false>
  44:     0x7fadb46d85e9 - rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
  45:     0x7fadb420bbd5 - <rustc_middle[e56c0de64a470188]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  46:     0x7fadb420b202 - <rustc_interface[a6e5b8ea369f438f]::interface::Compiler>::enter::<rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}::{closure#2}, core[cc24119d2f561fcf]::result::Result<core[cc24119d2f561fcf]::option::Option<rustc_interface[a6e5b8ea369f438f]::queries::Linker>, rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  47:     0x7fadb4201d25 - rustc_span[5b039f53ab17f7a0]::set_source_map::<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  48:     0x7fadb4201146 - <scoped_tls[65afcd617045176b]::ScopedKey<rustc_span[5b039f53ab17f7a0]::SessionGlobals>>::set::<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  49:     0x7fadb420070c - std[adcf6cea4a8307ac]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[a6e5b8ea369f438f]::util::run_in_thread_pool_with_globals<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  50:     0x7fadb48ce4fe - <<std[adcf6cea4a8307ac]::thread::Builder>::spawn_unchecked_<rustc_interface[a6e5b8ea369f438f]::util::run_in_thread_pool_with_globals<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#1} as core[cc24119d2f561fcf]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  51:     0x7fadb1d36355 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfb71eecc96172696
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2010:9
  52:     0x7fadb1d36355 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha18d3bb12fa77a3c
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2010:9
  53:     0x7fadb1d36355 - std::sys::unix::thread::Thread::new::thread_start::h827451defd93f6e7
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys/unix/thread.rs:108:17
  54:     0x7fadb1979b43 - <unknown>
  55:     0x7fadb1a0ba00 - <unknown>
  56:                0x0 - <unknown>

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.72.0-nightly (0ab38e95b 2023-07-03) running on x86_64-unknown-linux-gnu

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

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

query stack during panic:
#0 [lint_mod] linting module `erased_types::vtable`
#1 [analysis] running analysis passes on this crate
end of query stack
error: internal compiler error: compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:195:90: Failed to normalize for<'a> unsafe extern "C" fn(sabi_types::rref::RRef<'a, marker_type::ErasedObject>) -> std_types::result::RResult<<I as nonexhaustive_enum::traits::GetSerializeEnumProxy<E>>::ProxyType, std_types::std_error::RBoxError_>, maybe try to call `try_normalize_erasing_regions` instead

thread 'rustc' panicked at 'Box<dyn Any>', /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/compiler/rustc_errors/src/lib.rs:1650:9
stack backtrace:
   0:     0x7fadb1d28ac1 - std::backtrace_rs::backtrace::libunwind::trace::h468530b9ed459a5e
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fadb1d28ac1 - std::backtrace_rs::backtrace::trace_unsynchronized::h1a2d5b62e76fd25f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fadb1d28ac1 - std::sys_common::backtrace::_print_fmt::h260037bf2065d399
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7fadb1d28ac1 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hd7fc81831607cf60
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7fadb1d8edcf - core::fmt::rt::Argument::fmt::h01afab03bee30eeb
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/core/src/fmt/rt.rs:138:9
   5:     0x7fadb1d8edcf - core::fmt::write::h83c42ba3ca76c4aa
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/core/src/fmt/mod.rs:1094:21
   6:     0x7fadb1d1b407 - std::io::Write::write_fmt::h2430223c04b84a0f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/io/mod.rs:1714:15
   7:     0x7fadb1d288d5 - std::sys_common::backtrace::_print::h7c08448e622e2b58
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7fadb1d288d5 - std::sys_common::backtrace::print::h8f55173e6a80d5ad
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7fadb1d2b6b3 - std::panicking::default_hook::{{closure}}::heb93e2549b3b187f
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:269:22
  10:     0x7fadb1d2b444 - std::panicking::default_hook::h915abe4b17644eca
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:288:9
  11:     0x7fadb508497b - <rustc_driver_impl[146e28695489c3b6]::install_ice_hook::{closure#0} as core[cc24119d2f561fcf]::ops::function::FnOnce<(&core[cc24119d2f561fcf]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
  12:     0x7fadb1d2bede - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h092e69b77f2ec5c7
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2024:9
  13:     0x7fadb1d2bede - std::panicking::rust_panic_with_hook::ha1753497d761687d
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/panicking.rs:709:13
  14:     0x7fadb5636791 - std[adcf6cea4a8307ac]::panicking::begin_panic::<rustc_errors[aec17b3fed28f496]::ExplicitBug>::{closure#0}
  15:     0x7fadb5634e36 - std[adcf6cea4a8307ac]::sys_common::backtrace::__rust_end_short_backtrace::<std[adcf6cea4a8307ac]::panicking::begin_panic<rustc_errors[aec17b3fed28f496]::ExplicitBug>::{closure#0}, !>
  16:     0x7fadb56152d6 - std[adcf6cea4a8307ac]::panicking::begin_panic::<rustc_errors[aec17b3fed28f496]::ExplicitBug>
  17:     0x7fadb558b0f4 - <rustc_errors[aec17b3fed28f496]::HandlerInner>::bug::<alloc[15e4fbd2c78cea59]::string::String>
  18:     0x7fadb558af76 - <rustc_errors[aec17b3fed28f496]::Handler>::bug::<alloc[15e4fbd2c78cea59]::string::String>
  19:     0x7fadb5586bbc - rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt::<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}
  20:     0x7fadb55869fa - rustc_middle[e56c0de64a470188]::ty::context::tls::with_opt::<rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  21:     0x7fadb55869ca - rustc_middle[e56c0de64a470188]::ty::context::tls::with_context_opt::<rustc_middle[e56c0de64a470188]::ty::context::tls::with_opt<rustc_middle[e56c0de64a470188]::util::bug::opt_span_bug_fmt<rustc_span[5b039f53ab17f7a0]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  22:     0x7fadb33623ad - rustc_middle[e56c0de64a470188]::util::bug::bug_fmt
  23:     0x7fadb3416251 - <rustc_middle[e56c0de64a470188]::ty::normalize_erasing_regions::NormalizeAfterErasingRegionsFolder as rustc_type_ir[58512d4361c0fd4]::fold::TypeFolder<rustc_middle[e56c0de64a470188]::ty::context::TyCtxt>>::fold_ty
  24:     0x7fadb31532b4 - <rustc_lint[aae1a744e9c8a593]::types::ImproperCTypesVisitor>::check_type_for_ffi_and_report_errors
  25:     0x7fadb3291370 - <rustc_lint[aae1a744e9c8a593]::types::ImproperCTypesDefinitions>::check_ty_maybe_containing_foreign_fnptr
  26:     0x7fadb314b1f8 - <rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass as rustc_lint[aae1a744e9c8a593]::passes::LateLintPass>::check_item
  27:     0x7fadb3146391 - rustc_hir[b06bd0061bc5c78]::intravisit::walk_mod::<rustc_lint[aae1a744e9c8a593]::late::LateContextAndPass<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass>>
  28:     0x7fadb3145ca6 - rustc_lint[aae1a744e9c8a593]::late::late_lint_mod::<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedModuleLateLintPass>
  29:     0x7fadb3145a5c - rustc_lint[aae1a744e9c8a593]::lint_mod
  30:     0x7fadb3c5a78c - rustc_query_impl[5e6cc1cea09d293]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 0usize]>>
  31:     0x7fadb3c5a76e - <rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::dynamic_query::{closure#2} as core[cc24119d2f561fcf]::ops::function::FnOnce<(rustc_middle[e56c0de64a470188]::ty::context::TyCtxt, rustc_span[5b039f53ab17f7a0]::def_id::LocalDefId)>>::call_once
  32:     0x7fadb36d4d2f - rustc_query_system[3139d05a59a2b03]::query::plumbing::try_execute_query::<rustc_query_impl[5e6cc1cea09d293]::DynamicConfig<rustc_query_system[3139d05a59a2b03]::query::caches::VecCache<rustc_span[5b039f53ab17f7a0]::def_id::LocalDefId, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[5e6cc1cea09d293]::plumbing::QueryCtxt, false>
  33:     0x7fadb49d0d84 - rustc_query_impl[5e6cc1cea09d293]::query_impl::lint_mod::get_query_non_incr::__rust_end_short_backtrace
  34:     0x7fadb44a6375 - std[adcf6cea4a8307ac]::panicking::try::<(), core[cc24119d2f561fcf]::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures[5f6be1826adedcab]::sync::par_for_each_in<&[rustc_hir[b06bd0061bc5c78]::hir_id::OwnerId], <rustc_middle[e56c0de64a470188]::hir::map::Map>::par_for_each_module<rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}::{closure#0}>>
  35:     0x7fadb44a6297 - rustc_data_structures[5f6be1826adedcab]::sync::par_for_each_in::<&[rustc_hir[b06bd0061bc5c78]::hir_id::OwnerId], <rustc_middle[e56c0de64a470188]::hir::map::Map>::par_for_each_module<rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>
  36:     0x7fadb44a6005 - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_lint[aae1a744e9c8a593]::late::check_crate<rustc_lint[aae1a744e9c8a593]::BuiltinCombinedLateLintPass, rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}::{closure#0}>
  37:     0x7fadb44a5c5e - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}>
  38:     0x7fadb44a57f9 - std[adcf6cea4a8307ac]::panicking::try::<(), core[cc24119d2f561fcf]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}::{closure#1}>>
  39:     0x7fadb44a4c00 - <rustc_session[1d3a915322f525ec]::session::Session>::time::<(), rustc_interface[a6e5b8ea369f438f]::passes::analysis::{closure#5}>
  40:     0x7fadb44a2887 - rustc_interface[a6e5b8ea369f438f]::passes::analysis
  41:     0x7fadb454400a - rustc_query_impl[5e6cc1cea09d293]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 1usize]>>
  42:     0x7fadb4543ff9 - <rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::dynamic_query::{closure#2} as core[cc24119d2f561fcf]::ops::function::FnOnce<(rustc_middle[e56c0de64a470188]::ty::context::TyCtxt, ())>>::call_once
  43:     0x7fadb46d8818 - rustc_query_system[3139d05a59a2b03]::query::plumbing::try_execute_query::<rustc_query_impl[5e6cc1cea09d293]::DynamicConfig<rustc_query_system[3139d05a59a2b03]::query::caches::SingleCache<rustc_middle[e56c0de64a470188]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[5e6cc1cea09d293]::plumbing::QueryCtxt, false>
  44:     0x7fadb46d85e9 - rustc_query_impl[5e6cc1cea09d293]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
  45:     0x7fadb420bbd5 - <rustc_middle[e56c0de64a470188]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  46:     0x7fadb420b202 - <rustc_interface[a6e5b8ea369f438f]::interface::Compiler>::enter::<rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}::{closure#2}, core[cc24119d2f561fcf]::result::Result<core[cc24119d2f561fcf]::option::Option<rustc_interface[a6e5b8ea369f438f]::queries::Linker>, rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  47:     0x7fadb4201d25 - rustc_span[5b039f53ab17f7a0]::set_source_map::<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  48:     0x7fadb4201146 - <scoped_tls[65afcd617045176b]::ScopedKey<rustc_span[5b039f53ab17f7a0]::SessionGlobals>>::set::<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  49:     0x7fadb420070c - std[adcf6cea4a8307ac]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[a6e5b8ea369f438f]::util::run_in_thread_pool_with_globals<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>
  50:     0x7fadb48ce4fe - <<std[adcf6cea4a8307ac]::thread::Builder>::spawn_unchecked_<rustc_interface[a6e5b8ea369f438f]::util::run_in_thread_pool_with_globals<rustc_interface[a6e5b8ea369f438f]::interface::run_compiler<core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>, rustc_driver_impl[146e28695489c3b6]::run_compiler::{closure#1}>::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[cc24119d2f561fcf]::result::Result<(), rustc_span[5b039f53ab17f7a0]::ErrorGuaranteed>>::{closure#1} as core[cc24119d2f561fcf]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  51:     0x7fadb1d36355 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfb71eecc96172696
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2010:9
  52:     0x7fadb1d36355 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha18d3bb12fa77a3c
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/alloc/src/boxed.rs:2010:9
  53:     0x7fadb1d36355 - std::sys::unix::thread::Thread::new::thread_start::h827451defd93f6e7
                               at /rustc/0ab38e95bb1cbf0bd038d359bdecbfa501f003a7/library/std/src/sys/unix/thread.rs:108:17
  54:     0x7fadb1979b43 - <unknown>
  55:     0x7fadb1a0ba00 - <unknown>
  56:                0x0 - <unknown>

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.72.0-nightly (0ab38e95b 2023-07-03) running on x86_64-unknown-linux-gnu

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

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

query stack during panic:
#0 [lint_mod] linting module `nonexhaustive_enum::vtable`
#1 [analysis] running analysis passes on this crate
end of query stack
error: could not compile `abi_stable` (lib)

Anything else?

Discovered on CI since 1.72.0-nightly (0ab38e9 2023-07-03). The previous version 839e9a6 2023-07-02 is good.

The breaking day is the same as #113436. I suspect this is also related to #108611. But fix to that #113457 does NOT fix this ICE though. cc @davidtwco

The error message is similar to #113272, but that occurs on an earlier version 2023-06-28. I guess it's unrelated.

Metadata

Metadata

Assignees

Labels

C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️P-mediumMedium priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-betaPerformance or correctness regression from stable to beta.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions