Mercurial > cpython-lru_cache-weakref
view Python/strerror.c @ 44931:742a264cce4f 2.5
#1920: when considering a block starting by "while 0", the compiler optimized the
whole construct away, even when an 'else' clause is present::
while 0:
print("no")
else:
print("yes")
did not generate any code at all.
Now the compiler emits the 'else' block, like it already does for 'if' statements.
Backport of r60265.
| author | Amaury Forgeot d'Arc <amauryfa@gmail.com> |
|---|---|
| date | Thu, 24 Jan 2008 23:42:08 +0000 |
| parents | 86fdf8fe7f17 |
| children |
line wrap: on
line source
/* PD implementation of strerror() for systems that don't have it. Author: Guido van Rossum, CWI Amsterdam, Oct. 1990, <guido@cwi.nl>. */ #include <stdio.h> #include "Python.h" extern int sys_nerr; extern char *sys_errlist[]; char * strerror(int err) { static char buf[20]; if (err >= 0 && err < sys_nerr) return sys_errlist[err]; PyOS_snprintf(buf, sizeof(buf), "Unknown errno %d", err); return buf; }
