Skip to content

ICE: Unsigned value 0x100 does not fit in 8 bits #123690

Open
@matthiaskrgr

Description

@matthiaskrgr

auto-reduced (treereduce-rust): (from miri: tests/pass/enums.rs )

fn more_discriminant_overflow() {
    pub enum Infallible {}

    pub enum E1 {
        V2 {},
        V3,
        V4,
    }

    #[repr(u8)]

    pub enum E2<X> {
        V1 { f: bool },

        /*_00*/ _01(X),
        _02(X),
        _03(X),
        _04(X),
        _05(X),
        _06(X),
        _07(X),
        _08(X),
        _09(X),
        _0A(X),
        _0B(X),
        _0C(X),
        _0D(X),
        _0E(X),
        _0F(X),
        _10(X),
        _11(X),
        _12(X),
        _13(X),
        _14(X),
        _15(X),
        _16(X),
        _17(X),
        _18(X),
        _19(X),
        _1A(X),
        _1B(X),
        _1C(X),
        _1D(X),
        _1E(X),
        _1F(X),
        _20(X),
        _21(X),
        _22(X),
        _23(X),
        _24(X),
        _25(X),
        _26(X),
        _27(X),
        _28(X),
        _29(X),
        _2A(X),
        _2B(X),
        _2C(X),
        _2D(X),
        _2E(X),
        _2F(X),
        _30(X),
        _31(X),
        _32(X),
        _33(X),
        _34(X),
        _35(X),
        _36(X),
        _37(X),
        _38(X),
        _39(X),
        _3A(X),
        _3B(X),
        _3C(X),
        _3D(X),
        _3E(X),
        _3F(X),
        _40(X),
        _41(X),
        _42(X),
        _43(X),
        _44(X),
        _45(X),
        _46(X),
        _47(X),
        _48(X),
        _49(X),
        _4A(X),
        _4B(X),
        _4C(X),
        _4D(X),
        _4E(X),
        _4F(X),
        _50(X),
        _51(X),
        _52(X),
        _53(X),
        _54(X),
        _55(X),
        _56(X),
        _57(X),
        _58(X),
        _59(X),
        _5A(X),
        _5B(X),
        _5C(X),
        _5D(X),
        _5E(X),
        _5F(X),
        _60(X),
        _61(X),
        _62(X),
        _63(X),
        _64(X),
        _65(X),
        _66(X),
        _67(X),
        _68(X),
        _69(X),
        _6A(X),
        _6B(X),
        _6C(X),
        _6D(X),
        _6E(X),
        _6F(X),
        _70(X),
        _71(X),
        _72(X),
        _73(X),
        _74(E1),
        _75(X),
        _76(X),
        _77(X),
        _78(X),
        _79(X),
        _7A(X),
        _7B(X),
        _7C(X),
        _7D(X),
        _7E(X),
        _7F(X),
        _80(X),
        _81(X),
        _82(X),
        _83(X),
        _84(X),
        _85(X),
        _86(X),
        _87(X),
        _88(X),
        _89(X),
        _8A(X),
        _8B(X),
        _8C(X),
        _8D(X),
        _8E(X),
        _8F(X),
        _90(X),
        _91(X),
        _92(X),
        _93(X),
        _94(X),
        _95(X),
        _96(X),
        _97(X),
        _98(X),
        _99(X),
        _9A(X),
        _9B(X),
        _9C(X),
        _9D(X),
        _9E(X),
        _9F(X),
        _A0(X),
        _A1(X),
        _A2(X),
        _A3(X),
        _A4(X),
        _A5(X),
        _A6(X),
        _A7(X),
        _A8(X),
        _A9(X),
        _AA(X),
        _AB(X),
        _AC(X),
        _AD(X),
        _AE(X),
        _AF(X),
        _B0(X),
        _B1(X),
        _B2(X),
        _B3(X),
        _B4(X),
        _B5(X),
        _B6(X),
        _B7(X),
        _B8(X),
        _B9(X),
        _BA(X),
        _BB(X),
        _BC(X),
        _BD(X),
        _BE(X),
        _BF(X),
        _C0(X),
        _C1(X),
        _C2(X),
        _C3(X),
        _C4(X),
        _C5(X),
        _C6(X),
        _D8(X),
        _C8(X),
        _C9(X),
        _CA(X),
        _CB(X),
        _CC(X),
        _CD(X),
        _CE(X),
        _CF(X),
        _D0(X),
        _D1(X),
        _D2(X),
        _D3(X),
        _D4(X),
        _D5(X),
        _D6(X),
        _D7(X),
        _D8(X),
        _D9(X),
        _DA(X),
        _DB(X),
        _DC(X),
        _DD(X),
        _DE(X),
        _DF(X),
        _E0(X),
        _E1(X),
        _E2(X),
        _E3(X),
        _E4(X),
        _E5(X),
        _E6(X),
        _E7(X),
        _E8(X),
        _E9(X),
        _EA(X),
        _EB(X),
        _EC(X),
        _ED(X),
        _EE(X),
        _EF(i32, i32),
        _F0(X),
        _F1(X),
        _F2(X),
        _F3(X),
        _F4(X),
        _F5(X),
        _F6(X),
        _F7(X),
        _F8(X),
        _F9(X),
        _FA(X),
        _FB(X),
        _FC(X),
        _FD(X),
        _FE(X),
        _FF(X),

        V3,
        V4,
    }

    if let E2::V1 { .. } = E2::V3::<Infallible> {}
}
original code

