[FIR] do not use FirValueParameter for function type parameter
As it is a different abstraction, introduced FirFunctionTypeParameter instead Also, fix syntax checkers for function type parameter ^KT-55035 fixed
This commit is contained in:
+2
-2
@@ -20,10 +20,10 @@ package boundsWithSubstitutors
|
||||
|
||||
class Pair<A, B>
|
||||
|
||||
abstract class C<T : B<<!UPPER_BOUND_VIOLATED!>Int<!>>, X : (B<<!UPPER_BOUND_VIOLATED, UPPER_BOUND_VIOLATED!>Char<!>>) -> Pair<B<<!UPPER_BOUND_VIOLATED!>Any<!>>, B<A>>>() : B<<!UPPER_BOUND_VIOLATED!>Any<!>>() { // 2 errors
|
||||
abstract class C<T : B<<!UPPER_BOUND_VIOLATED!>Int<!>>, X : (B<<!UPPER_BOUND_VIOLATED!>Char<!>>) -> Pair<B<<!UPPER_BOUND_VIOLATED!>Any<!>>, B<A>>>() : B<<!UPPER_BOUND_VIOLATED!>Any<!>>() { // 2 errors
|
||||
val a = B<<!UPPER_BOUND_VIOLATED!>Char<!>>() // error
|
||||
|
||||
abstract val x : (B<<!UPPER_BOUND_VIOLATED, UPPER_BOUND_VIOLATED!>Char<!>>) -> B<<!UPPER_BOUND_VIOLATED!>Any<!>>
|
||||
abstract val x : (B<<!UPPER_BOUND_VIOLATED!>Char<!>>) -> B<<!UPPER_BOUND_VIOLATED!>Any<!>>
|
||||
}
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -17,5 +17,5 @@ class A : (Int)->Unit {
|
||||
}
|
||||
|
||||
val prop: (x: Int = <!UNSUPPORTED!>0<!>)->Unit
|
||||
get(): (x: Int = <!UNSUPPORTED!>0<!>)->Unit = {}
|
||||
get(): (x: Int = <!UNSUPPORTED!>0<!>)->Unit = {}
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
package typeReferenceError
|
||||
|
||||
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Pair<!><<!SYNTAX!><!>:<!UNRESOLVED_REFERENCE!>(val c: <!SYNTAX!><!SYNTAX!><!>fun<!><!SYNTAX!><!> <!UNRESOLVED_REFERENCE!>main<!><!>()
|
||||
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Pair<!><<!SYNTAX!><!>:<!UNRESOLVED_REFERENCE!>(<!UNSUPPORTED!>val<!> c: <!SYNTAX!><!SYNTAX!><!>fun<!><!SYNTAX!><!> <!UNRESOLVED_REFERENCE!>main<!><!>()
|
||||
|
||||
-52
@@ -1,52 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
fun f(vararg x: Int) {}
|
||||
|
||||
val inVal: (<!WRONG_MODIFIER_CONTAINING_DECLARATION!>vararg<!> x: Int)->Unit = {}
|
||||
|
||||
fun inParam(fn: (<!WRONG_MODIFIER_CONTAINING_DECLARATION!>vararg<!> x: Int)->Unit) {}
|
||||
|
||||
fun inParamNested(fn1: (fn2: (<!WRONG_MODIFIER_CONTAINING_DECLARATION!>vararg<!> n: Int)->Unit)->Unit) {}
|
||||
|
||||
fun inReturn(): (vararg x: Int)->Unit = {}
|
||||
|
||||
class A : (vararg Int)->Unit {
|
||||
override fun invoke(p1: Int) {
|
||||
var lambda: (vararg x: Int)->Unit = {}
|
||||
}
|
||||
|
||||
val prop: (vararg x: Int)->Unit
|
||||
get(): (<!WRONG_MODIFIER_CONTAINING_DECLARATION!>vararg<!> x: Int)->Unit = {}
|
||||
}
|
||||
|
||||
val allProhibited: (<!REDUNDANT_MODIFIER, WRONG_MODIFIER_TARGET!>abstract<!>
|
||||
<!WRONG_MODIFIER_TARGET!>annotation<!>
|
||||
<!WRONG_MODIFIER_TARGET!>companion<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>const<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>crossinline<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>data<!>
|
||||
<!WRONG_MODIFIER_TARGET!>enum<!>
|
||||
<!WRONG_MODIFIER_TARGET!>external<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>final<!>
|
||||
<!WRONG_MODIFIER_TARGET!>in<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>inline<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>inner<!>
|
||||
<!WRONG_MODIFIER_TARGET!>internal<!>
|
||||
<!WRONG_MODIFIER_TARGET!>lateinit<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>noinline<!>
|
||||
<!INCOMPATIBLE_MODIFIERS, REDUNDANT_MODIFIER!>open<!>
|
||||
<!WRONG_MODIFIER_TARGET!>operator<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>out<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>override<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>private<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>protected<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>public<!>
|
||||
<!WRONG_MODIFIER_TARGET!>reified<!>
|
||||
<!INCOMPATIBLE_MODIFIERS!>sealed<!>
|
||||
<!WRONG_MODIFIER_TARGET!>tailrec<!>
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>vararg<!>
|
||||
|
||||
x: Int)->Unit = {}
|
||||
|
||||
val valProhibited: (val x: Int)->Unit = {}
|
||||
val varProhibited: (var x: Int)->Unit = {}
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
fun f(vararg x: Int) {}
|
||||
@@ -49,4 +50,4 @@ val allProhibited: (<!UNSUPPORTED!>abstract<!>
|
||||
x: Int)->Unit = {}
|
||||
|
||||
val valProhibited: (<!UNSUPPORTED!>val<!> x: Int)->Unit = {}
|
||||
val varProhibited: (<!UNSUPPORTED!>var<!> x: Int)->Unit = {}
|
||||
val varProhibited: (<!UNSUPPORTED!>var<!> x: Int)->Unit = {}
|
||||
|
||||
Reference in New Issue
Block a user