diff --git a/idea/testData/codegen/classes/classObjectMethod.jet b/idea/testData/codegen/classes/classObjectMethod.jet new file mode 100644 index 00000000000..c4a67260553 --- /dev/null +++ b/idea/testData/codegen/classes/classObjectMethod.jet @@ -0,0 +1,13 @@ +abstract open class Default { + fun defaultValue(): Int +} + +class MyInt() { + class object : Default { + override fun defaultValue(): Int = 610 + } +} + +fun toDefault where class object T: Default(t: T) = T.defaultValue() + +fun box(): String = if (toDefault(MyInt()) == 610) "OK" else "fail" diff --git a/idea/tests/org/jetbrains/jet/codegen/ClassGenTest.java b/idea/tests/org/jetbrains/jet/codegen/ClassGenTest.java index 4dbcc712247..5c361782df3 100644 --- a/idea/tests/org/jetbrains/jet/codegen/ClassGenTest.java +++ b/idea/tests/org/jetbrains/jet/codegen/ClassGenTest.java @@ -119,4 +119,8 @@ public class ClassGenTest extends CodegenTestCase { public void testClassObject() throws Exception { blackBoxFile("classes/classObject.jet"); } + + public void testClassObjectMethod() throws Exception { + blackBoxFile("classes/classObjectMethod.jet"); + } }