From 7909ba1a56c54175a1422f5ce8ee7245edb4bbef Mon Sep 17 00:00:00 2001 From: Ting-Wei Lan Date: Fri, 26 Feb 2016 22:19:29 +0800 Subject: [PATCH] Fix -Werror build for clang and FreeBSD Replace -D_POSIX_SOURCE with -D_POSIX_C_SOURCE=200809L because the former macro limits POSIX standard version to 1003.1-1988 on FreeBSD, which causes atoll function to be unavailable. -Wtautological-constant-out-of-range-compare is ignored in a g_return_val_if_fail because the warning cannot be avoided. Self assignments are removed to prevent warnings. https://bugs.freedesktop.org/show_bug.cgi?id=94309 --- configure.ac | 2 +- telepathy-logger/entity.c | 7 +++++++ tests/dbus/test-tpl-log-iter-pidgin.c | 8 -------- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/configure.ac b/configure.ac index 4108dd9..5b15b5b 100644 --- a/configure.ac +++ b/configure.ac @@ -138,7 +138,7 @@ AC_ARG_ENABLE(Werror, AS_HELP_STRING([--disable-Werror],[compile without -Werror (normally enabled in development builds)]), werror=$enableval, werror=yes) -TP_COMPILER_FLAG(-D_POSIX_SOURCE, ERROR_CFLAGS="$ERROR_CFLAGS -D_POSIX_SOURCE") +TP_COMPILER_FLAG(-D_POSIX_C_SOURCE=200809L, ERROR_CFLAGS="$ERROR_CFLAGS -D_POSIX_C_SOURCE=200809L") TP_COMPILER_FLAG(-std=c99, ERROR_CFLAGS="$ERROR_CFLAGS -std=c99") AC_SUBST(ERROR_CFLAGS) diff --git a/telepathy-logger/entity.c b/telepathy-logger/entity.c index e2e3240..0382b9b 100644 --- a/telepathy-logger/entity.c +++ b/telepathy-logger/entity.c @@ -404,6 +404,13 @@ _tpl_entity_type_from_str (const gchar *type_str) const gchar * _tpl_entity_type_to_str (TplEntityType type) { +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wtautological-constant-out-of-range-compare" +#endif g_return_val_if_fail (G_N_ELEMENTS (entity_types) >= type, "unknown"); +#ifdef __clang__ +#pragma clang diagnostic pop +#endif return entity_types[type]; } diff --git a/tests/dbus/test-tpl-log-iter-pidgin.c b/tests/dbus/test-tpl-log-iter-pidgin.c index 5bff6d8..8271c97 100644 --- a/tests/dbus/test-tpl-log-iter-pidgin.c +++ b/tests/dbus/test-tpl-log-iter-pidgin.c @@ -158,7 +158,6 @@ test_get_events (PidginTestCaseFixture *fixture, TPL_EVENT_MASK_ANY); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -259,7 +258,6 @@ test_get_events (PidginTestCaseFixture *fixture, g_list_free_full (events, g_object_unref); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -346,7 +344,6 @@ test_get_events (PidginTestCaseFixture *fixture, g_list_free_full (events, g_object_unref); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -447,7 +444,6 @@ test_get_events (PidginTestCaseFixture *fixture, g_list_free_full (events, g_object_unref); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -571,7 +567,6 @@ test_rewind (PidginTestCaseFixture *fixture, g_assert_no_error (error); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -587,7 +582,6 @@ test_rewind (PidginTestCaseFixture *fixture, g_assert_no_error (error); events = tpl_log_iter_get_events (iter, 5, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 5); @@ -681,7 +675,6 @@ test_rewind (PidginTestCaseFixture *fixture, g_assert_no_error (error); events = tpl_log_iter_get_events (iter, 10, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 10); @@ -757,7 +750,6 @@ test_rewind (PidginTestCaseFixture *fixture, g_assert_no_error (error); events = tpl_log_iter_get_events (iter, 20, &error); - events = events; g_assert_no_error (error); g_assert (events != NULL); g_assert_cmpint (g_list_length (events), ==, 20); -- 2.7.2