Repository navigation
ICE when checking aws-config 0.11.0 for intra-doc links #96707
Copy link
Copy link
Closed
Labels
A-resolveArea: Name/path resolution done by `rustc_resolve` specificallyArea: Name/path resolution done by `rustc_resolve` specificallyC-bugCategory: This is a bug.Category: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.Relevant to the rustdoc team, which will review and decide on the PR/issue.
Description
Code
The compiler encounters an ICE while trying to document the aws-config crate. In particular, it seems to panic with a "no entry found for key" while collecting intra-doc links.
Steps to reproduce:
$ cd /tmp && cargo new repro && cd repro
Created binary (application) `repro` package
$ cargo add aws-config
Updating crates.io index
Adding aws-config v0.11.0 to dependencies.
Features:
+ rt-tokio
+ rustls
- native-tls
$ cargo doc
Updating crates.io index
Downloaded tokio v1.18.1
Downloaded 1 crate (572.3 KB) in 1.22s
Compiling libc v0.2.125
...
Documenting aws-config v0.11.0
(ICE message & backtrace)You can check the failed docs.rs build for more details on reproducing the issue.
Meta
$ rustc --version --verbose
rustc 1.62.0-nightly (e1b71feb5 2022-05-03)
binary: rustc
commit-hash: e1b71feb592ba64805689e2b15b9fa570182c442
commit-date: 2022-05-03
host: x86_64-unknown-linux-gnu
release: 1.62.0-nightly
LLVM version: 14.0.1Error output
Backtrace
$ RUST_BACKTRACE=full cargo doc --verbose
Fresh autocfg v1.1.0
Fresh cc v1.0.73
Fresh unicode-xid v0.2.3
Fresh cfg-if v1.0.0
Fresh once_cell v1.10.0
Fresh bytes v1.1.0
Fresh pin-project-lite v0.2.9
Fresh itoa v1.0.1
Fresh lazy_static v1.4.0
Fresh pin-utils v0.1.0
Fresh slab v0.4.6
Fresh untrusted v0.7.1
Fresh spin v0.5.2
Fresh fnv v1.0.7
Fresh hashbrown v0.11.2
Fresh num_threads v0.1.5
Fresh futures-sink v0.3.21
Fresh tower-service v0.3.1
Fresh try-lock v0.2.3
Fresh ryu v1.0.9
Fresh httpdate v1.0.2
Fresh percent-encoding v2.1.0
Fresh either v1.6.1
Fresh base64 v0.13.0
Fresh openssl-probe v0.1.5
Fresh tower-layer v0.3.1
Fresh fastrand v1.7.0
Fresh zeroize v1.5.5
Fresh regex-syntax v0.6.25
Fresh matches v0.1.9
Fresh hex v0.4.3
Fresh xmlparser v0.13.3
Fresh urlencoding v2.1.0
Fresh tracing-core v0.1.26
Fresh http v0.2.7
Fresh bytes-utils v0.1.2
Fresh libc v0.2.125
Fresh proc-macro2 v1.0.37
Fresh log v0.4.17
Fresh memchr v2.5.0
Fresh form_urlencoded v1.0.1
Fresh futures-core v0.3.21
Fresh semver v1.0.9
Fresh futures-task v0.3.21
Fresh http-body v0.4.4
Fresh httparse v1.7.1
Fresh quote v1.0.18
Fresh socket2 v0.4.4
Fresh mio v0.8.2
Fresh ring v0.16.20
Fresh num-traits v0.2.15
Fresh time v0.3.9
Fresh indexmap v1.8.1
Fresh want v0.3.0
Fresh aho-corasick v0.7.18
Fresh rustc_version v0.4.0
Fresh futures-channel v0.3.21
Fresh syn v1.0.92
Fresh tokio v1.18.1
Fresh num-integer v0.1.45
Fresh sct v0.6.1
Fresh webpki v0.21.4
Fresh regex v1.5.5
Fresh tracing-attributes v0.1.21
Fresh futures-macro v0.3.21
Fresh aws-smithy-types v0.41.0
Fresh pin-project-internal v1.0.10
Fresh rustls v0.19.1
Fresh ct-logs v0.8.0
Fresh tokio-stream v0.1.8
Fresh thiserror-impl v1.0.31
Fresh futures-util v0.3.21
Fresh tracing v0.1.34
Fresh pin-project v1.0.10
Fresh tokio-rustls v0.22.0
Fresh rustls-native-certs v0.5.0
Fresh thiserror v1.0.31
Fresh aws-smithy-json v0.41.0
Fresh aws-smithy-query v0.41.0
Fresh tokio-util v0.7.1
Fresh tower v0.4.12
Fresh aws-smithy-async v0.41.0
Fresh aws-smithy-xml v0.41.0
Fresh h2 v0.3.13
Fresh hyper v0.14.18
Fresh aws-smithy-http v0.41.0
Fresh hyper-rustls v0.22.1
Fresh aws-smithy-http-tower v0.41.0
Fresh aws-sigv4 v0.11.0
Fresh aws-smithy-client v0.41.0
Fresh aws-types v0.11.0
Fresh aws-endpoint v0.11.0
Fresh aws-sig-auth v0.11.0
Fresh aws-http v0.11.0
Fresh aws-sdk-sts v0.11.0
Fresh aws-sdk-sso v0.11.0
Documenting aws-config v0.11.0
Running `rustdoc --edition=2021 --crate-type lib --crate-name aws_config /home/consulting/.cargo/registry/src/github.life-white.uk-1ecc6299db9ec823/aws-config-0.11.0/src/lib.rs --cap-lints allow -o /tmp/repro/target/doc --cfg 'feature="default"' --cfg 'feature="rt-tokio"' --cfg 'feature="rustls"' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=bacdc3d237cda790 -L dependency=/tmp/repro/target/debug/deps --extern aws_http=/tmp/repro/target/debug/deps/libaws_http-a75437d7aa53b188.rmeta --extern aws_sdk_sso=/tmp/repro/target/debug/deps/libaws_sdk_sso-b50f67496acf538d.rmeta --extern aws_sdk_sts=/tmp/repro/target/debug/deps/libaws_sdk_sts-c61f26fed33b2cf9.rmeta --extern aws_smithy_async=/tmp/repro/target/debug/deps/libaws_smithy_async-f0d4e15c58e7fcb2.rmeta --extern aws_smithy_client=/tmp/repro/target/debug/deps/libaws_smithy_client-d2cddce08c778121.rmeta --extern aws_smithy_http=/tmp/repro/target/debug/deps/libaws_smithy_http-8025f1541a227094.rmeta --extern aws_smithy_http_tower=/tmp/repro/target/debug/deps/libaws_smithy_http_tower-67f6b7f6a9fbf874.rmeta --extern aws_smithy_json=/tmp/repro/target/debug/deps/libaws_smithy_json-193c78e768197f5a.rmeta --extern aws_smithy_types=/tmp/repro/target/debug/deps/libaws_smithy_types-930ef2b6f41fa1bc.rmeta --extern aws_types=/tmp/repro/target/debug/deps/libaws_types-e902643891b20351.rmeta --extern bytes=/tmp/repro/target/debug/deps/libbytes-0b6620405fcf1713.rmeta --extern hex=/tmp/repro/target/debug/deps/libhex-52738f6114d4bb1b.rmeta --extern http=/tmp/repro/target/debug/deps/libhttp-ead0e0fbbcb95e90.rmeta --extern hyper=/tmp/repro/target/debug/deps/libhyper-d0796b2f14edb817.rmeta --extern ring=/tmp/repro/target/debug/deps/libring-a7a32c6b54df5d6d.rmeta --extern tokio=/tmp/repro/target/debug/deps/libtokio-db1778ba3e643e4e.rmeta --extern tower=/tmp/repro/target/debug/deps/libtower-dfff9667aa5b3fcd.rmeta --extern tracing=/tmp/repro/target/debug/deps/libtracing-839386731b568d45.rmeta --extern zeroize=/tmp/repro/target/debug/deps/libzeroize-b63ab9c219962735.rmeta --crate-version 0.11.0`
thread 'rustc' panicked at 'no entry found for key', src/librustdoc/passes/collect_intra_doc_links.rs:989:16
stack backtrace:
0: 0x7f221909df8d - std::backtrace_rs::backtrace::libunwind::trace::h4805a893eb42a372
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x7f221909df8d - std::backtrace_rs::backtrace::trace_unsynchronized::h910528a06e2a2fa8
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x7f221909df8d - std::sys_common::backtrace::_print_fmt::h9a10ce045ad67332
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys_common/backtrace.rs:66:5
3: 0x7f221909df8d - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::ha45d06e3654760fe
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys_common/backtrace.rs:45:22
4: 0x7f22190f9ccc - core::fmt::write::h1a75bc28a77512a0
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/core/src/fmt/mod.rs:1194:17
5: 0x7f221908f681 - std::io::Write::write_fmt::h7f44971eeecf029b
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/io/mod.rs:1655:15
6: 0x7f22190a0ca5 - std::sys_common::backtrace::_print::h8dd5e5780587d338
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys_common/backtrace.rs:48:5
7: 0x7f22190a0ca5 - std::sys_common::backtrace::print::h49bbeed1a1df5f1b
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys_common/backtrace.rs:35:9
8: 0x7f22190a0ca5 - std::panicking::default_hook::{{closure}}::h5a18580d2a58bd32
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/panicking.rs:295:22
9: 0x7f22190a0919 - std::panicking::default_hook::h41d6b75fb0d762fc
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/panicking.rs:314:9
10: 0x7f22198cc211 - rustc_driver[125040c6eb523a71]::DEFAULT_HOOK::{closure#0}::{closure#0}
11: 0x7f22190a1476 - std::panicking::rust_panic_with_hook::hf4c97d7be57c7d62
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/panicking.rs:702:17
12: 0x7f22190a1277 - std::panicking::begin_panic_handler::{{closure}}::hbbe19efe0f32bb48
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/panicking.rs:588:13
13: 0x7f221909e444 - std::sys_common::backtrace::__rust_end_short_backtrace::h5663e74b95169550
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys_common/backtrace.rs:138:18
14: 0x7f22190a0fa9 - rust_begin_unwind
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/panicking.rs:584:5
15: 0x7f2219066273 - core::panicking::panic_fmt::h41e337a225a8b235
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/core/src/panicking.rs:142:14
16: 0x7f22190f6931 - core::panicking::panic_display::h06793ac317a7ffaa
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/core/src/panicking.rs:72:5
17: 0x7f22190f68db - core::panicking::panic_str::h52cdda5d90c3650f
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/core/src/panicking.rs:56:5
18: 0x7f22190660e6 - core::option::expect_failed::hbc6f1e1f4f7e4bb2
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/core/src/option.rs:1855:5
19: 0x55727dab17f9 - rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::resolve_associated_trait_item
20: 0x55727daaff9e - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector>::resolve_associated_item
21: 0x55727daad193 - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector>::resolve
22: 0x55727dab3301 - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_item
23: 0x55727dac5a8a - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_inner_recur
24: 0x55727dab6d03 - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_item
25: 0x55727dac5b2a - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_inner_recur
26: 0x55727dab6ce8 - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_item
27: 0x55727dac5b2a - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_inner_recur
28: 0x55727dab6ce8 - <rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::LinkCollector as rustdoc[a9348917d5ac8b3]::visit::DocVisitor>::visit_item
29: 0x55727daab48c - rustdoc[a9348917d5ac8b3]::passes::collect_intra_doc_links::collect_intra_doc_links
30: 0x55727db1e0f2 - <rustc_interface[193ba4fb4117b07c]::passes::QueryContext>::enter::<rustdoc[a9348917d5ac8b3]::main_options::{closure#0}::{closure#0}::{closure#1}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>::{closure#0}
31: 0x55727dafff10 - <rustc_interface[193ba4fb4117b07c]::passes::QueryContext>::enter::<rustdoc[a9348917d5ac8b3]::main_options::{closure#0}::{closure#0}::{closure#1}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>
32: 0x55727da4d55f - <rustc_interface[193ba4fb4117b07c]::interface::Compiler>::enter::<rustdoc[a9348917d5ac8b3]::main_options::{closure#0}::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>
33: 0x55727d8ccb3a - rustc_span[141e2097171f6fae]::with_source_map::<core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>, rustc_interface[193ba4fb4117b07c]::interface::create_compiler_and_run<core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>, rustdoc[a9348917d5ac8b3]::main_options::{closure#0}>::{closure#1}>
34: 0x55727da4f6b4 - rustc_interface[193ba4fb4117b07c]::interface::create_compiler_and_run::<core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>, rustdoc[a9348917d5ac8b3]::main_options::{closure#0}>
35: 0x55727d8ce855 - <scoped_tls[ea6fdb843fe953c6]::ScopedKey<rustc_span[141e2097171f6fae]::SessionGlobals>>::set::<rustdoc[a9348917d5ac8b3]::main_args::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>
36: 0x55727da7577f - std[e0513a75ea4384d6]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[193ba4fb4117b07c]::util::run_in_thread_pool_with_globals<rustdoc[a9348917d5ac8b3]::main_args::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>
37: 0x55727db200a9 - <<std[e0513a75ea4384d6]::thread::Builder>::spawn_unchecked_<rustc_interface[193ba4fb4117b07c]::util::run_in_thread_pool_with_globals<rustdoc[a9348917d5ac8b3]::main_args::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>::{closure#0}, core[6da350c98d2740e7]::result::Result<(), rustc_errors[7bd59ff38442a38e]::ErrorGuaranteed>>::{closure#1} as core[6da350c98d2740e7]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
38: 0x7f22190ab3c3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hafb604b842244d6f
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/alloc/src/boxed.rs:1866:9
39: 0x7f22190ab3c3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hb72aee8e2be83316
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/alloc/src/boxed.rs:1866:9
40: 0x7f22190ab3c3 - std::sys::unix::thread::Thread::new::thread_start::hc6933a96c3e9c25d
at /rustc/e1b71feb592ba64805689e2b15b9fa570182c442/library/std/src/sys/unix/thread.rs:108:17
41: 0x7f2218d9b5c2 - start_thread
42: 0x7f2218e20584 - __clone
43: 0x0 - <unknown>
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 (e1b71feb5 2022-05-03) running on x86_64-unknown-linux-gnu
note: compiler flags: --crate-type lib
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
end of query stack
error: could not document `aws-config`
Caused by:
process didn't exit successfully: `rustdoc --edition=2021 --crate-type lib --crate-name aws_config /home/consulting/.cargo/registry/src/github.life-white.uk-1ecc6299db9ec823/aws-config-0.11.0/src/lib.rs --cap-lints allow -o /tmp/repro/target/doc --cfg 'feature="default"' --cfg 'feature="rt-tokio"' --cfg 'feature="rustls"' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=bacdc3d237cda790 -L dependency=/tmp/repro/target/debug/deps --extern aws_http=/tmp/repro/target/debug/deps/libaws_http-a75437d7aa53b188.rmeta --extern aws_sdk_sso=/tmp/repro/target/debug/deps/libaws_sdk_sso-b50f67496acf538d.rmeta --extern aws_sdk_sts=/tmp/repro/target/debug/deps/libaws_sdk_sts-c61f26fed33b2cf9.rmeta --extern aws_smithy_async=/tmp/repro/target/debug/deps/libaws_smithy_async-f0d4e15c58e7fcb2.rmeta --extern aws_smithy_client=/tmp/repro/target/debug/deps/libaws_smithy_client-d2cddce08c778121.rmeta --extern aws_smithy_http=/tmp/repro/target/debug/deps/libaws_smithy_http-8025f1541a227094.rmeta --extern aws_smithy_http_tower=/tmp/repro/target/debug/deps/libaws_smithy_http_tower-67f6b7f6a9fbf874.rmeta --extern aws_smithy_json=/tmp/repro/target/debug/deps/libaws_smithy_json-193c78e768197f5a.rmeta --extern aws_smithy_types=/tmp/repro/target/debug/deps/libaws_smithy_types-930ef2b6f41fa1bc.rmeta --extern aws_types=/tmp/repro/target/debug/deps/libaws_types-e902643891b20351.rmeta --extern bytes=/tmp/repro/target/debug/deps/libbytes-0b6620405fcf1713.rmeta --extern hex=/tmp/repro/target/debug/deps/libhex-52738f6114d4bb1b.rmeta --extern http=/tmp/repro/target/debug/deps/libhttp-ead0e0fbbcb95e90.rmeta --extern hyper=/tmp/repro/target/debug/deps/libhyper-d0796b2f14edb817.rmeta --extern ring=/tmp/repro/target/debug/deps/libring-a7a32c6b54df5d6d.rmeta --extern tokio=/tmp/repro/target/debug/deps/libtokio-db1778ba3e643e4e.rmeta --extern tower=/tmp/repro/target/debug/deps/libtower-dfff9667aa5b3fcd.rmeta --extern tracing=/tmp/repro/target/debug/deps/libtracing-839386731b568d45.rmeta --extern zeroize=/tmp/repro/target/debug/deps/libzeroize-b63ab9c219962735.rmeta --crate-version 0.11.0` (exit status: 101)Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
A-resolveArea: Name/path resolution done by `rustc_resolve` specificallyArea: Name/path resolution done by `rustc_resolve` specificallyC-bugCategory: This is a bug.Category: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.Relevant to the rustdoc team, which will review and decide on the PR/issue.
Activity
jyn514 commentedon May 4, 2022
cc @petrochenkov
@rustbot label -T-compiler +T-rustdoc +A-resolve
Michael-F-Bryan commentedon May 5, 2022
It looks like something in the latest nightly has resolved this ICE.
The ICE occurs again if we switch to yesterday's nightly (
rustup override set nightly-2022-05-04), so I'm guessing it was a bug in the compiler which has been since fixed and not an issue with my environment.Should we close the ticket now that it's either been resolved or can no longer be reproduced?
petrochenkov commentedon May 5, 2022
@Michael-F-Bryan
That something is #96447, so closing the issue.