What are our choices:
CE port will always be a distinct branch/other cvs, and require gobs of work by "CE porters" for every new core release, changing all the "errno" statements
CE changes will always be a pain in the butt for core developers forced to remember Py_SetErrno()
No CE port.
(oh, also put "NetWare" in there wherever you see the word CE .. and I suspect some other embedded operating systems running on MMU-less processors that can't virtualize errno and don't have TLS)
Surprisingly, there aren't that many modules that reference errno directly.
In fact, the math stuff is the worst offender .. ;-)
I'm strongly against 2. 5 years from now, CE and NetWare and their limitations will only be a vague memory, but this convention will still cripple the Python source code.
--Guido van Rossum (home page: http://www.python.org/%7Eguido/)