From 6ad92d4a5dc6b5f0d8de072622dabe2e804bf8e4 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sat, 25 Oct 2025 14:07:12 +0200 Subject: [PATCH] package/libdbi-drivers: fix build with gcc >= 14.x Fixes: https://autobuild.buildroot.net/results/d30/d3068de2f477d68823c4b7e537f120edf03338bb/ Signed-off-by: Bernd Kuhls Signed-off-by: Julien Olivain --- .../0001-libdbi-drivers-c99.patch | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 package/libdbi-drivers/0001-libdbi-drivers-c99.patch diff --git a/package/libdbi-drivers/0001-libdbi-drivers-c99.patch b/package/libdbi-drivers/0001-libdbi-drivers-c99.patch new file mode 100644 index 0000000000..46b43c8653 --- /dev/null +++ b/package/libdbi-drivers/0001-libdbi-drivers-c99.patch @@ -0,0 +1,45 @@ +Fix type errors in the cgreen with constraints facility. + +Upstream: https://sourceforge.net/p/libdbi-drivers/bugs/28/ + +Signed-off-by: Bernd Kuhls +[Bernd: rebased for git tree used by buildroot] + +diff --git a/tests/cgreen/src/constraint.c b/tests/cgreen/src/constraint.c +index c19c0ddd41a7bfa7..95673dd3e222a3cf 100644 +--- a/tests/cgreen/src/constraint.c ++++ b/tests/cgreen/src/constraint.c +@@ -22,8 +22,7 @@ static double unbox_double(intptr_t box); + static double as_double(intptr_t box); + + static int compare_using_matcher(Constraint *constraint, intptr_t actual); +-static void test_with_matcher(Constraint *constraint, const char *function, const char* matcher_name, intptr_t actual, const char *test_file, int test_line, TestReporter *reporter); +- ++static void test_with_matcher(Constraint *constraint, const char *function, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter); + + void destroy_constraint(void *abstract) { + Constraint *constraint = (Constraint *)abstract; +@@ -164,11 +163,11 @@ + } + + static int compare_using_matcher(Constraint *constraint, intptr_t actual) { +- int (*matches)(const void*) = (void *)(intptr_t)constraint->expected; +- return matches((void *)actual); ++ int (*matches)(const void*) = (int (*)(const void*)) constraint->expected; ++ return matches((const void *)actual); + } + +-static void test_with_matcher(Constraint *constraint, const char *function, const char* matcher_name, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter) { ++static void test_with_matcher(Constraint *constraint, const char *function, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter) { + (*reporter->assert_true)( + reporter, + test_file, +@@ -176,7 +175,7 @@ static void test_with_matcher(Constraint *constraint, const char *function, cons + (*constraint->compare)(constraint, matcher_function), + "Wanted parameter [%s] to match [%s] in function [%s]", + constraint->parameter, +- matcher_name, ++ constraint->name, + function); + } +