Building libmaxminddb 1.14.0 on Fedora Rawhide (becoming Fedora 46), building on 32 bit Intel/AMD ("i686") fails like this:
not ok 1 - -DMAXIMUM_DATA_STRUCTURE_DEPTH=1000 compiles without warnings
# Failed test '-DMAXIMUM_DATA_STRUCTURE_DEPTH=1000 compiles without warnings'
# at ./decoder_limits_t.pl line 70.
# got: '1'
# expected: '0'
# /builddir/build/BUILD/libmaxminddb-1.14.0-build/libmaxminddb-1.14.0/src/maxminddb.c: In function ‘MMDB_open’:
# /builddir/build/BUILD/libmaxminddb-1.14.0-build/libmaxminddb-1.14.0/src/maxminddb.c:370:27: error: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘int’} and ‘unsigned int’ [-Werror=sign-compare]
# 370 | if (data_section_size > UINT32_MAX || data_section_size <= 0) {
# | ^
# cc1: all warnings being treated as errors
not ok 2 - -DMAXIMUM_DATA_STRUCTURE_VALUES=1000000 compiles without warnings
# Failed test '-DMAXIMUM_DATA_STRUCTURE_VALUES=1000000 compiles without warnings'
# at ./decoder_limits_t.pl line 70.
# got: '1'
# expected: '0'
# /builddir/build/BUILD/libmaxminddb-1.14.0-build/libmaxminddb-1.14.0/src/maxminddb.c: In function ‘MMDB_open’:
# /builddir/build/BUILD/libmaxminddb-1.14.0-build/libmaxminddb-1.14.0/src/maxminddb.c:370:27: error: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘int’} and ‘unsigned int’ [-Werror=sign-compare]
# 370 | if (data_section_size > UINT32_MAX || data_section_size <= 0) {
# | ^
# cc1: all warnings being treated as errors
Building libmaxminddb 1.14.0 on Fedora Rawhide (becoming Fedora 46), building on 32 bit Intel/AMD ("i686") fails like this: