# HG changeset patch # User Christian Brabandt # Date 1530735306 -7200 # Node ID 281c1e6e17eabf274f0631e8804961c9ec70d997 # Parent 72c39d84dc3ef00eaef8be470a31c4948cc9b133 patch 8.1.0147: compiler warning when building with Python 3.7 commit https://github.com/vim/vim/commit/3b48b11c07b85520f4ca3566e92c3f6486509b72 Author: Bram Moolenaar Date: Wed Jul 4 22:03:25 2018 +0200 patch 8.1.0147: compiler warning when building with Python 3.7 Problem: Compiler warning when building with Python 3.7. Solution: #undef PySlice_GetIndicesEx before redefining it. (Ozaki Kiichi, closes #3153) diff --git a/src/if_python3.c b/src/if_python3.c --- a/src/if_python3.c +++ b/src/if_python3.c @@ -167,6 +167,11 @@ typedef PySliceObject PySliceObject_T; # define PySequence_Fast py3_PySequence_Fast # define PyTuple_Size py3_PyTuple_Size # define PyTuple_GetItem py3_PyTuple_GetItem +# if PY_VERSION_HEX >= 0x030601f0 +# define PySlice_AdjustIndices py3_PySlice_AdjustIndices +# define PySlice_Unpack py3_PySlice_Unpack +# endif +# undef PySlice_GetIndicesEx # define PySlice_GetIndicesEx py3_PySlice_GetIndicesEx # define PyImport_ImportModule py3_PyImport_ImportModule # define PyObject_Init py3__PyObject_Init @@ -305,6 +310,12 @@ static Py_ssize_t (*py3_PyTuple_Size)(Py static PyObject* (*py3_PyTuple_GetItem)(PyObject *, Py_ssize_t); static int (*py3_PyMapping_Check)(PyObject *); static PyObject* (*py3_PyMapping_Keys)(PyObject *); +# if PY_VERSION_HEX >= 0x030601f0 +static int (*py3_PySlice_AdjustIndices)(Py_ssize_t length, + Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t step); +static int (*py3_PySlice_Unpack)(PyObject *slice, + Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step); +# endif static int (*py3_PySlice_GetIndicesEx)(PySliceObject_T *r, Py_ssize_t length, Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step, Py_ssize_t *slicelen); @@ -474,6 +485,10 @@ static struct {"PySequence_Fast", (PYTHON_PROC*)&py3_PySequence_Fast}, {"PyTuple_Size", (PYTHON_PROC*)&py3_PyTuple_Size}, {"PyTuple_GetItem", (PYTHON_PROC*)&py3_PyTuple_GetItem}, +# if PY_VERSION_HEX >= 0x030601f0 + {"PySlice_AdjustIndices", (PYTHON_PROC*)&py3_PySlice_AdjustIndices}, + {"PySlice_Unpack", (PYTHON_PROC*)&py3_PySlice_Unpack}, +# endif {"PySlice_GetIndicesEx", (PYTHON_PROC*)&py3_PySlice_GetIndicesEx}, {"PyErr_NoMemory", (PYTHON_PROC*)&py3_PyErr_NoMemory}, {"Py_Finalize", (PYTHON_PROC*)&py3_Py_Finalize}, diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -790,6 +790,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 147, +/**/ 146, /**/ 145,