From 4ffd02dd8b7caaa5edc644b7a06783eb477c9018 Mon Sep 17 00:00:00 2001 From: "alexey.afanasiev" Date: Tue, 10 Oct 2017 15:41:40 +0300 Subject: [PATCH] IDEA-179716 Cannot return Integer from method returning short. Fix docs. --- .../groovy/codeInspection/type/GroovyTypeCheckVisitor.java | 2 +- .../lang/psi/typeEnhancers/GrContainerTypeConverter.java | 7 ++++--- .../groovy/lang/psi/typeEnhancers/GrNumberConverter.java | 5 +++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/codeInspection/type/GroovyTypeCheckVisitor.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/codeInspection/type/GroovyTypeCheckVisitor.java index 56b72ca27c22..e7d36fcee74f 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/codeInspection/type/GroovyTypeCheckVisitor.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/codeInspection/type/GroovyTypeCheckVisitor.java @@ -795,7 +795,7 @@ public class GroovyTypeCheckVisitor extends BaseInspectionVisitor { ); } - //copypaste from org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.checkPossibleLooseOfPrecision() + //see org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.checkPossibleLooseOfPrecision() static boolean isPossibleLooseOfPrecision(@NotNull PsiType targetType, @NotNull PsiType actualType, @NotNull GrExpression expression) { int targetRank = getTypeRank(targetType); int actualRank = getTypeRank(actualType); diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrContainerTypeConverter.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrContainerTypeConverter.java index f03286988a0d..9f4e7e8c44a3 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrContainerTypeConverter.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrContainerTypeConverter.java @@ -36,9 +36,10 @@ public class GrContainerTypeConverter extends GrTypeConverter { return null; } - private static ConversionResult isCSConvertible(PsiType targetType, - PsiType actualType, - GroovyPsiElement context) { + @Nullable + private static ConversionResult isCSConvertible(@NotNull PsiType targetType, + @NotNull PsiType actualType, + @NotNull GroovyPsiElement context) { if (targetType instanceof PsiArrayType && actualType instanceof PsiArrayType) { return TypesUtil.isAssignableByParameter(((PsiArrayType)targetType).getComponentType(), ((PsiArrayType)actualType).getComponentType(), context) ? ConversionResult.OK : ConversionResult.ERROR; diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrNumberConverter.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrNumberConverter.java index 922ad84f8916..47151f54510e 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrNumberConverter.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/typeEnhancers/GrNumberConverter.java @@ -28,14 +28,15 @@ public class GrNumberConverter extends GrTypeConverter { @NotNull PsiType actualType, @NotNull GroovyPsiElement context, @NotNull ApplicableTo currentPosition) { - if (PsiUtil.isCompileStatic(context)) return isCSConvertible(targetType, actualType, context, currentPosition); + if (PsiUtil.isCompileStatic(context)) return isCSConvertible(targetType, actualType); if (TypesUtil.isNumericType(targetType) && TypesUtil.isNumericType(actualType)) { return OK; } return null; } - private static ConversionResult isCSConvertible(PsiType targetType, PsiType actualType, GroovyPsiElement context, @NotNull ApplicableTo currentPosition) { + @Nullable + private static ConversionResult isCSConvertible(@NotNull PsiType targetType, @NotNull PsiType actualType) { if (TypesUtil.isClassType(actualType, JAVA_MATH_BIG_DECIMAL)) return isFloatOrDoubleType(targetType) ? OK : null;