Drop deprecated -Xexperimental flag from compiler and tests
This commit is contained in:
committed by
teamcityserver
parent
cbcec8d624
commit
113d2653aa
-1
@@ -50,7 +50,6 @@ where advanced options include:
|
||||
-Xdump-perf=<path> Dump detailed performance statistics to the specified file
|
||||
-Xeffect-system Enable experimental language feature: effect system
|
||||
-Xexpect-actual-linker Enable experimental expect/actual linker
|
||||
-Xexperimental=<fq.name> Enable and propagate usages of experimental API for marker annotation with the given fully qualified name
|
||||
-Xexplicit-api={strict|warning|disable}
|
||||
Force compiler to report errors on all public API declarations without explicit visibility or return type.
|
||||
Use 'warning' level to issue warnings instead of errors.
|
||||
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
$TESTDATA_DIR$/experimentalAndUseExperimentalWithSameAnnotation.kt
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
-opt-in
|
||||
kotlin.RequiresOptIn
|
||||
-opt-in
|
||||
org.test.ExperimentalAPI
|
||||
-Xexperimental=org.test.ExperimentalAPI
|
||||
@@ -1,4 +0,0 @@
|
||||
package org.test
|
||||
|
||||
@RequiresOptIn
|
||||
annotation class ExperimentalAPI
|
||||
-2
@@ -1,2 +0,0 @@
|
||||
error: '-Xopt-in=org.test.ExperimentalAPI' has no effect because '-Xexperimental=org.test.ExperimentalAPI' is used
|
||||
COMPILATION_ERROR
|
||||
+2
-4
@@ -2,7 +2,5 @@ $TESTDATA_DIR$/experimentalDeprecated.kt
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
-opt-in=kotlin.RequiresOptIn
|
||||
-Xexperimental=org.test.Error1
|
||||
-Xexperimental=org.test.Hidden1
|
||||
-opt-in=org.test.Error2
|
||||
-opt-in=org.test.Hidden2
|
||||
-opt-in=org.test.Error
|
||||
-opt-in=org.test.Hidden
|
||||
|
||||
+4
-12
@@ -1,17 +1,9 @@
|
||||
package org.test
|
||||
|
||||
@Deprecated("Error1", level = DeprecationLevel.ERROR)
|
||||
@Deprecated("Error", level = DeprecationLevel.ERROR)
|
||||
@RequiresOptIn
|
||||
annotation class Error1
|
||||
annotation class Error
|
||||
|
||||
@Deprecated("Error2", level = DeprecationLevel.ERROR)
|
||||
@Deprecated("Hidden", level = DeprecationLevel.HIDDEN)
|
||||
@RequiresOptIn
|
||||
annotation class Error2
|
||||
|
||||
@Deprecated("Hidden1", level = DeprecationLevel.HIDDEN)
|
||||
@RequiresOptIn
|
||||
annotation class Hidden1
|
||||
|
||||
@Deprecated("Hidden2", level = DeprecationLevel.HIDDEN)
|
||||
@RequiresOptIn
|
||||
annotation class Hidden2
|
||||
annotation class Hidden
|
||||
|
||||
+2
-4
@@ -1,5 +1,3 @@
|
||||
error: opt-in requirement marker org.test.Error1 is deprecated. Error1
|
||||
error: opt-in requirement marker org.test.Hidden1 is deprecated. Hidden1
|
||||
error: opt-in requirement marker org.test.Error2 is deprecated. Error2
|
||||
error: opt-in requirement marker org.test.Hidden2 is deprecated. Hidden2
|
||||
error: opt-in requirement marker org.test.Error is deprecated. Error
|
||||
error: opt-in requirement marker org.test.Hidden is deprecated. Hidden
|
||||
COMPILATION_ERROR
|
||||
|
||||
@@ -3,6 +3,5 @@ $TESTDATA_DIR$/experimentalDeprecatedWarning.kt
|
||||
$TEMP_DIR$
|
||||
-Xopt-in=kotlin.RequiresOptIn
|
||||
-opt-in=kotlin.RequiresOptIn
|
||||
-opt-in=org.test.Warning1
|
||||
-Xexperimental=org.test.Warning2
|
||||
-opt-in=org.test.Warning
|
||||
-Xuse-experimental=org.test.OneMore
|
||||
|
||||
@@ -1,14 +1,9 @@
|
||||
package org.test
|
||||
|
||||
@Deprecated("Warning1", level = DeprecationLevel.WARNING)
|
||||
@Deprecated("Warning", level = DeprecationLevel.WARNING)
|
||||
@RequiresOptIn
|
||||
@Retention(AnnotationRetention.BINARY)
|
||||
annotation class Warning1
|
||||
|
||||
@Deprecated("Warning2", level = DeprecationLevel.WARNING)
|
||||
@RequiresOptIn
|
||||
@Retention(AnnotationRetention.BINARY)
|
||||
annotation class Warning2
|
||||
annotation class Warning
|
||||
|
||||
@RequiresOptIn
|
||||
annotation class OneMore
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
warning: '-Xexperimental' is deprecated and will be removed in a future release
|
||||
warning: '-Xuse-experimental' is deprecated and will be removed in a future release, please use -opt-in instead
|
||||
warning: opt-in requirement marker org.test.Warning2 is deprecated. Warning2
|
||||
warning: opt-in requirement marker org.test.Warning1 is deprecated. Warning1
|
||||
warning: opt-in requirement marker org.test.Warning is deprecated. Warning
|
||||
OK
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
$TESTDATA_DIR$/experimentalIsNotAnnotation.kt
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
-Xexperimental=org.test.NotAnAnnotation1
|
||||
-opt-in
|
||||
org.test.NotAnAnnotation1
|
||||
-opt-in=org.test.NotAnAnnotation2
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
warning: '-Xexperimental' is deprecated and will be removed in a future release
|
||||
warning: class org.test.NotAnAnnotation1 is not an opt-in requirement marker
|
||||
warning: class org.test.NotAnAnnotation2 is not an opt-in requirement marker
|
||||
OK
|
||||
|
||||
+1
-2
@@ -1,5 +1,4 @@
|
||||
$TESTDATA_DIR$/experimentalIsNotMarker.kt
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
-Xexperimental=org.test.NotAMarker1
|
||||
-opt-in=org.test.NotAMarker2
|
||||
-opt-in=org.test.NotAMarker
|
||||
|
||||
+1
-2
@@ -1,4 +1,3 @@
|
||||
package org.test
|
||||
|
||||
annotation class NotAMarker1
|
||||
annotation class NotAMarker2
|
||||
annotation class NotAMarker
|
||||
|
||||
+1
-3
@@ -1,4 +1,2 @@
|
||||
warning: '-Xexperimental' is deprecated and will be removed in a future release
|
||||
warning: class org.test.NotAMarker1 is not an opt-in requirement marker
|
||||
warning: class org.test.NotAMarker2 is not an opt-in requirement marker
|
||||
warning: class org.test.NotAMarker is not an opt-in requirement marker
|
||||
OK
|
||||
|
||||
+1
-1
@@ -2,4 +2,4 @@ $TESTDATA_DIR$/experimentalNested.kt
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
-opt-in=kotlin.RequiresOptIn
|
||||
-Xexperimental=org.test.Outer.Nested
|
||||
-opt-in=org.test.Outer.Nested
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
warning: '-Xexperimental' is deprecated and will be removed in a future release
|
||||
OK
|
||||
|
||||
+1
-2
@@ -4,6 +4,5 @@ $TEMP_DIR$
|
||||
-opt-in
|
||||
org.test.Unresolved1
|
||||
-opt-in
|
||||
org.test.Unresolved3
|
||||
-Xexperimental=org.test.Unresolved2
|
||||
org.test.Unresolved2
|
||||
|
||||
|
||||
+1
-3
@@ -1,5 +1,3 @@
|
||||
warning: '-Xexperimental' is deprecated and will be removed in a future release
|
||||
warning: opt-in requirement marker org.test.Unresolved2 is unresolved. Please make sure it's present in the module dependencies
|
||||
warning: opt-in requirement marker org.test.Unresolved1 is unresolved. Please make sure it's present in the module dependencies
|
||||
warning: opt-in requirement marker org.test.Unresolved3 is unresolved. Please make sure it's present in the module dependencies
|
||||
warning: opt-in requirement marker org.test.Unresolved2 is unresolved. Please make sure it's present in the module dependencies
|
||||
OK
|
||||
|
||||
-1
@@ -160,7 +160,6 @@ where advanced options include:
|
||||
-Xdump-perf=<path> Dump detailed performance statistics to the specified file
|
||||
-Xeffect-system Enable experimental language feature: effect system
|
||||
-Xexpect-actual-linker Enable experimental expect/actual linker
|
||||
-Xexperimental=<fq.name> Enable and propagate usages of experimental API for marker annotation with the given fully qualified name
|
||||
-Xexplicit-api={strict|warning|disable}
|
||||
Force compiler to report errors on all public API declarations without explicit visibility or return type.
|
||||
Use 'warning' level to issue warnings instead of errors.
|
||||
|
||||
-25
@@ -1,25 +0,0 @@
|
||||
// FIR_IDENTICAL
|
||||
// !USE_EXPERIMENTAL: kotlin.RequiresOptIn
|
||||
// !EXPERIMENTAL: api.ExperimentalAPI
|
||||
// MODULE: api
|
||||
// FILE: api.kt
|
||||
|
||||
package api
|
||||
|
||||
@RequiresOptIn
|
||||
@Retention(AnnotationRetention.BINARY)
|
||||
annotation class ExperimentalAPI
|
||||
|
||||
@ExperimentalAPI
|
||||
fun function(): String = ""
|
||||
|
||||
// MODULE: usage(api)
|
||||
// FILE: usage.kt
|
||||
|
||||
package usage
|
||||
|
||||
import api.*
|
||||
|
||||
fun use() {
|
||||
function()
|
||||
}
|
||||
-21
@@ -1,21 +0,0 @@
|
||||
// -- Module: <api> --
|
||||
package
|
||||
|
||||
package api {
|
||||
@api.ExperimentalAPI public fun function(): kotlin.String
|
||||
|
||||
@kotlin.RequiresOptIn @kotlin.annotation.Retention(value = AnnotationRetention.BINARY) public final annotation class ExperimentalAPI : kotlin.Annotation {
|
||||
public constructor ExperimentalAPI()
|
||||
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
|
||||
}
|
||||
}
|
||||
|
||||
// -- Module: <usage> --
|
||||
package
|
||||
|
||||
package usage {
|
||||
public fun use(): kotlin.Unit
|
||||
}
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
package lib
|
||||
|
||||
@RequiresOptIn
|
||||
annotation class ExperimentalAPI
|
||||
|
||||
class Foo
|
||||
|
||||
fun bar() {}
|
||||
@@ -1,7 +0,0 @@
|
||||
compiler/testData/experimental/jsExperimentalModule/usage.kt:5:15: error: this declaration is experimental and its usage must be marked with '@lib.ExperimentalAPI' or '@OptIn(lib.ExperimentalAPI::class)'
|
||||
fun fail(foo: Foo) {
|
||||
^
|
||||
compiler/testData/experimental/jsExperimentalModule/usage.kt:6:5: error: this declaration is experimental and its usage must be marked with '@lib.ExperimentalAPI' or '@OptIn(lib.ExperimentalAPI::class)'
|
||||
bar()
|
||||
^
|
||||
COMPILATION_ERROR
|
||||
@@ -1,12 +0,0 @@
|
||||
package usage
|
||||
|
||||
import lib.*
|
||||
|
||||
fun fail(foo: Foo) {
|
||||
bar()
|
||||
}
|
||||
|
||||
@ExperimentalAPI
|
||||
fun ok(foo: Foo) {
|
||||
bar()
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
package lib
|
||||
|
||||
@RequiresOptIn
|
||||
annotation class ExperimentalAPI
|
||||
|
||||
class Foo
|
||||
|
||||
fun bar() {}
|
||||
@@ -1,7 +0,0 @@
|
||||
compiler/testData/experimental/jvmExperimentalModule/usage.kt:5:15: error: this declaration is experimental and its usage must be marked with '@lib.ExperimentalAPI' or '@OptIn(lib.ExperimentalAPI::class)'
|
||||
fun fail(foo: Foo) {
|
||||
^
|
||||
compiler/testData/experimental/jvmExperimentalModule/usage.kt:6:5: error: this declaration is experimental and its usage must be marked with '@lib.ExperimentalAPI' or '@OptIn(lib.ExperimentalAPI::class)'
|
||||
bar()
|
||||
^
|
||||
COMPILATION_ERROR
|
||||
@@ -1,12 +0,0 @@
|
||||
package usage
|
||||
|
||||
import lib.*
|
||||
|
||||
fun fail(foo: Foo) {
|
||||
bar()
|
||||
}
|
||||
|
||||
@ExperimentalAPI
|
||||
fun ok(foo: Foo) {
|
||||
bar()
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package org.foo
|
||||
|
||||
@RequiresOptIn
|
||||
annotation class A
|
||||
|
||||
class B {
|
||||
@RequiresOptIn
|
||||
annotation class C
|
||||
}
|
||||
|
||||
@RequiresOptIn(level = RequiresOptIn.Level.ERROR)
|
||||
annotation class D
|
||||
@@ -1,2 +0,0 @@
|
||||
@org/foo/A
|
||||
@org/foo/B.C
|
||||
Reference in New Issue
Block a user