// WITH_STDLIB // WORKS_WHEN_VALUE_CLASS // LANGUAGE: +ValueClasses, +GenericInlineClassParameter OPTIONAL_JVM_INLINE_ANNOTATION value class IC(val value: T) fun foo(a: Result, ic: IC): Pair = bar(a, ic) { a, ic -> a.getOrThrow() to ic.value } fun bar(t1: T1, t2: T2, f: (T1, T2) -> R): R { return f(t1, t2) } fun Pair.join(): String = "$first$second" fun box(): String = foo(Result.success("O"), IC("K")).join()