diff --git a/src/types.rs b/src/types.rs index a1d449f3249..cf65f4426b3 100644 --- a/src/types.rs +++ b/src/types.rs @@ -33,7 +33,7 @@ pub fn rewrite_path(context: &RewriteContext, -> Option { let skip_count = qself.map_or(0, |x| x.position); - let mut result = if path.global { + let mut result = if path.global && qself.is_none() { "::".to_owned() } else { String::new() @@ -48,6 +48,9 @@ pub fn rewrite_path(context: &RewriteContext, if skip_count > 0 { result.push_str(" as "); + if path.global { + result.push_str("::"); + } let extra_offset = extra_offset(&result, offset); // 3 = ">::".len() diff --git a/tests/target/associated-items.rs b/tests/target/associated-items.rs new file mode 100644 index 00000000000..1b0a828d029 --- /dev/null +++ b/tests/target/associated-items.rs @@ -0,0 +1,3 @@ +fn main() { + println!("{}", ::default()); +}