From 4e284b637943980a405a8c44f2712b749ded428f Mon Sep 17 00:00:00 2001 From: Alexander Couzens Date: Sun, 23 Jun 2019 01:53:43 +0200 Subject: utils.h: require a semi colon after OSMO_ASSERT When using `OSMO_ASSERT(exp);` clang will warn about an empty expression because the semi colon was superflous. Use do {} while (0) to enfore the need of a semi colon. This might break other test. Change-Id: I2272d29a81496164bebd1696a694383a28a86434 --- include/osmocom/core/utils.h | 4 ++-- src/gsm/gsm0808_utils.c | 6 +++--- tests/ctrl/ctrl_test.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/osmocom/core/utils.h b/include/osmocom/core/utils.h index 601bb565..8585a6a9 100644 --- a/include/osmocom/core/utils.h +++ b/include/osmocom/core/utils.h @@ -98,9 +98,9 @@ do { \ * the predicate evaluates to false (0). */ #define OSMO_ASSERT(exp) \ - if (!(exp)) { \ + do if (!(exp)) { \ osmo_panic("Assert failed %s %s:%d\n", #exp, __FILE__, __LINE__); \ - } + } while(0) /*! duplicate a string using talloc and release its prior content (if any) * \param[in] ctx Talloc context to use for allocation diff --git a/src/gsm/gsm0808_utils.c b/src/gsm/gsm0808_utils.c index afff59aa..364a04fe 100644 --- a/src/gsm/gsm0808_utils.c +++ b/src/gsm/gsm0808_utils.c @@ -273,7 +273,7 @@ static uint8_t enc_speech_codec(struct msgb *msg, case GSM0808_SCT_FR5: case GSM0808_SCT_HR4: case GSM0808_SCT_CSD: - OSMO_ASSERT((sc->cfg & 0xff00) == 0) + OSMO_ASSERT((sc->cfg & 0xff00) == 0); msgb_put_u8(msg, (uint8_t) sc->cfg & 0xff); break; default: @@ -874,7 +874,7 @@ uint8_t gsm0808_enc_cell_id_list2(struct msgb *msg, msgb_put_u8(msg, cil->id_discr & 0x0f); - OSMO_ASSERT(cil->id_list_len <= GSM0808_CELL_ID_LIST2_MAXLEN) + OSMO_ASSERT(cil->id_list_len <= GSM0808_CELL_ID_LIST2_MAXLEN); for (i = 0; i < cil->id_list_len; i++) gsm0808_msgb_put_cell_id_u(msg, cil->id_discr, &cil->id_list[i]); @@ -906,7 +906,7 @@ uint8_t gsm0808_enc_cell_id_list(struct msgb *msg, switch (cil->id_discr) { case CELL_IDENT_LAC: - OSMO_ASSERT(cil->id_list_len <= CELL_ID_LIST_LAC_MAXLEN) + OSMO_ASSERT(cil->id_list_len <= CELL_ID_LIST_LAC_MAXLEN); for (i=0;iid_list_len;i++) { msgb_put_u16(msg, cil->id_list_lac[i]); } diff --git a/tests/ctrl/ctrl_test.c b/tests/ctrl/ctrl_test.c index cffb8039..b46e9ac5 100644 --- a/tests/ctrl/ctrl_test.c +++ b/tests/ctrl/ctrl_test.c @@ -121,7 +121,7 @@ static void assert_test(struct ctrl_handle *ctrl, struct ctrl_connection *ccon, printf("replied: '%s'\n", osmo_escape_str((char*)msgb_l2(sent_msg), -1)); OSMO_ASSERT(t->reply_str); - OSMO_ASSERT(!strcmp(t->reply_str, (char*)msgb_l2(sent_msg))) + OSMO_ASSERT(!strcmp(t->reply_str, (char*)msgb_l2(sent_msg))); msgb_free(sent_msg); } osmo_wqueue_clear(&ccon->write_queue); -- cgit v1.2.3