Eliminate a redundent ctor; eliminate one more potential new [0].

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34313 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng 2007-02-15 19:05:25 +00:00
parent 057f8e0845
commit 334df9d83f

View File

@ -72,25 +72,23 @@ public:
Bits = NULL;
}
/// BitVector ctor - Creates a bitvector of specified number of bits. All
/// bits are initialized to false;
BitVector(unsigned s) : Size(s) {
Capacity = NumBitWords(s);
Bits = new BitWord[Capacity];
init_words(Bits, Capacity, false);
}
/// BitVector ctor - Creates a bitvector of specified number of bits. All
/// bits are initialized to the specified value.
BitVector(unsigned s, bool t) : Size(s) {
explicit BitVector(unsigned s, bool t = false) : Size(s) {
Capacity = NumBitWords(s);
Bits = new BitWord[Capacity];
init_words(Bits, Capacity, t);
clear_unused_bits();
if (t)
clear_unused_bits();
}
/// BitVector copy ctor.
BitVector(const BitVector &RHS) : Size(RHS.size()) {
if (Size == 0) {
Bits = NULL;
return;
}
Capacity = NumBitWords(RHS.size());
Bits = new BitWord[Capacity];
std::copy(RHS.Bits, &RHS.Bits[Capacity], Bits);