This came up while trying to improve num::PrimInt.
The problem is: How to use mem::transmute in a function implementation within a generic trait?
Right now this is hard (or impossible) since there is no easy way to constrain the trait types to be SameSize or Transmutable.
I think this could be solved by lifting part of the magic behind mem::transmute into a SameSize or Transmutable trait, and then constraining mem::transmute on it. This would allow user defined generic functions/methods/traits to constrain on it as well and easily be able to call mem::transmute from them.