Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ICE: Span must not be empty and have no suggestion (E0308) #114255

Open
Noratrieb opened this issue Jul 30, 2023 · 4 comments
Open

ICE: Span must not be empty and have no suggestion (E0308) #114255

Noratrieb opened this issue Jul 30, 2023 · 4 comments
Assignees
Labels
C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ requires-debug-assertions This issue requires a build of rustc or tooling with debug-assertions in some way T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@Noratrieb
Copy link
Member

Noratrieb commented Jul 30, 2023

⚠️ requires debug assertions ⚠️

Found with tree-crasher.

looks like a different root cause than #114251, but if you fix this also test that to be sure.

Code

fn a<F>(f: F) {
    loop {}
}

fn main() {
    a(
        for _ in 0.. {},
        {},
    );
}

Meta

rustc --version --verbose:

rustc 1.73.0-dev d56a73f75430fa8ae92e97beb8a0e21713289ba5

Error output

without debug assertions:

error[E0061]: this function takes 1 argument but 2 arguments were supplied
 --> crash2.rs:6:5
  |
6 |     a(
  |     ^
7 |         for _ in 0.. {},
  |                        - help: remove the extra argument
8 |         {},
  |         -- unexpected argument of type `()`
  |
note: function defined here
 --> crash2.rs:1:4
  |
1 | fn a<F>(f: F) {
  |    ^    ----
Backtrace

thread 'rustc' panicked at 'assertion failed: `(left == right)`
  left: `Some(SubstitutionPart { span: crash2.rs:7:24: 7:24 (#4), snippet: "" })`,
 right: `None`: Span must not be empty and have no suggestion', /home/nils/projects/rust/compiler/rustc_errors/src/diagnostic.rs:623:9
stack backtrace:
   0:     0x7ffff2d27727 - std::backtrace_rs::backtrace::libunwind::trace::h3d9ed4df748124a1
                               at /home/nils/projects/rust/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7ffff2d27727 - std::backtrace_rs::backtrace::trace_unsynchronized::he4c4d81c86de394a
                               at /home/nils/projects/rust/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7ffff2d151c1 - std::sys_common::backtrace::_print_fmt::h9e921af20e34adfc
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7ffff2d151c1 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hdbaa156e42cfc690
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7ffff2ddae08 - core::fmt::rt::Argument::fmt::h60a79991a7b6d1be
                               at /home/nils/projects/rust/library/core/src/fmt/rt.rs:138:9
   5:     0x7ffff2ddae08 - core::fmt::write::he0163c94c7f7aa8b
                               at /home/nils/projects/rust/library/core/src/fmt/mod.rs:1094:21
   6:     0x7ffff2d0c451 - std::io::Write::write_fmt::h9815287699485735
                               at /home/nils/projects/rust/library/std/src/io/mod.rs:1714:15
   7:     0x7ffff2d15022 - std::sys_common::backtrace::_print::hfeb8edb197eba58b
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7ffff2d15022 - std::sys_common::backtrace::print::hb971b63bd33b27df
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7ffff2d162b0 - std::panicking::panic_hook_with_disk_dump::{{closure}}::hf1b8ab30ad6d9139
  10:     0x7ffff2d1607a - std::panicking::panic_hook_with_disk_dump::hf76fde2bde123c3b
                               at /home/nils/projects/rust/library/std/src/panicking.rs:312:9
  11:     0x7ffff48300e0 - rustc_driver_impl[2639cc933e2d4e78]::install_ice_hook::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_driver_impl/src/lib.rs:1386:13
  12:     0x7ffff2d16802 - std::panicking::rust_panic_with_hook::h672762a245e5ec8e
                               at /home/nils/projects/rust/library/std/src/panicking.rs:733:13
  13:     0x7ffff2d412f2 - std::panicking::begin_panic_handler::{{closure}}::hfa5df3fc42b8b1de
                               at /home/nils/projects/rust/library/std/src/panicking.rs:621:13
  14:     0x7ffff2d41226 - std::sys_common::backtrace::__rust_end_short_backtrace::h3e204001403f9730
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:151:18
  15:     0x7ffff2d16482 - rust_begin_unwind
                               at /home/nils/projects/rust/library/std/src/panicking.rs:617:5
  16:     0x7ffff2dc3fc3 - core::panicking::panic_fmt::h33f6a5f2dd8fcb25
                               at /home/nils/projects/rust/library/core/src/panicking.rs:67:14
  17:     0x7ffff2dc44e1 - core::panicking::assert_failed_inner::h07c3e27b830d9f0b
  18:     0x7ffff4fe753b - core[ecb3001d97bdddc]::panicking::assert_failed::<core[ecb3001d97bdddc]::option::Option<&rustc_errors[148f9c630af9adc4]::SubstitutionPart>, core[ecb3001d97bdddc]::option::Option<&rustc_errors[148f9c630af9adc4]::SubstitutionPart>>
                               at /home/nils/projects/rust/library/core/src/panicking.rs:229:5
  19:     0x7ffff4fb3b11 - <rustc_errors[148f9c630af9adc4]::diagnostic::Diagnostic>::multipart_suggestion_with_style::<alloc[43083aaeadf00ebe]::string::String>
                               at /home/nils/projects/rust/compiler/rustc_errors/src/diagnostic.rs:623:9
  20:     0x7ffff4ff785c - <rustc_errors[148f9c630af9adc4]::diagnostic_builder::DiagnosticBuilder<rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::multipart_suggestion::<alloc[43083aaeadf00ebe]::string::String>
                               at /home/nils/projects/rust/compiler/rustc_errors/src/diagnostic_builder.rs:466:13
  21:     0x7ffff4ee12d5 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::report_arg_errors
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1210:17
  22:     0x7ffff4edd5dd - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_argument_types
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:451:13
  23:     0x7ffff4eb47f5 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::confirm_builtin_call
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/callee.rs:460:9
  24:     0x7ffff4eb390a - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_call
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/callee.rs:115:17
  25:     0x7ffff4f1ba27 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_kind
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:338:45
  26:     0x7ffff4ec5c3b - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:241:18
  27:     0x7ffff4ec5c3b - stacker[dc4e670f93881e90]::maybe_grow::<rustc_middle[2cb70032d7856bf7]::ty::Ty, <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}>
                               at /home/nils/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.15/src/lib.rs:55:9
  28:     0x7ffff4ec5c3b - rustc_data_structures[833fb17a58ea1b24]::stack::ensure_sufficient_stack::<rustc_middle[2cb70032d7856bf7]::ty::Ty, <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/stack.rs:17:5
  29:     0x7ffff4ec5c3b - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:237:18
  30:     0x7ffff4f1acae - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:191:9
  31:     0x7ffff4ee4707 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_stmt
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1522:17
  32:     0x7ffff4e09d19 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_block_with_expected::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1574:17
  33:     0x7ffff4e09d19 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::with_breakable_ctxt::<<rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_block_with_expected::{closure#0}, ()>
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs:1535:22
  34:     0x7ffff4ee48cf - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_block_with_expected
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs:1572:26
  35:     0x7ffff4f1b4d4 - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_kind
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:337:41
  36:     0x7ffff4ec5c3b - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:241:18
  37:     0x7ffff4ec5c3b - stacker[dc4e670f93881e90]::maybe_grow::<rustc_middle[2cb70032d7856bf7]::ty::Ty, <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}>
                               at /home/nils/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.15/src/lib.rs:55:9
  38:     0x7ffff4ec5c3b - rustc_data_structures[833fb17a58ea1b24]::stack::ensure_sufficient_stack::<rustc_middle[2cb70032d7856bf7]::ty::Ty, <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/stack.rs:17:5
  39:     0x7ffff4ec5c3b - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:237:18
  40:     0x7ffff4f1acae - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_expectation
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:191:9
  41:     0x7ffff4ec75eb - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_expr_with_hint
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:143:9
  42:     0x7ffff4ec75eb - <rustc_hir_typeck[97c2e66f7282ea67]::fn_ctxt::FnCtxt>::check_return_expr
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/expr.rs:827:30
  43:     0x7ffff4f43ab4 - rustc_hir_typeck[97c2e66f7282ea67]::check::check_fn
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/check.rs:117:5
  44:     0x7ffff4ffaef5 - rustc_hir_typeck[97c2e66f7282ea67]::typeck_with_fallback::<rustc_hir_typeck[97c2e66f7282ea67]::typeck::{closure#0}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/lib.rs:202:9
  45:     0x7ffff4ffaef5 - rustc_hir_typeck[97c2e66f7282ea67]::typeck_with_fallback::<rustc_hir_typeck[97c2e66f7282ea67]::typeck::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_hir_typeck/src/lib.rs:161:1
  46:     0x7ffff625a1a5 - rustc_query_impl[687b6c99bf9f4e42]::query_impl::typeck::dynamic_query::{closure#2}::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:582:47
  47:     0x7ffff625a1a5 - rustc_query_impl[687b6c99bf9f4e42]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[687b6c99bf9f4e42]::query_impl::typeck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:506:18
  48:     0x7ffff6401c47 - rustc_query_impl[687b6c99bf9f4e42]::query_impl::typeck::dynamic_query::{closure#2}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:578:25
  49:     0x7ffff6401c47 - <rustc_query_impl[687b6c99bf9f4e42]::query_impl::typeck::dynamic_query::{closure#2} as core[ecb3001d97bdddc]::ops::function::FnOnce<(rustc_middle[2cb70032d7856bf7]::ty::context::TyCtxt, rustc_span[aa2249d917f09169]::def_id::LocalDefId)>>::call_once
                               at /home/nils/projects/rust/library/core/src/ops/function.rs:250:5
  50:     0x7ffff61f7056 - <rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false> as rustc_query_system[c992a1182486ae11]::query::config::QueryConfig<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>>::compute
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/lib.rs:117:9
  51:     0x7ffff61f7056 - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:481:72
  52:     0x7ffff61f7056 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:82:9
  53:     0x7ffff61f7056 - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::try_with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:270:16
  54:     0x7ffff61f7056 - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:246:9
  55:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:79:5
  56:     0x7ffff63474c7 - <rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:149:13
  57:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context::<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:133:9
  58:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:111:36
  59:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context_opt::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:100:18
  60:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:111:5
  61:     0x7ffff63474c7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context::<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:124:5
  62:     0x7ffff63474c7 - <rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:134:9
  63:     0x7ffff63474c7 - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:481:18
  64:     0x7ffff63474c7 - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt, false>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:414:9
  65:     0x7ffff63474c7 - rustc_query_system[c992a1182486ae11]::query::plumbing::try_execute_query::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt, false>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:359:13
  66:     0x7ffff6406995 - rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:811:32
  67:     0x7ffff6406995 - stacker[dc4e670f93881e90]::maybe_grow::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.15/src/lib.rs:55:9
  68:     0x7ffff6406995 - rustc_data_structures[833fb17a58ea1b24]::stack::ensure_sufficient_stack::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/stack.rs:17:5
  69:     0x7ffff6406995 - rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:811:5
  70:     0x7ffff6406995 - rustc_query_impl[687b6c99bf9f4e42]::query_impl::typeck::get_query_non_incr::__rust_end_short_backtrace
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:556:26
  71:     0x7ffff5167347 - rustc_middle[2cb70032d7856bf7]::query::plumbing::query_ensure::<rustc_query_system[c992a1182486ae11]::query::caches::VecCache<rustc_span[aa2249d917f09169]::def_id::LocalDefId, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 8usize]>>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/query/plumbing.rs:171:9
  72:     0x7ffff5167347 - <rustc_middle[2cb70032d7856bf7]::query::plumbing::TyCtxtEnsure>::typeck::<rustc_span[aa2249d917f09169]::def_id::LocalDefId>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/query/plumbing.rs:346:17
  73:     0x7ffff5167347 - rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}
                               at /home/nils/projects/rust/compiler/rustc_hir_analysis/src/lib.rs:247:13
  74:     0x7ffff5167347 - <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners::<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/hir/map/mod.rs:490:82
  75:     0x7ffff5167347 - rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in::<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/sync.rs:218:66
  76:     0x7ffff5167347 - <core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}::{closure#0}> as core[ecb3001d97bdddc]::ops::function::FnOnce<()>>::call_once
                               at /home/nils/projects/rust/library/core/src/panic/unwind_safe.rs:271:9
  77:     0x7ffff5166d69 - std[14584cf2425d82f6]::panicking::try::do_call::<core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}::{closure#0}>, ()>
                               at /home/nils/projects/rust/library/std/src/panicking.rs:524:40
  78:     0x7ffff5166d69 - std[14584cf2425d82f6]::panicking::try::<(), core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}::{closure#0}>>
                               at /home/nils/projects/rust/library/std/src/panicking.rs:488:19
  79:     0x7ffff516be0c - rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in::<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/sync.rs:218:33
  80:     0x7ffff516be0c - <core[ecb3001d97bdddc]::slice::iter::Iter<rustc_span[aa2249d917f09169]::def_id::LocalDefId> as core[ecb3001d97bdddc]::iter::traits::iterator::Iterator>::for_each::<rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>::{closure#0}>
                               at /home/nils/projects/rust/library/core/src/slice/iter/macros.rs:254:21
  81:     0x7ffff516be0c - rustc_data_structures[833fb17a58ea1b24]::sync::par_for_each_in::<&[rustc_span[aa2249d917f09169]::def_id::LocalDefId], <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/sync.rs:217:13
  82:     0x7ffff5262b3e - <rustc_middle[2cb70032d7856bf7]::hir::map::Map>::par_body_owners::<rustc_hir_analysis[8f944d6169c0c192]::check_crate::{closure#7}>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/hir/map/mod.rs:490:9
  83:     0x7ffff5262b3e - rustc_hir_analysis[8f944d6169c0c192]::check_crate
                               at /home/nils/projects/rust/compiler/rustc_hir_analysis/src/lib.rs:244:5
  84:     0x7ffff4ab5544 - rustc_interface[1dcf4826fcbd5076]::passes::analysis
                               at /home/nils/projects/rust/compiler/rustc_interface/src/passes.rs:788:5
  85:     0x7ffff625a763 - rustc_query_impl[687b6c99bf9f4e42]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:582:47
  86:     0x7ffff625a763 - rustc_query_impl[687b6c99bf9f4e42]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[687b6c99bf9f4e42]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:506:18
  87:     0x7ffff629f003 - rustc_query_impl[687b6c99bf9f4e42]::query_impl::analysis::dynamic_query::{closure#2}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:578:25
  88:     0x7ffff629f003 - <rustc_query_impl[687b6c99bf9f4e42]::query_impl::analysis::dynamic_query::{closure#2} as core[ecb3001d97bdddc]::ops::function::FnOnce<(rustc_middle[2cb70032d7856bf7]::ty::context::TyCtxt, ())>>::call_once
                               at /home/nils/projects/rust/library/core/src/ops/function.rs:250:5
  89:     0x7ffff61f334d - <rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false> as rustc_query_system[c992a1182486ae11]::query::config::QueryConfig<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>>::compute
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/lib.rs:117:9
  90:     0x7ffff61f334d - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:481:72
  91:     0x7ffff61f334d - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:82:9
  92:     0x7ffff61f334d - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::try_with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:270:16
  93:     0x7ffff61f334d - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:246:9
  94:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:79:5
  95:     0x7ffff62fb054 - <rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:149:13
  96:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context::<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:133:9
  97:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:111:36
  98:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context_opt::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:100:18
  99:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_context::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:111:5
 100:     0x7ffff62fb054 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::with_related_context::<<rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:124:5
 101:     0x7ffff62fb054 - <rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt as rustc_query_system[c992a1182486ae11]::query::QueryContext>::start_query::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:134:9
 102:     0x7ffff62fb054 - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:481:18
 103:     0x7ffff62fb054 - rustc_query_system[c992a1182486ae11]::query::plumbing::execute_job::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt, false>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:414:9
 104:     0x7ffff62fb054 - rustc_query_system[c992a1182486ae11]::query::plumbing::try_execute_query::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt, false>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:359:13
 105:     0x7ffff64061ad - rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:811:32
 106:     0x7ffff64061ad - stacker[dc4e670f93881e90]::maybe_grow::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.15/src/lib.rs:55:9
 107:     0x7ffff64061ad - rustc_data_structures[833fb17a58ea1b24]::stack::ensure_sufficient_stack::<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_data_structures/src/stack.rs:17:5
 108:     0x7ffff64061ad - rustc_query_system[c992a1182486ae11]::query::plumbing::get_query_non_incr::<rustc_query_impl[687b6c99bf9f4e42]::DynamicConfig<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[687b6c99bf9f4e42]::plumbing::QueryCtxt>
                               at /home/nils/projects/rust/compiler/rustc_query_system/src/query/plumbing.rs:811:5
 109:     0x7ffff64061ad - rustc_query_impl[687b6c99bf9f4e42]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
                               at /home/nils/projects/rust/compiler/rustc_query_impl/src/plumbing.rs:556:26
 110:     0x7ffff48c9cb7 - rustc_middle[2cb70032d7856bf7]::query::plumbing::query_get_at::<rustc_query_system[c992a1182486ae11]::query::caches::SingleCache<rustc_middle[2cb70032d7856bf7]::query::erase::Erased<[u8; 1usize]>>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/query/plumbing.rs:155:17
 111:     0x7ffff48c9cb7 - <rustc_middle[2cb70032d7856bf7]::query::plumbing::TyCtxtAt>::analysis
                               at /home/nils/projects/rust/compiler/rustc_middle/src/query/plumbing.rs:385:31
 112:     0x7ffff48c9cb7 - <rustc_middle[2cb70032d7856bf7]::ty::context::TyCtxt>::analysis
                               at /home/nils/projects/rust/compiler/rustc_middle/src/query/plumbing.rs:376:17
 113:     0x7ffff48c9cb7 - rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}
                               at /home/nils/projects/rust/compiler/rustc_driver_impl/src/lib.rs:444:48
 114:     0x7ffff48c9cb7 - <rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context.rs:589:37
 115:     0x7ffff48c9cb7 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<<rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:82:9
 116:     0x7ffff48c9cb7 - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::try_with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<<rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:270:16
 117:     0x7ffff48c9cb7 - <std[14584cf2425d82f6]::thread::local::LocalKey<core[ecb3001d97bdddc]::cell::Cell<*const ()>>>::with::<rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context<<rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/library/std/src/thread/local.rs:246:9
 118:     0x7ffff48b67a8 - rustc_middle[2cb70032d7856bf7]::ty::context::tls::enter_context::<<rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context/tls.rs:79:5
 119:     0x7ffff48b67a8 - <rustc_middle[2cb70032d7856bf7]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/compiler/rustc_middle/src/ty/context.rs:589:9
 120:     0x7ffff48a14da - rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}
                               at /home/nils/projects/rust/compiler/rustc_driver_impl/src/lib.rs:444:13
 121:     0x7ffff48a14da - <rustc_interface[1dcf4826fcbd5076]::interface::Compiler>::enter::<rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}::{closure#2}, core[ecb3001d97bdddc]::result::Result<core[ecb3001d97bdddc]::option::Option<rustc_interface[1dcf4826fcbd5076]::queries::Linker>, rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/compiler/rustc_interface/src/queries.rs:389:19
 122:     0x7ffff488a1f0 - rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}
                               at /home/nils/projects/rust/compiler/rustc_driver_impl/src/lib.rs:385:22
 123:     0x7ffff488a1f0 - rustc_interface[1dcf4826fcbd5076]::interface::run_compiler::<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_interface/src/interface.rs:339:21
 124:     0x7ffff488a1f0 - rustc_span[aa2249d917f09169]::set_source_map::<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_span/src/lib.rs:1042:5
 125:     0x7ffff488857e - rustc_interface[1dcf4826fcbd5076]::interface::run_compiler::<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_interface/src/interface.rs:333:13
 126:     0x7ffff488857e - <scoped_tls[ac4fd8356a915cb]::ScopedKey<rustc_span[aa2249d917f09169]::SessionGlobals>>::set::<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/.cargo/registry/src/index.crates.io-6f17d22bba15001f/scoped-tls-1.0.1/src/lib.rs:137:9
 127:     0x7ffff48b7670 - rustc_span[aa2249d917f09169]::create_session_globals_then::<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}>
                               at /home/nils/projects/rust/compiler/rustc_span/src/lib.rs:121:5
 128:     0x7ffff48b7670 - rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals::<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}
                               at /home/nils/projects/rust/compiler/rustc_interface/src/util.rs:163:38
 129:     0x7ffff48b7670 - std[14584cf2425d82f6]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/library/std/src/sys_common/backtrace.rs:135:18
 130:     0x7ffff48b7e96 - <std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_::<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}::{closure#0}
                               at /home/nils/projects/rust/library/std/src/thread/mod.rs:529:17
 131:     0x7ffff48b7e96 - <core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<<std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}::{closure#0}> as core[ecb3001d97bdddc]::ops::function::FnOnce<()>>::call_once
                               at /home/nils/projects/rust/library/core/src/panic/unwind_safe.rs:271:9
 132:     0x7ffff48797b4 - std[14584cf2425d82f6]::panicking::try::do_call::<core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<<std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}::{closure#0}>, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/library/std/src/panicking.rs:524:40
 133:     0x7ffff48797b4 - std[14584cf2425d82f6]::panicking::try::<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<<std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}::{closure#0}>>
                               at /home/nils/projects/rust/library/std/src/panicking.rs:488:19
 134:     0x7ffff48cc5ba - std[14584cf2425d82f6]::panic::catch_unwind::<core[ecb3001d97bdddc]::panic::unwind_safe::AssertUnwindSafe<<std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}::{closure#0}>, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>
                               at /home/nils/projects/rust/library/std/src/panic.rs:142:14
 135:     0x7ffff48cc5ba - <std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_::<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1}
                               at /home/nils/projects/rust/library/std/src/thread/mod.rs:528:30
 136:     0x7ffff48cc5ba - <<std[14584cf2425d82f6]::thread::Builder>::spawn_unchecked_<rustc_interface[1dcf4826fcbd5076]::util::run_in_thread_pool_with_globals<rustc_interface[1dcf4826fcbd5076]::interface::run_compiler<core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>, rustc_driver_impl[2639cc933e2d4e78]::run_compiler::{closure#1}>::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[ecb3001d97bdddc]::result::Result<(), rustc_span[aa2249d917f09169]::ErrorGuaranteed>>::{closure#1} as core[ecb3001d97bdddc]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
                               at /home/nils/projects/rust/library/core/src/ops/function.rs:250:5
 137:     0x7ffff2d29b0a - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2515b5ba737f4759
                               at /home/nils/projects/rust/library/alloc/src/boxed.rs:2007:9
 138:     0x7ffff2d29b0a - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf84b8969f2ac6739
                               at /home/nils/projects/rust/library/alloc/src/boxed.rs:2007:9
 139:     0x7ffff2d7376f - std::sys::unix::thread::Thread::new::thread_start::h0229213dd0406b64
                               at /home/nils/projects/rust/library/std/src/sys/unix/thread.rs:108:17
 140:     0x7ffff2aaae24 - start_thread
 141:     0x7ffff2b2c9b0 - __clone3
 142:                0x0 - <unknown>

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 attach the file at `/home/nils/projects/rust/tree-crasher/cases/rustc-ice-2023-07-30T15:15:05.737698896Z-3121992.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

There's more output about "no errors encountered even though delay_span_bug issued which doesn't really make sense as there were errors emitted, it just didn't fully complete emission.

@Noratrieb Noratrieb added I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. C-bug Category: This is a bug. labels Jul 30, 2023
@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Jul 30, 2023
@Noratrieb Noratrieb added requires-debug-assertions This issue requires a build of rustc or tooling with debug-assertions in some way and removed needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. labels Jul 30, 2023
@meysam81
Copy link
Contributor

Hello @Nilstrieb
I'm interested in taking this, but would you please give more context as to where to look for when fixing and how to test my modifications?

@Noratrieb
Copy link
Member Author

The issue here is that the compiler wants to emit a suggestion in the error message, but the span (location) of the suggestion is empty/wrong. By looking at the backtrace, you can figure out where the error is emitted. Then you can look there to see why the span would be wrong.
See the rustc dev guide for help about building and running: https://rustc-dev-guide.rust-lang.org/building/how-to-build-and-run.html
You can also search the issue tracker for "Span must not be empty and have no suggestion" and look for issues that have been closed. The fixing PRs show how this issues was fixed in other places which may serve as inspiration, as this is an issue that keeps coming up in different places.

@meysam81
Copy link
Contributor

@rustbot claim

@lukas-code
Copy link
Member

This is actually (partially) fixed by #112500. (Someone review that please?)

But even though that PR makes the span no longer empty and technically correct, it could still use some improvements:

error[E0061]: this function takes 1 argument but 2 arguments were supplied
 --> src/main.rs:6:5
  |
6 |       a(
  |       ^
7 |           for _ in 0.. {},
  |  ________________________-
8 | |         {},
  | |         --
  | |_________||
  |           |help: remove the extra argument
  |           unexpected argument of type `()`
  |
note: function defined here
 --> src/main.rs:1:4
  |
1 | fn a<F>(f: F) {
  |    ^    ----

In particular, the "remove the extra argument" span should probably not include the previous , if that would make the span multi-line.

@meysam81 if you still want to work on this, the relevant code is here:

// Include previous comma
span = prev.shrink_to_hi().to(span);

The SourceMap::is_multiline function may be useful and you can get a reference to the SourceMap with tcx.sess.source_map().

bors added a commit to rust-lang-ci/rust that referenced this issue Aug 16, 2023
Fix argument removal suggestion around macros

Fixes rust-lang#112437.
Fixes rust-lang#113866.
Helps with rust-lang#114255.

The issue was that `span.find_ancestor_inside(outer)` could previously return a span with a different expansion context from `outer`.

This happens for example for the built-in macro `panic!`, which expands to another macro call of `panic_2021!` or `panic_2015!`. Because the call site of `panic_20xx!` has not associated source code, its span currently points to the call site of `panic!` instead.

Something similar also happens items that get desugared in AST->HIR lowering. For example, `for` loops get two spans: One "inner" span that has the `.desugaring_kind()` kind set to `DesugaringKind::ForLoop` and one "outer" span that does not. Similar to the macro situation, both of these spans point to the same source code, but have different expansion contexts.

This causes problems, because joining two spans with different expansion contexts will usually[^1] not actually join them together to avoid creating "spaghetti" spans that go from the macro definition to the macro call. For example, in the following snippet `full_span` might not actually contain the `adjusted_start` and `adjusted_end`. This caused the broken suggestion / debug ICE in the linked issues.
```rust
let adjusted_start = start.find_ancestor_inside(shared_ancestor);
let adjusted_end = end.find_ancestor_inside(shared_ancestor);
let full_span = adjusted_start.to(adjusted_end)
```

To fix the issue, this PR introduces a new method, `find_ancestor_inside_same_ctxt`, which combines the functionality of `find_ancestor_inside` and `find_ancestor_in_same_ctxt`: It finds an ancestor span that is contained within the parent *and* has the same syntax context, and is therefore safe to extend. This new method should probably be used everywhere, where the returned span is extended, but for now it is just used for the argument removal suggestion.

Additionally, this PR fixes a second issue where the function call itself is inside a macro but the arguments come from outside the macro. The test is added in the first commit to include stderr diff, so this is best reviewed commit by commit.

[^1]: If one expansion context is the root context and the other is not.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ requires-debug-assertions This issue requires a build of rustc or tooling with debug-assertions in some way T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

4 participants