This documentation is archived and is not being maintained.

Compiler Warning (level 3) CS1717 

Error Message

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 as if (a = a). You probably meant to say if (a == a), which is always true, so you could write this more concisely as if (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
   }
}
Show: