[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:
Mikhail Glukhikh
2020-07-22 10:29:59 +03:00
parent c744dfba9c
commit 0804c6a0f3
196 changed files with 774 additions and 484 deletions
@@ -15,7 +15,7 @@ package other
import test.Test.*
abstract class Factory {
abstract fun createTest(): Test
abstract fun createTest(): <!OTHER_ERROR!>Test<!>
abstract fun createObj(): O
@@ -28,7 +28,7 @@ FILE: main.kt
super<R|kotlin/Any|>()
}
public abstract fun createTest(): R|ERROR CLASS: Symbol not found, for `Test`|
public abstract fun createTest(): <ERROR TYPE REF: Symbol not found, for `Test`>
public abstract fun createObj(): R|test/Test.O|