<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/8ad869a0ee7843e63bc8926ea63b430dd08f2375">https://github.com/macports/macports-ports/commit/8ad869a0ee7843e63bc8926ea63b430dd08f2375</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 8ad869a0ee7843e63bc8926ea63b430dd08f2375
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Sat Dec 3 22:52:26 2022 +0100

<span style='display:block; white-space:pre;color:#404040;'>    freecad: fix build
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/66227
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/60039
</span>---
 cad/freecad/Portfile                   |  32 +++---
 cad/freecad/files/patch-python38.patch |  22 +++++
 cad/freecad/files/patch-python39.patch | 174 +++++++++++++++++++++++++++++++++
 3 files changed, 215 insertions(+), 13 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/cad/freecad/Portfile b/cad/freecad/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 41e45df57dc..a4de7fb8c3e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/cad/freecad/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cad/freecad/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,9 +6,10 @@ PortGroup               compilers 1.0
</span> PortGroup               github 1.0
 PortGroup               qt4 1.0
 PortGroup               boost 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup               active_variants 1.1
</span> 
 github.setup            FreeCAD FreeCAD 0.18.5
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                2
</span> name                    freecad
 categories              cad
 platforms               darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,6 +34,10 @@ checksums               rmd160  de9aac31ea36d8353715c72fa2be3512af71f265 \
</span>                         size    219760077
 
 boost.version           1.71
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set python_branch       3.10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python_version      [string map {. ""} ${python_branch}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append      port:python${python_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+require_active_variants [boost::depends_portname] python${python_version}
</span> 
 depends_build-append    path:bin/doxygen:doxygen \
                         path:bin/dot:graphviz
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -40,13 +45,12 @@ depends_build-append    path:bin/doxygen:doxygen \
</span> depends_lib-append      port:Coin-framework \
                         port:eigen3 \
                         port:freetype \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:opencascade \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-backports-functools_lru_cache \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-matplotlib \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-pivy \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-pyside \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-pyside-tools \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py27-shiboken \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:oce \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python_version}-matplotlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python_version}-pivy \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python_version}-pyside \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python_version}-pyside-tools \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${python_version}-shiboken \
</span>                         port:SoQt \
                         port:swig \
                         port:swig-python \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,7 +62,9 @@ use_xcode               yes
</span> depends_run             port:qt4-mac-sqlite3-plugin
 
 patchfiles              cMake-FindCoin3D.cmake.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-src-Main-MainPy.cpp.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-src-Main-MainPy.cpp.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-python38.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        patch-python39.patch
