extern crate testcrate; | |
use std::mem; | |
extern "C" { | |
fn give_back(tu: testcrate::TestUnion) -> u64; | |
} | |
fn main() { | |
let magic: u64 = 0xDEADBEEF; | |
// Let's test calling it cross crate | |
let back = unsafe { testcrate::give_back(mem::transmute(magic)) }; | |
assert_eq!(magic, back); | |
// And just within this crate | |
let back = unsafe { give_back(mem::transmute(magic)) }; | |
assert_eq!(magic, back); | |
} |