changeset 32800:324a39b11de9

patch 9.0.1716: Windows build with python 3.12 and clang fails Commit: https://github.com/vim/vim/commit/15a0a0281a060fd5968ca2f3c80e750137106adb Author: Zdenek Dohnal <zdohnal@redhat.com> 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 <cb@256bit.org> Co-authored-by: Zdenek Dohnal <zdohnal@redhat.com>
author Christian Brabandt <cb@256bit.org>
date Tue, 15 Aug 2023 23:00:06 +0200
parents 32102d7e207f
children 6e1734ac14eb
files src/if_python3.c src/version.c
diffstat 2 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- 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},
--- 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,