ASoC: Intel: Skylake: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper
authorGustavo A. R. Silva <gustavoars@kernel.org>
Mon, 26 Sep 2022 22:58:17 +0000 (17:58 -0500)
committerMark Brown <broonie@kernel.org>
Tue, 27 Sep 2022 11:08:02 +0000 (12:08 +0100)
Zero-length arrays are deprecated and we are moving towards adopting
C99 flexible-array members, instead. So, replace zero-length arrays
declarations in anonymous union with the new DECLARE_FLEX_ARRAY()
helper macro.

This helper allows for flexible-array members in unions.

Link: https://github.com/KSPP/linux/issues/193
Link: https://github.com/KSPP/linux/issues/226
Link: https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Link: https://lore.kernel.org/r/YzIuiUul2CwPlkKh@work
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/skylake/skl-topology.h

index a5bccf2..017ac0e 100644 (file)
@@ -233,8 +233,8 @@ struct skl_uuid_inst_map {
 struct skl_kpb_params {
        u32 num_modules;
        union {
-               struct skl_mod_inst_map map[0];
-               struct skl_uuid_inst_map map_uuid[0];
+               DECLARE_FLEX_ARRAY(struct skl_mod_inst_map, map);
+               DECLARE_FLEX_ARRAY(struct skl_uuid_inst_map, map_uuid);
        } u;
 };