From a439191efa9fee12ea3c17b23b0d3f748ff76997 Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Tue, 6 Sep 2016 19:09:15 -0700 Subject: [PATCH] Fix some warnings from MSVC --- Modules/_ctypes/_ctypes.c | 2 +- Modules/_decimal/libmpdec/vccompat.h | 4 ---- Modules/audioop.c | 3 ++- Programs/_freeze_importlib.c | 2 +- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c index 98433e12f50..f8407298fed 100644 --- a/Modules/_ctypes/_ctypes.c +++ b/Modules/_ctypes/_ctypes.c @@ -3067,7 +3067,7 @@ static PyGetSetDef PyCFuncPtr_getsets[] = { }; #ifdef MS_WIN32 -static PPROC FindAddress(void *handle, char *name, PyObject *type) +static PPROC FindAddress(void *handle, const char *name, PyObject *type) { #ifdef MS_WIN64 /* win64 has no stdcall calling conv, so it should diff --git a/Modules/_decimal/libmpdec/vccompat.h b/Modules/_decimal/libmpdec/vccompat.h index 564eaa8140d..dd131d8da26 100644 --- a/Modules/_decimal/libmpdec/vccompat.h +++ b/Modules/_decimal/libmpdec/vccompat.h @@ -48,10 +48,6 @@ #undef strtoll #define strtoll _strtoi64 #define strdup _strdup - #define PRIi64 "I64i" - #define PRIu64 "I64u" - #define PRIi32 "I32i" - #define PRIu32 "I32u" #endif diff --git a/Modules/audioop.c b/Modules/audioop.c index c11506c4c10..d715783d52a 100644 --- a/Modules/audioop.c +++ b/Modules/audioop.c @@ -4,6 +4,7 @@ #define PY_SSIZE_T_CLEAN #include "Python.h" +#include typedef short PyInt16; @@ -448,7 +449,7 @@ audioop_max_impl(PyObject *module, Py_buffer *fragment, int width) int val = GETRAWSAMPLE(width, fragment->buf, i); /* Cast to unsigned before negating. Unsigned overflow is well- defined, but signed overflow is not. */ - if (val < 0) absval = -(unsigned int)val; + if (val < 0) absval = (unsigned int)-(int64_t)val; else absval = val; if (absval > max) max = absval; } diff --git a/Programs/_freeze_importlib.c b/Programs/_freeze_importlib.c index 07939848004..1069966a187 100644 --- a/Programs/_freeze_importlib.c +++ b/Programs/_freeze_importlib.c @@ -58,7 +58,7 @@ main(int argc, char *argv[]) fprintf(stderr, "cannot fstat '%s'\n", inpath); goto error; } - text_size = status.st_size; + text_size = (size_t)status.st_size; text = (char *) malloc(text_size + 1); if (text == NULL) { fprintf(stderr, "could not allocate %ld bytes\n", (long) text_size);