Porting Py3.8/Py3.9:
Since Py3.3: 'Py_ssize_t PyUnicode_GetSize(PyObject*)' is deprecated [-Wdeprecated-declarations] Since Py3.9: 'PyObject* PyEval_CallObjectWithKeywords(PyObject*, PyObject*, PyObject*)' is deprecated [-Wdeprecated-declarations] Since Py3.9: 'void PyEval_InitThreads()' is deprecated [-Wdeprecated-declarations]
This commit is contained in:
@@ -141,7 +141,11 @@ InteractiveInterpreter::InteractiveInterpreter()
|
||||
PyObject* func = PyObject_GetAttrString(module, "InteractiveInterpreter");
|
||||
PyObject* args = Py_BuildValue("()");
|
||||
d = new InteractiveInterpreterP;
|
||||
#if PY_VERSION_HEX < 0x03090000
|
||||
d->interpreter = PyEval_CallObject(func,args);
|
||||
#else
|
||||
d->interpreter = PyObject_CallObject(func,args);
|
||||
#endif
|
||||
Py_DECREF(args);
|
||||
Py_DECREF(func);
|
||||
Py_DECREF(module);
|
||||
@@ -195,7 +199,11 @@ PyObject* InteractiveInterpreter::compile(const char* source) const
|
||||
Base::PyGILStateLocker lock;
|
||||
PyObject* func = PyObject_GetAttrString(d->interpreter, "compile");
|
||||
PyObject* args = Py_BuildValue("(s)", source);
|
||||
#if PY_VERSION_HEX < 0x03090000
|
||||
PyObject* eval = PyEval_CallObject(func,args); // must decref later
|
||||
#else
|
||||
PyObject* eval = PyObject_CallObject(func,args); // must decref later
|
||||
#endif
|
||||
|
||||
Py_DECREF(args);
|
||||
Py_DECREF(func);
|
||||
@@ -227,7 +235,11 @@ int InteractiveInterpreter::compileCommand(const char* source) const
|
||||
Base::PyGILStateLocker lock;
|
||||
PyObject* func = PyObject_GetAttrString(d->interpreter, "compile");
|
||||
PyObject* args = Py_BuildValue("(s)", source);
|
||||
#if PY_VERSION_HEX < 0x03090000
|
||||
PyObject* eval = PyEval_CallObject(func,args); // must decref later
|
||||
#else
|
||||
PyObject* eval = PyObject_CallObject(func,args); // must decref later
|
||||
#endif
|
||||
|
||||
Py_DECREF(args);
|
||||
Py_DECREF(func);
|
||||
|
||||
Reference in New Issue
Block a user