Skip to content

Commit

Permalink
[NFC][ObjectSizeOffset] Add template stuff for Visual Studio
Browse files Browse the repository at this point in the history
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'
  • Loading branch information
bwendling committed Jan 7, 2024
1 parent 3eb9fd8 commit 0903d99
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions llvm/include/llvm/Analysis/MemoryBuiltins.h
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ template <typename T, class C> class SizeOffsetType {
/// 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:
Expand Down Expand Up @@ -276,7 +276,7 @@ class ObjectSizeOffsetVisitor
/// \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:
Expand All @@ -289,7 +289,7 @@ class SizeOffsetValue : public SizeOffsetType<Value *, SizeOffsetValue> {
/// \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:
Expand Down

0 comments on commit 0903d99

Please sign in to comment.