[cmake] gcc.cmake: Move -Wno-error=stringop-overread here.

The same error showed up on armhf and amd64 this time.

Since it's happening in LTO and not the main compiler step, the pragmas
likely aren't working properly. Use -Wno-error=stringop-overread instead.
This commit is contained in:
David Korth 2025-04-20 04:21:02 -04:00
parent 140c1e7fc5
commit ec441b4cec
3 changed files with 2 additions and 10 deletions

View File

@ -276,7 +276,7 @@ ENDIF(CFLAG_OPTIMIZE_FTREE_VECTORIZE)
# Add "-Werror" *after* checking for everything else.
SET(RP_C_FLAGS_COMMON "${RP_C_FLAGS_COMMON} -Werror")
SET(RP_CXX_FLAGS_COMMON "${RP_CXX_FLAGS_COMMON} -Werror")
SET(CFLAGS_WNO_ERROR -Wno-error=unknown-pragmas -Wno-error=address -Wno-error=attributes -Wno-error=unused-parameter -Wno-error=unused-but-set-variable -Wno-error=ignored-qualifiers -Wno-error=missing-field-initializers -Wno-error=unused-variable -Wno-error=unused-function -Wno-error=type-limits -Wno-error=empty-body -Wno-error=address-of-packed-member -Wno-error=shift-negative-value -Wno-error=clobbered -Wno-error=overloaded-virtual -Wno-error=header-hygiene -Wno-error=cast-align)
SET(CFLAGS_WNO_ERROR -Wno-error=unknown-pragmas -Wno-error=address -Wno-error=attributes -Wno-error=unused-parameter -Wno-error=unused-but-set-variable -Wno-error=ignored-qualifiers -Wno-error=missing-field-initializers -Wno-error=unused-variable -Wno-error=unused-function -Wno-error=type-limits -Wno-error=empty-body -Wno-error=address-of-packed-member -Wno-error=shift-negative-value -Wno-error=clobbered -Wno-error=overloaded-virtual -Wno-error=header-hygiene -Wno-error=cast-align -Wno-error=stringop-overread)
FOREACH(FLAG_TEST ${CFLAGS_WNO_ERROR})
# CMake doesn't like certain characters in variable names.
STRING(REGEX REPLACE "/|:|=" "_" FLAG_TEST_VARNAME "${FLAG_TEST}")

2
debian/changelog vendored
View File

@ -1,4 +1,4 @@
rom-properties (2.5-1ppa6~noble1) noble; urgency=medium
rom-properties (2.5-1ppa6~noble2) noble; urgency=medium
* Build for Ubuntu 24.04 "Noble" Numbat.

View File

@ -274,11 +274,6 @@ rp_image_ptr iQuePlayerPrivate::loadImage(off64_t address, size_t z_size, size_t
return nullptr;
}
// FIXME: False-positive error on Ubuntu 22.04 arm64 due to the use of unz_size/2.
#if defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstringop-overread"
#endif /* __GNUC__ && !__clang__ */
// Decompress the thumbnail image.
// Decompressed size must be 0x1880 bytes. (56*56*2)
auto img_buf = aligned_uptr<uint16_t>(16, unz_size/2);
@ -317,9 +312,6 @@ rp_image_ptr iQuePlayerPrivate::loadImage(off64_t address, size_t z_size, size_t
// Convert the image.
return ImageDecoder::fromLinear16(px_format,
w, h, img_buf.get(), unz_size);
#if defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic pop
#endif /* __GNUC__ && !__clang__ */
}
/**