Title: [265773] trunk
- Revision
- 265773
- Author
- [email protected]
- Date
- 2020-08-17 14:35:36 -0700 (Mon, 17 Aug 2020)
Log Message
[WTF] HashTable<Ref<K>, V>::HashTable(const HashTable& other) can't compile
https://bugs.webkit.org/show_bug.cgi?id=215550
Reviewed by Darin Adler.
Source/WTF:
Even though the copy constructor takes a const HashTable
reference, RefHashTraits::assignToEmpty takes non-const Ref<P>. It
seems that RefHashTraits::assignToEmpty and
Ref::assignToHashTableEmptyValue are unnecessary. Just remove them.
* wtf/HashTraits.h:
(WTF::RefHashTraits::assignToEmpty): Deleted.
* wtf/Ref.h:
(WTF::Ref::assignToHashTableEmptyValue): Deleted.
Tools:
* TestWebKitAPI/Tests/WTF/HashSet.cpp:
(TestWebKitAPI::TEST):
Modified Paths
Diff
Modified: trunk/Source/WTF/ChangeLog (265772 => 265773)
--- trunk/Source/WTF/ChangeLog 2020-08-17 21:16:43 UTC (rev 265772)
+++ trunk/Source/WTF/ChangeLog 2020-08-17 21:35:36 UTC (rev 265773)
@@ -1,3 +1,20 @@
+2020-08-17 Fujii Hironori <[email protected]>
+
+ [WTF] HashTable<Ref<K>, V>::HashTable(const HashTable& other) can't compile
+ https://bugs.webkit.org/show_bug.cgi?id=215550
+
+ Reviewed by Darin Adler.
+
+ Even though the copy constructor takes a const HashTable
+ reference, RefHashTraits::assignToEmpty takes non-const Ref<P>. It
+ seems that RefHashTraits::assignToEmpty and
+ Ref::assignToHashTableEmptyValue are unnecessary. Just remove them.
+
+ * wtf/HashTraits.h:
+ (WTF::RefHashTraits::assignToEmpty): Deleted.
+ * wtf/Ref.h:
+ (WTF::Ref::assignToHashTableEmptyValue): Deleted.
+
2020-08-17 Youenn Fablet <[email protected]>
Bump HAVE_NSURLSESSION_WEBSOCKET requirement to BigSur for MacOS
Modified: trunk/Source/WTF/wtf/HashTraits.h (265772 => 265773)
--- trunk/Source/WTF/wtf/HashTraits.h 2020-08-17 21:16:43 UTC (rev 265772)
+++ trunk/Source/WTF/wtf/HashTraits.h 2020-08-17 21:35:36 UTC (rev 265773)
@@ -208,8 +208,6 @@
static constexpr bool hasIsEmptyValueFunction = true;
static bool isEmptyValue(const Ref<P>& value) { return value.isHashTableEmptyValue(); }
- static void assignToEmpty(Ref<P>& emptyValue, Ref<P>&& newValue) { ASSERT(isEmptyValue(emptyValue)); emptyValue.assignToHashTableEmptyValue(WTFMove(newValue)); }
-
typedef P* PeekType;
static PeekType peek(const Ref<P>& value) { return const_cast<PeekType>(value.ptrAllowingHashTableEmptyValue()); }
static PeekType peek(P* value) { return value; }
Modified: trunk/Source/WTF/wtf/Ref.h (265772 => 265773)
--- trunk/Source/WTF/wtf/Ref.h 2020-08-17 21:16:43 UTC (rev 265772)
+++ trunk/Source/WTF/wtf/Ref.h 2020-08-17 21:35:36 UTC (rev 265773)
@@ -112,17 +112,6 @@
const T* ptrAllowingHashTableEmptyValue() const { ASSERT(m_ptr || isHashTableEmptyValue()); return PtrTraits::unwrap(m_ptr); }
T* ptrAllowingHashTableEmptyValue() { ASSERT(m_ptr || isHashTableEmptyValue()); return PtrTraits::unwrap(m_ptr); }
- void assignToHashTableEmptyValue(Ref&& reference)
- {
-#if ASAN_ENABLED
- if (__asan_address_is_poisoned(this))
- __asan_unpoison_memory_region(this, sizeof(*this));
-#endif
- ASSERT(m_ptr == hashTableEmptyValue());
- m_ptr = &reference.leakRef();
- ASSERT(m_ptr);
- }
-
T* operator->() const { ASSERT(m_ptr); return PtrTraits::unwrap(m_ptr); }
T* ptr() const RETURNS_NONNULL { ASSERT(m_ptr); return PtrTraits::unwrap(m_ptr); }
T& get() const { ASSERT(m_ptr); return *PtrTraits::unwrap(m_ptr); }
Modified: trunk/Tools/ChangeLog (265772 => 265773)
--- trunk/Tools/ChangeLog 2020-08-17 21:16:43 UTC (rev 265772)
+++ trunk/Tools/ChangeLog 2020-08-17 21:35:36 UTC (rev 265773)
@@ -1,3 +1,13 @@
+2020-08-17 Fujii Hironori <[email protected]>
+
+ [WTF] HashTable<Ref<K>, V>::HashTable(const HashTable& other) can't compile
+ https://bugs.webkit.org/show_bug.cgi?id=215550
+
+ Reviewed by Darin Adler.
+
+ * TestWebKitAPI/Tests/WTF/HashSet.cpp:
+ (TestWebKitAPI::TEST):
+
2020-08-17 Jonathan Bedard <[email protected]>
[resultsdbpy]: Depend on webkitcorepy
Modified: trunk/Tools/TestWebKitAPI/Tests/WTF/HashSet.cpp (265772 => 265773)
--- trunk/Tools/TestWebKitAPI/Tests/WTF/HashSet.cpp 2020-08-17 21:16:43 UTC (rev 265772)
+++ trunk/Tools/TestWebKitAPI/Tests/WTF/HashSet.cpp 2020-08-17 21:35:36 UTC (rev 265773)
@@ -454,6 +454,16 @@
}
}
ASSERT_STREQ("deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) deref(a) ", takeLogStr().c_str());
+
+ {
+ RefLogger a("a");
+
+ HashSet<Ref<RefLogger>> set;
+ Ref<RefLogger> ref(a);
+ set.add(WTFMove(ref));
+ HashSet<Ref<RefLogger>> set2(set);
+ }
+ ASSERT_STREQ("ref(a) ref(a) deref(a) deref(a) ", takeLogStr().c_str());
}
TEST(WTF_HashSet, DeletedAddressOfOperator)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes