diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/DiagnosticsElementsCache.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/DiagnosticsElementsCache.java index c83d36b0c13..a4a4c101959 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/DiagnosticsElementsCache.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/DiagnosticsElementsCache.java @@ -20,6 +20,7 @@ import com.intellij.openapi.util.AtomicNotNullLazyValue; import com.intellij.psi.PsiElement; import com.intellij.util.containers.ConcurrentMultiMap; import com.intellij.util.containers.MultiMap; +import kotlin.collections.CollectionsKt; import kotlin.jvm.functions.Function1; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.diagnostics.Diagnostic; @@ -51,6 +52,10 @@ public class DiagnosticsElementsCache { private static MultiMap buildElementToDiagnosticCache(Diagnostics diagnostics, Function1 filter) { MultiMap elementToDiagnostic = new ConcurrentMultiMap<>(); for (Diagnostic diagnostic : diagnostics) { + if (diagnostic == null) { + throw new IllegalStateException( + "There shouldn't be null diagnostics in the collection: " + CollectionsKt.toList(diagnostics)); + } if (filter.invoke(diagnostic)) { elementToDiagnostic.putValue(diagnostic.getPsiElement(), diagnostic); }