Take imported from object descriptor into account in pseudocode

So #KT-15566 Fixed
This commit is contained in:
Mikhail Glukhikh
2017-04-21 16:57:39 +03:00
committed by Mikhail Glukhikh
parent 056eebf69c
commit 14e798a1fc
4 changed files with 104 additions and 1 deletions
@@ -0,0 +1,35 @@
// See KT-15566
import DefaultHttpClient.client
interface HttpClient
class HttpClientImpl : HttpClient
// Below we should have initialization error for both (!) delegates
object DefaultHttpClient : HttpClient by <!UNINITIALIZED_VARIABLE!>client<!> {
val client = HttpClientImpl()
}
object DefaultHttpClientWithGetter : HttpClient by client {
val client get() = HttpClientImpl()
}
object DefaultHttpClientWithFun : HttpClient by fClient() {
}
private fun fClient() = HttpClientImpl()
private fun <T> lazy(init: () -> T): kotlin.<!UNRESOLVED_REFERENCE!>Lazy<!><T> {
init()
null!!
}
object DefaultHttpClientWithBy : HttpClient by client {
val client by lazy { HttpClientImpl() }
}
object DefaultFqHttpClient : HttpClient by DefaultFqHttpClient.<!UNINITIALIZED_VARIABLE!>client<!> {
val client = HttpClientImpl()
}