﻿# 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:

```cpp
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:

```cpp
swap(arg1, arg2);
```

The following sample is also considered suspicious:

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

It can be fixed in the following way:

```cpp
arg1.Swap(arg2);
```