Skip to content

ICE: name of non-Rpitit assoc item #141143

Closed

Description

@temofeyBaradax

Code

use std::marker::PhantomData;

// Minimal code to reproduce ICE in Rust nightly
pub struct ClientError;

pub trait MessageFormat<T> {
    type SerializeError: std::fmt::Debug;
    fn serialize(&self, data: &T) -> Result<Vec<u8>, Self::SerializeError>;
}

pub struct Format<T>(PhantomData<T>);
impl<T> Default for Format<T> { fn default() -> Self { Self(PhantomData) } }
impl<T> MessageFormat<T> for Format<T> {
    type SerializeError = ();
    fn serialize(&self, _: &T) -> Result<Vec<u8>, Self::SerializeError> { Ok(vec![]) }
}

pub trait DefaultFormat { type Formatter: MessageFormat<Self> + Default; }
struct Data {}
impl DefaultFormat for Data { type Formatter = Format<Self>; }

pub struct Client;
trait TypedClient {
    async fn publish_typed<T, F>(&self, data: &T) -> Result<(), ClientError>
    where F: MessageFormat<T> + Default;
}
impl TypedClient for Client {
    async fn publish_typed<T, F>(&self, _: &T) -> Result<(), ClientError>
    where F: MessageFormat<T> + Default { Ok(()) }
}

pub struct Publisher<T: DefaultFormat> { client: Client, _phantom: PhantomData<T> }
impl<T: DefaultFormat> Publisher<T> {
    // Works correctly
    pub async fn publish(&self, data: &T) -> Result<(), ClientError> {
        self.client.publish_typed::<_, T::Formatter>(data).await
    }
    // Triggers ICE in nightly build <- PROBLEM HERE
    pub async fn publish_bug(&self, data: &T) -> Result<(), ClientError> {
        self.client.publish_typed(data).await  // Here the compiler cannot infer type F
    }
}

Meta

rustc --version --verbose:

$ rustc --version --verbose
rustc 1.89.0-nightly (16d2276fa 2025-05-16)
binary: rustc
commit-hash: 16d2276fa6fccb0cc239a542d4c3f0eb46f660ec
commit-date: 2025-05-16
host: x86_64-pc-windows-msvc
release: 1.89.0-nightly
LLVM version: 20.1.4

Error output

<output>
Backtrace

$ RUST_BACKTRACE=1 cargo build
   Compiling mqtt_broker v0.1.0 (C:\Users\tema\live_projects\display_orchestra\mqtt_broker)

