IR: Remove templates from TempMDNodeDeleter, NFC
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Mon, 19 Jan 2015 22:21:15 +0000 (22:21 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Mon, 19 Jan 2015 22:21:15 +0000 (22:21 +0000)
r226504 added `TempMDNodeDeleter` to help with `std::unique_ptr<>`-izing
the `MDNode::getTemporary()` interface.  It doesn't need to be
templated, though.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226509 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/IR/Metadata.h

index 47d5939c4c1a05d0d7a31cca70f247f9a923e24e..9d197f9b82d6b011f7bfe087bb9e9de24a9f4725 100644 (file)
@@ -651,13 +651,12 @@ public:
   }
 };
 
-template <class T>
 struct TempMDNodeDeleter {
-  inline void operator()(T *Node) const;
+  inline void operator()(MDNode *Node) const;
 };
 
 #define HANDLE_UNIQUABLE_LEAF(CLASS)                                           \
-  typedef std::unique_ptr<CLASS, TempMDNodeDeleter<CLASS>> Temp##CLASS;
+  typedef std::unique_ptr<CLASS, TempMDNodeDeleter> Temp##CLASS;
 #include "llvm/IR/Metadata.def"
 
 //===----------------------------------------------------------------------===//
@@ -921,8 +920,8 @@ TempMDTuple MDNode::getTemporary(LLVMContext &Context,
                                  ArrayRef<Metadata *> MDs) {
   return MDTuple::getTemporary(Context, MDs);
 }
-template <class T>
-void TempMDNodeDeleter<T>::operator()(T *Node) const {
+
+void TempMDNodeDeleter::operator()(MDNode *Node) const {
   MDNode::deleteTemporary(Node);
 }