diff --git a/src/librustdoc/html/format.rs b/src/librustdoc/html/format.rs
index 382e299d28d..f9b2fb50521 100644
--- a/src/librustdoc/html/format.rs
+++ b/src/librustdoc/html/format.rs
@@ -428,7 +428,10 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
}
clean::Tuple(ref typs) => {
primitive_link(f, clean::PrimitiveTuple,
- format!("({:#})", typs).as_slice())
+ match typs.as_slice() {
+ [ref one] => format!("({},)", one),
+ many => format!("({:#})", many)
+ }.as_slice())
}
clean::Vector(ref t) => {
primitive_link(f, clean::Slice, format!("[{}]", **t).as_slice())