Disable destructors on constants

llvm-svn: 547
This commit is contained in:
Chris Lattner 2001-09-11 04:27:19 +00:00
parent f4a0d70778
commit 22c0bb699f
1 changed files with 8 additions and 0 deletions

View File

@ -22,6 +22,7 @@ class StructType;
class ConstPoolVal : public User { class ConstPoolVal : public User {
protected: protected:
inline ConstPoolVal(const Type *Ty) : User(Ty, Value::ConstantVal) {} inline ConstPoolVal(const Type *Ty) : User(Ty, Value::ConstantVal) {}
~ConstPoolVal() {}
public: public:
// Specialize setName to handle symbol table majik... // Specialize setName to handle symbol table majik...
@ -46,6 +47,7 @@ class ConstPoolBool : public ConstPoolVal {
bool Val; bool Val;
ConstPoolBool(const ConstPoolBool &); // DO NOT IMPLEMENT ConstPoolBool(const ConstPoolBool &); // DO NOT IMPLEMENT
ConstPoolBool(bool V); ConstPoolBool(bool V);
~ConstPoolBool() {}
public: public:
static ConstPoolBool *True, *False; // The True & False values static ConstPoolBool *True, *False; // The True & False values
@ -73,6 +75,7 @@ protected:
} Val; } Val;
ConstPoolInt(const ConstPoolInt &); // DO NOT IMPLEMENT ConstPoolInt(const ConstPoolInt &); // DO NOT IMPLEMENT
ConstPoolInt(const Type *Ty, uint64_t V); ConstPoolInt(const Type *Ty, uint64_t V);
~ConstPoolInt() {}
public: public:
// equalsInt - Provide a helper method that can be used to determine if the // equalsInt - Provide a helper method that can be used to determine if the
// constant contained within is equal to a constant. This only works for very // constant contained within is equal to a constant. This only works for very
@ -98,6 +101,7 @@ class ConstPoolSInt : public ConstPoolInt {
ConstPoolSInt(const ConstPoolSInt &); // DO NOT IMPLEMENT ConstPoolSInt(const ConstPoolSInt &); // DO NOT IMPLEMENT
protected: protected:
ConstPoolSInt(const Type *Ty, int64_t V); ConstPoolSInt(const Type *Ty, int64_t V);
~ConstPoolSInt() {}
public: public:
static ConstPoolSInt *get(const Type *Ty, int64_t V); static ConstPoolSInt *get(const Type *Ty, int64_t V);
@ -115,6 +119,7 @@ class ConstPoolUInt : public ConstPoolInt {
ConstPoolUInt(const ConstPoolUInt &); // DO NOT IMPLEMENT ConstPoolUInt(const ConstPoolUInt &); // DO NOT IMPLEMENT
protected: protected:
ConstPoolUInt(const Type *Ty, uint64_t V); ConstPoolUInt(const Type *Ty, uint64_t V);
~ConstPoolUInt() {}
public: public:
static ConstPoolUInt *get(const Type *Ty, uint64_t V); static ConstPoolUInt *get(const Type *Ty, uint64_t V);
@ -133,6 +138,7 @@ class ConstPoolFP : public ConstPoolVal {
ConstPoolFP(const ConstPoolFP &); // DO NOT IMPLEMENT ConstPoolFP(const ConstPoolFP &); // DO NOT IMPLEMENT
protected: protected:
ConstPoolFP(const Type *Ty, double V); ConstPoolFP(const Type *Ty, double V);
~ConstPoolFP() {}
public: public:
static ConstPoolFP *get(const Type *Ty, double V); static ConstPoolFP *get(const Type *Ty, double V);
@ -150,6 +156,7 @@ class ConstPoolArray : public ConstPoolVal {
ConstPoolArray(const ConstPoolArray &); // DO NOT IMPLEMENT ConstPoolArray(const ConstPoolArray &); // DO NOT IMPLEMENT
protected: protected:
ConstPoolArray(const ArrayType *T, const vector<ConstPoolVal*> &Val); ConstPoolArray(const ArrayType *T, const vector<ConstPoolVal*> &Val);
~ConstPoolArray() {}
public: public:
static ConstPoolArray *get(const ArrayType *T, const vector<ConstPoolVal*> &); static ConstPoolArray *get(const ArrayType *T, const vector<ConstPoolVal*> &);
@ -166,6 +173,7 @@ class ConstPoolStruct : public ConstPoolVal {
ConstPoolStruct(const ConstPoolStruct &); // DO NOT IMPLEMENT ConstPoolStruct(const ConstPoolStruct &); // DO NOT IMPLEMENT
protected: protected:
ConstPoolStruct(const StructType *T, const vector<ConstPoolVal*> &Val); ConstPoolStruct(const StructType *T, const vector<ConstPoolVal*> &Val);
~ConstPoolStruct() {}
public: public:
static ConstPoolStruct *get(const StructType *T, static ConstPoolStruct *get(const StructType *T,
const vector<ConstPoolVal*> &V); const vector<ConstPoolVal*> &V);