From af768ca0f1571532cf31d903713e42bdccacb8af Mon Sep 17 00:00:00 2001 From: Kjell Ahlstedt Date: Fri, 31 Aug 2018 13:04:09 +0200 Subject: Avoid compiler warnings from function pointer conversions gcc8 -Wextra prints a warning when a single reinterpret_cast is used for conversion between different types of function pointers. The previous fix with a union in Glib::bitwise_equivalent_cast<>() is not standard C++. Rename the function to Glib::function_pointer_cast<>(), and use two reinterpret_casts as recommended in gcc's documentation. * glib/src/optiongroup.ccg: Use a reinterpret_cast to convert from a function pointer to void*. That's possible now. It's "conditionally supported", starting with C++11. See https://github.com/libsigcplusplus/libsigcplusplus/issues/8 --- tests/glibmm_vector/main.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/glibmm_vector/main.cc b/tests/glibmm_vector/main.cc index dd83553e..a3719532 100644 --- a/tests/glibmm_vector/main.cc +++ b/tests/glibmm_vector/main.cc @@ -198,12 +198,12 @@ public: { if (glist_) { - g_list_foreach(glist_, Glib::bitwise_equivalent_cast(g_object_unref), nullptr); + g_list_foreach(glist_, Glib::function_pointer_cast(g_object_unref), nullptr); g_list_free(glist_); } if (gslist_) { - g_slist_foreach(gslist_, Glib::bitwise_equivalent_cast(g_object_unref), nullptr); + g_slist_foreach(gslist_, Glib::function_pointer_cast(g_object_unref), nullptr); g_slist_free(gslist_); } if (garray_) -- cgit v1.2.1