[IR] Print IrElseBranch as `constant true` in kotlin-like dumps in irText tests

This will enable running those tests on IR deserialized from klibs,
because deserialized IR doesn't have IrElseBranches, it only has regular
IrBranches.
(IrElseBranch is just an IrBranch with constant true condition)

^KT-64429
diff --git a/compiler/testData/ir/irText/classes/dataClasses/dataClassWithArrayMembers.kt.txt b/compiler/testData/ir/irText/classes/dataClasses/dataClassWithArrayMembers.kt.txt
index 82c106e..e0fa8a4 100644
--- a/compiler/testData/ir/irText/classes/dataClasses/dataClassWithArrayMembers.kt.txt
+++ b/compiler/testData/ir/irText/classes/dataClasses/dataClassWithArrayMembers.kt.txt
@@ -217,7 +217,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#anyArrayN, arg1 = null) -> 0
-      else -> dataClassArrayMemberHashCode(arg0 = <this>.#anyArrayN)
+      true -> dataClassArrayMemberHashCode(arg0 = <this>.#anyArrayN)
     }
   }
 
diff --git a/compiler/testData/ir/irText/classes/dataClasses/dataClasses.kt.txt b/compiler/testData/ir/irText/classes/dataClasses/dataClasses.kt.txt
index a523228..9d48f54 100644
--- a/compiler/testData/ir/irText/classes/dataClasses/dataClasses.kt.txt
+++ b/compiler/testData/ir/irText/classes/dataClasses/dataClasses.kt.txt
@@ -102,7 +102,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#x, arg1 = null) -> 0
-      else -> <this>.#x.hashCode()
+      true -> <this>.#x.hashCode()
     }
   }
 
@@ -182,12 +182,12 @@
     var result: Int = <this>.#d.hashCode()
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#dn, arg1 = null) -> 0
-      else -> <this>.#dn.hashCode()
+      true -> <this>.#dn.hashCode()
     })
     result = result.times(other = 31).plus(other = <this>.#f.hashCode())
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#df, arg1 = null) -> 0
-      else -> <this>.#df.hashCode()
+      true -> <this>.#df.hashCode()
     })
     return result
   }
diff --git a/compiler/testData/ir/irText/classes/dataClasses/dataClassesGeneric.kt.txt b/compiler/testData/ir/irText/classes/dataClasses/dataClassesGeneric.kt.txt
index d9fc324..e3059e2 100644
--- a/compiler/testData/ir/irText/classes/dataClasses/dataClassesGeneric.kt.txt
+++ b/compiler/testData/ir/irText/classes/dataClasses/dataClassesGeneric.kt.txt
@@ -34,7 +34,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#x, arg1 = null) -> 0
-      else -> <this>.#x.hashCode()
+      true -> <this>.#x.hashCode()
     }
   }
 
diff --git a/compiler/testData/ir/irText/classes/dataClasses/kt31649.kt.txt b/compiler/testData/ir/irText/classes/dataClasses/kt31649.kt.txt
index 1ff2d0c..e0fcacc 100644
--- a/compiler/testData/ir/irText/classes/dataClasses/kt31649.kt.txt
+++ b/compiler/testData/ir/irText/classes/dataClasses/kt31649.kt.txt
@@ -34,7 +34,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#nn, arg1 = null) -> 0
-      else -> <this>.#nn.hashCode()
+      true -> <this>.#nn.hashCode()
     }
   }
 
@@ -69,7 +69,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#nn, arg1 = null) -> 0
-      else -> <this>.#nn.hashCode()
+      true -> <this>.#nn.hashCode()
     }
   }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.fir.kt.txt
index bce2f5e..5af652d 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.fir.kt.txt
@@ -60,9 +60,9 @@
   return when {
     when {
       EQEQ(arg0 = myContainer.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 3)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
@@ -70,7 +70,7 @@
   <set-operationScore>(<set-?> = <get-operationScore>().plus(other = $context_receiver_0))
   return when {
     EQEQ(arg0 = index, arg1 = 0) -> <this>.<get-i>()
-    else -> -1
+    true -> -1
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.kt.txt
index 9a7eba6..b371589 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessCompositeOperators.kt.txt
@@ -60,9 +60,9 @@
   return when {
     when {
       EQEQ(arg0 = myContainer.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 3)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
@@ -72,7 +72,7 @@
   }
   return when {
     EQEQ(arg0 = index, arg1 = 0) -> <this>.<get-i>()
-    else -> -1
+    true -> -1
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessOperators.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessOperators.kt.txt
index f5b3fad..b50fdd2 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessOperators.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/arrayAccessOperators.kt.txt
@@ -50,7 +50,7 @@
       val tmp_1: String? = myContainer.get($context_receiver_0 = $this$with, index = 0)
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> "fail"
-        else -> tmp_1
+        true -> tmp_1
       }
     }
   }
@@ -61,9 +61,9 @@
   return when {
     when {
       EQEQ(arg0 = index, arg1 = 0) -> EQEQ(arg0 = $context_receiver_0, arg1 = 42)
-      else -> false
+      true -> false
     } -> <this>.<get-s>()
-    else -> null
+    true -> null
   }
 }
 
@@ -71,7 +71,7 @@
   when {
     when {
       EQEQ(arg0 = index, arg1 = 0).not() -> true
-      else -> EQEQ(arg0 = $context_receiver_0, arg1 = 42).not()
+      true -> EQEQ(arg0 = $context_receiver_0, arg1 = 42).not()
     } -> return Unit
   }
   <this>.<set-s>(<set-?> = value)
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.fir.kt.txt
index 77a5873..110e1bc 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.fir.kt.txt
@@ -59,9 +59,9 @@
   return when {
     when {
       EQEQ(arg0 = result.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 8)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.kt.txt
index 5a08f2f..8f46e13 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/compoundAssignmentOperators.kt.txt
@@ -59,9 +59,9 @@
   return when {
     when {
       EQEQ(arg0 = result.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 8)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/contextualInlineCall.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/contextualInlineCall.kt.txt
index a061377..3e164e7 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/contextualInlineCall.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/contextualInlineCall.kt.txt
@@ -38,7 +38,7 @@
 )
     return when {
       EQEQ(arg0 = result, arg1 = 23) -> "OK"
-      else -> "fail"
+      true -> "fail"
     }
   }
 )
@@ -63,7 +63,7 @@
 inline fun Int.testInlineWithExtensionAndMultipleContextsAndArgs($context_receiver_0: Context, $context_receiver_1: A, i1: Int = 1, i2: Int = 2): Int {
   return <this>.plus(other = i1).plus(other = i2).plus(other = $context_receiver_0.c()).plus(other = when {
     EQEQ(arg0 = $context_receiver_1.<get-a>(), arg1 = null) -> 0
-    else -> 1
+    true -> 1
   })
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.fir.kt.txt
index f5deddd..ff1c493 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.fir.kt.txt
@@ -56,7 +56,7 @@
   val returnValue: String = result.<get-s>()
   return when {
     EQEQ(arg0 = <get-operationScore>(), arg1 = 2) -> returnValue
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.kt.txt
index e36fac9..db6977d 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/delegatedPropertiesOperators.kt.txt
@@ -60,7 +60,7 @@
   val returnValue: String = result.<get-s>()
   return when {
     EQEQ(arg0 = <get-operationScore>(), arg1 = 2) -> returnValue
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.fir.kt.txt
index 8a0907a..1f3bd9c 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.fir.kt.txt
@@ -45,11 +45,11 @@
   override fun hashCode(): Int {
     var result: Int = when {
       EQEQ(arg0 = <this>.#first, arg1 = null) -> 0
-      else -> <this>.#first.hashCode()
+      true -> <this>.#first.hashCode()
     }
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#second, arg1 = null) -> 0
-      else -> <this>.#second.hashCode()
+      true -> <this>.#second.hashCode()
     })
     return result
   }
@@ -65,9 +65,9 @@
     return when {
       when {
         EQEQ(arg0 = a, arg1 = null) -> true
-        else -> EQEQ(arg0 = b, arg1 = null)
+        true -> EQEQ(arg0 = b, arg1 = null)
       } -> 0
-      else -> a.<get-length>().compareTo(other = b.<get-length>())
+      true -> a.<get-length>().compareTo(other = b.<get-length>())
     }
   }
  /*-> Comparator<String> */
@@ -85,7 +85,7 @@
   get($context_receiver_0: Comparator<T>): T {
     return when {
       less(arg0 = <this>.<get-first>().compareTo<T>($context_receiver_0 = $context_receiver_0, other = <this>.<get-second>()), arg1 = 0) -> <this>.<get-first>()
-      else -> <this>.<get-second>()
+      true -> <this>.<get-second>()
     }
   }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.kt.txt
index 65f9dbb..5aa9524 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/compareTo.kt.txt
@@ -45,11 +45,11 @@
   override fun hashCode(): Int {
     var result: Int = when {
       EQEQ(arg0 = <this>.#first, arg1 = null) -> 0
-      else -> <this>.#first.hashCode()
+      true -> <this>.#first.hashCode()
     }
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#second, arg1 = null) -> 0
-      else -> <this>.#second.hashCode()
+      true -> <this>.#second.hashCode()
     })
     return result
   }
@@ -65,9 +65,9 @@
     return when {
       when {
         EQEQ(arg0 = a, arg1 = null) -> true
-        else -> EQEQ(arg0 = b, arg1 = null)
+        true -> EQEQ(arg0 = b, arg1 = null)
       } -> 0
-      else -> a /*!! String */.<get-length>().compareTo(other = b /*!! String */.<get-length>())
+      true -> a /*!! String */.<get-length>().compareTo(other = b /*!! String */.<get-length>())
     }
   }
  /*-> Comparator<String> */
@@ -85,7 +85,7 @@
   get($context_receiver_0: Comparator<T>): T {
     return when {
       less(arg0 = <this>.<get-first>().compareTo<T>($context_receiver_0 = $context_receiver_0, other = <this>.<get-second>()), arg1 = 0) -> <this>.<get-first>()
-      else -> <this>.<get-second>()
+      true -> <this>.<get-second>()
     }
   }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.fir.kt.txt
index 80b244e..7c33541 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.fir.kt.txt
@@ -129,7 +129,7 @@
 )
   return when {
     EQEQ(arg0 = result, arg1 = 45) -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.kt.txt
index 58df8f5..84e47a9 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/iteratorOperator.kt.txt
@@ -131,7 +131,7 @@
 )
   return when {
     EQEQ(arg0 = result, arg1 = 45) -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.fir.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.fir.kt.txt
index a1d775a..fa38631 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.fir.kt.txt
@@ -71,9 +71,9 @@
   return when {
     when {
       EQEQ(arg0 = result.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 5)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
@@ -96,7 +96,7 @@
   <set-operationScore>(<set-?> = <get-operationScore>().plus(other = $context_receiver_0))
   return Result(i = when {
     less(arg0 = <this>.<get-i>(), arg1 = 0) -> <this>.<get-i>().unaryMinus()
-    else -> <this>.<get-i>()
+    true -> <this>.<get-i>()
   })
 }
 
diff --git a/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.kt.txt b/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.kt.txt
index 670481d..26bc4a6 100644
--- a/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.kt.txt
+++ b/compiler/testData/ir/irText/declarations/contextReceivers/unaryOperators.kt.txt
@@ -71,9 +71,9 @@
   return when {
     when {
       EQEQ(arg0 = result.<get-i>(), arg1 = 1) -> EQEQ(arg0 = <get-operationScore>(), arg1 = 5)
-      else -> false
+      true -> false
     } -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
@@ -104,7 +104,7 @@
   }
   return Result(i = when {
     less(arg0 = <this>.<get-i>(), arg1 = 0) -> <this>.<get-i>().unaryMinus()
-    else -> <this>.<get-i>()
+    true -> <this>.<get-i>()
   })
 }
 
diff --git a/compiler/testData/ir/irText/declarations/kt47527.fir.kt.txt b/compiler/testData/ir/irText/declarations/kt47527.fir.kt.txt
index 50780ef..91bfbc8 100644
--- a/compiler/testData/ir/irText/declarations/kt47527.fir.kt.txt
+++ b/compiler/testData/ir/irText/declarations/kt47527.fir.kt.txt
@@ -4,14 +4,14 @@
     val tmp_0: String? = test_1(value = 1)
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> return "fail 1"
-      else -> tmp_0
+      true -> tmp_0
     }
   })
   result = result.plus(other = { // BLOCK
     val tmp_1: String? = test_2(value = 1)
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> return "fail 2"
-      else -> tmp_1
+      true -> tmp_1
     }
   })
   return result
@@ -22,7 +22,7 @@
     val tmp_2: Any? = value
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
+      true -> tmp_2.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
         return "O"
       }
 )
@@ -36,7 +36,7 @@
       val tmp_3: Any? = value
       when {
         EQEQ(arg0 = tmp_3, arg1 = null) -> null
-        else -> tmp_3.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
+        true -> tmp_3.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
           return "K"
         }
 )
diff --git a/compiler/testData/ir/irText/declarations/kt47527.kt.txt b/compiler/testData/ir/irText/declarations/kt47527.kt.txt
index f3d98d7..b48e2d5 100644
--- a/compiler/testData/ir/irText/declarations/kt47527.kt.txt
+++ b/compiler/testData/ir/irText/declarations/kt47527.kt.txt
@@ -4,14 +4,14 @@
     val tmp_0: String? = test_1(value = 1)
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> return "fail 1"
-      else -> tmp_0
+      true -> tmp_0
     }
   })
   result = result.plus(other = { // BLOCK
     val tmp_1: String? = test_2(value = 1)
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> return "fail 2"
-      else -> tmp_1
+      true -> tmp_1
     }
   })
   return result
@@ -22,7 +22,7 @@
     val tmp_2: Any? = value
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
+      true -> tmp_2.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
         return "O"
       }
 )
@@ -36,7 +36,7 @@
       val tmp_3: Any? = value
       when {
         EQEQ(arg0 = tmp_3, arg1 = null) -> null
-        else -> tmp_3.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
+        true -> tmp_3.let<Any, Nothing>(block = local fun <anonymous>(it: Any): Nothing {
           return "K"
         }
 )
diff --git a/compiler/testData/ir/irText/declarations/parameters/dataClassMembers.kt.txt b/compiler/testData/ir/irText/declarations/parameters/dataClassMembers.kt.txt
index acbce6d..2fa6bdc 100644
--- a/compiler/testData/ir/irText/declarations/parameters/dataClassMembers.kt.txt
+++ b/compiler/testData/ir/irText/declarations/parameters/dataClassMembers.kt.txt
@@ -45,7 +45,7 @@
   override fun hashCode(): Int {
     var result: Int = when {
       EQEQ(arg0 = <this>.#x, arg1 = null) -> 0
-      else -> <this>.#x.hashCode()
+      true -> <this>.#x.hashCode()
     }
     result = result.times(other = 31).plus(other = <this>.#y.hashCode())
     return result
diff --git a/compiler/testData/ir/irText/expressions/bangbang.fir.kt.txt b/compiler/testData/ir/irText/expressions/bangbang.fir.kt.txt
index d389c69..7fe5075 100644
--- a/compiler/testData/ir/irText/expressions/bangbang.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/bangbang.fir.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: Any? = a
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.hashCode()
+      true -> tmp_0.hashCode()
     }
   })
 }
diff --git a/compiler/testData/ir/irText/expressions/bangbang.kt.txt b/compiler/testData/ir/irText/expressions/bangbang.kt.txt
index 1d3274f..d4cbc60 100644
--- a/compiler/testData/ir/irText/expressions/bangbang.kt.txt
+++ b/compiler/testData/ir/irText/expressions/bangbang.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: Any? = a
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.hashCode()
+      true -> tmp_0.hashCode()
     }
   })
 }
