>
>
>
V671. The 'swap' function may interchan…


V671. The 'swap' function may interchange 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);

This diagnostic is classified as:

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