// !DIAGNOSTICS: -UNUSED_PARAMETER
class Pair(val a: A, val b: B)
infix fun A.to(that: B): Pair = Pair(this, that)
// OK
infix fun String.ok1(o: String) {}
class OkTest {
infix fun ok2(o: String) {}
infix fun String.ok3(o: String) {}
}
// Errors
infix fun String.e1(o: String, o2: String? = null) = o
infix fun String.e2(o: String = "", o2: String? = null) = o
infix fun e3() {}
infix fun e4(s: String) {}
infix fun String.e5() {}
infix fun String.e6(a: Int, b: Int) {}
infix fun e7(a: Int, b: Int) {}
class Example {
infix fun e8(s: String, a: Int = 0) {}
infix fun e9(s: String, a: Int) {}
infix fun e10() {}
}