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 with -Zbuild-std and -Zno-profiler-runtime #122296

Closed
egkoppel opened this issue Mar 10, 2024 · 7 comments
Closed

ICE when compiling with -Zbuild-std and -Zno-profiler-runtime #122296

egkoppel opened this issue Mar 10, 2024 · 7 comments
Labels
-Zbuild-std Unstable Cargo option: Compile the standard library yourself. 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.

Comments

@egkoppel
Copy link

Code

#![no_std]
#![no_main]

#[no_mangle]
extern "C" fn main() -> ! { loop {} }

#[panic_handler]
fn panic_handler(_: &core::panic::PanicInfo) -> ! { loop {} }

Compiling with cargo rustc -Zbuild-std=core --target x86_64-apple-darwin -- -C panic=abort is successful and produces a working executable. Adding -C instrument-coverage -Z no-profiler-runtime to the RUSTFLAGS environment variable produced the following compiler error. (Also tested with x86_64-unknown-linux-gnu and x86_64-unknown-none which produces the same results.)

Meta

rustc --version --verbose:

rustc 1.78.0-nightly (2d24fe591 2024-03-09)
binary: rustc
commit-hash: 2d24fe591f30386d6d5fc2bb941c78d7266bf10f
commit-date: 2024-03-09
host: x86_64-apple-darwin
release: 1.78.0-nightly
LLVM version: 18.1.0

Error output

   Compiling core v0.0.0 (/Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core)
   Compiling rustc-std-workspace-core v1.99.0 (/Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/rustc-std-workspace-core)
   Compiling compiler_builtins v0.1.108
error: internal compiler error: compiler/rustc_mir_transform/src/lib.rs:636:9: this intrinsic must be overridden by the codegen backend, it has no meaningful body
    --> /Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/intrinsics.rs:2694:1
     |