diff --git a/compiler/testData/ir/irText/expressions/booleanConstsInAndAndOrOr.kt.txt b/compiler/testData/ir/irText/expressions/booleanConstsInAndAndOrOr.kt.txt
index 2022ef9..cbc16a1 100644
--- a/compiler/testData/ir/irText/expressions/booleanConstsInAndAndOrOr.kt.txt
+++ b/compiler/testData/ir/irText/expressions/booleanConstsInAndAndOrOr.kt.txt
@@ -1,13 +1,13 @@
 fun test1(b: Boolean) {
   when {
     b -> return Unit
-    else -> false
+    true -> false
   } /*~> Unit */
 }
 
 fun test2(b: Boolean) {
   when {
     b -> true
-    else -> return Unit
+    true -> return Unit
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/expressions/booleanOperators.kt.txt b/compiler/testData/ir/irText/expressions/booleanOperators.kt.txt
index 669249a..02605c6 100644
--- a/compiler/testData/ir/irText/expressions/booleanOperators.kt.txt
+++ b/compiler/testData/ir/irText/expressions/booleanOperators.kt.txt
@@ -1,7 +1,7 @@
 fun test1(a: Boolean, b: Boolean): Boolean {
   return when {
     a -> b
-    else -> false
+    true -> false
   }
 }
 
@@ -12,7 +12,7 @@
 fun test2(a: Boolean, b: Boolean): Boolean {
   return when {
     a -> true
-    else -> b
+    true -> b
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.fir.kt.txt b/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.fir.kt.txt
index 7503d0f..2612512 100644
--- a/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.fir.kt.txt
@@ -4,7 +4,7 @@
       val tmp_0: Boolean? = c
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> break@L
-        else -> tmp_0
+        true -> tmp_0
       }
     })
   }
@@ -16,7 +16,7 @@
       val tmp_1: Boolean? = c
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> continue@L
-        else -> tmp_1
+        true -> tmp_1
       }
     })
   }
@@ -29,7 +29,7 @@
         val tmp_3: List<String>? = ss
         when {
           EQEQ(arg0 = tmp_3, arg1 = null) -> continue@L
-          else -> tmp_3
+          true -> tmp_3
         }
       }.iterator()
       L2@ while (tmp_2.hasNext()) { // BLOCK
@@ -46,7 +46,7 @@
         val tmp_5: List<String>? = ss
         when {
           EQEQ(arg0 = tmp_5, arg1 = null) -> break@L
-          else -> tmp_5
+          true -> tmp_5
         }
       }.iterator()
       L2@ while (tmp_4.hasNext()) { // BLOCK
@@ -72,7 +72,7 @@
       } /*~> Unit */
       // }      while (when {
         greaterOrEqual(arg0 = j, arg1 = 3) -> false
-        else -> break@Inner
+        true -> break@Inner
       })
     }
     when {
diff --git a/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.kt.txt b/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.kt.txt
index 45c267d..47a4db1 100644
--- a/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.kt.txt
+++ b/compiler/testData/ir/irText/expressions/breakContinueInLoopHeader.kt.txt
@@ -4,7 +4,7 @@
       val tmp_0: Boolean? = c
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> break
-        else -> tmp_0
+        true -> tmp_0
       }
     })
   }
@@ -16,7 +16,7 @@
       val tmp_1: Boolean? = c
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> continue
-        else -> tmp_1
+        true -> tmp_1
       }
     })
   }
@@ -29,7 +29,7 @@
         val tmp_3: List<String>? = ss
         when {
           EQEQ(arg0 = tmp_3, arg1 = null) -> continue
-          else -> tmp_3
+          true -> tmp_3
         }
       }.iterator()
       L2@ while (tmp_2.hasNext()) { // BLOCK
@@ -46,7 +46,7 @@
         val tmp_5: List<String>? = ss
         when {
           EQEQ(arg0 = tmp_5, arg1 = null) -> break
-          else -> tmp_5
+          true -> tmp_5
         }
       }.iterator()
       L2@ while (tmp_4.hasNext()) { // BLOCK
@@ -72,7 +72,7 @@
       } /*~> Unit */
       // }      while (when {
         greaterOrEqual(arg0 = j, arg1 = 3) -> false
-        else -> break
+        true -> break
       })
     }
     when {
diff --git a/compiler/testData/ir/irText/expressions/chainOfSafeCalls.kt.txt b/compiler/testData/ir/irText/expressions/chainOfSafeCalls.kt.txt
index 732b2f9..0254da2 100644
--- a/compiler/testData/ir/irText/expressions/chainOfSafeCalls.kt.txt
+++ b/compiler/testData/ir/irText/expressions/chainOfSafeCalls.kt.txt
@@ -23,22 +23,22 @@
           val tmp_3: C? = nc
           when {
             EQEQ(arg0 = tmp_3, arg1 = null) -> null
-            else -> tmp_3.foo()
+            true -> tmp_3.foo()
           }
         }
         when {
           EQEQ(arg0 = tmp_2, arg1 = null) -> null
-          else -> tmp_2.bar()
+          true -> tmp_2.bar()
         }
       }
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> null
-        else -> tmp_1.foo()
+        true -> tmp_1.foo()
       }
     }
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.foo()
+      true -> tmp_0.foo()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/coercionToUnit.fir.kt.txt b/compiler/testData/ir/irText/expressions/coercionToUnit.fir.kt.txt
index 20dbc65..1330b71 100644
--- a/compiler/testData/ir/irText/expressions/coercionToUnit.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/coercionToUnit.fir.kt.txt
@@ -14,14 +14,14 @@
     val tmp_0: @FlexibleNullability PrintStream? = super<System>.#out
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.println(p0 = "Hello,")
+      true -> tmp_0.println(p0 = "Hello,")
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_1: @FlexibleNullability PrintStream? = super<System>.#out
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.println(p0 = "world!")
+      true -> tmp_1.println(p0 = "world!")
     }
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/expressions/coercionToUnit.kt.txt b/compiler/testData/ir/irText/expressions/coercionToUnit.kt.txt
index 741a7f8..16a0020 100644
--- a/compiler/testData/ir/irText/expressions/coercionToUnit.kt.txt
+++ b/compiler/testData/ir/irText/expressions/coercionToUnit.kt.txt
@@ -14,14 +14,14 @@
     val tmp_0: @FlexibleNullability PrintStream? = super<System>.#out
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0 /*!! PrintStream */.println(p0 = "Hello,")
+      true -> tmp_0 /*!! PrintStream */.println(p0 = "Hello,")
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_1: @FlexibleNullability PrintStream? = super<System>.#out
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1 /*!! PrintStream */.println(p0 = "world!")
+      true -> tmp_1 /*!! PrintStream */.println(p0 = "world!")
     }
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/expressions/dotQualified.kt.txt b/compiler/testData/ir/irText/expressions/dotQualified.kt.txt
index bdbcc7c..8bf11bb 100644
--- a/compiler/testData/ir/irText/expressions/dotQualified.kt.txt
+++ b/compiler/testData/ir/irText/expressions/dotQualified.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: String? = s
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.<get-length>()
+      true -> tmp_0.<get-length>()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/elvis.kt.txt b/compiler/testData/ir/irText/expressions/elvis.kt.txt
index 2e1153f..4577510 100644
--- a/compiler/testData/ir/irText/expressions/elvis.kt.txt
+++ b/compiler/testData/ir/irText/expressions/elvis.kt.txt
@@ -11,7 +11,7 @@
     val tmp_0: Any? = a
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> b
-      else -> tmp_0
+      true -> tmp_0
     }
   }
 }
@@ -21,7 +21,7 @@
     val tmp_1: String? = a
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> b
-      else -> tmp_1
+      true -> tmp_1
     }
   }
 }
@@ -37,7 +37,7 @@
     val tmp_2: String? = a /*as String? */
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> b /*as String */
-      else -> tmp_2
+      true -> tmp_2
     }
   }
 }
@@ -47,7 +47,7 @@
     val tmp_3: Any? = <get-p>()
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> x
-      else -> tmp_3
+      true -> tmp_3
     }
   }
 }
@@ -57,7 +57,7 @@
     val tmp_4: Any? = foo()
     when {
       EQEQ(arg0 = tmp_4, arg1 = null) -> x
-      else -> tmp_4
+      true -> tmp_4
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.kt.txt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.kt.txt
index a448d51..90a56fd 100644
--- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.kt.txt
@@ -21,7 +21,7 @@
     val tmp_0: A = a
     when {
       EQEQ(arg0 = tmp_0, arg1 = A.V1) -> 1
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   } /*~> Unit */
 }
@@ -31,7 +31,7 @@
     val tmp_1: A = a
     when {
       EQEQ(arg0 = tmp_1, arg1 = A.V1) -> 1
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   }
 }
@@ -39,12 +39,12 @@
 fun testIfTheElseAnnotated_throwsJvm(a: A, flag: Boolean) {
   when {
     flag -> 0
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_2: A = a
         when {
           EQEQ(arg0 = tmp_2, arg1 = A.V1) -> 1
-          else -> noWhenBranchMatchedException()
+          true -> noWhenBranchMatchedException()
         }
       }
     }
@@ -54,12 +54,12 @@
 fun testIfTheElseParenthesized_throwsJvm(a: A, flag: Boolean) {
   when {
     flag -> 0
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_3: A = a
         when {
           EQEQ(arg0 = tmp_3, arg1 = A.V1) -> 1
-          else -> noWhenBranchMatchedException()
+          true -> noWhenBranchMatchedException()
         }
       }
     }
@@ -69,12 +69,12 @@
 fun testIfTheElseStatement_empty(a: A, flag: Boolean) {
   when {
     flag -> 0
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_4: A = a
         when {
           EQEQ(arg0 = tmp_4, arg1 = A.V1) -> 1
-          else -> noWhenBranchMatchedException()
+          true -> noWhenBranchMatchedException()
         }
       }
     }
@@ -87,7 +87,7 @@
       val tmp_5: A = a
       when {
         EQEQ(arg0 = tmp_5, arg1 = A.V1) -> 1
-        else -> noWhenBranchMatchedException()
+        true -> noWhenBranchMatchedException()
       }
     }
   }
@@ -99,7 +99,7 @@
     val tmp_6: A = a
     when {
       EQEQ(arg0 = tmp_6, arg1 = A.V1) -> 1
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   } /*~> Unit */
 }
@@ -109,7 +109,7 @@
     val tmp_7: A = a
     when {
       EQEQ(arg0 = tmp_7, arg1 = A.V1) -> 1
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   } /*~> Unit */
 }
@@ -120,7 +120,7 @@
     val tmp_8: A = a
     when {
       EQEQ(arg0 = tmp_8, arg1 = A.V1) -> x = 11
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt.txt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt.txt
index 2d63873..8980540 100644
--- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt.txt
+++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt.txt
@@ -30,7 +30,7 @@
     val tmp_1: A = a
     when {
       EQEQ(arg0 = tmp_1, arg1 = A.V1) -> 1
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   }
 }
