about summary refs log tree commit diff
path: root/src/libsyntax/ext/pipes/proto.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsyntax/ext/pipes/proto.rs')
-rw-r--r--src/libsyntax/ext/pipes/proto.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/libsyntax/ext/pipes/proto.rs b/src/libsyntax/ext/pipes/proto.rs
index 60df7623e40..c9680ac02c9 100644
--- a/src/libsyntax/ext/pipes/proto.rs
+++ b/src/libsyntax/ext/pipes/proto.rs
@@ -172,9 +172,13 @@ pub impl protocol_ {
     }
 }
 
-pub impl protocol {
-    fn add_state_poly(&self, +name: ~str, ident: ast::ident, dir: direction,
-                      +generics: ast::Generics) -> state {
+pub impl protocol_ {
+    fn add_state_poly(@mut self,
+                      +name: ~str,
+                      ident: ast::ident,
+                      dir: direction,
+                      +generics: ast::Generics)
+                   -> state {
         let messages = @mut ~[];
 
         let state = @state_ {
@@ -185,7 +189,7 @@ pub impl protocol {
             dir: dir,
             generics: generics,
             messages: messages,
-            proto: *self
+            proto: self
         };
 
         self.states.push(state);