Empty statement requires a comment explaining why (DC0003)
An empty statement (a lone semicolon or an empty begin...end block) is often a sign of incomplete code or a mistake. When an empty statement is intentional, it must be accompanied by a comment explaining why the statement is deliberately empty.
Without documentation, reviewers and maintainers cannot distinguish between intentional no-ops and forgotten implementations.
Example
The following code has an empty statement without explanation:
codeunit 50100 MyCodeunit
{
procedure MyProcedure()
begin
if SomeCondition then
; // Empty statement requires a comment explaining why [DC0003]
end;
}
To fix this, add a comment explaining the intent:
codeunit 50100 MyCodeunit
{
procedure MyProcedure()
begin
if SomeCondition then
; // Intentionally empty: condition handled by event subscriber in codeunit X
end;
}