38 lines
1.4 KiB
Diff
38 lines
1.4 KiB
Diff
From 079f73cc5c6413127d47f325cbb34a607e2cb030 Mon Sep 17 00:00:00 2001
|
|
From: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
|
|
Date: Fri, 16 Dec 2022 22:58:51 +0100
|
|
Subject: [PATCH] Workaround gcc 11 limitation
|
|
|
|
For some reason, gcc sees a constexpr violation here. Trust clang and msvc on this.
|
|
---
|
|
include/frozen/unordered_set.h | 2 +-
|
|
tests/test_unordered_set.cpp | 2 +-
|
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/include/frozen/unordered_set.h b/include/frozen/unordered_set.h
|
|
index 4d16df9..196ea50 100644
|
|
--- a/include/frozen/unordered_set.h
|
|
+++ b/include/frozen/unordered_set.h
|
|
@@ -105,7 +105,7 @@ class unordered_set {
|
|
/* lookup */
|
|
template <class KeyType, class Hasher, class Equal>
|
|
constexpr std::size_t count(KeyType const &key, Hasher const &hash, Equal const &equal) const {
|
|
- auto const k = lookup(key, hash);
|
|
+ auto const & k = lookup(key, hash);
|
|
return equal(k, key);
|
|
}
|
|
template <class KeyType>
|
|
diff --git a/tests/test_unordered_set.cpp b/tests/test_unordered_set.cpp
|
|
index e90a0d4..042c1a8 100644
|
|
--- a/tests/test_unordered_set.cpp
|
|
+++ b/tests/test_unordered_set.cpp
|
|
@@ -65,7 +65,7 @@ TEST_CASE("tripleton str frozen unordered set", "[unordered set]") {
|
|
constexpr auto max_size = ze_set.max_size();
|
|
REQUIRE(max_size == 3);
|
|
|
|
- constexpr auto nocount = ze_set.count(4);
|
|
+ const auto nocount = ze_set.count(4);
|
|
REQUIRE(nocount == 0);
|
|
|
|
constexpr auto count = ze_set.count(1);
|