Приложение C99 F (поддержка плавающих точек IEEE) говорит следующее:
pow(−∞, y)
возвращает + ∞ при y > 0, а не нечетное целое число.
Но, скажем, (-∞) 0,5 фактически имеет мнимые значения ± ∞i, а не + ∞. C99s собственный sqrt(−∞)
возвращает NaN и генерирует ошибку домена, как ожидалось. Почему тогда pow
требуется вернуть + ∞?
(Большинство других языков используют библиотеку C напрямую или, подобно Python в этом случае, копируют поведение, требуемое от него стандартами, поэтому на практике это влияет не только на C99.)