rust-lang / rust-lang/rust

`generic_const_exprs` ICE with nested generic params

Open
#118,244 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

C-bug F-generic_const_exprs I-ICE P-low S-bug-has-test T-compiler
Dominant language
Rust
Stars
119k
Forks
16.1k
PR merge metrics
PR metrics pending

Description

Code

Playground

#![allow(incomplete_features)]
#![feature(generic_const_exprs)]
struct Inner<const N: usize, const M: usize>;
impl<const N: usize, const M: usize> Inner<N, M> where [(); N + M]: {
    fn i() -> Self {
        Self
    }
}

struct Outer<const A: usize, const B: usize>(Inner<A, { B * 2 }>) where [(); A + (B * 2)]:;
impl<const A: usize, const B: usize> Outer<A, B> where [(); A + (B * 2)]: {
    fn o() -> Self {
        Self(Inner::i())
    }
}

fn main() {
    Outer::<1, 1>::o();
}
Meta

rustc --version --verbose:

rustc 1.76.0-nightly (6b771f6b5 2023-11-15)
binary: rustc
commit-hash: 6b771f6b5a6c8b03b6322a9c77ac77cb346148f0
commit-date: 2023-11-15
host: x86_64-unknown-linux-gnu
release: 1.76.0-nightly
LLVM version: 17.0.5
Error output
   Compiling ice v0.1.0 (/home/...)
error: internal compiler error: /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/compiler/rustc_middle/src/ty/consts.rs:354:32: expected bits of usize, got (Mul: 1_usize, 2_usize): usize

