这是 Kotlin REPL 的错误吗?

Is this a bug of Kotlin REPL?

我可以像这样(递归地)在 Kotlin REPL 中定义一个值而不会出现错误:

val s: String = s

现在我得到了一个类型为 NotNull 但值为 null 的 's'。
我可以用 NPE 对这个 NotNull 值做一些事情:

>>> val s: String = s

>>> s.length
java.lang.NullPointerException

你可以在你自己的 Kotlin REPL 上试一试,每次都有效。

我正在使用 Kotlin 版本 1.1.2-3。

是的,是REPL的bug

在 REAL Kotlin 文件中,它会抱怨为 "Unresolve reference"

抱歉,我不能 post img,但你可以试试你的 IDE。

我正在使用 IntelliJ-IDEA 2017.1.3

是的,这是一个错误。

val s: String = s
print(s.length)

此代码编译成功,但在运行时出现错误。

Error: Unresolved reference: s