Skip to content

Comments

Add 1 type parameter to RangeBounds<Start, End = Start> and all existing range types#151334

Draft
asder8215 wants to merge 4 commits intorust-lang:mainfrom
asder8215:range_add_one_type_parameter
Draft

Add 1 type parameter to RangeBounds<Start, End = Start> and all existing range types#151334
asder8215 wants to merge 4 commits intorust-lang:mainfrom
asder8215:range_add_one_type_parameter

Conversation

@asder8215
Copy link
Contributor

@asder8215 asder8215 commented Jan 18, 2026

This commit implements adding a typed parameter to RangeBounds trait, Range struct, and RangeInclusive struct as per nik-rev's accepted ACP here: rust-lang/libs-team#653.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jan 18, 2026
@rustbot
Copy link
Collaborator

rustbot commented Jan 18, 2026

r? @joboet

rustbot has assigned @joboet.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@asder8215
Copy link
Contributor Author

Feel free to take over this PR @nik-rev since this was your accepted ACP.

@rust-log-analyzer

This comment has been minimized.

@nik-rev
Copy link
Contributor

nik-rev commented Jan 18, 2026

Feel free to take over this PR @nik-rev since this was your accepted ACP.

I haven't sent a PR in these months, it's yours! Thanks for the help!

@asder8215 asder8215 marked this pull request as draft January 20, 2026 22:11
@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 20, 2026
@asder8215
Copy link
Contributor Author

asder8215 commented Jan 21, 2026

I pinpointed the issue for the clippy ci error to src/tools/clippy/clippy_lints/src/ranges.rs (see line marked with comment as ERRORS HERE):

fn can_switch_range<'tcx>{
// ABOVE OMITTED

    // Check if `expr` is used for indexing, and if the switched range type could be used
    // as well.
    if let ExprKind::Index(outer_expr, index, _) = parent_expr.kind
        && index.hir_id == expr.hir_id
        // Build the switched range type (for example `RangeInclusive<usize>`).
        && let Some(switched_range_def_id) = match original {
            RangeLimits::HalfOpen => cx.tcx.lang_items().range_inclusive_struct(),
            RangeLimits::Closed => cx.tcx.lang_items().range_struct(),
        }
        && let switched_range_ty = cx
            .tcx
            .type_of(switched_range_def_id)
            .instantiate(cx.tcx, &[inner_ty.into()]) // <- ERRORS HERE
        // Check that the switched range type can be used for indexing the original expression
        // through the `Index` or `IndexMut` trait.
        && let ty::Ref(_, outer_ty, mutability) = cx.typeck_results().expr_ty_adjusted(outer_expr).kind()
        && let Some(index_def_id) = match mutability {
            Mutability::Not => cx.tcx.lang_items().index_trait(),
            Mutability::Mut => cx.tcx.lang_items().index_mut_trait(),
        }

// BELOW OMITTED
}

Following through the function, I can see what triggers the .type_param_out_of_range() function is the .fold_with() call within GenericArgsRef<'tcx>'s fold_with() function:

impl<'tcx> TypeFoldable<TyCtxt<'tcx>> for GenericArgsRef<'tcx> {
// OMITTED ABOVE
    fn fold_with<F: TypeFolder<TyCtxt<'tcx>>>(self, folder: &mut F) -> Self {
        // See justification for this behavior in `try_fold_with`.
        match self.len() {
            1 => {
                let param0 = self[0].fold_with(folder);
                if param0 == self[0] { self } else { folder.cx().mk_args(&[param0]) }
            }
            2 => {
                let param0 = self[0].fold_with(folder);
                let param1 = self[1].fold_with(folder); // ERRORS HERE
                if param0 == self[0] && param1 == self[1] {
                    self
                } else {
                    folder.cx().mk_args(&[param0, param1])
                }
            }
            0 => self,
            _ => ty::util::fold_list(self, folder, |tcx, v| tcx.mk_args(v)),
        }
    }
// OMITTED BELOW
}

