Change object resolution strategy in lazy resolve

This commit is contained in:
Alexander Udalov
2013-11-12 20:02:12 +04:00
parent ae116c6d9a
commit 26bd1ff189
16 changed files with 226 additions and 60 deletions
@@ -1,7 +1,5 @@
package test
test.A(a = 12.toInt(): jet.Int, c = "Hello": jet.String) internal val SomeObject: test.SomeObject
internal final annotation class A : jet.Annotation {
/*primary*/ public constructor A(/*0*/ a: jet.Int = ..., /*1*/ b: jet.String = ..., /*2*/ c: jet.String)
internal final val a: jet.Int
@@ -11,4 +9,8 @@ internal final annotation class A : jet.Annotation {
test.A(a = 12.toInt(): jet.Int, c = "Hello": jet.String) internal object SomeObject {
/*primary*/ private constructor SomeObject()
public class object <class-object-for-SomeObject> : test.SomeObject {
/*primary*/ private constructor <class-object-for-SomeObject>()
}
}
@@ -1,8 +1,11 @@
package test
[ERROR : Unresolved annotation type: BadAnnotation]() internal val SomeObject: test.SomeObject
internal val some: test.SomeObject
[ERROR : Unresolved annotation type: BadAnnotation]() internal object SomeObject {
/*primary*/ private constructor SomeObject()
public class object <class-object-for-SomeObject> : test.SomeObject {
/*primary*/ private constructor <class-object-for-SomeObject>()
}
}
@@ -1,6 +1,5 @@
package test
test.BadAnnotation(s = 1.toInt(): jet.Int) internal val SomeObject: test.SomeObject
internal val some: test.SomeObject
internal final annotation class BadAnnotation : jet.Annotation {
@@ -9,4 +8,8 @@ internal final annotation class BadAnnotation : jet.Annotation {
test.BadAnnotation(s = 1.toInt(): jet.Int) internal object SomeObject {
/*primary*/ private constructor SomeObject()
public class object <class-object-for-SomeObject> : test.SomeObject {
/*primary*/ private constructor <class-object-for-SomeObject>()
}
}
@@ -2,10 +2,14 @@ package test
internal final class A {
/*primary*/ public constructor A()
internal final val B: test.A.B
internal object B {
/*primary*/ private constructor B()
internal final fun foo(/*0*/ a: jet.Int): jet.String
public class object <class-object-for-B> : test.A.B {
/*primary*/ private constructor <class-object-for-B>()
internal final override /*1*/ /*fake_override*/ fun foo(/*0*/ a: jet.Int): jet.String
}
}
}
@@ -1,8 +1,11 @@
package test
internal val SomeObject: test.SomeObject
internal object SomeObject {
/*primary*/ private constructor SomeObject()
internal final fun test(/*0*/ a: jet.Int): jet.Int
public class object <class-object-for-SomeObject> : test.SomeObject {
/*primary*/ private constructor <class-object-for-SomeObject>()
internal final override /*1*/ /*fake_override*/ fun test(/*0*/ a: jet.Int): jet.Int
}
}
@@ -1,7 +1,9 @@
package test
internal val Bar: test.Bar
internal object Bar {
/*primary*/ private constructor Bar()
public class object <class-object-for-Bar> : test.Bar {
/*primary*/ private constructor <class-object-for-Bar>()
}
}