]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-33012: Fix more invalid function cast warnings with gcc 8. (GH-10751)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Thu, 29 Nov 2018 14:27:49 +0000 (06:27 -0800)
committerGitHub <noreply@github.com>
Thu, 29 Nov 2018 14:27:49 +0000 (06:27 -0800)
Fix warnings with gcc 8 for wrapperfunc <-> wrapperfunc_kwds casts.
(cherry picked from commit 1c607155c9e363489036ae6258b165a3fae75134)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Objects/descrobject.c
Objects/typeobject.c

index c6f7e55ea5d12a39b84551cb7eded4be990f00ab..f19d07aa25689d6cd7dd098cb97b5b0429e699e2 100644 (file)
@@ -344,7 +344,7 @@ wrapperdescr_raw_call(PyWrapperDescrObject *descr, PyObject *self,
     wrapperfunc wrapper = descr->d_base->wrapper;
 
     if (descr->d_base->flags & PyWrapperFlag_KEYWORDS) {
-        wrapperfunc_kwds wk = (wrapperfunc_kwds)wrapper;
+        wrapperfunc_kwds wk = (wrapperfunc_kwds)(void(*)(void))wrapper;
         return (*wk)(self, args, descr->d_wrapped, kwds);
     }
 
index b9e69bf1bd1d64a166264f153bfb389d20311583..468210574119732e8ae6f5f05d70643f6b2d95f6 100644 (file)
@@ -6794,7 +6794,7 @@ static slotdef slotdefs[] = {
            "__repr__($self, /)\n--\n\nReturn repr(self)."),
     TPSLOT("__hash__", tp_hash, slot_tp_hash, wrap_hashfunc,
            "__hash__($self, /)\n--\n\nReturn hash(self)."),
-    FLSLOT("__call__", tp_call, slot_tp_call, (wrapperfunc)wrap_call,
+    FLSLOT("__call__", tp_call, slot_tp_call, (wrapperfunc)(void(*)(void))wrap_call,
            "__call__($self, /, *args, **kwargs)\n--\n\nCall self as a function.",
            PyWrapperFlag_KEYWORDS),
     TPSLOT("__str__", tp_str, slot_tp_str, wrap_unaryfunc,
@@ -6830,7 +6830,7 @@ static slotdef slotdefs[] = {
     TPSLOT("__delete__", tp_descr_set, slot_tp_descr_set,
            wrap_descr_delete,
            "__delete__($self, instance, /)\n--\n\nDelete an attribute of instance."),
-    FLSLOT("__init__", tp_init, slot_tp_init, (wrapperfunc)wrap_init,
+    FLSLOT("__init__", tp_init, slot_tp_init, (wrapperfunc)(void(*)(void))wrap_init,
            "__init__($self, /, *args, **kwargs)\n--\n\n"
            "Initialize self.  See help(type(self)) for accurate signature.",
            PyWrapperFlag_KEYWORDS),