Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Assignment made to same variable; did you mean to assign something else?
This warning occurs when you assign a variable to itself, such as a = a
.
Several common mistakes can generate this warning:
Writing
a = a
as the condition of an if statement, such asif (a = a)
. You probably meant to sayif (a == a)
, which is always true, so you could write this more concisely asif (true)
.Mistyping. You probably meant to say
a = b
.In a constructor where the parameter has the same name as the field, not using the this keyword: you probably meant to say
this.a = a
.
Example
The following sample generates CS1717.
// CS1717.cs
// compile with: /W:3
public class Test
{
public static void Main()
{
int x = 0;
x = x; // CS1717
}
}