# Out of range error when building python 3.14.7 with gcc 16.2.0

**URL:** <https://discuss.python.org/t/out-of-range-error-when-building-python-3-14-7-with-gcc-16-2-0/108539>\
**Category:** Python Help\
**Created:** [August 13, 2026, 12:25pm UTC](https://discuss.python.org/t/out-of-range-error-when-building-python-3-14-7-with-gcc-16-2-0/108539 "2026-08-13T12:25:20Z")\
**Posts on this page:** 1\
**Showing post:** 13

<div class="post-metadata">

**Author:** ![mdickinson](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/mdickinson/32/976_2.png) [@mdickinson](https://discuss.python.org/u/mdickinson)\
**Post date:** [August 15, 2026, 8:22am UTC](https://discuss.python.org/t/out-of-range-error-when-building-python-3-14-7-with-gcc-16-2-0/108539/13 "2026-08-15T08:22:08Z")

</div>

Pinging @storchaka @tim.one @skirpichev: is it worth opening a GitHub issue for the idea of removing CPython’s dependence on `errno` here? It would be nice to free the code from reliance on “global” (really thread-local) state for what _should_ be a pure function, for all sorts of reasons - easier to reason about, opportunities for optimization, etc.

`float_pow` in particular seems unnecessarily evil in that it’s not just reading that global state, but also _writing_ to it ([code ref](https://github.com/python/cpython/blob/823f0323ee6ec1402088b73bce1a38473cac36dc/Include/internal/pycore_pymath.h#L37)) to force overflow exceptions, so even on boxes whose libm doesn’t touch `errno` (e.g., macOS), correct operation still relies on writes and reads of `errno`.

Getting rid of the `errno` dependence wasn’t really an option before we assumed IEEE 754 for CPython, but I believe it’s now reasonable.

I don’t have resources to work on this myself, so I don’t want to spam the issue tracker unless there’s interest from others. But if there _is_ interest, I’ll happily open that issue.

---

_[View the full topic](https://discuss.python.org/t/out-of-range-error-when-building-python-3-14-7-with-gcc-16-2-0/108539)._
