diff options
| author | bors <bors@rust-lang.org> | 2018-12-30 03:12:16 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-12-30 03:12:16 +0000 |
| commit | 171c1fc25ed22e34fa4f666a15909b762ac1307b (patch) | |
| tree | cf23bc98a34c990895fa9da8f67c807bf22597f6 /src/librustdoc/html/static/source-script.js | |
| parent | a35cf79fcb961d43828aa9f010e7109b60633f52 (diff) | |
| parent | ddb550a0e35921d2f4ecf023a7883b247f2ac407 (diff) | |
| download | rust-171c1fc25ed22e34fa4f666a15909b762ac1307b.tar.gz rust-171c1fc25ed22e34fa4f666a15909b762ac1307b.zip | |
Auto merge of #57185 - petrochenkov:impice4, r=estebank
resolve: Fix one more ICE in import validation
So if you have an unresolved import
```rust
mod m {
use foo::bar;
}
```
error recovery will insert a special item with `Def::Err` definition into module `m`, so other things depending on `bar` won't produce extra errors.
The issue was that erroneous `bar` was overwriting legitimate `bar`s coming from globs, e.g.
```rust
mod m {
use baz::*; // imports real existing `bar`
use foo::bar;
}
```
causing some unwanted diagnostics talking about "unresolved items", and producing inconsistent resolutions like https://github.com/rust-lang/rust/issues/57015.
This PR stops overwriting real successful resolutions with `Def::Err`s.
Fixes https://github.com/rust-lang/rust/issues/57015
Diffstat (limited to 'src/librustdoc/html/static/source-script.js')
0 files changed, 0 insertions, 0 deletions