// calls fold_ty() eventually
impl<'a, I: Interner> TypeFolder<I> for ArgFolder<'a, I> {
    // OMITTED ABOVE
    fn fold_ty(&mut self, t: I::Ty) -> I::Ty {
        if !t.has_param() {
            return t;
        }

        match t.kind() {
            ty::Param(p) => self.ty_for_param(p, t), // Triggers this function
            _ => t.super_fold_with(self),
        }
    }
    // OMITTED BELOW
}

impl<'a, I: Interner> ArgFolder<'a, I> {
    fn ty_for_param(&self, p: I::ParamTy, source_ty: I::Ty) -> I::Ty {
        // Look up the type in the args. It really should be in there.
        let opt_ty = self.args.get(p.index() as usize).map(|arg| arg.kind());
        let ty = match opt_ty {
            Some(ty::GenericArgKind::Type(ty)) => ty,
            Some(kind) => self.type_param_expected(p, source_ty, kind),
            None => self.type_param_out_of_range(p, source_ty), // Produces error here
        };

        self.shift_vars_through_binders(ty)
    }
    // OMITTED BELOW
}

I know that in the can_switch_range() function one type argument is passed into .instantiate(), which I'm assuming is the reason why the self.type_param_out_of_range() function gets triggered because it couldn't find another type to associate with the second generic argument (as this PR attempts to change Range and RangeInclusive structs to have 2 generic typed parameters, Start and End = Start). I know that if I do .instantiate(cx.tcx, &[inner_ty.into(), inner_ty.into()]) instead of what it was previously, the clippy ci tests will pass, but I feel like doing this is hacky; I feel like the compiler should be recognize that if no second generic type parameter (or param1 here) is passed in and we know that the second generic type parameter is defaulted to the first one, then it should insert or be able to ascertain that the type of the second generic parameter must be what the first generic parameter is.

Also, when I run ./x test --bless to update the stderr messages. I notice an issue coming from rfc-2497-if-let-chains/irrefutable-lets.rs with this line:

let opt = Some(None..Some(1));

^This currently has inference issue because it isn't able to ascertain that the None in None..Some(1) is the same type as Some(1) (hence you either need to do None::<T> or explicitly mention the type on LHS); this seems like an issue that would be need to be resolved on the compiler end as well.

@joboet how should I approach this? Should this be an RFC or MCP?

Update: On the clippy thing, I realized that I could grab the start bound and pass in the type of that as the first argument.

@asder8215
Copy link
Contributor Author

Also, here's the stack backtrace on the clippy ci fail with debug set to true:

