Skip to content

ptr_metadata + useless where clause = ICE in normalize_projection_ty #95823

Closed
@CAD97

Description

@CAD97

Code

#![feature(ptr_metadata)]

pub struct S;

impl S
where
    ():,
{
    fn f<T: ?Sized>(_: <T as core::ptr::Pointee>::Metadata) {}
}

Removing the where (): clause removes the ICE. Replacing core::ptr::Pointee with a non-lang trait with a blanket impl removes teh ICE.

Meta

rustc --version --verbose:

rustc 1.61.0-nightly (76d770ac2 2022-04-02)
binary: rustc
commit-hash: 76d770ac21d9521db6a92a48c7b3d5b2cc535941
commit-date: 2022-04-02
host: x86_64-pc-windows-msvc
release: 1.61.0-nightly
LLVM version: 14.0.0

Error output

error: internal compiler error: compiler\rustc_middle\src\ty\impls_ty.rs:141:17: StableHasher: unexpected region '_#0r

thread 'rustc' panicked at 'Box<dyn Any>', compiler\rustc_errors\src\lib.rs:1279:9

note: 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: rustc 1.61.0-nightly (76d770ac2 2022-04-02) running on x86_64-pc-windows-msvc

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C incremental

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [normalize_projection_ty] normalizing `Canonical { max_universe: U0, variables: [CanonicalVarInfo { kind: Region(U0) }], value: ParamEnvAnd { param_env: ParamEnv { caller_bounds: [Binder(OutlivesPredicate((), ReLateBound(DebruijnIndex(1), BoundRegion { var: 0, kind: BrAnon(0) })), [])], reveal: UserFacing, constness: NotConst }, value: ProjectionTy { substs: [T], item_def_id: DefId(2:2092 ~ core[1973]::ptr::metadata::Pointee::Metadata) } } }`
#1 [try_normalize_generic_arg_after_erasing_regions] normalizing `<T as core::ptr::metadata::Pointee>::Metadata`
#2 [mir_built] building MIR for `<impl at src\lib.rs:5:1: 10:2>::f`
#3 [unsafety_check_result] unsafety-checking `<impl at src\lib.rs:5:1: 10:2>::f`
#4 [analysis] running analysis passes on this crate
end of query stack
Backtrace

stack backtrace:
   0:     0x7ffca1a0988f - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3048494f893b29ff
   1:     0x7ffca1a34cba - core::fmt::write::h2686dfebc8d906b9
   2:     0x7ffca19fc709 - <std::io::IoSliceMut as core::fmt::Debug>::fmt::hdce67e6f391114af
   3:     0x7ffca1a0ceab - std::panicking::default_hook::h15a087fa7cb3dd98
   4:     0x7ffca1a0ca9e - std::panicking::default_hook::h15a087fa7cb3dd98
   5:     0x7ffc94a62176 - rustc_driver[abf927877bd9162]::pretty::print_after_hir_lowering
   6:     0x7ffca1a0d78a - std::panicking::rust_panic_with_hook::h6d095d4c57cdf9fd
   7:     0x7ffc993b0a25 - <rustc_errors[bba258f2dd282df8]::styled_buffer::StyledChar as core[1973916929952f4b]::fmt::Debug>::fmt
   8:     0x7ffc993af139 - <rustc_errors[bba258f2dd282df8]::styled_buffer::StyledChar as core[1973916929952f4b]::fmt::Debug>::fmt
   9:     0x7ffc996d4d71 - rustc_query_system[cbf34d96f6e90a6f]::query::plumbing::incremental_verify_ich_cold
  10:     0x7ffc99362a89 - <rustc_feature[76087cb59a11bc52]::active::Features as core[1973916929952f4b]::fmt::Debug>::fmt
  11:     0x7ffc9936b8fa - <rustc_errors[bba258f2dd282df8]::HandlerInner>::emit_diagnostic
  12:     0x7ffc99368e62 - <rustc_errors[bba258f2dd282df8]::Handler>::bug
  13:     0x7ffc991498d3 - <rustc_middle[543984f644f50821]::ty::consts::valtree::ValTree>::zst
  14:     0x7ffc9914ccfc - <rustc_middle[543984f644f50821]::ty::diagnostics::StaticLifetimeVisitor as rustc_hir[ceb7f45082197be1]::intravisit::Visitor>::visit_lifetime
  15:     0x7ffc996bfa00 - rustc_middle[543984f644f50821]::util::bug::bug_fmt
  16:     0x7ffc991d6581 - <rustc_middle[543984f644f50821]::ty::sty::RegionKind as rustc_data_structures[d6f80c06e4ad7f8b]::stable_hasher::HashStable<rustc_query_system[cbf34d96f6e90a6f]::ich::hcx::StableHashingContext>>::hash_stable
  17:     0x7ffc991d668e - <rustc_middle[543984f644f50821]::ty::sty::RegionKind as rustc_data_structures[d6f80c06e4ad7f8b]::stable_hasher::HashStable<rustc_query_system[cbf34d96f6e90a6f]::ich::hcx::StableHashingContext>>::hash_stable
  18:     0x7ffc991e57ff - <rustc_middle[543984f644f50821]::ty::sty::TypeAndMut as rustc_middle[543984f644f50821]::ty::context::Lift>::lift_to_tcx
  19:     0x7ffc990ae8a4 - <rustc_middle[543984f644f50821]::ty::ParamEnv as rustc_data_structures[d6f80c06e4ad7f8b]::stable_hasher::HashStable<rustc_query_system[cbf34d96f6e90a6f]::ich::hcx::StableHashingContext>>::hash_stable
  20:     0x7ffc98157e8f - <&[rustc_middle[543984f644f50821]::thir::abstract_const::Node] as rustc_serialize[23736f889541b224]::serialize::Decodable<rustc_query_impl[eee3a0667c71ab7a]::on_disk_cache::CacheDecoder>>::decode
  21:     0x7ffc9836e703 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  22:     0x7ffc9849ccc7 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  23:     0x7ffc990a6d77 - <rustc_middle[543984f644f50821]::ty::Ty>::is_sized
  24:     0x7ffc98e329a2 - <rustc_trait_selection[756657197aff2e3f]::traits::project::ProjectionCandidate as core[1973916929952f4b]::fmt::Debug>::fmt
  25:     0x7ffc98e1d013 - <rustc_trait_selection[756657197aff2e3f]::traits::project::ProjectionCandidate as core[1973916929952f4b]::fmt::Debug>::fmt
  26:     0x7ffc98e1a1d7 - <rustc_trait_selection[756657197aff2e3f]::traits::project::ProjectionCandidate as core[1973916929952f4b]::fmt::Debug>::fmt
  27:     0x7ffc98e141d7 - rustc_trait_selection[756657197aff2e3f]::traits::project::normalize_projection_type
  28:     0x7ffc97f0548b - <rustc_middle[543984f644f50821]::ty::ProjectionPredicate as rustc_traits[5de7b6d13130515d]::chalk::lowering::LowerInto<chalk_solve[463644f84c84d2ee]::rust_ir::AliasEqBound<rustc_middle[543984f644f50821]::traits::chalk::RustInterner>>>::lower_into  
  29:     0x7ffc97de5c69 - <rustc_traits[5de7b6d13130515d]::chalk::lowering::PlaceholdersCollector as rustc_middle[543984f644f50821]::ty::fold::TypeVisitor>::visit_region
  30:     0x7ffc9829a263 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  31:     0x7ffc98259a93 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  32:     0x7ffc9837f1a9 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  33:     0x7ffc984cc0cb - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  34:     0x7ffc98199776 - <rustc_query_impl[eee3a0667c71ab7a]::Queries as rustc_middle[543984f644f50821]::ty::query::QueryEngine>::try_mark_green
  35:     0x7ffc98dfd37c - <rustc_trait_selection[756657197aff2e3f]::traits::query::normalize::QueryNormalizer as rustc_middle[543984f644f50821]::ty::fold::FallibleTypeFolder>::try_fold_ty
  36:     0x7ffc97e72605 - <rustc_traits[5de7b6d13130515d]::chalk::db::RustIrDatabase as chalk_ir[4d2d3861d28e8ba4]::UnificationDatabase<rustc_middle[543984f644f50821]::traits::chalk::RustInterner>>::adt_variance
  37:     0x7ffc97efd47c - <rustc_middle[543984f644f50821]::ty::ProjectionPredicate as rustc_traits[5de7b6d13130515d]::chalk::lowering::LowerInto<chalk_solve[463644f84c84d2ee]::rust_ir::AliasEqBound<rustc_middle[543984f644f50821]::traits::chalk::RustInterner>>>::lower_into  
  38:     0x7ffc97e5c921 - <rustc_traits[5de7b6d13130515d]::chalk::db::ReplaceOpaqueTyFolder as rustc_middle[543984f644f50821]::ty::fold::TypeFolder>::fold_ty
  39:     0x7ffc98298bc1 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  40:     0x7ffc9824ec63 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  41:     0x7ffc984e0107 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  42:     0x7ffc9914e4c4 - <rustc_middle[543984f644f50821]::ty::normalize_erasing_regions::NormalizationError as core[1973916929952f4b]::fmt::Debug>::fmt
  43:     0x7ffc991468c8 - <rustc_middle[543984f644f50821]::ty::normalize_erasing_regions::TryNormalizeAfterErasingRegionsFolder as rustc_middle[543984f644f50821]::ty::fold::FallibleTypeFolder>::try_fold_ty
  44:     0x7ffc97b99244 - <rustc_ast[4171081df3f7cb30]::ast::Mutability as rustc_mir_build[17b6fd0693418b70]::thir::cx::expr::ToBorrowKind>::to_borrow_kind
  45:     0x7ffc97bcb3bf - <rustc_ast[4171081df3f7cb30]::ast::Mutability as rustc_mir_build[17b6fd0693418b70]::thir::cx::expr::ToBorrowKind>::to_borrow_kind
  46:     0x7ffc97b9d2e1 - <rustc_ast[4171081df3f7cb30]::ast::Mutability as rustc_mir_build[17b6fd0693418b70]::thir::cx::expr::ToBorrowKind>::to_borrow_kind
  47:     0x7ffc97b6b9c2 - <rustc_mir_build[17b6fd0693418b70]::build::scope::DropTree as core[1973916929952f4b]::fmt::Debug>::fmt
  48:     0x7ffc97b9b8c9 - <rustc_ast[4171081df3f7cb30]::ast::Mutability as rustc_mir_build[17b6fd0693418b70]::thir::cx::expr::ToBorrowKind>::to_borrow_kind
  49:     0x7ffc98299993 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  50:     0x7ffc982548a4 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  51:     0x7ffc98373a84 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  52:     0x7ffc984e4724 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  53:     0x7ffc98197cc1 - <rustc_query_impl[eee3a0667c71ab7a]::Queries as rustc_middle[543984f644f50821]::ty::query::QueryEngine>::try_mark_green
  54:     0x7ffc9722fe99 - <rustc_mir_transform[7d8ec9f9c4567ea1]::check_unsafety::UnusedUnsafeVisitor as rustc_hir[ceb7f45082197be1]::intravisit::Visitor>::visit_fn
  55:     0x7ffc9722c4c1 - <rustc_monomorphize[46cb072e09761987]::collector::RootCollector as rustc_hir[ceb7f45082197be1]::itemlikevisit::ItemLikeVisitor>::visit_impl_item
  56:     0x7ffc9829b318 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  57:     0x7ffc98261482 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  58:     0x7ffc983aa2cc - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  59:     0x7ffc98307383 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  60:     0x7ffc982b2829 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  61:     0x7ffc990dba33 - <rustc_middle[543984f644f50821]::ty::context::TyCtxt as rustc_query_system[cbf34d96f6e90a6f]::dep_graph::DepContext>::try_force_from_dep_node
  62:     0x7ffc9824c95f - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  63:     0x7ffc9824c937 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  64:     0x7ffc9824c937 - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  65:     0x7ffc98318efa - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  66:     0x7ffc9849ed53 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  67:     0x7ffc94b7ab81 - <rustc_interface[ba8740adefebcae0]::queries::Linker>::link
  68:     0x7ffc94b50dd3 - <tracing_subscriber[d32784c851c01e08]::util::TryInitError as core[1973916929952f4b]::fmt::Display>::fmt
  69:     0x7ffc94bd8658 - rustc_interface[ba8740adefebcae0]::passes::analysis
  70:     0x7ffc9829ce9e - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  71:     0x7ffc9827ee9f - <rustc_query_impl[eee3a0667c71ab7a]::queries::global_backend_features as rustc_query_system[cbf34d96f6e90a6f]::query::config::QueryDescription<rustc_query_impl[eee3a0667c71ab7a]::plumbing::QueryCtxt>>::describe
  72:     0x7ffc9842b90b - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  73:     0x7ffc984e1926 - <rustc_span[a4c953bff5be24fa]::def_id::DefIndex as rustc_query_impl[eee3a0667c71ab7a]::profiling_support::SpecIntoSelfProfilingString>::spec_to_self_profile_string
  74:     0x7ffc94a256ff - <rustc_driver[abf927877bd9162]::args::Error as core[1973916929952f4b]::fmt::Debug>::fmt
  75:     0x7ffc94a8c2ed - <rustc_driver[abf927877bd9162]::Compilation as core[1973916929952f4b]::fmt::Debug>::fmt
  76:     0x7ffc94a24135 - <rustc_driver[abf927877bd9162]::args::Error as core[1973916929952f4b]::fmt::Debug>::fmt
  77:     0x7ffc94aac750 - <rustc_driver[abf927877bd9162]::Compilation as core[1973916929952f4b]::fmt::Debug>::fmt
  78:     0x7ffc94a166e7 - <unknown>
  79:     0x7ffc94a73546 - <rustc_driver[abf927877bd9162]::Compilation as core[1973916929952f4b]::fmt::Debug>::fmt
  80:     0x7ffc94a22ca8 - <rustc_driver[abf927877bd9162]::args::Error as core[1973916929952f4b]::fmt::Debug>::fmt
  81:     0x7ffca1a1cbcc - std::sys::windows::thread::Thread::new::h3b8480cac41d5d84
  82:     0x7ffd27757034 - BaseThreadInitThunk
  83:     0x7ffd29562651 - RtlUserThreadStart

Meta (playground)

Playground Nightly version: 1.62.0-nightly (2022-04-07 e745b4d)

Error output (different)

Backtrace

thread 'rustc' panicked at 'index out of bounds: the len is 0 but the index is 0', /cargo/registry/src/github.com-1ecc6299db9ec823/ena-0.14.0/src/snapshot_vec.rs:199:10

error: internal compiler error: unexpected panic

note: 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: rustc 1.62.0-nightly (e745b4ddb 2022-04-07) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type lib -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [is_sized_raw] computing whether `T` is `Sized`
#1 [normalize_projection_ty] normalizing `Canonical { max_universe: U0, variables: [CanonicalVarInfo { kind: Region(U0) }], value: ParamEnvAnd { param_env: ParamEnv { caller_bounds: [Binder(OutlivesPredicate((), ReLateBound(DebruijnIndex(1), BoundRegion { var: 0, kind: BrAnon(0) })), [])], reveal: UserFacing, constness: NotConst }, value: ProjectionTy { substs: [T], item_def_id: DefId(2:2101 ~ core[eae4]::ptr::metadata::Pointee::Metadata) } } }`
#2 [try_normalize_generic_arg_after_erasing_regions] normalizing `<T as core::ptr::metadata::Pointee>::Metadata`
#3 [mir_built] building MIR for `<impl at src/lib.rs:5:1: 10:2>::f`
#4 [unsafety_check_result] unsafety-checking `<impl at src/lib.rs:5:1: 10:2>::f`
#5 [mir_const] processing MIR for `<impl at src/lib.rs:5:1: 10:2>::f`
#6 [mir_promoted] processing `<impl at src/lib.rs:5:1: 10:2>::f`
#7 [mir_borrowck] borrow-checking `<impl at src/lib.rs:5:1: 10:2>::f`
#8 [analysis] running analysis passes on this crate
end of query stack
stack backtrace:
   0:     0x7f3d87b9fe0d - std::backtrace_rs::backtrace::libunwind::trace::h87fc9110a03070c9
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7f3d87b9fe0d - std::backtrace_rs::backtrace::trace_unsynchronized::hf8e09efda70fd4c4
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7f3d87b9fe0d - std::sys_common::backtrace::_print_fmt::h2bba281e85b7e4cf
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7f3d87b9fe0d - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h72fd149eebcc176d
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7f3d87bf9c6c - core::fmt::write::h16877f69e16283c2
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/core/src/fmt/mod.rs:1194:17
   5:     0x7f3d87b91611 - std::io::Write::write_fmt::h505f84b4395e02be
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/io/mod.rs:1655:15
   6:     0x7f3d87ba2d35 - std::sys_common::backtrace::_print::hff1b2addc8b3ab2e
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7f3d87ba2d35 - std::sys_common::backtrace::print::h5383334ff1a62414
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7f3d87ba2d35 - std::panicking::default_hook::{{closure}}::h55bff06032661335
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/panicking.rs:295:22
   9:     0x7f3d87ba29a9 - std::panicking::default_hook::hbddb577ba3bd3e3a
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/panicking.rs:314:9
  10:     0x7f3d88342d31 - rustc_driver[20943ffe626f84b6]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7f3d87ba34d0 - std::panicking::rust_panic_with_hook::h8fddd70bf6ad28e0
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/panicking.rs:702:17
  12:     0x7f3d87ba3307 - std::panicking::begin_panic_handler::{{closure}}::h9ed2b9c069b0b649
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/panicking.rs:588:13
  13:     0x7f3d87ba02c4 - std::sys_common::backtrace::__rust_end_short_backtrace::hc2651b8923246021
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys_common/backtrace.rs:138:18
  14:     0x7f3d87ba3039 - rust_begin_unwind
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/panicking.rs:584:5
  15:     0x7f3d87b676f3 - core::panicking::panic_fmt::h0606840aebfd8c79
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/core/src/panicking.rs:142:14
  16:     0x7f3d87b67632 - core::panicking::panic_bounds_check::hda03ddffa0d42b34
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/core/src/panicking.rs:84:5
  17:     0x7f3d8a11e1f5 - <ena[dce0934b6d7f80a]::unify::UnificationTable<ena[dce0934b6d7f80a]::unify::backing_vec::InPlace<rustc_middle[7f64d339e0b7d513]::infer::unify_key::RegionVidKey, &mut alloc[330c6987bd660c40]::vec::Vec<ena[dce0934b6d7f80a]::unify::VarValue<rustc_middle[7f64d339e0b7d513]::infer::unify_key::RegionVidKey>>, &mut rustc_infer[2bb09421bfed907a]::infer::undo_log::InferCtxtUndoLogs>>>::uninlined_get_root_key
  18:     0x7f3d8a0fbef8 - <rustc_infer[2bb09421bfed907a]::infer::canonical::canonicalizer::Canonicalizer as rustc_middle[7f64d339e0b7d513]::ty::fold::TypeFolder>::fold_region
  19:     0x7f3d8a0806d4 - rustc_middle[7f64d339e0b7d513]::ty::util::fold_list::<rustc_infer[2bb09421bfed907a]::infer::canonical::canonicalizer::Canonicalizer, rustc_middle[7f64d339e0b7d513]::ty::Predicate, <&rustc_middle[7f64d339e0b7d513]::ty::list::List<rustc_middle[7f64d339e0b7d513]::ty::Predicate> as rustc_middle[7f64d339e0b7d513]::ty::fold::TypeFoldable>::try_super_fold_with<rustc_infer[2bb09421bfed907a]::infer::canonical::canonicalizer::Canonicalizer>::{closure#0}>
  20:     0x7f3d8a00b94f - <rustc_infer[2bb09421bfed907a]::infer::InferCtxt as rustc_trait_selection[41f150cee6be8073]::traits::query::evaluate_obligation::InferCtxtExt>::predicate_must_hold_modulo_regions
  21:     0x7f3d8a06ac3a - rustc_trait_selection[41f150cee6be8073]::traits::type_known_to_meet_bound_modulo_regions
  22:     0x7f3d898e02bb - <rustc_infer[2bb09421bfed907a]::infer::InferCtxtBuilder>::enter::<bool, rustc_ty_utils[47a113fcd8c9b200]::common_traits::is_item_raw::{closure#0}>
  23:     0x7f3d8a5edcb0 - rustc_ty_utils[47a113fcd8c9b200]::common_traits::is_item_raw
  24:     0x7f3d89cf238c - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::ty::ParamEnvAnd<rustc_middle[7f64d339e0b7d513]::ty::Ty>, bool>>
  25:     0x7f3d8a7e542b - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::get_query::<rustc_query_impl[95fa4d0da0451691]::queries::is_sized_raw, rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt>
  26:     0x7f3d8a2480d5 - <rustc_middle[7f64d339e0b7d513]::ty::Ty>::is_sized
  27:     0x7f3d8a03afe2 - rustc_trait_selection[41f150cee6be8073]::traits::project::opt_normalize_projection_type
  28:     0x7f3d8a0313b3 - rustc_trait_selection[41f150cee6be8073]::traits::project::normalize_projection_type
  29:     0x7f3d8a70f045 - <rustc_infer[2bb09421bfed907a]::infer::InferCtxtBuilder as rustc_trait_selection[41f150cee6be8073]::infer::InferCtxtBuilderExt>::enter_canonical_trait_query::<rustc_middle[7f64d339e0b7d513]::ty::ParamEnvAnd<rustc_middle[7f64d339e0b7d513]::ty::sty::ProjectionTy>, rustc_middle[7f64d339e0b7d513]::traits::query::NormalizationResult, rustc_traits[8b0618417cc35a4e]::normalize_projection_ty::normalize_projection_ty::{closure#0}>
  30:     0x7f3d8a716515 - rustc_traits[8b0618417cc35a4e]::normalize_projection_ty::normalize_projection_ty
  31:     0x7f3d8a789068 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::infer::canonical::Canonical<rustc_middle[7f64d339e0b7d513]::ty::ParamEnvAnd<rustc_middle[7f64d339e0b7d513]::ty::sty::ProjectionTy>>, core[eae4a2c4558b790c]::result::Result<&rustc_middle[7f64d339e0b7d513]::infer::canonical::Canonical<rustc_middle[7f64d339e0b7d513]::infer::canonical::QueryResponse<rustc_middle[7f64d339e0b7d513]::traits::query::NormalizationResult>>, rustc_middle[7f64d339e0b7d513]::traits::query::NoSolution>>>
  32:     0x7f3d8a7f5698 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::get_query::<rustc_query_impl[95fa4d0da0451691]::queries::normalize_projection_ty, rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt>
  33:     0x7f3d8a8b6088 - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::normalize_projection_ty
  34:     0x7f3d8a06d99f - <rustc_trait_selection[41f150cee6be8073]::traits::query::normalize::QueryNormalizer as rustc_middle[7f64d339e0b7d513]::ty::fold::FallibleTypeFolder>::try_fold_ty
  35:     0x7f3d89bc37d1 - <rustc_infer[2bb09421bfed907a]::infer::at::At as rustc_trait_selection[41f150cee6be8073]::traits::query::normalize::AtExt>::normalize::<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg>
  36:     0x7f3d89bc7f8a - <rustc_infer[2bb09421bfed907a]::infer::InferCtxtBuilder>::enter::<core[eae4a2c4558b790c]::result::Result<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg, rustc_middle[7f64d339e0b7d513]::traits::query::NoSolution>, rustc_traits[8b0618417cc35a4e]::normalize_erasing_regions::try_normalize_after_erasing_regions<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg>::{closure#0}>
  37:     0x7f3d89bd5fec - <rustc_traits[8b0618417cc35a4e]::normalize_erasing_regions::provide::{closure#0} as core[eae4a2c4558b790c]::ops::function::FnOnce<(rustc_middle[7f64d339e0b7d513]::ty::context::TyCtxt, rustc_middle[7f64d339e0b7d513]::ty::ParamEnvAnd<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg>)>>::call_once
  38:     0x7f3d89cf3ca9 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::ty::ParamEnvAnd<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg>, core[eae4a2c4558b790c]::result::Result<rustc_middle[7f64d339e0b7d513]::ty::subst::GenericArg, rustc_middle[7f64d339e0b7d513]::traits::query::NoSolution>>>
  39:     0x7f3d89defff3 - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::try_normalize_generic_arg_after_erasing_regions
  40:     0x7f3d8a22e452 - <rustc_middle[7f64d339e0b7d513]::ty::normalize_erasing_regions::TryNormalizeAfterErasingRegionsFolder as rustc_middle[7f64d339e0b7d513]::ty::fold::FallibleTypeFolder>::try_fold_ty
  41:     0x7f3d89a300e8 - rustc_mir_build[862dae384f97135a]::build::construct_fn::<core[eae4a2c4558b790c]::iter::adapters::chain::Chain<alloc[330c6987bd660c40]::vec::into_iter::IntoIter<rustc_mir_build[862dae384f97135a]::build::ArgInfo>, core[eae4a2c4558b790c]::iter::adapters::map::Map<core[eae4a2c4558b790c]::iter::adapters::enumerate::Enumerate<core[eae4a2c4558b790c]::slice::iter::Iter<rustc_hir[3eace101c153d1f4]::hir::Param>>, rustc_mir_build[862dae384f97135a]::build::mir_build::{closure#1}::{closure#1}>>>
  42:     0x7f3d89a88f0f - <rustc_infer[2bb09421bfed907a]::infer::InferCtxtBuilder>::enter::<rustc_middle[7f64d339e0b7d513]::mir::Body, rustc_mir_build[862dae384f97135a]::build::mir_build::{closure#1}>
  43:     0x7f3d89a2cf6a - rustc_mir_build[862dae384f97135a]::build::mir_built
  44:     0x7f3d89cfc251 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::ty::WithOptConstParam<rustc_span[c549c48e758487d2]::def_id::LocalDefId>, &rustc_data_structures[fae15044d3ca7ff8]::steal::Steal<rustc_middle[7f64d339e0b7d513]::mir::Body>>>
  45:     0x7f3d89debcc5 - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::mir_built
  46:     0x7f3d89753ca2 - rustc_mir_transform[e3256c1f1ea9fed0]::check_unsafety::unsafety_check_result
  47:     0x7f3d8974ff40 - <rustc_mir_transform[e3256c1f1ea9fed0]::check_unsafety::provide::{closure#0} as core[eae4a2c4558b790c]::ops::function::FnOnce<(rustc_middle[7f64d339e0b7d513]::ty::context::TyCtxt, rustc_span[c549c48e758487d2]::def_id::LocalDefId)>>::call_once
  48:     0x7f3d89d106b7 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_span[c549c48e758487d2]::def_id::LocalDefId, &rustc_middle[7f64d339e0b7d513]::mir::query::UnsafetyCheckResult>>
  49:     0x7f3d89ded03e - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::unsafety_check_result
  50:     0x7f3d8974b0ef - rustc_mir_transform[e3256c1f1ea9fed0]::mir_const
  51:     0x7f3d89cfc251 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::ty::WithOptConstParam<rustc_span[c549c48e758487d2]::def_id::LocalDefId>, &rustc_data_structures[fae15044d3ca7ff8]::steal::Steal<rustc_middle[7f64d339e0b7d513]::mir::Body>>>
  52:     0x7f3d89debdfc - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::mir_const
  53:     0x7f3d8974cc0d - rustc_mir_transform[e3256c1f1ea9fed0]::mir_promoted
  54:     0x7f3d89cfd759 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_middle[7f64d339e0b7d513]::ty::WithOptConstParam<rustc_span[c549c48e758487d2]::def_id::LocalDefId>, (&rustc_data_structures[fae15044d3ca7ff8]::steal::Steal<rustc_middle[7f64d339e0b7d513]::mir::Body>, &rustc_data_structures[fae15044d3ca7ff8]::steal::Steal<rustc_index[33e3efcb4546502c]::vec::IndexVec<rustc_middle[7f64d339e0b7d513]::mir::Promoted, rustc_middle[7f64d339e0b7d513]::mir::Body>>)>>
  55:     0x7f3d89dec214 - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::mir_promoted
  56:     0x7f3d89b54479 - rustc_borrowck[fe87f904ca1034d]::mir_borrowck
  57:     0x7f3d89b514d0 - <rustc_borrowck[fe87f904ca1034d]::provide::{closure#0} as core[eae4a2c4558b790c]::ops::function::FnOnce<(rustc_middle[7f64d339e0b7d513]::ty::context::TyCtxt, rustc_span[c549c48e758487d2]::def_id::LocalDefId)>>::call_once
  58:     0x7f3d89d0f6b1 - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<rustc_span[c549c48e758487d2]::def_id::LocalDefId, &rustc_middle[7f64d339e0b7d513]::mir::query::BorrowCheckResult>>
  59:     0x7f3d89ded6aa - <rustc_query_impl[95fa4d0da0451691]::Queries as rustc_middle[7f64d339e0b7d513]::ty::query::QueryEngine>::mir_borrowck
  60:     0x7f3d895f4828 - <rustc_middle[7f64d339e0b7d513]::hir::map::Map>::par_body_owners::<rustc_interface[6f5777461d223668]::passes::analysis::{closure#2}::{closure#0}>
  61:     0x7f3d8a2f7758 - <rustc_session[38af0e98366f254d]::session::Session>::time::<(), rustc_interface[6f5777461d223668]::passes::analysis::{closure#2}>
  62:     0x7f3d8a2f2f15 - rustc_interface[6f5777461d223668]::passes::analysis
  63:     0x7f3d8a7b9aae - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::try_execute_query::<rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt, rustc_query_system[bc809a0ba9a8482d]::query::caches::DefaultCache<(), core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>>
  64:     0x7f3d8a7fd25e - rustc_query_system[bc809a0ba9a8482d]::query::plumbing::get_query::<rustc_query_impl[95fa4d0da0451691]::queries::analysis, rustc_query_impl[95fa4d0da0451691]::plumbing::QueryCtxt>
  65:     0x7f3d8a2cb9d7 - <rustc_interface[6f5777461d223668]::passes::QueryContext>::enter::<rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>
  66:     0x7f3d8a2b609b - <rustc_interface[6f5777461d223668]::interface::Compiler>::enter::<rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}::{closure#2}, core[eae4a2c4558b790c]::result::Result<core[eae4a2c4558b790c]::option::Option<rustc_interface[6f5777461d223668]::queries::Linker>, rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>
  67:     0x7f3d8a2df54f - rustc_span[c549c48e758487d2]::with_source_map::<core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>, rustc_interface[6f5777461d223668]::interface::create_compiler_and_run<core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>, rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}>::{closure#1}>
  68:     0x7f3d8a2b6f27 - <scoped_tls[4c52abfab712cd8e]::ScopedKey<rustc_span[c549c48e758487d2]::SessionGlobals>>::set::<rustc_interface[6f5777461d223668]::interface::run_compiler<core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>, rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}>::{closure#0}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>
  69:     0x7f3d8a2cc05f - std[1f52b9863de3167b]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[6f5777461d223668]::util::run_in_thread_pool_with_globals<rustc_interface[6f5777461d223668]::interface::run_compiler<core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>, rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}>::{closure#0}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>::{closure#0}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>
  70:     0x7f3d8a2cc199 - <<std[1f52b9863de3167b]::thread::Builder>::spawn_unchecked_<rustc_interface[6f5777461d223668]::util::run_in_thread_pool_with_globals<rustc_interface[6f5777461d223668]::interface::run_compiler<core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>, rustc_driver[20943ffe626f84b6]::run_compiler::{closure#1}>::{closure#0}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>::{closure#0}, core[eae4a2c4558b790c]::result::Result<(), rustc_errors[bbde95346f1428cb]::ErrorGuaranteed>>::{closure#1} as core[eae4a2c4558b790c]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  71:     0x7f3d87bad5c3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h66b0cb04558949f8
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/alloc/src/boxed.rs:1853:9
  72:     0x7f3d87bad5c3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2674426c74373260
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/alloc/src/boxed.rs:1853:9
  73:     0x7f3d87bad5c3 - std::sys::unix::thread::Thread::new::thread_start::he975fba2104844cd
                               at /rustc/e745b4ddbd05026c75aae4506aef39fdfe1603c5/library/std/src/sys/unix/thread.rs:108:17
  74:     0x7f3d87add609 - start_thread
  75:     0x7f3d879f6163 - clone
  76:                0x0 - <unknown>

@rustbot modify labels +F-requires-nightly

Metadata

Metadata

Labels

C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.glacierICE tracked in rust-lang/glacier.requires-nightlyThis issue requires a nightly compiler in some way.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions