Is there any reason why comparing struct types with null does not result in compile error? - C#