[FIR] Don't create delegating constructor call to kotlin.Annotation
This commit is contained in:
+4
-1
@@ -397,7 +397,10 @@ class DeclarationsConverter(
|
||||
isNullable = false
|
||||
)
|
||||
)
|
||||
modifiers.isAnnotation() && (classKind == ClassKind.ANNOTATION_CLASS) -> implicitAnnotationType
|
||||
modifiers.isAnnotation() && (classKind == ClassKind.ANNOTATION_CLASS) -> {
|
||||
superTypeRefs += implicitAnnotationType
|
||||
implicitAnyType
|
||||
}
|
||||
else -> implicitAnyType
|
||||
}
|
||||
|
||||
|
||||
@@ -352,7 +352,10 @@ class RawFirBuilder(session: FirSession, val stubMode: Boolean) : BaseFirBuilder
|
||||
isNullable = false
|
||||
)
|
||||
)
|
||||
this is KtClass && classKind == ClassKind.ANNOTATION_CLASS -> implicitAnnotationType
|
||||
this is KtClass && classKind == ClassKind.ANNOTATION_CLASS -> {
|
||||
container.superTypeRefs += implicitAnnotationType
|
||||
implicitAnyType
|
||||
}
|
||||
else -> implicitAnyType
|
||||
}
|
||||
// TODO: for enum / annotations, it *should* be empty
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FILE: annotated.kt
|
||||
@Target(AnnotationTarget#.EXPRESSION#) @Retention(AnnotationRetention#.SOURCE#) public? final? annotation class Ann : R|kotlin/Annotation| {
|
||||
public? constructor(): R|Ann| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
FILE: collectionLiterals.kt
|
||||
public? final? annotation class Ann1 : R|kotlin/Annotation| {
|
||||
public? constructor(arr: IntArray): R|Ann1| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? val arr: IntArray = R|<local>/arr|
|
||||
@@ -10,7 +10,7 @@ FILE: collectionLiterals.kt
|
||||
}
|
||||
public? final? annotation class Ann2 : R|kotlin/Annotation| {
|
||||
public? constructor(arr: DoubleArray): R|Ann2| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? val arr: DoubleArray = R|<local>/arr|
|
||||
@@ -19,7 +19,7 @@ FILE: collectionLiterals.kt
|
||||
}
|
||||
public? final? annotation class Ann3 : R|kotlin/Annotation| {
|
||||
public? constructor(arr: Array<String>): R|Ann3| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public? final? val arr: Array<String> = R|<local>/arr|
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FILE: annotations.kt
|
||||
public final annotation class MyAnn : R|kotlin/Annotation| {
|
||||
public constructor(): R|MyAnn| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
FILE: annotations.kt
|
||||
@R|kotlin/annotation/Target|(Q|kotlin/annotation/AnnotationTarget.FILE|, Q|kotlin/annotation/AnnotationTarget.FUNCTION|, Q|kotlin/annotation/AnnotationTarget.TYPE|, Q|kotlin/annotation/AnnotationTarget.PROPERTY_GETTER|) public final annotation class Simple : R|kotlin/Annotation| {
|
||||
public constructor(): R|annotations/Simple| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public final annotation class WithInt : R|kotlin/Annotation| {
|
||||
public constructor(value: R|kotlin/Int|): R|annotations/WithInt| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val value: R|kotlin/Int| = R|<local>/value|
|
||||
@@ -16,7 +16,7 @@ FILE: annotations.kt
|
||||
}
|
||||
public final annotation class WithString : R|kotlin/Annotation| {
|
||||
public constructor(s: R|kotlin/String|): R|annotations/WithString| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val s: R|kotlin/String| = R|<local>/s|
|
||||
@@ -25,7 +25,7 @@ FILE: annotations.kt
|
||||
}
|
||||
public final annotation class Complex : R|kotlin/Annotation| {
|
||||
public constructor(wi: R|annotations/WithInt|, ws: R|annotations/WithString|): R|annotations/Complex| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val wi: R|annotations/WithInt| = R|<local>/wi|
|
||||
@@ -37,7 +37,7 @@ FILE: annotations.kt
|
||||
}
|
||||
public final annotation class VeryComplex : R|kotlin/Annotation| {
|
||||
public constructor(f: R|kotlin/Float|, d: R|kotlin/Double|, b: R|kotlin/Boolean|, l: R|kotlin/Long|, n: R|kotlin/Int?|): R|annotations/VeryComplex| {
|
||||
super<R|kotlin/Annotation|>()
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val f: R|kotlin/Float| = R|<local>/f|
|
||||
|
||||
Reference in New Issue
Block a user