diff mbox series

[meta-perl,3/7] libxml-libxml-perl: Fix function pointer types

Message ID 20230117052237.3117521-3-raj.khem@gmail.com
State New
Headers show
Series [meta-networking,1/7] libtevent: Package cmocka tests into ptest package | expand

Commit Message

Khem Raj Jan. 17, 2023, 5:22 a.m. UTC
Newer clang is warning about this.
Fixes -Wincompatible-function-pointer-types

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...nction-prototypes-in-function-pointe.patch | 51 +++++++++++++++++++
 .../libxml/libxml-libxml-perl_2.0134.bb       |  1 +
 2 files changed, 52 insertions(+)
 create mode 100644 meta-perl/recipes-perl/libxml/libxml-libxml-perl/0001-libxml-mm-Fix-function-prototypes-in-function-pointe.patch
diff mbox series

Patch

diff --git a/meta-perl/recipes-perl/libxml/libxml-libxml-perl/0001-libxml-mm-Fix-function-prototypes-in-function-pointe.patch b/meta-perl/recipes-perl/libxml/libxml-libxml-perl/0001-libxml-mm-Fix-function-prototypes-in-function-pointe.patch
new file mode 100644
index 0000000000..7ff61c5709
--- /dev/null
+++ b/meta-perl/recipes-perl/libxml/libxml-libxml-perl/0001-libxml-mm-Fix-function-prototypes-in-function-pointe.patch
@@ -0,0 +1,51 @@ 
+From 25451c0a56ef8d3b32fd23847bef516486bd8ed4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 16 Jan 2023 18:50:10 -0800
+Subject: [PATCH] libxml-mm: Fix function prototypes in function pointers
+
+This is now detected with latest clang16+
+
+Fixes
+error: incompatible function pointer types passing 'void (void *, void *, xmlChar *)' (aka 'void (void *, void *, unsigned char *)') to parameter of type 'xmlHashScanner' (aka 'void (*)(void *, void *, const unsigned char *)') [-Wincompatible-function-pointer-types]
+                xmlHashScan(r, PmmRegistryDumpHashScanner, NULL);
+
+Upstream-Status: Submitted [https://github.com/shlomif/perl-XML-LibXML/pull/75]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ perl-libxml-mm.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/perl-libxml-mm.c b/perl-libxml-mm.c
+index a3e78a2..ec2b5ea 100644
+--- a/perl-libxml-mm.c
++++ b/perl-libxml-mm.c
+@@ -121,7 +121,7 @@ PmmFreeHashTable(xmlHashTablePtr table)
+ extern SV* PROXY_NODE_REGISTRY_MUTEX;
+ 
+ /* Utility method used by PmmDumpRegistry */
+-void PmmRegistryDumpHashScanner(void * payload, void * data, xmlChar * name)
++void PmmRegistryDumpHashScanner(void * payload, void * data, const xmlChar * name)
+ {
+ 	LocalProxyNodePtr lp = (LocalProxyNodePtr) payload;
+ 	ProxyNodePtr node = (ProxyNodePtr) lp->proxy;
+@@ -215,7 +215,7 @@ PmmRegisterProxyNode(ProxyNodePtr proxy)
+ /* PP: originally this was static inline void, but on AIX the compiler
+    did not chew it, so I'm removing the inline */
+ static void
+-PmmRegistryHashDeallocator(void *payload, xmlChar *name)
++PmmRegistryHashDeallocator(void *payload, const xmlChar *name)
+ {
+ 	Safefree((LocalProxyNodePtr) payload);
+ }
+@@ -279,7 +279,7 @@ PmmRegistryREFCNT_dec(ProxyNodePtr proxy)
+  * internal, used by PmmCloneProxyNodes
+  */
+ void *
+-PmmRegistryHashCopier(void *payload, xmlChar *name)
++PmmRegistryHashCopier(void *payload, const xmlChar *name)
+ {
+ 	ProxyNodePtr proxy = ((LocalProxyNodePtr) payload)->proxy;
+ 	LocalProxyNodePtr lp;
+-- 
+2.39.0
+
diff --git a/meta-perl/recipes-perl/libxml/libxml-libxml-perl_2.0134.bb b/meta-perl/recipes-perl/libxml/libxml-libxml-perl_2.0134.bb
index c2ea47ae5b..f184b89e59 100644
--- a/meta-perl/recipes-perl/libxml/libxml-libxml-perl_2.0134.bb
+++ b/meta-perl/recipes-perl/libxml/libxml-libxml-perl_2.0134.bb
@@ -26,6 +26,7 @@  SRC_URI = "http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/XML-LibXML-${PV}.
     file://disable-libxml2-check.patch \
     file://fix-CATALOG-conditional-compile.patch \
     file://using-DOCB-conditional.patch \
+    file://0001-libxml-mm-Fix-function-prototypes-in-function-pointe.patch \
 "
 LIC_FILES_CHKSUM = "file://debian/copyright;md5=64eda1bc135f0ece1d1187f2a8ac82c1 \
     file://LICENSE;md5=97871bde150daeb5e61ad95137ff2446 \