Reports assignments whose right side is a division that shouldn't be truncated to integer.

While occasionally intended, this construction is often buggy.

Example:

  int x = 18;
  x *= 3/2; // doesn't change x because of the integer division result

This code should be replaced with:

  int x = 18;
  x *= 3.0/2;

In the inspection options, you can disable warnings for suspicious but possibly correct divisions, for example, when the dividend can't be calculated statically.

  void calc(int d) {
     int x = 18;
     x *= d/2;
  }

New in 2019.2