Джон Скит сообщает сегодня ( источник ), что:
Math.Max(1f, float.NaN) == NaN new[] { 1f, float.NaN }.Max() == 1f
Почему?
Изменить: такая же проблема и с двойным!