On Thu, 26 May 2022 at 18:14, Joe Nosay <superbisq...@gmail.com> wrote: > > The errors occur at the end of the attached file.
...which is to say: ../net/eth.c: In function ‘eth_parse_ipv6_hdr’: ../net/eth.c:410:15: error: array subscript ‘struct ip6_ext_hdr_routing[0]’ is partly outside array bounds of ‘struct ip6_ext_hdr[1]’ [-Werror=array-bounds] 410 | if ((rthdr->rtype == 2) && | ~~~~~^~~~~~~ ../net/eth.c:487:24: note: while referencing ‘ext_hdr’ 487 | struct ip6_ext_hdr ext_hdr; | ^~~~~~~ ../net/eth.c:411:15: error: array subscript ‘struct ip6_ext_hdr_routing[0]’ is partly outside array bounds of ‘struct ip6_ext_hdr[1]’ [-Werror=array-bounds] 411 | (rthdr->len == sizeof(struct in6_address) / 8) && | ~~~~~^~~~~ ../net/eth.c:487:24: note: while referencing ‘ext_hdr’ 487 | struct ip6_ext_hdr ext_hdr; | ^~~~~~~ ../net/eth.c:412:15: error: array subscript ‘struct ip6_ext_hdr_routing[0]’ is partly outside array bounds of ‘struct ip6_ext_hdr[1]’ [-Werror=array-bounds] 412 | (rthdr->segleft == 1)) { | ~~~~~^~~~~~~~~ ../net/eth.c:487:24: note: while referencing ‘ext_hdr’ 487 | struct ip6_ext_hdr ext_hdr; | ^~~~~~~ These are fixed in upstream commit 7d6a4f123e00c9, which went into QEMU a year ago (should be in QEMU 6.1, I think). In general this kind of situation where a newer compiler is better at identifying and warning about problems can happen where you're building an older QEMU with a newer compiler that hadn't been released at the time that the QEMU you're building was released. There are three basic ways to resolve it: (1) use a newer QEMU (2) use an older compiler (3) if the problem is only a warning, configure QEMU with --disable-werror so it isn't fatal. (Looks like for this specific case that wouldn't help, though.) thanks -- PMM