thread 'rustc' panicked at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/compiler/rustc_errors/src/lib.rs:1660:9:
Box<dyn Any>
stack backtrace:
   0:     0x7fe017fc689c - std::backtrace_rs::backtrace::libunwind::trace::hc8ce14f1f51b19f3
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
   1:     0x7fe017fc689c - std::backtrace_rs::backtrace::trace_unsynchronized::h31756ac1c596273b
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fe017fc689c - std::sys_common::backtrace::_print_fmt::h40f31fb4d7056540
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys_common/backtrace.rs:67:5
   3:     0x7fe017fc689c - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hcd6ddd3255a8e554
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7fe0180198a0 - core::fmt::rt::Argument::fmt::haa38531ef8752652
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/core/src/fmt/rt.rs:142:9
   5:     0x7fe0180198a0 - core::fmt::write::ha0f782bd1ecfc2dc
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/core/src/fmt/mod.rs:1120:17
   6:     0x7fe017fba7bf - std::io::Write::write_fmt::h5f37f3e5a0e4b544
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/io/mod.rs:1762:15
   7:     0x7fe017fc6684 - std::sys_common::backtrace::_print::h166370b298d5569f
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7fe017fc6684 - std::sys_common::backtrace::print::hab8f751e46216a08
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7fe017fc9317 - std::panicking::default_hook::{{closure}}::h058a18801f9aa311
  10:     0x7fe017fc907f - std::panicking::default_hook::h21798126b0cefb30
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/panicking.rs:292:9
  11:     0x7fe014ce4660 - std[ee38bba0a237925c]::panicking::update_hook::<alloc[a43fc757b277f94f]::boxed::Box<rustc_driver_impl[4cf9e24b9673574]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x7fe017fc9a58 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hae78327b43bc7d35
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2021:9
  13:     0x7fe017fc9a58 - std::panicking::rust_panic_with_hook::h394983fd1617103f
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/panicking.rs:783:13
  14:     0x7fe0151336c4 - std[ee38bba0a237925c]::panicking::begin_panic::<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>::{closure#0}
  15:     0x7fe01512d2d6 - std[ee38bba0a237925c]::sys_common::backtrace::__rust_end_short_backtrace::<std[ee38bba0a237925c]::panicking::begin_panic<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>::{closure#0}, !>
  16:     0x7fe015127bb6 - std[ee38bba0a237925c]::panicking::begin_panic::<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>
  17:     0x7fe01510d254 - <rustc_errors[22a1b5f6a4cd1a14]::HandlerInner>::bug::<alloc[a43fc757b277f94f]::string::String>
  18:     0x7fe01510cf5a - <rustc_errors[22a1b5f6a4cd1a14]::Handler>::bug::<alloc[a43fc757b277f94f]::string::String>
  19:     0x7fe0151aeced - rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt::<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}
  20:     0x7fe015195c4a - rustc_middle[4b61d17b1b76724]::ty::context::tls::with_opt::<rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  21:     0x7fe015195ae8 - rustc_middle[4b61d17b1b76724]::ty::context::tls::with_context_opt::<rustc_middle[4b61d17b1b76724]::ty::context::tls::with_opt<rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  22:     0x7fe013114cc0 - rustc_middle[4b61d17b1b76724]::util::bug::bug_fmt
  23:     0x7fe0162d9ebb - rustc_codegen_ssa[3c407a3a409631e0]::debuginfo::type_names::push_generic_params_internal
  24:     0x7fe016633ea9 - rustc_codegen_llvm[42f9b347ddf2581f]::debuginfo::metadata::build_struct_type_di_node
  25:     0x7fe016132499 - rustc_codegen_llvm[42f9b347ddf2581f]::debuginfo::metadata::type_di_node
  26:     0x7fe01365e944 - <rustc_codegen_llvm[42f9b347ddf2581f]::context::CodegenCx as rustc_codegen_ssa[3c407a3a409631e0]::traits::debuginfo::DebugInfoMethods>::dbg_scope_fn
  27:     0x7fe016c7fd73 - rustc_codegen_ssa[3c407a3a409631e0]::mir::codegen_mir::<rustc_codegen_llvm[42f9b347ddf2581f]::builder::Builder>
  28:     0x7fe016c7d634 - rustc_codegen_llvm[42f9b347ddf2581f]::base::compile_codegen_unit::module_codegen
  29:     0x7fe016f74645 - <rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend as rustc_codegen_ssa[3c407a3a409631e0]::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  30:     0x7fe0169a7dc2 - rustc_codegen_ssa[3c407a3a409631e0]::base::codegen_crate::<rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend>
  31:     0x7fe0169a753a - <rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend as rustc_codegen_ssa[3c407a3a409631e0]::traits::backend::CodegenBackend>::codegen_crate
  32:     0x7fe0169a5bd7 - rustc_interface[bcd40bc45d5d0754]::passes::start_codegen
  33:     0x7fe0169a55a3 - <rustc_interface[bcd40bc45d5d0754]::queries::Queries>::ongoing_codegen
  34:     0x7fe016ef63cd - rustc_interface[bcd40bc45d5d0754]::interface::run_compiler::<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}
  35:     0x7fe016efd69a - std[ee38bba0a237925c]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_with_globals<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_pool_with_globals<rustc_interface[bcd40bc45d5d0754]::interface::run_compiler<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>
  36:     0x7fe016efd4c3 - <<std[ee38bba0a237925c]::thread::Builder>::spawn_unchecked_<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_with_globals<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_pool_with_globals<rustc_interface[bcd40bc45d5d0754]::interface::run_compiler<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#1} as core[8f41822517f550cc]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  37:     0x7fe017fd3915 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he32d1cc72bddfec8
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2007:9
  38:     0x7fe017fd3915 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfc224f9cd2e7edd6
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2007:9
  39:     0x7fe017fd3915 - std::sys::unix::thread::Thread::new::thread_start::h1b679b756cd6878e
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys/unix/thread.rs:108:17
  40:     0x7fe011eaa9eb - <unknown>
  41:     0x7fe011f2e7cc - <unknown>
  42:                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: please attach the file at `/home/.../rustc-ice-2023-11-24T14_32_28-347715.txt` to your bug report

note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
end of query stack
error: could not compile `ice` (bin "ice")
Backtrace

   Compiling ice v0.1.0 (/home/...)
error: internal compiler error: /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/compiler/rustc_middle/src/ty/consts.rs:354:32: expected bits of usize, got (Mul: 1_usize, 2_usize): usize

