The use of operators pairs (``++=+++``, ``++=-++`` or ``++=!++``) where the reversed, single operator was meant (``+++=++``, ``++-=++`` or ``++!=++``) will compile and run, but not produce the expected results.


This rule raises an issue when ``++=+++``, ``++=-++`` and ``++=!++`` are used without any space between the two operators and when there is at least one whitespace after.

== Noncompliant Code Example

----
let target =-5;
let num = 3;

target =- num;  // Noncompliant; target = -3. Is that really what's meant?
target =+ num; // Noncompliant; target = 3
----

== Compliant Solution

----
let target = -5;
let num = 3;

target = -num;  // Compliant; intent to assign inverse value of num is clear
target += num;
----

ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
