Why is this an issue?

The unit type () is always equal to itself and using it in comparisons is either redundant or a mistake, often caused by accidental semicolon placement.

Code examples

Noncompliant code example

fn foo() {}
fn bar() {}
fn baz() {}

if {
    foo();
} == {
    bar();
} {
    baz();
} // Noncompliant: Comparing unit values.

Compliant solution

fn foo() {}
fn bar() {}
fn baz() {}

foo();
bar();
baz(); // Compliant: No unit comparison.

Resources

Documentation