Auto merge of #117936 - mu001999:master, r=petrochenkov

Use the glob binding in resolve_rustdoc_path process

Fixes #117920

Returning `None` seems enough.

I reproduces and tests this locally by `cargo +stage1 build`, but I cannot reproduce this ICE by putting [the following code](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2021&gist=8b3ca8f4a7676eb90baf30437ba041a2) into `tests/ui/...` and then compiling it using `rustc +stage1 /path/to/test.rs` or `x.py test`:
```rust
#![crate_type = "lib"]

use super::Hasher;

/// [`Hasher`]
pub use core:#️⃣:*;
```

r? `@petrochenkov`
This commit is contained in:
bors 2023-12-06 20:25:17 +00:00
commit 1fdfe12347
3 changed files with 23 additions and 0 deletions

View File

@ -477,6 +477,9 @@ fn import_dummy_binding(&mut self, import: Import<'a>, is_indeterminate: bool) {
self.per_ns(|this, ns| {
let key = BindingKey::new(target, ns);
let _ = this.try_define(import.parent_scope.module, key, dummy_binding, false);
this.update_resolution(import.parent_scope.module, key, false, |_, resolution| {
resolution.single_imports.remove(&import);
})
});
self.record_use(target, dummy_binding, false);
} else if import.imported_module.get().is_none() {

View File

@ -0,0 +1,11 @@
#![crate_type = "lib"]
use super::A; //~ ERROR failed to resolve
mod b {
pub trait A {}
pub trait B {}
}
/// [`A`]
pub use b::*;

View File

@ -0,0 +1,9 @@
error[E0433]: failed to resolve: there are too many leading `super` keywords
--> $DIR/issue-117920.rs:3:5
|
LL | use super::A;
| ^^^^^ there are too many leading `super` keywords
error: aborting due to 1 previous error
For more information about this error, try `rustc --explain E0433`.