thread 'rustc' panicked at compiler\rustc_middle\src\ty\assoc.rs:43:25:
name of non-Rpitit assoc item
stack backtrace:
   0: std::panicking::begin_panic_handler
             at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\panicking.rs:697
   1: core::panicking::panic_fmt
             at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\panicking.rs:75
   2: core::panicking::panic_display
             at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\panicking.rs:268
   3: core::option::expect_failed
             at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\option.rs:2049
   4: <rustc_middle::ty::assoc::AssocItem>::name
   5: <rustc_trait_selection::error_reporting::TypeErrCtxt>::extract_callable_info
   6: <rustc_middle::traits::ObligationCause as rustc_trait_selection::error_reporting::infer::ObligationCauseExt>::as_failure_code_diag
   7: <rustc_trait_selection::error_reporting::TypeErrCtxt>::report_fulfillment_errors
   8: <rustc_hir_typeck::upvar::InferBorrowKind as rustc_hir_typeck::expr_use_visitor::Delegate>::borrow
   9: rustc_hir_typeck::typeck
  10: rustc_query_impl::plumbing::query_key_hash_verify_all
  11: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  12: rustc_query_impl::plumbing::query_key_hash_verify_all
  13: rustc_mir_build::thir::pattern::check_match::check_match
  14: rustc_query_impl::plumbing::query_key_hash_verify_all
  15: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  16: rustc_query_impl::query_system
  17: rustc_mir_build::builder::build_mir
  18: rustc_mir_transform::mir_built
  19: rustc_query_impl::plumbing::query_key_hash_verify_all
  20: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  21: rustc_query_impl::query_system
  22: rustc_mir_transform::ffi_unwind_calls::has_ffi_unwind_calls
  23: rustc_query_impl::plumbing::query_key_hash_verify_all
  24: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  25: rustc_query_impl::plumbing::query_key_hash_verify_all
  26: rustc_mir_transform::mir_promoted
  27: rustc_query_impl::plumbing::query_key_hash_verify_all
  28: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  29: rustc_query_impl::query_system
  30: rustc_borrowck::mir_borrowck
  31: rustc_query_impl::plumbing::query_key_hash_verify_all
  32: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  33: rustc_query_impl::plumbing::query_key_hash_verify_all
  34: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::AllCollector as rustc_hir::intravisit::Visitor>::visit_opaque_ty
  35: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::AllCollector as rustc_hir::intravisit::Visitor>::visit_opaque_ty
  36: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
  37: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches10DefIdCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3r_KB3r_ENtNtB1f_8plumbing9QueryCtxt
  38: rustc_query_impl::query_system
  39: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::ConstrainedCollector as rustc_hir::intravisit::Visitor>::visit_ty
  40: rustc_query_impl::plumbing::query_key_hash_verify_all
  41: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches10DefIdCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3r_KB3r_ENtNtB1f_8plumbing9QueryCtxt
  42: rustc_query_impl::plumbing::query_key_hash_verify_all
  43: <rustc_privacy::EmbargoVisitor as rustc_hir::intravisit::Visitor>::visit_item
  44: rustc_privacy::effective_visibilities
  45: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
  46: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches11SingleCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3s_KB3s_ENtNtB1f_8plumbing9QueryCtx
  47: rustc_query_impl::query_system
  48: rustc_hir_analysis::check::check::check_abi
  49: rustc_hir_analysis::check::wfcheck::check_well_formed
  50: rustc_query_impl::plumbing::query_key_hash_verify_all
  51: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
  52: rustc_query_impl::plumbing::query_key_hash_verify_all
  53: rustc_hir_analysis::check::wfcheck::check_mod_type_wf
  54: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
  55: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches12DefaultCacheNtNtCs58xKICPkfbi_10rustc_span6def_id13LocalModDefIdINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6E
  56: rustc_query_impl::query_system
  57: rustc_hir_analysis::check_crate
  58: <rustc_interface::passes::LintStoreExpandImpl as rustc_expand::base::LintStoreExpand>::pre_expansion_lint
  59: rustc_interface::passes::analysis
  60: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
  61: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches11SingleCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj0_EEKb0_KB3s_KB3s_ENtNtB1f_8plumbing9QueryCtx
  62: rustc_query_impl::query_system
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

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

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 make sure that you have updated to the latest nightly

