#![feature(intrinsics)] #[lang = "sized"] pub trait Sized {} mod mem { extern "rust-intrinsic" { pub fn size_of() -> usize; } } mod ptr { pub unsafe fn swap_nonoverlapping(x: *mut T, y: *mut T, count: usize) { let x = x as *mut T; let y = y as *mut T; let len = crate::mem::size_of::() * count; } }