Allow resolve class declarations in class objects

Use INACCESSIBLE_OUTER_CLASS_EXPRESSION error for marking already resolved elements

 #KT-3261 Fixed
This commit is contained in:
Nikolay Krasko
2013-06-04 16:18:29 +04:00
parent a04ecb185e
commit 37cd7eb1ba
24 changed files with 239 additions and 51 deletions
@@ -0,0 +1,26 @@
open class SomeClass<T>
class TestSome<P> {
class object : SomeClass<<!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>P<!>>() {
}
}
class Test {
class object : <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>InnerClass()<!> {
val a = object: <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>InnerClass()<!> {
}
fun more(): InnerClass {
val b = <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>InnerClass()<!>
val <!UNUSED_VARIABLE!>testVal<!> = <!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>inClass<!>
<!INACCESSIBLE_OUTER_CLASS_EXPRESSION!>foo()<!>
return b
}
}
val inClass = 12
fun foo() {}
open inner class InnerClass
}