thread 'rustc' panicked at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:784:9:
type parameter `End/#1` (End/#1/1) out of range when instantiating, args=[usize]
stack backtrace:
   0:     0x7fbd2ba7aadb - std::backtrace_rs::backtrace::libunwind::trace::h855c41f653654f70
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
   1:     0x7fbd2ba7aadb - std::backtrace_rs::backtrace::trace_unsynchronized::h2f85355b4719c13b
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
   2:     0x7fbd2ba7aadb - std::backtrace::Backtrace::create::h3d22c69ef862213f
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/backtrace.rs:331:13
   3:     0x7fbd2ba7aa25 - std::backtrace::Backtrace::force_capture::h0af1e56e8297fd47
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/backtrace.rs:312:9
   4:     0x7fbd277f8705 - {closure#1}
                               at /home/asder8215/coding-project/rust/compiler/rustc_driver_impl/src/lib.rs:1466:25
   5:     0x7fbd277f8705 - call<(&(dyn core::ops::function::Fn<(&std::panic::PanicHookInfo), Output=()> + core::marker::Send + core::marker::Sync), &std::panic::PanicHookInfo), rustc_driver_impl::install_ice_hook::{closure_env#1}, alloc::alloc::Global>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/alloc/src/boxed.rs:2220:9
   6:     0x7fbd2ba7b692 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h62c162b52bf943ba
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/alloc/src/boxed.rs:2220:9
   7:     0x7fbd2ba7b692 - std::panicking::panic_with_hook::h148eda47c092496f
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:833:13
   8:     0x7fbd2ba7b428 - std::panicking::panic_handler::{{closure}}::ha3c322b8140a1a72
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:698:13
   9:     0x7fbd2ba730e9 - std::sys::backtrace::__rust_end_short_backtrace::h3f9e1abc6ce6b66f
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/sys/backtrace.rs:176:18
  10:     0x7fbd2ba500bd - __rustc[1cd308e5081fab86]::rust_begin_unwind
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:689:5
  11:     0x7fbd2bae9f8c - core::panicking::panic_fmt::hc375fcb7f9c166b1
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panicking.rs:80:14
  12:     0x7fbd2b2cf147 - <rustc_type_ir[c9a9bf26888a8066]::binder::ArgFolder<rustc_middle[9258f716d4c9ce97]::ty::context::TyCtxt>>::type_param_out_of_range
                               at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:784:9
  13:     0x55beced6f9b7 - ty_for_param<rustc_middle::ty::context::TyCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:762:26
  14:     0x55beced6f9b7 - fold_ty<rustc_middle::ty::context::TyCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:733:34
  15:     0x55beced7c8f4 - fold_with<rustc_type_ir::binder::ArgFolder<rustc_middle::ty::context::TyCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/generic_args.rs:640:38
  16:     0x55becee76662 - super_fold_with<rustc_type_ir::binder::ArgFolder<rustc_middle::ty::context::TyCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/structural_impls.rs:427:53
  17:     0x55beced6f58d - fold_ty<rustc_middle::ty::context::TyCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:734:20
  18:     0x55beced6b79e - fold_with<rustc_type_ir::binder::ArgFolder<rustc_middle::ty::context::TyCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/structural_impls.rs:363:16
  19:     0x55beced6b79e - instantiate<rustc_middle::ty::context::TyCtxt, rustc_middle::ty::Ty, &[rustc_middle::ty::generic_args::GenericArg; 1]>
                               at /home/asder8215/coding-project/rust/compiler/rustc_type_ir/src/binder.rs:657:20
  20:     0x55becf0e5682 - can_switch_ranges
                               at /home/asder8215/coding-project/rust/src/tools/clippy/clippy_lints/src/ranges.rs:450:14
  21:     0x55becf19bb9f - check_range_switch<fn(&rustc_lint::context::LateContext, &rustc_hir::hir::Expr) -> core::option::Option<&rustc_hir::hir::Expr>>
                               at /home/asder8215/coding-project/rust/src/tools/clippy/clippy_lints/src/ranges.rs:516:12
  22:     0x55becf0e6a81 - check_exclusive_range_plus_one
                               at /home/asder8215/coding-project/rust/src/tools/clippy/clippy_lints/src/ranges.rs:471:5
  23:     0x55becf0e6a81 - check_expr
                               at /home/asder8215/coding-project/rust/src/tools/clippy/clippy_lints/src/ranges.rs:192:9
  24:     0x7fbd29ada035 - check_expr
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:328:26
  25:     0x7fbd29d08cdf - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:33:14
  26:     0x7fbd29d08cdf - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  27:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  28:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  29:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  30:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  31:     0x7fbd29b212ae - walk_expr<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
  32:     0x7fbd29d08cea - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:167:17
  33:     0x7fbd29d08cea - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  34:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  35:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  36:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  37:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  38:     0x7fbd29b217e5 - walk_expr<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
  39:     0x7fbd29d08cea - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:167:17
  40:     0x7fbd29d08cea - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  41:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  42:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  43:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  44:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  45:     0x7fbd29b214dc - walk_expr<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:841:13
  46:     0x7fbd29d08cea - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:167:17
  47:     0x7fbd29d08cea - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  48:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  49:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  50:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  51:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  52:     0x7fbd29d0a962 - visit_stmt<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:179:9
  53:     0x7fbd29b0eb4c - walk_block<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:700:5
  54:     0x7fbd29d0aa3e - <rustc_lint[c928d644b270d62f]::late::LateContextAndPass<rustc_lint[c928d644b270d62f]::late::RuntimeCombinedLateLintPass> as rustc_hir[69c8ee1b8930b0c3]::intravisit::Visitor>::visit_block
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:240:9
  55:     0x7fbd29b21846 - walk_expr<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
  56:     0x7fbd29d08cea - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:167:17
  57:     0x7fbd29d08cea - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  58:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  59:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  60:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  61:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  62:     0x7fbd29b0eb69 - walk_block<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:701:5
  63:     0x7fbd29d0aa3e - <rustc_lint[c928d644b270d62f]::late::LateContextAndPass<rustc_lint[c928d644b270d62f]::late::RuntimeCombinedLateLintPass> as rustc_hir[69c8ee1b8930b0c3]::intravisit::Visitor>::visit_block
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:240:9
  64:     0x7fbd29b21846 - walk_expr<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
  65:     0x7fbd29d08cea - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:167:17
  66:     0x7fbd29d08cea - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_expr::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  67:     0x7fbd29d0a60c - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:165:18
  68:     0x7fbd29d0a60c - maybe_grow<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
  69:     0x7fbd29d0a60c - ensure_sufficient_stack<(), rustc_lint::late::{impl#1}::visit_expr::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
  70:     0x7fbd29d0a60c - visit_expr<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:164:9
  71:     0x7fbd29d0bd1a - visit_body<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:120:9
  72:     0x7fbd29d0bd1a - visit_nested_body<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:103:14
  73:     0x7fbd29d0beab - visit_fn<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:196:9
  74:     0x7fbd29b138b8 - rustc_hir[69c8ee1b8930b0c3]::intravisit::walk_impl_item::<rustc_lint[c928d644b270d62f]::late::LateContextAndPass<rustc_lint[c928d644b270d62f]::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:1333:55
  75:     0x7fbd29d0eb31 - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:288:17
  76:     0x7fbd29d0eb31 - with_param_env<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_impl_item::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:71:9
  77:     0x7fbd29d0eb31 - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:286:16
  78:     0x7fbd29d0eb31 - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_impl_item::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  79:     0x7fbd29d0eb31 - visit_impl_item<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:285:14
  80:     0x7fbd29d0eb31 - visit_nested_impl_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:271:29
  81:     0x7fbd29b2509c - walk_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:613:13
  82:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:132:17
  83:     0x7fbd29d0e4fd - with_param_env<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:71:9
  84:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:130:16
  85:     0x7fbd29d0e4fd - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  86:     0x7fbd29d0e4fd - visit_item<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:129:14
  87:     0x7fbd29d0e4fd - visit_nested_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:249:29
  88:     0x7fbd29b1e99a - walk_mod<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:656:5
  89:     0x7fbd29b25220 - walk_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:578:32
  90:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:132:17
  91:     0x7fbd29d0e4fd - with_param_env<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:71:9
  92:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:130:16
  93:     0x7fbd29d0e4fd - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
  94:     0x7fbd29d0e4fd - visit_item<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:129:14
  95:     0x7fbd29d0e4fd - visit_nested_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:249:29
  96:     0x7fbd29b1e99a - walk_mod<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:656:5
  97:     0x7fbd29b25220 - walk_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:578:32
  98:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:132:17
  99:     0x7fbd29d0e4fd - with_param_env<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:71:9
 100:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:130:16
 101:     0x7fbd29d0e4fd - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
 102:     0x7fbd29d0e4fd - visit_item<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:129:14
 103:     0x7fbd29d0e4fd - visit_nested_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:249:29
 104:     0x7fbd29b1e99a - walk_mod<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:656:5
 105:     0x7fbd29b25220 - walk_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:578:32
 106:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:132:17
 107:     0x7fbd29d0e4fd - with_param_env<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure#0}::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:71:9
 108:     0x7fbd29d0e4fd - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:130:16
 109:     0x7fbd29d0e4fd - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::{impl#1}::visit_item::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
 110:     0x7fbd29d0e4fd - visit_item<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:129:14
 111:     0x7fbd29d0e4fd - visit_nested_item<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:249:29
 112:     0x7fbd29b1e99a - walk_mod<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_hir/src/intravisit.rs:656:5
 113:     0x7fbd29c72f62 - <rustc_middle[9258f716d4c9ce97]::ty::context::TyCtxt>::hir_walk_toplevel_module::<rustc_lint[c928d644b270d62f]::late::LateContextAndPass<rustc_lint[c928d644b270d62f]::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/hir/map.rs:390:17
 114:     0x7fbd29d0a407 - {closure#0}<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:457:13
 115:     0x7fbd29d0a407 - with_lint_attrs<rustc_lint::late::RuntimeCombinedLateLintPass, rustc_lint::late::late_lint_crate_inner::{closure_env#0}<rustc_lint::late::RuntimeCombinedLateLintPass>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:59:9
 116:     0x7fbd29d0a407 - late_lint_crate_inner<rustc_lint::late::RuntimeCombinedLateLintPass>
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:453:8
 117:     0x7fbd29ad9d26 - late_lint_crate
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:442:5
 118:     0x7fbd29c4b4ab - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:468:17
 119:     0x7fbd29c4b4ab - run<(), rustc_lint::late::check_crate::{closure#0}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/profiling.rs:844:9
 120:     0x7fbd29c4b4ab - time<(), rustc_lint::late::check_crate::{closure#0}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_session/src/utils.rs:17:50
 121:     0x7fbd29bc3ba5 - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:466:22
 122:     0x7fbd29bc3ba5 - call_once<(), rustc_lint::late::check_crate::{closure_env#0}>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panic/unwind_safe.rs:274:9
 123:     0x7fbd29bc3ba5 - do_call<core::panic::unwind_safe::AssertUnwindSafe<rustc_lint::late::check_crate::{closure_env#0}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:581:40
 124:     0x7fbd29bc3ba5 - catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_lint::late::check_crate::{closure_env#0}>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:544:19
 125:     0x7fbd29bc3ba5 - catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rustc_lint::late::check_crate::{closure_env#0}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panic.rs:359:14
 126:     0x7fbd29bc3ba5 - run<(), rustc_lint::late::check_crate::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:23:9
 127:     0x7fbd29bc3ba5 - {closure#0}<rustc_lint::late::check_crate::{closure_env#0}, rustc_lint::late::check_crate::{closure_env#1}, (), ()>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:52:23
 128:     0x7fbd29bc3ba5 - parallel_guard<(core::option::Option<()>, core::option::Option<()>), rustc_data_structures::sync::parallel::serial_join::{closure_env#0}<rustc_lint::late::check_crate::{closure_env#0}, rustc_lint::late::check_crate::{closure_env#1}, (), ()>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:39:15
 129:     0x7fbd29bc3ba5 - serial_join<rustc_lint::late::check_crate::{closure_env#0}, rustc_lint::late::check_crate::{closure_env#1}, (), ()>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:51:18
 130:     0x7fbd29ad9a4b - join<rustc_lint::late::check_crate::{closure_env#0}, rustc_lint::late::check_crate::{closure_env#1}, (), ()>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:132:9
 131:     0x7fbd29ad9a4b - check_crate
                               at /home/asder8215/coding-project/rust/compiler/rustc_lint/src/late.rs:464:5
 132:     0x7fbd279a64fc - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1179:29
 133:     0x7fbd279a64fc - run<(), rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/profiling.rs:844:9
 134:     0x7fbd279a64fc - time<(), rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_session/src/utils.rs:17:50
 135:     0x7fbd279b8048 - {closure#2}
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1178:30
 136:     0x7fbd279b8048 - call_once<(), rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure#0}::{closure_env#2}>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panic/unwind_safe.rs:274:9
 137:     0x7fbd279b8048 - do_call<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure#0}::{closure_env#2}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:581:40
 138:     0x7fbd279b8048 - catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure#0}::{closure_env#2}>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:544:19
 139:     0x7fbd279b8048 - catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure#0}::{closure_env#2}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panic.rs:359:14
 140:     0x7fbd279b8048 - run<(), rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure#0}::{closure_env#2}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:23:9
 141:     0x7fbd279b8048 - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:88:29
 142:     0x7fbd279b8048 - parallel_guard<(), rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure#0}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:39:15
 143:     0x7fbd279b8048 - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1166:17
 144:     0x7fbd279b8048 - call_once<(), rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure_env#0}>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panic/unwind_safe.rs:274:9
 145:     0x7fbd279b8048 - do_call<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure_env#0}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:581:40
 146:     0x7fbd279b8048 - catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure_env#0}>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:544:19
 147:     0x7fbd279b8048 - catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure_env#0}>, ()>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panic.rs:359:14
 148:     0x7fbd279b8048 - run<(), rustc_interface::passes::analysis::{closure#0}::{closure#1}::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:23:9
 149:     0x7fbd279a74ec - {closure#1}
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:87:27
 150:     0x7fbd279a74ec - parallel_guard<(), rustc_interface::passes::analysis::{closure#0}::{closure_env#1}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/sync/parallel.rs:39:15
 151:     0x7fbd279a74ec - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1162:9
 152:     0x7fbd279a74ec - run<(), rustc_interface::passes::analysis::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/profiling.rs:844:9
 153:     0x7fbd279a74ec - time<(), rustc_interface::passes::analysis::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_session/src/utils.rs:17:50
 154:     0x7fbd27a50c07 - analysis
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1161:10
 155:     0x7fbd29f3e655 - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:282:9
 156:     0x7fbd29f3e655 - __rust_begin_short_backtrace<rustc_query_impl::query_impl::analysis::dynamic_query::{closure#2}::{closure_env#0}, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:552:18
 157:     0x7fbd29e0c298 - {closure#2}
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:629:25
 158:     0x7fbd29e0c298 - call_once<rustc_query_impl::query_impl::analysis::dynamic_query::{closure_env#2}, (rustc_middle::ty::context::TyCtxt, ())>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/ops/function.rs:250:5
 159:     0x7fbd29da8673 - compute<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/lib.rs:116:9
 160:     0x7fbd29da8673 - {closure#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:497:72
 161:     0x7fbd29da8673 - {closure#0}<rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:60:9
 162:     0x7fbd29da8673 - try_with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/local.rs:513:12
 163:     0x7fbd29da8673 - with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/local.rs:477:20
 164:     0x7fbd2a01135c - enter_context<rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:57:9
 165:     0x7fbd2a01135c - {closure#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:156:13
 166:     0x7fbd2a01135c - {closure#0}<rustc_query_impl::plumbing::{impl#3}::start_query::{closure_env#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:112:9
 167:     0x7fbd2a01135c - {closure#0}<rustc_middle::ty::context::tls::with_related_context::{closure_env#0}<rustc_query_impl::plumbing::{impl#3}::start_query::{closure_env#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:90:36
 168:     0x7fbd2a01135c - with_context_opt<rustc_middle::ty::context::tls::with_context::{closure_env#0}<rustc_middle::ty::context::tls::with_related_context::{closure_env#0}<rustc_query_impl::plumbing::{impl#3}::start_query::{closure_env#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:79:18
 169:     0x7fbd2a01135c - with_context<rustc_middle::ty::context::tls::with_related_context::{closure_env#0}<rustc_query_impl::plumbing::{impl#3}::start_query::{closure_env#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>, rustc_middle::query::erase::Erased<[u8; 0]>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:90:5
 170:     0x7fbd2a01135c - with_related_context<rustc_query_impl::plumbing::{impl#3}::start_query::{closure_env#0}<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>, rustc_middle::query::erase::Erased<[u8; 0]>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:103:5
 171:     0x7fbd2a01135c - start_query<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::execute_job_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:142:9
 172:     0x7fbd2a01135c - execute_job_non_incr<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:497:22
 173:     0x7fbd2a01135c - execute_job<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:433:9
 174:     0x7fbd2a01135c - try_execute_query<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:376:13
 175:     0x7fbd29e0ba6d - {closure#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:818:32
 176:     0x7fbd29e0ba6d - maybe_grow<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::get_query_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>
                               at /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stacker-0.1.21/src/lib.rs:57:9
 177:     0x7fbd29e0ba6d - ensure_sufficient_stack<rustc_middle::query::erase::Erased<[u8; 0]>, rustc_query_system::query::plumbing::get_query_non_incr::{closure_env#0}<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_data_structures/src/stack.rs:21:5
 178:     0x7fbd29e0ba6d - get_query_non_incr<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt>
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_system/src/query/plumbing.rs:818:5
 179:     0x7fbd29e0ba6d - __rust_end_short_backtrace
                               at /home/asder8215/coding-project/rust/compiler/rustc_query_impl/src/plumbing.rs:605:26
 180:     0x7fbd277853b7 - query_ensure<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 0]>>>
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/query/inner.rs:51:9
 181:     0x7fbd277853b7 - analysis
                               at /home/asder8215/coding-project/rust/compiler/rustc_middle/src/query/plumbing.rs:173:9
 182:     0x7fbd277853b7 - {closure#2}
                               at /home/asder8215/coding-project/rust/compiler/rustc_driver_impl/src/lib.rs:367:29
 183:     0x7fbd277853b7 - {closure#0}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1021:27
 184:     0x7fbd277853b7 - {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 /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context.rs:1648:37
 185:     0x7fbd277853b7 - {closure#0}<rustc_middle::ty::context::{impl#20}::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 /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:60:9
 186:     0x7fbd277853b7 - try_with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_middle::ty::context::{impl#20}::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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/local.rs:513:12
 187:     0x7fbd277853b7 - with<core::cell::Cell<*const ()>, rustc_middle::ty::context::tls::enter_context::{closure_env#0}<rustc_middle::ty::context::{impl#20}::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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/local.rs:477:20
 188:     0x7fbd27765f4d - enter_context<rustc_middle::ty::context::{impl#20}::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 /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context/tls.rs:57:9
 189:     0x7fbd27765f4d - 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 /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context.rs:1648:9
 190:     0x7fbd27765f4d - 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 /home/asder8215/coding-project/rust/compiler/rustc_middle/src/ty/context.rs:1855:13
 191:     0x7fbd27789bf6 - {closure#2}<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:988:9
 192:     0x7fbd27789bf6 - 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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/ops/function.rs:250:5
 193:     0x7fbd277f83a2 - 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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/alloc/src/boxed.rs:2206:9
 194:     0x7fbd27788a8d - create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure_env#2}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/passes.rs:1029:5
 195:     0x7fbd27769533 - {closure#0}
                               at /home/asder8215/coding-project/rust/compiler/rustc_driver_impl/src/lib.rs:340:22
 196:     0x7fbd27769533 - {closure#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/interface.rs:552:80
 197:     0x7fbd27769533 - call_once<(), rustc_interface::interface::run_compiler::{closure#1}::{closure_env#0}<(), rustc_driver_impl::run_compiler::{closure_env#0}>>
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panic/unwind_safe.rs:274:9
 198:     0x7fbd27769533 - 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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:581:40
 199:     0x7fbd27769533 - 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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:544:19
 200:     0x7fbd27769533 - 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/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panic.rs:359:14
 201:     0x7fbd27769533 - {closure#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/interface.rs:552:23
 202:     0x7fbd27769533 - {closure#0}<rustc_interface::interface::run_compiler::{closure_env#1}<(), rustc_driver_impl::run_compiler::{closure_env#0}>, ()>
                               at /home/asder8215/coding-project/rust/compiler/rustc_interface/src/util.rs:209:17
 203:     0x7fbd27769533 - {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 /home/asder8215/coding-project/rust/compiler/rustc_interface/src/util.rs:163:24
 204:     0x7fbd27769533 - 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 /home/asder8215/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scoped-tls-1.0.1/src/lib.rs:137:9
 205:     0x7fbd277789d5 - 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 /home/asder8215/coding-project/rust/compiler/rustc_span/src/lib.rs:144:21
 206:     0x7fbd27800fff - {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 /home/asder8215/coding-project/rust/compiler/rustc_interface/src/util.rs:159:17
 207:     0x7fbd27800fff - __rust_begin_short_backtrace<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/sys/backtrace.rs:160:18
 208:     0x7fbd27800964 - {closure#0}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/lifecycle.rs:92:13
 209:     0x7fbd27800964 - call_once<(), std::thread::lifecycle::spawn_unchecked::{closure#1}::{closure_env#0}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/panic/unwind_safe.rs:274:9
 210:     0x7fbd27800964 - do_call<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked::{closure#1}::{closure_env#0}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:581:40
 211:     0x7fbd27800964 - catch_unwind<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked::{closure#1}::{closure_env#0}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panicking.rs:544:19
 212:     0x7fbd27800964 - catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked::{closure#1}::{closure_env#0}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/panic.rs:359:14
 213:     0x7fbd27800964 - {closure#1}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/thread/lifecycle.rs:90:26
 214:     0x7fbd27800964 - call_once<std::thread::lifecycle::spawn_unchecked::{closure_env#1}<rustc_interface::util::run_in_thread_with_globals::{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 /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/core/src/ops/function.rs:250:5
 215:     0x7fbd2ba6dccf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h344e2ece0a2fe167
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/alloc/src/boxed.rs:2206:9
 216:     0x7fbd2ba6dccf - std::sys::thread::unix::Thread::new::thread_start::h3987d474b2a38b0f
                               at /rustc/1b6e21e163baa0b20f119e17e3871910978a60b6/library/std/src/sys/thread/unix.rs:118:17
 217:     0x7fbd2527f464 - start_thread
 218:     0x7fbd253025ac - __clone3
 219:                0x0 - <unknown>


rustc version: 1.95.0-dev
platform: x86_64-unknown-linux-gnu

query stack during panic:
#0 [analysis] running analysis passes on crate `alloc`
end of query stack

…ixed clippy linting issue with can_switch_range passing one argument instead two
@rustbot rustbot added the T-clippy Relevant to the Clippy team. label Jan 22, 2026
@rust-log-analyzer
Copy link
Collaborator

The job aarch64-gnu-llvm-20-1 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
   Compiling rustc_codegen_cranelift v0.1.0 (/checkout/compiler/rustc_codegen_cranelift)
error[E0277]: `std::ops::Range<i32, u64>` is not an iterator
   --> compiler/rustc_codegen_cranelift/src/intrinsics/simd.rs:868:32
    |
868 |                 Endian::Big => Box::new(0..lane_count) as Box<dyn Iterator<Item = u64>>,
    |                                ^^^^^^^^^^^^^^^^^^^^^^^ `std::ops::Range<i32, u64>` is not an iterator
    |
    = help: the trait `std::iter::Iterator` is not implemented for `std::ops::Range<i32, u64>`
help: the trait `std::iter::Iterator` is implemented for `std::ops::Range<A>`
   --> library/core/src/iter/range.rs:852:1
    |
852 | impl<A: Step> Iterator for ops::Range<A> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: required for the cast from `std::boxed::Box<std::ops::Range<i32, u64>>` to `std::boxed::Box<dyn std::iter::Iterator<Item = u64>>`

For more information about this error, try `rustc --explain E0277`.
[RUSTC-TIMING] rustc_codegen_cranelift test:false 3.054
error: could not compile `rustc_codegen_cranelift` (lib) due to 1 previous error
Bootstrap failed while executing `--stage 2 test --skip compiler --skip src`

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 19, 2026

☔ The latest upstream changes (presumably #141295) made this pull request unmergeable. Please resolve the merge conflicts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-clippy Relevant to the Clippy team. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants