diff --git a/compiler/testData/builtin-classes/default/kotlin-collections.txt b/compiler/testData/builtin-classes/default/kotlin-collections.txt index 1749a58fdf6..56922db91b7 100644 --- a/compiler/testData/builtin-classes/default/kotlin-collections.txt +++ b/compiler/testData/builtin-classes/default/kotlin-collections.txt @@ -103,7 +103,7 @@ public interface Map { public abstract fun containsKey(/*0*/ key: K): kotlin.Boolean public abstract fun containsValue(/*0*/ value: @kotlin.UnsafeVariance V): kotlin.Boolean public abstract operator fun get(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: @kotlin.UnsafeVariance V): V + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: @kotlin.UnsafeVariance V): V public abstract fun isEmpty(): kotlin.Boolean public interface Entry { @@ -189,12 +189,12 @@ public interface MutableMap : kotlin.collections.Map { public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K): kotlin.Boolean public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V): kotlin.Boolean public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: V): V + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: V): V public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public abstract fun put(/*0*/ key: K, /*1*/ value: V): V? public abstract fun putAll(/*0*/ from: kotlin.collections.Map): kotlin.Unit public abstract fun remove(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open fun remove(/*0*/ key: K, /*1*/ value: V): kotlin.Boolean + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open fun remove(/*0*/ key: K, /*1*/ value: V): kotlin.Boolean public interface MutableEntry : kotlin.collections.Map.Entry { public abstract override /*1*/ /*fake_override*/ val key: K diff --git a/compiler/testData/builtin-classes/java8/kotlin-collections.txt b/compiler/testData/builtin-classes/java8/kotlin-collections.txt index 60a149abdcd..58ccca8500e 100644 --- a/compiler/testData/builtin-classes/java8/kotlin-collections.txt +++ b/compiler/testData/builtin-classes/java8/kotlin-collections.txt @@ -123,7 +123,7 @@ public interface Map { public abstract fun containsValue(/*0*/ value: @kotlin.UnsafeVariance V): kotlin.Boolean public open fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract operator fun get(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: @kotlin.UnsafeVariance V): V + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: @kotlin.UnsafeVariance V): V public abstract fun isEmpty(): kotlin.Boolean public interface Entry { @@ -229,14 +229,14 @@ public interface MutableMap : kotlin.collections.Map { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: V): V + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: V): V public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open fun merge(/*0*/ p0: K!, /*1*/ p1: V!, /*2*/ p2: java.util.function.BiFunction!): V! public abstract fun put(/*0*/ key: K, /*1*/ value: V): V? public abstract fun putAll(/*0*/ from: kotlin.collections.Map): kotlin.Unit public open fun putIfAbsent(/*0*/ p0: K!, /*1*/ p1: V!): V! public abstract fun remove(/*0*/ key: K): V? - @kotlin.internal.PlatformDependent public open fun remove(/*0*/ key: K, /*1*/ value: V): kotlin.Boolean + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open fun remove(/*0*/ key: K, /*1*/ value: V): kotlin.Boolean public open fun replace(/*0*/ p0: K!, /*1*/ p1: V!): V! public open fun replace(/*0*/ p0: K!, /*1*/ p1: V!, /*2*/ p2: V!): kotlin.Boolean public open fun replaceAll(/*0*/ p0: java.util.function.BiFunction!): kotlin.Unit diff --git a/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/getOrDefault.txt b/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/getOrDefault.txt index bfb36f35c8b..f2bd87254ba 100644 --- a/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/getOrDefault.txt +++ b/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/getOrDefault.txt @@ -13,7 +13,7 @@ public abstract class A : kotlin.collections.Map { public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.Int): kotlin.String? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.Int, /*1*/ defaultValue: kotlin.String): kotlin.String + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.Int, /*1*/ defaultValue: kotlin.String): kotlin.String public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String diff --git a/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/mutableMapRemove.txt b/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/mutableMapRemove.txt index 92d1e598ab0..2c6c232d813 100644 --- a/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/mutableMapRemove.txt +++ b/compiler/testData/diagnostics/testsWithJava8/targetedBuiltIns/mutableMapRemove.txt @@ -20,7 +20,7 @@ public final class KotlinMap1 : java.util.AbstractMap { public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public open override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V!, /*2*/ p2: java.util.function.BiFunction!): V! @@ -53,7 +53,7 @@ public final class KotlinMap2 : java.util.AbstractMap public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public open override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.String!): kotlin.Int? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: java.util.function.BiFunction!): kotlin.Int! diff --git a/compiler/testData/loadJava8/compiledJava/MapRemove.txt b/compiler/testData/loadJava8/compiledJava/MapRemove.txt index df6670556f2..c768c3fb3a4 100644 --- a/compiler/testData/loadJava8/compiledJava/MapRemove.txt +++ b/compiler/testData/loadJava8/compiledJava/MapRemove.txt @@ -17,7 +17,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V!, /*2*/ p2: java.util.function.BiFunction!): V! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V? @@ -44,7 +44,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.String!): kotlin.Int? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: java.util.function.BiFunction!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Int? @@ -71,7 +71,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.String!): kotlin.Int? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: java.util.function.BiFunction!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Int? @@ -79,7 +79,7 @@ public open class MapRemove { public open override /*1*/ /*fake_override*/ fun putIfAbsent(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun remove(/*0*/ key: kotlin.String!): kotlin.Int? public open fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ /*isHiddenToOvercomeSignatureClash*/ fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ /*isHiddenToOvercomeSignatureClash*/ fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun replace(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!): kotlin.Int! public open override /*1*/ /*fake_override*/ fun replace(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun replaceAll(/*0*/ p0: java.util.function.BiFunction!): kotlin.Unit diff --git a/compiler/testData/loadJava8/sourceJava/MapRemove.txt b/compiler/testData/loadJava8/sourceJava/MapRemove.txt index 512c7490c2a..20f3102e354 100644 --- a/compiler/testData/loadJava8/sourceJava/MapRemove.txt +++ b/compiler/testData/loadJava8/sourceJava/MapRemove.txt @@ -17,7 +17,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V!, /*2*/ p2: java.util.function.BiFunction!): V! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V? @@ -44,7 +44,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.String!): kotlin.Int? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: java.util.function.BiFunction!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Int? @@ -71,7 +71,7 @@ public open class MapRemove { public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer!): kotlin.Unit public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.String!): kotlin.Int? - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: kotlin.String!, /*1*/ defaultValue: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: java.util.function.BiFunction!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Int? @@ -79,7 +79,7 @@ public open class MapRemove { public open override /*1*/ /*fake_override*/ fun putIfAbsent(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!): kotlin.Int! public abstract override /*1*/ /*fake_override*/ fun remove(/*0*/ key: kotlin.String!): kotlin.Int? public open fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean - @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ /*isHiddenToOvercomeSignatureClash*/ fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean + @kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ /*isHiddenToOvercomeSignatureClash*/ fun remove(/*0*/ key: kotlin.String!, /*1*/ value: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun replace(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!): kotlin.Int! public open override /*1*/ /*fake_override*/ fun replace(/*0*/ p0: kotlin.String!, /*1*/ p1: kotlin.Int!, /*2*/ p2: kotlin.Int!): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun replaceAll(/*0*/ p0: java.util.function.BiFunction!): kotlin.Unit diff --git a/core/builtins/native/kotlin/Collections.kt b/core/builtins/native/kotlin/Collections.kt index 4f39294b1d8..b3de792c089 100644 --- a/core/builtins/native/kotlin/Collections.kt +++ b/core/builtins/native/kotlin/Collections.kt @@ -303,6 +303,7 @@ public interface Map { * * @since JDK 1.8 */ + @SinceKotlin("1.1") @PlatformDependent public fun getOrDefault(key: K, defaultValue: @UnsafeVariance V): V { // See default implementation in JDK sources @@ -368,6 +369,7 @@ public interface MutableMap : Map { * * @return true if entry was removed */ + @SinceKotlin("1.1") @PlatformDependent public fun remove(key: K, value: V): Boolean { // See default implementation in JDK sources diff --git a/core/builtins/src/kotlin/Coroutines.kt b/core/builtins/src/kotlin/Coroutines.kt index 7dc8d898cbb..bcda4195c2e 100644 --- a/core/builtins/src/kotlin/Coroutines.kt +++ b/core/builtins/src/kotlin/Coroutines.kt @@ -19,6 +19,7 @@ package kotlin.coroutines /** * Interface representing a continuation after a suspension point that returns value of type `P` */ +@SinceKotlin("1.1") public interface Continuation { /** * Resumes the execution of the corresponding coroutine passing `data` as the return value of the last suspension point @@ -36,6 +37,7 @@ public interface Continuation { /** * Specifies that suspend extensions with a receiver based on corresponding controller class are allowed to be declared */ +@SinceKotlin("1.1") @Target(AnnotationTarget.CLASS) @Retention(AnnotationRetention.BINARY) public annotation class AllowSuspendExtensions diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/localVariableReferences.kt b/core/runtime.jvm/src/kotlin/jvm/internal/localVariableReferences.kt index d9484835600..6fbd4ca8522 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/localVariableReferences.kt +++ b/core/runtime.jvm/src/kotlin/jvm/internal/localVariableReferences.kt @@ -22,6 +22,7 @@ private fun notSupportedError(): Nothing { throw kotlin.UnsupportedOperationException("Not supported for local property reference.") } +@SinceKotlin("1.1") open class LocalVariableReference : PropertyReference0() { override fun getOwner(): KDeclarationContainer = notSupportedError() @@ -29,6 +30,7 @@ open class LocalVariableReference : PropertyReference0() { } +@SinceKotlin("1.1") open class MutableLocalVariableReference : MutablePropertyReference0() { override fun getOwner(): KDeclarationContainer = notSupportedError()