Skip to content

ptr_metadata + useless where clause = ICE in normalize_projection_ty #95823

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

Closed
CAD97 opened this issue Apr 8, 2022 · 4 comments
Closed

ptr_metadata + useless where clause = ICE in normalize_projection_ty #95823

CAD97 opened this issue Apr 8, 2022 · 4 comments
Assignees
Labels
C-bug Category: This is a bug. glacier ICE tracked in rust-lang/glacier. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ requires-nightly This issue requires a nightly compiler in some way. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@CAD97
Copy link
Contributor

CAD97 commented Apr 8, 2022

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

@CAD97 CAD97 added C-bug Category: This is a bug. 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. labels Apr 8, 2022
@CAD97
Copy link
Contributor Author

CAD97 commented Apr 8, 2022

Oops

@rustbot modify labels: +requires-nightly

@rustbot rustbot added the requires-nightly This issue requires a nightly compiler in some way. label Apr 8, 2022
@CAD97 CAD97 changed the title ptr_metadata + useless where clause = unexpected region ptr_metadata + useless where clause = ICE in normalize_projection_ty Apr 8, 2022
@compiler-errors
Copy link
Member

This is fixed in #95315

@compiler-errors
Copy link
Member

Well... probably. Haven't checked, but I can. @rustbot claim

@JohnTitor
Copy link
Member

Triage: Indeed fixed by #95315, closing as the PR has a regression test and it should be sufficient.

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. glacier ICE tracked in rust-lang/glacier. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ requires-nightly This issue requires a nightly compiler 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

5 participants