diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/numeric/PointlessArithmeticExpressionInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/numeric/PointlessArithmeticExpressionInspection.java index b1ad2ddde4a6..97ac5ec981aa 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/numeric/PointlessArithmeticExpressionInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/numeric/PointlessArithmeticExpressionInspection.java @@ -40,6 +40,7 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.util.List; +import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; @@ -230,7 +231,8 @@ public class PointlessArithmeticExpressionInspection extends BaseInspection { isOne(expressions[1]); } if (type.equals(JavaTokenType.ASTERISK)) { - return isOne(expressions[0]) || isOne(expressions[1]); + return (isOne(expressions[0]) || isOne(expressions[1])) && + Objects.requireNonNull(expressions[0].getType()).equals(expressions[1].getType()); } return false; } diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/numeric/pointless_arithmetic_expression/PointlessArithmeticExpression.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/numeric/pointless_arithmetic_expression/PointlessArithmeticExpression.java index 3ac31b4853be..90b9fd4ef18b 100644 --- a/plugins/InspectionGadgets/test/com/siyeh/igtest/numeric/pointless_arithmetic_expression/PointlessArithmeticExpression.java +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/numeric/pointless_arithmetic_expression/PointlessArithmeticExpression.java @@ -173,4 +173,8 @@ class FloatingPoint { float res7 = x * 0.0f; float res8 = 0.0f / x; } + + void multiplyToCast(int x, int y) { + double xyz = (1.0 * x) / y; + } } \ No newline at end of file