mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
patch 9.0.1917: undefined behaviour with python function pointer
Problem: undefined behaviour with python function pointer Solution: correctly cast function pointers from void Fix more undefined behaviors in if_python Fix remaining UBSAN errors from Clang 17 in if_python in casting function pointers. Also fix a mistake where `PyMem_Free()` should be returning void, by the dynamic build is mistakenly casting it as a function that returns an int. closes: #13128 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
This commit is contained in:
committed by
Christian Brabandt
parent
aa64ba1587
commit
d606fccf6f
@@ -442,7 +442,7 @@ static void(*py3_PyEval_RestoreThread)(PyThreadState *);
|
||||
static PyThreadState*(*py3_PyEval_SaveThread)(void);
|
||||
static int (*py3_PyArg_Parse)(PyObject *, char *, ...);
|
||||
static int (*py3_PyArg_ParseTuple)(PyObject *, char *, ...);
|
||||
static int (*py3_PyMem_Free)(void *);
|
||||
static void (*py3_PyMem_Free)(void *);
|
||||
static void* (*py3_PyMem_Malloc)(size_t);
|
||||
static int (*py3_Py_IsInitialized)(void);
|
||||
static void (*py3_PyErr_Clear)(void);
|
||||
|
Reference in New Issue
Block a user