Skip to content

Broken MIR in Item(DefId(0:23022 ~ glam[ff9e]::euler::{impl#44}::to_euler_angles)) #144736

@virtualritz

Description

@virtualritz

Code

I don't have time to investigate where this comes from but it looks like using the resp impl_mat4_to_euler macro from glam-0.29.3's euler.rs module should be enough?

Meta

rustc --version --verbose:

rustc 1.90.0-nightly (3048886e5 2025-07-30)
binary: rustc
commit-hash: 3048886e59c94470e726ecaaf2add7242510ac11
commit-date: 2025-07-30
host: x86_64-unknown-linux-gnu
release: 1.90.0-nightly
LLVM version: 20.1.8

Error output

error: internal compiler error: compiler/rustc_mir_transform/src/validate.rs:80:25: broken MIR in Item(DefId(0:23022 ~ glam[ff9e]::euler::{impl#44}::to_euler_angles)) (after phase change to runtime-optimized) at bb0[5]:
                                Projecting into SIMD type std::arch::x86_64::__m128 is banned by MCP#838
   --> /home/ritz/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glam-0.29.3/src/euler.rs:410:34
    |
410 |                 $mat3::from_mat4(self).to_euler_angles(order)
    |                                  ^^^^
...
435 | impl_mat4_to_euler!(f32, Mat4, Mat3);
    | ------------------------------------ in this macro invocation
    |
    = note: this error: internal compiler error originates in the macro `impl_mat4_to_euler` (in Nightly builds, run with -Z macro-backtrace for more info)
Backtrace

thread 'rustc' panicked at compiler/rustc_mir_transform/src/validate.rs:80:25:
Box<dyn Any>
stack backtrace:
   0:     0x784f1cbdb063 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hd6b9c89c64c3801f
   1:     0x784f1d402db7 - core::fmt::write::h2265f809c8b9d534
   2:     0x784f1cbd0b33 - std::io::Write::write_fmt::h06a5640c42d9c6fe
   3:     0x784f1cbdaec2 - std::sys::backtrace::BacktraceLock::print::h5f45b3abb783ae66
   4:     0x784f1cbde967 - std::panicking::default_hook::{{closure}}::h97a21251376dd4db
   5:     0x784f1cbde4cb - std::panicking::default_hook::hf473d2aa8bb86651
   6:     0x784f1bc61173 - std[252cdfc11d70884]::panicking::update_hook::<alloc[625f969b2fa307d4]::boxed::Box<rustc_driver_impl[5876898155789fc0]::install_ice_hook::{closure#1}>>::{closure#0}
   7:     0x784f1cbdf1ae - std::panicking::rust_panic_with_hook::h2abbcd676a345b6f
   8:     0x784f1bc9a631 - std[252cdfc11d70884]::panicking::begin_panic::<rustc_errors[a56b846fd2698ae1]::ExplicitBug>::{closure#0}
   9:     0x784f1bc8f5c6 - std[252cdfc11d70884]::sys::backtrace::__rust_end_short_backtrace::<std[252cdfc11d70884]::panicking::begin_panic<rustc_errors[a56b846fd2698ae1]::ExplicitBug>::{closure#0}, !>
  10:     0x784f1bc8c085 - std[252cdfc11d70884]::panicking::begin_panic::<rustc_errors[a56b846fd2698ae1]::ExplicitBug>
  11:     0x784f1bca4081 - <rustc_errors[a56b846fd2698ae1]::diagnostic::BugAbort as rustc_errors[a56b846fd2698ae1]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
  12:     0x784f1c21127c - <rustc_errors[a56b846fd2698ae1]::DiagCtxtHandle>::span_bug::<rustc_span[e212defa68e1f0f]::span_encoding::Span, alloc[625f969b2fa307d4]::string::String>
  13:     0x784f1c2a6177 - rustc_middle[5b597aebfad1dd36]::util::bug::opt_span_bug_fmt::<rustc_span[e212defa68e1f0f]::span_encoding::Span>::{closure#0}
  14:     0x784f1c28566a - rustc_middle[5b597aebfad1dd36]::ty::context::tls::with_opt::<rustc_middle[5b597aebfad1dd36]::util::bug::opt_span_bug_fmt<rustc_span[e212defa68e1f0f]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  15:     0x784f1c2854db - rustc_middle[5b597aebfad1dd36]::ty::context::tls::with_context_opt::<rustc_middle[5b597aebfad1dd36]::ty::context::tls::with_opt<rustc_middle[5b597aebfad1dd36]::util::bug::opt_span_bug_fmt<rustc_span[e212defa68e1f0f]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  16:     0x784f1a255027 - rustc_middle[5b597aebfad1dd36]::util::bug::span_bug_fmt::<rustc_span[e212defa68e1f0f]::span_encoding::Span>
  17:     0x784f1a7f5698 - <rustc_mir_transform[57d1aa0078e0a27a]::validate::CfgChecker>::fail::<alloc[625f969b2fa307d4]::string::String>
  18:     0x784f1e6c7d47 - <rustc_mir_transform[57d1aa0078e0a27a]::validate::Validator as rustc_mir_transform[57d1aa0078e0a27a]::pass_manager::MirPass>::run_pass
  19:     0x784f1d411828 - rustc_mir_transform[57d1aa0078e0a27a]::run_optimization_passes
  20:     0x784f1e077f00 - rustc_mir_transform[57d1aa0078e0a27a]::optimized_mir
  21:     0x784f1e077ae1 - rustc_query_impl[bc1f4b486f051a3d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[bc1f4b486f051a3d]::query_impl::optimized_mir::dynamic_query::{closure#2}::{closure#0}, rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 8usize]>>
  22:     0x784f1d418525 - rustc_query_system[25bc80909c950048]::query::plumbing::try_execute_query::<rustc_query_impl[bc1f4b486f051a3d]::DynamicConfig<rustc_query_system[25bc80909c950048]::query::caches::DefIdCache<rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[bc1f4b486f051a3d]::plumbing::QueryCtxt, false>
  23:     0x784f1d417a1b - rustc_query_impl[bc1f4b486f051a3d]::query_impl::optimized_mir::get_query_non_incr::__rust_end_short_backtrace
  24:     0x784f1da07854 - rustc_mir_transform[57d1aa0078e0a27a]::cross_crate_inline::cross_crate_inlinable
  25:     0x784f1da0937b - rustc_query_impl[bc1f4b486f051a3d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[bc1f4b486f051a3d]::query_impl::cross_crate_inlinable::dynamic_query::{closure#2}::{closure#0}, rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 1usize]>>
  26:     0x784f1da0a096 - rustc_query_system[25bc80909c950048]::query::plumbing::try_execute_query::<rustc_query_impl[bc1f4b486f051a3d]::DynamicConfig<rustc_query_system[25bc80909c950048]::query::caches::DefIdCache<rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[bc1f4b486f051a3d]::plumbing::QueryCtxt, false>
  27:     0x784f1da09d24 - rustc_query_impl[bc1f4b486f051a3d]::query_impl::cross_crate_inlinable::get_query_non_incr::__rust_end_short_backtrace
  28:     0x784f1d8fcaff - rustc_passes[2bab247260fbed36]::reachable::reachable_set
  29:     0x784f1e40cab0 - rustc_query_impl[bc1f4b486f051a3d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[bc1f4b486f051a3d]::query_impl::reachable_set::dynamic_query::{closure#2}::{closure#0}, rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 8usize]>>
  30:     0x784f1e49cb01 - rustc_query_system[25bc80909c950048]::query::plumbing::try_execute_query::<rustc_query_impl[bc1f4b486f051a3d]::DynamicConfig<rustc_query_system[25bc80909c950048]::query::caches::SingleCache<rustc_middle[5b597aebfad1dd36]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[bc1f4b486f051a3d]::plumbing::QueryCtxt, false>
  31:     0x784f1e49be9c - rustc_query_impl[bc1f4b486f051a3d]::query_impl::reachable_set::get_query_non_incr::__rust_end_short_backtrace
  32:     0x784f1df8ed6e - <rustc_metadata[15c89b4175c4a52b]::rmeta::encoder::EncodeContext>::encode_crate_root
  33:     0x784f1e9cda30 - <rustc_metadata[15c89b4175c4a52b]::rmeta::encoder::encode_metadata::{closure#3} as core[f23c4ce622767e30]::ops::function::FnOnce<(rustc_middle[5b597aebfad1dd36]::ty::context::TyCtxt, &std[252cdfc11d70884]::path::Path)>>::call_once
  34:     0x784f1e9cac70 - rustc_metadata[15c89b4175c4a52b]::rmeta::encoder::encode_metadata
  35:     0x784f1e2eabd7 - rustc_metadata[15c89b4175c4a52b]::fs::encode_and_write_metadata
  36:     0x784f1e86c643 - <rustc_interface[46364056eeddd9e7]::queries::Linker>::codegen_and_build_linker
  37:     0x784f1e86a23c - rustc_interface[46364056eeddd9e7]::passes::create_and_enter_global_ctxt::<core[f23c4ce622767e30]::option::Option<rustc_interface[46364056eeddd9e7]::queries::Linker>, rustc_driver_impl[5876898155789fc0]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}
  38:     0x784f1e693e71 - rustc_interface[46364056eeddd9e7]::interface::run_compiler::<(), rustc_driver_impl[5876898155789fc0]::run_compiler::{closure#0}>::{closure#1}
  39:     0x784f1e592a81 - std[252cdfc11d70884]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[46364056eeddd9e7]::util::run_in_thread_with_globals<rustc_interface[46364056eeddd9e7]::util::run_in_thread_pool_with_globals<rustc_interface[46364056eeddd9e7]::interface::run_compiler<(), rustc_driver_impl[5876898155789fc0]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
  40:     0x784f1e592762 - <<std[252cdfc11d70884]::thread::Builder>::spawn_unchecked_<rustc_interface[46364056eeddd9e7]::util::run_in_thread_with_globals<rustc_interface[46364056eeddd9e7]::util::run_in_thread_pool_with_globals<rustc_interface[46364056eeddd9e7]::interface::run_compiler<(), rustc_driver_impl[5876898155789fc0]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[f23c4ce622767e30]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  41:     0x784f1e598805 - std::sys::pal::unix::thread::Thread::new::thread_start::h63564cc3addf83a5
  42:     0x784f17ca27f1 - start_thread
                               at ./nptl/pthread_create.c:448:8
  43:     0x784f17d33c9c - __GI___clone3
                               at ./misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78:0
  44:                0x0 - <unknown>

rustc-ice-2025-07-31T14_31_44-421266.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions