Compiler Warning (level 2) CS0162
Unreachable code detected
The compiler detected code that will never be executed.
Example
The following example generates CS0162:
// CS0162.cs
// compile with: /W:2
public class Program
{
public static void Main()
{
goto lab1;
{
// The following statements cannot be reached:
int i = 9; // CS0162
i++;
}
lab1:
{
}
}
}
Another common example where this error is generated is as follows:
public static class Class1
{
public static string Method1()
{
string x = "a";
switch (x)
{
case "a":
return "a";
break; // CS0162
}
return "";
}
}
The break
statement cannot be reached because it occurs after the return
statement.
The return
statement ends the enclosing case
branch.