Repository: rust
Issue: ICE: `escaping late-bound region during canonicalization`
Labels: I-ICE,E-needs-test,T-compiler,C-bug,requires-nightly,F-generic_const_exprs,requires-incomplete-features

<!--
Thank you for finding an Internal Compiler Error! 🧊  If possible, try to provide
a minimal verifiable example. You can read "Rust Bug Minimization Patterns" for
how to create smaller examples.
http://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
-->

### Code

```Rust
#![feature(generic_const_exprs)]

const fn allow<'b, 'b>() -> usize
where
    for<'b> [u8; foo::<'a, 'b>()]: Sized,
{
    4
}

const fn foo<'a, 'b>() -> usize
where
    &'a (): Sized,
    &'b (): Sized,
{
    4
}

```


### Meta
<!--
If you're using the stable version of the compiler, you should also check if the
bug also exists in the beta or nightly versions.
-->

`rustc --version --verbose`:
```
rustc 1.73.0-nightly (da6b55cc5 2023-07-17)
binary: rustc
commit-hash: da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7
commit-date: 2023-07-17
host: x86_64-unknown-linux-gnu
release: 1.73.0-nightly
LLVM version: 16.0.5
```

### Error output

```
error[E0403]: the name `'b` is already used for a generic parameter in this item's generic parameters
 --> treereduce.out:3:20
  |
3 | const fn allow<'b, 'b>() -> usize
  |                --  ^^ already used
  |                |
  |                first use of `'b`

error[E0496]: lifetime name `'b` shadows a lifetime name that is already in scope
 --> treereduce.out:5:9
  |
3 | const fn allow<'b, 'b>() -> usize
  |                -- first declared here
4 | where
5 |     for<'b> [u8; foo::<'a, 'b>()]: Sized,
  |         ^^ lifetime `'b` already in scope

error[E0261]: use of undeclared lifetime name `'a`
 --> treereduce.out:5:24
  |
5 |     for<'b> [u8; foo::<'a, 'b>()]: Sized,
  |                        ^^ undeclared lifetime
  |
  = note: for more information on higher-ranked polymorphism, visit https://doc.rust-lang.org/nomicon/hrtb.html
help: consider making the bound lifetime-generic with a new `'a` lifetime
  |
5 |     for<'a, 'b> [u8; foo::<'a, 'b>()]: Sized,
  |         +++
help: consider introducing lifetime `'a` here
  |
3 | const fn allow<'a, 'b, 'b>() -> usize
  |                +++

warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
 --> treereduce.out:1:12
  |
1 | #![feature(generic_const_exprs)]
  |            ^^^^^^^^^^^^^^^^^^^
  |
  = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
  = note: `#[warn(incomplete_features)]` on by default

error[E0601]: `main` function not found in crate `treereduce`
  --> treereduce.out:16:2
   |
16 | }
   |  ^ consider adding a `main` function to `treereduce.out`
```

<!--
Include a backtrace in the code block by setting `RUST_BACKTRACE=1` in your
environment. E.g. `RUST_BACKTRACE=1 cargo build`.
-->
<details><summary><strong>Backtrace</strong></summary>
<p>

```
error: internal compiler error: compiler/rustc_infer/src/infer/canonical/canonicalizer.rs:348:21: escaping late-bound region during canonicalization

