Non-exhaustive 'when' statements will be prohibited since 1.7
Reports a non-exhaustive when
statements that will lead to compilation error since 1.7.
Motivation types:
Problematic/meaningless usage patterns need to be discouraged/blocked (e.g. counterintuitive behaviors)
Code is error-prone
Inconsistency in the design (things are done differently in different contexts)
Impact types:
Compilation. Some code that used to compile won't compile any more
There were cases when such code worked with no exceptions
Some such code could compile without any warnings
More details: KT-47709: Make when statements with enum, sealed, and Boolean subjects exhaustive by default
The quick-fix adds the missing else -> {}
branch.
Example:
After the quick-fix is applied:
This inspection only reports if the Kotlin language level of the project or module is 1.6 or higher.
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Kotlin, @snapshot@ |