Skip to content

ICE: compiler/rustc_privacy/src/lib.rs:282:17: unexpected type: FreshTy(0) #100485

Closed

Description

@matthiaskrgr

./src/test/ui/traits/alias/self-in-generics.rs

Code

#![feature(trait_alias)]

pub trait SelfInput = Fn(&mut Self);

pub fn f(_f: &dyn SelfInput) {}
//~^ ERROR the trait alias `SelfInput` cannot be made into an object [E0038]

fn main() {}

Meta

rustc --version --verbose:

rustdoc 1.65.0-nightly (e8dc8bca2 2022-08-13)
binary: rustdoc
commit-hash: e8dc8bca2118ec1ed5970790614f0b81e9167f10
commit-date: 2022-08-13
host: x86_64-unknown-linux-gnu
release: 1.65.0-nightly
LLVM version: 15.0.0

Error output

<output>
Backtrace

error[E0038]: the trait alias `SelfInput` cannot be made into an object
 --> self-in-generics.rs:5:19
  |
5 | pub fn f(_f: &dyn SelfInput) {}
  |                   ^^^^^^^^^
  |
  = note: it cannot use `Self` as a type parameter in a supertrait or `where`-clause

error: internal compiler error: compiler/rustc_privacy/src/lib.rs:282:17: unexpected type: FreshTy(0)

