Re: [PATCH][next] iio: cros_ec: Avoid -Wflex-array-member-not-at-end warning

From: Jonathan Cameron
Date: Mon Mar 17 2025 - 08:06:53 EST


On Mon, 17 Mar 2025 15:10:38 +1030
"Gustavo A. R. Silva" <gustavo@xxxxxxxxxxxxxx> wrote:

> On 17/03/25 12:02, Tzung-Bi Shih wrote:
> > On Mon, Mar 17, 2025 at 11:24:59AM +1030, Gustavo A. R. Silva wrote:
> >> static int cros_ec_get_host_cmd_version_mask(struct cros_ec_device *ec_dev,
> >> u16 cmd_offset, u16 cmd, u32 *mask)
> >> {
> >> + DEFINE_RAW_FLEX(struct cros_ec_command, buf, data,
> >> + sizeof(struct ec_response_get_cmd_versions));
> >
> > max(sizeof(struct ec_params_get_cmd_versions),
> > sizeof(struct ec_response_get_cmd_versions))?
>
> I considered that, but DEFINE_RAW_FLEX() complains about it due to the
>
> _Static_assert(__builtin_constant_p(count), \
> "onstack flex array members require compile-time const count");
>
Maybe add an assert that you indeed have the larger of the two + a comment
on why it matters?

> --
> Gustavo
>