if (x=y)
should be if (x==y)
. in any of the cases where a conditional is expected, a single-equal sign should be flagged. similarly, if an assignment operator is expected, but a comparison-equality operator is included, it should be flagged.
or (but i hate this) if (x=y)
should evaluate to true
, always, and x should get the value of y (but please, don’t do that).