@@ -38,7 +38,7 @@
 fun testIfTheElseAnnotated_throwsJvm(a: A, flag: Boolean) {
   when {
     flag -> 0 /*~> Unit */
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_2: A = a
         when {
@@ -52,7 +52,7 @@
 fun testIfTheElseParenthesized_throwsJvm(a: A, flag: Boolean) {
   when {
     flag -> 0 /*~> Unit */
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_3: A = a
         when {
@@ -66,7 +66,7 @@
 fun testIfTheElseStatement_empty(a: A, flag: Boolean) {
   when {
     flag -> 0 /*~> Unit */
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_4: A = a
         when {
@@ -83,7 +83,7 @@
       val tmp_5: A = a
       when {
         EQEQ(arg0 = tmp_5, arg1 = A.V1) -> 1
-        else -> noWhenBranchMatchedException()
+        true -> noWhenBranchMatchedException()
       }
     }
   }
@@ -114,7 +114,7 @@
     val tmp_8: A = a
     when {
       EQEQ(arg0 = tmp_8, arg1 = A.V1) -> x = 11
-      else -> noWhenBranchMatchedException()
+      true -> noWhenBranchMatchedException()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/extFunSafeInvoke.kt.txt b/compiler/testData/ir/irText/expressions/extFunSafeInvoke.kt.txt
index 49ec55e..c2d148e 100644
--- a/compiler/testData/ir/irText/expressions/extFunSafeInvoke.kt.txt
+++ b/compiler/testData/ir/irText/expressions/extFunSafeInvoke.kt.txt
@@ -3,7 +3,7 @@
     val tmp_0: Any? = receiver
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> fn.invoke(p1 = tmp_0, p2 = 42, p3 = "Hello")
+      true -> fn.invoke(p1 = tmp_0, p2 = 42, p3 = "Hello")
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/comparableWithDoubleOrFloat.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/comparableWithDoubleOrFloat.kt.txt
index eefbce2..dfc603a 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/comparableWithDoubleOrFloat.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/comparableWithDoubleOrFloat.kt.txt
@@ -2,9 +2,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Double */, arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
@@ -12,8 +12,8 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Float */, arg1 = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/eqeqRhsConditionPossiblyAffectingLhs.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/eqeqRhsConditionPossiblyAffectingLhs.kt.txt
index 50c1bd9..b518a30 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/eqeqRhsConditionPossiblyAffectingLhs.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/eqeqRhsConditionPossiblyAffectingLhs.kt.txt
@@ -1,6 +1,6 @@
 fun test(x: Any): Boolean {
   return EQEQ(arg0 = x, arg1 = when {
     x !is Double -> CHECK_NOT_NULL<Nothing>(arg0 = null)
-    else -> x /*as Double */
+    true -> x /*as Double */
   })
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.kt.txt
index 2a45df9..5ebd665 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointCompareTo.kt.txt
@@ -13,21 +13,21 @@
 fun test2d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> EQEQ(arg0 = x.compareTo(other = y /*as Double */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
 fun test2f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> EQEQ(arg0 = x.compareTo(other = y /*as Float */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test2fr(x: Any): Boolean {
   return when {
     x is Float -> EQEQ(arg0 = <this>.compareTo(other = x /*as Float */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
@@ -35,9 +35,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> EQEQ(arg0 = x /*as Double */.compareTo(other = y /*as Double */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
@@ -45,16 +45,16 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> EQEQ(arg0 = x /*as Float */.compareTo(other = y /*as Float */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test3fr(x: Any): Boolean {
   return when {
     x is Double -> EQEQ(arg0 = <this>.compareTo(other = x /*as Double */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
@@ -62,9 +62,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> EQEQ(arg0 = x /*as Double */.compareTo(other = y /*as Float */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
@@ -72,9 +72,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> EQEQ(arg0 = x /*as Float */.compareTo(other = y /*as Double */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEqeq.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEqeq.kt.txt
index 7e89bea..2203dfb 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEqeq.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEqeq.kt.txt
@@ -33,14 +33,14 @@
 fun test5d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> ieee754equals(arg0 = x, arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
 fun test5f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> ieee754equals(arg0 = x, arg1 = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -48,9 +48,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
@@ -58,9 +58,9 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Float */, arg1 = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -68,9 +68,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Float */.toDouble())
-    else -> false
+    true -> false
   }
 }
 
@@ -78,9 +78,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Float */.toDouble(), arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.kt.txt
index 4b84afe..e8ccf90 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.fir.kt.txt
@@ -49,21 +49,21 @@
 fun test5d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> x.equals(other = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
 fun test5f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> x.equals(other = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test5fr(x: Any): Boolean {
   return when {
     x is Float -> <this>.equals(other = x /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -71,9 +71,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> x /*as Double */.equals(other = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
@@ -81,16 +81,16 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> x /*as Float */.equals(other = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test6fr(x: Any): Boolean {
   return when {
     x is Double -> <this>.equals(other = x /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
@@ -98,9 +98,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> x /*as Double */.equals(other = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -108,9 +108,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> x /*as Float */.equals(other = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.kt.txt
index 17a1348..d3af3e4 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEquals.kt.txt
@@ -49,21 +49,21 @@
 fun test5d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
 fun test5f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test5fr(x: Any): Boolean {
   return when {
     x is Float -> <this>.equals(other = x)
-    else -> false
+    true -> false
   }
 }
 
@@ -71,9 +71,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
@@ -81,16 +81,16 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
 fun Float.test6fr(x: Any): Boolean {
   return when {
     x is Double -> <this>.equals(other = x)
-    else -> false
+    true -> false
   }
 }
 
@@ -98,9 +98,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
@@ -108,9 +108,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> x.equals(other = y)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointExcleq.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointExcleq.kt.txt
index 7864979..c789f1d 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointExcleq.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointExcleq.kt.txt
@@ -33,14 +33,14 @@
 fun test5d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> ieee754equals(arg0 = x, arg1 = y /*as Double */).not()
-    else -> false
+    true -> false
   }
 }
 
 fun test5f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> ieee754equals(arg0 = x, arg1 = y /*as Float */).not()
-    else -> false
+    true -> false
   }
 }
 
@@ -48,9 +48,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Double */).not()
-    else -> false
+    true -> false
   }
 }
 
@@ -58,9 +58,9 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Float */, arg1 = y /*as Float */).not()
-    else -> false
+    true -> false
   }
 }
 
@@ -68,9 +68,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Float */.toDouble()).not()
-    else -> false
+    true -> false
   }
 }
 
@@ -78,9 +78,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = x /*as Float */.toDouble(), arg1 = y /*as Double */).not()
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointLess.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointLess.kt.txt
index c69a940..59996a0 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointLess.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointLess.kt.txt
@@ -9,14 +9,14 @@
 fun test2d(x: Double, y: Any): Boolean {
   return when {
     y is Double -> less(arg0 = x, arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
 fun test2f(x: Float, y: Any): Boolean {
   return when {
     y is Float -> less(arg0 = x, arg1 = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -24,9 +24,9 @@
   return when {
     when {
       x is Double -> y is Double
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Double */, arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
@@ -34,9 +34,9 @@
   return when {
     when {
       x is Float -> y is Float
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Float */, arg1 = y /*as Float */)
-    else -> false
+    true -> false
   }
 }
 
@@ -44,9 +44,9 @@
   return when {
     when {
       x is Double -> y is Float
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Double */, arg1 = y /*as Float */.toDouble())
-    else -> false
+    true -> false
   }
 }
 
@@ -54,9 +54,9 @@
   return when {
     when {
       x is Float -> y is Double
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Float */.toDouble(), arg1 = y /*as Double */)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableAnyAsIntToDouble.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableAnyAsIntToDouble.kt.txt
index 88e9718..31f1468 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableAnyAsIntToDouble.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableAnyAsIntToDouble.kt.txt
@@ -1,6 +1,6 @@
 fun test(x: Any?, y: Double): Boolean {
   return when {
     x is Int -> less(arg0 = x /*as Int */.toDouble(), arg1 = y)
-    else -> false
+    true -> false
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.fir.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.fir.kt.txt
index 45c6555..758b8f1 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.fir.kt.txt
@@ -8,10 +8,10 @@
       val tmp_0: Float? = y /*as Float? */
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> null
-        else -> tmp_0.toDouble()
+        true -> tmp_0.toDouble()
       }
     })
-    else -> false
+    true -> false
   }
 }
 
@@ -21,10 +21,10 @@
       val tmp_1: Int? = y /*as Int? */
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> null
-        else -> tmp_1.toDouble()
+        true -> tmp_1.toDouble()
       }
     })
-    else -> false
+    true -> false
   }
 }
 
@@ -32,15 +32,15 @@
   return when {
     when {
       x is Int? -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = { // BLOCK
       val tmp_2: Int? = x /*as Int? */
       when {
         EQEQ(arg0 = tmp_2, arg1 = null) -> null
-        else -> tmp_2.toDouble()
+        true -> tmp_2.toDouble()
       }
     }, arg1 = y /*as Double? */)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.kt.txt
index e862025..8995ed3 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/nullableFloatingPointEqeq.kt.txt
@@ -8,10 +8,10 @@
       val tmp_0: Any? = y
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> null
-        else -> tmp_0 /*as Float */.toDouble()
+        true -> tmp_0 /*as Float */.toDouble()
       }
     })
-    else -> false
+    true -> false
   }
 }
 
@@ -21,10 +21,10 @@
       val tmp_1: Any? = y
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> null
-        else -> tmp_1 /*as Int */.toDouble()
+        true -> tmp_1 /*as Int */.toDouble()
       }
     })
-    else -> false
+    true -> false
   }
 }
 
@@ -32,14 +32,14 @@
   return when {
     when {
       x is Int? -> y is Double
-      else -> false
+      true -> false
     } -> ieee754equals(arg0 = { // BLOCK
       val tmp_2: Any? = x
       when {
         EQEQ(arg0 = tmp_2, arg1 = null) -> null
-        else -> tmp_2 /*as Int */.toDouble()
+        true -> tmp_2 /*as Int */.toDouble()
       }
     }, arg1 = y /*as Double? */)
-    else -> false
+    true -> false
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/typeParameterWithPrimitiveNumericSupertype.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/typeParameterWithPrimitiveNumericSupertype.kt.txt
index c05e986..8e877e5 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/typeParameterWithPrimitiveNumericSupertype.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/typeParameterWithPrimitiveNumericSupertype.kt.txt
@@ -8,7 +8,7 @@
   fun testCapturedType(x: T, y: Any): Boolean {
     return when {
       y is Double -> ieee754equals(arg0 = x.toDouble(), arg1 = y /*as Double */)
-      else -> false
+      true -> false
     }
   }
 
@@ -17,49 +17,49 @@
 fun <T : Any?> test0(x: Any, y: T): Boolean {
   return when {
     x is Int -> EQEQ(arg0 = x, arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Float> test1(x: Any, y: T): Boolean {
   return when {
     x is Float -> ieee754equals(arg0 = x /*as Float */, arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Double> test2(x: Any, y: T): Boolean {
   return when {
     x is Float -> ieee754equals(arg0 = x /*as Float */.toDouble(), arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Float> test3(x: Any, y: T): Boolean {
   return when {
     x is Int -> ieee754equals(arg0 = x /*as Int */.toFloat(), arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Float?> test4(x: Any, y: T): Boolean {
   return when {
     x is Int -> ieee754equals(arg0 = x /*as Int */.toFloat(), arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Float?, R : T> test5(x: Any, y: R): Boolean {
   return when {
     x is Int -> ieee754equals(arg0 = x /*as Int */.toFloat(), arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
 fun <T : Number> test6(x: Any, y: T): Boolean {
   return when {
     x is Int -> EQEQ(arg0 = x, arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.fir.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.fir.kt.txt
index 47367d0..35586ff 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.fir.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: Double = x
     when {
       ieee754equals(arg0 = tmp_0, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -20,7 +20,7 @@
     val tmp_1: Double = x
     when {
       ieee754equals(arg0 = tmp_1, arg1 = y /*as Double */) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -31,7 +31,7 @@
     when {
       tmp_2 !is Double -> -1
       ieee754equals(arg0 = tmp_2 /*as Double */, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -44,7 +44,7 @@
     val tmp_3: Double = x /*as Double */
     when {
       ieee754equals(arg0 = tmp_3, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -60,7 +60,7 @@
     val tmp_4: Double = x /*as Double */
     when {
       ieee754equals(arg0 = tmp_4, arg1 = y /*as Float */.toDouble()) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -71,9 +71,9 @@
     when {
       EQEQ(arg0 = tmp_5, arg1 = foo(x = when {
         x !is Double -> return 42
-        else -> x /*as Double */
+        true -> x /*as Double */
       })) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.kt.txt b/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.kt.txt
index d5f0d76..6bef177 100644
--- a/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.kt.txt
+++ b/compiler/testData/ir/irText/expressions/floatingPointComparisons/whenByFloatingPoint.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: Double = x
     when {
       ieee754equals(arg0 = tmp_0, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -20,7 +20,7 @@
     val tmp_1: Double = x
     when {
       ieee754equals(arg0 = tmp_1, arg1 = y /*as Double */) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -31,7 +31,7 @@
     when {
       tmp_2 is Double.not() -> -1
       ieee754equals(arg0 = tmp_2 /*as Double */, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -44,7 +44,7 @@
     val tmp_3: Any = x
     when {
       ieee754equals(arg0 = tmp_3 /*as Double */, arg1 = 0.0) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -60,7 +60,7 @@
     val tmp_4: Any = x
     when {
       ieee754equals(arg0 = tmp_4 /*as Double */, arg1 = y /*as Float */.toDouble()) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
@@ -71,9 +71,9 @@
     when {
       EQEQ(arg0 = tmp_5, arg1 = foo(x = when {
         x !is Double -> return 42
-        else -> x /*as Double */
+        true -> x /*as Double */
       })) -> 0
-      else -> 1
+      true -> 1
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.fir.kt.txt b/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.fir.kt.txt
index f4d71e7..d6db133 100644
--- a/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.fir.kt.txt
@@ -32,7 +32,7 @@
   when {
     when {
       a is Unrelated -> a /*as Unrelated */ is Function0<Unit>
-      else -> false
+      true -> false
     } -> { // BLOCK
       run1(r = a /*as Function0<Unit> */ /*-> KRunnable */)
     }
diff --git a/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.kt.txt b/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.kt.txt
index db52932..3877d15 100644
--- a/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.kt.txt
+++ b/compiler/testData/ir/irText/expressions/funInterface/samConversionsWithSmartCasts.kt.txt
@@ -32,7 +32,7 @@
   when {
     when {
       a is Unrelated -> a is Function0<Unit>
-      else -> false
+      true -> false
     } -> { // BLOCK
       run1(r = a /*as Function0<Unit> */ /*-> KRunnable */)
     }
diff --git a/compiler/testData/ir/irText/expressions/ifElseIf.fir.kt.txt b/compiler/testData/ir/irText/expressions/ifElseIf.fir.kt.txt
index f0d2615..c3a70fa 100644
--- a/compiler/testData/ir/irText/expressions/ifElseIf.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifElseIf.fir.kt.txt
@@ -2,7 +2,7 @@
   return when {
     greater(arg0 = i, arg1 = 0) -> 1
     less(arg0 = i, arg1 = 0) -> -1
-    else -> 0
+    true -> 0
   }
 }
 
@@ -10,7 +10,7 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true
+    true -> true
   } /*~> Unit */
   when {
     flag -> true /*~> Unit */
@@ -21,11 +21,11 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true
+    true -> true
   } /*~> Unit */
   when {
     flag -> true
-    else -> { // BLOCK
+    true -> { // BLOCK
     }
   } /*~> Unit */
 }
@@ -34,6 +34,6 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true
+    true -> true
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/expressions/ifElseIf.kt.txt b/compiler/testData/ir/irText/expressions/ifElseIf.kt.txt
index 3ec78b9..d1114a0 100644
--- a/compiler/testData/ir/irText/expressions/ifElseIf.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifElseIf.kt.txt
@@ -2,7 +2,7 @@
   return when {
     greater(arg0 = i, arg1 = 0) -> 1
     less(arg0 = i, arg1 = 0) -> -1
-    else -> 0
+    true -> 0
   }
 }
 
@@ -10,7 +10,7 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true /*~> Unit */
+    true -> true /*~> Unit */
   }
   when {
     flag -> true /*~> Unit */
@@ -21,11 +21,11 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true /*~> Unit */
+    true -> true /*~> Unit */
   }
   when {
     flag -> true /*~> Unit */
-    else -> { // BLOCK
+    true -> { // BLOCK
     }
   }
 }
@@ -34,6 +34,6 @@
   when {
     flag -> { // BLOCK
     }
-    else -> true /*~> Unit */
+    true -> true /*~> Unit */
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/ifWithArrayOperation.fir.kt.txt b/compiler/testData/ir/irText/expressions/ifWithArrayOperation.fir.kt.txt
index 9dac64d..8a6410d 100644
--- a/compiler/testData/ir/irText/expressions/ifWithArrayOperation.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifWithArrayOperation.fir.kt.txt
@@ -4,7 +4,7 @@
     true -> { // BLOCK
       array.set(index = 0, value = 2)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       array.set(index = 0, value = 3)
     }
   }
@@ -12,7 +12,7 @@
     true -> { // BLOCK
       array.set(index = 0, value = 4)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       array.set(index = 0, value = 5)
     }
   }
@@ -24,7 +24,7 @@
         tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).plus(other = 6))
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_2: IntArray = array
         val tmp_3: Int = 0
@@ -40,7 +40,7 @@
         tmp_4.set(index = tmp_5, value = tmp_4.get(index = tmp_5).plus(other = 8))
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_6: IntArray = array
         val tmp_7: Int = 0
@@ -54,7 +54,7 @@
       EQEQ(arg0 = tmp_8, arg1 = 1) -> { // BLOCK
         array.set(index = 0, value = 10)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         array.set(index = 0, value = 11)
       }
     }
@@ -65,7 +65,7 @@
       EQEQ(arg0 = tmp_9, arg1 = 1) -> { // BLOCK
         array.set(index = 0, value = 12)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         array.set(index = 0, value = 13)
       }
     }
@@ -80,7 +80,7 @@
           tmp_11.set(index = tmp_12, value = tmp_11.get(index = tmp_12).plus(other = 14))
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         { // BLOCK
           val tmp_13: IntArray = array
           val tmp_14: Int = 0
@@ -99,7 +99,7 @@
           tmp_16.set(index = tmp_17, value = tmp_16.get(index = tmp_17).plus(other = 16))
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         { // BLOCK
           val tmp_18: IntArray = array
           val tmp_19: Int = 0
diff --git a/compiler/testData/ir/irText/expressions/ifWithArrayOperation.kt.txt b/compiler/testData/ir/irText/expressions/ifWithArrayOperation.kt.txt
index edecc99..b6f061b 100644
--- a/compiler/testData/ir/irText/expressions/ifWithArrayOperation.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifWithArrayOperation.kt.txt
@@ -4,13 +4,13 @@
     true -> { // BLOCK
       array.set(index = 0, value = 2)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       array.set(index = 0, value = 3)
     }
   }
   when {
     true -> array.set(index = 0, value = 4)
-    else -> array.set(index = 0, value = 5)
+    true -> array.set(index = 0, value = 5)
   }
   when {
     true -> { // BLOCK
@@ -20,7 +20,7 @@
         tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).plus(other = 6))
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_2: IntArray = array
         val tmp_3: Int = 0
@@ -34,7 +34,7 @@
       val tmp_5: Int = 0
       tmp_4.set(index = tmp_5, value = tmp_4.get(index = tmp_5).plus(other = 8))
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       val tmp_6: IntArray = array
       val tmp_7: Int = 0
       tmp_6.set(index = tmp_7, value = tmp_6.get(index = tmp_7).plus(other = 9))
@@ -46,7 +46,7 @@
       EQEQ(arg0 = tmp_8, arg1 = 1) -> { // BLOCK
         array.set(index = 0, value = 10)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         array.set(index = 0, value = 11)
       }
     }
@@ -55,7 +55,7 @@
     val tmp_9: Int = array.get(index = 0)
     when {
       EQEQ(arg0 = tmp_9, arg1 = 1) -> array.set(index = 0, value = 12)
-      else -> array.set(index = 0, value = 13)
+      true -> array.set(index = 0, value = 13)
     }
   }
   { // BLOCK
@@ -68,7 +68,7 @@
           tmp_11.set(index = tmp_12, value = tmp_11.get(index = tmp_12).plus(other = 14))
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         { // BLOCK
           val tmp_13: IntArray = array
           val tmp_14: Int = 0
@@ -85,7 +85,7 @@
         val tmp_17: Int = 0
         tmp_16.set(index = tmp_17, value = tmp_16.get(index = tmp_17).plus(other = 16))
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         val tmp_18: IntArray = array
         val tmp_19: Int = 0
         tmp_18.set(index = tmp_19, value = tmp_18.get(index = tmp_19).plus(other = 17))
diff --git a/compiler/testData/ir/irText/expressions/ifWithAssignment.kt.txt b/compiler/testData/ir/irText/expressions/ifWithAssignment.kt.txt
index b0edc6b..cc8a8973 100644
--- a/compiler/testData/ir/irText/expressions/ifWithAssignment.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifWithAssignment.kt.txt
@@ -4,25 +4,25 @@
     true -> { // BLOCK
       z = 2
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       z = 3
     }
   }
   when {
     true -> z = 4
-    else -> z = 5
+    true -> z = 5
   }
   when {
     true -> { // BLOCK
       z = z.plus(other = 6)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       z = z.plus(other = 7)
     }
   }
   when {
     true -> z = z.plus(other = 8)
-    else -> z = z.plus(other = 9)
+    true -> z = z.plus(other = 9)
   }
   { // BLOCK
     val tmp_0: Int = z
@@ -30,7 +30,7 @@
       EQEQ(arg0 = tmp_0, arg1 = 1) -> { // BLOCK
         z = 10
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         z = 11
       }
     }
@@ -39,7 +39,7 @@
     val tmp_1: Int = z
     when {
       EQEQ(arg0 = tmp_1, arg1 = 1) -> z = 12
-      else -> z = 13
+      true -> z = 13
     }
   }
   { // BLOCK
@@ -48,7 +48,7 @@
       EQEQ(arg0 = tmp_2, arg1 = 1) -> { // BLOCK
         z = z.plus(other = 14)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         z = z.plus(other = 15)
       }
     }
@@ -57,7 +57,7 @@
     val tmp_3: Int = z
     when {
       EQEQ(arg0 = tmp_3, arg1 = 1) -> z = z.plus(other = 16)
-      else -> z = z.plus(other = 17)
+      true -> z = z.plus(other = 17)
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/ifWithLoop.kt.txt b/compiler/testData/ir/irText/expressions/ifWithLoop.kt.txt
index 990b27b..bafb1a4 100644
--- a/compiler/testData/ir/irText/expressions/ifWithLoop.kt.txt
+++ b/compiler/testData/ir/irText/expressions/ifWithLoop.kt.txt
@@ -10,7 +10,7 @@
         }
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         val tmp_1: IntIterator = 0.rangeTo(other = 3).iterator()
         while (tmp_1.hasNext()) { // BLOCK
@@ -28,7 +28,7 @@
         z = z.plus(other = i)
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       val tmp_3: IntIterator = 0.rangeTo(other = 5).iterator()
       while (tmp_3.hasNext()) { // BLOCK
         val i: Int = tmp_3.next()
@@ -40,13 +40,13 @@
     true -> { // BLOCK
       while (false) z = z.plus(other = 6)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       while (false) z = z.plus(other = 7)
     }
   }
   when {
     true -> while (false) z = z.plus(other = 8)
-    else -> while (false) z = z.plus(other = 9)
+    true -> while (false) z = z.plus(other = 9)
   }
   when {
     true -> { // BLOCK
@@ -56,7 +56,7 @@
         // }        while (false)
       }
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       { // BLOCK
         do// COMPOSITE {
         z = z.plus(other = 11)
@@ -70,7 +70,7 @@
       z = z.plus(other = 12)
       // }      while (false)
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       do// COMPOSITE {
       z = z.plus(other = 13)
       // }      while (false)
@@ -88,7 +88,7 @@
           }
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         { // BLOCK
           val tmp_6: IntIterator = 0.rangeTo(other = 15).iterator()
           while (tmp_6.hasNext()) { // BLOCK
@@ -109,7 +109,7 @@
           z = z.plus(other = i)
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         val tmp_9: IntIterator = 0.rangeTo(other = 17).iterator()
         while (tmp_9.hasNext()) { // BLOCK
           val i: Int = tmp_9.next()
@@ -124,7 +124,7 @@
       EQEQ(arg0 = tmp_10, arg1 = 1) -> { // BLOCK
         while (false) z = z.plus(other = 18)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         while (false) z = z.plus(other = 19)
       }
     }
@@ -133,7 +133,7 @@
     val tmp_11: Int = z
     when {
       EQEQ(arg0 = tmp_11, arg1 = 1) -> while (false) z = z.plus(other = 20)
-      else -> while (false) z = z.plus(other = 21)
+      true -> while (false) z = z.plus(other = 21)
     }
   }
   { // BLOCK
@@ -146,7 +146,7 @@
           // }          while (false)
         }
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         { // BLOCK
           do// COMPOSITE {
           z = z.plus(other = 23)
@@ -163,7 +163,7 @@
         z = z.plus(other = 24)
         // }        while (false)
       }
-      else -> { // BLOCK
+      true -> { // BLOCK
         do// COMPOSITE {
         z = z.plus(other = 25)
         // }        while (false)
diff --git a/compiler/testData/ir/irText/expressions/implicitCastToNonNull.kt.txt b/compiler/testData/ir/irText/expressions/implicitCastToNonNull.kt.txt
index 38c2798..9f52ace 100644
--- a/compiler/testData/ir/irText/expressions/implicitCastToNonNull.kt.txt
+++ b/compiler/testData/ir/irText/expressions/implicitCastToNonNull.kt.txt
@@ -1,28 +1,28 @@
 fun test1(x: String?): Int {
   return when {
     EQEQ(arg0 = x, arg1 = null) -> 0
-    else -> x.<get-length>()
+    true -> x.<get-length>()
   }
 }
 
 fun <T : CharSequence?> test2(x: T): Int {
   return when {
     EQEQ(arg0 = x, arg1 = null) -> 0
-    else -> x.<get-length>()
+    true -> x.<get-length>()
   }
 }
 
 inline fun <reified T : CharSequence?> test3(x: Any): Int {
   return when {
     x !is T -> 0
-    else -> x /*as (T & Any) */.<get-length>()
+    true -> x /*as (T & Any) */.<get-length>()
   }
 }
 
 inline fun <reified T : CharSequence> test4(x: Any?): Int {
   return when {
     x !is T -> 0
-    else -> x /*as T */.<get-length>()
+    true -> x /*as T */.<get-length>()
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.kt.txt b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.kt.txt
index 9084573..8334c82 100644
--- a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.fir.kt.txt
@@ -21,7 +21,7 @@
 inline fun <reified T : Any> Any.test1(): T? {
   return when {
     <this> is T -> <this> /*as T */
-    else -> null
+    true -> null
   }
 }
 
@@ -29,7 +29,7 @@
   inline get(): T? {
     return when {
       <this> is T -> <this>
-      else -> null
+      true -> null
     }
   }
 
diff --git a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.kt.txt b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.kt.txt
index 3fec95a..59024dc 100644
--- a/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.kt.txt
+++ b/compiler/testData/ir/irText/expressions/implicitCastToTypeParameter.kt.txt
@@ -21,7 +21,7 @@
 inline fun <reified T : Any> Any.test1(): T? {
   return when {
     <this> is T -> <this> /*as T */
-    else -> null
+    true -> null
   }
 }
 
@@ -29,7 +29,7 @@
   inline get(): T? {
     return when {
       <this> is T -> <this> /*as T */
-      else -> null
+      true -> null
     }
   }
 
diff --git a/compiler/testData/ir/irText/expressions/jvmFieldReferenceWithIntersectionTypes.kt.txt b/compiler/testData/ir/irText/expressions/jvmFieldReferenceWithIntersectionTypes.kt.txt
index 07e2ead..e1f39d3 100644
--- a/compiler/testData/ir/irText/expressions/jvmFieldReferenceWithIntersectionTypes.kt.txt
+++ b/compiler/testData/ir/irText/expressions/jvmFieldReferenceWithIntersectionTypes.kt.txt
@@ -51,7 +51,7 @@
   val d2: Derived2 = Derived2()
   val k: Any = when {
     b -> d1
-    else -> d2
+    true -> d2
   }
   k /*as JFieldOwner */(super<JFieldOwner>).#f = 42
   k /*as JFieldOwner */(super<JFieldOwner>).#f /*~> Unit */
@@ -59,7 +59,7 @@
   val md2: DerivedThroughMid2 = DerivedThroughMid2()
   val mk: Any = when {
     b -> md1
-    else -> md2
+    true -> md2
   }
   mk /*as Mid */(super<Mid>).#f = 44
   mk /*as Mid */(super<Mid>).#f /*~> Unit */
diff --git a/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.fir.kt.txt b/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.fir.kt.txt
index 69e9531..f24baa5 100644
--- a/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.fir.kt.txt
@@ -1,7 +1,7 @@
 class TestClass {
   val test: Int
     field = when {
-      else -> { // BLOCK
+      true -> { // BLOCK
         super<System>.#out.println(p0 = "TestClass/test")
         42
       }
diff --git a/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.kt.txt b/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.kt.txt
index 1ee8a2b..7adc02d 100644
--- a/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.kt.txt
+++ b/compiler/testData/ir/irText/expressions/jvmStaticFieldReference.kt.txt
@@ -1,7 +1,7 @@
 class TestClass {
   val test: Int
     field = when {
-      else -> { // BLOCK
+      true -> { // BLOCK
         super<System>.#out /*!! PrintStream */.println(p0 = "TestClass/test")
         42
       }
diff --git a/compiler/testData/ir/irText/expressions/kt23030.kt.txt b/compiler/testData/ir/irText/expressions/kt23030.kt.txt
index e71f476..0b28e8a 100644
--- a/compiler/testData/ir/irText/expressions/kt23030.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt23030.kt.txt
@@ -17,9 +17,9 @@
     return when {
       when {
         x is Int -> y is Char
-        else -> false
+        true -> false
       } -> less(arg0 = (<this>, x /*as Int */).compareTo(c = y /*as Char */), arg1 = 0)
-      else -> false
+      true -> false
     }
   }
 
@@ -33,9 +33,9 @@
   return when {
     when {
       x is Int -> y is Char
-      else -> false
+      true -> false
     } -> EQEQ(arg0 = x, arg1 = y)
-    else -> false
+    true -> false
   }
 }
 
@@ -47,9 +47,9 @@
   return when {
     when {
       x is Int -> y is Char
-      else -> false
+      true -> false
     } -> less(arg0 = x /*as Int */.compareTo(c = y /*as Char */), arg1 = 0)
-    else -> false
+    true -> false
   }
 }
 
diff --git a/compiler/testData/ir/irText/expressions/kt27933.fir.kt.txt b/compiler/testData/ir/irText/expressions/kt27933.fir.kt.txt
index 470ac8c..8334b8f 100644
--- a/compiler/testData/ir/irText/expressions/kt27933.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt27933.fir.kt.txt
@@ -3,7 +3,7 @@
   when {
     EQEQ(arg0 = r, arg1 = "").not() -> { // BLOCK
     }
-    else -> r = r.plus(other = "O")
+    true -> r = r.plus(other = "O")
   }
   when {
     EQEQ(arg0 = r, arg1 = "O") -> r = r.plus(other = "K")
diff --git a/compiler/testData/ir/irText/expressions/kt27933.kt.txt b/compiler/testData/ir/irText/expressions/kt27933.kt.txt
index 470ac8c..8334b8f 100644
--- a/compiler/testData/ir/irText/expressions/kt27933.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt27933.kt.txt
@@ -3,7 +3,7 @@
   when {
     EQEQ(arg0 = r, arg1 = "").not() -> { // BLOCK
     }
-    else -> r = r.plus(other = "O")
+    true -> r = r.plus(other = "O")
   }
   when {
     EQEQ(arg0 = r, arg1 = "O") -> r = r.plus(other = "K")
diff --git a/compiler/testData/ir/irText/expressions/kt30020.fir.kt.txt b/compiler/testData/ir/irText/expressions/kt30020.fir.kt.txt
index 705661b..fbfc301 100644
--- a/compiler/testData/ir/irText/expressions/kt30020.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt30020.fir.kt.txt
@@ -41,14 +41,14 @@
     val tmp_0: X? = nx
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.<get-xs>()
+      true -> tmp_0.<get-xs>()
     }
   }).plusAssign<Int>(element = 5)
   CHECK_NOT_NULL<MutableList<Any>>(arg0 = { // BLOCK
     val tmp_1: X? = nx
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.f()
+      true -> tmp_1.f()
     }
   }).plusAssign<Int>(element = 6)
 }
diff --git a/compiler/testData/ir/irText/expressions/kt30020.kt.txt b/compiler/testData/ir/irText/expressions/kt30020.kt.txt
index 6c005de..25a675b 100644
--- a/compiler/testData/ir/irText/expressions/kt30020.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt30020.kt.txt
@@ -44,14 +44,14 @@
     val tmp_1: X? = nx
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.<get-xs>()
+      true -> tmp_1.<get-xs>()
     }
   }).plusAssign<Int>(element = 5)
   CHECK_NOT_NULL<MutableList<Any>>(arg0 = { // BLOCK
     val tmp_2: X? = nx
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.f()
+      true -> tmp_2.f()
     }
   }).plusAssign<Int>(element = 6)
 }
diff --git a/compiler/testData/ir/irText/expressions/kt30796.fir.kt.txt b/compiler/testData/ir/irText/expressions/kt30796.fir.kt.txt
index 4fa7d10..eb27c27 100644
--- a/compiler/testData/ir/irText/expressions/kt30796.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt30796.fir.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: T = value
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> 42
-      else -> tmp_0
+      true -> tmp_0
     }
   }
   val x2: Any = { // BLOCK
@@ -17,10 +17,10 @@
         val tmp_2: T = value2
         when {
           EQEQ(arg0 = tmp_2, arg1 = null) -> 42
-          else -> tmp_2
+          true -> tmp_2
         }
       }
-      else -> tmp_1
+      true -> tmp_1
     }
   }
   val x3: Any = { // BLOCK
@@ -28,12 +28,12 @@
       val tmp_4: T = value
       when {
         EQEQ(arg0 = tmp_4, arg1 = null) -> value2
-        else -> tmp_4
+        true -> tmp_4
       }
     }
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> 42
-      else -> tmp_3
+      true -> tmp_3
     }
   }
   val x4: Any = { // BLOCK
@@ -41,19 +41,19 @@
       val tmp_6: T = value
       when {
         EQEQ(arg0 = tmp_6, arg1 = null) -> value2
-        else -> tmp_6
+        true -> tmp_6
       }
     }
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> 42
-      else -> tmp_5
+      true -> tmp_5
     }
   }
   val x5: Any = { // BLOCK
     val tmp_7: Any? = magic<Any?>()
     when {
       EQEQ(arg0 = tmp_7, arg1 = null) -> 42
-      else -> tmp_7
+      true -> tmp_7
     }
   }
   val x6: Any = { // BLOCK
@@ -61,12 +61,12 @@
       val tmp_9: T = value
       when {
         EQEQ(arg0 = tmp_9, arg1 = null) -> magic<Any?>()
-        else -> tmp_9
+        true -> tmp_9
       }
     }
     when {
       EQEQ(arg0 = tmp_8, arg1 = null) -> 42
-      else -> tmp_8
+      true -> tmp_8
     }
   }
   val x7: Any = { // BLOCK
@@ -74,12 +74,12 @@
       val tmp_11: Any? = magic<Any?>()
       when {
         EQEQ(arg0 = tmp_11, arg1 = null) -> value
-        else -> tmp_11
+        true -> tmp_11
       }
     }
     when {
       EQEQ(arg0 = tmp_10, arg1 = null) -> 42
-      else -> tmp_10
+      true -> tmp_10
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/kt30796.kt.txt b/compiler/testData/ir/irText/expressions/kt30796.kt.txt
index 4fa5603..84a6d59 100644
--- a/compiler/testData/ir/irText/expressions/kt30796.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt30796.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: T = value
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> 42
-      else -> tmp_0
+      true -> tmp_0
     }
   }
   val x2: Any = { // BLOCK
@@ -17,10 +17,10 @@
         val tmp_2: T = value2
         when {
           EQEQ(arg0 = tmp_2, arg1 = null) -> 42
-          else -> tmp_2
+          true -> tmp_2
         }
       }
-      else -> tmp_1
+      true -> tmp_1
     }
   }
   val x3: Any = { // BLOCK
@@ -28,12 +28,12 @@
       val tmp_4: T = value
       when {
         EQEQ(arg0 = tmp_4, arg1 = null) -> value2
-        else -> tmp_4
+        true -> tmp_4
       }
     }
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> 42
-      else -> tmp_3
+      true -> tmp_3
     }
   }
   val x4: Any = { // BLOCK
@@ -41,19 +41,19 @@
       val tmp_6: T = value
       when {
         EQEQ(arg0 = tmp_6, arg1 = null) -> value2
-        else -> tmp_6
+        true -> tmp_6
       }
     }
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> 42
-      else -> tmp_5
+      true -> tmp_5
     }
   }
   val x5: Any = { // BLOCK
     val tmp_7: Any? = magic<Any?>()
     when {
       EQEQ(arg0 = tmp_7, arg1 = null) -> 42
-      else -> tmp_7
+      true -> tmp_7
     }
   }
   val x6: Any = { // BLOCK
@@ -61,12 +61,12 @@
       val tmp_9: T = value
       when {
         EQEQ(arg0 = tmp_9, arg1 = null) -> magic<Any?>()
-        else -> tmp_9
+        true -> tmp_9
       }
     }
     when {
       EQEQ(arg0 = tmp_8, arg1 = null) -> 42
-      else -> tmp_8
+      true -> tmp_8
     }
   }
   val x7: Any = { // BLOCK
@@ -74,12 +74,12 @@
       val tmp_11: Any? = magic<Any?>()
       when {
         EQEQ(arg0 = tmp_11, arg1 = null) -> value
-        else -> tmp_11
+        true -> tmp_11
       }
     }
     when {
       EQEQ(arg0 = tmp_10, arg1 = null) -> 42
-      else -> tmp_10
+      true -> tmp_10
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/kt48708.kt.txt b/compiler/testData/ir/irText/expressions/kt48708.kt.txt
index 0cbcfa8..e8f4a54 100644
--- a/compiler/testData/ir/irText/expressions/kt48708.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt48708.kt.txt
@@ -6,7 +6,7 @@
     b -> { // BLOCK
       3
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       throw Exception()
       0
     }
diff --git a/compiler/testData/ir/irText/expressions/kt50028.fir.kt.txt b/compiler/testData/ir/irText/expressions/kt50028.fir.kt.txt
index 7658f87..ef89d0a 100644
--- a/compiler/testData/ir/irText/expressions/kt50028.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt50028.fir.kt.txt
@@ -1,6 +1,6 @@
 fun test_1(): String {
   return when {
-    else -> { // BLOCK
+    true -> { // BLOCK
       return ""
     }
   }
@@ -11,7 +11,7 @@
     b -> { // BLOCK
       true
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       throw NotImplementedError()
     }
   }
diff --git a/compiler/testData/ir/irText/expressions/kt50028.kt.txt b/compiler/testData/ir/irText/expressions/kt50028.kt.txt
index 0dd8f38..79a665b 100644
--- a/compiler/testData/ir/irText/expressions/kt50028.kt.txt
+++ b/compiler/testData/ir/irText/expressions/kt50028.kt.txt
@@ -1,6 +1,6 @@
 fun test_1(): String {
   return when {
-    else -> { // BLOCK
+    true -> { // BLOCK
       return ""
     }
   }
@@ -11,7 +11,7 @@
     b -> { // BLOCK
       true
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       throw NotImplementedError()
     }
   }
diff --git a/compiler/testData/ir/irText/expressions/multipleSmartCasts.fir.kt.txt b/compiler/testData/ir/irText/expressions/multipleSmartCasts.fir.kt.txt
index 2242995..8320ea8 100644
--- a/compiler/testData/ir/irText/expressions/multipleSmartCasts.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/multipleSmartCasts.fir.kt.txt
@@ -12,7 +12,7 @@
   when {
     when {
       x is IC1 -> x /*as IC1 */ is IC2
-      else -> false
+      true -> false
     } -> { // BLOCK
       val tmp_0: Any = x
       val x1: Int = tmp_0 /*as IC1 */.component1()
diff --git a/compiler/testData/ir/irText/expressions/multipleSmartCasts.kt.txt b/compiler/testData/ir/irText/expressions/multipleSmartCasts.kt.txt
index 1981c10..d2d94a1 100644
--- a/compiler/testData/ir/irText/expressions/multipleSmartCasts.kt.txt
+++ b/compiler/testData/ir/irText/expressions/multipleSmartCasts.kt.txt
@@ -12,7 +12,7 @@
   when {
     when {
       x is IC1 -> x is IC2
-      else -> false
+      true -> false
     } -> { // BLOCK
       // COMPOSITE {
       val tmp_0: Any = x
diff --git a/compiler/testData/ir/irText/expressions/safeAssignment.fir.kt.txt b/compiler/testData/ir/irText/expressions/safeAssignment.fir.kt.txt
index e84f091..6a5b692 100644
--- a/compiler/testData/ir/irText/expressions/safeAssignment.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeAssignment.fir.kt.txt
@@ -17,7 +17,7 @@
     val tmp_0: C? = nc
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.<set-x>(<set-?> = 42)
+      true -> tmp_0.<set-x>(<set-?> = 42)
     }
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/expressions/safeAssignment.kt.txt b/compiler/testData/ir/irText/expressions/safeAssignment.kt.txt
index d324537..95f921e 100644
--- a/compiler/testData/ir/irText/expressions/safeAssignment.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeAssignment.kt.txt
@@ -17,7 +17,7 @@
     val tmp_0: C? = nc
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null /*~> Unit */
-      else -> tmp_0.<set-x>(<set-?> = 42)
+      true -> tmp_0.<set-x>(<set-?> = 42)
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.kt.txt b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.kt.txt
index f3b8db8..fd7d0bf 100644
--- a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.fir.kt.txt
@@ -18,7 +18,7 @@
     val tmp_0: Int? = <this>
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.inc()
+      true -> tmp_0.inc()
     }
   }
 }
@@ -31,7 +31,7 @@
     val tmp_1: C? = nc
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> { // BLOCK
+      true -> { // BLOCK
         val tmp_2: Int = tmp_1.<get-p>()
         val tmp_3: Int = 0
         val tmp_4: Int = tmp_2.get(index = tmp_3)
@@ -47,7 +47,7 @@
     val tmp_5: C? = nc
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> null
-      else -> { // BLOCK
+      true -> { // BLOCK
         val tmp_6: C = tmp_5
         val tmp_7: Int = tmp_6.<get-p>()
         tmp_6.<set-p>(value = tmp_7.inc())
diff --git a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.kt.txt b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.kt.txt
index 5cd54b4..5fc64bf 100644
--- a/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeCallWithIncrementDecrement.kt.txt
@@ -18,7 +18,7 @@
     val tmp_0: Int? = <this>
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.inc()
+      true -> tmp_0.inc()
     }
   }
 }
@@ -32,7 +32,7 @@
       val tmp_2: C? = nc
       when {
         EQEQ(arg0 = tmp_2, arg1 = null) -> null
-        else -> tmp_2.<get-p>()
+        true -> tmp_2.<get-p>()
       }
     }
     val tmp_3: Int = 0
@@ -47,7 +47,7 @@
     val tmp_5: C? = nc
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> null
-      else -> { // BLOCK
+      true -> { // BLOCK
         val tmp_6: C? = tmp_5
         { // BLOCK
           val tmp_7: Int = tmp_6.<get-p>()
diff --git a/compiler/testData/ir/irText/expressions/safeCalls.fir.kt.txt b/compiler/testData/ir/irText/expressions/safeCalls.fir.kt.txt
index 179ce08..2031bcd 100644
--- a/compiler/testData/ir/irText/expressions/safeCalls.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeCalls.fir.kt.txt
@@ -24,7 +24,7 @@
     val tmp_0: Int = 42
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.foo()
+      true -> tmp_0.foo()
     }
   } /*~> Unit */
 }
@@ -38,7 +38,7 @@
     val tmp_1: String? = x
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.<get-length>()
+      true -> tmp_1.<get-length>()
     }
   }
 }
@@ -48,7 +48,7 @@
     val tmp_2: String? = x
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.hashCode()
+      true -> tmp_2.hashCode()
     }
   }
 }
@@ -58,7 +58,7 @@
     val tmp_3: String? = x
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> null
-      else -> tmp_3.equals(other = y)
+      true -> tmp_3.equals(other = y)
     }
   }
 }
@@ -68,7 +68,7 @@
     val tmp_4: Ref? = x
     when {
       EQEQ(arg0 = tmp_4, arg1 = null) -> null
-      else -> tmp_4.<set-value>(<set-?> = 0)
+      true -> tmp_4.<set-value>(<set-?> = 0)
     }
   } /*~> Unit */
 }
@@ -78,7 +78,7 @@
     val tmp_5: String? = s
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> null
-      else -> (<this>, tmp_5).extLength()
+      true -> (<this>, tmp_5).extLength()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/safeCalls.kt.txt b/compiler/testData/ir/irText/expressions/safeCalls.kt.txt
index f600f84..af46a42 100644
--- a/compiler/testData/ir/irText/expressions/safeCalls.kt.txt
+++ b/compiler/testData/ir/irText/expressions/safeCalls.kt.txt
@@ -24,7 +24,7 @@
     val tmp_0: Int = 42
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.foo()
+      true -> tmp_0.foo()
     }
   } /*~> Unit */
 }
@@ -38,7 +38,7 @@
     val tmp_1: String? = x
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.<get-length>()
+      true -> tmp_1.<get-length>()
     }
   }
 }
@@ -48,7 +48,7 @@
     val tmp_2: String? = x
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.hashCode()
+      true -> tmp_2.hashCode()
     }
   }
 }
@@ -58,7 +58,7 @@
     val tmp_3: String? = x
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> null
-      else -> tmp_3.equals(other = y)
+      true -> tmp_3.equals(other = y)
     }
   }
 }
@@ -68,7 +68,7 @@
     val tmp_4: Ref? = x
     when {
       EQEQ(arg0 = tmp_4, arg1 = null) -> null /*~> Unit */
-      else -> tmp_4.<set-value>(<set-?> = 0)
+      true -> tmp_4.<set-value>(<set-?> = 0)
     }
   }
 }
@@ -78,7 +78,7 @@
     val tmp_5: String? = s
     when {
       EQEQ(arg0 = tmp_5, arg1 = null) -> null
-      else -> (<this>, tmp_5).extLength()
+      true -> (<this>, tmp_5).extLength()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/sam/samConversions.fir.kt.txt b/compiler/testData/ir/irText/expressions/sam/samConversions.fir.kt.txt
index f3986cf..64cc942 100644
--- a/compiler/testData/ir/irText/expressions/sam/samConversions.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/sam/samConversions.fir.kt.txt
@@ -24,6 +24,6 @@
 fun J.test4(a: Function0<Unit>, b: Function0<Unit>, flag: Boolean) {
   <this>.runIt(r = when {
     flag -> a
-    else -> b
+    true -> b
   } /*-> Runnable */)
 }
diff --git a/compiler/testData/ir/irText/expressions/sam/samConversions.kt.txt b/compiler/testData/ir/irText/expressions/sam/samConversions.kt.txt
index 6cb6628..33f0a80 100644
--- a/compiler/testData/ir/irText/expressions/sam/samConversions.kt.txt
+++ b/compiler/testData/ir/irText/expressions/sam/samConversions.kt.txt
@@ -24,7 +24,7 @@
 fun J.test4(a: Function0<Unit>, b: Function0<Unit>, flag: Boolean) {
   <this>.runIt(r = when {
     flag -> a
-    else -> b
+    true -> b
   } /*-> @FlexibleNullability Runnable? */)
 }
 
diff --git a/compiler/testData/ir/irText/expressions/smartCastAside2.fir.kt.txt b/compiler/testData/ir/irText/expressions/smartCastAside2.fir.kt.txt
index bba5dd2..4958900 100644
--- a/compiler/testData/ir/irText/expressions/smartCastAside2.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/smartCastAside2.fir.kt.txt
@@ -49,28 +49,28 @@
     val tmp_0: Any = x
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> materialize<Any>()
-      else -> tmp_0
+      true -> tmp_0
     }
   } /*as Foo<Any> */.foo()
   { // BLOCK
     val tmp_1: Any = x
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> materialize<Any>()
-      else -> tmp_1
+      true -> tmp_1
     }
   } /*as Bar<Any> */.bar()
   { // BLOCK
     val tmp_2: Any = x
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> materialize<Any>()
-      else -> tmp_2
+      true -> tmp_2
     }
   } /*as Foo<Any> */.extFoo<Any>()
   { // BLOCK
     val tmp_3: Any = x
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> materialize<Any>()
-      else -> tmp_3
+      true -> tmp_3
     }
   } /*as Bar<Any> */.extBar<Any>()
 }
diff --git a/compiler/testData/ir/irText/expressions/smartCastAside2.kt.txt b/compiler/testData/ir/irText/expressions/smartCastAside2.kt.txt
index c72a44f..f303bfc 100644
--- a/compiler/testData/ir/irText/expressions/smartCastAside2.kt.txt
+++ b/compiler/testData/ir/irText/expressions/smartCastAside2.kt.txt
@@ -49,28 +49,28 @@
     val tmp_0: Any = x
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> materialize<Any>()
-      else -> tmp_0
+      true -> tmp_0
     }
   } /*as Foo<Any> */.foo()
   { // BLOCK
     val tmp_1: Any = x
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> materialize<Any>()
-      else -> tmp_1
+      true -> tmp_1
     }
   } /*as Bar<Any> */.bar()
   { // BLOCK
     val tmp_2: Any = x
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> materialize<Any>()
-      else -> tmp_2
+      true -> tmp_2
     }
   } /*as Foo<Any> */.extFoo<Any>()
   { // BLOCK
     val tmp_3: Any = x
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> materialize<Any>()
-      else -> tmp_3
+      true -> tmp_3
     }
   } /*as Bar<Any> */.extBar<Any>()
 }
