new file mode 100644
@@ -0,0 +1,1003 @@
+From 74b36fab6e7e66ca470b7b2ca2a494edd8c673d5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <khem.raj@oss.qualcomm.com>
+Date: Fri, 10 Apr 2026 23:42:05 -0700
+Subject: [PATCH] warnings: Fix clang generated warnings
+
+This patch ensures that it can compile with clang-22
+
+Upstream-Status: Submitted [https://github.com/COVESA/dlt-daemon/pull/850]
+Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
+---
+ CMakeLists.txt | 3 +
+ examples/example1/example1.c | 2 +-
+ examples/example1_v2/example1.c | 2 +-
+ examples/example2/example2.c | 2 +-
+ examples/example2_v2/example2.c | 2 +-
+ examples/example3/example3.c | 2 +-
+ examples/example3_v2/example3.c | 2 +-
+ examples/example4/example4.c | 2 +-
+ examples/example4_v2/example4.c | 2 +-
+ src/console/dlt-control-v2.c | 2 +-
+ src/console/dlt-passive-node-ctrl.c | 8 +--
+ src/console/dlt-receive-v2.c | 2 +-
+ src/console/dlt-sortbytimestamp.c | 2 +-
+ src/console/logstorage/dlt-logstorage-ctrl.c | 2 +-
+ src/daemon/dlt-daemon.c | 6 +-
+ src/daemon/dlt-daemon.h | 2 +-
+ src/daemon/dlt_daemon_client.c | 6 +-
+ src/examples/dlt-example-filetransfer.c | 8 ++-
+ .../dlt-example-multicast-clientmsg-view.c | 4 +-
+ src/examples/dlt-example-user-common-api.c | 2 +-
+ src/examples/dlt-example-user-func-v2.c | 2 +-
+ src/examples/dlt-example-user-func.c | 2 +-
+ src/examples/dlt-example-user-v2.c | 4 +-
+ src/examples/dlt-example-user.c | 2 +-
+ src/lib/dlt_env_ll.c | 3 +-
+ src/lib/dlt_user.c | 70 +++++++++----------
+ .../dlt_offline_logstorage.c | 2 +-
+ src/shared/dlt_log.c | 8 +--
+ src/system/dlt-system-journal.c | 8 ++-
+ src/system/dlt-system-process-handling.c | 2 +-
+ src/system/dlt-system-shell.c | 2 +-
+ src/system/dlt-system.h | 4 +-
+ src/tests/dlt-test-client-v2.c | 2 +-
+ src/tests/dlt-test-fork-handler-v2.c | 2 +-
+ src/tests/dlt-test-fork-handler.c | 2 +-
+ src/tests/dlt-test-multi-process-v2.c | 8 +--
+ src/tests/dlt-test-multi-process.c | 8 +--
+ src/tests/dlt-test-non-verbose.c | 4 +-
+ src/tests/dlt-test-preregister-context-v2.c | 2 +-
+ src/tests/dlt-test-preregister-context.c | 2 +-
+ src/tests/dlt-test-qnx-slogger.c | 2 +-
+ src/tests/dlt-test-stress-client-v2.c | 2 +-
+ src/tests/dlt-test-stress-user-v2.c | 2 +-
+ src/tests/dlt-test-stress-v2.c | 2 +-
+ src/tests/dlt-test-stress.c | 2 +-
+ src/tests/dlt-test-user-v2.c | 2 +-
+ src/tests/dlt-test-user.c | 2 +-
+ tests/dlt_test_receiver.c | 2 +-
+ 48 files changed, 110 insertions(+), 108 deletions(-)
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -261,7 +261,11 @@ add_compile_options(
+ -Wcast-qual
+ -Wno-system-headers
+ -Wno-unused-function
+- -Wno-stringop-truncation
++ $<$<AND:$<COMPILE_LANGUAGE:C>,$<C_COMPILER_ID:Clang>>:-Wno-gnu-statement-expression-from-macro-expansion>
++ $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CXX_COMPILER_ID:Clang>>:-Wno-gnu-statement-expression-from-macro-expansion>
++ $<$<CXX_COMPILER_ID:Clang>:-Wno-gnu-zero-variadic-macro-arguments>
++ $<$<AND:$<COMPILE_LANGUAGE:C>,$<C_COMPILER_ID:GNU>>:-Wno-stringop-truncation>
++ $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CXX_COMPILER_ID:GNU>>:-Wno-stringop-truncation>
+ )
+
+ if(WITH_DOC STREQUAL "OFF")
+--- a/examples/example1/example1.c
++++ b/examples/example1/example1.c
+@@ -50,7 +50,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa1);
+
+-int main()
++int main(void)
+ {
+ struct timespec ts;
+
+--- a/examples/example1_v2/example1.c
++++ b/examples/example1_v2/example1.c
+@@ -50,7 +50,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa1);
+
+-int main()
++int main(void)
+ {
+ struct timespec ts;
+
+--- a/examples/example2/example2.c
++++ b/examples/example2/example2.c
+@@ -52,7 +52,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa2);
+
+-int main()
++int main(void)
+ {
+ int num;
+ struct timespec ts;
+--- a/examples/example2_v2/example2.c
++++ b/examples/example2_v2/example2.c
+@@ -52,7 +52,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa2);
+
+-int main()
++int main(void)
+ {
+ int num;
+ struct timespec ts;
+--- a/examples/example3/example3.c
++++ b/examples/example3/example3.c
+@@ -52,7 +52,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa3);
+
+-int main()
++int main(void)
+ {
+ int num;
+ struct timespec ts;
+--- a/examples/example3_v2/example3.c
++++ b/examples/example3_v2/example3.c
+@@ -52,7 +52,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa3);
+
+-int main()
++int main(void)
+ {
+ int num;
+ struct timespec ts;
+--- a/examples/example4/example4.c
++++ b/examples/example4/example4.c
+@@ -50,7 +50,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa1);
+
+-int main()
++int main(void)
+ {
+ unsigned char buffer[256];
+ int num;
+--- a/examples/example4_v2/example4.c
++++ b/examples/example4_v2/example4.c
+@@ -50,7 +50,7 @@
+
+ DLT_DECLARE_CONTEXT(con_exa1);
+
+-int main()
++int main(void)
+ {
+ unsigned char buffer[256];
+ int num;
+--- a/src/console/dlt-control-v2.c
++++ b/src/console/dlt-control-v2.c
+@@ -129,7 +129,7 @@ typedef struct {
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/console/dlt-passive-node-ctrl.c
++++ b/src/console/dlt-passive-node-ctrl.c
+@@ -118,7 +118,7 @@ void set_node_id(char *id)
+ }
+ }
+
+-char *get_node_id()
++char *get_node_id(void)
+ {
+ return g_options.node_id;
+ }
+@@ -211,7 +211,7 @@ static int dlt_passive_node_analyze_resp
+ *
+ * @return Pointer ot DltControlMsgBody, NULL otherwise
+ */
+-DltControlMsgBody *dlt_passive_node_prepare_message_body()
++DltControlMsgBody *dlt_passive_node_prepare_message_body(void)
+ {
+ DltControlMsgBody *mb = calloc(1, sizeof(DltControlMsgBody));
+ char *ecuid = get_node_id();
+@@ -271,7 +271,7 @@ void dlt_passive_node_destroy_message_bo
+ *
+ * @return 0 on success, -1 on error
+ */
+-static int dlt_passive_node_ctrl_single_request()
++static int dlt_passive_node_ctrl_single_request(void)
+ {
+ int ret = -1;
+
+@@ -301,7 +301,7 @@ static int dlt_passive_node_ctrl_single_
+ return ret;
+ }
+
+-static void usage()
++static void usage(void)
+ {
+ printf("Usage: dlt-passive-node-ctrl [options]\n");
+ printf("Send a trigger to DLT daemon to (dis)connect a passive node "
+--- a/src/console/dlt-receive-v2.c
++++ b/src/console/dlt-receive-v2.c
+@@ -144,7 +144,7 @@ typedef struct {
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/console/dlt-sortbytimestamp.c
++++ b/src/console/dlt-sortbytimestamp.c
+@@ -194,7 +194,7 @@ void write_messages(int ohandle, DltFile
+ /**
+ * Print usage information of tool.
+ */
+-void usage() {
++void usage(void) {
+ char version[DLT_VERBUFSIZE];
+
+ dlt_get_version(version, DLT_VERBUFSIZE);
+--- a/src/console/logstorage/dlt-logstorage-ctrl.c
++++ b/src/console/logstorage/dlt-logstorage-ctrl.c
+@@ -354,7 +354,7 @@ static int dlt_logstorage_ctrl_setup_eve
+ *
+ * @return 0 on success, -1 otherwise.
+ */
+-static int dlt_logstorage_ctrl_single_request()
++static int dlt_logstorage_ctrl_single_request(void)
+ {
+ int ret = 0;
+
+--- a/src/daemon/dlt-daemon.c
++++ b/src/daemon/dlt-daemon.c
+@@ -207,7 +207,7 @@ void close_pipes(int fds[2])
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[DLT_DAEMON_TEXTBUFSIZE];
+ dlt_get_version(version, DLT_DAEMON_TEXTBUFSIZE);
+@@ -2489,7 +2489,7 @@ void dlt_daemon_local_cleanup(DltDaemon
+ free(daemon_local->flags.ipNodes);
+ }
+
+-void dlt_daemon_exit_trigger()
++void dlt_daemon_exit_trigger(void)
+ {
+ /* stop event loop */
+ g_exit = -1;
+@@ -2655,7 +2655,7 @@ int dlt_daemon_log_internal(DltDaemon *d
+
+ msg.storageheadersizev2 = (uint32_t)(STORAGE_HEADER_V2_FIXED_SIZE + strlen(DLT_DAEMON_ECU_ID));
+ msg.baseheadersizev2 = BASE_HEADER_V2_FIXED_SIZE;
+- msg.baseheaderextrasizev2 = (int32_t)dlt_message_get_extraparameters_size_v2(msgcontent);
++ msg.baseheaderextrasizev2 = (uint32_t)dlt_message_get_extraparameters_size_v2(msgcontent);
+ /* Ecu Id, App Id, Ctx Id and Session Id*/
+ msg.extendedheadersizev2 = (uint32_t)(1 + strlen(DLT_DAEMON_ECU_ID) + 1 + strlen(app_id) + 1 + strlen(ctx_id) + sizeof(uint32_t));
+
+--- a/src/daemon/dlt-daemon.h
++++ b/src/daemon/dlt-daemon.h
+@@ -217,7 +217,7 @@ int dlt_daemon_local_connection_init(Dlt
+ int dlt_daemon_local_ecu_version_init(DltDaemon *daemon, DltDaemonLocal *daemon_local, int verbose);
+
+ void dlt_daemon_daemonize(int verbose);
+-void dlt_daemon_exit_trigger();
++void dlt_daemon_exit_trigger(void);
+ void dlt_daemon_signal_handler(int sig);
+ #ifdef __QNX__
+ void dlt_daemon_cleanup_timers();
+--- a/src/daemon/dlt_daemon_client.c
++++ b/src/daemon/dlt_daemon_client.c
+@@ -817,7 +817,7 @@ int dlt_daemon_client_send_control_messa
+
+ msg->storageheadersizev2 = (uint32_t)(STORAGE_HEADER_V2_FIXED_SIZE + (daemon->ecuid2len));
+ msg->baseheadersizev2 = BASE_HEADER_V2_FIXED_SIZE;
+- msg->baseheaderextrasizev2 = (int32_t)dlt_message_get_extraparameters_size_v2(DLT_CONTROL_MSG);
++ msg->baseheaderextrasizev2 = (uint32_t)dlt_message_get_extraparameters_size_v2(DLT_CONTROL_MSG);
+ msg->extendedheadersizev2 = (uint32_t)((daemon->ecuid2len) + 1 + appidlen + 1 + ctxidlen + 1);
+
+ msg->headersizev2 = (int32_t)(msg->storageheadersizev2 + msg->baseheadersizev2 +
+@@ -5388,7 +5388,7 @@ void dlt_daemon_control_passive_node_con
+
+ con = &daemon_local->pGateway.connections[i];
+
+- resp->connection_status[i] = con->status;
++ resp->connection_status[i] = (uint8_t)con->status;
+ //TBD: Review node_id[i * con->ecuid2len]
+ memcpy(&resp->node_id[i * con->ecuid2len], con->ecuid2, con->ecuid2len);
+ }
+@@ -5471,7 +5471,7 @@ void dlt_daemon_control_passive_node_con
+
+ con = &daemon_local->pGateway.connections[i];
+
+- resp->connection_status[i] = con->status;
++ resp->connection_status[i] = (uint8_t)con->status;
+ memcpy(&resp->node_id[i * DLT_ID_SIZE], con->ecuid, DLT_ID_SIZE);
+ }
+
+--- a/src/examples/dlt-example-filetransfer.c
++++ b/src/examples/dlt-example-filetransfer.c
+@@ -84,9 +84,10 @@ bool shutdownStatus = false;
+ * The function will set the flag (shutdownStatus) to true after .2 sec
+ * @return Null to stop thread
+ */
+-void *cancel_filetransfer()
++void *cancel_filetransfer(void* arg)
+ {
+ // wait 200msec once a filetransfer is started and then set the flag to true
++ (void)arg;
+ struct timespec ts;
+ ts.tv_sec = 0;
+ ts.tv_nsec = 200000000; // 200 ms
+@@ -99,8 +100,9 @@ void *cancel_filetransfer()
+ * The function will start dlt filetransfer and will throw error if status of shutdownStatus is high
+ * @return Null to stop thread
+ */
+-void *filetransfer()
++void *filetransfer(void* arg)
+ {
++ (void)arg;
+ int transferResult;
+
+ transferResult = dlt_user_log_file_header(&fileContext, file);
+@@ -125,7 +127,7 @@ void *filetransfer()
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/examples/dlt-example-multicast-clientmsg-view.c
++++ b/src/examples/dlt-example-multicast-clientmsg-view.c
+@@ -96,7 +96,7 @@ int dlt_receive_message_callback_udp(Dlt
+ {
+ static char text[DLT_RECEIVE_TEXTBUFSIZE];
+
+- if ((message == NULL)) {
++ if (message == NULL) {
+ printf("NULL message in dlt_receive_message_callback_udp\n");
+ return -1;
+ }
+@@ -119,7 +119,7 @@ int dlt_receive_message_callback_udp(Dlt
+ }
+
+
+-int main()
++int main(void)
+ {
+ struct clientinfostruct clientinfo;
+ struct ip_mreq mreq;
+--- a/src/examples/dlt-example-user-common-api.c
++++ b/src/examples/dlt-example-user-common-api.c
+@@ -66,7 +66,7 @@ DLT_DECLARE_CONTEXT(mycontext)
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/examples/dlt-example-user-func-v2.c
++++ b/src/examples/dlt-example-user-func-v2.c
+@@ -84,7 +84,7 @@ DltContextData mycontextdata;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/examples/dlt-example-user-func.c
++++ b/src/examples/dlt-example-user-func.c
+@@ -82,7 +82,7 @@ DltContextData mycontextdata;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/examples/dlt-example-user-v2.c
++++ b/src/examples/dlt-example-user-v2.c
+@@ -88,7 +88,7 @@ DLT_DECLARE_CONTEXT(mycontext3)
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+@@ -458,4 +458,4 @@ int dlt_user_injection_callback_with_spe
+ void dlt_user_log_level_changed_callback_v2(char *context_id, uint8_t log_level, uint8_t trace_status)
+ {
+ printf("Log level changed of context %s, LogLevel=%u, TraceState=%u\n", context_id, log_level, trace_status);
+-}
+\ No newline at end of file
++}
+--- a/src/examples/dlt-example-user.c
++++ b/src/examples/dlt-example-user.c
+@@ -86,7 +86,7 @@ DLT_DECLARE_CONTEXT(mycontext3)
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/lib/dlt_env_ll.c
++++ b/src/lib/dlt_env_ll.c
+@@ -125,7 +125,8 @@ int dlt_env_helper_to_lower(char **const
+
+ int dlt_env_extract_symbolic_ll(char **const env, int8_t *ll)
+ {
+- char result[strlen("verbose") + 1];
++ char result[sizeof("verbose")];
++
+
+ if (!env || !ll) {
+ return -1;
+--- a/src/lib/dlt_user.c
++++ b/src/lib/dlt_user.c
+@@ -545,7 +545,7 @@ DltReturnValue dlt_init(void)
+
+ /* Check logging mode and internal log file is opened or not*/
+ if (logging_mode == DLT_LOG_TO_FILE && logging_handle == NULL) {
+- dlt_log_init(logging_mode);
++ dlt_log_init((int)logging_mode);
+ }
+
+ /* Initialize common part of dlt_init()/dlt_init_file() */
+@@ -2391,14 +2391,14 @@ DltReturnValue dlt_set_application_ll_ts
+
+ /* Update local structures */
+ for (i = 0; i < dlt_user.dlt_ll_ts_num_entries; i++) {
+- dlt_user.dlt_ll_ts[i].log_level = loglevel;
+- dlt_user.dlt_ll_ts[i].trace_status = tracestatus;
++ dlt_user.dlt_ll_ts[i].log_level = (int8_t)loglevel;
++ dlt_user.dlt_ll_ts[i].trace_status = (int8_t)tracestatus;
+
+ if (dlt_user.dlt_ll_ts[i].log_level_ptr)
+- *(dlt_user.dlt_ll_ts[i].log_level_ptr) = loglevel;
++ *(dlt_user.dlt_ll_ts[i].log_level_ptr) = (int8_t)loglevel;
+
+ if (dlt_user.dlt_ll_ts[i].trace_status_ptr)
+- *(dlt_user.dlt_ll_ts[i].trace_status_ptr) = tracestatus;
++ *(dlt_user.dlt_ll_ts[i].trace_status_ptr) = (int8_t)tracestatus;
+ }
+
+ dlt_mutex_unlock();
+@@ -2413,7 +2413,7 @@ DltReturnValue dlt_set_application_ll_ts
+ }
+ }
+
+-int dlt_get_log_state()
++int dlt_get_log_state(void)
+ {
+ return dlt_user.log_state;
+ }
+@@ -2500,25 +2500,6 @@ DltReturnValue dlt_user_log_write_start_
+ return DLT_RETURN_TRUE;
+ }
+
+-static DltReturnValue dlt_user_log_write_start_internal(DltContext *handle,
+- DltContextData *log,
+- DltLogLevelType loglevel,
+- uint32_t messageid,
+- bool is_verbose);
+-
+-inline DltReturnValue dlt_user_log_write_start(DltContext *handle, DltContextData *log, DltLogLevelType loglevel)
+-{
+- return dlt_user_log_write_start_internal(handle, log, loglevel, DLT_USER_DEFAULT_MSGID, true);
+-}
+-
+-DltReturnValue dlt_user_log_write_start_id(DltContext *handle,
+- DltContextData *log,
+- DltLogLevelType loglevel,
+- uint32_t messageid)
+-{
+- return dlt_user_log_write_start_internal(handle, log, loglevel, messageid, false);
+-}
+-
+ DltReturnValue dlt_user_log_write_start_internal(DltContext *handle,
+ DltContextData *log,
+ DltLogLevelType loglevel,
+@@ -2587,6 +2568,19 @@ DltReturnValue dlt_user_log_write_start_
+ return ret;
+ }
+
++inline DltReturnValue dlt_user_log_write_start(DltContext *handle, DltContextData *log, DltLogLevelType loglevel)
++{
++ return dlt_user_log_write_start_internal(handle, log, loglevel, DLT_USER_DEFAULT_MSGID, true);
++}
++
++DltReturnValue dlt_user_log_write_start_id(DltContext *handle,
++ DltContextData *log,
++ DltLogLevelType loglevel,
++ uint32_t messageid)
++{
++ return dlt_user_log_write_start_internal(handle, log, loglevel, messageid, false);
++}
++
+ DltReturnValue dlt_user_log_write_start_w_given_buffer(DltContext *handle,
+ DltContextData *log,
+ DltLogLevelType loglevel,
+@@ -3746,7 +3740,7 @@ DltReturnValue dlt_user_trace_network_se
+ }
+
+ log.args_num = 0;
+- log.trace_status = nw_trace_type;
++ log.trace_status = (int32_t)nw_trace_type;
+ log.size = 0;
+
+ gettimeofday(&tv, NULL);
+@@ -3848,7 +3842,7 @@ DltReturnValue dlt_user_trace_network_se
+ }
+
+ log.args_num = 0;
+- log.trace_status = nw_trace_type;
++ log.trace_status = (int32_t)nw_trace_type;
+ log.size = 0;
+
+ /* Write identifier */
+@@ -3917,7 +3911,7 @@ DltReturnValue dlt_user_trace_network_se
+ }
+
+ log.args_num = 0;
+- log.trace_status = nw_trace_type;
++ log.trace_status = (int32_t)nw_trace_type;
+ log.size = 0;
+
+ /* Write identifier */
+@@ -4184,7 +4178,7 @@ DltReturnValue dlt_user_trace_network_tr
+ }
+
+ log.args_num = 0;
+- log.trace_status = nw_trace_type;
++ log.trace_status = (int32_t)nw_trace_type;
+ log.size = 0;
+
+ if (header == NULL)
+@@ -4556,7 +4550,7 @@ DltReturnValue dlt_log_raw_v2(DltContext
+ return DLT_RETURN_OK;
+ }
+
+-DltReturnValue dlt_log_marker()
++DltReturnValue dlt_log_marker(void)
+ {
+ if (!DLT_USER_INITIALIZED) {
+ if (dlt_init() < DLT_RETURN_OK) {
+@@ -6299,8 +6293,8 @@ DltReturnValue dlt_send_app_ll_ts_limit(
+
+ /* set usercontext */
+ dlt_set_id(usercontext.apid, apid); /* application id */
+- usercontext.log_level = loglevel;
+- usercontext.trace_status = tracestatus;
++ usercontext.log_level = (uint8_t)loglevel;
++ usercontext.trace_status = (uint8_t)tracestatus;
+
+ if (dlt_user.dlt_is_file)
+ return DLT_RETURN_OK;
+@@ -6354,8 +6348,8 @@ DltReturnValue dlt_send_app_ll_ts_limit_
+ }
+ usercontext.apidlen = (uint8_t)apidlen_sz;
+ dlt_set_id_v2(usercontext.apid, apid, usercontext.apidlen); /* application id */
+- usercontext.log_level = loglevel;
+- usercontext.trace_status = tracestatus;
++ usercontext.log_level = (uint8_t)loglevel;
++ usercontext.trace_status = (uint8_t)tracestatus;
+
+ size_t buffersize = sizeof(uint8_t) + usercontext.apidlen + sizeof(uint8_t) + sizeof(uint8_t);
+ uint8_t buffer[DLT_ID_SIZE + 3];
+@@ -6435,7 +6429,7 @@ DltReturnValue dlt_user_log_send_log_mod
+ return DLT_RETURN_OK;
+ }
+
+-DltReturnValue dlt_user_log_send_marker()
++DltReturnValue dlt_user_log_send_marker(void)
+ {
+ DltUserHeader userheader;
+ DltReturnValue ret;
+@@ -7349,7 +7343,7 @@ void dlt_user_test_corrupt_message_size(
+ #endif
+
+
+-int dlt_start_threads()
++int dlt_start_threads(void)
+ {
+ struct timespec time_to_wait, single_wait;
+ struct timespec now;
+@@ -7438,7 +7432,7 @@ int dlt_start_threads()
+ return 0;
+ }
+
+-void dlt_stop_threads()
++void dlt_stop_threads(void)
+ {
+ int dlt_housekeeperthread_result = 0;
+ int joined = 0;
+@@ -7510,7 +7504,7 @@ void dlt_stop_threads()
+ #endif /* DLT_NETWORK_TRACE_ENABLE */
+ }
+
+-static void dlt_fork_child_fork_handler()
++static void dlt_fork_child_fork_handler(void)
+ {
+ g_dlt_is_child = 1;
+ dlt_user_init_state = INIT_UNITIALIZED;
+--- a/src/offlinelogstorage/dlt_offline_logstorage.c
++++ b/src/offlinelogstorage/dlt_offline_logstorage.c
+@@ -1732,7 +1732,7 @@ DLT_STATIC int dlt_daemon_offline_setup_
+ continue;
+
+ /* check value and store temporary */
+- ret = dlt_logstorage_check_param(&tmp_data, i, value);
++ ret = dlt_logstorage_check_param(&tmp_data, (DltLogstorageFilterConfType)i, value);
+
+ if (ret != 0) {
+ if (tmp_data.apids != NULL) {
+--- a/src/shared/dlt_log.c
++++ b/src/shared/dlt_log.c
+@@ -113,7 +113,7 @@ DltReturnValue dlt_log_init_multiple_log
+ return result;
+ }
+
+-DltReturnValue dlt_log_init_single_logfile()
++DltReturnValue dlt_log_init_single_logfile(void)
+ {
+ /* internal logging to file */
+ errno = 0;
+@@ -333,14 +333,14 @@ void dlt_log_free(void)
+ }
+ }
+
+-void dlt_log_free_single_logfile()
++void dlt_log_free_single_logfile(void)
+ {
+ if (logging_handle != NULL) {
+ fclose(logging_handle);
+ }
+ }
+
+-void dlt_log_free_multiple_logfiles()
++void dlt_log_free_multiple_logfiles(void)
+ {
+ if (DLT_RETURN_ERROR == multiple_files_buffer_free(&multiple_files_ring_buffer)) return;
+
+@@ -348,7 +348,7 @@ void dlt_log_free_multiple_logfiles()
+ multiple_files_ring_buffer.ohandle = -1;
+ }
+
+-bool dlt_is_log_in_multiple_files_active()
++bool dlt_is_log_in_multiple_files_active(void)
+ {
+ return multiple_files_ring_buffer.ohandle > -1;
+ }
+--- a/src/system/dlt-system-journal.c
++++ b/src/system/dlt-system-journal.c
+@@ -73,7 +73,7 @@ typedef struct
+ DLT_IMPORT_CONTEXT(dltsystem)
+ DLT_DECLARE_CONTEXT(journalContext)
+
+-int journal_checkUserBufferForFreeSpace()
++int journal_checkUserBufferForFreeSpace(void)
+ {
+ int total_size, used_size;
+
+@@ -87,7 +87,7 @@ int journal_checkUserBufferForFreeSpace(
+
+ int dlt_system_journal_get(sd_journal *j, char *target, const char *field, size_t max_size)
+ {
+- char *data;
++ const char *data;
+ size_t length;
+ int error_code;
+ size_t field_size;
+@@ -100,7 +100,9 @@ int dlt_system_journal_get(sd_journal *j
+ target[0] = 0;
+
+ /* get data from journal */
+- error_code = sd_journal_get_data(j, field, (const void **)&data, &length);
++ const void *tmp;
++ error_code = sd_journal_get_data(j, field, &tmp, &length);
++ data = (const char *)tmp;
+
+ /* check if an error */
+ if (error_code)
+--- a/src/system/dlt-system-process-handling.c
++++ b/src/system/dlt-system-process-handling.c
+@@ -72,7 +72,7 @@ volatile uint8_t quit = 0;
+ extern s_ft_inotify ino;
+ #endif
+
+-int daemonize()
++int daemonize(void)
+ {
+ DLT_LOG(dltsystem, DLT_LOG_DEBUG,
+ DLT_STRING("dlt-system-process-handling, daemonize"));
+--- a/src/system/dlt-system-shell.c
++++ b/src/system/dlt-system-shell.c
+@@ -112,7 +112,7 @@ int dlt_shell_injection_callback(uint32_
+ return 0;
+ }
+
+-void init_shell()
++void init_shell(void)
+ {
+ DLT_LOG(dltsystem, DLT_LOG_DEBUG,
+ DLT_STRING("dlt-system-shell, register callback"));
+--- a/src/system/dlt-system.h
++++ b/src/system/dlt-system.h
+@@ -193,8 +193,8 @@ int read_configuration_file(DltSystemCon
+ void cleanup_config(DltSystemConfiguration *config, DltSystemCliOptions *options);
+
+ /* For dlt-process-handling.c */
+-int daemonize();
+-void init_shell();
++int daemonize(void);
++void init_shell(void);
+ void dlt_system_signal_handler(int sig);
+
+ /* Main function for creating/registering all needed file descriptors and starting the poll for all of them. */
+--- a/src/tests/dlt-test-client-v2.c
++++ b/src/tests/dlt-test-client-v2.c
+@@ -125,7 +125,7 @@ typedef struct
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-fork-handler-v2.c
++++ b/src/tests/dlt-test-fork-handler-v2.c
+@@ -91,7 +91,7 @@ void dlt_log_message(DltContext *context
+ /**
+ * @brief sample code for using at_fork-handler
+ */
+-int main()
++int main(void)
+ {
+ DltContext mainContext;
+ struct timespec timeout, r;
+--- a/src/tests/dlt-test-fork-handler.c
++++ b/src/tests/dlt-test-fork-handler.c
+@@ -49,7 +49,7 @@ void dlt_log_message(DltContext *context
+ /**
+ * @brief sample code for using at_fork-handler
+ */
+-int main()
++int main(void)
+ {
+ DltContext mainContext;
+ struct timespec timeout, r;
+--- a/src/tests/dlt-test-multi-process-v2.c
++++ b/src/tests/dlt-test-multi-process-v2.c
+@@ -112,11 +112,11 @@ typedef struct {
+ /* Forward declarations */
+ void init_params(s_parameters *params);
+ void quit_handler(int signum);
+-void cleanup();
++void cleanup(void);
+ void do_forks(s_parameters params);
+ void run_threads(s_parameters params);
+ void *do_logging(void *data);
+-int wait_for_death();
++int wait_for_death(void);
+
+ /* State information */
+ volatile sig_atomic_t in_handler = 0;
+@@ -323,7 +323,7 @@ void quit_handler(int signum)
+ /**
+ * Ask the child processes to die
+ */
+-void cleanup()
++void cleanup(void)
+ {
+ unsigned int i;
+
+@@ -458,7 +458,7 @@ void run_threads(s_parameters params)
+ /**
+ * Wait for child processes to complete their work.
+ */
+-int wait_for_death()
++int wait_for_death(void)
+ {
+ int pids_left = (int) pidcount;
+
+--- a/src/tests/dlt-test-multi-process.c
++++ b/src/tests/dlt-test-multi-process.c
+@@ -89,11 +89,11 @@ typedef struct {
+ /* Forward declarations */
+ void init_params(s_parameters *params);
+ void quit_handler(int signum);
+-void cleanup();
++void cleanup(void);
+ void do_forks(s_parameters params);
+ void run_threads(s_parameters params);
+ void *do_logging(void *arg);
+-int wait_for_death();
++int wait_for_death(void);
+
+ /* State information */
+ volatile sig_atomic_t in_handler = 0;
+@@ -300,7 +300,7 @@ void quit_handler(int signum)
+ /**
+ * Ask the child processes to die
+ */
+-void cleanup()
++void cleanup(void)
+ {
+ unsigned int i;
+
+@@ -435,7 +435,7 @@ void run_threads(s_parameters params)
+ /**
+ * Wait for child processes to complete their work.
+ */
+-int wait_for_death()
++int wait_for_death(void)
+ {
+ int pids_left = (int) pidcount;
+
+--- a/src/tests/dlt-test-non-verbose.c
++++ b/src/tests/dlt-test-non-verbose.c
+@@ -58,7 +58,7 @@ DltContextData context_data;
+
+ void dlt_user_log_level_changed_callback(char context_id[DLT_ID_SIZE],uint8_t log_level,uint8_t trace_status);
+
+-void usage()
++void usage(void)
+ {
+ char version[DLT_COMMON_BUFFER_LENGTH];
+
+@@ -84,7 +84,7 @@ void usage()
+ /******************/
+ /* The test cases */
+ /******************/
+-int test_logstorage()
++int test_logstorage(void)
+ {
+ int delay = LOG_DELAY;
+ int i;
+--- a/src/tests/dlt-test-preregister-context-v2.c
++++ b/src/tests/dlt-test-preregister-context-v2.c
+@@ -72,7 +72,7 @@
+ /**
+ * @brief sample code for using pre-registered contexts
+ */
+-int main()
++int main(void)
+ {
+ DltContext mainContext;
+ struct timespec ts;
+--- a/src/tests/dlt-test-preregister-context.c
++++ b/src/tests/dlt-test-preregister-context.c
+@@ -30,7 +30,7 @@
+ /**
+ * @brief sample code for using pre-registered contexts
+ */
+-int main()
++int main(void)
+ {
+ DltContext mainContext;
+ struct timespec ts;
+--- a/src/tests/dlt-test-qnx-slogger.c
++++ b/src/tests/dlt-test-qnx-slogger.c
+@@ -28,7 +28,7 @@
+ #define DELAY 500
+ #define LENGTH 100
+
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-stress-client-v2.c
++++ b/src/tests/dlt-test-stress-client-v2.c
+@@ -127,7 +127,7 @@ typedef struct
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-stress-user-v2.c
++++ b/src/tests/dlt-test-stress-user-v2.c
+@@ -86,7 +86,7 @@ DltContextData context_data;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-stress-v2.c
++++ b/src/tests/dlt-test-stress-v2.c
+@@ -104,7 +104,7 @@ char *env_manual_interruption = 0;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-stress.c
++++ b/src/tests/dlt-test-stress.c
+@@ -105,7 +105,7 @@ char *env_manual_interruption = 0;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-user-v2.c
++++ b/src/tests/dlt-test-user-v2.c
+@@ -142,7 +142,7 @@ DltContextData context_data;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/tests/dlt-test-user.c
++++ b/src/tests/dlt-test-user.c
+@@ -144,7 +144,7 @@ DltContextData context_data;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/tests/dlt_test_receiver.c
++++ b/tests/dlt_test_receiver.c
+@@ -107,7 +107,7 @@ int result = 0;
+ /**
+ * Print usage information of tool.
+ */
+-void usage()
++void usage(void)
+ {
+ char version[255];
+
+--- a/src/shared/dlt_common.c
++++ b/src/shared/dlt_common.c
+@@ -6108,7 +6108,7 @@ DltReturnValue dlt_message_argument_prin
+ return DLT_RETURN_OK;
+ }
+
+-void dlt_check_envvar()
++void dlt_check_envvar(void)
+ {
+ char *env_log_filename = getenv("DLT_LOG_FILENAME");
+
+--- a/src/system/dlt-system-filetransfer.c
++++ b/src/system/dlt-system-filetransfer.c
+@@ -724,10 +724,14 @@ int process_files(FiletransferOptions co
+ }
+
+ char *tosend = malloc(length);
++#ifndef __clang__
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wformat-truncation="
++#endif
+ snprintf(tosend, length, "%s/%s", opts->Directory[j], ie->name);
++#ifndef __clang__
+ #pragma GCC diagnostic pop
++#endif
+ send_one(tosend, opts, j);
+ free(tosend);
+ }
@@ -23,6 +23,7 @@ SRC_URI = "git://github.com/COVESA/${BPN}.git;protocol=https;branch=master \
file://0001-fix-build-failure-when-systemd-is-enabled.patch \
file://0001-Fix-build-failure-with-glibc-2.43.patch \
file://0001-CMakeLists.txt-make-CONFIGURATION_FILES_DIR-aligned.patch \
+ file://0001-warnings-Fix-clang-generated-warnings.patch \
"
SRCREV = "f595ea29d1007ca1c3b2d1fd3a88adf7d3db6320"
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com> --- ...arnings-Fix-clang-generated-warnings.patch | 1003 +++++++++++++++++ .../dlt-daemon/dlt-daemon_3.0.0.bb | 1 + 2 files changed, 1004 insertions(+) create mode 100644 meta-oe/recipes-extended/dlt-daemon/dlt-daemon/0001-warnings-Fix-clang-generated-warnings.patch