llvm-project/llvm/unittests/ADT
Jakob Stoklund Olesen b8d29bf2e4 Add an assertion for a likely ilist::splice() contract violation.
The single-element ilist::splice() function supports a noop move:

  List.splice(I, List, I);

The corresponding std::list function doesn't allow that, so add a unit
test to document that behavior.

This also means that

  List.splice(I, List, F);

is somewhat surprisingly not equivalent to

  List.splice(I, List, F, next(F));

This patch adds an assertion to catch the illegal case I == F above.
Alternatively, we could make I == F a legal noop, but that would make
ilist differ even more from std::list.

llvm-svn: 170443
2012-12-18 19:28:37 +00:00
..
APFloatTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
APIntTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
BitVectorTest.cpp Fix a bug in the set(I,E)/reset(I,E) methods that I recently added. The boundary condition for checking if I and E were in the same word were incorrect, and, beyond that, the mask computation was not using a wide enough constant. 2012-10-16 06:04:27 +00:00
CMakeLists.txt Update CMake build. 2012-10-14 16:06:09 +00:00
DAGDeltaAlgorithmTest.cpp Remove some code that is no longer needed now that googletest knows how 2011-07-27 09:26:13 +00:00
DeltaAlgorithmTest.cpp
DenseMapTest.cpp Fixed bug in SmallDenseMap where it wouldn't leave enough space for an empty bucket if the number of values was exactly equal to the small capacity. This led to an infinite loop when finding a non-existent element 2012-10-23 18:47:35 +00:00
DenseSetTest.cpp Fix includes of llvm files that used angle brackets. 2012-09-15 18:45:38 +00:00
FoldingSet.cpp Add test for PR 8111. By Frits van Bommel. 2010-11-19 23:23:22 +00:00
HashingTest.cpp Fix typos found by http://github.com/lyda/misspell-check 2012-06-02 10:20:22 +00:00
ImmutableMapTest.cpp Fix a typo that made ImmutableMap::getMaxElement() useless. 2012-10-14 15:56:39 +00:00
ImmutableSetTest.cpp Tweak ImmutableMap/ImmutableSet/ImmutableList APIs 2010-11-24 00:54:28 +00:00
IntEqClassesTest.cpp Add ADT/IntEqClasses.h as a light-weight implementation of EquivalenceClasses.h. 2010-12-21 00:04:46 +00:00
IntervalMapTest.cpp Add more checks to IntervalMapOverlaps::advance() to ensure that advanceTo sees 2010-12-17 22:07:54 +00:00
IntrusiveRefCntPtrTest.cpp RefCountedBaseVPTR needs the IntrusiveRefCntPtrInfo as friend, 2012-01-31 19:58:34 +00:00
Makefile Move ValueMapTest from ADT to VMCore so that ADT doesn't need 2010-09-27 15:50:08 +00:00
PackedVectorTest.cpp Try fixing http://google1.osuosl.org:8011/builders/clang-i686-freebsd/builds/3548 2011-06-15 20:39:05 +00:00
SCCIteratorTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
SmallPtrSetTest.cpp SmallPtrSet: Provide a more efficient implementation of swap than the default triple-copy std::swap. 2012-03-06 20:40:02 +00:00
SmallStringTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
SmallVectorTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
SparseBitVectorTest.cpp
SparseSetTest.cpp SparseSet: Add support for key-derived indexes and arbitrary key types. 2012-04-20 20:05:28 +00:00
StringMapTest.cpp Fix PR13148, an inf-loop in StringMap. 2012-06-19 17:40:35 +00:00
StringRefTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
TinyPtrVectorTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
TripleTest.cpp Add powerpc-ibm-aix to Triple. Patch by Kai. 2012-10-12 11:08:57 +00:00
TwineTest.cpp Sort the #include lines for unittest/... 2012-12-04 10:23:08 +00:00
VariadicFunctionTest.cpp As Doug pointed out (and I really should know), it is perfectly easy to 2011-12-17 10:20:15 +00:00
ilistTest.cpp Add an assertion for a likely ilist::splice() contract violation. 2012-12-18 19:28:37 +00:00