Files
kotlin-fork/compiler/testData/ir/irJsText/dynamic/dynamicMemberAugmentedAssignment.txt
T

113 lines
7.0 KiB
Plaintext
Vendored

FILE fqName:<root> fileName:/dynamicMemberAugmentedAssignment.kt
FUN name:testAugmentedMemberAssignment visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Unit flags:
VALUE_PARAMETER name:d index:0 type:dynamic flags:
BLOCK_BODY
DYN_OP operator=PLUSEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="+="
DYN_OP operator=MINUSEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="-="
DYN_OP operator=MULEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="*="
DYN_OP operator=DIVEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="/="
DYN_OP operator=MODEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="%="
FUN name:testSafeAugmentedMemberAssignment visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Unit flags:
VALUE_PARAMETER name:d index:0 type:dynamic flags:
BLOCK_BODY
BLOCK type=kotlin.Unit origin=SAFE_CALL
VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:dynamic flags:val
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'tmp0_safe_receiver: dynamic' type=dynamic origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
then: TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
CONST Null type=kotlin.Nothing? value=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: DYN_OP operator=PLUSEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'tmp0_safe_receiver: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="+="
BLOCK type=kotlin.Unit origin=SAFE_CALL
VAR IR_TEMPORARY_VARIABLE name:tmp1_safe_receiver type:dynamic flags:val
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'tmp1_safe_receiver: dynamic' type=dynamic origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
then: TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
CONST Null type=kotlin.Nothing? value=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: DYN_OP operator=MINUSEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'tmp1_safe_receiver: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="-="
BLOCK type=kotlin.Unit origin=SAFE_CALL
VAR IR_TEMPORARY_VARIABLE name:tmp2_safe_receiver type:dynamic flags:val
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'tmp2_safe_receiver: dynamic' type=dynamic origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
then: TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
CONST Null type=kotlin.Nothing? value=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: DYN_OP operator=MULEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'tmp2_safe_receiver: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="*="
BLOCK type=kotlin.Unit origin=SAFE_CALL
VAR IR_TEMPORARY_VARIABLE name:tmp3_safe_receiver type:dynamic flags:val
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'tmp3_safe_receiver: dynamic' type=dynamic origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
then: TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
CONST Null type=kotlin.Nothing? value=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: DYN_OP operator=DIVEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'tmp3_safe_receiver: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="/="
BLOCK type=kotlin.Unit origin=SAFE_CALL
VAR IR_TEMPORARY_VARIABLE name:tmp4_safe_receiver type:dynamic flags:val
GET_VAR 'value-parameter d: dynamic' type=dynamic origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ
arg0: GET_VAR 'tmp4_safe_receiver: dynamic' type=dynamic origin=null
arg1: CONST Null type=kotlin.Nothing? value=null
then: TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
CONST Null type=kotlin.Nothing? value=null
BRANCH
if: CONST Boolean type=kotlin.Boolean value=true
then: DYN_OP operator=MODEQ type=kotlin.Unit
receiver: DYN_MEMBER memberName='m' type=dynamic
GET_VAR 'tmp4_safe_receiver: dynamic' type=dynamic origin=null
0: CONST String type=kotlin.String value="%="