| //@ check-pass |
| |
| #[derive(PartialEq, Eq)] |
| struct A { |
| f: fn(), |
| //~^ WARN function pointer comparisons |
| } |
| |
| #[allow(unpredictable_function_pointer_comparisons)] |
| #[derive(PartialEq, Eq)] |
| struct AllowedAbove { |
| f: fn(), |
| } |
| |
| #[derive(PartialEq, Eq)] |
| #[allow(unpredictable_function_pointer_comparisons)] |
| struct AllowedBelow { |
| f: fn(), |
| } |
| |
| fn main() { |
| let f: fn() = main; |
| let g: fn() = main; |
| |
| let _ = f > g; |
| //~^ WARN function pointer comparisons |
| let _ = f >= g; |
| //~^ WARN function pointer comparisons |
| let _ = f <= g; |
| //~^ WARN function pointer comparisons |
| let _ = f < g; |
| //~^ WARN function pointer comparisons |
| let _ = assert_eq!(g, g); |
| //~^ WARN function pointer comparisons |
| let _ = assert_ne!(g, g); |
| //~^ WARN function pointer comparisons |
| } |