original:

fn more_discriminant_overflow() {
    pub enum Infallible {}

    
    
    
    
    pub enum E1 {
        V2 {  },
        V3,
        V4,
    }

    
    
    
    #[repr(u8)]
     
    pub enum E2<X> {
        V1 { f: bool },

        /*_00*/ _01(X), _02(X), _03(X), _04(X), _05(X), _06(X), _07(X),
        _08(X), _09(X), _0A(X), _0B(X), _0C(X), _0D(X), _0E(X), _0F(X),
        _10(X), _11(X), _12(X), _13(X), _14(X), _15(X), _16(X), _17(X),
        _18(X), _19(X), _1A(X), _1B(X), _1C(X), _1D(X), _1E(X), _1F(X),
        _20(X), _21(X), _22(X), _23(X), _24(X), _25(X), _26(X), _27(X),
        _28(X), _29(X), _2A(X), _2B(X), _2C(X), _2D(X), _2E(X), _2F(X),
        _30(X), _31(X), _32(X), _33(X), _34(X), _35(X), _36(X), _37(X),
        _38(X), _39(X), _3A(X), _3B(X), _3C(X), _3D(X), _3E(X), _3F(X),
        _40(X), _41(X), _42(X), _43(X), _44(X), _45(X), _46(X), _47(X),
        _48(X), _49(X), _4A(X), _4B(X), _4C(X), _4D(X), _4E(X), _4F(X),
        _50(X), _51(X), _52(X), _53(X), _54(X), _55(X), _56(X), _57(X),
        _58(X), _59(X), _5A(X), _5B(X), _5C(X), _5D(X), _5E(X), _5F(X),
        _60(X), _61(X), _62(X), _63(X), _64(X), _65(X), _66(X), _67(X),
        _68(X), _69(X), _6A(X), _6B(X), _6C(X), _6D(X), _6E(X), _6F(X),
        _70(X), _71(X), _72(X), _73(X), _74(E1), _75(X), _76(X), _77(X),
        _78(X), _79(X), _7A(X), _7B(X), _7C(X), _7D(X), _7E(X), _7F(X),
        _80(X), _81(X), _82(X), _83(X), _84(X), _85(X), _86(X), _87(X),
        _88(X), _89(X), _8A(X), _8B(X), _8C(X), _8D(X), _8E(X), _8F(X),
        _90(X), _91(X), _92(X), _93(X), _94(X), _95(X), _96(X), _97(X),
        _98(X), _99(X), _9A(X), _9B(X), _9C(X), _9D(X), _9E(X), _9F(X),
        _A0(X), _A1(X), _A2(X), _A3(X), _A4(X), _A5(X), _A6(X), _A7(X),
        _A8(X), _A9(X), _AA(X), _AB(X), _AC(X), _AD(X), _AE(X), _AF(X),
        _B0(X), _B1(X), _B2(X), _B3(X), _B4(X), _B5(X), _B6(X), _B7(X),
        _B8(X), _B9(X), _BA(X), _BB(X), _BC(X), _BD(X), _BE(X), _BF(X),
        _C0(X), _C1(X), _C2(X), _C3(X), _C4(X), _C5(X), _C6(X), _D8(X),
        _C8(X), _C9(X), _CA(X), _CB(X), _CC(X), _CD(X), _CE(X), _CF(X),
        _D0(X), _D1(X), _D2(X), _D3(X), _D4(X), _D5(X), _D6(X), _D7(X),
        _D8(X), _D9(X), _DA(X), _DB(X), _DC(X), _DD(X), _DE(X), _DF(X),
        _E0(X), _E1(X), _E2(X), _E3(X), _E4(X), _E5(X), _E6(X), _E7(X),
        _E8(X), _E9(X), _EA(X), _EB(X), _EC(X), _ED(X), _EE(X), _EF(i32, i32),
        _F0(X), _F1(X), _F2(X), _F3(X), _F4(X), _F5(X), _F6(X), _F7(X),
        _F8(X), _F9(X), _FA(X), _FB(X), _FC(X), _FD(X), _FE(X), _FF(X),

        V3,
        V4,
    }

    
    

    if let E2::V1 { .. } = E2::V3::<Infallible> {
        
    }
    
}