diff --git a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt.txt b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt.txt
index b099493..73f5431 100644
--- a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt.txt
+++ b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt.txt
@@ -11,7 +11,7 @@
     val tmp_0: Any? = <get-n>()
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.toString()
+      true -> tmp_0.toString()
     }
   })
 
diff --git a/compiler/testData/ir/irText/expressions/temporaryInInitBlock.kt.txt b/compiler/testData/ir/irText/expressions/temporaryInInitBlock.kt.txt
index 9f92819..37a10af2 100644
--- a/compiler/testData/ir/irText/expressions/temporaryInInitBlock.kt.txt
+++ b/compiler/testData/ir/irText/expressions/temporaryInInitBlock.kt.txt
@@ -7,7 +7,7 @@
       val tmp_0: Any? = x
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> null
-        else -> tmp_0.toString()
+        true -> tmp_0.toString()
       }
     }
   }
diff --git a/compiler/testData/ir/irText/expressions/typeArguments.kt.txt b/compiler/testData/ir/irText/expressions/typeArguments.kt.txt
index 0d647c4..d3ad190 100644
--- a/compiler/testData/ir/irText/expressions/typeArguments.kt.txt
+++ b/compiler/testData/ir/irText/expressions/typeArguments.kt.txt
@@ -1,6 +1,6 @@
 fun test1(x: Any): Boolean {
   return when {
     x is Array<*> -> x /*as Array<*> */.isArrayOf<String>()
-    else -> false
+    true -> false
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.kt.txt b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.kt.txt
index 7bb9635..3c66373 100644
--- a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.fir.kt.txt
@@ -23,12 +23,12 @@
       val tmp_1: String? = ns
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> null
-        else -> tmp_1.k()
+        true -> tmp_1.k()
       }
     }
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.invoke()
+      true -> tmp_0.invoke()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.kt.txt b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.kt.txt
index 7bb9635..3c66373 100644
--- a/compiler/testData/ir/irText/expressions/variableAsFunctionCall.kt.txt
+++ b/compiler/testData/ir/irText/expressions/variableAsFunctionCall.kt.txt
@@ -23,12 +23,12 @@
       val tmp_1: String? = ns
       when {
         EQEQ(arg0 = tmp_1, arg1 = null) -> null
-        else -> tmp_1.k()
+        true -> tmp_1.k()
       }
     }
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.invoke()
+      true -> tmp_0.invoke()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/when.fir.kt.txt b/compiler/testData/ir/irText/expressions/when.fir.kt.txt
index d910cc1..257ddb6 100644
--- a/compiler/testData/ir/irText/expressions/when.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/when.fir.kt.txt
@@ -14,7 +14,7 @@
     x is String -> "String"
     x !is Number -> "!Number"
     setOf<Nothing>().contains<Number>(element = x /*as Number */) -> "nothingness?"
