From 56406e5ae6e24487f346fc22d6fd3eef85b3f8e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Heusipp?= Date: Wed, 14 Aug 2024 09:24:07 +0000 Subject: [PATCH] Merged revision(s) 21428 from trunk/OpenMPT: [Fix] GCC 14 optimizer is still on crack. ........ git-svn-id: https://source.openmpt.org/svn/openmpt/branches/OpenMPT-1.28@21432 56274372-70c3-4bfc-bfc3-4c3a0b034d27 --- soundlib/Load_xm.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/soundlib/Load_xm.cpp b/soundlib/Load_xm.cpp index 4ab2c27713f..1db27c604d9 100644 --- a/soundlib/Load_xm.cpp +++ b/soundlib/Load_xm.cpp @@ -753,8 +753,8 @@ bool CSoundFile::ReadXM(FileReader &file, ModLoadingFlags loadFlags) #define str_tooMuchPatternData ("Warning: File format limit was reached. Some pattern data may not get written to file.") #define str_pattern ("pattern") -#if MPT_GCC_AT_LEAST(13, 0, 0) && MPT_GCC_BEFORE(14, 1, 0) -// work-around massively confused GCC 13 optimizer: +#if MPT_GCC_AT_LEAST(13, 0, 0) && MPT_GCC_BEFORE(15, 1, 0) +// work-around massively confused GCC 13/14 optimizer: // /usr/include/c++/13/bits/stl_algobase.h:437:30: warning: 'void* __builtin_memcpy(void*, const void*, long unsigned int)' writing between 3 and 9223372036854775806 bytes into a region of size 0 overflows the destination [-Wstringop-overflow=] template static MPT_NOINLINE Tcont1 & gcc_append(Tcont1 & cont1, const Tcont2 & cont2) { @@ -1034,7 +1034,7 @@ bool CSoundFile::SaveXM(std::ostream &f, bool compatibilityExport) } } -#if MPT_GCC_AT_LEAST(13, 0, 0) && MPT_GCC_BEFORE(14, 1, 0) +#if MPT_GCC_AT_LEAST(13, 0, 0) && MPT_GCC_BEFORE(15, 1, 0) gcc_append(samples, additionalSamples); #else samples.insert(samples.end(), additionalSamples.begin(), additionalSamples.end());