Disconnect loops between upper bounds of type parameters

#KT-9759 Fixed
This commit is contained in:
Denis Zharkov
2015-10-27 16:06:32 +03:00
parent 9b4ad1466a
commit b6f724cf58
25 changed files with 279 additions and 51 deletions
@@ -0,0 +1,7 @@
fun <<!CYCLIC_GENERIC_UPPER_BOUND!>T : F?<!>, F : T?> foo1() {}
fun <T : F?, <!CYCLIC_GENERIC_UPPER_BOUND!>F : E<!>, E : F?> foo2() {}
fun <<!CYCLIC_GENERIC_UPPER_BOUND!>T<!>, F> foo3() where T : F?, F : T {}
fun <T, <!CYCLIC_GENERIC_UPPER_BOUND!>F<!>, E> foo4() where T : F?, F : E, E : F? {}