summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2015-03-18 18:09:08 +0100
committerLubomir Rintel <lkundrak@v3.sk>2015-03-19 11:48:49 +0100
commit37f13c5375ffd95c0c00e80db1304ee87bab8106 (patch)
tree72436501ea78ac3e8f82fed15e8b292520550c8e
parent50e9248bd2d05e912ad546436b28c2db5802436c (diff)
build: disable warnings where macros expand to tautological comparisons
-rw-r--r--m4/compiler_warnings.m42
-rw-r--r--src/nm-logging.h2
-rw-r--r--src/platform/tests/test-common.c2
-rw-r--r--src/platform/tests/test-link.c2
4 files changed, 7 insertions, 1 deletions
diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4
index 412acb975..05bc9a066 100644
--- a/m4/compiler_warnings.m4
+++ b/m4/compiler_warnings.m4
@@ -29,7 +29,7 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
-fno-strict-aliasing -Wno-unused-but-set-variable \
-Wundef -Wimplicit-function-declaration \
-Wpointer-arith -Winit-self \
- -Wmissing-include-dirs; do
+ -Wmissing-include-dirs -Wno-pragmas; do
dnl GCC 4.4 does not warn when checking for -Wno-* flags (https://gcc.gnu.org/wiki/FAQ#wnowarning)
CFLAGS="$CFLAGS_MORE_WARNINGS $CFLAGS_EXTRA $(printf '%s' "$option" | sed 's/^-Wno-/-W/') $CFLAGS_SAVED"
AC_MSG_CHECKING([whether gcc understands $option])
diff --git a/src/nm-logging.h b/src/nm-logging.h
index 7417dfa0f..4ae9c0268 100644
--- a/src/nm-logging.h
+++ b/src/nm-logging.h
@@ -116,11 +116,13 @@ typedef enum { /*< skip >*/
/* log a message for an object (with providing a generic @self pointer) */
#define nm_log_ptr(level, domain, self, ...) \
G_STMT_START { \
+ NM_PRAGMA_WARNING_DISABLE("-Wtautological-compare") \
if ((level) <= LOGL_DEBUG) { \
_nm_log_ptr ((level), (domain), (self), __VA_ARGS__); \
} else { \
nm_log ((level), (domain), __VA_ARGS__); \
} \
+ NM_PRAGMA_WARNING_REENABLE \
} G_STMT_END
diff --git a/src/platform/tests/test-common.c b/src/platform/tests/test-common.c
index 3e716bf8c..d8e8775f8 100644
--- a/src/platform/tests/test-common.c
+++ b/src/platform/tests/test-common.c
@@ -257,6 +257,7 @@ main (int argc, char **argv)
nmtst_init_with_logging (&argc, &argv, NULL, "ALL");
+ NM_PRAGMA_WARNING_DISABLE("-Wtautological-compare")
if (SETUP == nm_linux_platform_setup && getuid() != 0) {
/* Try to exec as sudo, this function does not return, if a sudo-cmd is set. */
nmtst_reexec_sudo ();
@@ -269,6 +270,7 @@ main (int argc, char **argv)
return 77;
#endif
}
+ NM_PRAGMA_WARNING_REENABLE
SETUP ();
diff --git a/src/platform/tests/test-link.c b/src/platform/tests/test-link.c
index 8bd2ef44d..ec4f9ba20 100644
--- a/src/platform/tests/test-link.c
+++ b/src/platform/tests/test-link.c
@@ -365,12 +365,14 @@ test_bridge (void)
static void
test_bond (void)
{
+ NM_PRAGMA_WARNING_DISABLE("-Wtautological-compare")
if (SETUP == nm_linux_platform_setup &&
!g_file_test ("/proc/1/net/bonding", G_FILE_TEST_IS_DIR) &&
system("modprobe --show bonding") != 0) {
g_test_skip ("Skipping test for bonding: bonding module not available");
return;
}
+ NM_PRAGMA_WARNING_REENABLE
test_software (NM_LINK_TYPE_BOND, "bond");
}