summary refs log tree commit diff
path: root/src/libsyntax/ext
diff options
context:
space:
mode:
authorLuqman Aden <me@luqman.ca>2013-03-13 10:11:36 -0700
committerLuqman Aden <laden@mozilla.com>2013-03-15 18:55:44 -0700
commit9ead7dad934cc361f8e5e489238031c987ecfc82 (patch)
tree7fa501102d01dd5acad2bef1f34c856ee5ba60c9 /src/libsyntax/ext
parent59dcbd9f1c04a670cb12e1127a2f1fd0898050a6 (diff)
downloadrust-9ead7dad934cc361f8e5e489238031c987ecfc82.tar.gz
rust-9ead7dad934cc361f8e5e489238031c987ecfc82.zip
Implicitly use addr_of for output operands in asm.
Diffstat (limited to 'src/libsyntax/ext')
-rw-r--r--src/libsyntax/ext/asm.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libsyntax/ext/asm.rs b/src/libsyntax/ext/asm.rs
index 0110c186cfa..34cb743a727 100644
--- a/src/libsyntax/ext/asm.rs
+++ b/src/libsyntax/ext/asm.rs
@@ -75,6 +75,13 @@ pub fn expand_asm(cx: @ext_ctxt, sp: span, tts: &[ast::token_tree])
                     let out = p.parse_expr();
                     p.expect(&token::RPAREN);
 
+                    let out = @ast::expr {
+                        id: cx.next_id(),
+                        callee_id: cx.next_id(),
+                        span: out.span,
+                        node: ast::expr_addr_of(ast::m_mutbl, out)
+                    };
+
                     outputs.push((constraint, out));
                 }
             }