diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/FromStringHintProcessor.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/FromStringHintProcessor.java index 6ca36c5bb70f..93f30d36850d 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/FromStringHintProcessor.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/FromStringHintProcessor.java @@ -49,7 +49,7 @@ public class FromStringHintProcessor extends SignatureHintProcessor { @Override public PsiType fun(String param) { try { - PsiType original = JavaPsiFacade.getElementFactory(method.getProject()).createTypeFromText(param, method); + PsiType original = JavaPsiFacade.getElementFactory(method.getProject()).createTypeFromText(param, method.getTypeParameterList()); return substitutor.substitute(original); } catch (IncorrectOperationException e) { diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/TypeInference2_3Test.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/TypeInference2_3Test.groovy index 7382469e50e4..e6882d70258b 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/TypeInference2_3Test.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/resolve/TypeInference2_3Test.groovy @@ -15,6 +15,7 @@ */ package org.jetbrains.plugins.groovy.lang.resolve +import com.intellij.psi.PsiMethod import com.intellij.testFramework.LightProjectDescriptor import org.jetbrains.plugins.groovy.GroovyLightProjectDescriptor @@ -205,4 +206,15 @@ class Thing { } + void testClosureParamsUsingGenerics() { + doTest("""\ + import groovy.transform.CompileStatic + + @CompileStatic + class Idea { + public static void main(String[] args) { + ["bc", "a", ].sort { it.size() } + } + }""", "java.lang.String") + } }