blob: 52cd6aad46360246c4f2002897ce2a454ae21fcc [file]
// RUN_PIPELINE_TILL: FRONTEND
// CHECK_TYPE
interface A
interface B : A
operator fun B.compareTo(b: B) = if (this == b) 0 else 1
fun foo(a: A): Boolean {
val result = (a as B) < <!DEBUG_INFO_SMARTCAST!>a<!>
checkSubtype<B>(<!DEBUG_INFO_SMARTCAST!>a<!>)
return result
}
fun bar(a: A, b: B): Boolean {
val result = b < (a as B)
checkSubtype<B>(<!DEBUG_INFO_SMARTCAST!>a<!>)
return result
}
/* GENERATED_FIR_TAGS: asExpression, classDeclaration, comparisonExpression, equalityExpression,
funWithExtensionReceiver, functionDeclaration, functionalType, ifExpression, infix, integerLiteral, interfaceDeclaration,
localProperty, nullableType, operator, propertyDeclaration, smartcast, thisExpression, typeParameter, typeWithExtension */