diff options
author | Bill Wendling <morbo@google.com> | 2024-01-07 03:37:39 -0800 |
---|---|---|
committer | Bill Wendling <morbo@google.com> | 2024-01-07 03:39:18 -0800 |
commit | 0903d992cc961281a0bffc8704796f27f8c2e696 (patch) | |
tree | 1e1815dc2fb7f9273cc97db4dc34d22a47d727d9 | |
parent | 3eb9fd8ac8bb7524b45912115dc212b7e80be588 (diff) |
[NFC][ObjectSizeOffset] Add template stuff for Visual Studio
Visual Studio needs the class template stuff.
C:\llvm\include\llvm/Analysis/MemoryBuiltins.h(217): error C2990: 'llvm::SizeOffsetType': non-class template has already been declared as a class template
C:\llvm\include\llvm/Analysis/MemoryBuiltins.h(193): note: see declaration of 'llvm::SizeOffsetType'
-rw-r--r-- | llvm/include/llvm/Analysis/MemoryBuiltins.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/include/llvm/Analysis/MemoryBuiltins.h b/llvm/include/llvm/Analysis/MemoryBuiltins.h index d080a5956a4d..7df0b0419268 100644 --- a/llvm/include/llvm/Analysis/MemoryBuiltins.h +++ b/llvm/include/llvm/Analysis/MemoryBuiltins.h @@ -214,7 +214,7 @@ public: /// SizeOffsetAPInt - Used by \p ObjectSizeOffsetVisitor, which works with /// \p APInts. class SizeOffsetAPInt : public SizeOffsetType<APInt, SizeOffsetAPInt> { - friend class SizeOffsetType; + template <typename T, class C> friend class SizeOffsetType; static bool known(APInt V) { return V.getBitWidth() > 1; } public: @@ -276,7 +276,7 @@ private: /// \p Values. class SizeOffsetWeakTrackingVH; class SizeOffsetValue : public SizeOffsetType<Value *, SizeOffsetValue> { - friend class SizeOffsetType; + template <typename T, class C> friend class SizeOffsetType; static bool known(Value *V) { return V != nullptr; } public: @@ -289,7 +289,7 @@ public: /// \p DenseMap. class SizeOffsetWeakTrackingVH : public SizeOffsetType<WeakTrackingVH, SizeOffsetWeakTrackingVH> { - friend class SizeOffsetType; + template <typename T, class C> friend class SizeOffsetType; static bool known(WeakTrackingVH V) { return V.pointsToAliveValue(); } public: |