From 8fb4a41a63e5d195c2463ce0bc75e9d41cc0c5be Mon Sep 17 00:00:00 2001 From: Oliver Reiche Date: Mon, 28 Aug 2023 11:14:53 +0200 Subject: Fix path hash for libstdc++ bug-fix release 11.4 ... std::hash was first implemented in libstdc++ version 12. However, that change was also backported to bug-fix release 11.4, so we may not include our reimplementation if that version is used. --- src/utils/cpp/path_hash.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/utils/cpp/path_hash.hpp') diff --git a/src/utils/cpp/path_hash.hpp b/src/utils/cpp/path_hash.hpp index b990161c..eaf988ec 100644 --- a/src/utils/cpp/path_hash.hpp +++ b/src/utils/cpp/path_hash.hpp @@ -17,10 +17,12 @@ #include -#if (defined(__GLIBCXX__) and _GLIBCXX_RELEASE < 12) or \ +auto constexpr kGLIBCXX_11_4 = 20230528; // gcc/DATESTAMP of version 11.4 +#if (defined(__GLIBCXX__) and _GLIBCXX_RELEASE < 12 and \ + __GLIBCXX__ != kGLIBCXX_11_4) or \ (defined(_LIBCPP_VERSION) and _LIBCPP_VERSION < 16000) // std::hash is missing for -// - GNU's libstdc++ < 12 +// - GNU's libstdc++ < 12 (except 11.4) // - LLVM's libcxx < 16 (see https://reviews.llvm.org/D125394) namespace std { template <> -- cgit v1.2.3