Skip to main content

avoid_empty_else

Learn about the avoid_empty_else linter rule.

Stable
Core
Fix available

Avoid empty statements in else clauses.

Details

#

AVOID empty statements in the else clause of if statements.

BAD:

dart
if (x > y)  print('1'); else ;  print('2'); 

If you want a statement that follows the empty clause to conditionally run, remove the dangling semicolon to include it in the else clause. Optionally, also enclose the else's statement in a block.

GOOD:

dart
if (x > y)  print('1'); else  print('2'); 

GOOD:

dart
if (x > y) {  print('1'); } else {  print('2'); } 

If you want a statement that follows the empty clause to unconditionally run, remove the else clause.

GOOD:

dart
if (x > y) print('1');  print('2'); 

Enable

#

To enable the avoid_empty_else rule, add avoid_empty_else under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:  rules:  - avoid_empty_else 

If you're instead using the YAML map syntax to configure linter rules, add avoid_empty_else: true under linter > rules:

analysis_options.yaml
yaml
linter:  rules:  avoid_empty_else: true