fix pretty print for qpath

This commit is contained in:
thiolliere 2020-11-12 12:41:19 +01:00
parent 55794e4396
commit 775f1e5acd
2 changed files with 22 additions and 5 deletions

View File

@ -2328,11 +2328,12 @@ fn print_qpath(&mut self, path: &ast::Path, qself: &ast::QSelf, colons_before_pa
self.print_path(path, false, depth); self.print_path(path, false, depth);
} }
self.s.word(">"); self.s.word(">");
self.s.word("::"); for item_segment in &path.segments[qself.position..] {
let item_segment = path.segments.last().unwrap(); self.s.word("::");
self.print_ident(item_segment.ident); self.print_ident(item_segment.ident);
if let Some(ref args) = item_segment.args { if let Some(ref args) = item_segment.args {
self.print_generic_args(args, colons_before_params) self.print_generic_args(args, colons_before_params)
}
} }
} }

View File

@ -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() { }