[Bug 279968] devel/tclxml: Fails to build with libxml2 2.13.1 and libxslt 1.1.41
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 30 Jun 2024 08:11:14 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279968 --- Comment #3 from Pietro Cerutti <gahr@FreeBSD.org> --- Two things: 1) I think the patch to should include this second chunk too: --- include/tclxml-libxml2/tclxml-libxml2Decls.h.orig 2013-03-30 17:17:07 UTC +++ include/tclxml-libxml2/tclxml-libxml2Decls.h @@ -55,7 +55,7 @@ EXTERN void TclXML_libxml2_ErrorHandler _ANSI_ARGS_(( TclXML_libxml2_DocumentHandling keep)); /* 10 */ EXTERN void TclXML_libxml2_ErrorHandler _ANSI_ARGS_((void * ctx, - xmlErrorPtr error)); + const xmlError *error)); /* 11 */ EXTERN void TclXML_libxml2_ResetError _ANSI_ARGS_(( Tcl_Interp * interp)); @@ -93,7 +93,7 @@ typedef struct Tclxml_libxml2Stubs { int (*tclXML_libxml2_GetTclDocFromNode) _ANSI_ARGS_((Tcl_Interp * interp, xmlNodePtr nodePtr, TclXML_libxml2_Document ** tDocPtrPtr)); /* 7 */ void (*tclXML_libxml2_DestroyDocument) _ANSI_ARGS_((TclXML_libxml2_Document * tDocPtr)); /* 8 */ void (*tclXML_libxml2_DocKeep) _ANSI_ARGS_((Tcl_Obj * objPtr, TclXML_libxml2_DocumentHandling keep)); /* 9 */ - void (*tclXML_libxml2_ErrorHandler) _ANSI_ARGS_((void * ctx, xmlErrorPtr error)); /* 10 */ + void (*tclXML_libxml2_ErrorHandler) _ANSI_ARGS_((void * ctx, const xmlError * error)); /* 10 */ void (*tclXML_libxml2_ResetError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 11 */ Tcl_Obj * (*tclXML_libxml2_GetErrorObj) _ANSI_ARGS_((Tcl_Interp * interp)); /* 12 */ void (*tclXML_libxml2_SetErrorNodeFunc) _ANSI_ARGS_((Tcl_Interp * interp, TclXML_ErrorNodeHandlerProc * proc)); /* 13 */ 2) These patches cannot be applied to the current libxml2 2.11.8, as the signature of that function is not backwards compatible. docObj.c:124:60: error: incompatible function pointer types passing 'void (void *, const xmlError *)' (aka 'void (void *, const struct _xmlError *)') to parameter of type 'xmlStructured ErrorFunc' (aka 'void (*)(void *, struct _xmlError *)') [-Wincompatible-function-pointer-types] xmlSetStructuredErrorFunc((void *) tsdPtr->errorInfoPtr, TclXML_libxml2_ErrorHandler); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/local/include/libxml2/libxml/xmlerror.h:873:29: note: passing argument to parameter 'handler' here xmlStructuredErrorFunc handler); Are you planning to commit everything at once? An alternative would be to conditionally change the signatures under LIBXML_VERSION_NUMBER >= 21200 -- You are receiving this mail because: You are the assignee for the bug.