FIR DFA: move eq/notEq null-to-type translation to LogicSystem

This makes the `returns() implies` checker slightly cleaner, and also
fixes the case that I've missed where in RHS of `x ?:` type of `x` was
not set to `Nothing?`.
This commit is contained in:
pyos
2022-11-12 16:19:22 +01:00
committed by teamcity
parent 564eca58dd
commit 67a6785f63
10 changed files with 87 additions and 90 deletions
@@ -1,4 +1,6 @@
// !LANGUAGE: +InlineClasses
// IGNORE_BACKEND_K2: JVM_IR
// FIR_STATUS: `x ?: x!!` assumed to throw if x is null, so only 2 unboxings
// FILE: utils.kt
@@ -16,4 +18,4 @@ fun test(x: UInt?, y: UInt) {
// 3 INVOKEVIRTUAL UInt.unbox
// 0 valueOf
// 0 intValue
// 0 intValue