← back to index

S1116 — Empty statements should be removed

Language: C#  |  Type: CODE_SMELL  |  Severity: Minor

Tags: unused

Why is this an issue?

Empty statements represented by a semicolon ; are statements that do not perform any operation. They are often the result of a typo or a misunderstanding of the language syntax. It is a good practice to remove empty statements since they don’t add value and lead to confusion and errors.

Exceptions

This rule does not raise when an empty statement is the only statement in a loop.

for (int i = 0; i < 3; Console.WriteLine(i), i++);

Code examples

Noncompliant code example

void DoSomething()
{
    ; // Noncompliant - was used as a kind of TODO marker
}

void DoSomethingElse()
{
    Console.WriteLine("Hello, world!");;  // Noncompliant - double ;
}

Compliant solution

void DoSomething()
{
}

void DoSomethingElse()
{
    Console.WriteLine("Hello, world!");
}