Skip to content

Commit

Permalink
Rollup merge of rust-lang#74240 - da-x:fix-74081, r=Manishearth
Browse files Browse the repository at this point in the history
Fix rust-lang#74081 and add the test case from rust-lang#74236
  • Loading branch information
Manishearth committed Jul 11, 2020
2 parents 6204a73 + f5de23b commit aa04ffb
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/librustc_middle/ty/print/pretty.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
8 changes: 8 additions & 0 deletions src/test/ui/issues/issue-74236/auxiliary/dep.rs
Original file line number Diff line number Diff line change
@@ -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 changes: 9 additions & 0 deletions src/test/ui/issues/issue-74236/main.rs
Original file line number Diff line number Diff line change
@@ -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 changes: 11 additions & 0 deletions src/test/ui/issues/issue-74236/main.stderr
Original file line number Diff line number Diff line change
@@ -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`.

0 comments on commit aa04ffb

Please sign in to comment.