Skip to content

rustdoc ICE: 'no entry found for key' #93476

Closed
@dhardy

Description

@dhardy

Running cargo doc --no-deps on nightly causes an ICE.
Judging by my CI runners for PRs this broken between 2 and 4 days ago (26th-28th Jan).

Code

See attached minified project: x.zip. Essentially, this is:

pub extern crate kas_text;

pub mod text {
    pub use kas_text::*;
}

Meta

$ rustdoc --version --verbose
rustdoc 1.60.0-nightly (a00e130da 2022-01-29)
binary: rustdoc
commit-hash: a00e130dae74a213338e2b095ec855156d8f3d8a
commit-date: 2022-01-29
host: x86_64-unknown-linux-gnu
release: 1.60.0-nightly
LLVM version: 13.0.0

Error output

thread 'rustc' panicked at 'no entry found for key', src/librustdoc/passes/collect_intra_doc_links.rs:929:16
Backtrace

$ cargo doc --no-deps
    Updating git repository `https://github.com/kas-gui/kas-text.git`
    Updating crates.io index
 Documenting x v0.0.0 (/home/dhardy/projects/kas/x)
thread 'rustc' panicked at 'no entry found for key', src/librustdoc/passes/collect_intra_doc_links.rs:929:16
stack backtrace:
   0:     0x7fc4ce946bac - std::backtrace_rs::backtrace::libunwind::trace::hb038c40de1c0ae49
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fc4ce946bac - std::backtrace_rs::backtrace::trace_unsynchronized::h661b1f6ad336b781
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fc4ce946bac - std::sys_common::backtrace::_print_fmt::h0971b63334fee328
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys_common/backtrace.rs:67:5
   3:     0x7fc4ce946bac - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3b78f05d2a6c8ee0
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys_common/backtrace.rs:46:22
   4:     0x7fc4ce9a7f3c - core::fmt::write::h63d47ad6ce68d29f
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/core/src/fmt/mod.rs:1168:17
   5:     0x7fc4ce936163 - std::io::Write::write_fmt::h8b89aef5f7c3c6d7
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/io/mod.rs:1653:15
   6:     0x7fc4ce94afd2 - std::sys_common::backtrace::_print::h53c97f3ded8d0297
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys_common/backtrace.rs:49:5
   7:     0x7fc4ce94afd2 - std::sys_common::backtrace::print::ha7737561d64ef7dd
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys_common/backtrace.rs:36:9
   8:     0x7fc4ce94afd2 - std::panicking::default_hook::{{closure}}::ha83fb435953d1118
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/panicking.rs:290:50
   9:     0x7fc4ce94abb5 - std::panicking::default_hook::ha146e5e1ad32ac90
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/panicking.rs:307:9
  10:     0x7fc4cf129311 - rustc_driver[7a0b8b63c290da21]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7fc4ce94b7eb - std::panicking::rust_panic_with_hook::h82b4f7687d24d309
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/panicking.rs:695:17
  12:     0x7fc4ce94b4a7 - std::panicking::begin_panic_handler::{{closure}}::h28d45f533a609527
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/panicking.rs:581:13
  13:     0x7fc4ce947054 - std::sys_common::backtrace::__rust_end_short_backtrace::hb6c2ac1ca17af109
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys_common/backtrace.rs:139:18
  14:     0x7fc4ce94b1b9 - rust_begin_unwind
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/panicking.rs:577:5
  15:     0x7fc4ce9127c3 - core::panicking::panic_fmt::h99a5ce7711ad76bc
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/core/src/panicking.rs:135:14
  16:     0x7fc4ce9a4d31 - core::panicking::panic_display::haa1b5f5f3ab96894
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/core/src/panicking.rs:65:5
  17:     0x7fc4ce9a4cdb - core::panicking::panic_str::hfd59fe701761bd81
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/core/src/panicking.rs:56:5
  18:     0x7fc4ce912646 - core::option::expect_failed::hde33de334900c241
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/core/src/option.rs:1840:5
  19:     0x55ddcf64dec7 - rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::resolve_associated_trait_item
  20:     0x55ddcf64c4cd - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector>::resolve_associated_item
  21:     0x55ddcf64a22f - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector>::resolve
  22:     0x55ddcf653a48 - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector>::resolve_link
  23:     0x55ddcf64f2af - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_item
  24:     0x55ddcf65be5a - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_inner_recur
  25:     0x55ddcf64f86c - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_item
  26:     0x55ddcf65bdda - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_inner_recur
  27:     0x55ddcf64f876 - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_item
  28:     0x55ddcf65bdda - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_inner_recur
  29:     0x55ddcf64f876 - <rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::LinkCollector as rustdoc[d5118d915dff11a2]::visit::DocVisitor>::visit_item
  30:     0x55ddcf648b3f - rustdoc[d5118d915dff11a2]::passes::collect_intra_doc_links::collect_intra_doc_links
  31:     0x55ddcf4f8444 - <rustc_session[c7318ce5fc5c0217]::session::Session>::time::<rustdoc[d5118d915dff11a2]::clean::types::Crate, rustdoc[d5118d915dff11a2]::core::run_global_ctxt::{closure#8}>
  32:     0x55ddcf6edd4b - rustdoc[d5118d915dff11a2]::core::run_global_ctxt
  33:     0x55ddcf4f88c2 - <rustc_session[c7318ce5fc5c0217]::session::Session>::time::<(rustdoc[d5118d915dff11a2]::clean::types::Crate, rustdoc[d5118d915dff11a2]::config::RenderOptions, rustdoc[d5118d915dff11a2]::formats::cache::Cache), rustdoc[d5118d915dff11a2]::main_options::{closure#0}::{closure#0}::{closure#1}::{closure#0}>
  34:     0x55ddcf692d5f - <rustc_interface[873ebc126206e841]::interface::Compiler>::enter::<rustdoc[d5118d915dff11a2]::main_options::{closure#0}::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>
  35:     0x55ddcf71a2ec - rustc_span[d2b1caf0233c087f]::with_source_map::<core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>, rustc_interface[873ebc126206e841]::interface::create_compiler_and_run<core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>, rustdoc[d5118d915dff11a2]::main_options::{closure#0}>::{closure#1}>
  36:     0x55ddcf686437 - rustc_interface[873ebc126206e841]::interface::create_compiler_and_run::<core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>, rustdoc[d5118d915dff11a2]::main_options::{closure#0}>
  37:     0x55ddcf4de13e - rustdoc[d5118d915dff11a2]::main_options
  38:     0x55ddcf4f609d - <scoped_tls[9ea9432e17af2e8b]::ScopedKey<rustc_span[d2b1caf0233c087f]::SessionGlobals>>::set::<rustc_interface[873ebc126206e841]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustdoc[d5118d915dff11a2]::main_args::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>::{closure#0}::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>
  39:     0x55ddcf6c5249 - std[b4a8e50ca1a182f4]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[873ebc126206e841]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustdoc[d5118d915dff11a2]::main_args::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>
  40:     0x55ddcf4f5889 - <<std[b4a8e50ca1a182f4]::thread::Builder>::spawn_unchecked_<rustc_interface[873ebc126206e841]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustdoc[d5118d915dff11a2]::main_args::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>::{closure#0}, core[dcdef901f9444141]::result::Result<(), rustc_errors[e07c79365ea7771d]::ErrorReported>>::{closure#1} as core[dcdef901f9444141]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  41:     0x7fc4ce957463 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hff7ff216a088d20e
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/alloc/src/boxed.rs:1854:9
  42:     0x7fc4ce957463 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h79ddb757e4f45c15
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/alloc/src/boxed.rs:1854:9
  43:     0x7fc4ce957463 - std::sys::unix::thread::Thread::new::thread_start::hf3709a5f086342d7
                               at /rustc/a00e130dae74a213338e2b095ec855156d8f3d8a/library/std/src/sys/unix/thread.rs:108:17
  44:     0x7fc4ce60da87 - start_thread
  45:     0x7fc4ce692640 - __clone3
  46:                0x0 - <unknown>

error: internal compiler error: unexpected panic

error: Unrecognized option: 'crate-version'

error: could not document `x`

Caused by:
  process didn't exit successfully: `rustdoc --edition=2021 --crate-type lib --crate-name x src/lib.rs -o /home/dhardy/.cache/cargo/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=d7faf179ecbbc013 -L dependency=/home/dhardy/.cache/cargo/debug/deps --extern kas_text=/home/dhardy/.cache/cargo/debug/deps/libkas_text-0472e98fac607ce2.rmeta --crate-version 0.0.0` (exit status: 1)

Metadata

Metadata

Assignees

Labels

C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️P-criticalCritical priorityT-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.regression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions