about summary refs log tree commit diff
path: root/src/rustc/syntax/parse/parser.rs
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2012-03-08 16:34:36 -0800
committerPatrick Walton <pcwalton@mimiga.net>2012-03-08 16:34:36 -0800
commitddeaea228723ffa84a17898e08727e0c55a304a1 (patch)
treecfdcd22f5f528fa0258be04839a06c7f2cadddf1 /src/rustc/syntax/parse/parser.rs
parent0722786664eaa6008e8fe6536a8c20cac0a81938 (diff)
rustc: Change the address-of operator to an explicit production so that we can parse the mutability
Diffstat (limited to 'src/rustc/syntax/parse/parser.rs')
-rw-r--r--src/rustc/syntax/parse/parser.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/rustc/syntax/parse/parser.rs b/src/rustc/syntax/parse/parser.rs
index 8b1625b04a1..d7f0982adde 100644
--- a/src/rustc/syntax/parse/parser.rs
+++ b/src/rustc/syntax/parse/parser.rs
@@ -1129,9 +1129,10 @@ fn parse_prefix_expr(p: parser) -> pexpr {
           }
           token::AND {
             p.bump();
+            let m = parse_mutability(p);
             let e = to_expr(parse_prefix_expr(p));
             hi = e.span.hi;
-            ex = ast::expr_unary(ast::addr_of, e);
+            ex = ast::expr_addr_of(m, e);
           }
           _ { ret parse_dot_or_call_expr(p); }
         }