Why do we need the transmute here? Is it due to different versions of args between test and not test cfgs? Could we get around that by using cfg(stage0)? If that's not the reason and its permanent, then I am scared because I think it relies on Vec<T> and ~[T] having the same representation which will not be the case soon.