# HG changeset patch # User Christian Brabandt # Date 1692133206 -7200 # Node ID 324a39b11de94df4ec90dd0690c339d009d69616 # Parent 32102d7e207fd21f8ba5044ccc0df3ebd0486166 patch 9.0.1716: Windows build with python 3.12 and clang fails Commit: https://github.com/vim/vim/commit/15a0a0281a060fd5968ca2f3c80e750137106adb Author: Zdenek Dohnal Date: Tue Aug 15 22:52:01 2023 +0200 patch 9.0.1716: Windows build with python 3.12 and clang fails Problem: Windows build with python 3.12 and clang fails Solution: Remove the PyBool_Type function pointer for python 3.12 Clang on Win doesn't like non-static functions in static struct with Python 3.12 - removing the new obfuscated function and protecting the old PyBool function for older Pythons fixes the issue. closes: #12800 Signed-off-by: Christian Brabandt Co-authored-by: Zdenek Dohnal diff --git a/src/if_python3.c b/src/if_python3.c --- a/src/if_python3.c +++ b/src/if_python3.c @@ -628,9 +628,8 @@ static struct {"PyStdPrinter_Type", (PYTHON_PROC*)&py3_PyStdPrinter_Type}, {"PySlice_Type", (PYTHON_PROC*)&py3_PySlice_Type}, {"PyFloat_Type", (PYTHON_PROC*)&py3_PyFloat_Type}, +# if PY_VERSION_HEX < 0x030c00b0 {"PyBool_Type", (PYTHON_PROC*)&py3_PyBool_Type}, -# if PY_VERSION_HEX >= 0x030c00b0 - {"PyLong_Type", (PYTHON_PROC*)&py3_PyLong_Type}, # endif {"PyNumber_Check", (PYTHON_PROC*)&py3_PyNumber_Check}, {"PyNumber_Long", (PYTHON_PROC*)&py3_PyNumber_Long}, diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -696,6 +696,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1716, +/**/ 1715, /**/ 1714,