commit:     6e172d5de45574c8ab144f20e7707b2b2918a70c
Author:     Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com>
AuthorDate: Mon Apr 22 18:52:49 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 12 09:02:14 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e172d5d

dev-lang/xsb: Fix passing of incompatible pointer type

[sam: Add a fix for https://bugs.gentoo.org/949632 too.]

Closes: https://bugs.gentoo.org/949632
Closes: https://bugs.gentoo.org/930439
Signed-off-by: Brahmajit Das <brahmajit.xyz <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36363
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-lang/xsb/files/xsb-4.0.0-gcc14-build-fix.patch       | 11 +++++++++++
 dev-lang/xsb/files/xsb-4.0.0-gcc14-sql.patch             | 16 ++++++++++++++++
 .../xsb/{xsb-4.0.0-r1.ebuild => xsb-4.0.0-r2.ebuild}     |  2 ++
 3 files changed, 29 insertions(+)

diff --git a/dev-lang/xsb/files/xsb-4.0.0-gcc14-build-fix.patch 
b/dev-lang/xsb/files/xsb-4.0.0-gcc14-build-fix.patch
new file mode 100644
index 000000000000..86439ff99ef1
--- /dev/null
+++ b/dev-lang/xsb/files/xsb-4.0.0-gcc14-build-fix.patch
@@ -0,0 +1,11 @@
+--- a/emu/timer_xsb.c
++++ b/emu/timer_xsb.c
+@@ -264,7 +264,7 @@ int make_timed_call(CTXTdeclc xsbTimeout *pptr,  void 
(*fptr)(xsbTimeout *))
+   pptr->timeout_info.th=th;
+   // below, fptr is pointer to start routine, pptr is pointer to arg-array.
+   // TIMED_THREAD_CREATE_ARG is a cell of timeout_info.
+-  if (pthread_create(TIMED_THREAD_CREATE_ARG, NULL, fptr, pptr)) {
++  if (pthread_create(TIMED_THREAD_CREATE_ARG, NULL, (void *)fptr, pptr)) {
+     xsb_error("SOCKET_REQUEST: Can't create concurrent timer thread\n");
+     return TIMER_SETUP_ERR;
+   }

diff --git a/dev-lang/xsb/files/xsb-4.0.0-gcc14-sql.patch 
b/dev-lang/xsb/files/xsb-4.0.0-gcc14-sql.patch
new file mode 100644
index 000000000000..d100bdbb0cce
--- /dev/null
+++ b/dev-lang/xsb/files/xsb-4.0.0-gcc14-sql.patch
@@ -0,0 +1,16 @@
+https://bugs.gentoo.org/949632
+--- a/emu/odbc_xsb.c   2021-03-06 18:46:16.000000000 -0500
++++ b/emu/odbc_xsb.c   2025-02-11 15:49:47.204779582 -0500
+@@ -411,10 +411,10 @@
+   cberrormsgmax=SQL_MAX_MESSAGE_LENGTH-1;
+   if (cur != NULL)
+     rc = SQLError(SQL_NULL_HENV, cur->hdbc, cur->hstmt, szsqlstate,
+-                pfnativeerror, szerrormsg,cberrormsgmax,pcberrormsg);
++                (void *)pfnativeerror, szerrormsg,cberrormsgmax,pcberrormsg);
+   else
+     rc = SQLError(SQL_NULL_HENV, NULL, SQL_NULL_HSTMT, szsqlstate,
+-                pfnativeerror, szerrormsg,cberrormsgmax,pcberrormsg);
++                (void *)pfnativeerror, szerrormsg,cberrormsgmax,pcberrormsg);
+   if ((rc == SQL_SUCCESS) || (rc == SQL_SUCCESS_WITH_INFO)) {
+     term = makecs(hreg);
+     bld_functor(hreg, 
pair_psc(insert("odbc_error",2,(Psc)flags[CURRENT_MODULE],&isnew)));

diff --git a/dev-lang/xsb/xsb-4.0.0-r1.ebuild b/dev-lang/xsb/xsb-4.0.0-r2.ebuild
similarity index 98%
rename from dev-lang/xsb/xsb-4.0.0-r1.ebuild
rename to dev-lang/xsb/xsb-4.0.0-r2.ebuild
index 7e053d1e83ff..f391e5a4cbd7 100644
--- a/dev-lang/xsb/xsb-4.0.0-r1.ebuild
+++ b/dev-lang/xsb/xsb-4.0.0-r2.ebuild
@@ -35,6 +35,8 @@ PATCHES=(
        # https://bugs.gentoo.org/870970
        # https://sourceforge.net/p/xsb/bugs/265/
        "${FILESDIR}"/0001-modern-C-fix-for-implicit-int.patch
+       "${FILESDIR}"/xsb-4.0.0-gcc14-build-fix.patch
+       "${FILESDIR}"/xsb-4.0.0-gcc14-sql.patch
 )
 
 src_prepare() {

Reply via email to