From: Rafael Espindola Date: Fri, 14 Nov 2014 07:02:38 +0000 (+0000) Subject: Use size_type for operator[]. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=dada992be7f08c35cc70b5aaf32469d4a86e0225;p=oota-llvm.git Use size_type for operator[]. This matches std::vector and is more efficient as it avoids truncations. With this the text segment of opt goes from 19705442 bytes to 19703930 bytes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221973 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/ADT/SmallVector.h b/include/llvm/ADT/SmallVector.h index 59cb80624d6..21175413f09 100644 --- a/include/llvm/ADT/SmallVector.h +++ b/include/llvm/ADT/SmallVector.h @@ -134,11 +134,11 @@ public: /// Return a pointer to the vector's buffer, even if empty(). const_pointer data() const { return const_pointer(begin()); } - reference operator[](unsigned idx) { + reference operator[](size_type idx) { assert(begin() + idx < end()); return begin()[idx]; } - const_reference operator[](unsigned idx) const { + const_reference operator[](size_type idx) const { assert(begin() + idx < end()); return begin()[idx]; }