Implicit Nothing? type: don't report when declaration overrides nullable nothing type

#KT-30481 Fixed
This commit is contained in:
Toshiaki Kameyama
2019-04-09 12:09:43 +09:00
committed by Mikhail Glukhikh
parent cf4471ba53
commit 14259ca9e0
17 changed files with 93 additions and 17 deletions
@@ -0,0 +1,7 @@
abstract class Parent {
protected abstract fun foo(): String?
}
class Child : Parent() {
override fun <caret>foo() = null
}
@@ -0,0 +1,7 @@
abstract class Parent {
protected abstract fun foo(): String?
}
class Child : Parent() {
override fun foo(): Nothing? = null
}
@@ -0,0 +1,9 @@
// PROBLEM: none
abstract class Parent {
protected abstract fun foo(): Nothing?
}
class Child : Parent() {
override fun <caret>foo() = null
}
@@ -0,0 +1,9 @@
// PROBLEM: none
abstract class Parent {
abstract val foo: Nothing?
}
class Child : Parent() {
override val <caret>foo = null
}
@@ -0,0 +1,7 @@
abstract class Parent {
abstract val foo: Int?
}
class Child : Parent() {
override val <caret>foo = null
}
@@ -0,0 +1,7 @@
abstract class Parent {
abstract val foo: Int?
}
class Child : Parent() {
override val foo: Nothing? = null
}