// FILE: util.kt const val FLAG = true const val OTHER_FLAG = false fun doStuff1() {} fun doStuff2() {} fun doStuff3() {} inline fun doStuff1IfTrue(flag: Boolean) { if (flag) doStuff1() } inline fun doStuff2IfFalse(flag: Boolean) { if (!flag) doStuff2() } inline fun doStuff3IfComplex(flag: Boolean) { if (flag && !OTHER_FLAG) doStuff3() } // FILE: test.kt fun test() { doStuff1IfTrue(FLAG) doStuff2IfFalse(FLAG) doStuff3IfComplex(FLAG) } // @TestKt.class: // 0 FLAG // 1 INVOKESTATIC UtilKt.doStuff1 // 0 INVOKESTATIC UtilKt.doStuff2 // 1 INVOKESTATIC UtilKt.doStuff3 // 0 ILOAD 0 // 0 IFEQ // 0 IFNE