Rollup merge of #74240 - da-x:fix-74081, r=Manishearth
Fix #74081 and add the test case from #74236
This commit is contained in:
commit
aa04ffb61a
@ -393,7 +393,7 @@ pub trait PrettyPrinter<'tcx>:
|
||||
.tcx()
|
||||
.item_children(visible_parent)
|
||||
.iter()
|
||||
.find(|child| child.res.def_id() == def_id)
|
||||
.find(|child| child.res.opt_def_id() == Some(def_id))
|
||||
.map(|child| child.ident.name);
|
||||
if let Some(reexport) = reexport {
|
||||
*name = reexport;
|
||||
|
8
src/test/ui/issues/issue-74236/auxiliary/dep.rs
Normal file
8
src/test/ui/issues/issue-74236/auxiliary/dep.rs
Normal file
@ -0,0 +1,8 @@
|
||||
// edition:2018
|
||||
|
||||
mod private { pub struct Pub; }
|
||||
|
||||
// Reexport built-in attribute without a DefId (requires Rust 2018).
|
||||
pub use cfg_attr as attr;
|
||||
// This export needs to be after the built-in attribute to trigger the bug.
|
||||
pub use private::Pub as Renamed;
|
9
src/test/ui/issues/issue-74236/main.rs
Normal file
9
src/test/ui/issues/issue-74236/main.rs
Normal file
@ -0,0 +1,9 @@
|
||||
// edition:2018
|
||||
// aux-build:dep.rs
|
||||
// compile-flags:--extern dep
|
||||
|
||||
fn main() {
|
||||
// Trigger an error that will print the path of dep::private::Pub (as "dep::Renamed").
|
||||
let () = dep::Renamed;
|
||||
//~^ ERROR mismatched types
|
||||
}
|
11
src/test/ui/issues/issue-74236/main.stderr
Normal file
11
src/test/ui/issues/issue-74236/main.stderr
Normal file
@ -0,0 +1,11 @@
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/main.rs:7:9
|
||||
|
|
||||
LL | let () = dep::Renamed;
|
||||
| ^^ ------------ this expression has type `dep::Renamed`
|
||||
| |
|
||||
| expected struct `dep::Renamed`, found `()`
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
Loading…
x
Reference in New Issue
Block a user