[FIR] Introduce TYPE_ARGUMENTS_NOT_ALLOWED & some other type errors
This commit introduces several different things, in particular: - check type arguments in expressions - new TypeArgumentList node to deal with diagnostic source - ConeDiagnostic was moved to fir:cones - ConeIntermediateDiagnostic to use in inference (?) without reporting - detailed diagnostics on error type
This commit is contained in:
@@ -50,13 +50,13 @@ class CG : G<Int> {
|
||||
fun test() {
|
||||
super<G>.foo() // OK
|
||||
super<G<Int>>.foo() // Warning
|
||||
super<G<E>>.foo() // Error
|
||||
super<G<E>>.<!UNRESOLVED_REFERENCE!>foo<!>() // Error
|
||||
super<G<String>>.foo() // Error
|
||||
}
|
||||
}
|
||||
|
||||
// The case when no supertype is resolved
|
||||
class ERROR<E>() : UR {
|
||||
class ERROR<E>() : <!OTHER_ERROR!>UR<!> {
|
||||
|
||||
fun test() {
|
||||
super.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ interface Interface {
|
||||
get() = 222
|
||||
}
|
||||
|
||||
class ClassDerivedFromUnresolved : Base(), Interface, Unresolved {
|
||||
class ClassDerivedFromUnresolved : Base(), Interface, <!OTHER_ERROR!>Unresolved<!> {
|
||||
override fun foo() {}
|
||||
override fun bar() {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user