Учитывая этот код:
int x = 20000;
int y = 20000;
int z = 40000;
// Why is it printing WTF? Isn't 40,000 > 32,767?
if ((x + y) == z) Console.WriteLine("WTF?");
И зная, что int может содержать от -32,768 до +32,767. Почему это не вызывает переполнение?