KtFile: 'expectedType.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(78,179): 'sealed interface SealedInterface {'
  null

KtDeclarationModifierList(78,84): 'sealed'
  null

KtClassBody(111,179): '{'
  null

KtClass(117,177): 'open class NestedInheritor(prop: String): SealedInterface {}'
  null

KtDeclarationModifierList(117,121): 'open'
  null

KtPrimaryConstructor(143,157): '(prop: String)'
  null

KtParameterList(143,157): '(prop: String)'
  null

KtParameter(144,156): 'prop: String'
  null

KtTypeReference(150,156): 'String'
  null

KtUserType(150,156): 'String'
  null

KtNameReferenceExpression(150,156): 'String'
  null

KtSuperTypeList(159,174): 'SealedInterface'
  null

KtSuperTypeEntry(159,174): 'SealedInterface'
  null

KtTypeReference(159,174): 'SealedInterface'
  null

KtUserType(159,174): 'SealedInterface'
  null

KtNameReferenceExpression(159,174): 'SealedInterface'
  null

KtClassBody(175,177): '{}'
  null

KtClass(181,218): 'enum class MyEnum {'
  null

KtDeclarationModifierList(181,185): 'enum'
  null

KtClassBody(199,218): '{'
  null

KtEnumEntry(205,216): 'EnumValue1;'
  null

KtClass(220,280): 'open class MyClass {'
  null

KtDeclarationModifierList(220,224): 'open'
  null

KtClassBody(239,280): '{'
  null

KtObjectDeclaration(245,278): 'object InheritorObject: MyClass()'
  null

KtSuperTypeList(269,278): 'MyClass()'
  null

KtSuperTypeCallEntry(269,278): 'MyClass()'
  KaCallResolutionSuccess:
    call = KaDelegatedConstructorCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      kind = SUPER_CALL
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = <constructor>(): MyClass
        valueParameters = []
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtConstructorCalleeExpression(269,276): 'MyClass'
  KaCallResolutionSuccess:
    call = KaDelegatedConstructorCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      kind = SUPER_CALL
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = <constructor>(): MyClass
        valueParameters = []
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtTypeReference(269,276): 'MyClass'
  null

KtUserType(269,276): 'MyClass'
  null

KtNameReferenceExpression(269,276): 'MyClass'
  KaCallResolutionSuccess:
    call = KaDelegatedConstructorCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      kind = SUPER_CALL
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = <constructor>(): MyClass
        valueParameters = []
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(276,278): '()'
  null

KtNamedFunction(282,305): 'fun <X> id(x: X): X = x'
  null

KtTypeParameterList(286,289): '<X>'
  null

KtTypeParameter(287,288): 'X'
  null

KtParameterList(292,298): '(x: X)'
  null

KtParameter(293,297): 'x: X'
  null

KtTypeReference(296,297): 'X'
  null

KtUserType(296,297): 'X'
  null

KtNameReferenceExpression(296,297): 'X'
  null

KtTypeReference(300,301): 'X'
  null

KtUserType(300,301): 'X'
  null

KtNameReferenceExpression(300,301): 'X'
  null

KtNameReferenceExpression(304,305): 'x'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = x
        receiverType = null
        returnType = X
        symbol = x: X
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}

KtNamedFunction(306,332): 'fun <T> receive(arg: T) {}'
  null

KtTypeParameterList(310,313): '<T>'
  null

KtTypeParameter(311,312): 'T'
  null

KtParameterList(321,329): '(arg: T)'
  null

KtParameter(322,328): 'arg: T'
  null

KtTypeReference(327,328): 'T'
  null

KtUserType(327,328): 'T'
  null

KtNameReferenceExpression(327,328): 'T'
  null

KtBlockExpression(330,332): '{}'
  null

KtNamedFunction(333,392): 'fun <T: MyClass>testTypeParam(instance: T): String = TODO()'
  null

KtTypeParameterList(337,349): '<T: MyClass>'
  null

KtTypeParameter(338,348): 'T: MyClass'
  null

KtTypeReference(341,348): 'MyClass'
  null

KtUserType(341,348): 'MyClass'
  null

KtNameReferenceExpression(341,348): 'MyClass'
  null

KtParameterList(362,375): '(instance: T)'
  null

KtParameter(363,374): 'instance: T'
  null

KtTypeReference(373,374): 'T'
  null

KtUserType(373,374): 'T'
  null

KtNameReferenceExpression(373,374): 'T'
  null

KtTypeReference(377,383): 'String'
  null

KtUserType(377,383): 'String'
  null

KtNameReferenceExpression(377,383): 'String'
  null

KtCallExpression(386,392): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(386,390): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(390,392): '()'
  null

KtClass(394,410): 'interface OtherI'
  null

KtNamedFunction(412,509): 'fun <T>testTypeParamWithMultipleBound(instance: T): String where T : MyClass, T : OtherI = TODO()'
  null

KtTypeParameterList(416,419): '<T>'
  null

KtTypeParameter(417,418): 'T'
  null

KtParameterList(449,462): '(instance: T)'
  null

KtParameter(450,461): 'instance: T'
  null

KtTypeReference(460,461): 'T'
  null

KtUserType(460,461): 'T'
  null

KtNameReferenceExpression(460,461): 'T'
  null

KtTypeReference(464,470): 'String'
  null

KtUserType(464,470): 'String'
  null

KtNameReferenceExpression(464,470): 'String'
  null

KtTypeConstraintList(477,500): 'T : MyClass, T : OtherI'
  null

KtTypeConstraint(477,488): 'T : MyClass'
  null

KtNameReferenceExpression(477,478): 'T'
  null

KtTypeReference(481,488): 'MyClass'
  null

KtUserType(481,488): 'MyClass'
  null

KtNameReferenceExpression(481,488): 'MyClass'
  null

KtTypeConstraint(490,500): 'T : OtherI'
  null

KtNameReferenceExpression(490,491): 'T'
  null

KtTypeReference(494,500): 'OtherI'
  null

KtUserType(494,500): 'OtherI'
  null

KtNameReferenceExpression(494,500): 'OtherI'
  null

KtCallExpression(503,509): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(503,507): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(507,509): '()'
  null

KtNamedFunction(511,564): 'fun testNullable(instance: MyClass?): String = TODO()'
  null

KtParameterList(527,547): '(instance: MyClass?)'
  null

KtParameter(528,546): 'instance: MyClass?'
  null

KtTypeReference(538,546): 'MyClass?'
  null

KtNullableType(538,546): 'MyClass?'
  null

KtUserType(538,545): 'MyClass'
  null

KtNameReferenceExpression(538,545): 'MyClass'
  null

KtTypeReference(549,555): 'String'
  null

KtUserType(549,555): 'String'
  null

KtNameReferenceExpression(549,555): 'String'
  null

KtCallExpression(558,564): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(558,562): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(562,564): '()'
  null

KtNamedFunction(566,652): 'fun <T: MyClass?>testDefinitelyNotNullIntersection(instance: T & Any): String = TODO()'
  null

KtTypeParameterList(570,583): '<T: MyClass?>'
  null

KtTypeParameter(571,582): 'T: MyClass?'
  null

KtTypeReference(574,582): 'MyClass?'
  null

KtNullableType(574,582): 'MyClass?'
  null

KtUserType(574,581): 'MyClass'
  null

KtNameReferenceExpression(574,581): 'MyClass'
  null

KtParameterList(616,635): '(instance: T & Any)'
  null

KtParameter(617,634): 'instance: T & Any'
  null

KtTypeReference(627,634): 'T & Any'
  null

KtIntersectionType(627,634): 'T & Any'
  null

KtTypeReference(627,628): 'T'
  null

KtUserType(627,628): 'T'
  null

KtNameReferenceExpression(627,628): 'T'
  null

KtTypeReference(631,634): 'Any'
  null

KtUserType(631,634): 'Any'
  null

KtNameReferenceExpression(631,634): 'Any'
  null

KtTypeReference(637,643): 'String'
  null

KtUserType(637,643): 'String'
  null

KtNameReferenceExpression(637,643): 'String'
  null

KtCallExpression(646,652): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(646,650): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(650,652): '()'
  null

KtNamedFunction(654,774): 'fun <T>testFakeIntersection(instance: T): String where T : SealedInterface, T : SealedInterface.NestedInheritor = TODO()'
  null

KtTypeParameterList(658,661): '<T>'
  null

KtTypeParameter(659,660): 'T'
  null

KtParameterList(681,694): '(instance: T)'
  null

KtParameter(682,693): 'instance: T'
  null

