Skip to content

Commit

Permalink
fix pretty print for qpath
Browse files Browse the repository at this point in the history
  • Loading branch information
gui1117 committed Nov 12, 2020
1 parent 55794e4 commit 775f1e5
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 5 deletions.
11 changes: 6 additions & 5 deletions compiler/rustc_ast_pretty/src/pprust/state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2328,11 +2328,12 @@ impl<'a> State<'a> {
self.print_path(path, false, depth);
}
self.s.word(">");
self.s.word("::");
let item_segment = path.segments.last().unwrap();
self.print_ident(item_segment.ident);
if let Some(ref args) = item_segment.args {
self.print_generic_args(args, colons_before_params)
for item_segment in &path.segments[qself.position..] {
self.s.word("::");
self.print_ident(item_segment.ident);
if let Some(ref args) = item_segment.args {
self.print_generic_args(args, colons_before_params)
}
}
}

Expand Down
16 changes: 16 additions & 0 deletions src/test/pretty/qpath-associated-type-bound.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// pp-exact


mod m {
pub trait Tr {
type Ts: super::Tu;
}
}

trait Tu {
fn dummy() { }
}

fn foo<T: m::Tr>() { <T as m::Tr>::Ts::dummy(); }

fn main() { }

0 comments on commit 775f1e5

Please sign in to comment.