summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2007-07-09 20:59:01 +0000
committerOwen Anderson <resistor@mac.com>2007-07-09 20:59:01 +0000
commit4d6f96d6997738419627ebe13dd6cb9c88a98fd7 (patch)
tree8116cef12b5100e2ba0582c6cc9d5cbfeb73d50f
parentb42295df4da77a34519d0c49840a8b997d3f0b7c (diff)
downloadllvm-4d6f96d6997738419627ebe13dd6cb9c88a98fd7.tar.gz
llvm-4d6f96d6997738419627ebe13dd6cb9c88a98fd7.tar.bz2
llvm-4d6f96d6997738419627ebe13dd6cb9c88a98fd7.tar.xz
Make the assignment operator for SmallPtrSet return a reference, and fix a long-standing bug in the copy
ctor while I'm at it. Thanks to Chris Lattner for help with this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38470 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/ADT/SmallPtrSet.h2
-rw-r--r--lib/Support/SmallPtrSet.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/include/llvm/ADT/SmallPtrSet.h b/include/llvm/ADT/SmallPtrSet.h
index 2563982f51..9f975af07c 100644
--- a/include/llvm/ADT/SmallPtrSet.h
+++ b/include/llvm/ADT/SmallPtrSet.h
@@ -240,7 +240,7 @@ public:
// Allow assignment from any smallptrset with the same element type even if it
// doesn't have the same smallsize.
- const SmallPtrSet<PtrType, SmallSize>
+ const SmallPtrSet<PtrType, SmallSize>&
operator=(const SmallPtrSet<PtrType, SmallSize> &RHS) {
CopyFrom(RHS);
return *this;
diff --git a/lib/Support/SmallPtrSet.cpp b/lib/Support/SmallPtrSet.cpp
index 5ad243033f..e8e530fcee 100644
--- a/lib/Support/SmallPtrSet.cpp
+++ b/lib/Support/SmallPtrSet.cpp
@@ -164,7 +164,7 @@ SmallPtrSetImpl::SmallPtrSetImpl(const SmallPtrSetImpl& that) {
CurArray[CurArraySize] = 0;
// Copy over all valid entries.
- for (void **BucketPtr = that.CurArray, **E = that.CurArray+CurArraySize;
+ for (void **BucketPtr = that.CurArray, **E = that.CurArray+that.CurArraySize;
BucketPtr != E; ++BucketPtr) {
// Copy over the element if it is valid.
void *Elt = *BucketPtr;