aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2022-12-14 00:51:00 +0000
committerMichael Brown <mcb30@ipxe.org>2022-12-14 00:54:13 +0000
commit54c4c1d403c1730d3c8e467910d7044a649bfbee (patch)
treee83f0477d7d454aabf4d1dbc84ca9f53b0b094c5
parent563bff472276b25a6788abc3c916cda65e7ceead (diff)
downloadipxe-54c4c1d403c1730d3c8e467910d7044a649bfbee.zip
ipxe-54c4c1d403c1730d3c8e467910d7044a649bfbee.tar.gz
ipxe-54c4c1d403c1730d3c8e467910d7044a649bfbee.tar.bz2
[build] Disable array bounds checking for GCC
The array bounds checker on GCC 12 and newer reports a very large number of false positives that result in build failures. In particular, accesses through pointers to zero-length arrays (such as those used by the linker table mechanism in include/ipxe/tables.h) are reported as errors, contrary to the GCC documentation. Work around this GCC issue by unconditionally disabling the warning. Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--src/Makefile.housekeeping4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Makefile.housekeeping b/src/Makefile.housekeeping
index 9bf34b2..61a9cf0 100644
--- a/src/Makefile.housekeeping
+++ b/src/Makefile.housekeeping
@@ -461,8 +461,8 @@ CFLAGS += -g
ifeq ($(CCTYPE),gcc)
CFLAGS += -ffreestanding
CFLAGS += -fcommon
-CFLAGS += -Wall -W -Wformat-nonliteral
-HOST_CFLAGS += -Wall -W -Wformat-nonliteral
+CFLAGS += -Wall -W -Wformat-nonliteral -Wno-array-bounds
+HOST_CFLAGS += -Wall -W -Wformat-nonliteral -Wno-array-bounds
endif
CFLAGS += $(WORKAROUND_CFLAGS) $(EXTRA_CFLAGS)
ASFLAGS += $(WORKAROUND_ASFLAGS) $(EXTRA_ASFLAGS)