-    else -> "something"
+    true -> "something"
   }
 }
 
@@ -25,25 +25,25 @@
       when {
         when {
           EQEQ(arg0 = tmp_0, arg1 = 1) -> true
-          else -> EQEQ(arg0 = tmp_0, arg1 = 2)
+          true -> EQEQ(arg0 = tmp_0, arg1 = 2)
         } -> true
-        else -> when {
+        true -> when {
           EQEQ(arg0 = tmp_0, arg1 = 3) -> true
-          else -> EQEQ(arg0 = tmp_0, arg1 = 4)
+          true -> EQEQ(arg0 = tmp_0, arg1 = 4)
         }
       } -> "1234"
       when {
         EQEQ(arg0 = tmp_0, arg1 = 5) -> true
-        else -> when {
+        true -> when {
           EQEQ(arg0 = tmp_0, arg1 = 6) -> true
-          else -> EQEQ(arg0 = tmp_0, arg1 = 7)
+          true -> EQEQ(arg0 = tmp_0, arg1 = 7)
         }
       } -> "567"
       when {
         EQEQ(arg0 = tmp_0, arg1 = 8) -> true
-        else -> EQEQ(arg0 = tmp_0, arg1 = 9)
+        true -> EQEQ(arg0 = tmp_0, arg1 = 9)
       } -> "89"
-      else -> "?"
+      true -> "?"
     }
   }
 }
