llvm-6502/unittests/ADT
Owen Anderson 9cbd7afb76 Fix a subtle issue in SmallVector. The following code did not work as expected:
vec.insert(vec.begin(), vec[3]);
The issue was that vec[3] returns a reference into the vector, which is invalidated when insert() memmove's the elements down to make space.  The method needs to specifically detect and handle this case to correctly match std::vector's semantics.

Thanks to Howard Hinnant for clarifying the correct behavior, and explaining how std::vector solves this problem.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134554 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-06 22:36:59 +00:00
..
APFloatTest.cpp Avoid turning a floating point division with a constant power of two into a denormal multiplication. 2011-03-30 17:02:54 +00:00
APIntTest.cpp unittests: add test for APInt::toString() 2011-06-15 23:36:34 +00:00
BitVectorTest.cpp
DAGDeltaAlgorithmTest.cpp
DeltaAlgorithmTest.cpp
DenseMapTest.cpp
DenseSetTest.cpp
FoldingSet.cpp
ilistTest.cpp
ImmutableSetTest.cpp
IntEqClassesTest.cpp
IntervalMapTest.cpp
Makefile
PackedVectorTest.cpp Try fixing http://google1.osuosl.org:8011/builders/clang-i686-freebsd/builds/3548 2011-06-15 20:39:05 +00:00
SmallBitVectorTest.cpp
SmallStringTest.cpp
SmallVectorTest.cpp Fix a subtle issue in SmallVector. The following code did not work as expected: 2011-07-06 22:36:59 +00:00
SparseBitVectorTest.cpp
StringMapTest.cpp
StringRefTest.cpp Remove bounded StringRef::compare() since nothing but Clang SA was using it and it is just as easy to use StringRef::substr() preceding StringRef::compare() to achieve the same thing. 2011-04-28 20:20:12 +00:00
TripleTest.cpp
TwineTest.cpp