include::../description.adoc[] == Noncompliant Code Example ---- when(param) { // missing else 1 -> doSomething() 2 -> doSomethingElse() } ---- == Compliant Solution ---- when(param) { 1 -> doSomething() 2 -> doSomethingElse() else -> error("myMessage") } ---- == Exceptions If the when clause is used as an expression, Kotlin compiler already enforces that all possible cases are covered with branch conditions. So no issue will be raised in this case. Example: ---- enum class Day { SUNDAY, MONDAY } ... val myVal = when(day) { MyEnum.SUNDAY -> 1 MyEnum.MONDAY -> 2 } ---- include::../see.adoc[]