Avoid C-style casts for pointers in docs (#2487)
Why only for pointers? Because C casts are hard to grep for.
diff --git a/docs/advanced/functions.rst b/docs/advanced/functions.rst
index 2814adf..c895517 100644
--- a/docs/advanced/functions.rst
+++ b/docs/advanced/functions.rst
@@ -360,7 +360,7 @@
.. code-block:: cpp
py::class_<MyClass>("MyClass")
- .def("myFunction", py::arg("arg") = (SomeType *) nullptr);
+ .def("myFunction", py::arg("arg") = static_cast<SomeType *>(nullptr));
Keyword-only arguments
======================
diff --git a/docs/advanced/misc.rst b/docs/advanced/misc.rst
index 0a73dae..8342210 100644
--- a/docs/advanced/misc.rst
+++ b/docs/advanced/misc.rst
@@ -176,9 +176,9 @@
.. code-block:: cpp
- auto data = (MyData *) py::get_shared_data("mydata");
+ auto data = reinterpret_cast<MyData *>(py::get_shared_data("mydata"));
if (!data)
- data = (MyData *) py::set_shared_data("mydata", new MyData(42));
+ data = static_cast<MyData *>(py::set_shared_data("mydata", new MyData(42)));
If the above snippet was used in several separately compiled extension modules,
the first one to be imported would create a ``MyData`` instance and associate
diff --git a/docs/advanced/pycpp/numpy.rst b/docs/advanced/pycpp/numpy.rst
index 8e5c609..e50d24a 100644
--- a/docs/advanced/pycpp/numpy.rst
+++ b/docs/advanced/pycpp/numpy.rst
@@ -274,9 +274,9 @@
py::buffer_info buf3 = result.request();
- double *ptr1 = (double *) buf1.ptr,
- *ptr2 = (double *) buf2.ptr,
- *ptr3 = (double *) buf3.ptr;
+ double *ptr1 = static_cast<double *>(buf1.ptr);
+ double *ptr2 = static_cast<double *>(buf2.ptr);
+ double *ptr3 = static_cast<double *>(buf3.ptr);
for (size_t idx = 0; idx < buf1.shape[0]; idx++)
ptr3[idx] = ptr1[idx] + ptr2[idx];