Skip to content

[ICE] thread 'rustc' panicked at compiler/rustc_errors/src/diagnostic.rs:1025:9 #147255

@ym-xie

Description

@ym-xie

Code

fn main() {
    let mut x = 4;
    let  x_str = {
        format!("{}", x);
        //()
    };
    println!("{}", x_str);
}

Meta

rustc --version --verbose(dd7fda5):

rustc 1.92.0-dev
binary: rustc
commit-hash: unknown
commit-date: unknown
host: aarch64-apple-darwin
release: 1.92.0-dev
LLVM version: 21.1.1

It requires debug assertions.

Error output

<no output>
Backtrace

thread 'rustc' panicked at /private/var/tmp/code.1mIq4m/rust/compiler/rustc_errors/src/diagnostic.rs:1025:9:
Span must not be empty and have no suggestion
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panicking.rs:697:5
   1: core::panicking::panic_fmt
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/core/src/panicking.rs:75:14
   2: span_suggestion_with_style<rustc_span::ErrorGuaranteed, &str, &str>
             at ./rust/compiler/rustc_errors/src/diagnostic.rs:1025:9
   3: check_for_binding_assigned_block_without_tail_expression
             at ./rust/compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs:958:17
   4: report_selection_error
             at ./rust/compiler/rustc_trait_selection/src/error_reporting/traits/fulfillment_errors.rs:325:30
   5: report_fulfillment_error
             at ./rust/compiler/rustc_trait_selection/src/error_reporting/traits/mod.rs:271:71
   6: report_fulfillment_errors
             at ./rust/compiler/rustc_trait_selection/src/error_reporting/traits/mod.rs:228:37
   7: select_obligations_where_possible<rustc_hir_typeck::fn_ctxt::_impl::{impl#0}::resolve_ty_and_res_fully_qualified_call::{closure#0}::{closure_env#1}>
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs:667:29
   8: check_argument_types
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:404:22
   9: confirm_builtin_call
             at ./rust/compiler/rustc_hir_typeck/src/callee.rs:574:14
  10: check_expr_call
             at ./rust/compiler/rustc_hir_typeck/src/callee.rs:131:22
  11: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:575:50
  12: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  13: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  14: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  15: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  16: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  17: check_expr_with_hint
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:177:14
  18: check_expr_array
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:1828:33
  19: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:591:43
  20: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  21: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  22: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  23: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  24: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  25: check_expr_coercible_to_type_or_error<rustc_hir_typeck::expr::{impl#0}::check_expr_coercible_to_type::{closure_env#0}>
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:153:23
  26: check_expr_coercible_to_type
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:143:14
  27: check_decl_initializer
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:865:18
  28: check_decl
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:875:32
  29: check_decl_local
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:910:23
  30: check_stmt
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:934:22
  31: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1015:22
  32: with_breakable_ctxt<rustc_hir_typeck::fn_ctxt::checks::{impl#0}::check_expr_block::{closure_env#0}, ()>
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs:1533:22
  33: check_expr_block
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1013:31
  34: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:574:46
  35: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  36: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  37: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  38: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  39: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  40: {closure#1}
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:343:35
  41: check_argument_types
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:440:34
  42: confirm_builtin_call
             at ./rust/compiler/rustc_hir_typeck/src/callee.rs:574:14
  43: check_expr_call
             at ./rust/compiler/rustc_hir_typeck/src/callee.rs:131:22
  44: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:575:50
  45: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  46: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  47: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  48: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  49: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  50: check_expr
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:201:14
  51: check_stmt
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:962:31
  52: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1015:22
  53: with_breakable_ctxt<rustc_hir_typeck::fn_ctxt::checks::{impl#0}::check_expr_block::{closure_env#0}, ()>
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs:1533:22
  54: check_expr_block
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1013:31
  55: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:574:46
  56: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  57: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  58: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  59: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  60: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  61: check_expr
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:201:14
  62: check_stmt
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:962:31
  63: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1015:22
  64: with_breakable_ctxt<rustc_hir_typeck::fn_ctxt::checks::{impl#0}::check_expr_block::{closure_env#0}, ()>
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs:1533:22
  65: check_expr_block
             at ./rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1013:31
  66: check_expr_kind
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:574:46
  67: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:282:23
  68: maybe_grow<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/stacker-0.1.21/src/lib.rs:57:9
  69: ensure_sufficient_stack<rustc_middle::ty::Ty, rustc_hir_typeck::expr::{impl#0}::check_expr_with_expectation_and_args::{closure_env#0}>
             at ./rust/compiler/rustc_data_structures/src/stack.rs:21:5
  70: check_expr_with_expectation_and_args
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:277:18
  71: check_expr_with_expectation
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:222:14
  72: check_expr_with_hint
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:177:14
  73: check_return_or_body_tail
             at ./rust/compiler/rustc_hir_typeck/src/expr.rs:1131:35
  74: check_fn
             at ./rust/compiler/rustc_hir_typeck/src/check.rs:130:9
  75: {closure#0}
             at ./rust/compiler/rustc_hir_typeck/src/lib.rs:181:9
  76: typeck_with_inspect
             at ./rust/compiler/rustc_hir_typeck/src/lib.rs:106:1
  77: {closure#0}
             at ./rust/compiler/rustc_query_impl/src/plumbing.rs:294:9
      [... omitted 22 frames ...]
  78: query_ensure<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
             at ./rust/compiler/rustc_middle/src/query/plumbing.rs:198:9
  79: typeck<rustc_span::def_id::LocalDefId>
             at ./rust/compiler/rustc_middle/src/query/plumbing.rs:233:9
  80: {closure#2}
             at ./rust/compiler/rustc_hir_analysis/src/lib.rs:243:29
  81: {closure#0}<rustc_hir_analysis::check_crate::{closure_env#2}>
             at ./rust/compiler/rustc_middle/src/hir/map.rs:340:79
  82: {closure#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:181:30
  83: call_once<(), rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure#1}::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/core/src/panic/unwind_safe.rs:272:9
  84: do_call<core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure#1}::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>, ()>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panicking.rs:589:40
  85: catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure#1}::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panicking.rs:552:19
  86: catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure#1}::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>, ()>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panic.rs:359:14
  87: run<(), rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure#1}::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:23:9
  88: {closure#1}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:181:23
  89: for_each<rustc_span::def_id::LocalDefId, rustc_data_structures::sync::parallel::par_for_each_in::{closure#0}::{closure_env#1}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/core/src/slice/iter/macros.rs:277:21
  90: {closure#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:180:27
  91: parallel_guard<(), rustc_data_structures::sync::parallel::par_for_each_in::{closure_env#0}<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:39:15
  92: par_for_each_in<&rustc_span::def_id::LocalDefId, &[rustc_span::def_id::LocalDefId], rustc_middle::hir::map::{impl#3}::par_hir_body_owners::{closure_env#0}<rustc_hir_analysis::check_crate::{closure_env#2}>>
             at ./rust/compiler/rustc_data_structures/src/sync/parallel.rs:175:5
  93: par_hir_body_owners<rustc_hir_analysis::check_crate::{closure_env#2}>
             at ./rust/compiler/rustc_middle/src/hir/map.rs:340:9
  94: check_crate
             at ./rust/compiler/rustc_hir_analysis/src/lib.rs:221:9
  95: run_required_analyses
             at ./rust/compiler/rustc_interface/src/passes.rs:1082:5
  96: analysis
             at ./rust/compiler/rustc_interface/src/passes.rs:1143:5
  97: {closure#0}
             at ./rust/compiler/rustc_query_impl/src/plumbing.rs:294:9
      [... omitted 22 frames ...]
  98: query_ensure<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>>
             at ./rust/compiler/rustc_middle/src/query/plumbing.rs:198:9
  99: analysis
             at ./rust/compiler/rustc_middle/src/query/plumbing.rs:233:9
 100: {closure#2}
             at ./rust/compiler/rustc_driver_impl/src/lib.rs:371:29
 101: {closure#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
             at ./rust/compiler/rustc_interface/src/passes.rs:1017:27
 102: {closure#1}<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>
             at ./rust/compiler/rustc_middle/src/ty/context.rs:1619:37
 103: {closure#0}<rustc_middle::ty::context::{impl#21}::enter::{closure_env#1}<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>
             at ./rust/compiler/rustc_middle/src/ty/context/tls.rs:60:9
 104: try_with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_middle::ty::context::{impl#21}::enter::{closure_env#1}<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/thread/local.rs:315:12
 105: with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_middle::ty::context::{impl#21}::enter::{closure_env#1}<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/thread/local.rs:279:20
 106: enter_context<rustc_middle::ty::context::{impl#21}::enter::{closure_env#1}<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>, core::option::Option<rustc_interface::queries::Linker>>
             at ./rust/compiler/rustc_middle/src/ty/context/tls.rs:57:9
 107: enter<rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, core::option::Option<rustc_interface::queries::Linker>>
             at ./rust/compiler/rustc_middle/src/ty/context.rs:1619:9
 108: create_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt::{closure#2}::{closure_env#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>>
             at ./rust/compiler/rustc_middle/src/ty/context.rs:1824:13
 109: {closure#2}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
             at ./rust/compiler/rustc_interface/src/passes.rs:984:9
 110: call_once<rustc_interface::passes::create_and_enter_global_ctxt::{closure_env#2}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>, (&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, alloc::sync::Arc<rustc_data_structures::jobserver::Proxy, alloc::alloc::Global>, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2})>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/core/src/ops/function.rs:253:5
 111: call_once<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, alloc::sync::Arc<rustc_data_structures::jobserver::Proxy, alloc::alloc::Global>, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}), dyn core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, alloc::sync::Arc<rustc_data_structures::jobserver::Proxy, alloc::alloc::Global>, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}), Output=core::option::Option<rustc_interface::queries::Linker>>, alloc::alloc::Global>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/alloc/src/boxed.rs:1971:9
 112: create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
             at ./rust/compiler/rustc_interface/src/passes.rs:1025:5
 113: {closure#0}
             at ./rust/compiler/rustc_driver_impl/src/lib.rs:344:22
 114: {closure#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>
             at ./rust/compiler/rustc_interface/src/interface.rs:531:80
 115: call_once<(), rustc_interface::interface::run_compiler::{closure#1}::{closure_env#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/core/src/panic/unwind_safe.rs:272:9
 116: do_call<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler::{closure#1}::{closure_env#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>>, ()>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panicking.rs:589:40
 117: catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler::{closure#1}::{closure_env#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>>>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panicking.rs:552:19
 118: catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler::{closure#1}::{closure_env#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>>, ()>
             at /rustc/788da80fcfcef3f34c90def5baa32813e39a1a41/library/std/src/panic.rs:359:14
 119: {closure#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>
             at ./rust/compiler/rustc_interface/src/interface.rs:531:23
 120: {closure#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>
             at ./rust/compiler/rustc_interface/src/util.rs:200:17
 121: {closure#0}<rustc_interface::util::run_in_thread_pool_with_globals::{closure_env#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>, ()>
             at ./rust/compiler/rustc_interface/src/util.rs:154:24
 122: set<rustc_span::SessionGlobals, rustc_interface::util::run_in_thread_with_globals::{closure#0}::{closure#0}::{closure_env#0}<rustc_interface::util::run_in_thread_pool_with_globals::{closure_env#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>, ()>, ()>
             at /Users/xieym/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-4dc01642fd091eda/scoped-tls-1.0.1/src/lib.rs:137:9
 123: create_session_globals_then<(), rustc_interface::util::run_in_thread_with_globals::{closure#0}::{closure#0}::{closure_env#0}<rustc_interface::util::run_in_thread_pool_with_globals::{closure_env#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>, ()>>
             at ./rust/compiler/rustc_span/src/lib.rs:146:21
 124: {closure#0}<rustc_interface::util::run_in_thread_pool_with_globals::{closure_env#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>, ()>
             at ./rust/compiler/rustc_interface/src/util.rs:150:17
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 `/private/var/tmp/code.1mIq4m/rustc-ice-2025-10-02T04_28_54-28336.txt` to your bug report

query stack during panic:
#0 [typeck] type-checking `main`
#1 [analysis] running analysis passes on this crate
end of query stack

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-diagnosticsArea: Messages for errors, warnings, and lintsC-bugCategory: This is a bug.E-needs-bisectionCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcI-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.requires-debug-assertionsThis issue requires a build of rustc or tooling with debug-assertions in some way

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions