From 429a5a57dadfe4dabd366ad89461f1c5cde300d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Richard=20R=C3=B6jfors?= Date: Sun, 20 Dec 2020 11:18:27 +0000 Subject: [PATCH] util: Fix implicit enum conversion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GCC10 complains about the following: src/smsutil.c: In function ‘sms_text_prepare_with_alphabet’: src/smsutil.c:3594:8: error: implicit conversion from ‘enum sms_alphabet’ to ‘enum gsm_dialect’ [-Werror=enum-conversion] 3594 | alphabet, &used_locking, smsutil and util has an enum each for representing the same thing; The SMS alphabet. They share the same values, so an explicit type cast makes GCC happy. --- src/smsutil.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/smsutil.c b/src/smsutil.c index 450a1d38..e6556df6 100644 --- a/src/smsutil.c +++ b/src/smsutil.c @@ -3575,6 +3575,7 @@ GSList *sms_text_prepare_with_alphabet(const char *to, const char *utf8, GSList *r = NULL; enum gsm_dialect used_locking; enum gsm_dialect used_single; + enum gsm_dialect dialect; memset(&template, 0, sizeof(struct sms)); template.type = SMS_TYPE_SUBMIT; @@ -3586,12 +3587,14 @@ GSList *sms_text_prepare_with_alphabet(const char *to, const char *utf8, template.submit.vp.relative = 0xA7; /* 24 Hours */ sms_address_from_string(&template.submit.daddr, to); + /* There are two enums for the same thing */ + dialect = (enum gsm_dialect)alphabet; /* * UDHI, UDL, UD and DCS actually depend on the contents of * the text, and also on the GSM dialect we use to encode it. */ gsm_encoded = convert_utf8_to_gsm_best_lang(utf8, -1, NULL, &written, 0, - alphabet, &used_locking, + dialect, &used_locking, &used_single); if (!gsm_encoded) { size_t converted;