This rule applies whenever an IF
statement is followed by one or more ELSE IF
statements; the final ELSE IF
should be followed by an ELSE
statement.
The requirement for a final ELSE
statement is defensive programming.
The ELSE
statement should either take appropriate action or contain a suitable comment as to why no action is taken. This is
consistent with the requirement to have a final ELSE
clause in a CASE
statement.
Noncompliant code example
IF @x = 1
PRINT 'A'
ELSE IF @x = 2
PRINT 'B'
ELSE IF @x = 3
PRINT 'C'
-- Noncompliant; final ELSE is missing
Compliant solution
IF @x = 1
PRINT 'A'
ELSE IF @x = 2
PRINT 'B'
ELSE IF @x = 3
PRINT 'C'
ELSE
PRINT 'Z'