KtTypeReference(692,693): 'T'
  null

KtUserType(692,693): 'T'
  null

KtNameReferenceExpression(692,693): 'T'
  null

KtTypeReference(696,702): 'String'
  null

KtUserType(696,702): 'String'
  null

KtNameReferenceExpression(696,702): 'String'
  null

KtTypeConstraintList(709,765): 'T : SealedInterface, T : SealedInterface.NestedInheritor'
  null

KtTypeConstraint(709,728): 'T : SealedInterface'
  null

KtNameReferenceExpression(709,710): 'T'
  null

KtTypeReference(713,728): 'SealedInterface'
  null

KtUserType(713,728): 'SealedInterface'
  null

KtNameReferenceExpression(713,728): 'SealedInterface'
  null

KtTypeConstraint(730,765): 'T : SealedInterface.NestedInheritor'
  null

KtNameReferenceExpression(730,731): 'T'
  null

KtTypeReference(734,765): 'SealedInterface.NestedInheritor'
  null

KtUserType(734,765): 'SealedInterface.NestedInheritor'
  null

KtUserType(734,749): 'SealedInterface'
  null

KtNameReferenceExpression(734,749): 'SealedInterface'
  null

KtNameReferenceExpression(750,765): 'NestedInheritor'
  null

KtCallExpression(768,774): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(768,772): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(772,774): '()'
  null

KtNamedFunction(776,903): 'fun <T>testReverseFakeIntersection(instance: T): String where T : SealedInterface.NestedInheritor, T : SealedInterface = TODO()'
  null

KtTypeParameterList(780,783): '<T>'
  null

KtTypeParameter(781,782): 'T'
  null

KtParameterList(810,823): '(instance: T)'
  null

KtParameter(811,822): 'instance: T'
  null

KtTypeReference(821,822): 'T'
  null

KtUserType(821,822): 'T'
  null

KtNameReferenceExpression(821,822): 'T'
  null

KtTypeReference(825,831): 'String'
  null

KtUserType(825,831): 'String'
  null

KtNameReferenceExpression(825,831): 'String'
  null

KtTypeConstraintList(838,894): 'T : SealedInterface.NestedInheritor, T : SealedInterface'
  null

KtTypeConstraint(838,873): 'T : SealedInterface.NestedInheritor'
  null

KtNameReferenceExpression(838,839): 'T'
  null

KtTypeReference(842,873): 'SealedInterface.NestedInheritor'
  null

KtUserType(842,873): 'SealedInterface.NestedInheritor'
  null

KtUserType(842,857): 'SealedInterface'
  null

KtNameReferenceExpression(842,857): 'SealedInterface'
  null

KtNameReferenceExpression(858,873): 'NestedInheritor'
  null

KtTypeConstraint(875,894): 'T : SealedInterface'
  null

KtNameReferenceExpression(875,876): 'T'
  null

KtTypeReference(879,894): 'SealedInterface'
  null

KtUserType(879,894): 'SealedInterface'
  null

KtNameReferenceExpression(879,894): 'SealedInterface'
  null

KtCallExpression(897,903): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(897,901): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(901,903): '()'
  null

KtNamedFunction(905,1004): 'fun <T>testRegularIntersection(instance: T): String where T : SealedInterface, T : MyClass = TODO()'
  null

KtTypeParameterList(909,912): '<T>'
  null

KtTypeParameter(910,911): 'T'
  null

KtParameterList(935,948): '(instance: T)'
  null

KtParameter(936,947): 'instance: T'
  null

KtTypeReference(946,947): 'T'
  null

KtUserType(946,947): 'T'
  null

KtNameReferenceExpression(946,947): 'T'
  null

KtTypeReference(950,956): 'String'
  null

KtUserType(950,956): 'String'
  null

KtNameReferenceExpression(950,956): 'String'
  null

KtTypeConstraintList(963,995): 'T : SealedInterface, T : MyClass'
  null

KtTypeConstraint(963,982): 'T : SealedInterface'
  null

KtNameReferenceExpression(963,964): 'T'
  null

KtTypeReference(967,982): 'SealedInterface'
  null

KtUserType(967,982): 'SealedInterface'
  null

KtNameReferenceExpression(967,982): 'SealedInterface'
  null

KtTypeConstraint(984,995): 'T : MyClass'
  null

KtNameReferenceExpression(984,985): 'T'
  null

KtTypeReference(988,995): 'MyClass'
  null

KtUserType(988,995): 'MyClass'
  null

KtNameReferenceExpression(988,995): 'MyClass'
  null

KtCallExpression(998,1004): 'TODO()'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtNameReferenceExpression(998,1002): 'TODO'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(): kotlin.Nothing
        valueParameters = []
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}

KtValueArgumentList(1002,1004): '()'
  null

KtNamedFunction(1006,1547): 'fun testExpectedType() {'
  null

KtParameterList(1026,1028): '()'
  null

KtBlockExpression(1029,1547): '{'
  null

KtProperty(1035,1066): 'val r1: MyEnum = id(EnumValue1)'
  null

KtTypeReference(1043,1049): 'MyEnum'
  null

KtUserType(1043,1049): 'MyEnum'
  null

KtNameReferenceExpression(1043,1049): 'MyEnum'
  null

KtCallExpression(1052,1066): 'id(EnumValue1)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyEnum
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyEnum
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyEnum)
      }
      valueArgumentMapping = {
        EnumValue1 -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1052,1054): 'id'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyEnum
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyEnum
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyEnum)
      }
      valueArgumentMapping = {
        EnumValue1 -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(1054,1066): '(EnumValue1)'
  null

KtValueArgument(1055,1065): 'EnumValue1'
  null

KtNameReferenceExpression(1055,1065): 'EnumValue1'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = EnumValue1
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = EnumValue1
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.EnumValue1
        contextParameters = []
        callableId = /MyEnum.EnumValue1
      typeArgumentsMapping = {}

KtProperty(1071,1108): 'val r2: MyClass = id(InheritorObject)'
  null

KtTypeReference(1079,1086): 'MyClass'
  null

KtUserType(1079,1086): 'MyClass'
  null

KtNameReferenceExpression(1079,1086): 'MyClass'
  null

KtCallExpression(1089,1108): 'id(InheritorObject)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyClass
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyClass
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1089,1091): 'id'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyClass
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyClass
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(1091,1108): '(InheritorObject)'
  null

KtValueArgument(1092,1107): 'InheritorObject'
  null

KtNameReferenceExpression(1092,1107): 'InheritorObject'
  null

KtCallExpression(1114,1145): 'receive<MyEnum>(id(EnumValue1))'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /receive(arg: T): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = arg
            receiverType = null
            returnType = MyEnum
            symbol = arg: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /receive
      typeArgumentsMapping = {
        T -> (MyEnum)
      }
      valueArgumentMapping = {
        id(EnumValue1) -> (KaVariableSignature:
          name = arg
          receiverType = null
          returnType = MyEnum
          symbol = arg: T
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1114,1121): 'receive'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /receive(arg: T): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = arg
            receiverType = null
            returnType = MyEnum
            symbol = arg: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /receive
      typeArgumentsMapping = {
        T -> (MyEnum)
      }
      valueArgumentMapping = {
        id(EnumValue1) -> (KaVariableSignature:
          name = arg
          receiverType = null
          returnType = MyEnum
          symbol = arg: T
          contextParameters = []
          callableId = null)
      }

KtTypeArgumentList(1121,1129): '<MyEnum>'
  null

KtTypeProjection(1122,1128): 'MyEnum'
  null

KtTypeReference(1122,1128): 'MyEnum'
  null

KtUserType(1122,1128): 'MyEnum'
  null

KtNameReferenceExpression(1122,1128): 'MyEnum'
  null

KtValueArgumentList(1129,1145): '(id(EnumValue1))'
  null

KtValueArgument(1130,1144): 'id(EnumValue1)'
  null

KtCallExpression(1130,1144): 'id(EnumValue1)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyEnum
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyEnum
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyEnum)
      }
      valueArgumentMapping = {
        EnumValue1 -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1130,1132): 'id'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyEnum
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyEnum
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyEnum)
      }
      valueArgumentMapping = {
        EnumValue1 -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(1132,1144): '(EnumValue1)'
  null

KtValueArgument(1133,1143): 'EnumValue1'
  null

KtNameReferenceExpression(1133,1143): 'EnumValue1'
  KaCallResolutionSuccess:
    call = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = EnumValue1
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = EnumValue1
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.EnumValue1
        contextParameters = []
        callableId = /MyEnum.EnumValue1
      typeArgumentsMapping = {}

KtCallExpression(1150,1187): 'receive<MyClass>(id(InheritorObject))'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /receive(arg: T): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = arg
            receiverType = null
            returnType = MyClass
            symbol = arg: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /receive
      typeArgumentsMapping = {
        T -> (MyClass)
      }
      valueArgumentMapping = {
        id(InheritorObject) -> (KaVariableSignature:
          name = arg
          receiverType = null
          returnType = MyClass
          symbol = arg: T
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1150,1157): 'receive'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /receive(arg: T): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = arg
            receiverType = null
            returnType = MyClass
            symbol = arg: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /receive
      typeArgumentsMapping = {
        T -> (MyClass)
      }
      valueArgumentMapping = {
        id(InheritorObject) -> (KaVariableSignature:
          name = arg
          receiverType = null
          returnType = MyClass
          symbol = arg: T
          contextParameters = []
          callableId = null)
      }

KtTypeArgumentList(1157,1166): '<MyClass>'
  null

KtTypeProjection(1158,1165): 'MyClass'
  null

KtTypeReference(1158,1165): 'MyClass'
  null

KtUserType(1158,1165): 'MyClass'
  null

KtNameReferenceExpression(1158,1165): 'MyClass'
  null

KtValueArgumentList(1166,1187): '(id(InheritorObject))'
  null

KtValueArgument(1167,1186): 'id(InheritorObject)'
  null

KtCallExpression(1167,1186): 'id(InheritorObject)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyClass
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyClass
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1167,1169): 'id'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyClass
        symbol = /id(x: X): X
        valueParameters = [
          KaVariableSignature:
            name = x
            receiverType = null
            returnType = MyClass
            symbol = x: X
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /id
      typeArgumentsMapping = {
        X -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyClass
          symbol = x: X
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(1169,1186): '(InheritorObject)'
  null

KtValueArgument(1170,1185): 'InheritorObject'
  null

KtNameReferenceExpression(1170,1185): 'InheritorObject'
  null

KtCallExpression(1193,1222): 'testNullable(InheritorObject)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.String
        symbol = /testNullable(instance: MyClass?): kotlin.String
        valueParameters = [
          KaVariableSignature:
            name = instance
            receiverType = null
            returnType = MyClass?
            symbol = instance: MyClass?
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /testNullable
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = instance
          receiverType = null
          returnType = MyClass?
          symbol = instance: MyClass?
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1193,1205): 'testNullable'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.String
        symbol = /testNullable(instance: MyClass?): kotlin.String
        valueParameters = [
          KaVariableSignature:
            name = instance
            receiverType = null
            returnType = MyClass?
            symbol = instance: MyClass?
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /testNullable
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = instance
          receiverType = null
          returnType = MyClass?
          symbol = instance: MyClass?
          contextParameters = []
          callableId = null)
      }

KtValueArgumentList(1205,1222): '(InheritorObject)'
  null

KtValueArgument(1206,1221): 'InheritorObject'
  null

KtNameReferenceExpression(1206,1221): 'InheritorObject'
  null

KtCallExpression(1227,1266): 'testTypeParam<MyClass>(InheritorObject)'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.String
        symbol = /testTypeParam(instance: T): kotlin.String
        valueParameters = [
          KaVariableSignature:
            name = instance
            receiverType = null
            returnType = MyClass
            symbol = instance: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /testTypeParam
      typeArgumentsMapping = {
        T -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = instance
          receiverType = null
          returnType = MyClass
          symbol = instance: T
          contextParameters = []
          callableId = null)
      }

KtNameReferenceExpression(1227,1240): 'testTypeParam'
  KaCallResolutionSuccess:
    call = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.String
        symbol = /testTypeParam(instance: T): kotlin.String
        valueParameters = [
          KaVariableSignature:
            name = instance
            receiverType = null
            returnType = MyClass
            symbol = instance: T
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /testTypeParam
      typeArgumentsMapping = {
        T -> (MyClass)
      }
      valueArgumentMapping = {
        InheritorObject -> (KaVariableSignature:
          name = instance
          receiverType = null
          returnType = MyClass
          symbol = instance: T
          contextParameters = []
          callableId = null)
      }

KtTypeArgumentList(1240,1249): '<MyClass>'
  null

KtTypeProjection(1241,1248): 'MyClass'
  null

KtTypeReference(1241,1248): 'MyClass'
  null

KtUserType(1241,1248): 'MyClass'
  null

KtNameReferenceExpression(1241,1248): 'MyClass'
  null

KtValueArgumentList(1249,1266): '(InheritorObject)'
  null

KtValueArgument(1250,1265): 'InheritorObject'
  null

KtNameReferenceExpression(1250,1265): 'InheritorObject'
  null

KtCallExpression(1272,1302): 'testTypeParam(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testTypeParam(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testTypeParam
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testTypeParam>

KtNameReferenceExpression(1272,1285): 'testTypeParam'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testTypeParam(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testTypeParam
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testTypeParam>

KtValueArgumentList(1285,1302): '(InheritorObject)'
  null

KtValueArgument(1286,1301): 'InheritorObject'
  null

KtNameReferenceExpression(1286,1301): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>

KtCallExpression(1307,1354): 'testTypeParamWithMultipleBound(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testTypeParamWithMultipleBound(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testTypeParamWithMultipleBound
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testTypeParamWithMultipleBound>

KtNameReferenceExpression(1307,1337): 'testTypeParamWithMultipleBound'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testTypeParamWithMultipleBound(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testTypeParamWithMultipleBound
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testTypeParamWithMultipleBound>

KtValueArgumentList(1337,1354): '(InheritorObject)'
  null

KtValueArgument(1338,1353): 'InheritorObject'
  null

KtNameReferenceExpression(1338,1353): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>

KtCallExpression(1359,1409): 'testDefinitelyNotNullIntersection(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testDefinitelyNotNullIntersection(instance: T & Any): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T & Any
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testDefinitelyNotNullIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T & Any
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testDefinitelyNotNullIntersection>

KtNameReferenceExpression(1359,1392): 'testDefinitelyNotNullIntersection'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testDefinitelyNotNullIntersection(instance: T & Any): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T & Any
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testDefinitelyNotNullIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T & Any
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testDefinitelyNotNullIntersection>

KtValueArgumentList(1392,1409): '(InheritorObject)'
  null

KtValueArgument(1393,1408): 'InheritorObject'
  null

KtNameReferenceExpression(1393,1408): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>

KtCallExpression(1414,1451): 'testFakeIntersection(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testFakeIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testFakeIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testFakeIntersection>

KtNameReferenceExpression(1414,1434): 'testFakeIntersection'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testFakeIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testFakeIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testFakeIntersection>

KtValueArgumentList(1434,1451): '(InheritorObject)'
  null

KtValueArgument(1435,1450): 'InheritorObject'
  null

KtNameReferenceExpression(1435,1450): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>

KtCallExpression(1456,1500): 'testReverseFakeIntersection(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testReverseFakeIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testReverseFakeIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testReverseFakeIntersection>

KtNameReferenceExpression(1456,1483): 'testReverseFakeIntersection'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testReverseFakeIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testReverseFakeIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testReverseFakeIntersection>

KtValueArgumentList(1483,1500): '(InheritorObject)'
  null

KtValueArgument(1484,1499): 'InheritorObject'
  null

KtNameReferenceExpression(1484,1499): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>

KtCallExpression(1505,1545): 'testRegularIntersection(InheritorObject)'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testRegularIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testRegularIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testRegularIntersection>

KtNameReferenceExpression(1505,1528): 'testRegularIntersection'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.String
          symbol = /testRegularIntersection(instance: T): kotlin.String
          valueParameters = [
            KaVariableSignature:
              name = instance
              receiverType = null
              returnType = ERROR CLASS: Cannot infer argument for type parameter T
              symbol = instance: T
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /testRegularIntersection
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          InheritorObject -> (KaVariableSignature:
            name = instance
            receiverType = null
            returnType = ERROR CLASS: Cannot infer argument for type parameter T
            symbol = instance: T
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<OTHER_ERROR: Inapplicable(INAPPLICABLE): /testRegularIntersection>

KtValueArgumentList(1528,1545): '(InheritorObject)'
  null

KtValueArgument(1529,1544): 'InheritorObject'
  null

KtNameReferenceExpression(1529,1544): 'InheritorObject'
  KaCallResolutionError:
    candidateCalls = []
    diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference 'InheritorObject'.>