@@ -57,7 +57,7 @@
       tmp_1 is String -> "String"
       tmp_1 !is Number -> "!Number"
       setOf<Nothing>().contains<Number>(element = tmp_1 /*as Number */) -> "nothingness?"
-      else -> "something"
+      true -> "something"
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/when.kt.txt b/compiler/testData/ir/irText/expressions/when.kt.txt
index f8471ab..55c91f7 100644
--- a/compiler/testData/ir/irText/expressions/when.kt.txt
+++ b/compiler/testData/ir/irText/expressions/when.kt.txt
@@ -14,7 +14,7 @@
     x is String -> "String"
     x !is Number -> "!Number"
     setOf<Nothing>().contains<Number>(element = x /*as Number */) -> "nothingness?"
-    else -> "something"
+    true -> "something"
   }
 }
 
@@ -26,24 +26,24 @@
         when {
           when {
             EQEQ(arg0 = tmp_0, arg1 = 1) -> true
-            else -> EQEQ(arg0 = tmp_0, arg1 = 2)
+            true -> EQEQ(arg0 = tmp_0, arg1 = 2)
           } -> true
-          else -> EQEQ(arg0 = tmp_0, arg1 = 3)
+          true -> EQEQ(arg0 = tmp_0, arg1 = 3)
         } -> true
-        else -> EQEQ(arg0 = tmp_0, arg1 = 4)
+        true -> EQEQ(arg0 = tmp_0, arg1 = 4)
       } -> "1234"
       when {
         when {
           EQEQ(arg0 = tmp_0, arg1 = 5) -> true
-          else -> EQEQ(arg0 = tmp_0, arg1 = 6)
+          true -> EQEQ(arg0 = tmp_0, arg1 = 6)
         } -> true
-        else -> EQEQ(arg0 = tmp_0, arg1 = 7)
+        true -> EQEQ(arg0 = tmp_0, arg1 = 7)
       } -> "567"
       when {
         EQEQ(arg0 = tmp_0, arg1 = 8) -> true
-        else -> EQEQ(arg0 = tmp_0, arg1 = 9)
+        true -> EQEQ(arg0 = tmp_0, arg1 = 9)
       } -> "89"
-      else -> "?"
+      true -> "?"
     }
   }
 }
@@ -57,7 +57,7 @@
       tmp_1 is String -> "String"
       tmp_1 is Number.not() -> "!Number"
       setOf<Nothing>().contains<Number>(element = tmp_1 /*as Number */) -> "nothingness?"
-      else -> "something"
+      true -> "something"
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/whenElse.kt.txt b/compiler/testData/ir/irText/expressions/whenElse.kt.txt
index 85e496d..304cef3 100644
--- a/compiler/testData/ir/irText/expressions/whenElse.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenElse.kt.txt
@@ -1,5 +1,5 @@
 fun test(): Int {
   return when {
-    else -> 42
+    true -> 42
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/whenReturn.fir.kt.txt b/compiler/testData/ir/irText/expressions/whenReturn.fir.kt.txt
index cd134af..566bc88 100644
--- a/compiler/testData/ir/irText/expressions/whenReturn.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenReturn.fir.kt.txt
@@ -6,7 +6,7 @@
       EQEQ(arg0 = tmp_0, arg1 = "B") -> return "Good"
       EQEQ(arg0 = tmp_0, arg1 = "C") -> return "Mediocre"
       EQEQ(arg0 = tmp_0, arg1 = "D") -> return "Fair"
-      else -> return "Failure"
+      true -> return "Failure"
     }
   }
   return "???"
diff --git a/compiler/testData/ir/irText/expressions/whenReturn.kt.txt b/compiler/testData/ir/irText/expressions/whenReturn.kt.txt
index cd134af..566bc88 100644
--- a/compiler/testData/ir/irText/expressions/whenReturn.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenReturn.kt.txt
@@ -6,7 +6,7 @@
       EQEQ(arg0 = tmp_0, arg1 = "B") -> return "Good"
       EQEQ(arg0 = tmp_0, arg1 = "C") -> return "Mediocre"
       EQEQ(arg0 = tmp_0, arg1 = "D") -> return "Fair"
-      else -> return "Failure"
+      true -> return "Failure"
     }
   }
   return "???"
diff --git a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.kt.txt b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.kt.txt
index 14872af..54212a1 100644
--- a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.kt.txt
@@ -35,7 +35,7 @@
           }
           EQEQ(arg0 = tmp_0, arg1 = En.C) -> { // BLOCK
           }
-          else -> noWhenBranchMatchedException()
+          true -> noWhenBranchMatchedException()
         }
       }
     }
@@ -53,7 +53,7 @@
           }
           EQEQ(arg0 = tmp_1, arg1 = En.C) -> { // BLOCK
           }
-          else -> noWhenBranchMatchedException()
+          true -> noWhenBranchMatchedException()
         }
       }
     }
diff --git a/compiler/testData/ir/irText/expressions/whenUnusedExpression.fir.kt.txt b/compiler/testData/ir/irText/expressions/whenUnusedExpression.fir.kt.txt
index 5f90660..c2f3555 100644
--- a/compiler/testData/ir/irText/expressions/whenUnusedExpression.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenUnusedExpression.fir.kt.txt
@@ -5,11 +5,11 @@
         val tmp_0: Int = i
         when {
           EQEQ(arg0 = tmp_0, arg1 = 0) -> 1
-          else -> null
+          true -> null
         }
       }
     }
-    else -> null
+    true -> null
   } /*~> Unit */
 }
 
diff --git a/compiler/testData/ir/irText/expressions/whenUnusedExpression.kt.txt b/compiler/testData/ir/irText/expressions/whenUnusedExpression.kt.txt
index cf52a64..0449c1b 100644
--- a/compiler/testData/ir/irText/expressions/whenUnusedExpression.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenUnusedExpression.kt.txt
@@ -5,10 +5,10 @@
         val tmp_0: Int = i
         when {
           EQEQ(arg0 = tmp_0, arg1 = 0) -> 1 /*~> Unit */
-          else -> null /*~> Unit */
+          true -> null /*~> Unit */
         }
       }
     }
-    else -> null /*~> Unit */
+    true -> null /*~> Unit */
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.fir.kt.txt b/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.fir.kt.txt
index ddd9336..d89b428 100644
--- a/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.fir.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.fir.kt.txt
@@ -11,7 +11,7 @@
       y !is Int -> 2
       0.rangeTo(other = 10).contains(value = y /*as Int */) -> 3
       10.rangeTo(other = 20).contains(value = y /*as Int */).not() -> 4
-      else -> -1
+      true -> -1
     }
   }
 }
diff --git a/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.kt.txt b/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.kt.txt
index 66bfbe7..865365a 100644
--- a/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.kt.txt
+++ b/compiler/testData/ir/irText/expressions/whenWithSubjectVariable.kt.txt
@@ -11,7 +11,7 @@
       y is Int.not() -> 2
       0.rangeTo(other = 10).contains(value = y /*as Int */) -> 3
       10.rangeTo(other = 20).contains(value = y /*as Int */).not() -> 4
-      else -> -1
+      true -> -1
     }
   }
 }
diff --git a/compiler/testData/ir/irText/firProblems/ArrayMap.fir.kt.txt b/compiler/testData/ir/irText/firProblems/ArrayMap.fir.kt.txt
index 62100a4..ad6c167 100644
--- a/compiler/testData/ir/irText/firProblems/ArrayMap.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/ArrayMap.fir.kt.txt
@@ -75,7 +75,7 @@
       var result: Int = <this>.#key.hashCode()
       result = result.times(other = 31).plus(other = when {
         EQEQ(arg0 = <this>.#value, arg1 = null) -> 0
-        else -> <this>.#value.hashCode()
+        true -> <this>.#value.hashCode()
       })
       return result
     }
@@ -129,7 +129,7 @@
     return <this>.<get-data>().mapIndexedNotNull<Any?, Entry<T>>(transform = local fun <anonymous>(index: @ParameterName(name = "index") Int, value: Any?): Entry<T>? {
       return when {
         EQEQ(arg0 = value, arg1 = null).not() -> Entry<T>(key = index, value = value as T)
-        else -> null
+        true -> null
       }
     }
 )
@@ -163,14 +163,14 @@
             } /*~> Unit */
             // }            while (when {
               less(arg0 = <this>.<get-index>(), arg1 = <this>.<get-data>().<get-size>()) -> EQEQ(arg0 = <this>.<get-data>().get(index = <this>.<get-index>()), arg1 = null)
-              else -> false
+              true -> false
             })
           }
           when {
             greaterOrEqual(arg0 = <this>.<get-index>(), arg1 = <this>.<get-data>().<get-size>()) -> { // BLOCK
               <this>.done()
             }
-            else -> { // BLOCK
+            true -> { // BLOCK
               <this>.setNext(value = <this>.<get-data>().get(index = <this>.<get-index>()) as T)
             }
           }
@@ -229,7 +229,7 @@
   override operator fun get(index: Int): T? {
     return when {
       EQEQ(arg0 = index, arg1 = <this>.<get-index>()) -> <this>.<get-value>()
-      else -> null
+      true -> null
     }
   }
 
@@ -257,7 +257,7 @@
               <this>.<set-notVisited>(<set-?> = false)
               return <this>.<get-value>()
             }
-            else -> { // BLOCK
+            true -> { // BLOCK
               throw NoSuchElementException()
             }
           }
diff --git a/compiler/testData/ir/irText/firProblems/ArrayMap.kt.txt b/compiler/testData/ir/irText/firProblems/ArrayMap.kt.txt
index 250488a..17abd40 100644
--- a/compiler/testData/ir/irText/firProblems/ArrayMap.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/ArrayMap.kt.txt
@@ -75,7 +75,7 @@
       var result: Int = <this>.#key.hashCode()
       result = result.times(other = 31).plus(other = when {
         EQEQ(arg0 = <this>.#value, arg1 = null) -> 0
-        else -> <this>.#value.hashCode()
+        true -> <this>.#value.hashCode()
       })
       return result
     }
@@ -129,7 +129,7 @@
     return <this>.<get-data>().mapIndexedNotNull<Any?, Entry<T>>(transform = local fun <anonymous>(index: Int, value: Any?): Entry<T>? {
       return when {
         EQEQ(arg0 = value, arg1 = null).not() -> Entry<T>(key = index, value = value as T)
-        else -> null
+        true -> null
       }
     }
 )
@@ -166,14 +166,14 @@
             } /*~> Unit */
             // }            while (when {
               less(arg0 = <this>.<get-index>(), arg1 = <this>.<get-data>().<get-size>()) -> EQEQ(arg0 = <this>.<get-data>().get(index = <this>.<get-index>()), arg1 = null)
-              else -> false
+              true -> false
             })
           }
           when {
             greaterOrEqual(arg0 = <this>.<get-index>(), arg1 = <this>.<get-data>().<get-size>()) -> { // BLOCK
               <this>.done()
             }
-            else -> { // BLOCK
+            true -> { // BLOCK
               <this>.setNext(value = <this>.<get-data>().get(index = <this>.<get-index>()) as T)
             }
           }
@@ -242,7 +242,7 @@
   override operator fun get(index: Int): T? {
     return when {
       EQEQ(arg0 = index, arg1 = <this>.<get-index>()) -> <this>.<get-value>()
-      else -> null
+      true -> null
     }
   }
 
@@ -270,7 +270,7 @@
               <this>.<set-notVisited>(<set-?> = false)
               return <this>.<get-value>()
             }
-            else -> { // BLOCK
+            true -> { // BLOCK
               throw NoSuchElementException()
             }
           }
diff --git a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.kt.txt b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.kt.txt
index f10567e0..dd55431 100644
--- a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.kt.txt
@@ -51,7 +51,7 @@
           val tmp_1: Collection<ComponentDescriptor>? = <get-registrationMap>().get(p0 = resolver.<get-applicableTo>()) as? Collection<ComponentDescriptor>
           when {
             EQEQ(arg0 = tmp_1, arg1 = null) -> continue
-            else -> tmp_1
+            true -> tmp_1
           }
         }
         val substituteDescriptor: ClashResolutionDescriptor<out PlatformSpecificExtension<*>> = ClashResolutionDescriptor<PlatformSpecificExtension<*>>(container = container, resolver = resolver, clashedComponents = clashedComponents.toList<ComponentDescriptor>())