Version information

rustc 1.79.0-nightly (033becf83 2024-04-09)
binary: rustc
commit-hash: 033becf83c62814357f4810db149471db46ab816
commit-date: 2024-04-09
host: x86_64-unknown-linux-gnu
release: 1.79.0-nightly
LLVM version: 18.1.3

Command:
/home/matthias/.rustup/toolchains/master/bin/rustc

Program output

error[E0428]: the name `_D8` is defined multiple times
   --> /tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs:230:9
    |
213 |         _D8(X),
    |         ------ previous definition of the type `_D8` here
...
230 |         _D8(X),
    |         ^^^^^^ `_D8` redefined here
    |
    = note: `_D8` must be defined only once in the type namespace of this enum

error[E0601]: `main` function not found in crate `mvce`
   --> /tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs:276:2
    |
276 | }
    |  ^ consider adding a `main` function to `/tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs`

error[E0370]: enum discriminant overflowed
   --> /tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs:271:9
    |
271 |         V3,
    |         ^^ overflowed on value after 255
    |
    = note: explicitly set `V3 = 0` if that is desired outcome

error[E0081]: discriminant value `0` assigned more than once
   --> /tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs:12:5
    |
12  |     pub enum E2<X> {
    |     ^^^^^^^^^^^^^^
13  |         V1 { f: bool },
    |         --
    |         |
    |         `0` assigned here
    |         discriminant for `V3` incremented from this startpoint (`V1` + 256 variants later => `V3` = 0)
...
271 |         V3,
    |         -- `0` assigned here

error[E0081]: discriminant value `1` assigned more than once
   --> /tmp/icemaker_global_tempdir.7SPizWTj47xD/rustc_testrunner_tmpdir_reporting.iDiOmTF2oX4J/mvce.rs:12:5
    |
12  |     pub enum E2<X> {
    |     ^^^^^^^^^^^^^^
13  |         V1 { f: bool },
    |         --
    |         |
    |         discriminant for `_01` incremented from this startpoint (`V1` + 1 variant later => `_01` = 1)
    |         discriminant for `V4` incremented from this startpoint (`V1` + 257 variants later => `V4` = 1)
14  |
15  |         /*_00*/ _01(X),
    |                 --- `1` assigned here
...
272 |         V4,
    |         -- `1` assigned here

error: internal compiler error: /rustc/033becf83c62814357f4810db149471db46ab816/compiler/rustc_middle/src/mir/interpret/value.rs:134:32: Unsigned value 0x100 does not fit in 8 bits

thread 'rustc' panicked at /rustc/033becf83c62814357f4810db149471db46ab816/compiler/rustc_middle/src/mir/interpret/value.rs:134:32:
Box<dyn Any>
stack backtrace:
   0:     0x7b17329d9885 - std::backtrace_rs::backtrace::libunwind::trace::he2880c2699337794
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
   1:     0x7b17329d9885 - std::backtrace_rs::backtrace::trace_unsynchronized::h460ebc9cd0eb6331
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7b17329d9885 - std::sys_common::backtrace::_print_fmt::h47b746c0604572c3
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/sys_common/backtrace.rs:68:5
   3:     0x7b17329d9885 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::ha907b996746f56a0
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7b1732a28abb - core::fmt::rt::Argument::fmt::hfe22b646b1687193
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/core/src/fmt/rt.rs:142:9
   5:     0x7b1732a28abb - core::fmt::write::h6b4a267d08f3d00d
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/core/src/fmt/mod.rs:1153:17
   6:     0x7b17329ce3ff - std::io::Write::write_fmt::h0abdd14d11c1702a
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/io/mod.rs:1843:15
   7:     0x7b17329d965e - std::sys_common::backtrace::_print::hbeb8c9c7793a4a1e
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7b17329d965e - std::sys_common::backtrace::print::h6ca4866d684d9b00
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7b17329dc159 - std::panicking::default_hook::{{closure}}::h33647e3098e0b657
  10:     0x7b17329dbe75 - std::panicking::default_hook::ha6320bcd5d0e9cc8
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/panicking.rs:291:9
  11:     0x7b172f26649f - std[5013708940097fa8]::panicking::update_hook::<alloc[d2bd3d5c53f6cb06]::boxed::Box<rustc_driver_impl[83e8eb7d3795c9f9]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x7b17329dc85c - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hf428354f3713bf5b
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/alloc/src/boxed.rs:2032:9
  13:     0x7b17329dc85c - std::panicking::rust_panic_with_hook::h0014da0b7030d171
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/panicking.rs:792:13
  14:     0x7b172f296504 - std[5013708940097fa8]::panicking::begin_panic::<rustc_errors[6d6b100434177d40]::ExplicitBug>::{closure#0}
  15:     0x7b172f292fa6 - std[5013708940097fa8]::sys_common::backtrace::__rust_end_short_backtrace::<std[5013708940097fa8]::panicking::begin_panic<rustc_errors[6d6b100434177d40]::ExplicitBug>::{closure#0}, !>
  16:     0x7b172f28e5c6 - std[5013708940097fa8]::panicking::begin_panic::<rustc_errors[6d6b100434177d40]::ExplicitBug>
  17:     0x7b172f2a0241 - <rustc_errors[6d6b100434177d40]::diagnostic::BugAbort as rustc_errors[6d6b100434177d40]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
  18:     0x7b172f74212c - rustc_middle[867c8a7f7f3067fc]::util::bug::opt_span_bug_fmt::<rustc_span[ef049dfdad08a076]::span_encoding::Span>::{closure#0}
  19:     0x7b172f72956a - rustc_middle[867c8a7f7f3067fc]::ty::context::tls::with_opt::<rustc_middle[867c8a7f7f3067fc]::util::bug::opt_span_bug_fmt<rustc_span[ef049dfdad08a076]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  20:     0x7b172f72940b - rustc_middle[867c8a7f7f3067fc]::ty::context::tls::with_context_opt::<rustc_middle[867c8a7f7f3067fc]::ty::context::tls::with_opt<rustc_middle[867c8a7f7f3067fc]::util::bug::opt_span_bug_fmt<rustc_span[ef049dfdad08a076]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  21:     0x7b172d353250 - rustc_middle[867c8a7f7f3067fc]::util::bug::bug_fmt
  22:     0x7b1731ca62e5 - <rustc_const_eval[7cbea1700b739c82]::interpret::eval_context::InterpCx<rustc_const_eval[7cbea1700b739c82]::const_eval::dummy_machine::DummyMachine>>::discriminant_for_variant.cold
  23:     0x7b17313bf09b - <rustc_mir_transform[3ac67f783d646433]::known_panics_lint::ConstPropagator>::use_ecx::<<rustc_mir_transform[3ac67f783d646433]::known_panics_lint::ConstPropagator>::eval_rvalue::{closure#0}::{closure#11}, rustc_const_eval[7cbea1700b739c82]::interpret::operand::ImmTy>
  24:     0x7b172da8e733 - <rustc_mir_transform[3ac67f783d646433]::known_panics_lint::ConstPropagator as rustc_middle[867c8a7f7f3067fc]::mir::visit::Visitor>::visit_assign
  25:     0x7b1730ffb2bb - <rustc_mir_transform[3ac67f783d646433]::known_panics_lint::ConstPropagator as rustc_middle[867c8a7f7f3067fc]::mir::visit::Visitor>::visit_body
  26:     0x7b172de9aad3 - <rustc_mir_transform[3ac67f783d646433]::known_panics_lint::KnownPanicsLint as rustc_mir_transform[3ac67f783d646433]::pass_manager::MirLint>::run_lint
  27:     0x7b173060188d - rustc_mir_transform[3ac67f783d646433]::pass_manager::run_passes_inner
  28:     0x7b1730c2ed02 - rustc_mir_transform[3ac67f783d646433]::mir_drops_elaborated_and_const_checked
  29:     0x7b1730c2e63d - rustc_query_impl[a13915abec574cc4]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[a13915abec574cc4]::query_impl::mir_drops_elaborated_and_const_checked::dynamic_query::{closure#2}::{closure#0}, rustc_middle[867c8a7f7f3067fc]::query::erase::Erased<[u8; 8usize]>>
  30:     0x7b17307d0871 - rustc_query_system[37cb0ad7182a86b8]::query::plumbing::try_execute_query::<rustc_query_impl[a13915abec574cc4]::DynamicConfig<rustc_query_system[37cb0ad7182a86b8]::query::caches::VecCache<rustc_span[ef049dfdad08a076]::def_id::LocalDefId, rustc_middle[867c8a7f7f3067fc]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[a13915abec574cc4]::plumbing::QueryCtxt, false>
  31:     0x7b17307d0162 - rustc_query_impl[a13915abec574cc4]::query_impl::mir_drops_elaborated_and_const_checked::get_query_non_incr::__rust_end_short_backtrace
  32:     0x7b1730eef693 - rustc_interface[791da96d69a7cf4c]::passes::analysis
  33:     0x7b1730eee495 - rustc_query_impl[a13915abec574cc4]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[a13915abec574cc4]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[867c8a7f7f3067fc]::query::erase::Erased<[u8; 1usize]>>
  34:     0x7b17313fa6a5 - rustc_query_system[37cb0ad7182a86b8]::query::plumbing::try_execute_query::<rustc_query_impl[a13915abec574cc4]::DynamicConfig<rustc_query_system[37cb0ad7182a86b8]::query::caches::SingleCache<rustc_middle[867c8a7f7f3067fc]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[a13915abec574cc4]::plumbing::QueryCtxt, false>
  35:     0x7b17313fa409 - rustc_query_impl[a13915abec574cc4]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
  36:     0x7b1731280cd4 - rustc_interface[791da96d69a7cf4c]::interface::run_compiler::<core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>, rustc_driver_impl[83e8eb7d3795c9f9]::run_compiler::{closure#0}>::{closure#0}
  37:     0x7b173134deff - std[5013708940097fa8]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[791da96d69a7cf4c]::util::run_in_thread_with_globals<rustc_interface[791da96d69a7cf4c]::util::run_in_thread_pool_with_globals<rustc_interface[791da96d69a7cf4c]::interface::run_compiler<core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>, rustc_driver_impl[83e8eb7d3795c9f9]::run_compiler::{closure#0}>::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>
  38:     0x7b173134dcee - <<std[5013708940097fa8]::thread::Builder>::spawn_unchecked_<rustc_interface[791da96d69a7cf4c]::util::run_in_thread_with_globals<rustc_interface[791da96d69a7cf4c]::util::run_in_thread_pool_with_globals<rustc_interface[791da96d69a7cf4c]::interface::run_compiler<core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>, rustc_driver_impl[83e8eb7d3795c9f9]::run_compiler::{closure#0}>::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b815557cbe89e06]::result::Result<(), rustc_span[ef049dfdad08a076]::ErrorGuaranteed>>::{closure#1} as core[b815557cbe89e06]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  39:     0x7b17329e628b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h53814b1241345312
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/alloc/src/boxed.rs:2018:9
  40:     0x7b17329e628b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h68f33d2823fce7a0
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/alloc/src/boxed.rs:2018:9
  41:     0x7b17329e628b - std::sys::pal::unix::thread::Thread::new::thread_start::h5c5183b404e56855
                               at /rustc/033becf83c62814357f4810db149471db46ab816/library/std/src/sys/pal/unix/thread.rs:108:17
  42:     0x7b173278455a - <unknown>
  43:     0x7b1732801a3c - <unknown>
  44:                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.79.0-nightly (033becf83 2024-04-09) running on x86_64-unknown-linux-gnu

query stack during panic:
#0 [mir_drops_elaborated_and_const_checked] elaborating drops for `more_discriminant_overflow`
#1 [analysis] running analysis passes on this crate
end of query stack
error: aborting due to 6 previous errors

Some errors have detailed explanations: E0081, E0370, E0428, E0601.
For more information about an error, try `rustc --explain E0081`.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-MIRArea: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.htmlA-layoutArea: Memory layout of typesC-bugCategory: This is a bug.E-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️S-bug-has-testStatus: This bug is tracked inside the repo by a `known-bug` test.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions