]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Disable -Wzero-length-bounds for the kernel for GCC 12.
authorJohn Baldwin <jhb@FreeBSD.org>
Wed, 21 Dec 2022 18:47:08 +0000 (10:47 -0800)
committerJohn Baldwin <jhb@FreeBSD.org>
Wed, 21 Dec 2022 18:48:15 +0000 (10:48 -0800)
commit1aa6d44decb33ce3eab0efe5336b75fa2dfa3733
tree9ebdeb0b3c28119f07348c3eb9ca17feb43d8b28
parent2637ed558baacdab7a8cf789dca713bde5843e43
Disable -Wzero-length-bounds for the kernel for GCC 12.

The mlx5 driver and some other OFED bits use a somewhat dubious
pattern of:

  struct foo {
      uint64_t arg[0];
      /* Real members of a struct */
  };

The code then treats 'arg' as if it were really a kind of union
such that foo.arg[N] functions similarly to (uint64_t *)foo[N].
This uses of foo.arg[N] then trigger this warning.

No real bugs were found by this warning though, so just turn it off
globally.

Reviewed by: hselasky, kib
Differential Revision: https://reviews.freebsd.org/D37630
sys/conf/kern.mk