</span> 
 # disable FreeCAD FEM module, as it requires hdf5 1.8.x
 patchfiles-append       patch-CMakeLists.txt.diff
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -97,8 +103,8 @@ configure.args-append   -DCMAKE_INSTALL_DATADIR=${prefix}/share/${name} \
</span>                         -DCMAKE_INSTALL_DOCDIR=${prefix}/share/doc/${name} \
                         -DCMAKE_FRAMEWORK_PATH=${frameworks_dir} \
                         -DMACPORTS_PREFIX=${prefix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        -DPYSIDEUIC4BINARY=${prefix}/bin/pyside-uic-2.7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        -DPYSIDERCC4BINARY=${prefix}/bin/pyside-rcc-2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -DPYSIDEUIC4BINARY=${prefix}/bin/pyside-uic-${python_branch} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        -DPYSIDERCC4BINARY=${prefix}/bin/pyside-rcc-${python_branch}
</span> 
 pre-configure {
     # The c++ compiler is used for linking instead of fc.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -107,11 +113,11 @@ pre-configure {
</span>     set libgfortran [exec ${configure.fc} --print-file-name libgfortran.a]
     configure.ldflags-append "-L[file dirname ${libgfortran}]"
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set python_prefix [exec ${prefix}/bin/python2.7-config --prefix]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_prefix [exec ${prefix}/bin/python${python_branch}-config --prefix]
</span>     configure.args-append -DBUILD_ROBOT=NO \
         -DPYTHON_LIBRARY=${python_prefix}/Python \
         -DPYTHON_INCLUDE_DIR=${python_prefix}/Headers \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        -DPYTHON_EXECUTABLE=${python_prefix}/bin/python2.7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -DPYTHON_EXECUTABLE=${python_prefix}/bin/python${python_branch} \
</span>         -DShiboken_DIR=${python_prefix}/lib/cmake/Shiboken-1.2.4 \
         -DPySide_DIR=${python_prefix}/lib/cmake/PySide-1.2.4 \
         -DOCE_DIR=${frameworks_dir}/OCE.framework/Versions/0.17/Resources
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/cad/freecad/files/patch-python38.patch b/cad/freecad/files/patch-python38.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..92566df9df3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cad/freecad/files/patch-python38.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 174011749d836f3b6c6ae2630f53b2f4c1f9d3fc Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Richard <hobbes1069@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 17 Oct 2019 11:20:10 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Update swigpyrun.in for Python 3.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+In Python 3.8 some functions related to thread state were intentionally made private.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This fix (specific to FreeCAD) was suggested here:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://bugs.python.org/issue35886
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun.inl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun.inl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -72,7 +72,7 @@ void cleanupSWIG_T(const char* TypeName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     PyObject *module, *dict;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     PyInterpreterState *interp = PyThreadState_GET()->interp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    PyObject *modules = interp->modules;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    PyObject *modules = PyImport_GetModuleDict();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     module = PyDict_GetItemString(modules, "__builtin__");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (module != NULL && PyModule_Check(module)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         dict = PyModule_GetDict(module);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/cad/freecad/files/patch-python39.patch b/cad/freecad/files/patch-python39.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..d03bb03adb2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/cad/freecad/files/patch-python39.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,174 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix for Python 3.9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/FreeCAD/FreeCAD/commit/ae641dc5278efafa22b168fc196875558b92e436
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/Base/swigpyrun_1.3.25.h src/Base/swigpyrun_1.3.25.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 91717210b..9ebadbc83 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun_1.3.25.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun_1.3.25.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -699,7 +699,11 @@ PySwigObject_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     0,                                    /*tp_itemsize*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* methods */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (destructor)PySwigObject_dealloc,     /*tp_dealloc*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (printfunc)PySwigObject_print,        /*tp_print*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0,          /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (getattrfunc)0,                       /*tp_getattr*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (setattrfunc)0,                       /*tp_setattr*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (cmpfunc)PySwigObject_compare,        /*tp_compare*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -859,7 +863,11 @@ PySwigPacked_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     0,                                    /*tp_itemsize*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* methods */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (destructor)PySwigPacked_dealloc,     /*tp_dealloc*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (printfunc)PySwigPacked_print,        /*tp_print*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0,          /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (getattrfunc)0,                       /*tp_getattr*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (setattrfunc)0,                       /*tp_setattr*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     (cmpfunc)PySwigPacked_compare,        /*tp_compare*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/Base/swigpyrun_1.3.33.h src/Base/swigpyrun_1.3.33.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f83ac1e89..afd5a8c50 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun_1.3.33.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun_1.3.33.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1620,7 +1620,11 @@ _PySwigObject_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(PySwigObject),               /* tp_basicsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)PySwigObject_dealloc,   /* tp_dealloc */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)PySwigObject_print,      /* tp_print */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_VERSION_HEX < 0x02020000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)PySwigObject_getattr,  /* tp_getattr */ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1790,7 +1794,11 @@ _PySwigPacked_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(PySwigPacked),               /* tp_basicsize */  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)PySwigPacked_dealloc,   /* tp_dealloc */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)PySwigPacked_print,      /* tp_print */      
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)0,                     /* tp_getattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (setattrfunc)0,                     /* tp_setattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (cmpfunc)PySwigPacked_compare,      /* tp_compare */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/Base/swigpyrun_1.3.36.h src/Base/swigpyrun_1.3.36.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 02c58ad8a..12ad41e12 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun_1.3.36.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun_1.3.36.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1628,7 +1628,12 @@ _PySwigObject_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(PySwigObject),               /* tp_basicsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)PySwigObject_dealloc,   /* tp_dealloc */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)PySwigObject_print,      /* tp_print */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_VERSION_HEX < 0x02020000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)PySwigObject_getattr,  /* tp_getattr */ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1798,7 +1803,11 @@ _PySwigPacked_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(PySwigPacked),               /* tp_basicsize */  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)PySwigPacked_dealloc,   /* tp_dealloc */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)PySwigPacked_print,      /* tp_print */      
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)0,                     /* tp_getattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (setattrfunc)0,                     /* tp_setattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (cmpfunc)PySwigPacked_compare,      /* tp_compare */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/Base/swigpyrun_1.3.38.h src/Base/swigpyrun_1.3.38.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index dae058c20..7cacc1579 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun_1.3.38.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun_1.3.38.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1741,7 +1741,11 @@ _PySwigObject_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(SwigPyObject),               /* tp_basicsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)SwigPyObject_dealloc,   /* tp_dealloc */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)SwigPyObject_print,      /* tp_print */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_VERSION_HEX < 0x02020000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)SwigPyObject_getattr,  /* tp_getattr */ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1919,7 +1923,11 @@ _PySwigPacked_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(SwigPyPacked),               /* tp_basicsize */  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)SwigPyPacked_dealloc,   /* tp_dealloc */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)SwigPyPacked_print,      /* tp_print */      
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)0,                     /* tp_getattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (setattrfunc)0,                     /* tp_setattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (cmpfunc)SwigPyPacked_compare,      /* tp_compare */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/Base/swigpyrun_1.3.40.h src/Base/swigpyrun_1.3.40.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 136ba809f..400db8b47 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Base/swigpyrun_1.3.40.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Base/swigpyrun_1.3.40.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1766,7 +1766,11 @@ _PySwigObject_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(SwigPyObject),               /* tp_basicsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (destructor)SwigPyObject_dealloc,   /* tp_dealloc */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (printfunc)SwigPyObject_print,      /* tp_print */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_VERSION_HEX < 0x02020000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)SwigPyObject_getattr,  /* tp_getattr */ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1947,8 +1951,12 @@ _PySwigPacked_type(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (char *)"SwigPyPacked",                   /* tp_name */       
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sizeof(SwigPyPacked),               /* tp_basicsize */  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   0,                                  /* tp_itemsize */   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  (destructor)SwigPyPacked_dealloc,   /* tp_dealloc */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  (printfunc)SwigPyPacked_print,      /* tp_print */      
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (destructor)SwigPyPacked_dealloc,   /* tp_dealloc */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (printfunc)SwigPyPacked_print,      /* tp_print */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0, /*tp_vectorcall_offset*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (getattrfunc)0,                     /* tp_getattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (setattrfunc)0,                     /* tp_setattr */    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if PY_VERSION_HEX>=0x03000000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/CXX/Python3/cxx_extensions.cxx src/CXX/Python3/cxx_extensions.cxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fb3da455f..9ff94612f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/CXX/Python3/cxx_extensions.cxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/CXX/Python3/cxx_extensions.cxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -381,7 +381,11 @@ PythonType::PythonType( size_t basic_size, int itemsize, const char *default_nam
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // Methods to implement standard operations
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_dealloc = (destructor)standard_dealloc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_print = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    table->tp_vectorcall_offset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_getattr = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_setattr = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_repr = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -524,7 +528,9 @@ PythonType &PythonType::supportClass()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef PYCXX_PYTHON_2TO3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PythonType &PythonType::supportPrint()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if PY_VERSION_HEX < 0x03080000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     table->tp_print = print_handler;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return *this;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span></pre><pre style='margin:0'>

</pre>