#![feature(strict_provenance)]
#![deny(lossy_provenance_casts)]

fn main() {
    let x: u8 = 37;
    let addr: usize = &x as *const u8 as usize;
    //~^ ERROR under strict provenance it is considered bad style to cast pointer `*const u8` to integer `usize`

    let addr_32bit = &x as *const u8 as u32;
    //~^ ERROR under strict provenance it is considered bad style to cast pointer `*const u8` to integer `u32`

    // don't add unnecessary parens in the suggestion
    let ptr = &x as *const u8;
    let ptr_addr = ptr as usize;
    //~^ ERROR under strict provenance it is considered bad style to cast pointer `*const u8` to integer `usize`
    let ptr_addr_32bit = ptr as u32;
    //~^ ERROR under strict provenance it is considered bad style to cast pointer `*const u8` to integer `u32`
}