diff --git a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.kt.txt b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.kt.txt
index 0053904..7658fe6 100644
--- a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.kt.txt
@@ -51,7 +51,7 @@
           val tmp_1: Collection<ComponentDescriptor>? = <get-registrationMap>().get(key = resolver.<get-applicableTo>()) as? Collection<ComponentDescriptor>
           when {
             EQEQ(arg0 = tmp_1, arg1 = null) -> continue
-            else -> tmp_1
+            true -> tmp_1
           }
         }
         val substituteDescriptor: ClashResolutionDescriptor<out PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out Any?>>>>>> = ClashResolutionDescriptor<PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out PlatformSpecificExtension<out Any?>>>>>>(container = container, resolver = resolver, clashedComponents = clashedComponents.toList<ComponentDescriptor>())
diff --git a/compiler/testData/ir/irText/firProblems/ImplicitReceiverStack.kt.txt b/compiler/testData/ir/irText/firProblems/ImplicitReceiverStack.kt.txt
index 4c1cf31..3b1caf0 100644
--- a/compiler/testData/ir/irText/firProblems/ImplicitReceiverStack.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/ImplicitReceiverStack.kt.txt
@@ -69,7 +69,7 @@
     val tmp_0: ImplicitReceiverValue<*>? = stack.get(name = null)
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.<get-type>()
+      true -> tmp_0.<get-type>()
     }
   })
 }
diff --git a/compiler/testData/ir/irText/firProblems/Modality.kt.txt b/compiler/testData/ir/irText/firProblems/Modality.kt.txt
index 653cda5..241ca07 100644
--- a/compiler/testData/ir/irText/firProblems/Modality.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/Modality.kt.txt
@@ -59,7 +59,7 @@
     when {
       when {
         candidateDescriptor is MemberDescriptor -> EQEQ(arg0 = candidateDescriptor /*as MemberDescriptor */.getModality(), arg1 = null).not()
-        else -> false
+        true -> false
       } -> { // BLOCK
         return "OK"
       }
diff --git a/compiler/testData/ir/irText/firProblems/MultiList.fir.kt.txt b/compiler/testData/ir/irText/firProblems/MultiList.fir.kt.txt
index 9168de0..ccbdb5a 100644
--- a/compiler/testData/ir/irText/firProblems/MultiList.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/MultiList.fir.kt.txt
@@ -43,7 +43,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#value, arg1 = null) -> 0
-      else -> <this>.#value.hashCode()
+      true -> <this>.#value.hashCode()
     }
   }
 
diff --git a/compiler/testData/ir/irText/firProblems/MultiList.kt.txt b/compiler/testData/ir/irText/firProblems/MultiList.kt.txt
index 49dbce4..0300b59 100644
--- a/compiler/testData/ir/irText/firProblems/MultiList.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/MultiList.kt.txt
@@ -43,7 +43,7 @@
   override fun hashCode(): Int {
     return when {
       EQEQ(arg0 = <this>.#value, arg1 = null) -> 0
-      else -> <this>.#value.hashCode()
+      true -> <this>.#value.hashCode()
     }
   }
 
diff --git a/compiler/testData/ir/irText/firProblems/SafeLetWithReturn.kt.txt b/compiler/testData/ir/irText/firProblems/SafeLetWithReturn.kt.txt
index 640424c..0d8c8fd 100644
--- a/compiler/testData/ir/irText/firProblems/SafeLetWithReturn.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/SafeLetWithReturn.kt.txt
@@ -3,12 +3,12 @@
     val tmp_0: String? = s
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.let<String, Nothing?>(block = local fun <anonymous>(it: String): Nothing? {
+      true -> tmp_0.let<String, Nothing?>(block = local fun <anonymous>(it: String): Nothing? {
         return { // BLOCK
           val tmp_1: String? = t
           when {
             EQEQ(arg0 = tmp_1, arg1 = null) -> null
-            else -> tmp_1.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
+            true -> tmp_1.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
               return it
             }
 )
@@ -26,7 +26,7 @@
     val tmp_2: String? = s
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
+      true -> tmp_2.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
         return it
       }
 )
@@ -41,7 +41,7 @@
       val tmp_3: String? = <this>
       when {
         EQEQ(arg0 = tmp_3, arg1 = null) -> null
-        else -> tmp_3.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
+        true -> tmp_3.let<String, Nothing>(block = local fun <anonymous>(it: String): Nothing {
           return it
         }
 )
diff --git a/compiler/testData/ir/irText/firProblems/candidateSymbol.fir.kt.txt b/compiler/testData/ir/irText/firProblems/candidateSymbol.fir.kt.txt
index c9c8390..de63bfc 100644
--- a/compiler/testData/ir/irText/firProblems/candidateSymbol.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/candidateSymbol.fir.kt.txt
@@ -44,7 +44,7 @@
   when {
     when {
       me is FirCallableMemberDeclaration<*> -> EQEQ(arg0 = me /*as FirCallableMemberDeclaration<*> */.<get-symbol>(), arg1 = null).not()
-      else -> false
+      true -> false
     } -> { // BLOCK
     }
   }
diff --git a/compiler/testData/ir/irText/firProblems/candidateSymbol.kt.txt b/compiler/testData/ir/irText/firProblems/candidateSymbol.kt.txt
index dd14e67..59015f6 100644
--- a/compiler/testData/ir/irText/firProblems/candidateSymbol.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/candidateSymbol.kt.txt
@@ -44,7 +44,7 @@
   when {
     when {
       me is FirCallableMemberDeclaration<*> -> EQEQ(arg0 = me /*as FirCallableMemberDeclaration<out FirCallableMemberDeclaration<*>> */.<get-symbol>(), arg1 = null).not()
-      else -> false
+      true -> false
     } -> { // BLOCK
     }
   }
diff --git a/compiler/testData/ir/irText/firProblems/cannotCastToFunction.fir.kt.txt b/compiler/testData/ir/irText/firProblems/cannotCastToFunction.fir.kt.txt
index ab4ecb5..e005be3 100644
--- a/compiler/testData/ir/irText/firProblems/cannotCastToFunction.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/cannotCastToFunction.fir.kt.txt
@@ -20,7 +20,7 @@
 
       ::dumpKotlinLike
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       local fun dump(p0: IrElement): String {
         return p0.dump()
       }
diff --git a/compiler/testData/ir/irText/firProblems/cannotCastToFunction.kt.txt b/compiler/testData/ir/irText/firProblems/cannotCastToFunction.kt.txt
index ab4ecb5..e005be3 100644
--- a/compiler/testData/ir/irText/firProblems/cannotCastToFunction.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/cannotCastToFunction.kt.txt
@@ -20,7 +20,7 @@
 
       ::dumpKotlinLike
     }
-    else -> { // BLOCK
+    true -> { // BLOCK
       local fun dump(p0: IrElement): String {
         return p0.dump()
       }
diff --git a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.kt.txt b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.kt.txt
index e4d1f40..d92f597 100644
--- a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.kt.txt
@@ -2,20 +2,20 @@
   var ch: Char? = <this>.nextChar()
   while (when {
     EQEQ(arg0 = ch, arg1 = null).not() -> EQEQ(arg0 = ch, arg1 = quote).not()
-    else -> false
+    true -> false
   }) { // BLOCK
     when {
       EQEQ(arg0 = ch, arg1 = '\\') -> { // BLOCK
         val tmp_0: Char? = <this>.nextChar()
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> null
-          else -> tmp_0.let<Char, @FlexibleNullability StringBuilder?>(block = local fun <anonymous>(it: Char): @FlexibleNullability StringBuilder? {
+          true -> tmp_0.let<Char, @FlexibleNullability StringBuilder?>(block = local fun <anonymous>(it: Char): @FlexibleNullability StringBuilder? {
             return sb.append(p0 = it)
           }
 )
         }
       }
-      else -> sb.append(p0 = ch)
+      true -> sb.append(p0 = ch)
     } /*~> Unit */
     ch = <this>.nextChar()
   }
@@ -29,7 +29,7 @@
 )
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.toChar()
+      true -> tmp_1.toChar()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.kt.txt b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.kt.txt
index efd8c8b..648b3ed 100644
--- a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.kt.txt
@@ -2,20 +2,20 @@
   var ch: Char? = <this>.nextChar()
   while (when {
     EQEQ(arg0 = ch, arg1 = null).not() -> EQEQ(arg0 = ch, arg1 = quote).not()
-    else -> false
+    true -> false
   }) { // BLOCK
     when {
       EQEQ(arg0 = ch, arg1 = <get-BACKSLASH>()) -> { // BLOCK
         val tmp_0: Char? = <this>.nextChar()
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> null
-          else -> tmp_0.let<Char, @FlexibleNullability StringBuilder?>(block = local fun <anonymous>(it: Char): @FlexibleNullability StringBuilder? {
+          true -> tmp_0.let<Char, @FlexibleNullability StringBuilder?>(block = local fun <anonymous>(it: Char): @FlexibleNullability StringBuilder? {
             return sb.append(p0 = it)
           }
 )
         }
       } /*~> Unit */
-      else -> sb.append(p0 = ch) /*~> Unit */
+      true -> sb.append(p0 = ch) /*~> Unit */
     }
     ch = <this>.nextChar()
   }
@@ -29,7 +29,7 @@
 )
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.toChar()
+      true -> tmp_1.toChar()
     }
   }
 }
diff --git a/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.fir.kt.txt b/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.fir.kt.txt
index cfe1857..bdf1ed7c 100644
--- a/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.fir.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.fir.kt.txt
@@ -26,7 +26,7 @@
         val tmp_0: ResourceTable? = <this>.#resourceTable
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> ResourceTable()
-          else -> tmp_0
+          true -> tmp_0
         }
       }
     }
diff --git a/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.kt.txt b/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.kt.txt
index cfe1857..bdf1ed7c 100644
--- a/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/elvisOnBackingFieldInGetter.kt.txt
@@ -26,7 +26,7 @@
         val tmp_0: ResourceTable? = <this>.#resourceTable
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> ResourceTable()
-          else -> tmp_0
+          true -> tmp_0
         }
       }
     }
diff --git a/compiler/testData/ir/irText/firProblems/emptyWhen.kt.txt b/compiler/testData/ir/irText/firProblems/emptyWhen.kt.txt
index f01fa1d..2913aae 100644
--- a/compiler/testData/ir/irText/firProblems/emptyWhen.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/emptyWhen.kt.txt
@@ -5,14 +5,14 @@
   { // BLOCK
     val tmp_0: Int = x
     when {
-      else -> { // BLOCK
+      true -> { // BLOCK
       }
     }
   }
   val z: Unit = { // BLOCK
     val tmp_1: Int = x
     when {
-      else -> { // BLOCK
+      true -> { // BLOCK
       }
     }
   }
diff --git a/compiler/testData/ir/irText/firProblems/integerLiteralWithExpectedTypealiasType.kt.txt b/compiler/testData/ir/irText/firProblems/integerLiteralWithExpectedTypealiasType.kt.txt
index 90be563..454471f 100644
--- a/compiler/testData/ir/irText/firProblems/integerLiteralWithExpectedTypealiasType.kt.txt
+++ b/compiler/testData/ir/irText/firProblems/integerLiteralWithExpectedTypealiasType.kt.txt
@@ -5,7 +5,7 @@
 fun foo(l: Long): String {
   return when {
     EQEQ(arg0 = l, arg1 = 0L) -> "OK"
-    else -> "fail"
+    true -> "fail"
   }
 }
 
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicCall.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicCall.kt.txt
index 55ff791..8466912 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicCall.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicCall.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.member(1, 2, 3)
+      true -> tmp_0.member(1, 2, 3)
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicElvisOperator.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicElvisOperator.kt.txt
index 13ef7ac..80e4477 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicElvisOperator.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicElvisOperator.kt.txt
@@ -3,7 +3,7 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> "other"
-      else -> tmp_0
+      true -> tmp_0
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.fir.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.fir.kt.txt
index 5a869ec..aa727a2 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.fir.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.fir.kt.txt
@@ -46,7 +46,7 @@
     var result: Int = <this>.#a.hashCode()
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#b, arg1 = null) -> 0
-      else -> <this>.#b.hashCode()
+      true -> <this>.#b.hashCode()
     })
     return result
   }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.kt.txt
index 77ca546..2f25a39 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicInDataClass.kt.txt
@@ -46,7 +46,7 @@
     var result: Int = <this>.#a.hashCode()
     result = result.times(other = 31).plus(other = when {
       EQEQ(arg0 = <this>.#b, arg1 = null) -> 0
-      else -> <this>.#b /*~> Any */.hashCode()
+      true -> <this>.#b /*~> Any */.hashCode()
     })
     return result
   }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAccess.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAccess.kt.txt
index 1c74add..918244d 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAccess.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAccess.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.member
+      true -> tmp_0.member
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.fir.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.fir.kt.txt
index d02f01b..9307a41 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.fir.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.fir.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.m = 1
+      true -> tmp_0.m = 1
     }
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.kt.txt
index 7e3b485..ac61e5e 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAssignment.kt.txt
@@ -7,7 +7,7 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null /*~> Unit */
-      else -> tmp_0.m = 1
+      true -> tmp_0.m = 1
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.fir.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.fir.kt.txt
index 780cd70..e7956e7 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.fir.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.fir.kt.txt
@@ -11,35 +11,35 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.m += "+="
+      true -> tmp_0.m += "+="
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_1: dynamic = d
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> tmp_1.m -= "-="
+      true -> tmp_1.m -= "-="
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_2: dynamic = d
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.m *= "*="
+      true -> tmp_2.m *= "*="
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_3: dynamic = d
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> null
-      else -> tmp_3.m /= "/="
+      true -> tmp_3.m /= "/="
     }
   } /*~> Unit */
   { // BLOCK
     val tmp_4: dynamic = d
     when {
       EQEQ(arg0 = tmp_4, arg1 = null) -> null
-      else -> tmp_4.m %= "%="
+      true -> tmp_4.m %= "%="
     }
   } /*~> Unit */
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.kt.txt
index 2d3df06..344a9ec 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberAugmentedAssignment.kt.txt
@@ -11,35 +11,35 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null /*~> Unit */
-      else -> tmp_0.m += "+="
+      true -> tmp_0.m += "+="
     }
   }
   { // BLOCK
     val tmp_1: dynamic = d
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null /*~> Unit */
-      else -> tmp_1.m -= "-="
+      true -> tmp_1.m -= "-="
     }
   }
   { // BLOCK
     val tmp_2: dynamic = d
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null /*~> Unit */
-      else -> tmp_2.m *= "*="
+      true -> tmp_2.m *= "*="
     }
   }
   { // BLOCK
     val tmp_3: dynamic = d
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> null /*~> Unit */
-      else -> tmp_3.m /= "/="
+      true -> tmp_3.m /= "/="
     }
   }
   { // BLOCK
     val tmp_4: dynamic = d
     when {
       EQEQ(arg0 = tmp_4, arg1 = null) -> null /*~> Unit */
-      else -> tmp_4.m %= "%="
+      true -> tmp_4.m %= "%="
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicMemberIncrementDecrement.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicMemberIncrementDecrement.kt.txt
index ec067dd..a6c0e3b 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicMemberIncrementDecrement.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicMemberIncrementDecrement.kt.txt
@@ -10,28 +10,28 @@
     val tmp_0: dynamic = d
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> ++tmp_0.prefixIncr
+      true -> ++tmp_0.prefixIncr
     }
   }
   val t2: dynamic = { // BLOCK
     val tmp_1: dynamic = d
     when {
       EQEQ(arg0 = tmp_1, arg1 = null) -> null
-      else -> --tmp_1.prefixDecr
+      true -> --tmp_1.prefixDecr
     }
   }
   val t3: dynamic = { // BLOCK
     val tmp_2: dynamic = d
     when {
       EQEQ(arg0 = tmp_2, arg1 = null) -> null
-      else -> tmp_2.postfixIncr++
+      true -> tmp_2.postfixIncr++
     }
   }
   val t4: dynamic = { // BLOCK
     val tmp_3: dynamic = d
     when {
       EQEQ(arg0 = tmp_3, arg1 = null) -> null
-      else -> tmp_3.postfixDecr--
+      true -> tmp_3.postfixDecr--
     }
   }
 }
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.fir.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.fir.kt.txt
index e94c595..1e841c4 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.fir.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.fir.kt.txt
@@ -1,14 +1,14 @@
 fun test1(d: dynamic): Int {
   return when {
     d is String -> d /*~> String */.<get-length>()
-    else -> -1
+    true -> -1
   }
 }
 
 fun test2(d: dynamic): Int {
   return when {
     d is Array<*> -> d /*~> Array<*> */.<get-size>()
-    else -> -1
+    true -> -1
   }
 }
 
