mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-26 09:56:17 +03:00
Fix dereferencing type-punned pointer will break strict-aliasing
Compiler warning appeared as: src/path.c:574:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] Py_TYPE(&item)->tp_name); ^~~~~~~ As item is already of type PyObject*, and the Py_TYPE macro is equivalent to (((PyObject*)(o))->ob_type), no need for the dereference. https://docs.python.org/3/c-api/structures.html#c.Py_TYPE
This commit is contained in:
parent
ca850a6334
commit
e705cd1476
|
@ -17,6 +17,11 @@ class TestImagePath(PillowTestCase):
|
|||
self.assertEqual(p[0], (0.0, 1.0))
|
||||
self.assertEqual(p[-1], (8.0, 9.0))
|
||||
self.assertEqual(list(p[:1]), [(0.0, 1.0)])
|
||||
with self.assertRaises(TypeError) as cm:
|
||||
p['foo']
|
||||
self.assertEqual(
|
||||
str(cm.exception),
|
||||
"Path indices must be integers, not str")
|
||||
self.assertEqual(
|
||||
list(p),
|
||||
[(0.0, 1.0), (2.0, 3.0), (4.0, 5.0), (6.0, 7.0), (8.0, 9.0)])
|
||||
|
|
|
@ -571,7 +571,7 @@ path_subscript(PyPathObject* self, PyObject* item) {
|
|||
else {
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"Path indices must be integers, not %.200s",
|
||||
Py_TYPE(&item)->tp_name);
|
||||
Py_TYPE(item)->tp_name);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user