Рассмотрим следующий фрагмент:
int i = 5 / 0;
Это дает ошибку компилятора CS0020: деление на постоянный ноль, что нормально. Тем не менее, следующий фрагмент:
int i = 10;
i = i / 0;
Компилирует просто отлично.
Кто-то знает почему? Я не вижу причин, почему компилятор позволяет целочисленной переменной делиться на нулевую целочисленную константу.