Matches how strcmp() is passed to c_avl_create() elsewhere.
Reported by -Wpendantic:
------------------------------------
write_prometheus.c: In function ‘prom_init’:
write_prometheus.c:900:28: error: ISO C forbids conversion of function pointer to object pointer type [-Werror=pedantic]
900 | metrics = c_avl_create((void *)strcmp);
| ^
write_prometheus.c:900:28: error: ISO C forbids passing argument 1 of ‘c_avl_create’ between function pointer and ‘void *’ [-Werror=pedantic]
900 | metrics = c_avl_create((void *)strcmp);
| ^~~~~~~~~~~~~~
In file included from write_prometheus.c:30:
utils/avltree/avltree.h:54:34: note: expected ‘int (*)(const void *, const void *)’ but argument is of type ‘void *’
54 | c_avl_tree_t *c_avl_create(int (*compare)(const void *, const void *));
|
~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------------
Signed-off-by: Eero Tamminen <eero.t.tamminen@intel.com>
goto error;
/* Creating placeholder for queries */
- ctx.queries = c_avl_create((void *)strcmp);
+ ctx.queries = c_avl_create((int (*)(const void *, const void *))strcmp);
if (ctx.services == NULL)
goto free_services;
return NULL;
}
- out->staged = c_avl_create((void *)strcmp);
+ out->staged = c_avl_create((int (*)(const void *, const void *))strcmp);
if (out->staged == NULL) {
sd_output_destroy(out);
return NULL;
}
- out->metric_descriptors = c_avl_create((void *)strcmp);
+ out->metric_descriptors =
+ c_avl_create((int (*)(const void *, const void *))strcmp);
if (out->metric_descriptors == NULL) {
sd_output_destroy(out);
return NULL;
static int prom_init() {
if (metrics == NULL) {
- metrics = c_avl_create((void *)strcmp);
+ metrics = c_avl_create((int (*)(const void *, const void *))strcmp);
if (metrics == NULL) {
ERROR("write_prometheus plugin: c_avl_create() failed.");
return -1;