mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-12-13 21:47:44 +00:00
Closes: https://bugs.gentoo.org/927838 Signed-off-by: Sebastian Pipping <sping@gentoo.org>
59 lines
2.4 KiB
Diff
59 lines
2.4 KiB
Diff
From e1da090da24f5620784daf853eb1353aa164583f Mon Sep 17 00:00:00 2001
|
||
From: Sebastian Pipping <sebastian@pipping.org>
|
||
Date: Wed, 27 Mar 2024 23:25:39 +0100
|
||
Subject: [PATCH] Address -Wincompatible-function-pointer-types for Clang 17
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
Also showed with -Werror=incompatible-pointer-types with GCC.
|
||
|
||
Bug: https://bugs.gentoo.org/927838
|
||
|
||
Symptom with GCC was:
|
||
> src/xml.c: In function ‘main’:
|
||
> src/xml.c:300:43: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Werror=incompatible-pointer-types]
|
||
> 300 | xmlSetStructuredErrorFunc(&errorInfo, reportError);
|
||
> | ^~~~~~~~~~~
|
||
> | |
|
||
> | void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
|
||
> In file included from /usr/include/libxml2/libxml/valid.h:15,
|
||
> from /usr/include/libxml2/libxml/parser.h:19,
|
||
> from /usr/include/libxml2/libxml/tree.h:17,
|
||
> from /usr/include/libxslt/xslt.h:13,
|
||
> from src/xml.c:37:
|
||
> /usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
|
||
---
|
||
src/xml.c | 2 +-
|
||
src/xmlstar.h | 2 +-
|
||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||
|
||
diff --git a/src/xml.c b/src/xml.c
|
||
index cf47cc2..e6f19c1 100644
|
||
--- a/src/xml.c
|
||
+++ b/src/xml.c
|
||
@@ -104,7 +104,7 @@ void reportGenericError(void* ctx, const char * msg, ...) {
|
||
/* by default all errors are reported */
|
||
static ErrorInfo errorInfo = { NULL, NULL, VERBOSE, CONTINUE };
|
||
|
||
-void reportError(void *ptr, xmlErrorPtr error)
|
||
+void reportError(void *ptr, const xmlError *error)
|
||
{
|
||
ErrorInfo *errorInfo = (ErrorInfo*) ptr;
|
||
assert(errorInfo);
|
||
diff --git a/src/xmlstar.h b/src/xmlstar.h
|
||
index 3e1eed3..e8d7177 100644
|
||
--- a/src/xmlstar.h
|
||
+++ b/src/xmlstar.h
|
||
@@ -32,7 +32,7 @@ typedef struct _errorInfo {
|
||
ErrorStop stop;
|
||
} ErrorInfo;
|
||
|
||
-void reportError(void *ptr, xmlErrorPtr error);
|
||
+void reportError(void *ptr, const xmlError *error);
|
||
void suppressErrors(void);
|
||
|
||
typedef struct _gOptions {
|
||
--
|
||
2.44.0
|
||
|