psi2ir: Merge constant entries in string template expressions

This is required to handle UCNs properly, see KT-28006.

 #KT-28006
This commit is contained in:
Dmitry Petrov
2018-11-06 18:00:35 +03:00
parent 6bb5e028a5
commit bd1491ac8a
84 changed files with 476 additions and 351 deletions
@@ -29,7 +29,7 @@ FILE fqName:<root> fileName:/constValInitializers.kt
PROPERTY name:STR1 visibility:public modality:FINAL flags:const,val
FIELD PROPERTY_BACKING_FIELD name:STR1 type:kotlin.String visibility:public flags:final,static
EXPRESSION_BODY
CONST String type=kotlin.String value=String1
CONST String type=kotlin.String value="String1"
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-STR1> visibility:public modality:FINAL <> () returnType:kotlin.String flags:
correspondingProperty: PROPERTY name:STR1 visibility:public modality:FINAL flags:const,val
BLOCK_BODY
@@ -38,7 +38,7 @@ FILE fqName:<root> fileName:/constValInitializers.kt
PROPERTY name:STR2 visibility:public modality:FINAL flags:const,val
FIELD PROPERTY_BACKING_FIELD name:STR2 type:kotlin.String visibility:public flags:final,static
EXPRESSION_BODY
CONST String type=kotlin.String value=String2
CONST String type=kotlin.String value="String2"
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-STR2> visibility:public modality:FINAL <> () returnType:kotlin.String flags:
correspondingProperty: PROPERTY name:STR2 visibility:public modality:FINAL flags:const,val
BLOCK_BODY
@@ -47,7 +47,7 @@ FILE fqName:<root> fileName:/constValInitializers.kt
PROPERTY name:STR3 visibility:public modality:FINAL flags:const,val
FIELD PROPERTY_BACKING_FIELD name:STR3 type:kotlin.String visibility:public flags:final,static
EXPRESSION_BODY
CONST String type=kotlin.String value=String1String2
CONST String type=kotlin.String value="String1String2"
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-STR3> visibility:public modality:FINAL <> () returnType:kotlin.String flags:
correspondingProperty: PROPERTY name:STR3 visibility:public modality:FINAL flags:const,val
BLOCK_BODY
@@ -56,7 +56,7 @@ FILE fqName:<root> fileName:/constValInitializers.kt
PROPERTY name:STR4 visibility:public modality:FINAL flags:const,val
FIELD PROPERTY_BACKING_FIELD name:STR4 type:kotlin.String visibility:public flags:final,static
EXPRESSION_BODY
CONST String type=kotlin.String value=String1String2
CONST String type=kotlin.String value="String1String2"
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-STR4> visibility:public modality:FINAL <> () returnType:kotlin.String flags:
correspondingProperty: PROPERTY name:STR4 visibility:public modality:FINAL flags:const,val
BLOCK_BODY