Bug#1085133: liblmdb-file-perl FTBFS on 32-bit with gcc 14

Adrian Bunk bunk at debian.org
Tue Oct 15 05:44:03 BST 2024


Source: liblmdb-file-perl
Version: 0.13-1
Severity: serious
Tags: ftbfs patch

https://tests.reproducible-builds.org/debian/rb-pkg/trixie/i386/liblmdb-file-perl.html
https://buildd.debian.org/status/logs.php?pkg=liblmdb-file-perl&ver=0.13-1%2Bb1

...
LMDB.c: In function ‘XS_LMDB__Cursor_count’:
LMDB.c:1902:43: error: passing argument 2 of ‘mdb_cursor_count’ from incompatible pointer type [-Wincompatible-pointer-types]
 1902 |         RETVAL = mdb_cursor_count(cursor, &count);
      |                                           ^~~~~~
      |                                           |
      |                                           UV * {aka long long unsigned int *}
In file included from LMDB.xs:98:
/usr/include/lmdb.h:1545:51: note: expected ‘size_t *’ {aka ‘unsigned int *’} but argument is of type ‘UV *’ {aka ‘long long unsigned int *’}
 1545 | int  mdb_cursor_count(MDB_cursor *cursor, size_t *countp);
      |                                           ~~~~~~~~^~~~~~
make[1]: *** [Makefile:346: LMDB.o] Error 1


A fix is attached.
-------------- next part --------------
Description: Fix FTBFS on 32-bit with gcc 14
Author: Adrian Bunk <bunk at debian.org>

--- liblmdb-file-perl-0.13.orig/LMDB.xs
+++ liblmdb-file-perl-0.13/LMDB.xs
@@ -897,7 +897,7 @@ mdb_cursor_close(cursor)
 int
 mdb_cursor_count(cursor, count)
 	LMDB::Cursor	cursor
-	UV  &count = NO_INIT
+	size_t  &count = NO_INIT
     OUTPUT:
 	count
 


More information about the pkg-perl-maintainers mailing list