thread 'rustc' panicked at 'Box<dyn Any>', /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/compiler/rustc_errors/src/lib.rs:1651:9
stack backtrace:
   0:     0x7fca51f63221 - std::backtrace_rs::backtrace::libunwind::trace::h0378ff96b8878340
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fca51f63221 - std::backtrace_rs::backtrace::trace_unsynchronized::hcb44cc62fe91e0c4
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fca51f63221 - std::sys_common::backtrace::_print_fmt::he5fffdb90dde7c50
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7fca51f63221 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbcda5d8b96133d0d
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7fca51fc92bc - core::fmt::rt::Argument::fmt::h7d4ee4ef01b11752
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/core/src/fmt/rt.rs:138:9
   5:     0x7fca51fc92bc - core::fmt::write::h6b5fbc85a1f9f01a
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/core/src/fmt/mod.rs:1094:21
   6:     0x7fca51f55bae - std::io::Write::write_fmt::hb8aabc9c2b364fd6
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/io/mod.rs:1714:15
   7:     0x7fca51f63035 - std::sys_common::backtrace::_print::hf1d112b56f5194e0
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7fca51f63035 - std::sys_common::backtrace::print::hcbcdeb3044c59f6e
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7fca51f65ea3 - std::panicking::default_hook::{{closure}}::hc241f234adcef0b3
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/panicking.rs:269:22
  10:     0x7fca51f65bbd - std::panicking::default_hook::h59cf172d02bebfb0
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/panicking.rs:288:9
  11:     0x7fca5520fd4b - <rustc_driver_impl[c81a0eddd255b279]::install_ice_hook::{closure#0} as core[39e80ab09a233139]::ops::function::FnOnce<(&core[39e80ab09a233139]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
  12:     0x7fca51f666ce - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hf40aab5ff823ae48
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/alloc/src/boxed.rs:2021:9
  13:     0x7fca51f666ce - std::panicking::rust_panic_with_hook::hb0633da5048d0127
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/panicking.rs:709:13
  14:     0x7fca557a6b11 - std[cc45917216ebf8c1]::panicking::begin_panic::<rustc_errors[dd4fd71fbfb772e1]::ExplicitBug>::{closure#0}
  15:     0x7fca557a6706 - std[cc45917216ebf8c1]::sys_common::backtrace::__rust_end_short_backtrace::<std[cc45917216ebf8c1]::panicking::begin_panic<rustc_errors[dd4fd71fbfb772e1]::ExplicitBug>::{closure#0}, !>
  16:     0x7fca55749826 - std[cc45917216ebf8c1]::panicking::begin_panic::<rustc_errors[dd4fd71fbfb772e1]::ExplicitBug>
  17:     0x7fca55748434 - <rustc_errors[dd4fd71fbfb772e1]::HandlerInner>::bug::<alloc[80398c34a25f4761]::string::String>
  18:     0x7fca55747bf6 - <rustc_errors[dd4fd71fbfb772e1]::Handler>::bug::<alloc[80398c34a25f4761]::string::String>
  19:     0x7fca557440ec - rustc_middle[c3827ed564f0ba95]::util::bug::opt_span_bug_fmt::<rustc_span[907c7e715df0d098]::span_encoding::Span>::{closure#0}
  20:     0x7fca5574373a - rustc_middle[c3827ed564f0ba95]::ty::context::tls::with_opt::<rustc_middle[c3827ed564f0ba95]::util::bug::opt_span_bug_fmt<rustc_span[907c7e715df0d098]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  21:     0x7fca55743708 - rustc_middle[c3827ed564f0ba95]::ty::context::tls::with_context_opt::<rustc_middle[c3827ed564f0ba95]::ty::context::tls::with_opt<rustc_middle[c3827ed564f0ba95]::util::bug::opt_span_bug_fmt<rustc_span[907c7e715df0d098]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  22:     0x7fca54013250 - rustc_middle[c3827ed564f0ba95]::util::bug::bug_fmt
  23:     0x7fca532befbb - <rustc_infer[e5158eb71e5b329d]::infer::canonical::canonicalizer::Canonicalizer as rustc_type_ir[4624607320ff39a4]::fold::TypeFolder<rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt>>::fold_region
  24:     0x7fca5353d249 - <&rustc_middle[c3827ed564f0ba95]::ty::list::List<rustc_middle[c3827ed564f0ba95]::ty::generic_args::GenericArg> as rustc_type_ir[4624607320ff39a4]::fold::TypeFoldable<rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt>>::try_fold_with::<rustc_infer[e5158eb71e5b329d]::infer::canonical::canonicalizer::Canonicalizer>
  25:     0x7fca5351eb2b - <rustc_infer[e5158eb71e5b329d]::infer::InferCtxt>::canonicalize_user_type_annotation::<rustc_middle[c3827ed564f0ba95]::ty::typeck_results::UserType>
  26:     0x7fca53510634 - <rustc_hir_typeck[ae6feb7f8321eb27]::fn_ctxt::FnCtxt>::check_expr_path
  27:     0x7fca533c60bb - <rustc_hir_typeck[ae6feb7f8321eb27]::fn_ctxt::FnCtxt>::check_call
  28:     0x7fca534e80f3 - <rustc_hir_typeck[ae6feb7f8321eb27]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  29:     0x7fca534e3e99 - <rustc_hir_typeck[ae6feb7f8321eb27]::fn_ctxt::FnCtxt>::check_expr_coercible_to_type
  30:     0x7fca53be2c6c - rustc_hir_typeck[ae6feb7f8321eb27]::typeck
  31:     0x7fca532926ae - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::typeck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 8usize]>>
  32:     0x7fca5329267e - <rustc_query_impl[7861727915278608]::query_impl::typeck::dynamic_query::{closure#2} as core[39e80ab09a233139]::ops::function::FnOnce<(rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt, rustc_span[907c7e715df0d098]::def_id::LocalDefId)>>::call_once
  33:     0x7fca5334f52d - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::VecCache<rustc_span[907c7e715df0d098]::def_id::LocalDefId, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  34:     0x7fca54b70eef - rustc_query_impl[7861727915278608]::query_impl::typeck::get_query_non_incr::__rust_end_short_backtrace
  35:     0x7fca53b635b8 - rustc_mir_build[5e16eb60a1236b39]::thir::cx::thir_body
  36:     0x7fca532658d1 - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::thir_body::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 16usize]>>
  37:     0x7fca538724fd - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::VecCache<rustc_span[907c7e715df0d098]::def_id::LocalDefId, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  38:     0x7fca54b77115 - rustc_query_impl[7861727915278608]::query_impl::thir_body::get_query_non_incr::__rust_end_short_backtrace
  39:     0x7fca535dc441 - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::thir_abstract_const::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 16usize]>>
  40:     0x7fca535dc315 - <rustc_query_impl[7861727915278608]::query_impl::thir_abstract_const::dynamic_query::{closure#2} as core[39e80ab09a233139]::ops::function::FnOnce<(rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt, rustc_span[907c7e715df0d098]::def_id::DefId)>>::call_once
  41:     0x7fca532c5654 - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::DefaultCache<rustc_span[907c7e715df0d098]::def_id::DefId, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  42:     0x7fca54b6a5a4 - rustc_query_impl[7861727915278608]::query_impl::thir_abstract_const::get_query_non_incr::__rust_end_short_backtrace
  43:     0x7fca532d27fe - <<rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt>::expand_abstract_consts::Expander as rustc_type_ir[4624607320ff39a4]::fold::TypeFolder<rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt>>::fold_const
  44:     0x7fca53441837 - rustc_trait_selection[85007fad01f6c2fe]::traits::const_evaluatable::is_const_evaluatable
  45:     0x7fca5340c923 - <rustc_trait_selection[85007fad01f6c2fe]::traits::fulfill::FulfillProcessor as rustc_data_structures[4468ae60fcb192e9]::obligation_forest::ObligationProcessor>::process_obligation
  46:     0x7fca533fd994 - <rustc_data_structures[4468ae60fcb192e9]::obligation_forest::ObligationForest<rustc_trait_selection[85007fad01f6c2fe]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[85007fad01f6c2fe]::traits::fulfill::FulfillProcessor>
  47:     0x7fca53d8ce0b - <rustc_trait_selection[85007fad01f6c2fe]::traits::engine::ObligationCtxt>::assumed_wf_types_and_report_errors
  48:     0x7fca53d81af0 - rustc_hir_analysis[f47abc19aa179048]::check::wfcheck::check_item_fn
  49:     0x7fca53d7f270 - rustc_hir_analysis[f47abc19aa179048]::check::wfcheck::check_well_formed
  50:     0x7fca5323d49c - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::check_well_formed::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 0usize]>>
  51:     0x7fca53bbf9f6 - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::VecCache<rustc_hir[c2a66952f47336ba]::hir_id::OwnerId, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  52:     0x7fca53bbf712 - rustc_query_impl[7861727915278608]::query_impl::check_well_formed::get_query_non_incr::__rust_end_short_backtrace
  53:     0x7fca545d6e8e - <rustc_middle[c3827ed564f0ba95]::hir::ModuleItems>::par_items::<rustc_hir_analysis[f47abc19aa179048]::check::wfcheck::check_mod_type_wf::{closure#0}>
  54:     0x7fca545d6aea - rustc_hir_analysis[f47abc19aa179048]::check::wfcheck::check_mod_type_wf
  55:     0x7fca53efff7c - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::check_mod_type_wf::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 0usize]>>
  56:     0x7fca53efff5e - <rustc_query_impl[7861727915278608]::query_impl::check_mod_type_wf::dynamic_query::{closure#2} as core[39e80ab09a233139]::ops::function::FnOnce<(rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt, rustc_span[907c7e715df0d098]::def_id::LocalDefId)>>::call_once
  57:     0x7fca53b5eb1f - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::VecCache<rustc_span[907c7e715df0d098]::def_id::LocalDefId, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  58:     0x7fca54b52672 - rustc_query_impl[7861727915278608]::query_impl::check_mod_type_wf::get_query_non_incr::__rust_end_short_backtrace
  59:     0x7fca546a2f97 - rustc_data_structures[4468ae60fcb192e9]::sync::par_for_each_in::<&[rustc_hir[c2a66952f47336ba]::hir_id::OwnerId], <rustc_middle[c3827ed564f0ba95]::hir::map::Map>::par_for_each_module<rustc_hir_analysis[f47abc19aa179048]::check_crate::{closure#5}::{closure#0}::{closure#0}>::{closure#0}>
  60:     0x7fca546a187d - rustc_hir_analysis[f47abc19aa179048]::check_crate
  61:     0x7fca5469883a - rustc_interface[74a3381ee3b1994f]::passes::analysis
  62:     0x7fca546a717a - rustc_query_impl[7861727915278608]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[7861727915278608]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 1usize]>>
  63:     0x7fca546a7169 - <rustc_query_impl[7861727915278608]::query_impl::analysis::dynamic_query::{closure#2} as core[39e80ab09a233139]::ops::function::FnOnce<(rustc_middle[c3827ed564f0ba95]::ty::context::TyCtxt, ())>>::call_once
  64:     0x7fca5486c788 - rustc_query_system[ab66c38014ceb632]::query::plumbing::try_execute_query::<rustc_query_impl[7861727915278608]::DynamicConfig<rustc_query_system[ab66c38014ceb632]::query::caches::SingleCache<rustc_middle[c3827ed564f0ba95]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[7861727915278608]::plumbing::QueryCtxt, false>
  65:     0x7fca5486c567 - rustc_query_impl[7861727915278608]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
  66:     0x7fca544b9fb5 - <rustc_middle[c3827ed564f0ba95]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>
  67:     0x7fca544b95f1 - <rustc_interface[74a3381ee3b1994f]::interface::Compiler>::enter::<rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}::{closure#2}, core[39e80ab09a233139]::result::Result<core[39e80ab09a233139]::option::Option<rustc_interface[74a3381ee3b1994f]::queries::Linker>, rustc_span[907c7e715df0d098]::ErrorGuaranteed>>
  68:     0x7fca544b28b5 - rustc_span[907c7e715df0d098]::set_source_map::<core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>, rustc_interface[74a3381ee3b1994f]::interface::run_compiler<core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>, rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  69:     0x7fca544b2326 - <scoped_tls[71a0efdd5a0947fb]::ScopedKey<rustc_span[907c7e715df0d098]::SessionGlobals>>::set::<rustc_interface[74a3381ee3b1994f]::interface::run_compiler<core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>, rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}>::{closure#0}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>
  70:     0x7fca544b18ec - std[cc45917216ebf8c1]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[74a3381ee3b1994f]::util::run_in_thread_pool_with_globals<rustc_interface[74a3381ee3b1994f]::interface::run_compiler<core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>, rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}>::{closure#0}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>
  71:     0x7fca544b16b5 - <<std[cc45917216ebf8c1]::thread::Builder>::spawn_unchecked_<rustc_interface[74a3381ee3b1994f]::util::run_in_thread_pool_with_globals<rustc_interface[74a3381ee3b1994f]::interface::run_compiler<core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>, rustc_driver_impl[c81a0eddd255b279]::run_compiler::{closure#1}>::{closure#0}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[39e80ab09a233139]::result::Result<(), rustc_span[907c7e715df0d098]::ErrorGuaranteed>>::{closure#1} as core[39e80ab09a233139]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  72:     0x7fca51f70d85 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3863911a8ea99c3e
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/alloc/src/boxed.rs:2007:9
  73:     0x7fca51f70d85 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6d7a22d2c39a1595
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/alloc/src/boxed.rs:2007:9
  74:     0x7fca51f70d85 - std::sys::unix::thread::Thread::new::thread_start::h9e696b653623791e
                               at /rustc/da6b55cc5eaf76ed6acb7dc2f7d611e32af7c9a7/library/std/src/sys/unix/thread.rs:108:17
  75:     0x7fca51d0344b - <unknown>
  76:     0x7fca51d86e40 - <unknown>
  77:                0x0 - <unknown>

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: rustc 1.73.0-nightly (da6b55cc5 2023-07-17) running on x86_64-unknown-linux-gnu

query stack during panic:
#0 [typeck] type-checking `allow::{constant#0}`
#1 [thir_body] building THIR for `allow::{constant#0}`
#2 [thir_abstract_const] building an abstract representation for `allow::{constant#0}`
#3 [check_well_formed] checking that `allow` is well-formed
#4 [check_mod_type_wf] checking that types are well-formed in top-level module
#5 [analysis] running analysis passes on this crate
end of query stack
error: aborting due to 5 previous errors; 1 warning emitted

Some errors have detailed explanations: E0261, E0403, E0496, E0601.
For more information about an error, try `rustc --explain E0261`.
```

</p>
</details>