about summary refs log tree commit diff
path: root/src/rustc
diff options
context:
space:
mode:
authorNiko Matsakis <niko@alum.mit.edu>2012-05-16 06:57:52 -0700
committerNiko Matsakis <niko@alum.mit.edu>2012-05-16 07:19:19 -0700
commit63210ecddb74fb601a17314c6866685d74fa89dc (patch)
treeb7870b2cedec5e50cef6b94b90fd01b599187290 /src/rustc
parent5c8069d817d5be3dc577dce6ab59ebfd89d19843 (diff)
downloadrust-63210ecddb74fb601a17314c6866685d74fa89dc.tar.gz
rust-63210ecddb74fb601a17314c6866685d74fa89dc.zip
correct preservation of explicit borrows like "let x = &*y;"
Diffstat (limited to 'src/rustc')
-rw-r--r--src/rustc/middle/borrowck.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/rustc/middle/borrowck.rs b/src/rustc/middle/borrowck.rs
index 0908bafb2e2..06850c8c7b3 100644
--- a/src/rustc/middle/borrowck.rs
+++ b/src/rustc/middle/borrowck.rs
@@ -1481,7 +1481,7 @@ impl preserve_methods for preserve_ctxt {
             // Unsafe pointers are the user's problem
             ok(())
           }
-          cat_deref(_, derefs, gc_ptr) {
+          cat_deref(base, derefs, gc_ptr) {
             // GC'd pointers of type @MT: always stable because we can inc
             // the ref count or keep a GC root as necessary.  We need to
             // insert this id into the root_map, however.
@@ -1489,9 +1489,9 @@ impl preserve_methods for preserve_ctxt {
               some(scope_id) {
                 #debug["Inserting root map entry for %s: \
                         node %d:%u -> scope %d",
-                       self.bccx.cmt_to_repr(cmt), cmt.id,
+                       self.bccx.cmt_to_repr(cmt), base.id,
                        derefs, scope_id];
-                let rk = {id: cmt.id, derefs: derefs};
+                let rk = {id: base.id, derefs: derefs};
                 self.bccx.root_map.insert(rk, scope_id);
                 ok(())
               }