diff --git a/sflphone-common/src/dbus/configurationmanager.h b/sflphone-common/src/dbus/configurationmanager.h
index c8dca7d2a1f7cfed16bb9e8aa958d0ae333b71bb..84f446308542020d602846216d6aba6b43b72913 100644
--- a/sflphone-common/src/dbus/configurationmanager.h
+++ b/sflphone-common/src/dbus/configurationmanager.h
@@ -34,9 +34,12 @@
 #ifndef CONFIGURATIONMANAGER_H
 #define CONFIGURATIONMANAGER_H
 
+#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 6
+#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
+#endif
+
 #pragma GCC diagnostic ignored "-Wignored-qualifiers"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
-#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
 #include "configurationmanager-glue.h"
 #pragma GCC diagnostic warning "-Wignored-qualifiers"
 #pragma GCC diagnostic warning "-Wunused-parameter"
diff --git a/sflphone-common/src/dbus/instance.h b/sflphone-common/src/dbus/instance.h
index 93920e40e2c5b1276d7636adefc124406fecb7bc..a59ff27c82b4833c6aa58c2a4ded7e8d648b24d8 100644
--- a/sflphone-common/src/dbus/instance.h
+++ b/sflphone-common/src/dbus/instance.h
@@ -31,9 +31,12 @@
 #ifndef INSTANCE_H
 #define INSTANCE_H
 
+#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 6
+#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
+#endif
+
 #pragma GCC diagnostic ignored "-Wignored-qualifiers"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
-#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
 #include "instance-glue.h"
 #pragma GCC diagnostic warning "-Wignored-qualifiers"
 #pragma GCC diagnostic warning "-Wunused-parameter"