V671. It is possible that the 'swap' function interchanges a variable with itself.


The analyzer has detected a potential error that may occur when calling the 'swap' function. The function receives identical actual arguments, which is very strange. The programmer must have made a misprint.

Have a look at this example:

int arg1, arg2;
....
swap(arg1, arg1);
....

A misprint causes the swap() function to swap the value of the 'arg1' variable for itself. The code should be fixed in the following way:

swap(arg1, arg2);

The following sample is also considered suspicious:

MyClass arg1, arg2;
....
arg1.Swap(arg1);
....

It can be fixed in the following way:

arg1.Swap(arg2);

According to Common Weakness Enumeration, potential errors found by using this diagnostic are classified as CWE-687.

You can look at examples of errors detected by the V671 diagnostic.


Bugs Found

Checked Projects
336
Collected Errors
12 743