Code Inspection: Redundant control flow jump statement
If control flow does not change after you remove jump statements, such as return;
or goto
, these statements are redundant.
For example, using return;
at the end of a void function is allowed by the compiler but it does not make the code better. A void function completes anyway when all its instructions have been executed, and control is transferred to the invoker of the method. So in this case the return;
statement is redundant.
In the example below we have a redundant return;
in a constructor and ReSharper suggests removing it.
public class MyClass
{
public MyClass(List<object> list)
{
_contents = list;
Console.WriteLine(_contents.ToString());
return;
}
}
public class MyClass
{
public MyClass(List<object> list)
{
_contents = list;
Console.WriteLine(_contents.ToString());
}
}
Last modified: 21 July 2022