From 1edce76d01487cc71932a34d0c8f98ef4133d021 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Mon, 18 May 2015 19:55:24 +0300 Subject: [PATCH] Fix for EA-68569 with a test. #EA-68569 Fixed --- .../src/org/jetbrains/kotlin/codegen/PropertyCodegen.java | 4 ++-- idea/testData/javaFacade/ea68569.kt | 3 +++ .../jetbrains/kotlin/idea/javaFacade/JetJavaFacadeTest.java | 4 ++++ 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 idea/testData/javaFacade/ea68569.kt diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/PropertyCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/PropertyCodegen.java index b664ad0694e..33496bfb0a6 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/PropertyCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/PropertyCodegen.java @@ -284,8 +284,8 @@ public class PropertyCodegen { } private void generatePropertyDelegateAccess(JetProperty p, PropertyDescriptor propertyDescriptor) { - assert p.getDelegateExpression() != null: "Property must have a delegate expression here"; - JetType delegateType = bindingContext.getType(p.getDelegateExpression()); + JetExpression delegateExpression = p.getDelegateExpression(); + JetType delegateType = delegateExpression != null ? bindingContext.getType(p.getDelegateExpression()) : null; if (delegateType == null) { // If delegate expression is unresolved reference delegateType = ErrorUtils.createErrorType("Delegate type"); diff --git a/idea/testData/javaFacade/ea68569.kt b/idea/testData/javaFacade/ea68569.kt new file mode 100644 index 00000000000..095cd83daa5 --- /dev/null +++ b/idea/testData/javaFacade/ea68569.kt @@ -0,0 +1,3 @@ +class Some() { + val renderer by +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/javaFacade/JetJavaFacadeTest.java b/idea/tests/org/jetbrains/kotlin/idea/javaFacade/JetJavaFacadeTest.java index 4c08636c6c1..9d51a2cdad4 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/javaFacade/JetJavaFacadeTest.java +++ b/idea/tests/org/jetbrains/kotlin/idea/javaFacade/JetJavaFacadeTest.java @@ -119,6 +119,10 @@ public class JetJavaFacadeTest extends JetLightCodeInsightFixtureTestCase { doTestWrapClass(); } + public void testEa68569() { + doTestWrapClass(); + } + public void testWrapTopLevelFunWithDefaultParams() { doTestWrapMethod(true); }