[FIR] Render original type before smartcasted type in DEBUG_INFO_EXPRESSION_TYPE
This is made for keep consistency with same renderer in FE 1.0
This commit is contained in:
@@ -8,9 +8,9 @@
|
||||
*/
|
||||
fun case_1(x: Any?) {
|
||||
if (x is String) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val y = if (true) Class::fun_1 else Class::fun_1
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val z: String = x
|
||||
}
|
||||
}
|
||||
@@ -21,13 +21,13 @@ fun case_1(x: Any?) {
|
||||
*/
|
||||
fun case_2(x: Any?, b: Boolean?) {
|
||||
x!!
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Any")!>x<!>
|
||||
val y = when (b) {
|
||||
true -> Class::fun_1
|
||||
false -> Class::fun_2
|
||||
null -> Class::fun_3
|
||||
}
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Any")!>x<!>
|
||||
val z: Any = x
|
||||
}
|
||||
|
||||
@@ -37,22 +37,22 @@ fun case_2(x: Any?, b: Boolean?) {
|
||||
*/
|
||||
fun case_3(x: Any?, b: Boolean?) {
|
||||
x as Int
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val y = when (b) {
|
||||
else -> Class::fun_1
|
||||
}
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val z: Int = x
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 4
|
||||
fun case_4(x: Any?, b: Boolean?) {
|
||||
x as Int
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
if (b!!) {
|
||||
val m = Class::fun_1
|
||||
}
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val z: Int = x
|
||||
}
|
||||
|
||||
@@ -62,9 +62,9 @@ fun case_4(x: Any?, b: Boolean?) {
|
||||
*/
|
||||
fun case_5(x: Any?, b: Class) {
|
||||
x as Int
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val y = if (true) b::fun_1 else b::fun_1
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val z: Int = x
|
||||
}
|
||||
|
||||
@@ -75,10 +75,10 @@ fun case_5(x: Any?, b: Class) {
|
||||
fun case_6(x: Any?, b: Class) {
|
||||
x as Int
|
||||
val z1 = x
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
val y = if (true) b::fun_1 else b::fun_1
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int & kotlin.Any?")!>z1<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Int")!>z1<!>
|
||||
val z2: Int = z1
|
||||
}
|
||||
|
||||
@@ -89,9 +89,9 @@ fun case_6(x: Any?, b: Class) {
|
||||
fun case_7_1() {}
|
||||
fun case_7(x: Any?) {
|
||||
if (x is String) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val y = if (true) ::case_7_1 else ::case_7_1
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val z: String = x
|
||||
}
|
||||
}
|
||||
@@ -100,13 +100,13 @@ fun case_7(x: Any?) {
|
||||
fun case_8_1() {}
|
||||
fun case_8(x: Any?) {
|
||||
if (x is String) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val m = try {
|
||||
::case_8_1
|
||||
} catch (e: Exception) {
|
||||
::case_8_1
|
||||
}
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val z: String = x
|
||||
}
|
||||
}
|
||||
@@ -114,13 +114,13 @@ fun case_8(x: Any?) {
|
||||
// TESTCASE NUMBER: 9
|
||||
fun case_9(x: Any?) {
|
||||
if (x is String) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val m = try {
|
||||
Class::fun_1
|
||||
} finally {
|
||||
Class::fun_1
|
||||
}
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String & kotlin.Any?")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.String")!>x<!>
|
||||
val z: String = x
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user