note: please attach the file at `C:\Users\tema\live_projects\display_orchestra\mqtt_broker\rustc-ice-2025-05-17T19_16_26-12760.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:
#0 [typeck] type-checking `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug`
#1 [check_match] match-checking `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug`
#2 [mir_built] building MIR for `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug`
#3 [has_ffi_unwind_calls] checking if `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug` contains FFI-unwind calls
#4 [mir_promoted] promoting constants in MIR for `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug`
#5 [mir_borrowck] borrow-checking `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug`
#6 [type_of_opaque] computing type of opaque `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug::{opaque#0}`
#7 [type_of] computing type of `problem::<impl at src\problem.rs:33:1: 33:36>::publish_bug::{opaque#0}`
#8 [effective_visibilities] checking effective visibilities
#9 [check_well_formed] checking that `<impl at src\main.rs:33:1: 33:37>` is well-formed
#10 [check_mod_type_wf] checking that types are well-formed in top-level module
#11 [analysis] running analysis passes on this crate
end of query stack
note: no errors encountered even though delayed bugs were created

note: those delayed bugs will now be shown as internal compiler errors

error: internal compiler error: {OpaqueTypeKey { def_id: DefId(0:50 ~ mqtt_broker[5bed]::problem::{impl#4}::publish_bug::{opaque#0}), args: [T/#0, ReLateParam(DefId(0:49 ~ mqtt_broker[5bed]::problem::{impl#4}::publish_bug), LateNamed(DefId(0:240 ~ mqtt_broker[5bed]::problem::{impl#4}::publish_bug::'_), '_)), ReLateParam(DefId(0:49 ~ mqtt_broker[5bed]::problem::{impl#4}::publish_bug), LateNamed(DefId(0:241 ~ mqtt_broker[5bed]::problem::{impl#4}::publish_bug::'_#1), '_))] }: OpaqueHiddenType { span: src\problem.rs:39:5: 39:73 (#69), ty: ?0t }}
  |
  = note: delayed at compiler\rustc_infer\src\infer\opaque_types\table.rs:121:43
             0: std::backtrace_rs::backtrace::win64::trace
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\..\..\backtrace\src\backtrace\win64.rs:85
             1: std::backtrace_rs::backtrace::trace_unsynchronized
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66
             2: std::backtrace::Backtrace::create
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\backtrace.rs:331
             3: std::backtrace::Backtrace::capture
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\backtrace.rs:296
             4: <rustc_errors::DiagCtxtHandle>::flush_delayed
             5: <rustc_errors::DiagCtxtHandle>::emit_diagnostic
             6: <rustc_span::ErrorGuaranteed as rustc_errors::diagnostic::EmissionGuarantee>::emit_producing_guarantee
             7: <hashbrown::raw::RawTable<(rustc_infer::infer::region_constraints::leak_check::LeakCheckScc, ())>>::reserve_rehash::<hashbrown::map::make_hasher<rustc_infer::infer::region_constraints::leak_check::LeakCheckScc, (), rustc_hash::FxBuildHasher>::{closure#0}>
             8: <rustc_infer::infer::opaque_types::table::OpaqueTypeStorage as core::ops::drop::Drop>::drop
             9: RINvMs6_NtCsftUZaTZKFS8_9hashbrown3rawINtB6_8RawTableTNtNtCskemMAiS7hU0_9rustc_hir6hir_id11ItemLocalIdNtNtNtCsiBRRQxmwW46_9rustc_abi6layout2ty8FieldIdxEE14reserve_rehashNCINvNtB8_3map11make_hasherBQ_B1C_NtCs4a4ad12aAro_10rustc_hash13FxBuildHasherE0ECsk0wkf
            10: <hashbrown::raw::RawTable<(usize, ())>>::reserve_rehash::<hashbrown::map::make_hasher<usize, (), rustc_hash::FxBuildHasher>::{closure#0}>
            11: <rustc_hir_typeck::upvar::InferBorrowKind as rustc_hir_typeck::expr_use_visitor::Delegate>::borrow
            12: _CallSettingFrame
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\amd64\handlers.asm:49
            13: __FrameHandler3::FrameUnwindToState
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\frame.cpp:1222
            14: __FrameHandler3::FrameUnwindToEmptyState
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\risctrnsctrl.cpp:255
            15: __InternalCxxFrameHandler<__FrameHandler3>
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\frame.cpp:355
            16: __CxxFrameHandler3
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\risctrnsctrl.cpp:281
            17: _chkstk
            18: RtlUnwindEx
            19: __FrameHandler3::UnwindNestedFrames
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\risctrnsctrl.cpp:759
            20: CatchIt<__FrameHandler3>
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\frame.cpp:1326
            21: FindHandler<__FrameHandler3>
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\frame.cpp:670
            22: __InternalCxxFrameHandler<__FrameHandler3>
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\frame.cpp:396
            23: __CxxFrameHandler3
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\risctrnsctrl.cpp:281
            24: _chkstk
            25: RtlRaiseException
            26: RtlRaiseException
            27: RaiseException
            28: _CxxThrowException
                       at D:\a\_work\1\s\src\vctools\crt\vcruntime\src\eh\throw.cpp:79
            29: panic_unwind::imp::panic
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\panic_unwind\src\seh.rs:355
            30: panic_unwind::__rust_start_panic
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\panic_unwind\src\lib.rs:103
            31: std::panicking::rust_panic
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\panicking.rs:894
            32: std::panicking::rust_panic_with_hook
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\panicking.rs:858
            33: std::panicking::begin_panic_handler::closure$0
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\panicking.rs:706
            34: std::sys::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure_env$0,never$>
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\sys\backtrace.rs:168
            35: std::panicking::begin_panic_handler
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\panicking.rs:697
            36: core::panicking::panic_fmt
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\panicking.rs:75
            37: core::panicking::panic_display
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\panicking.rs:268
            38: core::option::expect_failed
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\core\src\option.rs:2049
            39: <rustc_middle::ty::assoc::AssocItem>::name
            40: <rustc_trait_selection::error_reporting::TypeErrCtxt>::extract_callable_info
            41: <rustc_middle::traits::ObligationCause as rustc_trait_selection::error_reporting::infer::ObligationCauseExt>::as_failure_code_diag
            42: <rustc_trait_selection::error_reporting::TypeErrCtxt>::report_fulfillment_errors
            43: <rustc_hir_typeck::upvar::InferBorrowKind as rustc_hir_typeck::expr_use_visitor::Delegate>::borrow
            44: rustc_hir_typeck::typeck
            45: rustc_query_impl::plumbing::query_key_hash_verify_all
            46: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            47: rustc_query_impl::plumbing::query_key_hash_verify_all
            48: rustc_mir_build::thir::pattern::check_match::check_match
            49: rustc_query_impl::plumbing::query_key_hash_verify_all
            50: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            51: rustc_query_impl::query_system
            52: rustc_mir_build::builder::build_mir
            53: rustc_mir_transform::mir_built
            54: rustc_query_impl::plumbing::query_key_hash_verify_all
            55: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            56: rustc_query_impl::query_system
            57: rustc_mir_transform::ffi_unwind_calls::has_ffi_unwind_calls
            58: rustc_query_impl::plumbing::query_key_hash_verify_all
            59: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            60: rustc_query_impl::plumbing::query_key_hash_verify_all
            61: rustc_mir_transform::mir_promoted
            62: rustc_query_impl::plumbing::query_key_hash_verify_all
            63: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            64: rustc_query_impl::query_system
            65: rustc_borrowck::mir_borrowck
            66: rustc_query_impl::plumbing::query_key_hash_verify_all
            67: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            68: rustc_query_impl::plumbing::query_key_hash_verify_all
            69: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::AllCollector as rustc_hir::intravisit::Visitor>::visit_opaque_ty
            70: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::AllCollector as rustc_hir::intravisit::Visitor>::visit_opaque_ty
            71: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
            72: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches10DefIdCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3r_KB3r_ENtNtB1f_8plumbing9QueryCtxt
            73: rustc_query_impl::query_system
            74: <rustc_hir_analysis::collect::resolve_bound_vars::is_late_bound_map::ConstrainedCollector as rustc_hir::intravisit::Visitor>::visit_ty
            75: rustc_query_impl::plumbing::query_key_hash_verify_all
            76: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches10DefIdCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3r_KB3r_ENtNtB1f_8plumbing9QueryCtxt
            77: rustc_query_impl::plumbing::query_key_hash_verify_all
            78: <rustc_privacy::EmbargoVisitor as rustc_hir::intravisit::Visitor>::visit_item
            79: rustc_privacy::effective_visibilities
            80: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
            81: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches11SingleCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj8_EEKb0_KB3s_KB3s_ENtNtB1f_8plumbing9QueryCtx
            82: rustc_query_impl::query_system
            83: rustc_hir_analysis::check::check::check_abi
            84: rustc_hir_analysis::check::wfcheck::check_well_formed
            85: rustc_query_impl::plumbing::query_key_hash_verify_all
            86: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id10LocalDefIdINtNtNtCs6RMfinxcFgq
            87: rustc_query_impl::plumbing::query_key_hash_verify_all
            88: rustc_hir_analysis::check::wfcheck::check_mod_type_wf
            89: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
            90: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches12DefaultCacheNtNtCs58xKICPkfbi_10rustc_span6def_id13LocalModDefIdINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6E
            91: rustc_query_impl::query_system
            92: rustc_hir_analysis::check_crate
            93: <rustc_interface::passes::LintStoreExpandImpl as rustc_expand::base::LintStoreExpand>::pre_expansion_lint
            94: rustc_interface::passes::analysis
            95: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtCskJc15ZtcHlN_21rustc_data_structures9vec_cache8VecCacheNtNtCs58xKICPkfbi_10rustc_span6def_id8CrateNumINtNtNtCs6RMfinxcFgq_12
            96: RINvNtNtCsceq9HnlmPNX_18rustc_query_system5query8plumbing17try_execute_queryINtCsgtgSloM9rKF_16rustc_query_impl13DynamicConfigINtNtB4_6caches11SingleCacheINtNtNtCs6RMfinxcFgq_12rustc_middle5query5erase6ErasedAhj0_EEKb0_KB3s_KB3s_ENtNtB1f_8plumbing9QueryCtx
            97: rustc_query_impl::query_system
            98: std::sys::backtrace::__rust_begin_short_backtrace::<<std::thread::Builder>::spawn_unchecked_<ctrlc::set_handler_inner<rustc_driver_impl::install_ctrlc_handler::{closure#0}>::{closure#0}, ()>::{closure#1}::{closure#0}::{closure#0}, ()>
            99: std::sys::backtrace::__rust_begin_short_backtrace::<<std::thread::Builder>::spawn_unchecked_<ctrlc::set_handler_inner<rustc_driver_impl::install_ctrlc_handler::{closure#0}>::{closure#0}, ()>::{closure#1}::{closure#0}::{closure#0}, ()>
           100: RINvNtNtCs6g9X9TJcoew_3std3sys9backtrace28___rust_begin_short_backtraceNCNCINvNtCs3G1pbMWZRnv_15rustc_interface4util26run_in_thread_with_globalsNCINvB1e_31run_in_thread_pool_with_globalsNCINvNtB1g_9interface12run_compileruNCNvCsgJSkwfkFLox_17rustc_driver_i
           101: std::sys::backtrace::__rust_begin_short_backtrace::<<std::thread::Builder>::spawn_unchecked_<ctrlc::set_handler_inner<rustc_driver_impl::install_ctrlc_handler::{closure#0}>::{closure#0}, ()>::{closure#1}::{closure#0}::{closure#0}, ()>
           102: alloc::boxed::impl$28::call_once
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\alloc\src\boxed.rs:1966
           103: alloc::boxed::impl$28::call_once
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\alloc\src\boxed.rs:1966
           104: std::sys::pal::windows::thread::impl$0::new::thread_start
                       at /rustc/16d2276fa6fccb0cc239a542d4c3f0eb46f660ec/library\std\src\sys\pal\windows\thread.rs:56
           105: BaseThreadInitThunk
           106: RtlUserThreadStart


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 make sure that you have updated to the latest nightly

note: please attach the file at `C:\Users\tema\live_projects\display_orchestra\mqtt_broker\rustc-ice-2025-05-17T19_16_26-12760.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 `mqtt_broker` (bin "mqtt_broker")

Caused by:
  process didn't exit successfully: `C:\Users\tema\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\bin\rustc.exe --crate-name mqtt_broker --edition=2024 'src\main.rs' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=159 --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=3f7608296271e745 --out-dir 'C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps' -C 'incremental=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\incremental' -L 'dependency=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps' --extern 'bincode=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps\libbincode-106608e7105102e2.rlib' --extern 'rumqttc=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps\librumqttc-74429b055bad0bb5.rlib' --extern 'serde=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps\libserde-a3854178147d9026.rlib' --extern 'tokio=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\deps\libtokio-a74eced2e299292e.rlib' -L 'native=C:\Users\tema\live_projects\display_orchestra\mqtt_broker\target\debug\build\ring-141d77b392aa9d65\out' -L 'native=C:\Users\tema\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows_x86_64_msvc-0.52.6\lib'` (exit code: 101)

Activity

  1. added
    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.
    C-bugCategory: This is a bug.
    on May 17, 2025
  2. added
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    on May 17, 2025
  3. moxian commented on May 17, 2025

    @moxian
    Contributor

    The example does not look truly minimal, and it would be nice to trim it down a bit further..

    @rustbot label: +A-impl-trait +A-associated-items -needs-triage

  4. added
    E-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Example
    S-has-bisectionStatus: A bisection has been found for this issue
    on May 17, 2025
  5. cyrgani commented on May 17, 2025

    @cyrgani
    Contributor
    trait TypedClient {
        fn publish_typed<F>(&self) -> impl Sized
        where
            F: Clone;
    }
    impl TypedClient for () {
        fn publish_typed<F>(&self) -> impl Sized {}
    }
    
    fn main() {
        ().publish_typed();
    }

    @rustbot label S-has-mcve -E-needs-mcve

  6. added
    S-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issue
    A-associated-itemsArea: Associated items (types, constants & functions)
    A-impl-traitArea: `impl Trait`. Universally / existentially quantified anonymous types with static dispatch.
    and removed
    E-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Example
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    on May 17, 2025
  7. deleted a comment from rustbot on May 17, 2025
  8. changed the title [-]rustc paniced with ICE[/-] [+]ICE: name of non-Rpitit assoc item[/+] on May 17, 2025
  9. added
    I-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
    on May 20, 2025
  10. self-assigned this
    on May 20, 2025
  11. added
    S-bug-has-testStatus: This bug is tracked inside the repo by a `known-bug` test.
    on May 20, 2025
  12. apiraino commented on May 20, 2025

    @apiraino
    Contributor

    Assigning priority (discussion on [Zulip](#t-compiler/prioritization/alerts > #141143 ICE: name of non-Rpitit assoc item @ 💬)).

    @rustbot label -I-prioritize +P-medium

  13. added and removed
    I-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
    on May 20, 2025
  14. added a commit that references this issue on May 21, 2025
    1b3159a
  15. added a commit that references this issue on May 21, 2025
    5563644
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-associated-itemsArea: Associated items (types, constants & functions)A-impl-traitArea: `impl Trait`. Universally / existentially quantified anonymous types with static dispatch.C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️P-mediumMedium priorityS-bug-has-testStatus: This bug is tracked inside the repo by a `known-bug` test.S-has-bisectionStatus: A bisection has been found for this issueS-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-betaPerformance or correctness regression from stable to beta.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions