|
| 1 | + 1| |// FIXME(#84561): function-like macros produce unintuitive coverage results. |
| 2 | + 2| |// This test demonstrates some of the problems. |
| 3 | + 3| | |
| 4 | + 4| 9|#[derive(Debug, PartialEq, Eq)] |
| 5 | + ^5 |
| 6 | + ------------------ |
| 7 | + | <issue_84561::Foo as core::cmp::PartialEq>::eq: |
| 8 | + | 4| 9|#[derive(Debug, PartialEq, Eq)] |
| 9 | + ------------------ |
| 10 | + | Unexecuted instantiation: <issue_84561::Foo as core::cmp::PartialEq>::ne |
| 11 | + ------------------ |
| 12 | + 5| |struct Foo(u32); |
| 13 | + 6| | |
| 14 | + 7| 1|fn main() { |
| 15 | + 8| 1| let bar = Foo(1); |
| 16 | + 9| 0| assert_eq!(bar, Foo(1)); |
| 17 | + 10| 1| let baz = Foo(0); |
| 18 | + 11| 0| assert_ne!(baz, Foo(1)); |
| 19 | + 12| 1| println!("{:?}", Foo(1)); |
| 20 | + 13| 1| println!("{:?}", bar); |
| 21 | + 14| 1| println!("{:?}", baz); |
| 22 | + 15| | |
| 23 | + 16| 1| assert_eq!(Foo(1), Foo(1)); |
| 24 | + 17| 1| assert_ne!(Foo(0), Foo(1)); |
| 25 | + 18| 0| assert_eq!(Foo(2), Foo(2)); |
| 26 | + 19| 1| let bar = Foo(1); |
| 27 | + 20| 1| assert_ne!(Foo(0), Foo(3)); |
| 28 | + 21| 1| assert_ne!(Foo(0), Foo(4)); |
| 29 | + 22| 1| assert_eq!(Foo(3), Foo(3)); |
| 30 | + 23| 0| assert_ne!(Foo(0), Foo(5)); |
| 31 | + 24| 1| println!("{:?}", bar); |
| 32 | + 25| 1| println!("{:?}", Foo(1)); |
| 33 | + 26| 1|} |
| 34 | + |
0 commit comments