diff --git a/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.kt.txt b/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.kt.txt
index 411f0fb..c815813 100644
--- a/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.kt.txt
+++ b/compiler/testData/ir/irText/js/dynamic/dynamicWithSmartCast.kt.txt
@@ -1,14 +1,14 @@
 fun test1(d: dynamic): Int {
   return when {
     d is String -> d /*~> String */.<get-length>()
-    else -> -1
+    true -> -1
   }
 }
 
 fun test2(d: dynamic): Int {
   return when {
     d is Array<*> -> d /*~> Array<out Any?> */.<get-size>()
-    else -> -1
+    true -> -1
   }
 }
 
diff --git a/compiler/testData/ir/irText/properties/backingField/explicitBackingFieldType.kt.txt b/compiler/testData/ir/irText/properties/backingField/explicitBackingFieldType.kt.txt
index dbbe7c7..7031c49 100644
--- a/compiler/testData/ir/irText/properties/backingField/explicitBackingFieldType.kt.txt
+++ b/compiler/testData/ir/irText/properties/backingField/explicitBackingFieldType.kt.txt
@@ -12,7 +12,7 @@
     get(): Int {
       return when {
         greater(arg0 = <this>.#invertedTypes.toInt(), arg1 = 10) -> <this>.#invertedTypes.toInt()
-        else -> 10
+        true -> 10
       }
     }
     set
diff --git a/compiler/testData/ir/irText/regressions/kt24114.kt.txt b/compiler/testData/ir/irText/regressions/kt24114.kt.txt
index 6ad5782..37da39b 100644
--- a/compiler/testData/ir/irText/regressions/kt24114.kt.txt
+++ b/compiler/testData/ir/irText/regressions/kt24114.kt.txt
@@ -15,7 +15,7 @@
             }
           }
         }
-        else -> return 3
+        true -> return 3
       }
     }
   }
@@ -32,7 +32,7 @@
             EQEQ(arg0 = tmp_3, arg1 = 2) -> return 2
           }
         }
-        else -> return 3
+        true -> return 3
       }
     }
   }
diff --git a/compiler/testData/ir/irText/regressions/noSyntheticTypeParameterLeftAfterPCLA.kt.txt b/compiler/testData/ir/irText/regressions/noSyntheticTypeParameterLeftAfterPCLA.kt.txt
index d83a038..c726d15 100644
--- a/compiler/testData/ir/irText/regressions/noSyntheticTypeParameterLeftAfterPCLA.kt.txt
+++ b/compiler/testData/ir/irText/regressions/noSyntheticTypeParameterLeftAfterPCLA.kt.txt
@@ -23,7 +23,7 @@
             b -> { // BLOCK
               someUnit()
             }
-            else -> { // BLOCK
+            true -> { // BLOCK
               $this$generate.yield(t = Unit)
             }
           }
diff --git a/compiler/testData/ir/irText/stubs/builtinMap.fir.kt.txt b/compiler/testData/ir/irText/stubs/builtinMap.fir.kt.txt
index 8c96621..ac8e4ec 100644
--- a/compiler/testData/ir/irText/stubs/builtinMap.fir.kt.txt
+++ b/compiler/testData/ir/irText/stubs/builtinMap.fir.kt.txt
@@ -1,7 +1,7 @@
 fun <K1 : Any?, V1 : Any?> Map<out K1, V1>.plus(pair: Pair<K1, V1>): Map<K1, V1> {
   return when {
     <this>.isEmpty() -> mapOf<K1, V1>(pair = pair)
-    else -> LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>(p0 = <this>).apply<LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>>(block = local fun LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>.<anonymous>() {
+    true -> LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>(p0 = <this>).apply<LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>>(block = local fun LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>.<anonymous>() {
       $this$apply.put(p0 = pair.<get-first>(), p1 = pair.<get-second>()) /*~> Unit */
     }
 )
diff --git a/compiler/testData/ir/irText/stubs/builtinMap.kt.txt b/compiler/testData/ir/irText/stubs/builtinMap.kt.txt
index dcdab99..3b297e2 100644
--- a/compiler/testData/ir/irText/stubs/builtinMap.kt.txt
+++ b/compiler/testData/ir/irText/stubs/builtinMap.kt.txt
@@ -1,7 +1,7 @@
 fun <K1 : Any?, V1 : Any?> Map<out K1, V1>.plus(pair: Pair<K1, V1>): Map<K1, V1> {
   return when {
     <this>.isEmpty() -> mapOf<K1, V1>(pair = pair)
-    else -> LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>(p0 = <this>).apply<LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>>(block = local fun LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>.<anonymous>() {
+    true -> LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>(p0 = <this>).apply<LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>>(block = local fun LinkedHashMap<@FlexibleNullability K1?, @FlexibleNullability V1?>.<anonymous>() {
       $this$apply.put(key = pair.<get-first>(), value = pair.<get-second>()) /*~> Unit */
     }
 )
diff --git a/compiler/testData/ir/irText/types/castsInsideCoroutineInference.fir.kt.txt b/compiler/testData/ir/irText/types/castsInsideCoroutineInference.fir.kt.txt
index 0c0ab39..cd75f27 100644
--- a/compiler/testData/ir/irText/types/castsInsideCoroutineInference.fir.kt.txt
+++ b/compiler/testData/ir/irText/types/castsInsideCoroutineInference.fir.kt.txt
@@ -60,7 +60,7 @@
         val tmp_0: @ParameterName(name = "value") Any? = value
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> Any()
-          else -> tmp_0
+          true -> tmp_0
         }
       })
     }
@@ -77,7 +77,7 @@
         val tmp_1: @ParameterName(name = "value") Any? = value
         when {
           EQEQ(arg0 = tmp_1, arg1 = null) -> Any()
-          else -> tmp_1
+          true -> tmp_1
         }
       })
     }
diff --git a/compiler/testData/ir/irText/types/castsInsideCoroutineInference.kt.txt b/compiler/testData/ir/irText/types/castsInsideCoroutineInference.kt.txt
index 87c5118..0fd3107 100644
--- a/compiler/testData/ir/irText/types/castsInsideCoroutineInference.kt.txt
+++ b/compiler/testData/ir/irText/types/castsInsideCoroutineInference.kt.txt
@@ -60,7 +60,7 @@
         val tmp_0: Any? = value
         when {
           EQEQ(arg0 = tmp_0, arg1 = null) -> Any()
-          else -> tmp_0
+          true -> tmp_0
         }
       })
     }
@@ -77,7 +77,7 @@
         val tmp_1: Any? = value
         when {
           EQEQ(arg0 = tmp_1, arg1 = null) -> Any()
-          else -> tmp_1
+          true -> tmp_1
         }
       })
     }
diff --git a/compiler/testData/ir/irText/types/definitelyNonNull.kt.txt b/compiler/testData/ir/irText/types/definitelyNonNull.kt.txt
index 5f0c427..1e1fa24 100644
--- a/compiler/testData/ir/irText/types/definitelyNonNull.kt.txt
+++ b/compiler/testData/ir/irText/types/definitelyNonNull.kt.txt
@@ -3,7 +3,7 @@
     val tmp_0: T = x
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> y
-      else -> tmp_0
+      true -> tmp_0
     }
   }
 }
diff --git a/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.fir.kt.txt b/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.fir.kt.txt
index f8c1625..561524f 100644
--- a/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.fir.kt.txt
+++ b/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.fir.kt.txt
@@ -8,7 +8,7 @@
       val tmp_0: @EnhancedNullability Boolean? = A().get<@FlexibleNullability Boolean?>(key = <get-key>())
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> false
-        else -> tmp_0
+        true -> tmp_0
       }
     }
   }
diff --git a/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.kt.txt b/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.kt.txt
index 7aa1ea3..36b2b06 100644
--- a/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.kt.txt
+++ b/compiler/testData/ir/irText/types/inferenceOfDefinitelyNotNullableBoolean.kt.txt
@@ -8,7 +8,7 @@
       val tmp_0: @EnhancedNullability Boolean? = A().get<@FlexibleNullability Boolean?>(key = <get-key>())
       when {
         EQEQ(arg0 = tmp_0, arg1 = null) -> false
-        else -> tmp_0
+        true -> tmp_0
       }
     }
   }
diff --git a/compiler/testData/ir/irText/types/intersectionType2.kt.txt b/compiler/testData/ir/irText/types/intersectionType2.kt.txt
index 38404b9..b388656 100644
--- a/compiler/testData/ir/irText/types/intersectionType2.kt.txt
+++ b/compiler/testData/ir/irText/types/intersectionType2.kt.txt
@@ -28,7 +28,7 @@
     val nn: C = C()
     val c: Any = when {
       true -> mm
-      else -> nn
+      true -> nn
     }
     return c
   }
diff --git a/compiler/testData/ir/irText/types/nullChecks/nullCheckInElvisRhs.kt.txt b/compiler/testData/ir/irText/types/nullChecks/nullCheckInElvisRhs.kt.txt
index 18a9211..7fe232c 100644
--- a/compiler/testData/ir/irText/types/nullChecks/nullCheckInElvisRhs.kt.txt
+++ b/compiler/testData/ir/irText/types/nullChecks/nullCheckInElvisRhs.kt.txt
@@ -11,7 +11,7 @@
     val tmp_0: String? = baz()
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> foo() /*!! String */
-      else -> tmp_0
+      true -> tmp_0
     }
   }
 }
diff --git a/compiler/testData/ir/irText/types/nullChecks/typeParameterWithMultipleNullableBounds.kt.txt b/compiler/testData/ir/irText/types/nullChecks/typeParameterWithMultipleNullableBounds.kt.txt
index 554f471..f6d9233 100644
--- a/compiler/testData/ir/irText/types/nullChecks/typeParameterWithMultipleNullableBounds.kt.txt
+++ b/compiler/testData/ir/irText/types/nullChecks/typeParameterWithMultipleNullableBounds.kt.txt
@@ -3,7 +3,7 @@
     val tmp_0: T = x
     when {
       EQEQ(arg0 = tmp_0, arg1 = null) -> null
-      else -> tmp_0.compareTo(other = x)
+      true -> tmp_0.compareTo(other = x)
     }
   }
 }
diff --git a/compiler/testData/ir/irText/types/receiverOfIntersectionType.fir.kt.txt b/compiler/testData/ir/irText/types/receiverOfIntersectionType.fir.kt.txt
index d666628..403f1ca 100644
--- a/compiler/testData/ir/irText/types/receiverOfIntersectionType.fir.kt.txt
+++ b/compiler/testData/ir/irText/types/receiverOfIntersectionType.fir.kt.txt
@@ -36,7 +36,7 @@
 fun testFlexible1() {
   val v: K? = when {
     true -> a()
-    else -> b()
+    true -> b()
   }
   v.ff()
 }
@@ -44,7 +44,7 @@
 fun testFlexible2(a: A, b: B) {
   val v: K? = when {
     true -> id<@FlexibleNullability A?>(x = a)
-    else -> id<@FlexibleNullability B?>(x = b)
+    true -> id<@FlexibleNullability B?>(x = b)
   }
   v.ff()
 }
@@ -52,7 +52,7 @@
 fun testIntersection(a: A, b: B) {
   val v: K = when {
     true -> a
-    else -> b
+    true -> b
   }
   v /*as I */.ff()
 }
diff --git a/compiler/testData/ir/irText/types/receiverOfIntersectionType.kt.txt b/compiler/testData/ir/irText/types/receiverOfIntersectionType.kt.txt
index f18f996..525c87e 100644
--- a/compiler/testData/ir/irText/types/receiverOfIntersectionType.kt.txt
+++ b/compiler/testData/ir/irText/types/receiverOfIntersectionType.kt.txt
@@ -36,7 +36,7 @@
 fun testFlexible1() {
   val v: @FlexibleNullability K? = when {
     true -> a()
-    else -> b()
+    true -> b()
   }
   v /*!! K */ /*as I */.ff()
 }
@@ -44,7 +44,7 @@
 fun testFlexible2(a: A, b: B) {
   val v: @FlexibleNullability K? = when {
     true -> id<@FlexibleNullability A?>(x = a)
-    else -> id<@FlexibleNullability B?>(x = b)
+    true -> id<@FlexibleNullability B?>(x = b)
   }
   v /*!! K */ /*as I */.ff()
 }
@@ -52,7 +52,7 @@
 fun testIntersection(a: A, b: B) {
   val v: K = when {
     true -> a
-    else -> b
+    true -> b
   }
   v /*as I */.ff()
 }
diff --git a/compiler/testData/ir/irText/types/smartCastOnFakeOverrideReceiver.kt.txt b/compiler/testData/ir/irText/types/smartCastOnFakeOverrideReceiver.kt.txt
index 595d55c..4a47302 100644
--- a/compiler/testData/ir/irText/types/smartCastOnFakeOverrideReceiver.kt.txt
+++ b/compiler/testData/ir/irText/types/smartCastOnFakeOverrideReceiver.kt.txt
@@ -16,14 +16,14 @@
   fun testA1(x: Any): Int? {
     return when {
       x is B -> x /*as B */.f()
-      else -> null
+      true -> null
     }
   }
 
   fun testA2(x: Any): Int? {
     return when {
       x is B -> x /*as B */.<get-aVal>()
-      else -> null
+      true -> null
     }
   }
 
@@ -39,14 +39,14 @@
   fun testB1(x: Any): Int? {
     return when {
       x is B -> x /*as B */.f()
-      else -> null
+      true -> null
     }
   }
 
   fun testB2(x: Any): Int? {
     return when {
       x is B -> x /*as B */.<get-aVal>()
-      else -> null
+      true -> null
     }
   }
 
diff --git a/compiler/testData/ir/irText/types/typeCheckOnDefinitelyNotNull.kt.txt b/compiler/testData/ir/irText/types/typeCheckOnDefinitelyNotNull.kt.txt
index 657a369..122c324 100644
--- a/compiler/testData/ir/irText/types/typeCheckOnDefinitelyNotNull.kt.txt
+++ b/compiler/testData/ir/irText/types/typeCheckOnDefinitelyNotNull.kt.txt
@@ -5,7 +5,7 @@
 inline fun <reified T : CharSequence?> implicitAsFoo(x: Any): Int {
   return when {
     x !is T -> 0
-    else -> x /*as (T & Any) */.<get-length>()
+    true -> x /*as (T & Any) */.<get-length>()
   }
 }
 
diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrPrettyKotlinDumpHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrPrettyKotlinDumpHandler.kt
index 8657fa0..273fd69 100644
--- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrPrettyKotlinDumpHandler.kt
+++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrPrettyKotlinDumpHandler.kt
@@ -58,6 +58,7 @@
                 printFakeOverridesStrategy = FakeOverridesStrategy.NONE,
                 normalizeNames = true, // KT-61983: K1 and K2 kotlin-like dumps are closer to each other when tempvar names are normalized
                 stableOrder = true,
+                printElseAsTrue = true,
             ),
         )
     }