Do not compute stubs when building DefaultImpls light classes

Do not build stubs when computing inner classes of a light class
This should implicitly fix a deadlock reported in KT-9907 and KT-9811
This commit is contained in:
Pavel V. Talanov
2015-11-09 20:56:27 +03:00
parent bff7ff0c5d
commit de4ea45f20
7 changed files with 67 additions and 19 deletions
@@ -0,0 +1,11 @@
public class Testing {
public static void test() {
DefaultImpl<caret>
}
}
// EXIST: { lookupString: "DefaultImpls", tailText: " (defaultImpls.NonAbstractFun)" }
// EXIST: { lookupString: "DefaultImpls", tailText: " (defaultImpls.NonAbstractFunWithExpressionBody)" }
// EXIST: { lookupString: "DefaultImpls", tailText: " (defaultImpls.NonAbstractProperty)" }
// EXIST: { lookupString: "DefaultImpls", tailText: " (defaultImpls.NonAbstractPropertyWithBody)" }
// ABSENT: { lookupString: "DefaultImpls", tailText: " (defaultImpls.AllAbstract)" }
@@ -0,0 +1,30 @@
package defaultImpls;
interface AllAbstract {
val c: Int
fun <T> f(t: T): T
val g: Int
var g2: String
}
interface NonAbstractFun {
fun f() {
}
}
interface NonAbstractFunWithExpressionBody {
fun f() = 3
}
interface NonAbstractProperty {
val c: Int get() = 3
}
interface NonAbstractPropertyWithBody {
val c: Int get() {
return 3
}
}