[PATCH][next] ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper
Amadeusz Sławiński
amadeuszx.slawinski at linux.intel.com
Tue Sep 27 09:37:12 CEST 2022
On 9/27/2022 1:18 AM, Gustavo A. R. Silva wrote:
> 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/227
> Link: https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
> Signed-off-by: Gustavo A. R. Silva <gustavoars at kernel.org>
> ---
> include/uapi/sound/asoc.h | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/include/uapi/sound/asoc.h b/include/uapi/sound/asoc.h
> index 053949287ce8..dd8ad790fc15 100644
> --- a/include/uapi/sound/asoc.h
> +++ b/include/uapi/sound/asoc.h
> @@ -226,9 +226,9 @@ struct snd_soc_tplg_vendor_array {
> __le32 type; /* SND_SOC_TPLG_TUPLE_TYPE_ */
> __le32 num_elems; /* number of elements in array */
> union {
> - struct snd_soc_tplg_vendor_uuid_elem uuid[0];
> - struct snd_soc_tplg_vendor_value_elem value[0];
> - struct snd_soc_tplg_vendor_string_elem string[0];
> + __DECLARE_FLEX_ARRAY(struct snd_soc_tplg_vendor_uuid_elem, uuid);
> + __DECLARE_FLEX_ARRAY(struct snd_soc_tplg_vendor_value_elem, value);
> + __DECLARE_FLEX_ARRAY(struct snd_soc_tplg_vendor_string_elem, string);
> };
> } __attribute__((packed));
>
Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski at linux.intel.com>
More information about the Alsa-devel
mailing list