]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUILD: incompatible pointer type suspected with -DDEBUG_UNIT 20250415-gcc-15-unittest
authorWilliam Lallemand <wlallemand@haproxy.com>
Tue, 15 Apr 2025 13:49:44 +0000 (15:49 +0200)
committerWilliam Lallemand <wlallemand@haproxy.com>
Tue, 15 Apr 2025 13:49:44 +0000 (15:49 +0200)
src/jws.c: In function '__jws_init':
src/jws.c:594:38: error: passing argument 2 of 'hap_register_unittest' from incompatible pointer type [-Wincompatible-pointer-types]
  594 |         hap_register_unittest("jwk", jwk_debug);
      |                                      ^~~~~~~~~
      |                                      |
      |                                      int (*)(int,  char **)
In file included from include/haproxy/api.h:36,
                 from include/import/ebtree.h:251,
                 from include/import/ebmbtree.h:25,
                 from include/haproxy/jwt-t.h:25,
                 from src/jws.c:5:
include/haproxy/init.h:37:52: note: expected 'int (*)(void)' but argument is of type 'int (*)(int,  char **)'
   37 | void hap_register_unittest(const char *name, int (*fct)());
      |                                              ~~~~~~^~~~~~

GCC 15 is warning because the function pointer does have its
arguments in the register function.

Should fix issue #2929.

include/haproxy/init.h

index 382e7a142cf3849b93a22ff19168cc7adb70b80d..3bf4f08878017d29fdd7e56947149b02c0c7d3e0 100644 (file)
@@ -34,7 +34,7 @@ void hap_register_per_thread_free(void (*fct)());
 
 
 #ifdef DEBUG_UNIT
-void hap_register_unittest(const char *name, int (*fct)());
+void hap_register_unittest(const char *name, int (*fct)(int, char **));
 /* Simplified way to register a unit test */
 #define REGISTER_UNITTEST(name, fct) \
        INITCALL2(STG_REGISTER, hap_register_unittest, name, (fct))