[PATCH 5/5] maint: silence GCC-14 on utility source getlimits.c

Bernhard Voelker <[email protected]>
Newsgroups gmane.comp.gnu.findutils.patches,gmane.comp.gnu.findutils.bugs
Message-ID <[email protected]>
Seen on GCC 14:
  getlimits.c:73:3: warning: stack-based buffer overflow [CWE-121] \
     [-Wanalyzer-out-of-bounds]
     73 |   sprintf (limit + 1, "%" "ju", (uintmax_t) TYPE##_MAX);     \
        |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
... while limit is defined more than large enough.

* find/getlimits.c: Add pragma for GCC version >= 14.
---
 find/getlimits.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/find/getlimits.c b/find/getlimits.c
index ee0b351f..201a02b1 100644
--- a/find/getlimits.c
+++ b/find/getlimits.c
@@ -38,6 +38,11 @@
 # define MIN(a,b) (a<b?a:b)
 #endif

+/* Silence GCC 14.  */
+#if 14 <= __GNUC__
+# pragma GCC diagnostic ignored "-Wanalyzer-out-of-bounds"
+#endif
+
 /* Add one to the absolute value of the number whose textual
    representation is BUF + 1.  Do this in-place, in the buffer.
    Return a pointer to the result, which is normally BUF + 1, but is
--
2.47.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.