diff --git a/compiler/fir/analysis-tests/testData/builtIns/kotlin-ranges.txt b/compiler/fir/analysis-tests/testData/builtIns/kotlin-ranges.txt index f318e3424d7..d2f82ba2d5f 100644 --- a/compiler/fir/analysis-tests/testData/builtIns/kotlin-ranges.txt +++ b/compiler/fir/analysis-tests/testData/builtIns/kotlin-ranges.txt @@ -81,7 +81,7 @@ public final class CharRange : R|kotlin/ranges/CharProgression|, R|kotlin/ranges } -public abstract interface ClosedRange : R|kotlin/Any| { +public abstract interface ClosedRange|> : R|kotlin/Any| { public open operator fun contains(value: R|T|): R|kotlin/Boolean| public open fun isEmpty(): R|kotlin/Boolean| diff --git a/compiler/fir/analysis-tests/testData/builtIns/kotlin.txt b/compiler/fir/analysis-tests/testData/builtIns/kotlin.txt index acb744e020f..96197f98cc8 100644 --- a/compiler/fir/analysis-tests/testData/builtIns/kotlin.txt +++ b/compiler/fir/analysis-tests/testData/builtIns/kotlin.txt @@ -12,9 +12,9 @@ public final fun doubleArrayOf(vararg elements: R|kotlin/DoubleArray|): R|kotlin public final inline fun emptyArray(): R|kotlin/Array| -@R|kotlin/SinceKotlin|(version = String(1.1)) public final inline fun enumValueOf(name: R|kotlin/String|): R|T| +@R|kotlin/SinceKotlin|(version = String(1.1)) public final inline fun |> enumValueOf(name: R|kotlin/String|): R|T| -@R|kotlin/SinceKotlin|(version = String(1.1)) public final inline fun enumValues(): R|kotlin/Array| +@R|kotlin/SinceKotlin|(version = String(1.1)) public final inline fun |> enumValues(): R|kotlin/Array| public final fun floatArrayOf(vararg elements: R|kotlin/FloatArray|): R|kotlin/FloatArray| @@ -529,7 +529,7 @@ public final class DoubleArray : R|kotlin/Any|, R|kotlin/Cloneable|, R|java/io/S } -public abstract class Enum : R|kotlin/Comparable|, R|java/io/Serializable| { +public abstract class Enum|> : R|kotlin/Comparable|, R|java/io/Serializable| { public final companion object Companion : R|kotlin/Any| { private constructor(): R|kotlin/Enum.Companion| @@ -551,7 +551,7 @@ public abstract class Enum : R|kotlin/Comparable|, R|java/io/Serializable| public final val ordinal: R|kotlin/Int| public get(): R|kotlin/Int| - public constructor(name: R|kotlin/String| = STUB, ordinal: R|kotlin/Int| = STUB): R|kotlin/Enum| + public constructor|>(name: R|kotlin/String| = STUB, ordinal: R|kotlin/Int| = STUB): R|kotlin/Enum| } diff --git a/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.fir.txt b/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.fir.txt index 416747f45b3..2b8a279d102 100644 --- a/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.fir.txt +++ b/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.fir.txt @@ -5,7 +5,7 @@ FILE: kt40131.kt } public final val |> R|T|.myJava1: R|java/lang/Class<*>| public get(): R|java/lang/Class<*>| { - ^ this@R|/myJava1|.R|/javaImpl| + ^ this@R|/myJava1|.R|/javaImpl| } public final val |> R|T|.myJava2: R|java/lang/Class| public get(): R|java/lang/Class| { diff --git a/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.kt b/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.kt index 5f0d88a4ab5..daba2e84409 100644 --- a/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.kt +++ b/compiler/fir/analysis-tests/testData/resolve/inference/kt40131.kt @@ -6,7 +6,7 @@ val KClass.javaImpl: Class get() = null!! val > T.myJava1: Class<*> - get() = ")!>javaImpl + get() = ")!>javaImpl val > T.myJava2: Class get() = ")!>javaImpl diff --git a/compiler/fir/fir-deserialization/src/org/jetbrains/kotlin/fir/deserialization/FirTypeDeserializer.kt b/compiler/fir/fir-deserialization/src/org/jetbrains/kotlin/fir/deserialization/FirTypeDeserializer.kt index f125aee59ad..be0642e09c2 100644 --- a/compiler/fir/fir-deserialization/src/org/jetbrains/kotlin/fir/deserialization/FirTypeDeserializer.kt +++ b/compiler/fir/fir-deserialization/src/org/jetbrains/kotlin/fir/deserialization/FirTypeDeserializer.kt @@ -80,7 +80,7 @@ class FirTypeDeserializer( for ((index, proto) in typeParameterProtos.withIndex()) { val builder = builders[index] builder.apply { - proto.upperBoundList.mapTo(bounds) { + proto.upperBounds(typeTable).mapTo(bounds) { buildResolvedTypeRef { type = type(it) } } addDefaultBoundIfNecessary() diff --git a/compiler/testData/diagnostics/tests/classLiteral/smartCast.fir.kt b/compiler/testData/diagnostics/tests/classLiteral/smartCast.fir.kt deleted file mode 100644 index 7ab9924cefa..00000000000 --- a/compiler/testData/diagnostics/tests/classLiteral/smartCast.fir.kt +++ /dev/null @@ -1,23 +0,0 @@ -// KT-16291 Smart cast doesn't work when getting class of instance - -import kotlin.reflect.KClass - -class Foo { - override fun equals(other: Any?): Boolean { - if (this === other) return true - if (other === null || other::class != this::class) return false - - return true - } -} - -fun test(f: Foo?): KClass? = if (f != null) f::class else null - -fun test2(): KClass? { - var f: Foo? = null - if (f != null) { - run { f = null } - return f::class - } - return null -} diff --git a/compiler/testData/diagnostics/tests/classLiteral/smartCast.kt b/compiler/testData/diagnostics/tests/classLiteral/smartCast.kt index 0bae9c28f6d..dd50fd47ea5 100644 --- a/compiler/testData/diagnostics/tests/classLiteral/smartCast.kt +++ b/compiler/testData/diagnostics/tests/classLiteral/smartCast.kt @@ -1,3 +1,4 @@ +// FIR_IDENTICAL // KT-16291 Smart cast doesn't work when getting class of instance import kotlin.reflect.KClass diff --git a/compiler/testData/diagnostics/tests/duplicateJvmSignature/missingNames.fir.kt b/compiler/testData/diagnostics/tests/duplicateJvmSignature/missingNames.fir.kt index 9f5dda53c4d..8cfced5f4b5 100644 --- a/compiler/testData/diagnostics/tests/duplicateJvmSignature/missingNames.fir.kt +++ b/compiler/testData/diagnostics/tests/duplicateJvmSignature/missingNames.fir.kt @@ -21,9 +21,9 @@ interface { } -enum class { +enum class { -} +} annotation class { @@ -48,9 +48,9 @@ class Outer { } - enum class { + enum class { - } + } annotation class { diff --git a/compiler/testData/diagnostics/tests/enum/enumInheritance.fir.kt b/compiler/testData/diagnostics/tests/enum/enumInheritance.fir.kt index 734bc3314d7..6fb7a3df010 100644 --- a/compiler/testData/diagnostics/tests/enum/enumInheritance.fir.kt +++ b/compiler/testData/diagnostics/tests/enum/enumInheritance.fir.kt @@ -1,7 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE // FILE: test.kt enum class MyEnum(): MyClass() {} enum class MyEnum2(): MyTrait {} -enum class MyEnum3(): MyEnumBase() {} +enum class MyEnum3(): MyEnumBase() {} open class MyClass() {} diff --git a/compiler/testData/diagnostics/tests/enum/enumInheritance.kt b/compiler/testData/diagnostics/tests/enum/enumInheritance.kt index 60e7887cefc..9d81a0eb1e2 100644 --- a/compiler/testData/diagnostics/tests/enum/enumInheritance.kt +++ b/compiler/testData/diagnostics/tests/enum/enumInheritance.kt @@ -1,3 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE // FILE: test.kt enum class MyEnum(): MyClass() {} enum class MyEnum2(): MyTrait {} diff --git a/compiler/testData/diagnostics/tests/enum/enumWithEmptyName.kt b/compiler/testData/diagnostics/tests/enum/enumWithEmptyName.kt index e3faf0c980c..f9b3d26b726 100644 --- a/compiler/testData/diagnostics/tests/enum/enumWithEmptyName.kt +++ b/compiler/testData/diagnostics/tests/enum/enumWithEmptyName.kt @@ -1,3 +1,4 @@ // FIR_IDENTICAL +// FIR_IDE_IGNORE enum class { -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.fir.kt b/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.fir.kt deleted file mode 100644 index df80c1c4113..00000000000 --- a/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.fir.kt +++ /dev/null @@ -1,8 +0,0 @@ -// WITH_RUNTIME -// !DIAGNOSTICS: -UNUSED_VARIABLE - -class Foo>(val values: Array) - -fun foo(x: Array>) { - val y = Foo(x) -} diff --git a/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.kt b/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.kt index 429a229c0c3..9f98d9373b1 100644 --- a/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.kt +++ b/compiler/testData/diagnostics/tests/inference/capturedTypesInSelfType.kt @@ -1,3 +1,4 @@ +// FIR_IDENTICAL // WITH_RUNTIME // !DIAGNOSTICS: -UNUSED_VARIABLE diff --git a/compiler/testData/diagnostics/tests/recovery/namelessMembers.kt b/compiler/testData/diagnostics/tests/recovery/namelessMembers.kt index ca24786d62f..75fdd6de850 100644 --- a/compiler/testData/diagnostics/tests/recovery/namelessMembers.kt +++ b/compiler/testData/diagnostics/tests/recovery/namelessMembers.kt @@ -1,4 +1,5 @@ // FIR_IDENTICAL +// FIR_IDE_IGNORE // !DIAGNOSTICS: -REDECLARATION -DUPLICATE_CLASS_NAMES class C { @@ -15,4 +16,4 @@ class C { class C1<in> {} -class C2(val) {} \ No newline at end of file +class C2(val) {} diff --git a/compiler/testData/diagnostics/tests/recovery/namelessToplevelDeclarations.fir.kt b/compiler/testData/diagnostics/tests/recovery/namelessToplevelDeclarations.fir.kt index 54973f749d1..cd991c43268 100644 --- a/compiler/testData/diagnostics/tests/recovery/namelessToplevelDeclarations.fir.kt +++ b/compiler/testData/diagnostics/tests/recovery/namelessToplevelDeclarations.fir.kt @@ -21,6 +21,6 @@ object { } -enum class {} +enum class {} annotation class {} diff --git a/idea/testData/checker/recovery/namelessMembers.fir.kt b/idea/testData/checker/recovery/namelessMembers.fir.kt index 4575656dc66..94558750fe7 100644 --- a/idea/testData/checker/recovery/namelessMembers.fir.kt +++ b/idea/testData/checker/recovery/namelessMembers.fir.kt @@ -7,7 +7,7 @@ class C { class {} - enum class {} + enum class {} } class C1<in> {} diff --git a/idea/testData/checker/recovery/namelessToplevelDeclarations.fir.kt b/idea/testData/checker/recovery/namelessToplevelDeclarations.fir.kt index 0ef27de8c1f..ea27e8ab56c 100644 --- a/idea/testData/checker/recovery/namelessToplevelDeclarations.fir.kt +++ b/idea/testData/checker/recovery/namelessToplevelDeclarations.fir.kt @@ -19,6 +19,6 @@ object { } -enum class {} +enum class {} annotation class {}