diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java index 16dcc83c13a..d5379cf073e 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java @@ -1012,7 +1012,6 @@ public class JavaDescriptorResolver { PsiType receiverType = entry.getValue().receiverType; MembersForProperty members = entry.getValue(); - JetType type = semanticServices.getTypeTransformer().transformToType(propertyType); boolean isFinal; if (members.setter == null && members.getter == null) { isFinal = false; @@ -1023,7 +1022,7 @@ public class JavaDescriptorResolver { } else { isFinal = false; } - + PsiMemberWrapper anyMember; if (members.getter != null) { anyMember = members.getter; @@ -1088,6 +1087,8 @@ public class JavaDescriptorResolver { receiverJetType = semanticServices.getTypeTransformer().transformToType(receiverType); } + JetType type = semanticServices.getTypeTransformer().transformToType(propertyType); + propertyDescriptor.setType( type, typeParameters, diff --git a/compiler/testData/readClass/prop/ExtValClass.kt b/compiler/testData/readClass/prop/ExtValClass.kt new file mode 100644 index 00000000000..02c6edf89ec --- /dev/null +++ b/compiler/testData/readClass/prop/ExtValClass.kt @@ -0,0 +1,4 @@ +package test + +val
P.anotherJavaClass: java.lang.Class
+ get() = throw Exception() diff --git a/compiler/testData/readClass/prop/ExtVarClass.kt b/compiler/testData/readClass/prop/ExtVarClass.kt new file mode 100644 index 00000000000..f32b9564961 --- /dev/null +++ b/compiler/testData/readClass/prop/ExtVarClass.kt @@ -0,0 +1,5 @@ +package test + +var
P.anotherJavaClass: java.lang.Class
+ get() = throw Exception() + set(p: java.lang.Class
) = throw Exception()