V6015. Consider inspecting the expression. Probably the '!='/'-='/'+=' should be used here.

May 10, 2018

The analyzer has detected a potential error, related to a strange usage of operators ('=!', '=-', '=+'). Most likely, their usage is incorrect and one of the following operators should be used here: '!=', '-=', '+='.

Operator '=!'

Example of suspicious code:

boolean a = ... ;
boolean b = ... ;
...
if (a =! b)
{
...
}

It's most probably that this code should check that the 'a' variable is not equal to 'b'. If so, the correct code should look like follows:

if (a != b)
{
...
}

The analyzer accounts for formatting in the expression. That's why if it is exactly assignment you need to perform - not comparison - you should specify it through parentheses or blanks. The following code samples are considered correct:

if (a = !b)
...
if (a=(!b))
...

Operator '=-'

Example of suspicious code:

int size = ... ;
int delta ... ;
...
size =- delta;

This code may be correct, but it is highly probable that there is a misprint and the programmer actually intended to use the '-=' operator. This is the fixed code:

size -= delta;

If the code is correct, you may type in an additional space between the characters '=' and '-' to remove the V6015 warning. This is an example of correct code where the warning is not generated:

size = -delta;

Operator '=+'

Example of suspicious code:

int size = ... ;
int delta ... ;
...
size =+ delta;

This is the fixed code:

size+=delta;

If this code is correct, you may remove '+' or type in an additional space to prevent showing the V6015 warning. The following is an example of correct code where the warning is not generated: