From eb635b85bb2cec95f3fb085e4b67230c34152757 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Sat, 20 May 2023 12:00:31 +0200 Subject: [PATCH] Fix: work around GCC compiler bug #105120 in fmt The fmt code pushes a pragma option, and later pops is. The intrinsics code interacts with it via the __OPTIMIZE__ macro. This has been set by the pragma option push, but not unset/reset to the original with the pop. Since the pragma is only used for the GCC compiler (not Clang, not MSVC, not ICC) and in debug mode, just remove the whole pragma handling for it. --- src/3rdparty/fmt/core.h | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/3rdparty/fmt/core.h b/src/3rdparty/fmt/core.h index 46723d5988..d6333bbeb1 100644 --- a/src/3rdparty/fmt/core.h +++ b/src/3rdparty/fmt/core.h @@ -250,12 +250,7 @@ # define FMT_INLINE_VARIABLE #endif -// Enable minimal optimizations for more compact code in debug mode. FMT_GCC_PRAGMA("GCC push_options") -#if !defined(__OPTIMIZE__) && !defined(__NVCOMPILER) && !defined(__LCC__) && \ - !defined(__CUDACC__) -FMT_GCC_PRAGMA("GCC optimize(\"Og\")") -#endif FMT_BEGIN_NAMESPACE