Why is this an issue?

Getting the remainder of an integer division by one always results in zero, making the operation redundant. Using minus one as the divisor can cause panic or overflow issues.

Code examples

Noncompliant code example

let x = 1;
let a = x % 1; // Noncompliant: Remainder of division by one.
let b = x % -1; // Noncompliant: Remainder of division by minus one.

Compliant solution

let x = 1;
let a = 0; // Compliant: Directly assigning zero instead of using `% 1`.
let b = 0; // Compliant: Directly assigning zero instead of using `% -1`.

Resources

Documentation