e6b5cb5216
Update includes:
- Changing syntax of `OI/`NI` tags from `<!NI;TAG!>` to `<!TAG{NI}!>`
- Fix some incorrect directives
- Change order of diagnostics in some places
- Remove ignored diagnostics from FIR test data (previously `DIAGNOSTICS` didn't work)
- Update FIR dumps in some places and add `FIR_IDENTICAL` if needed
- Replace all JAVAC_SKIP with SKIP_JAVAC directive
16 lines
405 B
Kotlin
Vendored
16 lines
405 B
Kotlin
Vendored
// !WITH_NEW_INFERENCE
|
|
fun trans(n: Int, f: () -> Boolean) = if (f()) n else null
|
|
|
|
fun foo() {
|
|
var i: Int? = 5
|
|
if (i != null) {
|
|
fun can(): Boolean {
|
|
i = null
|
|
return true
|
|
}
|
|
<!SMARTCAST_IMPOSSIBLE!>i<!>.hashCode()
|
|
trans(<!SMARTCAST_IMPOSSIBLE{NI}, SMARTCAST_IMPOSSIBLE!>i<!>, ::can)
|
|
<!SMARTCAST_IMPOSSIBLE!>i<!>.hashCode()
|
|
}
|
|
}
|