about summary refs log tree commit diff
path: root/src/libserialize
diff options
context:
space:
mode:
authorEduard Burtescu <edy.burt@gmail.com>2016-09-02 11:08:16 +0300
committerEduard Burtescu <edy.burt@gmail.com>2016-09-20 20:08:01 +0300
commit88c5679c4e0ba0bd21a15eaaf8e5fafcc6bcdafd (patch)
tree89925a5218d802a70befb0607015cf3e11ec4dda /src/libserialize
parentbcbb4107a1a966ea8ad48d370f553dffde780392 (diff)
downloadrust-88c5679c4e0ba0bd21a15eaaf8e5fafcc6bcdafd.tar.gz
rust-88c5679c4e0ba0bd21a15eaaf8e5fafcc6bcdafd.zip
rustc_metadata: remove ty{en,de}code and move to auto-derived serialization.
Diffstat (limited to 'src/libserialize')
-rw-r--r--src/libserialize/collection_impls.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libserialize/collection_impls.rs b/src/libserialize/collection_impls.rs
index 7b5092e8848..ba9bf2b86a6 100644
--- a/src/libserialize/collection_impls.rs
+++ b/src/libserialize/collection_impls.rs
@@ -134,7 +134,7 @@ impl<
     fn encode<S: Encoder>(&self, s: &mut S) -> Result<(), S::Error> {
         let mut bits = 0;
         for item in self {
-            bits |= item.to_usize();
+            bits |= 1 << item.to_usize();
         }
         s.emit_usize(bits)
     }
@@ -148,7 +148,7 @@ impl<
         let mut set = EnumSet::new();
         for bit in 0..(mem::size_of::<usize>()*8) {
             if bits & (1 << bit) != 0 {
-                set.insert(CLike::from_usize(1 << bit));
+                set.insert(CLike::from_usize(bit));
             }
         }
         Ok(set)