This is a more broad question, with my specific example. The code that gets to this point is rather convoluted so I hope this is enough.
Under what circumstances in C# are two of the same ints not equal?
1005 == 1005 //false
specConversion started off as a passed string spec, where the type of y (a property on a class) was determined, and then spec was converted to that type as specConversion. This appears to be working as intended, as both vars have the same type at this point. I'm not certain any of that is even relevant to the initial question: why are these two int values not equal?

