diff --git a/daemon/bin/dbus/dbusclient.cpp b/daemon/bin/dbus/dbusclient.cpp
index 2ec27fccb21f4e6dfb7864cba3637ab8421c5276..a1e885d568f55e4ea9bb85c163adda70e3a67e81 100644
--- a/daemon/bin/dbus/dbusclient.cpp
+++ b/daemon/bin/dbus/dbusclient.cpp
@@ -209,18 +209,18 @@ int DBusClient::initLibrary(int sflphFlags)
 #endif // SFL_VIDEO
 
     // All event handlers
-    sflph_ev_handlers evHandlers = {};
-
-    evHandlers.call_ev_handlers = callEvHandlers;
-    evHandlers.config_ev_handlers = configEvHandlers;
+    sflph_ev_handlers evHandlers = {
+        .call_ev_handlers = callEvHandlers,
+        .config_ev_handlers = configEvHandlers,
 
 #ifdef SFL_PRESENCE
-    evHandlers.pres_ev_handlers = presEvHandlers;
+        .pres_ev_handlers = presEvHandlers,
 #endif // SFL_PRESENCE
 
 #ifdef SFL_VIDEO
-    evHandlers.video_ev_handlers = videoEvHandlers;
+        .video_ev_handlers = videoEvHandlers
 #endif // SFL_VIDEO
+    };
 
     // Initialize now
     return sflph_init(&evHandlers, static_cast<sflph_init_flag>(sflphFlags));
diff --git a/daemon/src/client/callmanager.h b/daemon/src/client/callmanager.h
index 17826347f4f7af2e939a3a536075b8247c9ff58e..517fae543b4b9687db0f4c07b463095e3eed4d3e 100644
--- a/daemon/src/client/callmanager.h
+++ b/daemon/src/client/callmanager.h
@@ -161,8 +161,10 @@ class CallManager
 #endif
 
     private:
+#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
         // Event handlers; needed by the library API
         sflph_call_ev_handlers evHandlers_{};
+#pragma GCC diagnostic warning "-Wmissing-field-initializers"
 };
 
 #endif//CALLMANAGER_H
diff --git a/daemon/src/client/configurationmanager.h b/daemon/src/client/configurationmanager.h
index c2d36ee97669b1118f35801213a39b39eb1271dc..b49f1a9ddeeb679c9ae40e3ebd0e3263c8b1d8c0 100644
--- a/daemon/src/client/configurationmanager.h
+++ b/daemon/src/client/configurationmanager.h
@@ -160,8 +160,10 @@ class ConfigurationManager
         std::vector< int32_t > getHardwareAudioFormat();
 
     private:
+#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
         // Event handlers; needed by the library API
         sflph_config_ev_handlers evHandlers_{};
+#pragma GCC diagnostic warning "-Wmissing-field-initializers"
 };
 
 #endif //CONFIGURATIONMANAGER_H
diff --git a/daemon/src/client/presencemanager.h b/daemon/src/client/presencemanager.h
index 9dc96ba887919853b01a50faf18c838cae26f4ee..b5282626c5cff773acb0692c60ea1f3d834b9ff4 100644
--- a/daemon/src/client/presencemanager.h
+++ b/daemon/src/client/presencemanager.h
@@ -64,8 +64,10 @@ class PresenceManager
                                   const bool& state);
 
     private:
+#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
         // Event handlers; needed by the library API
-        struct sflph_pres_ev_handlers evHandlers_{};
+        sflph_pres_ev_handlers evHandlers_{};
+#pragma GCC diagnostic warning "-Wmissing-field-initializers"
 };
 
 #endif //PRESENCEINT_H
diff --git a/daemon/src/client/videomanager.h b/daemon/src/client/videomanager.h
index c02bc362673b487bf41d977d20ab784435f53922..e83c374ca21476478544cf45b5262c0a279a153c 100644
--- a/daemon/src/client/videomanager.h
+++ b/daemon/src/client/videomanager.h
@@ -110,7 +110,9 @@ class VideoManager
         void stoppedDecoding(const std::string &id, const std::string& shmPath, bool isMixer);
 
     private:
+#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
         sflph_video_ev_handlers evHandlers_{};
+#pragma GCC diagnostic warning "-Wmissing-field-initializers"
 };
 
 #endif // VIDEOMANAGER_H_