closedcaption: avoid implicit convertion of enums
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Tue, 14 Aug 2018 10:36:53 +0000 (12:36 +0200)
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Tue, 14 Aug 2018 11:31:49 +0000 (13:31 +0200)
When compiling with clang-6 this error pops out:

raw_decoder.c:1011:62: error: implicit conversion from enumeration
type 'const vbi_modulation' to different enumeration type
'vbi3_modulation' [-Werror,-Wenum-conversion]

This is because function vbi3_bit_slicer_set_params() sets
vbi3_modulation as enum type parameter, nonetheless vbi_modulation
enum is passed. Both enums looks semantically equal, thus the fix is a
simple cast.

https://bugzilla.gnome.org/show_bug.cgi?id=796957

ext/closedcaption/raw_decoder.c

index b6703f4..3523842 100644 (file)
@@ -1008,7 +1008,8 @@ vbi3_raw_decoder_add_services (vbi3_raw_decoder * rd,
             par->cri_rate,
             cri_end,
             (par->cri_frc & ((1U << par->frc_bits) - 1)),
-            par->frc_bits, par->payload, par->bit_rate, par->modulation)) {
+            par->frc_bits, par->payload, par->bit_rate,
+            (vbi3_modulation) par->modulation)) {
       assert (!"bit_slicer_set_params");
     }