gh-129467: Fix compiler warning in mpdecimal word_to_string() (#116346)

Turn off false-positive -Wstringop-overflow in word_to_string().
This commit is contained in:
Sergey B Kirpichev 2025-01-30 13:57:55 +03:00 committed by GitHub
parent 652f66ac38
commit 6c63afc3be
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 2 deletions

4
Misc/sbom.spdx.json generated
View File

@ -1280,11 +1280,11 @@
"checksums": [
{
"algorithm": "SHA1",
"checksumValue": "9dcb50e3f9c3245972731be5da0b28e7583198d9"
"checksumValue": "5d6fdd98730584f74f7b731da6e488fe234504b3"
},
{
"algorithm": "SHA256",
"checksumValue": "7cac49fef5e9d952ec9390bf81c54d83f1b5da32fdf76091c2f0770ed943b7fe"
"checksumValue": "d74f365463166891f62e1326d22b2d39d865776b7ea5e0df2aea5eede4d85b0f"
}
],
"fileName": "Modules/_decimal/libmpdec/io.c"

View File

@ -347,6 +347,10 @@ mpd_qset_string_exact(mpd_t *dec, const char *s, uint32_t *status)
or the location of a decimal point. */
#define EXTRACT_DIGIT(s, x, d, dot) \
if (s == dot) *s++ = '.'; *s++ = '0' + (char)(x / d); x %= d
#if defined(__GNUC__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 12
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstringop-overflow"
#endif
static inline char *
word_to_string(char *s, mpd_uint_t x, int n, char *dot)
{
@ -378,6 +382,9 @@ word_to_string(char *s, mpd_uint_t x, int n, char *dot)
*s = '\0';
return s;
}
#if defined(__GNUC__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 12
#pragma GCC diagnostic pop
#endif
/* Print exponent x to string s. Undefined for MPD_SSIZE_MIN. */
static inline char *