#![warn(clippy::cmp_null)] use std::ptr; fn main() { let x = 0; let p: *const usize = &x; if p.is_null() { //~^ cmp_null println!("This is surprising!"); } if p.is_null() { //~^ cmp_null println!("This is surprising!"); } let mut y = 0; let m: *mut usize = &mut y; if m.is_null() { //~^ cmp_null println!("This is surprising, too!"); } if m.is_null() { //~^ cmp_null println!("This is surprising, too!"); } let _ = (x as *const ()).is_null(); //~^ cmp_null } fn issue15010() { let f: *mut i32 = std::ptr::null_mut(); debug_assert!(!f.is_null()); //~^ cmp_null } fn issue16281() { use std::ptr; struct Container { value: *const i32, } let x = Container { value: ptr::null() }; macro_rules! dot_value { ($obj:expr) => { $obj.value }; } if dot_value!(x).is_null() { //~^ cmp_null todo!() } }