about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/print/pprust.rs19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index 7b02d036511..ed8eb4b5427 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -1572,17 +1572,24 @@ fn print_path_(s: @ps,
             }
             word(s.s, "<");
 
+            let mut comma = false;
             for lifetime in segment.lifetimes.iter() {
-                print_lifetime(s, lifetime);
-                if !segment.types.is_empty() {
+                if comma {
                     word_space(s, ",")
                 }
+                print_lifetime(s, lifetime);
+                comma = true;
             }
 
-            commasep(s,
-                     inconsistent,
-                     segment.types.map_to_vec(|t| (*t).clone()),
-                     print_type);
+            if !segment.types.is_empty() {
+                if comma {
+                    word_space(s, ",")
+                }
+                commasep(s,
+                         inconsistent,
+                         segment.types.map_to_vec(|t| (*t).clone()),
+                         print_type);
+            }
 
             word(s.s, ">")
         }