[NI] Turn off KnownTypeParameterSubstitutor for NI

The main consequence of it is that TYPE_MISMATCH range for control
structures became wider.

Also, for extra safety, don't change behaviour of OI.
This commit is contained in:
Dmitry Savvinov
2017-12-07 13:18:24 +03:00
parent 4ed6928e6b
commit 33f9576dd1
15 changed files with 53 additions and 49 deletions
@@ -1,3 +1,5 @@
// !WITH_NEW_INFERENCE
fun bar(x: Int): Int = x + 1
fun foo() {
@@ -5,6 +7,6 @@ fun foo() {
val <!UNUSED_VARIABLE!>a<!> = object {
fun baz() = bar(if (x == null) 0 else <!DEBUG_INFO_SMARTCAST!>x<!>)
fun quux(): Int = if (x == null) <!TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!> else <!DEBUG_INFO_SMARTCAST!>x<!>
fun quux(): Int = <!NI;TYPE_MISMATCH!>if (x == null) <!OI;TYPE_MISMATCH, DEBUG_INFO_CONSTANT!>x<!> else <!DEBUG_INFO_SMARTCAST!>x<!><!>
}
}