/edge-cases.kt:142:9: error: type mismatch: inferred type is Unit but String! was expected
        run {
        ^^^^^
/edge-cases.kt:148:9: error: type mismatch: inferred type is Unit but String! was expected
        run {
        ^^^^^
/edge-cases.kt:149:20: error: type mismatch: inferred type is String? but Unit was expected
        return@run returnNullableString()
                   ^^^^^^^^^^^^^^^^^^^^^^
/edge-cases.kt:154:9: error: type mismatch: inferred type is Unit but String! was expected
        run run@ {
        ^^^^^^^^^^
/edge-cases.kt:155:20: error: type mismatch: inferred type is String? but Unit was expected
        return@run returnNullableString()
                   ^^^^^^^^^^^^^^^^^^^^^^
/edge-cases.kt:160:9: error: type mismatch: inferred type is Unit but String! was expected
        run {
        ^^^^^
/test.kt:68:9: error: type mismatch: inferred type is String? but String was expected
        returnNullableString()
        ^^^^^^^^^^^^^^^^^^^^^^
/test.kt:85:30: error: type mismatch: inferred type is String? but String was expected
            if (true) return returnNullableString()
                             ^^^^^^^^^^^^^^^^^^^^^^
/test.kt:91:9: error: type mismatch: inferred type is () -> String? but () -> String was expected
        fun(): String? {
        ^^^^^^^^^^^^^^^^
/test.kt:103:29: error: return type of 'get' is not a subtype of the return type of the overridden member 'public abstract fun get(): String defined in java.util.function.Supplier'
        override fun get(): String? = returnNullableString()
                            ^^^^^^^
/test.kt:107:22: error: return type of 'get' is not a subtype of the return type of the overridden member 'public abstract fun get(): String defined in java.util.function.Supplier'
        override fun get() = returnNullableString()
                     ^^^

