From 644a12b00ce6a361089b488aa8096a6c86b52275 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 9 Apr 1997 19:24:53 +0000 Subject: Tweaks to keep the Microsoft compiler quier. --- Modules/audioop.c | 14 +++++++------- Modules/imageop.c | 4 ++-- Modules/signalmodule.c | 9 ++++++++- Modules/socketmodule.c | 4 +++- Python/compile.c | 5 ++++- Python/importdl.c | 3 +++ Python/mystrtoul.c | 2 +- Python/structmember.c | 14 ++++++++------ 8 files changed, 36 insertions(+), 19 deletions(-) diff --git a/Modules/audioop.c b/Modules/audioop.c index 0e95c91..003f8af 100644 --- a/Modules/audioop.c +++ b/Modules/audioop.c @@ -255,7 +255,7 @@ audioop_avg(self, args) signed char *cp; int len, size, val = 0; int i; - float avg = 0.0; + double avg = 0.0; if ( !PyArg_Parse(args, "(s#i)", &cp, &len, &size) ) return 0; @@ -272,7 +272,7 @@ audioop_avg(self, args) if ( len == 0 ) val = 0; else - val = (int)(avg / (float)(len/size)); + val = (int)(avg / (double)(len/size)); return PyInt_FromLong(val); } @@ -284,7 +284,7 @@ audioop_rms(self, args) signed char *cp; int len, size, val = 0; int i; - float sum_squares = 0.0; + double sum_squares = 0.0; if ( !PyArg_Parse(args, "(s#i)", &cp, &len, &size) ) return 0; @@ -296,12 +296,12 @@ audioop_rms(self, args) if ( size == 1 ) val = (int)*CHARP(cp, i); else if ( size == 2 ) val = (int)*SHORTP(cp, i); else if ( size == 4 ) val = (int)*LONGP(cp, i); - sum_squares += (float)val*(float)val; + sum_squares += (double)val*(double)val; } if ( len == 0 ) val = 0; else - val = (int)sqrt(sum_squares / (float)(len/size)); + val = (int)sqrt(sum_squares / (double)(len/size)); return PyInt_FromLong(val); } @@ -498,7 +498,7 @@ audioop_avgpp(self, args) int len, size, val = 0, prevval = 0, prevextremevalid = 0, prevextreme = 0; int i; - float avg = 0.0; + double avg = 0.0; int diff, prevdiff, extremediff, nextreme = 0; if ( !PyArg_Parse(args, "(s#i)", &cp, &len, &size) ) @@ -544,7 +544,7 @@ audioop_avgpp(self, args) if ( nextreme == 0 ) val = 0; else - val = (int)(avg / (float)nextreme); + val = (int)(avg / (double)nextreme); return PyInt_FromLong(val); } diff --git a/Modules/imageop.c b/Modules/imageop.c index 0f8e0ed..007c83e 100644 --- a/Modules/imageop.c +++ b/Modules/imageop.c @@ -572,7 +572,7 @@ PyObject *args; b = (int) (((value >> 16) & 0xff) / 255. * 3. + .5); #endif nvalue = (r<<5) | (b<<3) | g; - *ncp++ = nvalue; + *ncp++ = (unsigned char)nvalue; } return rv; } @@ -653,7 +653,7 @@ PyObject *args; b = (value >> 16) & 0xff; nvalue = (int)(0.30*r + 0.59*g + 0.11*b); if ( nvalue > 255 ) nvalue = 255; - *ncp++ = nvalue; + *ncp++ = (unsigned char)nvalue; } return rv; } diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c index 7ca697a..e62be1f 100644 --- a/Modules/signalmodule.c +++ b/Modules/signalmodule.c @@ -31,9 +31,15 @@ PERFORMANCE OF THIS SOFTWARE. /* Signal module -- many thanks to Lance Ellinghaus */ +/* XXX Signals should be recorded per thread, now we have thread state. */ + #include "Python.h" #include "intrcheck.h" +#ifdef MS_WIN32 +#include +#endif + #ifdef HAVE_UNISTD_H #include #endif @@ -119,7 +125,8 @@ signal_handler(sig_num) #endif is_tripped++; Handlers[sig_num].tripped = 1; - Py_AddPendingCall((int (*) Py_PROTO((ANY *)))PyErr_CheckSignals, NULL); + Py_AddPendingCall( + (int (*) Py_PROTO((ANY *)))PyErr_CheckSignals, NULL); #ifdef WITH_THREAD } #endif diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 27eb313..7b73b63 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -417,7 +417,7 @@ getsockaddrarg,PySocketSockObject *,s, PyObject *,args, struct sockaddr **,addr_ if (setipaddr(host, addr) < 0) return 0; addr->sin_family = AF_INET; - addr->sin_port = htons(port); + addr->sin_port = htons((short)port); *addr_ret = (struct sockaddr *) addr; *len_ret = sizeof *addr; return 1; @@ -516,7 +516,9 @@ static PyObject * BUILD_FUNC_DEF_2(PySocketSock_setblocking,PySocketSockObject*,s,PyObject*,args) { int block; +#ifndef MS_WINDOWS int delay_flag; +#endif if (!PyArg_GetInt(args, &block)) return NULL; Py_BEGIN_ALLOW_THREADS diff --git a/Python/compile.c b/Python/compile.c index 7d9a3a8..21629ab 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -182,6 +182,9 @@ typeobject Codetype = { (hashfunc)code_hash, /*tp_hash*/ }; +#define NAME_CHARS \ + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz" + codeobject * newcodeobject(argcount, nlocals, stacksize, flags, code, consts, names, varnames, filename, name, @@ -237,7 +240,7 @@ newcodeobject(argcount, nlocals, stacksize, flags, if (!is_stringobject(v)) continue; p = getstringvalue(v); - if (strspn(p, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz") + if ((int)strspn(p, NAME_CHARS) != getstringsize(v)) continue; PyString_InternInPlace(&PyTuple_GET_ITEM(consts, i)); diff --git a/Python/importdl.c b/Python/importdl.c index 2abef33..02f87dc 100644 --- a/Python/importdl.c +++ b/Python/importdl.c @@ -503,13 +503,16 @@ load_dynamic_module(name, pathname, fp) perror(funcname); } #endif /* hpux */ +#ifdef USE_SHLIB got_it: +#endif if (p == NULL) { err_setstr(ImportError, "dynamic module does not define init function"); return NULL; } (*p)(); + /* XXX Need check for err_occurred() here */ m = dictlookup(import_modules, name); if (m == NULL) { diff --git a/Python/mystrtoul.c b/Python/mystrtoul.c index a869b46..ed0e526 100644 --- a/Python/mystrtoul.c +++ b/Python/mystrtoul.c @@ -141,7 +141,7 @@ int base; *ptr = str; if (ovf) { - result = ~0; + result = (unsigned long) ~0L; errno = ERANGE; } return result; diff --git a/Python/structmember.c b/Python/structmember.c index 7e24fa5..f5cca97 100644 --- a/Python/structmember.c +++ b/Python/structmember.c @@ -186,7 +186,7 @@ setmember(addr, mlist, name, v) err_badarg(); return -1; } - *(char*)addr = getintvalue(v); + *(char*)addr = (char) getintvalue(v); break; case T_SHORT: case T_USHORT: @@ -194,7 +194,7 @@ setmember(addr, mlist, name, v) err_badarg(); return -1; } - *(short*)addr = getintvalue(v); + *(short*)addr = (short) getintvalue(v); break; case T_UINT: case T_INT: @@ -202,7 +202,7 @@ setmember(addr, mlist, name, v) err_badarg(); return -1; } - *(int*)addr = getintvalue(v); + *(int*)addr = (int) getintvalue(v); break; case T_LONG: if (!is_intobject(v)) { @@ -223,9 +223,10 @@ setmember(addr, mlist, name, v) break; case T_FLOAT: if (is_intobject(v)) - *(float*)addr = getintvalue(v); + *(float*)addr = (float) getintvalue(v); else if (is_floatobject(v)) - *(float*)addr = getfloatvalue(v); + *(float*)addr = + (float) getfloatvalue(v); else { err_badarg(); return -1; @@ -233,7 +234,8 @@ setmember(addr, mlist, name, v) break; case T_DOUBLE: if (is_intobject(v)) - *(double*)addr = getintvalue(v); + *(double*)addr = + (double) getintvalue(v); else if (is_floatobject(v)) *(double*)addr = getfloatvalue(v); else { -- cgit v0.12