diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2023-05-15 14:17:12 +0000 |
---|---|---|
committer | Cy Schubert <cy@FreeBSD.org> | 2023-05-15 14:36:17 +0000 |
commit | 72d0d9b5dad67545e571057abd8d59166ce247b2 (patch) | |
tree | 0969f76a4a5261157dd69b4e79c945c4888e1938 | |
parent | 90eafe349e84d3056b1cf2f6625c526ef89023e5 (diff) | |
download | ports-72d0d9b5dad67545e571057abd8d59166ce247b2.tar.gz ports-72d0d9b5dad67545e571057abd8d59166ce247b2.zip |
x11-toolkits/open-motif*: fix build with clang 16
Clang 16 has a new error about incompatible function types, which shows
up when building x11-toolkits/open-motif:
WmError.c:134:24: error: incompatible function pointer types passing 'void (char *)' to parameter of type 'void (*)(String) __attribute__((noreturn))' (aka 'void (*)(char *) __attribute__((noreturn))') [-Wincompatible-function-pointer-types]
XtSetErrorHandler (WmXtErrorHandler);
^~~~~~~~~~~~~~~~
/usr/local/include/X11/Intrinsic.h:1776:1: note: passing argument to parameter here
);
^
In this case the declaration of the callback function for
XtSetErrorHandler() shoud have a noreturn attribute, specifically using
the _X_NORETURN macro.
PR: 271425
-rw-r--r-- | x11-toolkits/open-motif-devel/files/patch-clients_mwm_WmError.h | 11 | ||||
-rw-r--r-- | x11-toolkits/open-motif/files/patch-clients_mwm_WmError.h | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/x11-toolkits/open-motif-devel/files/patch-clients_mwm_WmError.h b/x11-toolkits/open-motif-devel/files/patch-clients_mwm_WmError.h new file mode 100644 index 000000000000..c25975f099a8 --- /dev/null +++ b/x11-toolkits/open-motif-devel/files/patch-clients_mwm_WmError.h @@ -0,0 +1,11 @@ +--- clients/mwm/WmError.h.orig 2017-08-17 00:38:43 UTC ++++ clients/mwm/WmError.h +@@ -32,7 +32,7 @@ extern int WmXIOErrorHandler (Display *display); + extern void WmInitErrorHandler (Display *display); + extern int WmXErrorHandler (Display *display, XErrorEvent *errorEvent); + extern int WmXIOErrorHandler (Display *display); +-extern void WmXtErrorHandler (char *message); ++extern void WmXtErrorHandler (char *message) _X_NORETURN; + extern void WmXtWarningHandler (char *message); + extern void Warning (char *message); + #ifndef NO_MESSAGE_CATALOG diff --git a/x11-toolkits/open-motif/files/patch-clients_mwm_WmError.h b/x11-toolkits/open-motif/files/patch-clients_mwm_WmError.h new file mode 100644 index 000000000000..c25975f099a8 --- /dev/null +++ b/x11-toolkits/open-motif/files/patch-clients_mwm_WmError.h @@ -0,0 +1,11 @@ +--- clients/mwm/WmError.h.orig 2017-08-17 00:38:43 UTC ++++ clients/mwm/WmError.h +@@ -32,7 +32,7 @@ extern int WmXIOErrorHandler (Display *display); + extern void WmInitErrorHandler (Display *display); + extern int WmXErrorHandler (Display *display, XErrorEvent *errorEvent); + extern int WmXIOErrorHandler (Display *display); +-extern void WmXtErrorHandler (char *message); ++extern void WmXtErrorHandler (char *message) _X_NORETURN; + extern void WmXtWarningHandler (char *message); + extern void Warning (char *message); + #ifndef NO_MESSAGE_CATALOG |