From 8abfcaa59776cb18c827a21a9b8c0c2e97aed372 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 24 Feb 2023 09:40:11 -0800 Subject: glib-2.0: Disable -Wincompatible-function-pointer-type with clang-16 This needs to get several recipes to work with clang-16, originally the problem is in vala I think. Which should be fixed in due course Signed-off-by: Khem Raj --- ...lang-warning-for-function-signature-match.patch | 40 ++++++++++++++++++++++ recipes-core/glib-2.0/glib-2.0_%.bbappend | 4 +++ 2 files changed, 44 insertions(+) create mode 100644 recipes-core/glib-2.0/glib-2.0/0001-Ignore-clang-warning-for-function-signature-match.patch diff --git a/recipes-core/glib-2.0/glib-2.0/0001-Ignore-clang-warning-for-function-signature-match.patch b/recipes-core/glib-2.0/glib-2.0/0001-Ignore-clang-warning-for-function-signature-match.patch new file mode 100644 index 0000000..ae03849 --- /dev/null +++ b/recipes-core/glib-2.0/glib-2.0/0001-Ignore-clang-warning-for-function-signature-match.patch @@ -0,0 +1,40 @@ +From 591e8f449e81ae5cb69575eb2e09787b5e0e25cf Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 23 Feb 2023 14:23:28 -0800 +Subject: [PATCH] Ignore clang warning for function signature match + +vala generated code emits GTestDataFunc with gpointer and not +gconstpointer and newer compilers e.g. clang16 can now find out +incompatible-function-pointer-types, which makes code not compile + +Fixes +test-vala-lang.c:1166:51: error: incompatible function pointer types passing 'void (gpointer)' (aka 'void (void *)') to parameter of type 'GTestDataFunc' (aka 'v +oid (*)(const void *)') [-Wincompatible-function-pointer-types] +| g_test_add_data_func ("/vala/lookup/sync", NULL, _test_lookup_sync_gtest_data_func); +| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + glib/gtestutils.h | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/glib/gtestutils.h b/glib/gtestutils.h +index 86ee4e521..cc237b3f0 100644 +--- a/glib/gtestutils.h ++++ b/glib/gtestutils.h +@@ -34,7 +34,10 @@ + #include + + G_BEGIN_DECLS +- ++// TODO: This should really be fixed in vala perhaps see ++// https://gitlab.gnome.org/GNOME/vala/-/issues/1413 ++// but it impacts almost 20 packages so workaround it here for now ++#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types" + typedef struct GTestCase GTestCase; + typedef struct GTestSuite GTestSuite; + typedef void (*GTestFunc) (void); +-- +2.39.2 + diff --git a/recipes-core/glib-2.0/glib-2.0_%.bbappend b/recipes-core/glib-2.0/glib-2.0_%.bbappend index 2aef80e..57e3211 100644 --- a/recipes-core/glib-2.0/glib-2.0_%.bbappend +++ b/recipes-core/glib-2.0/glib-2.0_%.bbappend @@ -1 +1,5 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:" + +SRC_URI:append:toolchain-clang = " file://0001-Ignore-clang-warning-for-function-signature-match.patch" + CFLAGS:append:libc-musl = " -Wno-format-nonliteral" -- cgit v1.2.3-54-g00ecf