Skip to content
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

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

Closed
2 of 4 tasks
oxalica opened this issue Jul 20, 2023 · 2 comments · Fixed by #113921
Closed
2 of 4 tasks
Assignees
Labels
C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ P-medium Medium priority regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@oxalica
Copy link
Contributor

oxalica commented Jul 20, 2023

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.

@oxalica oxalica 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 Jul 20, 2023
@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Jul 20, 2023
@Jules-Bertholet
Copy link
Contributor

@rustbot label regression-from-stable-to-beta

@rustbot rustbot added regression-from-stable-to-beta Performance or correctness regression from stable to beta. I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels Jul 21, 2023
@davidtwco davidtwco self-assigned this Jul 21, 2023
@apiraino
Copy link
Contributor

WG-prioritization assigning priority (Zulip discussion).

@rustbot label -I-prioritize +P-medium

@rustbot rustbot added P-medium Medium priority and removed I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels Jul 24, 2023
@bors bors closed this as completed in fd56162 Jul 24, 2023
@apiraino apiraino removed the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Jul 25, 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. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ P-medium Medium priority regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants