Load static final fields of appropriate types from Java as const
This commit is contained in:
@@ -9,7 +9,7 @@ public open class Test {
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public final val FOO: kotlin.String = "test"
|
||||
public const final val FOO: kotlin.String = "test"
|
||||
}
|
||||
|
||||
package foo {
|
||||
|
||||
compiler/testData/diagnostics/tests/annotations/annotationParameterMustBeConstant/javaProperties.txt
Vendored
+3
-3
@@ -24,9 +24,9 @@ public open class Test {
|
||||
|
||||
// Static members
|
||||
public final var i1: kotlin.Int
|
||||
public final val i2: kotlin.Int = 1
|
||||
public final val i3: kotlin.Int
|
||||
public final val i4: kotlin.Int = 1
|
||||
public const final val i2: kotlin.Int = 1
|
||||
public const final val i3: kotlin.Int
|
||||
public const final val i4: kotlin.Int = 1
|
||||
public final var i5: kotlin.Int
|
||||
public final var i6: kotlin.Int
|
||||
}
|
||||
|
||||
Vendored
+2
-2
@@ -11,8 +11,8 @@ public open class JavaClass {
|
||||
// Static members
|
||||
private final val privateFinal: JavaClass!
|
||||
private final var privateMutable: kotlin.Throwable!
|
||||
protected/*protected static*/ final val protectedFinal: kotlin.Double
|
||||
protected/*protected static*/ const final val protectedFinal: kotlin.Double
|
||||
protected/*protected static*/ final var protectedMutable: kotlin.Char
|
||||
public final val publicFinal: kotlin.String!
|
||||
public const final val publicFinal: kotlin.String!
|
||||
public final var publicMutable: kotlin.Any!
|
||||
}
|
||||
|
||||
+1
-1
@@ -15,5 +15,5 @@ public open class Test {
|
||||
|
||||
// Static members
|
||||
public final var i1: kotlin.Int
|
||||
public final val i2: kotlin.Int = 2147483647
|
||||
public const final val i2: kotlin.Int = 2147483647
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ public open class Aaa {
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public final val i: kotlin.Int = 1
|
||||
public const final val i: kotlin.Int = 1
|
||||
}
|
||||
|
||||
public open class Bbb : Aaa {
|
||||
@@ -19,5 +19,5 @@ public open class Bbb : Aaa {
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public final val i: kotlin.String = "s"
|
||||
public const final val i: kotlin.String = "s"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// FILE: A.java
|
||||
|
||||
public class A {
|
||||
public static final int X = 1;
|
||||
public static final int Y;
|
||||
|
||||
public final int z = 3;
|
||||
|
||||
static {
|
||||
Y = 2;
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: main.kt
|
||||
|
||||
annotation class Ann(val x: Int)
|
||||
|
||||
@Ann(A.X)
|
||||
fun main1() {}
|
||||
|
||||
@Ann(<!ANNOTATION_PARAMETER_MUST_BE_CONST!>A.Y<!>)
|
||||
fun main2() {}
|
||||
|
||||
val q = A()
|
||||
@Ann(<!ANNOTATION_PARAMETER_MUST_BE_CONST!>q.z<!>)
|
||||
fun main3() {}
|
||||
@@ -0,0 +1,26 @@
|
||||
package
|
||||
|
||||
public val q: A
|
||||
@Ann(x = 1) public fun main1(): kotlin.Unit
|
||||
@Ann() public fun main2(): kotlin.Unit
|
||||
@Ann(x = 3) public fun main3(): kotlin.Unit
|
||||
|
||||
public open class A {
|
||||
public constructor A()
|
||||
public final val z: kotlin.Int = 3
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public const final val X: kotlin.Int = 1
|
||||
public const final val Y: kotlin.Int
|
||||
}
|
||||
|
||||
@kotlin.annotation.annotation() public final class Ann : kotlin.Annotation {
|
||||
public constructor Ann(/*0*/ x: kotlin.Int)
|
||||
public final val x: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user