FIR: support type inference for assignments, fix related lambda inference

This commit is contained in:
Mikhail Glukhikh
2019-06-18 18:03:09 +03:00
parent 48cea4b800
commit d41c50d6cf
15 changed files with 156 additions and 88 deletions
@@ -47,25 +47,24 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
VAR name:a type:<root>.A [val]
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.A' type=<root>.A origin=null
SET_VAR 'val a: <root>.A [val] declared in <root>.testVariable' type=<root>.A origin=null
CONST String type=kotlin.String value="+="
CONST String type=<root>.A value="+="
SET_VAR 'val a: <root>.A [val] declared in <root>.testVariable' type=<root>.A origin=null
CONST String type=kotlin.String value="-="
CONST String type=<root>.A value="-="
SET_VAR 'val a: <root>.A [val] declared in <root>.testVariable' type=<root>.A origin=null
CONST String type=kotlin.String value="*="
CONST String type=<root>.A value="*="
SET_VAR 'val a: <root>.A [val] declared in <root>.testVariable' type=<root>.A origin=null
CONST String type=kotlin.String value="/="
CONST String type=<root>.A value="/="
SET_VAR 'val a: <root>.A [val] declared in <root>.testVariable' type=<root>.A origin=null
CONST String type=kotlin.String value="*="
CONST String type=<root>.A value="*="
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
BLOCK_BODY
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:public [final,static] ' type=<root>.A origin=null
value: CONST String type=kotlin.String value="+="
value: CONST String type=<root>.A value="+="
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:public [final,static] ' type=<root>.A origin=null
value: CONST String type=kotlin.String value="-="
value: CONST String type=<root>.A value="-="
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:public [final,static] ' type=<root>.A origin=null
value: CONST String type=kotlin.String value="*="
value: CONST String type=<root>.A value="*="
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:public [final,static] ' type=<root>.A origin=null
value: CONST String type=kotlin.String value="/="
value: CONST String type=<root>.A value="/="
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:public [final,static] ' type=<root>.A origin=null
value: CONST String type=kotlin.String value="%="
value: CONST String type=<root>.A value="%="