[FIR] Add more type params checks
VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED
This commit is contained in:
committed by
TeamCityServer
parent
fb1b253d1e
commit
14fe570a00
-17
@@ -1,17 +0,0 @@
|
||||
fun <in T> f() {
|
||||
|
||||
}
|
||||
|
||||
fun <out T> g() {
|
||||
|
||||
}
|
||||
|
||||
fun <out T, in X, Y> h() {
|
||||
|
||||
}
|
||||
|
||||
val <out T> T.x: Int
|
||||
get() = 1
|
||||
|
||||
val <in T> T.y: Int
|
||||
get() = 1
|
||||
compiler/testData/diagnostics/tests/declarationChecks/VarianceOnFunctionAndPropertyTypeParameters.kt
Vendored
+2
-1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
fun <<!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>in<!> T> f() {
|
||||
|
||||
}
|
||||
@@ -14,4 +15,4 @@ val <<!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>out<!> T> T.x: Int
|
||||
get() = 1
|
||||
|
||||
val <<!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>in<!> T> T.y: Int
|
||||
get() = 1
|
||||
get() = 1
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ fun test3() {
|
||||
}
|
||||
|
||||
class A {
|
||||
fun <out <!REPEATED_MODIFIER!>out<!> T> bar() {
|
||||
fun <<!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>out<!> <!REPEATED_MODIFIER!>out<!> T> bar() {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
|
||||
|
||||
typealias R<T: List<R>> = List<T>
|
||||
typealias R<T: <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>List<R><!>> = List<T>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// !DIAGNOSTICS: -UNUSED_TYPEALIAS_PARAMETER
|
||||
|
||||
typealias WithVariance<<!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>in<!> X, <!VARIANCE_ON_TYPE_PARAMETER_NOT_ALLOWED!>out<!> Y> = Int
|
||||
typealias WithBounds1<T : T> = Int
|
||||
typealias WithBounds2<X : Y, Y : X> = Int
|
||||
typealias WithBounds1<T : <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>T<!>> = Int
|
||||
typealias WithBounds2<X : <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>Y<!>, Y : <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>X<!>> = Int
|
||||
|
||||
typealias WithBounds3<X> <!SYNTAX!>where X : Any<!> = Int
|
||||
|
||||
|
||||
Reference in New Issue
Block a user