New warning #35:
"Comparison of Object to other types will fail if exact types do not match.
Better to put the object on the right side of the comparison."
Dim m As Map = CreateMap("x": 1)
If m.Get("x") = 1 Then '<--- warning here (although the code will work as expected in this case).
End If
The reason behind this warning is that the types must match exactly for the comparison to return the expected result.
It is better to write it like this:
If 1 = m.Get("x") Then 'no warning here
Now the compiler will know that it is a numeric comparison and it will be safer.
Example where it will actually fail unless we switch sides:
Dim d As Double = 1
Dim m As Map = CreateMap("x": d)
Log(d = 1) 'true
Log(m.Get("x") = 1) 'false <---- unexpected
Log(1 = m.Get("x")) 'true