thread 'rustc' panicked at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/compiler/rustc_errors/src/lib.rs:1660:9:
Box<dyn Any>
stack backtrace:
   0: std::panicking::begin_panic::<rustc_errors::ExplicitBug>
   1: <rustc_errors::HandlerInner>::bug::<alloc::string::String>
   2: <rustc_errors::Handler>::bug::<alloc::string::String>
   3: rustc_middle::util::bug::opt_span_bug_fmt::<rustc_span::span_encoding::Span>::{closure#0}
   4: rustc_middle::ty::context::tls::with_opt::<rustc_middle::util::bug::opt_span_bug_fmt<rustc_span::span_encoding::Span>::{closure#0}, !>::{closure#0}
   5: rustc_middle::ty::context::tls::with_context_opt::<rustc_middle::ty::context::tls::with_opt<rustc_middle::util::bug::opt_span_bug_fmt<rustc_span::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
   6: rustc_middle::util::bug::bug_fmt
   7: rustc_codegen_ssa::debuginfo::type_names::push_generic_params_internal
   8: rustc_codegen_llvm::debuginfo::metadata::build_struct_type_di_node
   9: rustc_codegen_llvm::debuginfo::metadata::type_di_node
  10: <rustc_codegen_llvm::context::CodegenCx as rustc_codegen_ssa::traits::debuginfo::DebugInfoMethods>::dbg_scope_fn
  11: rustc_codegen_ssa::mir::codegen_mir::<rustc_codegen_llvm::builder::Builder>
  12: rustc_codegen_llvm::base::compile_codegen_unit::module_codegen
  13: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  14: rustc_codegen_ssa::base::codegen_crate::<rustc_codegen_llvm::LlvmCodegenBackend>
  15: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  16: rustc_interface::passes::start_codegen
  17: <rustc_interface::queries::Queries>::ongoing_codegen
  18: rustc_interface::interface::run_compiler::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

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: please attach the file at `/home/.../rustc-ice-2023-11-24T14_32_06-347555.txt` to your bug report

note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
end of query stack
error: could not compile `ice` (bin "ice")

rustc-ice-2023-11-24T14_32_06-347555.txt

thread 'rustc' panicked at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/compiler/rustc_errors/src/lib.rs:1660:9:
Box<dyn Any>
stack backtrace:
   0:     0x7fe017fae9b1 - std::backtrace_rs::backtrace::libunwind::trace::hc8ce14f1f51b19f3
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
   1:     0x7fe017fae9b1 - std::backtrace_rs::backtrace::trace_unsynchronized::h303d39c3d9ab7bc9
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fe017fae9b1 - std::backtrace::Backtrace::create::h3aba9a56a29a800f
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/backtrace.rs:331:13
   3:     0x7fe017fae900 - std::backtrace::Backtrace::force_capture::h4a2e855ba1467d71
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/backtrace.rs:313:9
   4:     0x7fe014ce479c - std[ee38bba0a237925c]::panicking::update_hook::<alloc[a43fc757b277f94f]::boxed::Box<rustc_driver_impl[4cf9e24b9673574]::install_ice_hook::{closure#0}>>::{closure#0}
   5:     0x7fe017fc9a58 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hae78327b43bc7d35
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2021:9
   6:     0x7fe017fc9a58 - std::panicking::rust_panic_with_hook::h394983fd1617103f
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/panicking.rs:783:13
   7:     0x7fe0151336c4 - std[ee38bba0a237925c]::panicking::begin_panic::<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>::{closure#0}
   8:     0x7fe01512d2d6 - std[ee38bba0a237925c]::sys_common::backtrace::__rust_end_short_backtrace::<std[ee38bba0a237925c]::panicking::begin_panic<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>::{closure#0}, !>
   9:     0x7fe015127bb6 - std[ee38bba0a237925c]::panicking::begin_panic::<rustc_errors[22a1b5f6a4cd1a14]::ExplicitBug>
  10:     0x7fe01510d254 - <rustc_errors[22a1b5f6a4cd1a14]::HandlerInner>::bug::<alloc[a43fc757b277f94f]::string::String>
  11:     0x7fe01510cf5a - <rustc_errors[22a1b5f6a4cd1a14]::Handler>::bug::<alloc[a43fc757b277f94f]::string::String>
  12:     0x7fe0151aeced - rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt::<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}
  13:     0x7fe015195c4a - rustc_middle[4b61d17b1b76724]::ty::context::tls::with_opt::<rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  14:     0x7fe015195ae8 - rustc_middle[4b61d17b1b76724]::ty::context::tls::with_context_opt::<rustc_middle[4b61d17b1b76724]::ty::context::tls::with_opt<rustc_middle[4b61d17b1b76724]::util::bug::opt_span_bug_fmt<rustc_span[74aab3a68d021777]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  15:     0x7fe013114cc0 - rustc_middle[4b61d17b1b76724]::util::bug::bug_fmt
  16:     0x7fe0162d9ebb - rustc_codegen_ssa[3c407a3a409631e0]::debuginfo::type_names::push_generic_params_internal
  17:     0x7fe016633ea9 - rustc_codegen_llvm[42f9b347ddf2581f]::debuginfo::metadata::build_struct_type_di_node
  18:     0x7fe016132499 - rustc_codegen_llvm[42f9b347ddf2581f]::debuginfo::metadata::type_di_node
  19:     0x7fe01365e944 - <rustc_codegen_llvm[42f9b347ddf2581f]::context::CodegenCx as rustc_codegen_ssa[3c407a3a409631e0]::traits::debuginfo::DebugInfoMethods>::dbg_scope_fn
  20:     0x7fe016c7fd73 - rustc_codegen_ssa[3c407a3a409631e0]::mir::codegen_mir::<rustc_codegen_llvm[42f9b347ddf2581f]::builder::Builder>
  21:     0x7fe016c7d634 - rustc_codegen_llvm[42f9b347ddf2581f]::base::compile_codegen_unit::module_codegen
  22:     0x7fe016f74645 - <rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend as rustc_codegen_ssa[3c407a3a409631e0]::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  23:     0x7fe0169a7dc2 - rustc_codegen_ssa[3c407a3a409631e0]::base::codegen_crate::<rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend>
  24:     0x7fe0169a753a - <rustc_codegen_llvm[42f9b347ddf2581f]::LlvmCodegenBackend as rustc_codegen_ssa[3c407a3a409631e0]::traits::backend::CodegenBackend>::codegen_crate
  25:     0x7fe0169a5bd7 - rustc_interface[bcd40bc45d5d0754]::passes::start_codegen
  26:     0x7fe0169a55a3 - <rustc_interface[bcd40bc45d5d0754]::queries::Queries>::ongoing_codegen
  27:     0x7fe016ef63cd - rustc_interface[bcd40bc45d5d0754]::interface::run_compiler::<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}
  28:     0x7fe016efd69a - std[ee38bba0a237925c]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_with_globals<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_pool_with_globals<rustc_interface[bcd40bc45d5d0754]::interface::run_compiler<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>
  29:     0x7fe016efd4c3 - <<std[ee38bba0a237925c]::thread::Builder>::spawn_unchecked_<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_with_globals<rustc_interface[bcd40bc45d5d0754]::util::run_in_thread_pool_with_globals<rustc_interface[bcd40bc45d5d0754]::interface::run_compiler<core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>, rustc_driver_impl[4cf9e24b9673574]::run_compiler::{closure#1}>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8f41822517f550cc]::result::Result<(), rustc_span[74aab3a68d021777]::ErrorGuaranteed>>::{closure#1} as core[8f41822517f550cc]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  30:     0x7fe017fd3915 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he32d1cc72bddfec8
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2007:9
  31:     0x7fe017fd3915 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfc224f9cd2e7edd6
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/alloc/src/boxed.rs:2007:9
  32:     0x7fe017fd3915 - std::sys::unix::thread::Thread::new::thread_start::h1b679b756cd6878e
                               at /rustc/6b771f6b5a6c8b03b6322a9c77ac77cb346148f0/library/std/src/sys/unix/thread.rs:108:17
  33:     0x7fe011eaa9eb - <unknown>
  34:     0x7fe011f2e7cc - <unknown>
  35:                0x0 - <unknown>


rustc version: 1.76.0-nightly (6b771f6b5 2023-11-15)
platform: x86_64-unknown-linux-gnu

query stack during panic:
end of query stack

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the provided nested generic_const_exprs example with nightly Rust and debuginfo enabled. Start with compiler/rustc_middle/src/ty/consts.rs and the rustc_codegen_ssa::debuginfo::type_names path shown in the backtrace. Done means the reproducer no longer triggers an internal compiler error.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.