//@ run-pass
#![allow(dead_code)]
#![allow(deprecated)]

use std::mem;

fn addr_of<T>(ptr: &T) -> usize {
    ptr as *const T as usize
}

fn is_aligned<T>(ptr: &T) -> bool {
    unsafe {
        let addr: usize = mem::transmute(ptr);
        (addr % mem::align_of::<T>()) == 0
    }
}

pub fn main() {
    let x = Some(0u64);
    match x {
        None => panic!(),
        Some(ref y) => assert!(is_aligned(y))
    }
}
