From b1678c61326feeb17712c4a0a5e68a382795ca6b Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 5 Sep 2003 02:30:18 +0000 Subject: [PATCH] Get friendly git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8356 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/DerivedTypes.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/include/llvm/DerivedTypes.h b/include/llvm/DerivedTypes.h index f827753a6c9..39a87b80d36 100644 --- a/include/llvm/DerivedTypes.h +++ b/include/llvm/DerivedTypes.h @@ -13,6 +13,12 @@ #include "llvm/Type.h" +template class TypeMap; +class FunctionValType; +class ArrayValType; +class StructValType; +class PointerValType; + class DerivedType : public Type { char isRefining; // Used for recursive types @@ -89,6 +95,7 @@ public: struct FunctionType : public DerivedType { typedef std::vector ParamTypes; + friend class TypeMap; private: PATypeHandle ResultType; ParamTypes ParamTys; @@ -186,8 +193,8 @@ public: }; -class StructType : public CompositeType { -public: +struct StructType : public CompositeType { + friend class TypeMap; typedef std::vector ElementTypes; private: @@ -300,6 +307,7 @@ public: class ArrayType : public SequentialType { + friend class TypeMap; unsigned NumElements; ArrayType(const ArrayType &); // Do not implement @@ -342,6 +350,7 @@ public: class PointerType : public SequentialType { + friend class TypeMap; PointerType(const PointerType &); // Do not implement const PointerType &operator=(const PointerType &); // Do not implement protected: -- 2.34.1