2694 | pub unsafe fn vtable_size(_ptr: *const ()) -> usize {
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

thread 'rustc' panicked at /rustc/2d24fe591f30386d6d5fc2bb941c78d7266bf10f/compiler/rustc_middle/src/util/bug.rs:34:50:
Box<dyn Any>
stack backtrace:
   0:        0x11068f0c3 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h71c3026b1389a205
   1:        0x1106dcc5b - core::fmt::write::h9391c2a197f59023
   2:        0x110684d0e - std::io::Write::write_fmt::hf6bc3b6c6dd697ae
   3:        0x11068eeb1 - std::sys_common::backtrace::print::h316f9ebc531d5b69
   4:        0x110691ed9 - std::panicking::default_hook::{{closure}}::h23394c2fda8f4aa8
   5:        0x110691c40 - std::panicking::default_hook::h587e57d5ad9cb599
   6:        0x11a4690cb - <alloc[11051e35162589e6]::boxed::Box<rustc_driver_impl[27b68babcb630957]::install_ice_hook::{closure#0}> as core[8694b2fdf70404c2]::ops::function::Fn<(&dyn for<'a, 'b> core[8694b2fdf70404c2]::ops::function::Fn<(&'a core[8694b2fdf70404c2]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[8694b2fdf70404c2]::marker::Send + core[8694b2fdf70404c2]::marker::Sync, &core[8694b2fdf70404c2]::panic::panic_info::PanicInfo)>>::call
   7:        0x110692a0b - std::panicking::rust_panic_with_hook::h0e8749496acc65a4
   8:        0x11a4ea86a - std[183d5b41b0c678ae]::panicking::begin_panic::<rustc_errors[9c383da1080ccde7]::ExplicitBug>::{closure#0}
   9:        0x11a4e96a9 - std[183d5b41b0c678ae]::sys_common::backtrace::__rust_end_short_backtrace::<std[183d5b41b0c678ae]::panicking::begin_panic<rustc_errors[9c383da1080ccde7]::ExplicitBug>::{closure#0}, !>
  10:        0x11efb3be9 - std[183d5b41b0c678ae]::panicking::begin_panic::<rustc_errors[9c383da1080ccde7]::ExplicitBug>
  11:        0x11a4d1446 - <rustc_errors[9c383da1080ccde7]::diagnostic::BugAbort as rustc_errors[9c383da1080ccde7]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
  12:        0x11b4300ec - <rustc_errors[9c383da1080ccde7]::DiagCtxt>::span_bug::<rustc_span[a07e68e359fb3439]::span_encoding::Span, alloc[11051e35162589e6]::string::String>
  13:        0x11b410b8f - rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt::<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}
  14:        0x11b410bc7 - rustc_middle[2fbbbf976347c765]::ty::context::tls::with_opt::<rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  15:        0x11b410142 - rustc_middle[2fbbbf976347c765]::ty::context::tls::with_context_opt::<rustc_middle[2fbbbf976347c765]::ty::context::tls::with_opt<rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  16:        0x11f08717f - rustc_middle[2fbbbf976347c765]::util::bug::span_bug_fmt::<rustc_span[a07e68e359fb3439]::span_encoding::Span>
  17:        0x11b3a17df - rustc_mir_transform[a25d0ac5d8127079]::optimized_mir
  18:        0x11ba3c7d1 - rustc_query_impl[d84bd18a5ba94214]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::dynamic_query::{closure#2}::{closure#0}, rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>
  19:        0x11bbfbfbf - <rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::dynamic_query::{closure#2} as core[8694b2fdf70404c2]::ops::function::FnOnce<(rustc_middle[2fbbbf976347c765]::ty::context::TyCtxt, rustc_span[a07e68e359fb3439]::def_id::DefId)>>::call_once
  20:        0x11b936896 - rustc_query_system[358803d9698426aa]::query::plumbing::try_execute_query::<rustc_query_impl[d84bd18a5ba94214]::DynamicConfig<rustc_query_system[358803d9698426aa]::query::caches::DefIdCache<rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[d84bd18a5ba94214]::plumbing::QueryCtxt, false>
  21:        0x11bc06d2a - rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::get_query_non_incr::__rust_end_short_backtrace
  22:        0x11b02c72b - rustc_middle[2fbbbf976347c765]::query::plumbing::query_get_at::<rustc_query_system[358803d9698426aa]::query::caches::DefIdCache<rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>>
  23:        0x11b0331c9 - <rustc_middle[2fbbbf976347c765]::ty::context::TyCtxt>::instance_mir
  24:        0x11a151712 - rustc_codegen_llvm[bda38e1a988b3bcc]::coverageinfo::mapgen::finalize
  25:        0x11a03905d - rustc_codegen_llvm[bda38e1a988b3bcc]::base::compile_codegen_unit::module_codegen
  26:        0x11a037130 - rustc_codegen_llvm[bda38e1a988b3bcc]::base::compile_codegen_unit
  27:        0x11a0fab04 - rustc_codegen_ssa[9bd710579fc8ac1b]::base::codegen_crate::<rustc_codegen_llvm[bda38e1a988b3bcc]::LlvmCodegenBackend>
  28:        0x11a12ef91 - <rustc_codegen_llvm[bda38e1a988b3bcc]::LlvmCodegenBackend as rustc_codegen_ssa[9bd710579fc8ac1b]::traits::backend::CodegenBackend>::codegen_crate
  29:        0x11ad6a697 - <rustc_session[43e9daa8cf50a8aa]::session::Session>::time::<alloc[11051e35162589e6]::boxed::Box<dyn core[8694b2fdf70404c2]::any::Any>, rustc_interface[73591d27dfaafff8]::passes::start_codegen::{closure#0}>
  30:        0x11ad3b08f - rustc_interface[73591d27dfaafff8]::passes::start_codegen
  31:        0x11ad77951 - <rustc_middle[2fbbbf976347c765]::ty::context::GlobalCtxt>::enter::<<rustc_interface[73591d27dfaafff8]::queries::Queries>::codegen_and_build_linker::{closure#0}, core[8694b2fdf70404c2]::result::Result<rustc_interface[73591d27dfaafff8]::queries::Linker, rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  32:        0x11acf34c4 - <rustc_interface[73591d27dfaafff8]::queries::Queries>::codegen_and_build_linker
  33:        0x11a4152fe - <rustc_interface[73591d27dfaafff8]::interface::Compiler>::enter::<rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}::{closure#1}, core[8694b2fdf70404c2]::result::Result<core[8694b2fdf70404c2]::option::Option<rustc_interface[73591d27dfaafff8]::queries::Linker>, rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  34:        0x11a45c827 - rustc_span[a07e68e359fb3439]::set_source_map::<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  35:        0x11a466f08 - std[183d5b41b0c678ae]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[73591d27dfaafff8]::util::run_in_thread_with_globals<rustc_interface[73591d27dfaafff8]::util::run_in_thread_pool_with_globals<rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  36:        0x11a446333 - <<std[183d5b41b0c678ae]::thread::Builder>::spawn_unchecked_<rustc_interface[73591d27dfaafff8]::util::run_in_thread_with_globals<rustc_interface[73591d27dfaafff8]::util::run_in_thread_pool_with_globals<rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#1} as core[8694b2fdf70404c2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  37:        0x11069bea9 - std::sys::pal::unix::thread::Thread::new::thread_start::hfd84ddce00121c13
  38:     0x7ff809e12202 - __pthread_start

note: it seems that this compiler `1.78.0-nightly (2d24fe591 2024-03-09)` is outdated, a newer nightly should have been released in the mean time
  |
  = note: please consider running `rustup update nightly` to update the nightly channel and check if this problem still persists
  = note: if the problem still persists, 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: please attach the file at `/Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/rustc-ice-2024-03-10T15_14_37-57980.txt` to your bug report

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked -Z force-unstable-if-unmarked -C instrument-coverage -Z no-profiler-runtime

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

query stack during panic:
#0 [optimized_mir] optimizing MIR for `intrinsics::vtable_size`
end of query stack
error: could not compile `core` (lib)
warning: build failed, waiting for other jobs to finish...
Backtrace

thread 'rustc' panicked at /rustc/2d24fe591f30386d6d5fc2bb941c78d7266bf10f/compiler/rustc_middle/src/util/bug.rs:34:50:
Box<dyn Any>
stack backtrace:
   0:        0x107b77f77 - std::backtrace::Backtrace::create::h242950343c14e5d3
   1:        0x107b77ec5 - std::backtrace::Backtrace::force_capture::h468f1b65852a5852
   2:        0x111969255 - <alloc[11051e35162589e6]::boxed::Box<rustc_driver_impl[27b68babcb630957]::install_ice_hook::{closure#0}> as core[8694b2fdf70404c2]::ops::function::Fn<(&dyn for<'a, 'b> core[8694b2fdf70404c2]::ops::function::Fn<(&'a core[8694b2fdf70404c2]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[8694b2fdf70404c2]::marker::Send + core[8694b2fdf70404c2]::marker::Sync, &core[8694b2fdf70404c2]::panic::panic_info::PanicInfo)>>::call
   3:        0x107b92a0b - std::panicking::rust_panic_with_hook::h0e8749496acc65a4
   4:        0x1119ea86a - std[183d5b41b0c678ae]::panicking::begin_panic::<rustc_errors[9c383da1080ccde7]::ExplicitBug>::{closure#0}
   5:        0x1119e96a9 - std[183d5b41b0c678ae]::sys_common::backtrace::__rust_end_short_backtrace::<std[183d5b41b0c678ae]::panicking::begin_panic<rustc_errors[9c383da1080ccde7]::ExplicitBug>::{closure#0}, !>
   6:        0x1164b3be9 - std[183d5b41b0c678ae]::panicking::begin_panic::<rustc_errors[9c383da1080ccde7]::ExplicitBug>
   7:        0x1119d1446 - <rustc_errors[9c383da1080ccde7]::diagnostic::BugAbort as rustc_errors[9c383da1080ccde7]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
   8:        0x1129300ec - <rustc_errors[9c383da1080ccde7]::DiagCtxt>::span_bug::<rustc_span[a07e68e359fb3439]::span_encoding::Span, alloc[11051e35162589e6]::string::String>
   9:        0x112910b8f - rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt::<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}
  10:        0x112910bc7 - rustc_middle[2fbbbf976347c765]::ty::context::tls::with_opt::<rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  11:        0x112910142 - rustc_middle[2fbbbf976347c765]::ty::context::tls::with_context_opt::<rustc_middle[2fbbbf976347c765]::ty::context::tls::with_opt<rustc_middle[2fbbbf976347c765]::util::bug::opt_span_bug_fmt<rustc_span[a07e68e359fb3439]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  12:        0x11658717f - rustc_middle[2fbbbf976347c765]::util::bug::span_bug_fmt::<rustc_span[a07e68e359fb3439]::span_encoding::Span>
  13:        0x1128a17df - rustc_mir_transform[a25d0ac5d8127079]::optimized_mir
  14:        0x112f3c7d1 - rustc_query_impl[d84bd18a5ba94214]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::dynamic_query::{closure#2}::{closure#0}, rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>
  15:        0x1130fbfbf - <rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::dynamic_query::{closure#2} as core[8694b2fdf70404c2]::ops::function::FnOnce<(rustc_middle[2fbbbf976347c765]::ty::context::TyCtxt, rustc_span[a07e68e359fb3439]::def_id::DefId)>>::call_once
  16:        0x112e36896 - rustc_query_system[358803d9698426aa]::query::plumbing::try_execute_query::<rustc_query_impl[d84bd18a5ba94214]::DynamicConfig<rustc_query_system[358803d9698426aa]::query::caches::DefIdCache<rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[d84bd18a5ba94214]::plumbing::QueryCtxt, false>
  17:        0x113106d2a - rustc_query_impl[d84bd18a5ba94214]::query_impl::optimized_mir::get_query_non_incr::__rust_end_short_backtrace
  18:        0x11252c72b - rustc_middle[2fbbbf976347c765]::query::plumbing::query_get_at::<rustc_query_system[358803d9698426aa]::query::caches::DefIdCache<rustc_middle[2fbbbf976347c765]::query::erase::Erased<[u8; 8usize]>>>
  19:        0x1125331c9 - <rustc_middle[2fbbbf976347c765]::ty::context::TyCtxt>::instance_mir
  20:        0x111651712 - rustc_codegen_llvm[bda38e1a988b3bcc]::coverageinfo::mapgen::finalize
  21:        0x11153905d - rustc_codegen_llvm[bda38e1a988b3bcc]::base::compile_codegen_unit::module_codegen
  22:        0x111537130 - rustc_codegen_llvm[bda38e1a988b3bcc]::base::compile_codegen_unit
  23:        0x1115fab04 - rustc_codegen_ssa[9bd710579fc8ac1b]::base::codegen_crate::<rustc_codegen_llvm[bda38e1a988b3bcc]::LlvmCodegenBackend>
  24:        0x11162ef91 - <rustc_codegen_llvm[bda38e1a988b3bcc]::LlvmCodegenBackend as rustc_codegen_ssa[9bd710579fc8ac1b]::traits::backend::CodegenBackend>::codegen_crate
  25:        0x11226a697 - <rustc_session[43e9daa8cf50a8aa]::session::Session>::time::<alloc[11051e35162589e6]::boxed::Box<dyn core[8694b2fdf70404c2]::any::Any>, rustc_interface[73591d27dfaafff8]::passes::start_codegen::{closure#0}>
  26:        0x11223b08f - rustc_interface[73591d27dfaafff8]::passes::start_codegen
  27:        0x112277951 - <rustc_middle[2fbbbf976347c765]::ty::context::GlobalCtxt>::enter::<<rustc_interface[73591d27dfaafff8]::queries::Queries>::codegen_and_build_linker::{closure#0}, core[8694b2fdf70404c2]::result::Result<rustc_interface[73591d27dfaafff8]::queries::Linker, rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  28:        0x1121f34c4 - <rustc_interface[73591d27dfaafff8]::queries::Queries>::codegen_and_build_linker
  29:        0x1119152fe - <rustc_interface[73591d27dfaafff8]::interface::Compiler>::enter::<rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}::{closure#1}, core[8694b2fdf70404c2]::result::Result<core[8694b2fdf70404c2]::option::Option<rustc_interface[73591d27dfaafff8]::queries::Linker>, rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  30:        0x11195c827 - rustc_span[a07e68e359fb3439]::set_source_map::<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  31:        0x111966f08 - std[183d5b41b0c678ae]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[73591d27dfaafff8]::util::run_in_thread_with_globals<rustc_interface[73591d27dfaafff8]::util::run_in_thread_pool_with_globals<rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>
  32:        0x111946333 - <<std[183d5b41b0c678ae]::thread::Builder>::spawn_unchecked_<rustc_interface[73591d27dfaafff8]::util::run_in_thread_with_globals<rustc_interface[73591d27dfaafff8]::util::run_in_thread_pool_with_globals<rustc_interface[73591d27dfaafff8]::interface::run_compiler<core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>, rustc_driver_impl[27b68babcb630957]::run_compiler::{closure#0}>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8694b2fdf70404c2]::result::Result<(), rustc_span[a07e68e359fb3439]::ErrorGuaranteed>>::{closure#1} as core[8694b2fdf70404c2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  33:        0x107b9bea9 - std::sys::pal::unix::thread::Thread::new::thread_start::hfd84ddce00121c13
  34:     0x7ff809e12202 - __pthread_start


rustc version: 1.78.0-nightly (2d24fe591 2024-03-09)
platform: x86_64-apple-darwin

query stack during panic:
#0 [optimized_mir] optimizing MIR for `intrinsics::vtable_size`
end of query stack

@egkoppel egkoppel 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 Mar 10, 2024
@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Mar 10, 2024
@egkoppel
Copy link
Author

Building with nightly-2024-03-05 seems to work fine, but anything newer has an ICE

@durin42
Copy link
Contributor

durin42 commented Mar 18, 2024

cargo-bisect-rustc points to 2eeff46

@durin42
Copy link
Contributor

durin42 commented Mar 18, 2024

I suppose I should tag @oli-obk on this bug

@oli-obk
Copy link
Contributor

oli-obk commented Mar 18, 2024

Probably going to be fixed by #122037

@jieyouxu jieyouxu added -Zbuild-std Unstable Cargo option: Compile the standard library yourself. and removed needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. labels Apr 4, 2024
@jieyouxu
Copy link
Member

jieyouxu commented Apr 4, 2024

I tried it locally with

RUSTFLAGS="-C instrument-coverage -Z no-profiler-runtime" cargo +nightly rustc -Zbuild-std=core --target x86_64-apple-darwin -- -C panic=abort 

and it no longer ICEs. @egkoppel does it still crash for you on latest nightly?

@egkoppel
Copy link
Author

egkoppel commented Apr 4, 2024

I just tried it again with 1.79.0-nightly (4fd4797c2 2024-04-03) and it seems to still crash, although it seems unrelated to the original issue and instead to do with symbol mangling of f16 and f128 related functions.

Backtrace

thread 'rustc' panicked at compiler/rustc_symbol_mangling/src/v0.rs:320:40:
not implemented: f16_f128
stack backtrace:
   0:        0x1088a8ea3 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb892feb44690c944
   1:        0x1088f476b - core::fmt::write::hf41670d8804bea72
   2:        0x10889ef5e - std::io::Write::write_fmt::hf5f3cfd815f5cae5
   3:        0x1088a8c91 - std::sys_common::backtrace::print::h434946a28d8c91d7
   4:        0x1088aba49 - std::panicking::default_hook::{{closure}}::h81bc985f62001798
   5:        0x1088ab7b0 - std::panicking::default_hook::hb50371c4635f3b8c
   6:        0x11143db3f - std[38e870d6de0dab70]::panicking::update_hook::<alloc[43ccfcebb6346d8b]::boxed::Box<rustc_driver_impl[b21b79e6d003739c]::install_ice_hook::{closure#0}>>::{closure#0}
   7:        0x1088ac564 - std::panicking::rust_panic_with_hook::h980ef0202c45a742
   8:        0x1088abe6c - std::panicking::begin_panic_handler::{{closure}}::h6974c7b825f3e848
   9:        0x1088a9379 - std::sys_common::backtrace::__rust_end_short_backtrace::h8e1c545181895940
  10:        0x1088abbd6 - _rust_begin_unwind
  11:        0x108911355 - core::panicking::panic_fmt::h47e8c306b2b8d99c
  12:        0x112b4a008 - <rustc_symbol_mangling[faab01832d3f8f00]::v0::SymbolMangler as rustc_middle[292fdd7a6f274851]::ty::print::Printer>::print_type
  13:        0x112b492a4 - <rustc_symbol_mangling[faab01832d3f8f00]::v0::SymbolMangler as rustc_middle[292fdd7a6f274851]::ty::print::Printer>::print_impl_path
  14:        0x112b483b1 - <rustc_symbol_mangling[faab01832d3f8f00]::v0::SymbolMangler as rustc_middle[292fdd7a6f274851]::ty::print::Printer>::print_def_path
  15:        0x112b48675 - <rustc_symbol_mangling[faab01832d3f8f00]::v0::SymbolMangler as rustc_middle[292fdd7a6f274851]::ty::print::Printer>::print_def_path
  16:        0x112b47734 - rustc_symbol_mangling[faab01832d3f8f00]::v0::mangle
  17:        0x112b5894e - rustc_symbol_mangling[faab01832d3f8f00]::symbol_name_provider
  18:        0x112867b0e - rustc_query_impl[3605ca4bc1475aca]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[3605ca4bc1475aca]::query_impl::symbol_name::dynamic_query::{closure#2}::{closure#0}, rustc_middle[292fdd7a6f274851]::query::erase::Erased<[u8; 16usize]>>
  19:        0x1127f80fe - <rustc_query_impl[3605ca4bc1475aca]::query_impl::symbol_name::dynamic_query::{closure#2} as core[14fbfc68cf988ae3]::ops::function::FnOnce<(rustc_middle[292fdd7a6f274851]::ty::context::TyCtxt, rustc_middle[292fdd7a6f274851]::ty::instance::Instance)>>::call_once
  20:        0x1126b6aed - rustc_query_system[854611ef8e5fc0a7]::query::plumbing::try_execute_query::<rustc_query_impl[3605ca4bc1475aca]::DynamicConfig<rustc_query_system[854611ef8e5fc0a7]::query::caches::DefaultCache<rustc_middle[292fdd7a6f274851]::ty::instance::Instance, rustc_middle[292fdd7a6f274851]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[3605ca4bc1475aca]::plumbing::QueryCtxt, false>
  21:        0x11289a5a9 - rustc_query_impl[3605ca4bc1475aca]::query_impl::symbol_name::get_query_non_incr::__rust_end_short_backtrace
  22:        0x1110cdc2e - rustc_middle[292fdd7a6f274851]::query::plumbing::query_get_at::<rustc_query_system[854611ef8e5fc0a7]::query::caches::DefaultCache<rustc_middle[292fdd7a6f274851]::ty::instance::Instance, rustc_middle[292fdd7a6f274851]::query::erase::Erased<[u8; 16usize]>>>
  23:        0x11117c652 - rustc_codegen_llvm[d81d274e0b3bc835]::coverageinfo::mapgen::finalize
  24:        0x111169e1e - rustc_codegen_llvm[d81d274e0b3bc835]::base::compile_codegen_unit::module_codegen
  25:        0x1111b3c2a - <rustc_codegen_llvm[d81d274e0b3bc835]::LlvmCodegenBackend as rustc_codegen_ssa[cff5b3e330ba6ae8]::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  26:        0x1110c74dc - rustc_codegen_ssa[cff5b3e330ba6ae8]::base::codegen_crate::<rustc_codegen_llvm[d81d274e0b3bc835]::LlvmCodegenBackend>
  27:        0x1111b9b1a - <rustc_codegen_llvm[d81d274e0b3bc835]::LlvmCodegenBackend as rustc_codegen_ssa[cff5b3e330ba6ae8]::traits::backend::CodegenBackend>::codegen_crate
  28:        0x111bee5f4 - rustc_interface[9070b66c4f6dc5ef]::passes::start_codegen
  29:        0x111bf67da - <rustc_interface[9070b66c4f6dc5ef]::queries::Queries>::codegen_and_build_linker
  30:        0x111444d88 - rustc_interface[9070b66c4f6dc5ef]::interface::run_compiler::<core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>, rustc_driver_impl[b21b79e6d003739c]::run_compiler::{closure#0}>::{closure#0}
  31:        0x111437cad - std[38e870d6de0dab70]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[9070b66c4f6dc5ef]::util::run_in_thread_with_globals<rustc_interface[9070b66c4f6dc5ef]::util::run_in_thread_pool_with_globals<rustc_interface[9070b66c4f6dc5ef]::interface::run_compiler<core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>, rustc_driver_impl[b21b79e6d003739c]::run_compiler::{closure#0}>::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>
  32:        0x11144ab7f - <<std[38e870d6de0dab70]::thread::Builder>::spawn_unchecked_<rustc_interface[9070b66c4f6dc5ef]::util::run_in_thread_with_globals<rustc_interface[9070b66c4f6dc5ef]::util::run_in_thread_pool_with_globals<rustc_interface[9070b66c4f6dc5ef]::interface::run_compiler<core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>, rustc_driver_impl[b21b79e6d003739c]::run_compiler::{closure#0}>::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[14fbfc68cf988ae3]::result::Result<(), rustc_span[c77fbea70134c538]::ErrorGuaranteed>>::{closure#1} as core[14fbfc68cf988ae3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  33:        0x1088b574b - std::sys::pal::unix::thread::Thread::new::thread_start::hb7c71ee179e441c0
  34:     0x7ff81a18a18b - __pthread_start

error: the compiler unexpectedly panicked. this is a bug.

note: it seems that this compiler `1.79.0-nightly (4fd4797c2 2024-04-03)` is outdated, a newer nightly should have been released in the mean time
  |
  = note: please consider running `rustup update nightly` to update the nightly channel and check if this problem still persists
  = note: if the problem still persists, 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: please attach the file at `/Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/rustc-ice-2024-04-04T19_49_12-99896.txt` to your bug report

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked -Z force-unstable-if-unmarked -C instrument-coverage -Z no-profiler-runtime

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

query stack during panic:
#0 [symbol_name] computing the symbol for `clone::impls::<impl at /Users/Eliyahu/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/clone.rs:217:17: 217:34>::clone`
end of query stack
error: could not compile `core` (lib)

Since that seems unrelated, would it make sense to close this issue as it seems to be resolved and open a new issue instead for the other problem?

@jieyouxu
Copy link
Member

jieyouxu commented Apr 4, 2024

Since that seems unrelated, would it make sense to close this issue as it seems to be resolved and open a new issue instead for the other problem?

Yes, please close this issue since it seems to be resolved, and open another one for the f16/f128 issue. Thanks!

@egkoppel egkoppel closed this as completed Apr 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-Zbuild-std Unstable Cargo option: Compile the standard library yourself. 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.
Projects
None yet
Development

No branches or pull requests

5 participants