
Unreachable code is never executed. The C# compiler issues an unreachable code detected warning. This warning can help you eliminate code that is not used. We look at unreachable code. We also see one way you can eliminate this error but not remove the code.
This C# article examines the unreachable code detected warning. It offers a solution.

This program demonstrates some unreachable code. In the while loop, the condition must be evaluated before the loop body is entered. In a while(false) loop, all the enclosed code is unreachable. The compiler can figure this out before the program ever executes. It will generate an unreachable code detected warning. The "int value = 1;" statement is never reached.
Program with unreachable code [C#]
using System;
class Program
{
static void Main()
{
while (false)
{
int value = 1;
if (value == 2)
{
throw new Exception();
}
}
}
}
Compilation warning
Warning CS0162: Unreachable code detected
Sometimes, you may not want to delete the unreachable code for some reason. If you comment it out, it will no longer be compiled, which can result in "bit rot" or bugs over time. With pragma warning disable, you can keep the code compiling but eliminate the error as well.
Pragma DirectiveUsing pragma to disable warnings [C#]
using System;
class Program
{
static void Main()
{
#pragma warning disable
while (false)
{
int value = 1;
if (value == 2)
{
throw new Exception();
}
}
#pragma warning restore
}
}
Compilation warnings
(None.)Reachability in the C# language is carefully described in the specification. The reachability and unreachability of every statement is determined based on its end point; an end point is the location immediately after a statement. If the end point of a statement is reachable, the statement itself is reachable.
Directives