KtFile: 'simpleGeneric.kt'
  NO_CANDIDATES

KtPackageDirective(0,0): ''
  NO_CANDIDATES

KtImportList(0,0): ''
  NO_CANDIDATES

KtClass(78,108): 'enum class MyEnum {'
  NO_CANDIDATES

KtDeclarationModifierList(78,82): 'enum'
  NO_CANDIDATES

KtClassBody(96,108): '{'
  NO_CANDIDATES

KtEnumEntry(102,104): 'X,'
  NO_CANDIDATES

KtEnumEntry(105,106): 'Y'
  NO_CANDIDATES

KtNamedFunction(110,131): 'fun foo(a: MyEnum) {}'
  NO_CANDIDATES

KtParameterList(117,128): '(a: MyEnum)'
  NO_CANDIDATES

KtParameter(118,127): 'a: MyEnum'
  NO_CANDIDATES

KtTypeReference(121,127): 'MyEnum'
  NO_CANDIDATES

KtUserType(121,127): 'MyEnum'
  NO_CANDIDATES

KtNameReferenceExpression(121,127): 'MyEnum'
  NO_CANDIDATES

KtBlockExpression(129,131): '{}'
  NO_CANDIDATES

KtNamedFunction(133,161): 'fun <X> id(x: X): X = TODO()'
  NO_CANDIDATES

KtTypeParameterList(137,140): '<X>'
  NO_CANDIDATES

KtTypeParameter(138,139): 'X'
  NO_CANDIDATES

KtParameterList(143,149): '(x: X)'
  NO_CANDIDATES

KtParameter(144,148): 'x: X'
  NO_CANDIDATES

KtTypeReference(147,148): 'X'
  NO_CANDIDATES

KtUserType(147,148): 'X'
  NO_CANDIDATES

KtNameReferenceExpression(147,148): 'X'
  NO_CANDIDATES

KtTypeReference(151,152): 'X'
  NO_CANDIDATES

KtUserType(151,152): 'X'
  NO_CANDIDATES

KtNameReferenceExpression(151,152): 'X'
  NO_CANDIDATES

KtCallExpression(155,161): 'TODO()'
  KaApplicableCallCandidate:
    candidate = 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 = {}
    isInBestCandidates = true

  KaInapplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(reason: kotlin.String): kotlin.Nothing
        valueParameters = [
          KaVariableSignature:
            name = reason
            receiverType = null
            returnType = kotlin.String
            symbol = reason: kotlin.String
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}
    diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'reason'.>
    isInBestCandidates = false

KtNameReferenceExpression(155,159): 'TODO'
  KaApplicableCallCandidate:
    candidate = 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 = {}
    isInBestCandidates = true

  KaInapplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Nothing
        symbol = kotlin/TODO(reason: kotlin.String): kotlin.Nothing
        valueParameters = [
          KaVariableSignature:
            name = reason
            receiverType = null
            returnType = kotlin.String
            symbol = reason: kotlin.String
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = kotlin/TODO
      typeArgumentsMapping = {}
      valueArgumentMapping = {}
    diagnostic = ERROR<NO_VALUE_FOR_PARAMETER: No value passed for parameter 'reason'.>
    isInBestCandidates = false

KtValueArgumentList(159,161): '()'
  NO_CANDIDATES

KtNamedFunction(163,254): 'fun main() {'
  NO_CANDIDATES

KtParameterList(171,173): '()'
  NO_CANDIDATES

KtBlockExpression(174,254): '{'
  NO_CANDIDATES

KtProperty(181,197): 'val L = MyEnum.X'
  NO_CANDIDATES

KtDotQualifiedExpression(189,197): 'MyEnum.X'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = MyEnum
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = X
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.X
        contextParameters = []
        callableId = /MyEnum.X
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtNameReferenceExpression(189,195): 'MyEnum'
  KaInapplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = MyEnum
        symbol = <constructor>(): MyEnum
        valueParameters = []
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
      valueArgumentMapping = {}
    diagnostic = ERROR<OTHER_ERROR: Inapplicable candidate>
    isInBestCandidates = false

KtNameReferenceExpression(196,197): 'X'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = MyEnum
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = X
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.X
        contextParameters = []
        callableId = /MyEnum.X
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtCallExpression(203,213): 'foo(id(X))'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(X) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(203,206): 'foo'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(X) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(206,213): '(id(X))'
  NO_CANDIDATES

KtValueArgument(207,212): 'id(X)'
  NO_CANDIDATES

KtCallExpression(207,212): 'id(X)'
  KaApplicableCallCandidate:
    candidate = 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 = {
        X -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(207,209): 'id'
  KaApplicableCallCandidate:
    candidate = 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 = {
        X -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(209,212): '(X)'
  NO_CANDIDATES

KtValueArgument(210,211): 'X'
  NO_CANDIDATES

KtNameReferenceExpression(210,211): 'X'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = KaExplicitReceiverValue:
        expression = X
        isSafeNavigation = false
        type = kotlin.Unit
      extensionReceiver = null
      isContextSensitive = true
      kind = Read
      signature = KaVariableSignature:
        name = X
        receiverType = null
        returnType = MyEnum
        symbol = /MyEnum.X
        contextParameters = []
        callableId = /MyEnum.X
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtCallExpression(218,228): 'foo(id(L))'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(L) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(218,221): 'foo'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(L) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(221,228): '(id(L))'
  NO_CANDIDATES

KtValueArgument(222,227): 'id(L)'
  NO_CANDIDATES

KtCallExpression(222,227): 'id(L)'
  KaApplicableCallCandidate:
    candidate = 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 = {
        L -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(222,224): 'id'
  KaApplicableCallCandidate:
    candidate = 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 = {
        L -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(224,227): '(L)'
  NO_CANDIDATES

KtValueArgument(225,226): 'L'
  NO_CANDIDATES

KtNameReferenceExpression(225,226): 'L'
  KaApplicableCallCandidate:
    candidate = KaSimpleVariableAccessCall:
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      isContextSensitive = false
      kind = Read
      signature = KaVariableSignature:
        name = L
        receiverType = null
        returnType = MyEnum
        symbol = val L: MyEnum
        contextParameters = []
        callableId = null
      typeArgumentsMapping = {}
    isInBestCandidates = true

KtCallExpression(233,252): 'foo(id(UNRESOLVED))'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(UNRESOLVED) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(233,236): 'foo'
  KaApplicableCallCandidate:
    candidate = KaSimpleFunctionCall:
      contextArgumentMapping = {}
      contextArguments = []
      dispatchReceiver = null
      extensionReceiver = null
      signature = KaFunctionSignature:
        receiverType = null
        returnType = kotlin.Unit
        symbol = /foo(a: MyEnum): kotlin.Unit
        valueParameters = [
          KaVariableSignature:
            name = a
            receiverType = null
            returnType = MyEnum
            symbol = a: MyEnum
            contextParameters = []
            callableId = null
        ]
        contextParameters = []
        callableId = /foo
      typeArgumentsMapping = {}
      valueArgumentMapping = {
        id(UNRESOLVED) -> (KaVariableSignature:
          name = a
          receiverType = null
          returnType = MyEnum
          symbol = a: MyEnum
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(236,252): '(id(UNRESOLVED))'
  NO_CANDIDATES

KtValueArgument(237,251): 'id(UNRESOLVED)'
  NO_CANDIDATES

KtCallExpression(237,251): 'id(UNRESOLVED)'
  KaApplicableCallCandidate:
    candidate = 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 = {
        UNRESOLVED -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtNameReferenceExpression(237,239): 'id'
  KaApplicableCallCandidate:
    candidate = 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 = {
        UNRESOLVED -> (KaVariableSignature:
          name = x
          receiverType = null
          returnType = MyEnum
          symbol = x: X
          contextParameters = []
          callableId = null)
      }
    isInBestCandidates = true

KtValueArgumentList(239,251): '(UNRESOLVED)'
  NO_CANDIDATES

KtValueArgument(240,250): 'UNRESOLVED'
  NO_CANDIDATES

KtNameReferenceExpression(240,250): 'UNRESOLVED'
  NO_CANDIDATES
