AA FIR: constant evaluation for Java field

This commit is contained in:
Jinseong Jeon
2022-08-15 11:46:12 -07:00
committed by Ilya Kirillov
parent 0869dd9c92
commit 25f7554a31
13 changed files with 186 additions and 11 deletions
@@ -0,0 +1,17 @@
// FILE: Build.java
package os;
public class Build {
public static class VERSION_CODES {
public final int CUPCAKE = 3;
}
}
// FILE: main.kt
import os.Build
annotation class Annotation(val api: Int)
@get:Annotation(api = <expr>Build.VERSION_CODES().CUPCAKE</expr>)
val versionCheck1: Boolean
get() = false
@@ -0,0 +1,9 @@
expression: Build.VERSION_CODES().CUPCAKE
CONSTANT_EXPRESSION_EVALUATION
constant: 3
constantValueKind: Int
CONSTANT_LIKE_EXPRESSION_EVALUATION
constantLike: 3
constantLikeValueKind: Int
@@ -0,0 +1,17 @@
// FILE: Build.java
package os;
public class Build {
public static class VERSION_CODES {
public static int CUPCAKE = 3;
}
}
// FILE: main.kt
import os.Build
annotation class Annotation(val api: Int)
@get:Annotation(api = <expr>Build.VERSION_CODES.CUPCAKE</expr>)
val versionCheck1: Boolean
get() = false
@@ -0,0 +1,9 @@
expression: Build.VERSION_CODES.CUPCAKE
CONSTANT_EXPRESSION_EVALUATION
constant: NOT_EVALUATED
constantValueKind: NOT_EVALUATED
CONSTANT_LIKE_EXPRESSION_EVALUATION
constantLike: NOT_EVALUATED
constantLikeValueKind: NOT_EVALUATED
@@ -0,0 +1,17 @@
// FILE: Build.java
package os;
public class Build {
public static class VERSION_CODES {
public static final int CUPCAKE = 3;
}
}
// FILE: main.kt
import os.Build
annotation class Annotation(val api: Int)
@get:Annotation(api = <expr>Build.VERSION_CODES.CUPCAKE</expr>)
val versionCheck1: Boolean
get() = false
@@ -0,0 +1,9 @@
expression: Build.VERSION_CODES.CUPCAKE
CONSTANT_EXPRESSION_EVALUATION
constant: 3
constantValueKind: Int
CONSTANT_LIKE_EXPRESSION_EVALUATION
constantLike: 3
constantLikeValueKind: Int