mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[groovy] unwrap class type for static GDK methods before checking applicability (IDEA-156373)
This commit is contained in:
+4
-2
@@ -22,7 +22,6 @@ import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.impl.PsiSubstitutorImpl;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.util.Function;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -380,7 +379,10 @@ public class GroovyTypeCheckVisitor extends BaseInspectionVisitor {
|
||||
});
|
||||
}
|
||||
final PsiMethod staticMethod = ((GrGdkMethod)method).getStaticMethod();
|
||||
final PsiType qualifierType = info.getQualifierInstanceType();
|
||||
PsiType qualifierType = info.getQualifierInstanceType();
|
||||
if (method.hasModifierProperty(PsiModifier.STATIC)) {
|
||||
qualifierType = ResolveUtil.unwrapClassType(qualifierType);
|
||||
}
|
||||
|
||||
//check methods processed by @Category(ClassWhichProcessMethod) annotation
|
||||
if (qualifierType != null &&
|
||||
|
||||
+8
@@ -1993,4 +1993,12 @@ class Main {
|
||||
}
|
||||
'''
|
||||
}
|
||||
|
||||
void 'test static GDK method applicable'() {
|
||||
testHighlighting '''
|
||||
def doParse() {
|
||||
Date.parse('dd.MM.yyyy', '01.12.2016')
|
||||
}
|
||||
''', GroovyAssignabilityCheckInspection
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user