From 48df541e0fc251edb6ea3fb90ceccabfb9210622 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Tue, 11 Feb 2014 19:17:06 +0400 Subject: [PATCH] Fix warning and don't fall if class isn't found in binding context after resolve --- .../caches/resolve/IDELightClassGenerationSupport.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/jet/plugin/caches/resolve/IDELightClassGenerationSupport.java b/idea/src/org/jetbrains/jet/plugin/caches/resolve/IDELightClassGenerationSupport.java index 2c135b9f285..da5f283727b 100644 --- a/idea/src/org/jetbrains/jet/plugin/caches/resolve/IDELightClassGenerationSupport.java +++ b/idea/src/org/jetbrains/jet/plugin/caches/resolve/IDELightClassGenerationSupport.java @@ -102,7 +102,14 @@ public class IDELightClassGenerationSupport extends LightClassGenerationSupport if (JetPsiUtil.isLocal(classOrObject)) { BindingContext bindingContext = session.resolveToElement(classOrObject); - ForceResolveUtil.forceResolveAllContents(bindingContext.get(BindingContext.CLASS, classOrObject)); + ClassDescriptor descriptor = bindingContext.get(BindingContext.CLASS, classOrObject); + + if (descriptor == null) { + LOG.warn("No class descriptor in context for class: " + JetPsiUtil.getElementTextWithContext(classOrObject)); + return new LightClassConstructionContext(BindingContext.EMPTY, null); + } + + ForceResolveUtil.forceResolveAllContents(descriptor); return new LightClassConstructionContext(bindingContext, null); }