https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/120844
Note that PointerUnion::get has been soft deprecated in PointerUnion.h: // FIXME: Replace the uses of is(), get() and dyn_cast() with // isa<T>, cast<T> and the llvm::dyn_cast<T> I'm not touching PointerUnion::dyn_cast for now because it's a bit complicated; we could blindly migrate it to dyn_cast_if_present, but we should probably use dyn_cast when the operand is known to be non-null. >From 0cbc706b04ccbafa9adb0295c86b72119196b01d Mon Sep 17 00:00:00 2001 From: Kazu Hirata <k...@google.com> Date: Sat, 21 Dec 2024 08:55:08 -0800 Subject: [PATCH] [Serialization] Migrate away from PointerUnion::get (NFC) Note that PointerUnion::get has been soft deprecated in PointerUnion.h: // FIXME: Replace the uses of is(), get() and dyn_cast() with // isa<T>, cast<T> and the llvm::dyn_cast<T> I'm not touching PointerUnion::dyn_cast for now because it's a bit complicated; we could blindly migrate it to dyn_cast_if_present, but we should probably use dyn_cast when the operand is known to be non-null. --- clang/lib/Serialization/MultiOnDiskHashTable.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clang/lib/Serialization/MultiOnDiskHashTable.h b/clang/lib/Serialization/MultiOnDiskHashTable.h index a0d75ec3a9e76e..6464220f13aeff 100644 --- a/clang/lib/Serialization/MultiOnDiskHashTable.h +++ b/clang/lib/Serialization/MultiOnDiskHashTable.h @@ -93,7 +93,7 @@ template<typename Info> class MultiOnDiskHashTable { using result_type = OnDiskTable *; result_type operator()(void *P) const { - return Table::getFromOpaqueValue(P).template get<OnDiskTable *>(); + return llvm::cast<OnDiskTable *>(Table::getFromOpaqueValue(P)); } }; @@ -130,7 +130,7 @@ template<typename Info> class MultiOnDiskHashTable { Files.insert(PendingOverrides.begin(), PendingOverrides.end()); // Explicitly capture Files to work around an MSVC 2015 rejects-valid bug. auto ShouldRemove = [&Files](void *T) -> bool { - auto *ODT = Table::getFromOpaqueValue(T).template get<OnDiskTable *>(); + auto *ODT = llvm::cast<OnDiskTable *>(Table::getFromOpaqueValue(T)); bool Remove = Files.count(ODT->File); if (Remove) delete ODT; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits