diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-02-08 18:08:46 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-02-08 18:08:46 +0000 |
commit | 56a04c0c3438904d7b428be11063de6340d0d1f8 (patch) | |
tree | d257e0d620f63e83c869b1cd8fa1f6002f94a55e /include/llvm/ADT | |
parent | 23401d6f8c9e488aac9a70c1639bcaec0dd75458 (diff) | |
download | external_llvm-56a04c0c3438904d7b428be11063de6340d0d1f8.zip external_llvm-56a04c0c3438904d7b428be11063de6340d0d1f8.tar.gz external_llvm-56a04c0c3438904d7b428be11063de6340d0d1f8.tar.bz2 |
ImmutableIntervalMap: Fix for unqualified lookup into dependent base class, done
by clang's -fixit! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95551 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/ADT')
-rw-r--r-- | include/llvm/ADT/ImmutableIntervalMap.h | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/include/llvm/ADT/ImmutableIntervalMap.h b/include/llvm/ADT/ImmutableIntervalMap.h index a552344..f33fb1e 100644 --- a/include/llvm/ADT/ImmutableIntervalMap.h +++ b/include/llvm/ADT/ImmutableIntervalMap.h @@ -95,7 +95,7 @@ public: TreeTy *Add(TreeTy *T, value_type_ref V) { T = Add_internal(V,T); - MarkImmutable(T); + this->MarkImmutable(T); return T; } @@ -103,31 +103,31 @@ public: if (!T) return NULL; - key_type_ref CurrentKey = ImutInfo::KeyOfValue(Value(T)); + key_type_ref CurrentKey = ImutInfo::KeyOfValue(this->Value(T)); if (ImutInfo::isContainedIn(K, CurrentKey)) return T; else if (ImutInfo::isLess(K, CurrentKey)) - return Find(Left(T), K); + return Find(this->Left(T), K); else - return Find(Right(T), K); + return Find(this->Right(T), K); } private: TreeTy *Add_internal(value_type_ref V, TreeTy *T) { key_type_ref K = ImutInfo::KeyOfValue(V); T = RemoveAllOverlaps(T, K); - if (isEmpty(T)) - return CreateNode(NULL, V, NULL); + if (this->isEmpty(T)) + return this->CreateNode(NULL, V, NULL); assert(!T->isMutable()); - key_type_ref KCurrent = ImutInfo::KeyOfValue(Value(T)); + key_type_ref KCurrent = ImutInfo::KeyOfValue(this->Value(T)); if (ImutInfo::isLess(K, KCurrent)) - return Balance(Add_internal(V, Left(T)), Value(T), Right(T)); + return this->Balance(Add_internal(V, this->Left(T)), this->Value(T), this->Right(T)); else - return Balance(Left(T), Value(T), Add_internal(V, Right(T))); + return this->Balance(this->Left(T), this->Value(T), Add_internal(V, this->Right(T))); } // Remove all overlaps from T. @@ -136,7 +136,7 @@ private: do { Changed = false; T = RemoveOverlap(T, K, Changed); - MarkImmutable(T); + this->MarkImmutable(T); } while (Changed); return T; @@ -146,19 +146,19 @@ private: TreeTy *RemoveOverlap(TreeTy *T, key_type_ref K, bool &Changed) { if (!T) return NULL; - Interval CurrentK = ImutInfo::KeyOfValue(Value(T)); + Interval CurrentK = ImutInfo::KeyOfValue(this->Value(T)); // If current key does not overlap the inserted key. if (CurrentK.getStart() > K.getEnd()) - return Balance(RemoveOverlap(Left(T), K, Changed), Value(T), Right(T)); + return this->Balance(RemoveOverlap(this->Left(T), K, Changed), this->Value(T), this->Right(T)); else if (CurrentK.getEnd() < K.getStart()) - return Balance(Left(T), Value(T), RemoveOverlap(Right(T), K, Changed)); + return this->Balance(this->Left(T), this->Value(T), RemoveOverlap(this->Right(T), K, Changed)); // Current key overlaps with the inserted key. // Remove the current key. Changed = true; - data_type_ref OldData = ImutInfo::DataOfValue(Value(T)); - T = Remove_internal(CurrentK, T); + data_type_ref OldData = ImutInfo::DataOfValue(this->Value(T)); + T = this->Remove_internal(CurrentK, T); // Add back the unoverlapped part of the current key. if (CurrentK.getStart() < K.getStart()) { if (CurrentK.getEnd() <= K.getEnd()) { |