// IGNORE_BACKEND: JS, JS_IR, JS_IR_ES6, WASM var result = "" fun sideEffecting(): Int { result += "OK" return 123 } class C(val x: Int) val a: C? = C(123) val b: C? = null fun box(): String { if (a?.x != sideEffecting()) return "fail cmp 1" // RHS not evaluated because `b` is null, might be a bug: if (b?.x == sideEffecting()) return "fail cmp 2" return result }