[NI] Fix substitution for receiver when resolving constructor super call

This commit is contained in:
Mikhail Zarechenskiy
2018-01-21 01:32:31 +03:00
parent 2a0bb68e1c
commit 0e31162df4
6 changed files with 11 additions and 30 deletions
@@ -1,4 +1,3 @@
// !WITH_NEW_INFERENCE
// !DIAGNOSTICS: -UNUSED_VARIABLE
open class Super<T> {
@@ -8,7 +7,7 @@ open class Super<T> {
}
class Sub<T1>(): Super<T1>() {
inner class SubInner : Super<T1>.<!NI;DEBUG_INFO_UNRESOLVED_WITH_TARGET, NI;UNRESOLVED_REFERENCE_WRONG_RECEIVER!>Inner<!>() { // 'Inner' is unresolved
inner class SubInner : Super<T1>.Inner() { // 'Inner' is unresolved
// Also, T1 is not resolved to anything, and not marked as resolved
init {
val x: Super<T1>.Inner = this // T1 is not resolved to anything