// run-pass #![feature(never_type)] #![allow(dead_code)] #![allow(path_statements)] #![allow(unreachable_patterns)] fn never_direct(x: !) { x; } fn never_ref_pat(ref x: !) { *x; } fn never_ref(x: &!) { let &y = x; y; } fn never_pointer(x: *const !) { unsafe { *x; } } fn never_slice(x: &[!]) { x[0]; } fn never_match(x: Result<(), !>) { match x { Ok(_) => {}, Err(_) => {}, } } pub fn main() { }