summary refs log tree commit diff
diff options
context:
space:
mode:
authorCarlo Marcelo Arenas Belón <carenas@gmail.com>2022-04-15 16:13:41 -0700
committerJunio C Hamano <gitster@pobox.com>2022-04-15 16:26:16 -0700
commit846a29afb0b1a206426a3fa0867c37dc406415bc (patch)
tree59672a2a3984dba9f33e3924cf36ec7d110109e9
parentd516b2db0af2221bd6b13e7347abdcb5830b2829 (diff)
config.mak.dev: workaround gcc 12 bug affecting "pedantic" CI job
Originally noticed by Peff[1], but yet to be corrected[2] and planned to
be released with Fedora 36 (scheduled for Apr 19).

  dir.c: In function ‘git_url_basename’:
  dir.c:3085:13: error: ‘memchr’ specified bound [9223372036854775808, 0] exceeds maximum object size 9223372036854775807 [-Werror=stringop-overread]
   3085 |         if (memchr(start, '/', end - start) == NULL
        |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fedora is used as part of the CI, and therefore that release will trigger
failures, unless the version of the image used is locked to an older
release, as an alternative.

Restricting the flag to the affected source file, as well as implementing
an independent facility to track these workarounds was specifically punted
to minimize the risk of introducing problems so close to a release.

This change should be reverted once the underlying gcc bug is solved and
which should be visible by NOT triggering a warning, otherwise.

[1] https://lore.kernel.org/git/YZQhLh2BU5Hquhpo@coredump.intra.peff.net/
[2] https://bugzilla.redhat.com/show_bug.cgi?id=2075786

Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--config.mak.dev5
1 files changed, 5 insertions, 0 deletions
diff --git a/config.mak.dev b/config.mak.dev
index 3deb076d5e..335efd4620 100644
--- a/config.mak.dev
+++ b/config.mak.dev
@@ -65,4 +65,9 @@ DEVELOPER_CFLAGS += -Wno-uninitialized
 endif
 endif
 
+# https://bugzilla.redhat.com/show_bug.cgi?id=2075786
+ifneq ($(filter gcc12,$(COMPILER_FEATURES)),)
+DEVELOPER_CFLAGS += -Wno-error=stringop-overread
+endif
+
 GIT_TEST_PERL_FATAL_WARNINGS = YesPlease