Drop deprecated -Xexperimental flag from compiler and tests

This commit is contained in:
Mikhail Glukhikh
2021-07-12 19:37:16 +03:00
committed by teamcityserver
parent cbcec8d624
commit 113d2653aa
45 changed files with 25 additions and 344 deletions
-1
View File
@@ -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.
@@ -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
@@ -1,2 +0,0 @@
error: '-Xopt-in=org.test.ExperimentalAPI' has no effect because '-Xexperimental=org.test.ExperimentalAPI' is used
COMPILATION_ERROR
+2 -4
View File
@@ -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
View File
@@ -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
View File
@@ -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
+2 -7
View File
@@ -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
+2 -1
View File
@@ -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
View File
@@ -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
View File
@@ -1,4 +1,3 @@
package org.test
annotation class NotAMarker1
annotation class NotAMarker2
annotation class NotAMarker
+1 -3
View File
@@ -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
View File
@@ -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
View File
@@ -1,2 +1 @@
warning: '-Xexperimental' is deprecated and will be removed in a future release
OK
+1 -2
View File
@@ -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
View File
@@ -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
View File
@@ -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.
@@ -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()
}
@@ -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()
}
-12
View File
@@ -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