KtFile: 'ClassNameBeforeOneUnsresolvedClass.kt'
  null

KtPackageDirective(0,0): ''
  null

KtImportList(0,0): ''
  null

KtClass(1,10): 'class Foo'
  null

KtClass(12,45): 'class C {'
  null

KtClassBody(20,45): '{'
  null

KtProperty(26,43): 'val prop: Foo.Bar'
  null

KtTypeReference(36,43): 'Foo.Bar'
  null

KtUserType(36,43): 'Foo.Bar'
  null

KtUserType(36,39): 'Foo'
  null

KtNameReferenceExpression(36,39): 'Foo'
  null

KtNameReferenceExpression(40,43): 'Bar'
  null

KtNamedFunction(47,91): 'fun testFun() {'
  null

KtParameterList(58,60): '()'
  null

KtBlockExpression(61,91): '{'
  null

KtProperty(67,89): 'val localProp: Foo.Bar'
  null

KtTypeReference(82,89): 'Foo.Bar'
  null

KtUserType(82,89): 'Foo.Bar'
  null

KtUserType(82,85): 'Foo'
  null

KtNameReferenceExpression(82,85): 'Foo'
  null

KtNameReferenceExpression(86,89): 'Bar'
  null

KtNamedFunction(93,129): 'fun <T> take(action: (T) -> Unit) {}'
  null

KtTypeParameterList(97,100): '<T>'
  null

KtTypeParameter(98,99): 'T'
  null

KtParameterList(105,126): '(action: (T) -> Unit)'
  null

KtParameter(106,125): 'action: (T) -> Unit'
  null

KtTypeReference(114,125): '(T) -> Unit'
  null

KtFunctionType(114,125): '(T) -> Unit'
  null

KtParameterList(114,117): '(T)'
  null

KtParameter(115,116): 'T'
  null

KtTypeReference(115,116): 'T'
  null

KtUserType(115,116): 'T'
  null

KtNameReferenceExpression(115,116): 'T'
  null

KtTypeReference(121,125): 'Unit'
  null

KtUserType(121,125): 'Unit'
  null

KtNameReferenceExpression(121,125): 'Unit'
  null

KtBlockExpression(127,129): '{}'
  null

KtProperty(131,178): 'val prop = take {'
  null

KtCallExpression(142,178): 'take {'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Unit
          symbol = /take(action: (T) -> kotlin.Unit): kotlin.Unit
          valueParameters = [
            KaVariableSignature:
              name = action
              receiverType = null
              returnType = (ERROR CLASS: Cannot infer argument for type parameter T) -> kotlin.Unit
              symbol = action: (T) -> kotlin.Unit
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /take
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          {
              lambdaParam: Foo.Bar ->
          } -> (KaVariableSignature:
            name = action
            receiverType = null
            returnType = (ERROR CLASS: Cannot infer argument for type parameter T) -> kotlin.Unit
            symbol = action: (T) -> kotlin.Unit
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<EXPECTED_PARAMETER_TYPE_MISMATCH: Parameter type mismatch: actual type is '??? (Unresolved qualified name: Foo.Bar)', but 'uninferred T (of fun <T> take)' was expected.>

KtNameReferenceExpression(142,146): 'take'
  KaCallResolutionError:
    candidateCalls = [
      KaSimpleFunctionCall:
        contextArgumentMapping = {}
        contextArguments = []
        dispatchReceiver = null
        extensionReceiver = null
        signature = KaFunctionSignature:
          receiverType = null
          returnType = kotlin.Unit
          symbol = /take(action: (T) -> kotlin.Unit): kotlin.Unit
          valueParameters = [
            KaVariableSignature:
              name = action
              receiverType = null
              returnType = (ERROR CLASS: Cannot infer argument for type parameter T) -> kotlin.Unit
              symbol = action: (T) -> kotlin.Unit
              contextParameters = []
              callableId = null
          ]
          contextParameters = []
          callableId = /take
        typeArgumentsMapping = {
          T -> (ERROR CLASS: Cannot infer argument for type parameter T)
        }
        valueArgumentMapping = {
          {
              lambdaParam: Foo.Bar ->
          } -> (KaVariableSignature:
            name = action
            receiverType = null
            returnType = (ERROR CLASS: Cannot infer argument for type parameter T) -> kotlin.Unit
            symbol = action: (T) -> kotlin.Unit
            contextParameters = []
            callableId = null)
        }
    ]
    diagnostic = ERROR<EXPECTED_PARAMETER_TYPE_MISMATCH: Parameter type mismatch: actual type is '??? (Unresolved qualified name: Foo.Bar)', but 'uninferred T (of fun <T> take)' was expected.>

KtLambdaArgument(147,178): '{'
  null

KtLambdaExpression(147,178): '{'
  null

KtFunctionLiteral(147,178): '{'
  null

KtParameterList(153,173): 'lambdaParam: Foo.Bar'
  null

KtParameter(153,173): 'lambdaParam: Foo.Bar'
  null

KtTypeReference(166,173): 'Foo.Bar'
  null

KtUserType(166,173): 'Foo.Bar'
  null

KtUserType(166,169): 'Foo'
  null

KtNameReferenceExpression(166,169): 'Foo'
  null

KtNameReferenceExpression(170,173): 'Bar'
  null

KtBlockExpression(177,177): ''
  null
