aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/AbstractTypeUser.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-07-14 20:10:26 +0000
committerChris Lattner <sabre@nondot.org>2004-07-14 20:10:26 +0000
commitec90d8f80d0ad5614c14db74dd22f5e3f100f2cb (patch)
tree16bdec552f796fa302a9f8593db75d96cb5fdc62 /include/llvm/AbstractTypeUser.h
parentd9ce6adfcc77a576d1f2a33f92f110d38f2e23da (diff)
downloadexternal_llvm-ec90d8f80d0ad5614c14db74dd22f5e3f100f2cb.zip
external_llvm-ec90d8f80d0ad5614c14db74dd22f5e3f100f2cb.tar.gz
external_llvm-ec90d8f80d0ad5614c14db74dd22f5e3f100f2cb.tar.bz2
Make PATypeHolder and friends return non-const pointers to the types they
hold. Because types are basically immutable anyway, they should not be referenced as "const Type*" everywhere. Just "Type*" should suffice! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14824 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/AbstractTypeUser.h')
-rw-r--r--include/llvm/AbstractTypeUser.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/include/llvm/AbstractTypeUser.h b/include/llvm/AbstractTypeUser.h
index b936b45..a06252d 100644
--- a/include/llvm/AbstractTypeUser.h
+++ b/include/llvm/AbstractTypeUser.h
@@ -93,17 +93,17 @@ public:
inline ~PATypeHandle() { removeUser(); }
// Automatic casting operator so that the handle may be used naturally
- inline operator const Type *() const { return Ty; }
- inline const Type *get() const { return Ty; }
+ inline operator Type *() const { return const_cast<Type*>(Ty); }
+ inline Type *get() const { return const_cast<Type*>(Ty); }
// operator= - Allow assignment to handle
- inline const Type *operator=(const Type *ty) {
+ inline Type *operator=(const Type *ty) {
if (Ty != ty) { // Ensure we don't accidentally drop last ref to Ty
removeUser();
Ty = ty;
addUser();
}
- return Ty;
+ return get();
}
// operator= - Allow assignment to handle
@@ -145,14 +145,14 @@ public:
~PATypeHolder() { dropRef(); }
- operator const Type *() const { return get(); }
- const Type *get() const;
+ operator Type *() const { return get(); }
+ Type *get() const;
// operator-> - Allow user to dereference handle naturally...
- const Type *operator->() const { return get(); }
+ Type *operator->() const { return get(); }
// operator= - Allow assignment to handle
- const Type *operator=(const Type *ty) {
+ Type *operator=(const Type *ty) {
if (Ty != ty) { // Don't accidentally drop last ref to Ty.
dropRef();
Ty = ty;
@@ -160,7 +160,7 @@ public:
}
return get();
}
- const Type *operator=(const PATypeHolder &H) {
+ Type *operator=(const PATypeHolder &H) {
return operator=(H.Ty);
}