mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Our libcache implementation of swift::sys::Cache was broken for ref-counted values (which are used by e.g. the SourceKit ASTManager). It would always `retain(value)` in `set(key, value)`, but under the hood libcache shares values, so we would only get one `release(value)` if the same value was used across multiple keys, or if the same value *and* key were set multiple times. This was causing us to never release ASTs cached by SourceKit even when the underlying libcache purged itself under memory pressure. rdar://problem/21619189
40 lines
872 B
CMake
40 lines
872 B
CMake
set(generated_tests UnicodeGraphemeBreakTest.cpp.gyb)
|
|
|
|
handle_gyb_sources(
|
|
gyb_dependency_targets
|
|
generated_tests
|
|
${SWIFT_HOST_VARIANT_ARCH})
|
|
|
|
add_swift_unittest(SwiftBasicTests
|
|
BlotMapVectorTest.cpp
|
|
CacheTest.cpp
|
|
ClusteredBitVectorTest.cpp
|
|
DemangleTest.cpp
|
|
DiverseStackTest.cpp
|
|
EditorPlaceholderTest.cpp
|
|
EncodedSequenceTest.cpp
|
|
FileSystemTest.cpp
|
|
ImmutablePointerSetTest.cpp
|
|
OptionSetTest.cpp
|
|
OwnedStringTest.cpp
|
|
PointerIntEnumTest.cpp
|
|
PrefixMapTest.cpp
|
|
RangeTest.cpp
|
|
SourceManagerTest.cpp
|
|
StringExtrasTest.cpp
|
|
SuccessorMapTest.cpp
|
|
ThreadSafeRefCntPointerTest.cpp
|
|
TransformArrayRefTest.cpp
|
|
TreeScopedHashTableTest.cpp
|
|
UnicodeTest.cpp
|
|
ValueEnumeratorTest.cpp
|
|
${generated_tests}
|
|
)
|
|
|
|
add_dependencies(SwiftBasicTests "${gyb_dependency_targets}")
|
|
|
|
target_link_libraries(SwiftBasicTests
|
|
swiftBasic
|
|
clangBasic
|
|
)
|