Revert "[FE 1.0] Take care callable reference candidates with recursive candidate return type"

This reverts commit d04beaa8bb49c99ceb993f3f7b32169c393b39f4.
This commit is contained in:
Victor Petukhov
2022-05-24 16:00:46 +02:00
committed by teamcity
parent 06deaed3d5
commit 51551998c7
32 changed files with 48 additions and 212 deletions
+1 -1
View File
@@ -26,7 +26,7 @@ infix fun filter(filter: (R, Any?) -> Boolean): Delegate<R, T>
class GitLabChangesProcessor: DatabaseEntity {
var buildProcessors by <!DEBUG_INFO_EXPRESSION_TYPE("Delegate<GitLabChangesProcessor, kotlin.collections.MutableCollection<GitLabBuildProcessor>>"), TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR!>child_many(
GitLabBuildProcessor::class.java,
<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR, TYPE_MISMATCH!>GitLabBuildProcessor::<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>processor<!><!>
GitLabBuildProcessor::processor
)<!>
}
@@ -27,7 +27,7 @@ infix fun filter(filter: (R, Any?) -> Boolean): Delegate<R, T>
class GitLabChangesProcessor: DatabaseEntity {
var buildProcessors by <!DEBUG_INFO_EXPRESSION_TYPE("Delegate<GitLabChangesProcessor, kotlin.collections.MutableCollection<GitLabBuildProcessor>>"), TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR!>child_many(
GitLabBuildProcessor::class.java,
<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR, TYPE_MISMATCH!>GitLabBuildProcessor::<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>processor<!><!>
GitLabBuildProcessor::processor
)<!>
}
@@ -1,11 +0,0 @@
// WITH_STDLIB
abstract class Foo {
}
// ERROR: Type checking has run into a recursive problem. Easiest workaround: specify types of your declarations explicitly
fun Foo.contains(vararg xs: Int) = xs.forEach(this::contains)
fun box(): String {
return "OK"
}
@@ -1,11 +0,0 @@
// WITH_STDLIB
abstract class Foo {
}
// ERROR: Type checking has run into a recursive problem. Easiest workaround: specify types of your declarations explicitly
fun Foo.contains(vararg xs: Int) = xs.forEach(<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR, TYPE_MISMATCH!>this::<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>contains<!><!>)
fun box(): String {
return "OK"
}
@@ -1,11 +0,0 @@
package
public fun box(): kotlin.String
public fun Foo.contains(/*0*/ vararg xs: kotlin.Int /*kotlin.IntArray*/): kotlin.Unit
public abstract class Foo {
public constructor Foo()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -0,0 +1,31 @@
// FULL_JDK
// WITH_STDLIB
// FILE: Schematic.kt
class Schematic {
var name: String? = null
var error: String? = null
override fun toString(): String {
return name!!
}
}
// FILE: SortedListModel.java
import java.util.Comparator;
public class SortedListModel<T> {
public SortedListModel(Comparator<? super T> comparator) {
}
}
// FILE: main.kt
val model = SortedListModel<Schematic>(Comparator.comparing { b1: Schematic ->
when {
b1.error != null -> 2
b1.name!!.contains(":") -> 1
else -> 0
}
}.thenComparing { b1: Schematic -> b1.name!! })
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
// FULL_JDK
// WITH_STDLIB