How to reproduce:
- Open the attached "IN-154868" project
- In the menu bar, select "Tools" > "Bug Repros" > "Plane Equals and GetHashCode"
- Observe the Console
Actual result: The Console shows "a.Equals(b): True", two different hash codes, and "HashSet containing a, Contains(b): False"
Expected result: The Console shows "a.Equals(b): True", two identical hash codes, and "HashSet containing a, Contains(b): True"
Reproducible with: 6000.3.0b10, 6000.3.26f1, 6000.6.6f1, 6000.7.0b5, 7000.0.0a9
Not reproducible with: 6000.0.85f1, 6000.3.0b9
Reproducible on: Windows 10 (by user), Windows 11 Enterprise (25H2)
Not reproducible on: No other environments tested
Workaround: Use a custom IEqualityComparer<Plane> that hashes the normal and distance the same way it compares them
Note: In 6000.0.85f1 and 6000.3.0b9 the Console shows "a.Equals(b): False", so Equals and GetHashCode agree there