diff --git a/src/libstd/treemap.rs b/src/libstd/treemap.rs index ed7a216193f2..b5f60a66978e 100644 --- a/src/libstd/treemap.rs +++ b/src/libstd/treemap.rs @@ -523,7 +523,7 @@ fn remove(node: &mut Option<~TreeNode>, key: &K) -> bool { do child.mutate |child| { let mut child = child; if child.right.is_some() { - heir_swap(node, &mut child.right); + heir_swap(&mut *node, &mut child.right); } else { node.key <-> child.key; node.value <-> child.value;