FILE /differentReceivers.kt
  CLASS CLASS MyClass
    $this: VALUE_PARAMETER this@MyClass: MyClass
    CONSTRUCTOR public constructor MyClass(value: kotlin.String)
      VALUE_PARAMETER value-parameter value: kotlin.String
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
        INSTANCE_INITIALIZER_CALL classDescriptor='MyClass'
    PROPERTY public final val value: kotlin.String
      FIELD PROPERTY_BACKING_FIELD public final val value: kotlin.String
        EXPRESSION_BODY
          GET_VAR 'value-parameter value: String' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR public final fun <get-value>(): kotlin.String
        $this: VALUE_PARAMETER this@MyClass: MyClass
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-value>(): String'
            GET_FIELD 'value: String' type=kotlin.String origin=null
              receiver: GET_VAR 'this@MyClass: MyClass' type=MyClass origin=null
    FUN FAKE_OVERRIDE public open override fun equals(other: kotlin.Any?): kotlin.Boolean
      $this: VALUE_PARAMETER this@Any: Any
      VALUE_PARAMETER value-parameter other: kotlin.Any?
    FUN FAKE_OVERRIDE public open override fun hashCode(): kotlin.Int
      $this: VALUE_PARAMETER this@Any: Any
    FUN FAKE_OVERRIDE public open override fun toString(): kotlin.String
      $this: VALUE_PARAMETER this@Any: Any
  FUN public operator fun MyClass.provideDelegate(host: kotlin.Any?, p: kotlin.Any): kotlin.String
    $receiver: VALUE_PARAMETER this@provideDelegate: MyClass
    VALUE_PARAMETER value-parameter host: kotlin.Any?
    VALUE_PARAMETER value-parameter p: kotlin.Any
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='provideDelegate(Any?, Any) on MyClass: String'
        CALL '<get-value>(): String' type=kotlin.String origin=GET_PROPERTY
          $this: GET_VAR 'this@provideDelegate: MyClass' type=MyClass origin=null
  FUN public operator fun kotlin.String.getValue(receiver: kotlin.Any?, p: kotlin.Any): kotlin.String
    $receiver: VALUE_PARAMETER this@getValue: String
    VALUE_PARAMETER value-parameter receiver: kotlin.Any?
    VALUE_PARAMETER value-parameter p: kotlin.Any
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='getValue(Any?, Any) on String: String'
        GET_VAR 'this@getValue: String' type=kotlin.String origin=null
  PROPERTY public val testO: kotlin.String
    FIELD DELEGATE val `testO$delegate`: kotlin.String
      EXPRESSION_BODY
        CALL 'provideDelegate(Any?, Any) on MyClass: String' type=kotlin.String origin=null
          $receiver: CALL 'constructor MyClass(String)' type=MyClass origin=null
            value: CONST String type=kotlin.String value='O'
          host: CONST Null type=kotlin.Nothing? value='null'
          p: PROPERTY_REFERENCE 'testO: String' field=null getter='<get-testO>(): String' setter=null type=kotlin.reflect.KProperty0<kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE
    FUN DELEGATED_PROPERTY_ACCESSOR public fun <get-testO>(): kotlin.String
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<get-testO>(): String'
          CALL 'getValue(Any?, Any) on String: String' type=kotlin.String origin=null
            $receiver: GET_FIELD '`testO$delegate`: String' type=kotlin.String origin=null
            receiver: CONST Null type=kotlin.Nothing? value='null'
            p: PROPERTY_REFERENCE 'testO: String' field=null getter='<get-testO>(): String' setter=null type=kotlin.reflect.KProperty0<kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE
  PROPERTY public val testK: kotlin.String
    FIELD DELEGATE val `testK$delegate`: kotlin.String
      EXPRESSION_BODY
        CONST String type=kotlin.String value='K'
    FUN DELEGATED_PROPERTY_ACCESSOR public fun <get-testK>(): kotlin.String
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<get-testK>(): String'
          CALL 'getValue(Any?, Any) on String: String' type=kotlin.String origin=null
            $receiver: GET_FIELD '`testK$delegate`: String' type=kotlin.String origin=null
            receiver: CONST Null type=kotlin.Nothing? value='null'
            p: PROPERTY_REFERENCE 'testK: String' field=null getter='<get-testK>(): String' setter=null type=kotlin.reflect.KProperty0<kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE
  PROPERTY public val testOK: kotlin.String
    FIELD PROPERTY_BACKING_FIELD public val testOK: kotlin.String
      EXPRESSION_BODY
        CALL 'plus(Any?): String' type=kotlin.String origin=PLUS
          $this: CALL '<get-testO>(): String' type=kotlin.String origin=GET_PROPERTY
          other: CALL '<get-testK>(): String' type=kotlin.String origin=GET_PROPERTY
    FUN DEFAULT_PROPERTY_ACCESSOR public fun <get-testOK>(): kotlin.String
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<get-testOK>(): String'
          GET_FIELD 'testOK: String' type=kotlin.String origin=null

