summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYury Selivanov <yury@magic.io>2018-09-27 18:55:55 (GMT)
committerGitHub <noreply@github.com>2018-09-27 18:55:55 (GMT)
commit994269ccee5574f03cda6b018399347fc52bf330 (patch)
treecfbe48e07cd233b9f7899a81cb64dba35a8cb0d2
parent3f22811fef73aec848d961593d95fa877f77ecbf (diff)
downloadcpython-994269ccee5574f03cda6b018399347fc52bf330.zip
cpython-994269ccee5574f03cda6b018399347fc52bf330.tar.gz
cpython-994269ccee5574f03cda6b018399347fc52bf330.tar.bz2
bpo-34762: Update PyContext* to PyObject* in asyncio and decimal (GH-9609)
This fixes various compiler warnings.
-rw-r--r--Modules/_asynciomodule.c17
-rw-r--r--Modules/_decimal/_decimal.c6
2 files changed, 11 insertions, 12 deletions
diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c
index fc91ebd..6bf0fd6 100644
--- a/Modules/_asynciomodule.c
+++ b/Modules/_asynciomodule.c
@@ -61,7 +61,7 @@ typedef enum {
PyObject_HEAD \
PyObject *prefix##_loop; \
PyObject *prefix##_callback0; \
- PyContext *prefix##_context0; \
+ PyObject *prefix##_context0; \
PyObject *prefix##_callbacks; \
PyObject *prefix##_exception; \
PyObject *prefix##_result; \
@@ -81,7 +81,7 @@ typedef struct {
PyObject *task_fut_waiter;
PyObject *task_coro;
PyObject *task_name;
- PyContext *task_context;
+ PyObject *task_context;
int task_must_cancel;
int task_log_destroy_pending;
} TaskObj;
@@ -340,7 +340,7 @@ get_event_loop(void)
static int
-call_soon(PyObject *loop, PyObject *func, PyObject *arg, PyContext *ctx)
+call_soon(PyObject *loop, PyObject *func, PyObject *arg, PyObject *ctx)
{
PyObject *handle;
PyObject *stack[3];
@@ -451,7 +451,7 @@ future_schedule_callbacks(FutureObj *fut)
PyObject *cb = PyTuple_GET_ITEM(cb_tup, 0);
PyObject *ctx = PyTuple_GET_ITEM(cb_tup, 1);
- if (call_soon(fut->fut_loop, cb, (PyObject *)fut, (PyContext *)ctx)) {
+ if (call_soon(fut->fut_loop, cb, (PyObject *)fut, ctx)) {
/* If an error occurs in pure-Python implementation,
all callbacks are cleared. */
Py_CLEAR(fut->fut_callbacks);
@@ -619,7 +619,7 @@ future_get_result(FutureObj *fut, PyObject **result)
}
static PyObject *
-future_add_done_callback(FutureObj *fut, PyObject *arg, PyContext *ctx)
+future_add_done_callback(FutureObj *fut, PyObject *arg, PyObject *ctx)
{
if (!future_is_alive(fut)) {
PyErr_SetString(PyExc_RuntimeError, "uninitialized Future object");
@@ -906,16 +906,15 @@ _asyncio_Future_add_done_callback_impl(FutureObj *self, PyObject *fn,
/*[clinic end generated code: output=7ce635bbc9554c1e input=15ab0693a96e9533]*/
{
if (context == NULL) {
- context = (PyObject *)PyContext_CopyCurrent();
+ context = PyContext_CopyCurrent();
if (context == NULL) {
return NULL;
}
- PyObject *res = future_add_done_callback(
- self, fn, (PyContext *)context);
+ PyObject *res = future_add_done_callback(self, fn, context);
Py_DECREF(context);
return res;
}
- return future_add_done_callback(self, fn, (PyContext *)context);
+ return future_add_done_callback(self, fn, context);
}
/*[clinic input]
diff --git a/Modules/_decimal/_decimal.c b/Modules/_decimal/_decimal.c
index 5bce780..1e58d3d 100644
--- a/Modules/_decimal/_decimal.c
+++ b/Modules/_decimal/_decimal.c
@@ -122,7 +122,7 @@ incr_false(void)
}
-static PyContextVar *current_context_var;
+static PyObject *current_context_var;
/* Template for creating new thread contexts, calling Context() without
* arguments and initializing the module_context on first access. */
@@ -1500,7 +1500,7 @@ init_current_context(void)
}
CTX(tl_context)->status = 0;
- PyContextToken *tok = PyContextVar_Set(current_context_var, tl_context);
+ PyObject *tok = PyContextVar_Set(current_context_var, tl_context);
if (tok == NULL) {
Py_DECREF(tl_context);
return NULL;
@@ -1561,7 +1561,7 @@ PyDec_SetCurrentContext(PyObject *self UNUSED, PyObject *v)
Py_INCREF(v);
}
- PyContextToken *tok = PyContextVar_Set(current_context_var, v);
+ PyObject *tok = PyContextVar_Set(current_context_var, v);
Py_DECREF(v);
if (tok == NULL) {
return NULL;