Mercurial > cpython-lru_cache-weakref
view Python/strerror.c @ 13694:b54f11ada91e legacy-trunk
Create a new section of pyport.h to hold all external function declarations
for systems that are missing those declarations from system include files.
Start by moving a pointy-haired ones from their previous locations to the
new section.
(The gethostname() one, for instance, breaks on several systems, because
some define it as (char *, size_t) and some as (char *, int).)
I purposely decided not to include the summary of used #defines like Tim did
in the first section of pyport.h. In my opinion, the number of #defines
likedly to be used by this section would make such an overview unwieldy. I
would suggest documenting the non-obvious ones, though.
| author | Thomas Wouters <thomas@python.org> |
|---|---|
| date | Mon, 24 Jul 2000 16:06:23 +0000 |
| parents | f79434ee41fa |
| children | 6f6f965c5e2d |
line wrap: on
line source
/*********************************************************** Copyright (c) 2000, BeOpen.com. Copyright (c) 1995-2000, Corporation for National Research Initiatives. Copyright (c) 1990-1995, Stichting Mathematisch Centrum. All rights reserved. See the file "Misc/COPYRIGHT" for information on usage and redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. ******************************************************************/ /* 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> 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]; sprintf(buf, "Unknown errno %d", err); return buf; } #ifdef macintosh int sys_nerr = 0; char *sys_errlist[1] = 0; #endif
