x11-toolkits/p5-Tk: fix build with clang 16

Clang 16 has a new error about incompatible function types, which shows
up when building x11-toolkits/p5-Tk:

  ./Xlib.t:334:14: error: incompatible function pointer types initializing 'KeySym (*)(Display *, unsigned int, int)' (aka 'unsigned long (*)(struct _XDisplay *, unsigned int, int)') with an expression of type 'KeySym (Display *, KeyCode, int)' (aka 'unsigned long (struct _XDisplay *, unsigned char, int)') [-Wincompatible-function-pointer-types]
  VFUNC(KeySym,XKeycodeToKeysym,V_XKeycodeToKeysym,_ANSI_ARGS_((Display *, unsigned int, int)))
               ^~~~~~~~~~~~~~~~

Indeed, the XKeycodeToKeysum function takes a 'KeyCode' as its second
parameter. Patch Xlib.t to make it so.

PR:		271521
Approved by:	pi (maintainer)
MFH:		2023Q2
This commit is contained in:
Dimitry Andric 2023-05-19 22:32:01 +02:00
parent b3436d3960
commit ecedf2f3cd
2 changed files with 12 additions and 0 deletions

View file

@ -1,5 +1,6 @@
PORTNAME= Tk
PORTVERSION= 804.035
PORTREVISION= 1
CATEGORIES= x11-toolkits tk perl5
MASTER_SITES= CPAN
PKGNAMEPREFIX= p5-

View file

@ -0,0 +1,11 @@
--- pTk/Xlib.t.orig 2023-05-19 20:18:20 UTC
+++ pTk/Xlib.t
@@ -331,7 +331,7 @@ VFUNC(int,XIntersectRegion,V_XIntersectRegion,_ANSI_AR
#endif /* !DO_X_EXCLUDE */
#ifndef XKeycodeToKeysym
-VFUNC(KeySym,XKeycodeToKeysym,V_XKeycodeToKeysym,_ANSI_ARGS_((Display *, unsigned int, int)))
+VFUNC(KeySym,XKeycodeToKeysym,V_XKeycodeToKeysym,_ANSI_ARGS_((Display *, KeyCode, int)))
#endif /* #ifndef XKeycodeToKeysym */
#ifndef XKeysymToString