diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/typedef/members/GrMethodBaseImpl.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/typedef/members/GrMethodBaseImpl.java index 23bd607dfdb4..15384571999d 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/typedef/members/GrMethodBaseImpl.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/typedef/members/GrMethodBaseImpl.java @@ -156,7 +156,12 @@ public abstract class GrMethodBaseImpl extends GroovyBaseEl PsiType nominal = getNominalType(method); if (nominal != null && nominal.equals(PsiType.VOID)) return nominal; PsiType inferred = getInferredType(method); - if (nominal == null) return inferred; + if (nominal == null) { + if (inferred == null) { + return PsiType.getJavaLangObject(PsiManager.getInstance(method.getProject()), method.getResolveScope()); + } + return inferred; + } if (inferred != null && inferred != PsiType.NULL) { if (nominal.isAssignableFrom(inferred)) return inferred; } diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/ResolvePropertyTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/ResolvePropertyTest.groovy index 341d505ddb1f..2eee432f0681 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/ResolvePropertyTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/ResolvePropertyTest.groovy @@ -16,10 +16,6 @@ package org.jetbrains.plugins.groovy.lang.resolve; -import com.intellij.psi.PsiClassType -import com.intellij.psi.PsiElement -import com.intellij.psi.PsiMethod -import com.intellij.psi.PsiReference import com.intellij.psi.util.PropertyUtil import org.jetbrains.plugins.groovy.GroovyFileType import org.jetbrains.plugins.groovy.lang.psi.GrReferenceElement @@ -34,6 +30,7 @@ import org.jetbrains.plugins.groovy.lang.psi.api.statements.typedef.members.GrEn import org.jetbrains.plugins.groovy.lang.psi.api.statements.typedef.members.GrMethod import org.jetbrains.plugins.groovy.lang.psi.api.toplevel.GrTopStatement import org.jetbrains.plugins.groovy.util.TestUtils +import com.intellij.psi.* /** * @author ven @@ -154,7 +151,7 @@ public class ResolvePropertyTest extends GroovyResolveTestCase { PsiReference ref = configureByFile("recursive2/A.groovy"); PsiElement resolved = ref.resolve(); assertTrue(resolved instanceof GrMethod); - assertNull(((GrMethod) resolved).getReturnType()); + assertEquals(CommonClassNames.JAVA_LANG_OBJECT, ((GrMethod) resolved).returnType.canonicalText); } public void testNotAField() throws Exception {