about summary refs log tree commit diff
path: root/tests/rustdoc-ui/2024-doctests-crate-attribute.rs
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2025-07-30 19:49:01 +0200
committerGitHub <noreply@github.com>2025-07-30 19:49:01 +0200
commitb38ece9021f6682887d729aa0466188eed9b7500 (patch)
tree276d8d1ffb66a5cadb063a0b462543897a860ad7 /tests/rustdoc-ui/2024-doctests-crate-attribute.rs
parente5e79f8bd428d0b8d26e8240d718b134ef297459 (diff)
parent276c4238a7ee0fa472c951f357642778d60a3bdb (diff)
downloadrust-b38ece9021f6682887d729aa0466188eed9b7500.tar.gz
rust-b38ece9021f6682887d729aa0466188eed9b7500.zip
Rollup merge of #143465 - kornelski:extern-name, r=petrochenkov
Support multiple crate versions in --extern-html-root-url

Rustdoc's `--extern-html-root-url` used to use `tcx.crate_name()` to identify crates, but that used crates' internal names from their metadata, instead of names given to them in `--extern`. That was confusing, because both `--extern…` arguments seem related and use similar syntax. Crucially, this didn't work correctly with Cargo's package aliases or multiple versions of crates.

`sess.opts.externs` lacks `CrateNum`, and `Resolver.extern_prelude` gets destroyed before `rustdoc` has a chance to see it, so I've had to save this mapping in `CStore`.

Just in case, I've kept the previous mapping by crate name as a fallback for crates that weren't matched by their extern name.

Fixes rust-lang/rust#76296
Diffstat (limited to 'tests/rustdoc-ui/2024-doctests-crate-attribute.rs')
0 files changed, 0 insertions, 0 deletions