FILE fqName:<root> fileName:/castToTypeParameter.kt
  FUN name:castFun visibility:public modality:FINAL <T> (x:kotlin.Any) returnType:T of <root>.castFun 
    TYPE_PARAMETER name:T index:0 variance: superTypes:[]
    VALUE_PARAMETER name:x index:0 type:kotlin.Any 
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun castFun <T> (x: kotlin.Any): T of <root>.castFun declared in <root>'
        TYPE_OP type=T of <root>.castFun origin=CAST typeOperand=T of <root>.castFun
          GET_VAR 'x: kotlin.Any declared in <root>.castFun' type=kotlin.Any origin=null
  FUN name:castExtFun visibility:public modality:FINAL <T> ($receiver:kotlin.Any) returnType:T of <root>.castExtFun
    TYPE_PARAMETER name:T index:0 variance: superTypes:[]
    $receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun castExtFun <T> (): T of <root>.castExtFun declared in <root>'
        TYPE_OP type=T of <root>.castExtFun origin=CAST typeOperand=T of <root>.castExtFun
          ERROR_CALL 'Unresolved reference: this#' type=kotlin.Any
  PROPERTY name:castExtVal visibility:public modality:FINAL [val] 
    FUN name:<get-castExtVal> visibility:public modality:FINAL <> () returnType:T of <uninitialized parent>
      correspondingProperty: PROPERTY name:castExtVal visibility:public modality:FINAL [val] 
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun <get-castExtVal> (): T of <uninitialized parent> declared in <root>'
          TYPE_OP type=T of <uninitialized parent> origin=CAST typeOperand=T of <uninitialized parent>
            ERROR_CALL 'Unresolved reference: this#' type=IrErrorType
  CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host 
    TYPE_PARAMETER name:T index:0 variance: superTypes:[]
    CONSTRUCTOR visibility:public <> () returnType:<root>.Host<T of <uninitialized parent>> [primary] 
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
    FUN name:castMemberFun visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Any) returnType:T of <root>.Host 
      $this: VALUE_PARAMETER name:<this> type:<root>.Host 
      VALUE_PARAMETER name:x index:0 type:kotlin.Any 
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun castMemberFun (x: kotlin.Any): T of <root>.Host declared in <root>.Host'
          TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
            GET_VAR 'x: kotlin.Any declared in <root>.Host.castMemberFun' type=kotlin.Any origin=null
    FUN name:castGenericMemberFun visibility:public modality:FINAL <TF> ($this:<root>.Host, x:kotlin.Any) returnType:TF of <root>.Host.castGenericMemberFun 
      TYPE_PARAMETER name:TF index:0 variance: superTypes:[]
      $this: VALUE_PARAMETER name:<this> type:<root>.Host 
      VALUE_PARAMETER name:x index:0 type:kotlin.Any 
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun castGenericMemberFun <TF> (x: kotlin.Any): TF of <root>.Host.castGenericMemberFun declared in <root>.Host'
          TYPE_OP type=TF of <root>.Host.castGenericMemberFun origin=CAST typeOperand=TF of <root>.Host.castGenericMemberFun
            GET_VAR 'x: kotlin.Any declared in <root>.Host.castGenericMemberFun' type=kotlin.Any origin=null
    FUN name:castMemberExtFun visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:kotlin.Any) returnType:T of <root>.Host
      $this: VALUE_PARAMETER name:<this> type:<root>.Host 
      $receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun castMemberExtFun (): T of <root>.Host declared in <root>.Host'
          TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
            ERROR_CALL 'Unresolved reference: this#' type=kotlin.Any
    FUN name:castGenericMemberExtFun visibility:public modality:FINAL <TF> ($this:<root>.Host, $receiver:kotlin.Any) returnType:TF of <root>.Host.castGenericMemberExtFun
      TYPE_PARAMETER name:TF index:0 variance: superTypes:[]
      $this: VALUE_PARAMETER name:<this> type:<root>.Host 
      $receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun castGenericMemberExtFun <TF> (): TF of <root>.Host.castGenericMemberExtFun declared in <root>.Host'
          TYPE_OP type=TF of <root>.Host.castGenericMemberExtFun origin=CAST typeOperand=TF of <root>.Host.castGenericMemberExtFun
            ERROR_CALL 'Unresolved reference: this#' type=kotlin.Any
    PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val] 
      FUN name:<get-castMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host) returnType:T of <root>.Host
        correspondingProperty: PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val] 
        $this: VALUE_PARAMETER name:<this> type:<root>.Host 
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-castMemberExtVal> (): T of <root>.Host declared in <root>.Host'
            TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
              ERROR_CALL 'Unresolved reference: this#' type=<root>.Host<T of <root>.Host>
    PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val] 
      FUN name:<get-castGenericMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host) returnType:TV of <uninitialized parent>
        correspondingProperty: PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val] 
        $this: VALUE_PARAMETER name:<this> type:<root>.Host 
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-castGenericMemberExtVal> (): TV of <uninitialized parent> declared in <root>.Host'
            TYPE_OP type=TV of <uninitialized parent> origin=CAST typeOperand=TV of <uninitialized parent>
              ERROR_CALL 'Unresolved reference: this#' type=<root>.Host<T of <root>.Host>
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean 
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any 
      VALUE_PARAMETER name:other index:0 type:kotlin.Any? 
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int 
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any 
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String 
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any 

