about summary refs log tree commit diff
path: root/src/libsyntax/print/pprust.rs
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2012-08-14 19:20:56 -0700
committerPatrick Walton <pcwalton@mimiga.net>2012-08-15 16:20:34 -0700
commitbdb206f2855cc6f7d3d79379633f7429b7327fec (patch)
tree05764770b6b2729780bb1289d3c2db55d1cc55c5 /src/libsyntax/print/pprust.rs
parentd54db12155257787797cd9c7eaf06a215ff516e5 (diff)
downloadrust-bdb206f2855cc6f7d3d79379633f7429b7327fec.tar.gz
rust-bdb206f2855cc6f7d3d79379633f7429b7327fec.zip
rustc: Parse labeled loop, break, and again
Diffstat (limited to 'src/libsyntax/print/pprust.rs')
-rw-r--r--src/libsyntax/print/pprust.rs15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index 39bc18529c9..49ded036e04 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -1142,9 +1142,10 @@ fn print_expr(s: ps, &&expr: @ast::expr) {
         space(s.s);
         print_block(s, blk);
       }
-      ast::expr_loop(blk) => {
+      ast::expr_loop(blk, opt_ident) => {
         head(s, ~"loop");
         space(s.s);
+        option::iter(opt_ident, |ident| word_space(s, *ident));
         print_block(s, blk);
       }
       ast::expr_match(expr, arms, mode) => {
@@ -1310,8 +1311,16 @@ fn print_expr(s: ps, &&expr: @ast::expr) {
           _ => ()
         }
       }
-      ast::expr_break => word(s.s, ~"break"),
-      ast::expr_again => word(s.s, ~"again"),
+      ast::expr_break(opt_ident) => {
+        word(s.s, ~"break");
+        space(s.s);
+        option::iter(opt_ident, |ident| word_space(s, *ident));
+      }
+      ast::expr_again(opt_ident) => {
+        word(s.s, ~"again");
+        space(s.s);
+        option::iter(opt_ident, |ident| word_space(s, *ident));
+      }
       ast::expr_ret(result) => {
         word(s.s, ~"return");
         match result {