view Python/strerror.c @ 27201:dc6fb8a6af3d legacy-trunk

As discussed on python-dev, removed from DUP_TOPX support for the parameter being either four or five. Currently, compile.c does not generate calls with a parameter higher than three. May have to be reverted if the second alpha or beta shakes out some other tool generating this op code with a parameter of four or five.
author Raymond Hettinger <python@rcn.com>
date Fri, 10 Jan 2003 16:45:17 +0000
parents 379fc66f4c96
children 86fdf8fe7f17
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;
}

#ifdef macintosh
int sys_nerr = 0;
char *sys_errlist[1] = 0;
#endif