Fix: fix some warnings shown with -Wextra on gcc 9.1.0
authorSimon Marchi <simon.marchi@efficios.com>
Sat, 5 Oct 2019 04:02:59 +0000 (00:02 -0400)
committerSimon Marchi <simon.marchi@efficios.com>
Tue, 8 Oct 2019 14:23:40 +0000 (10:23 -0400)
Fix this:

    /home/simark/src/babeltrace/src/ctf-writer/event.c: In function ‘bt_ctf_event_create’:
    /home/simark/src/babeltrace/src/ctf-writer/event.c:626:3: error: cast between incompatible function types from ‘void (*)(struct bt_ctf_field_wrapper *)’ to ‘void (*)(void *, void *)’ [-Werror=cast-function-type]
      626 |   (release_header_field_func) destroy_event_header_field);
          |   ^

by adding a second parameter, stream_class, to destroy_event_header_field, to
match the release_header_field_func type (which takes two pointers).

Fix this:

    /home/simark/src/babeltrace/src/lib/trace-ir/clock-class.c: In function ‘bt_clock_class_create’:
    /home/simark/src/babeltrace/src/lib/trace-ir/clock-class.c:125:3: error: cast between incompatible function types from ‘void (*)(struct bt_clock_snapshot *, struct bt_clock_class *)’ to ‘void * (*)(void *, void *)’ [-Werror=cast-function-type]
      125 |   (bt_object_pool_destroy_object_func)
          |   ^

by making bt_object_pool_destroy_object_func return `void` instead of `void *`
(none of the implementations actually return anything, it seems like a copy
paste error from the typedef above).

Change-Id: I8707a4a3b3eb34d84604f9b8117a20eaa5f50c83
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/2138
Tested-by: jenkins <jenkins@lttng.org>
src/ctf-writer/event.c
src/lib/object-pool.h

index abe2521a9fc8153350dab2da685dc4960972506a..44019efaf5868f8e9fcbf98eac8b710835be6882 100644 (file)
@@ -535,7 +535,8 @@ int map_clock_classes_func(struct bt_ctf_stream_class_common *stream_class,
 }
 
 static
-void destroy_event_header_field(struct bt_ctf_field_wrapper *field_wrapper)
+void destroy_event_header_field(struct bt_ctf_field_wrapper *field_wrapper,
+               struct bt_ctf_stream_class *stream_class)
 {
        BT_ASSERT(field_wrapper);
        bt_ctf_object_put_ref(field_wrapper->field);
@@ -567,7 +568,7 @@ error:
        bt_ctf_object_put_ref(field);
 
        if (field_wrapper) {
-               destroy_event_header_field(field_wrapper);
+               destroy_event_header_field(field_wrapper, stream_class);
                field_wrapper = NULL;
        }
 
index e94e04d24801a7b1b64c6e9ef8969a92dc4624db..02118999f6b8e8a54ccf99b63c5475012ca25b03 100644 (file)
@@ -57,7 +57,7 @@
 #endif
 
 typedef void *(*bt_object_pool_new_object_func)(void *data);
-typedef void *(*bt_object_pool_destroy_object_func)(void *obj, void *data);
+typedef void (*bt_object_pool_destroy_object_func)(void *obj, void *data);
 
 struct bt_object_pool {
        /*
This page took 0.026043 seconds and 4 git commands to generate.