1
Fork 0

Replace many uses of mem::transmute with more specific functions

The replacements are functions that usually use a single `mem::transmute` in
their body and restrict input and output via more concrete types than `T` and
`U`. Worth noting are the `transmute` functions for slices and the `from_utf8*`
family for mutable slices. Additionally, `mem::transmute` was often used for
casting raw pointers, when you can already cast raw pointers just fine with
`as`.
This commit is contained in:
Tobias Bucher 2015-07-24 03:04:55 +02:00
parent febdc3b201
commit 22ec5f4af7
34 changed files with 187 additions and 103 deletions

View file

@ -193,7 +193,7 @@ impl<T> Arc<T> {
weak: atomic::AtomicUsize::new(1),
data: data,
};
Arc { _ptr: unsafe { NonZero::new(mem::transmute(x)) } }
Arc { _ptr: unsafe { NonZero::new(Box::into_raw(x)) } }
}
}