diff --git a/compiler/frontend/src/org/jetbrains/kotlin/storage/LockBasedLazyResolveStorageManager.kt b/compiler/frontend/src/org/jetbrains/kotlin/storage/LockBasedLazyResolveStorageManager.kt index 7315770fbe1..ef7577070c2 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/storage/LockBasedLazyResolveStorageManager.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/storage/LockBasedLazyResolveStorageManager.kt @@ -23,14 +23,14 @@ import org.jetbrains.kotlin.resolve.BindingTrace import org.jetbrains.kotlin.util.slicedMap.ReadOnlySlice import org.jetbrains.kotlin.util.slicedMap.WritableSlice import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics -import com.intellij.util.containers.ConcurrentSoftValueHashMap +import com.intellij.util.containers.ContainerUtil public class LockBasedLazyResolveStorageManager(private val storageManager: StorageManager): StorageManager by storageManager, LazyResolveStorageManager { override fun createSoftlyRetainedMemoizedFunction(compute: Function1) = - storageManager.createMemoizedFunction(compute, ConcurrentSoftValueHashMap()) + storageManager.createMemoizedFunction(compute, ContainerUtil.createConcurrentSoftValueMap()) override fun createSoftlyRetainedMemoizedFunctionWithNullableValues(compute: Function1) = - storageManager.createMemoizedFunctionWithNullableValues(compute, ConcurrentSoftValueHashMap()) + storageManager.createMemoizedFunctionWithNullableValues(compute, ContainerUtil.createConcurrentSoftValueMap()) // It seems safe to have a separate lock for traces: // no other locks will be acquired inside the trace operations