thread 'rustc' panicked at 'Box<dyn Any>', /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/compiler/rustc_errors/src/lib.rs:1391:9
stack backtrace:
   0:     0x7fb08c6fd220 - std::backtrace_rs::backtrace::libunwind::trace::hdfd7439c4ac437b8
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   1:     0x7fb08c6fd220 - std::backtrace_rs::backtrace::trace_unsynchronized::h6c473f268a0da94d
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fb08c6fd220 - std::sys_common::backtrace::_print_fmt::h6b48bf233902d36b
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7fb08c6fd220 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h9b66d5b5ab6d8b74
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7fb08c7582ee - core::fmt::write::h8d6bde4a67b5a644
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/core/src/fmt/mod.rs:1202:17
   5:     0x7fb08c6edf35 - std::io::Write::write_fmt::ha5ed2fe9bc688052
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/io/mod.rs:1672:15
   6:     0x7fb08c6ffee3 - std::sys_common::backtrace::_print::hcc6babf718d978b5
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7fb08c6ffee3 - std::sys_common::backtrace::print::h66a498b3cfc1608c
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7fb08c6ffee3 - std::panicking::default_hook::{{closure}}::h78975c9fdf2e25ac
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/panicking.rs:295:22
   9:     0x7fb08c6ffbcf - std::panicking::default_hook::h3938825ac353f447
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/panicking.rs:314:9
  10:     0x7fb08ef3c424 - <rustc_driver[a5410d64bf022668]::DEFAULT_HOOK::{closure#0}::{closure#0} as core[9ef3251603221d4a]::ops::function::FnOnce<(&core[9ef3251603221d4a]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
  11:     0x7fb08c70071d - std::panicking::rust_panic_with_hook::h47eb8ecd1bd91d17
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/panicking.rs:702:17
  12:     0x7fb08fee0151 - std[2e6ea336b53db173]::panicking::begin_panic::<rustc_errors[f4cb041045aad9b5]::ExplicitBug>::{closure#0}
  13:     0x7fb08fedf956 - std[2e6ea336b53db173]::sys_common::backtrace::__rust_end_short_backtrace::<std[2e6ea336b53db173]::panicking::begin_panic<rustc_errors[f4cb041045aad9b5]::ExplicitBug>::{closure#0}, !>
  14:     0x7fb08fec0616 - std[2e6ea336b53db173]::panicking::begin_panic::<rustc_errors[f4cb041045aad9b5]::ExplicitBug>
  15:     0x7fb08ff04f36 - std[2e6ea336b53db173]::panic::panic_any::<rustc_errors[f4cb041045aad9b5]::ExplicitBug>
  16:     0x7fb08ff04d8d - <rustc_errors[f4cb041045aad9b5]::HandlerInner>::bug::<&alloc[a4b47a688312783c]::string::String>
  17:     0x7fb08ff04ae0 - <rustc_errors[f4cb041045aad9b5]::Handler>::bug::<&alloc[a4b47a688312783c]::string::String>
  18:     0x7fb08ff2d1ad - rustc_middle[9190505212f11309]::ty::context::tls::with_context_opt::<rustc_middle[9190505212f11309]::ty::context::tls::with_opt<rustc_middle[9190505212f11309]::util::bug::opt_span_bug_fmt<rustc_span[812c5506f6a7d0a0]::span_encoding::Span>::{closure#0}, ()>::{closure#0}, ()>
  19:     0x7fb08ff2f016 - rustc_middle[9190505212f11309]::util::bug::opt_span_bug_fmt::<rustc_span[812c5506f6a7d0a0]::span_encoding::Span>
  20:     0x7fb08d8dbe03 - rustc_middle[9190505212f11309]::util::bug::bug_fmt
  21:     0x7fb08d9524fc - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  22:     0x7fb08d951608 - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  23:     0x7fb08d952c35 - <rustc_middle[9190505212f11309]::ty::sty::Binder<rustc_middle[9190505212f11309]::ty::sty::FnSig> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitable>::visit_with::<rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor>>
  24:     0x7fb08d951795 - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  25:     0x7fb08e2d1c03 - <rustc_middle[9190505212f11309]::ty::sty::Binder<rustc_middle[9190505212f11309]::ty::sty::ExistentialPredicate> as rustc_middle[9190505212f11309]::ty::visit::TypeSuperVisitable>::super_visit_with::<rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor>>
  26:     0x7fb08d954647 - <&rustc_middle[9190505212f11309]::ty::list::List<rustc_middle[9190505212f11309]::ty::sty::Binder<rustc_middle[9190505212f11309]::ty::sty::ExistentialPredicate>> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitable>::visit_with::<rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor>>
  27:     0x7fb08d951c6f - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  28:     0x7fb08d951608 - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  29:     0x7fb08d952c35 - <rustc_middle[9190505212f11309]::ty::sty::Binder<rustc_middle[9190505212f11309]::ty::sty::FnSig> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitable>::visit_with::<rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor>>
  30:     0x7fb08d951759 - <rustc_privacy[1d0d09284a100788]::DefIdVisitorSkeleton<rustc_privacy[1d0d09284a100788]::ReachEverythingInTheInterfaceVisitor> as rustc_middle[9190505212f11309]::ty::visit::TypeVisitor>::visit_ty
  31:     0x7fb08dc6c423 - <rustc_privacy[1d0d09284a100788]::EmbargoVisitor as rustc_hir[9122b05cfb5f69c7]::intravisit::Visitor>::visit_item
  32:     0x7fb08ec096d9 - rustc_privacy[1d0d09284a100788]::privacy_access_levels
  33:     0x7fb08ecd4ab3 - rustc_query_system[88e27f7cc16d83bb]::query::plumbing::try_execute_query::<rustc_query_impl[b52b8bfa962b42d5]::plumbing::QueryCtxt, rustc_query_system[88e27f7cc16d83bb]::query::caches::DefaultCache<(), &rustc_middle[9190505212f11309]::middle::privacy::AccessLevels>>
  34:     0x7fb08ecd482f - rustc_query_system[88e27f7cc16d83bb]::query::plumbing::get_query::<rustc_query_impl[b52b8bfa962b42d5]::queries::privacy_access_levels, rustc_query_impl[b52b8bfa962b42d5]::plumbing::QueryCtxt>
  35:     0x55d3fcfef119 - rustc_lint[f2fb10bf9f2518ad]::late::late_lint_crate::<rustc_lint[f2fb10bf9f2518ad]::builtin::MissingDoc>
  36:     0x55d3fd0737c8 - <rustc_session[79e06e95d9fac684]::session::Session>::time::<(), rustc_lint[f2fb10bf9f2518ad]::late::check_crate<rustc_lint[f2fb10bf9f2518ad]::builtin::MissingDoc, <rustc_lint[f2fb10bf9f2518ad]::builtin::MissingDoc>::new>::{closure#0}::{closure#0}>
  37:     0x55d3fd073e70 - <rustc_session[79e06e95d9fac684]::session::Session>::time::<(), rustdoc[5111a8b3ee4cfbad]::core::run_global_ctxt::{closure#1}>
  38:     0x55d3fcd9f38b - rustdoc[5111a8b3ee4cfbad]::core::run_global_ctxt
  39:     0x55d3fd07354f - <rustc_session[79e06e95d9fac684]::session::Session>::time::<(rustdoc[5111a8b3ee4cfbad]::clean::types::Crate, rustdoc[5111a8b3ee4cfbad]::config::RenderOptions, rustdoc[5111a8b3ee4cfbad]::formats::cache::Cache), rustdoc[5111a8b3ee4cfbad]::main_options::{closure#0}::{closure#0}::{closure#1}::{closure#0}>
  40:     0x55d3fcfa2a84 - <rustc_interface[6f1edf494a475c31]::passes::QueryContext>::enter::<rustdoc[5111a8b3ee4cfbad]::main_options::{closure#0}::{closure#0}::{closure#1}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>
  41:     0x55d3fce8f959 - <rustc_interface[6f1edf494a475c31]::interface::Compiler>::enter::<rustdoc[5111a8b3ee4cfbad]::main_options::{closure#0}::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>
  42:     0x55d3fd0cddc1 - rustc_span[812c5506f6a7d0a0]::with_source_map::<core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>, rustc_interface[6f1edf494a475c31]::interface::create_compiler_and_run<core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>, rustdoc[5111a8b3ee4cfbad]::main_options::{closure#0}>::{closure#1}>
  43:     0x55d3fce9183c - rustc_interface[6f1edf494a475c31]::interface::create_compiler_and_run::<core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>, rustdoc[5111a8b3ee4cfbad]::main_options::{closure#0}>
  44:     0x55d3fcdb0a30 - rustdoc[5111a8b3ee4cfbad]::main_options
  45:     0x55d3fcfa089c - <scoped_tls[beaf390a5842bbf2]::ScopedKey<rustc_span[812c5506f6a7d0a0]::SessionGlobals>>::set::<rustdoc[5111a8b3ee4cfbad]::main_args::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>
  46:     0x55d3fd037610 - std[2e6ea336b53db173]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[6f1edf494a475c31]::util::run_in_thread_pool_with_globals<rustdoc[5111a8b3ee4cfbad]::main_args::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>
  47:     0x55d3fcec7998 - <<std[2e6ea336b53db173]::thread::Builder>::spawn_unchecked_<rustc_interface[6f1edf494a475c31]::util::run_in_thread_pool_with_globals<rustdoc[5111a8b3ee4cfbad]::main_args::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>::{closure#0}, core[9ef3251603221d4a]::result::Result<(), rustc_errors[f4cb041045aad9b5]::ErrorGuaranteed>>::{closure#1} as core[9ef3251603221d4a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  48:     0x7fb08c70a513 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha625c10cb002aafd
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/alloc/src/boxed.rs:1935:9
  49:     0x7fb08c70a513 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he99a54320e05f7cf
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/alloc/src/boxed.rs:1935:9
  50:     0x7fb08c70a513 - std::sys::unix::thread::Thread::new::thread_start::he2b2cf9ce0aef6b5
                               at /rustc/e8dc8bca2118ec1ed5970790614f0b81e9167f10/library/std/src/sys/unix/thread.rs:108:17
  51:     0x7fb08c44a78d - <unknown>
  52:     0x7fb08c4cb8e4 - clone
  53:                0x0 - <unknown>

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.65.0-nightly (e8dc8bca2 2022-08-13) running on x86_64-unknown-linux-gnu

query stack during panic:
#0 [privacy_access_levels] privacy access levels
end of query stack
error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0038`.

See also #100484

Activity

  1. added
    T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.
    I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
    C-bugCategory: This is a bug.
    on Aug 13, 2022
  2. changed the title [-]ICE: compiler/rustc_privacy/src/lib.rs:282:17: unexpected type: FreshTy(0[/-] [+]ICE: compiler/rustc_privacy/src/lib.rs:282:17: unexpected type: FreshTy(0)[/+] on Aug 13, 2022
  3. added 4 commits that reference this issue on Aug 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions