[FIR] Report MIXING_SUSPEND_AND_NON_SUSPEND_SUPERTYPES
^KT-59367 Fixed
This commit is contained in:
committed by
Space Team
parent
b3e4099703
commit
f674529558
-18
@@ -1,18 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
import kotlin.reflect.*
|
||||
|
||||
class C: KSuspendFunction0<Unit>, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface I: KSuspendFunction0<Unit>, () -> Unit {
|
||||
}
|
||||
|
||||
object O: KSuspendFunction0<Unit>, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
-29
@@ -1,29 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
import kotlin.reflect.*
|
||||
|
||||
abstract class CSuper: () -> Unit
|
||||
|
||||
class C: CSuper(), KSuspendFunction0<Unit> {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O: CSuper(), KSuspendFunction0<Unit> {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
abstract class SCSuper: KSuspendFunction0<Unit>
|
||||
|
||||
class C1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
import kotlin.reflect.*
|
||||
|
||||
fun interface FISuper: () -> Unit
|
||||
|
||||
class C: KSuspendFunction0<Unit>, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface I: KSuspendFunction0<Unit>, FISuper {
|
||||
}
|
||||
|
||||
object O: KSuspendFunction0<Unit>, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
-48
@@ -1,48 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
import kotlin.reflect.*
|
||||
|
||||
interface ISuper: () -> Unit
|
||||
|
||||
class C: KSuspendFunction0<Unit>, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface I: KSuspendFunction0<Unit>, ISuper {
|
||||
}
|
||||
|
||||
object O: KSuspendFunction0<Unit>, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface SISuper: KSuspendFunction0<Unit>
|
||||
|
||||
class C1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface I1: SISuper, () -> Unit {
|
||||
}
|
||||
|
||||
object O1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
class C2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface I2: SISuper, ISuper {
|
||||
}
|
||||
|
||||
object O2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS, -ABSTRACT_MEMBER_NOT_IMPLEMENTED, -ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
|
||||
|
||||
-19
@@ -1,19 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
class C: suspend () -> Unit, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: suspend () -> Unit, () -> Unit {
|
||||
}
|
||||
|
||||
interface I: suspend () -> Unit, () -> Unit {
|
||||
}
|
||||
|
||||
object O: suspend () -> Unit, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-27
@@ -1,27 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
abstract class CSuper: () -> Unit
|
||||
|
||||
class C: CSuper(), suspend () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O: CSuper(), suspend () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
abstract class SCSuper: suspend () -> Unit
|
||||
|
||||
class C1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-55
@@ -1,55 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
fun interface FISuper: () -> Unit
|
||||
|
||||
class C: suspend () -> Unit, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: suspend () -> Unit, FISuper {
|
||||
}
|
||||
|
||||
interface I: suspend () -> Unit, FISuper {
|
||||
}
|
||||
|
||||
object O: suspend () -> Unit, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface SFISuper: suspend () -> Unit
|
||||
|
||||
class C1: SFISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI1: SFISuper, () -> Unit {
|
||||
}
|
||||
|
||||
interface I1: SFISuper, () -> Unit {
|
||||
}
|
||||
|
||||
object O1: SFISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
class C2: SFISuper, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI2: SFISuper, FISuper {
|
||||
}
|
||||
|
||||
interface I2: SFISuper, FISuper {
|
||||
}
|
||||
|
||||
object O2: SFISuper, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-55
@@ -1,55 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
interface ISuper: () -> Unit
|
||||
|
||||
class C: suspend () -> Unit, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: suspend () -> Unit, ISuper {
|
||||
}
|
||||
|
||||
interface I: suspend () -> Unit, ISuper {
|
||||
}
|
||||
|
||||
object O: suspend () -> Unit, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface SISuper: suspend () -> Unit
|
||||
|
||||
class C1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI1: SISuper, () -> Unit {
|
||||
}
|
||||
|
||||
interface I1: SISuper, () -> Unit {
|
||||
}
|
||||
|
||||
object O1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
class C2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI2: SISuper, ISuper {
|
||||
}
|
||||
|
||||
interface I2: SISuper, ISuper {
|
||||
}
|
||||
|
||||
object O2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
import kotlin.coroutines.*
|
||||
|
||||
class C: SuspendFunction0<Unit>, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: SuspendFunction0<Unit>, () -> Unit {
|
||||
}
|
||||
|
||||
interface I: SuspendFunction0<Unit>, () -> Unit {
|
||||
}
|
||||
|
||||
object O: SuspendFunction0<Unit>, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-29
@@ -1,29 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
import kotlin.coroutines.*
|
||||
|
||||
abstract class CSuper: () -> Unit
|
||||
|
||||
class C: CSuper(), SuspendFunction0<Unit> {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O: CSuper(), SuspendFunction0<Unit> {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
abstract class SCSuper: SuspendFunction0<Unit>
|
||||
|
||||
class C1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
object O1: SCSuper(), () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-57
@@ -1,57 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
import kotlin.coroutines.*
|
||||
|
||||
fun interface FISuper: () -> Unit
|
||||
|
||||
class C: SuspendFunction0<Unit>, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: SuspendFunction0<Unit>, FISuper {
|
||||
}
|
||||
|
||||
interface I: SuspendFunction0<Unit>, FISuper {
|
||||
}
|
||||
|
||||
object O: SuspendFunction0<Unit>, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface SFISuper: SuspendFunction0<Unit>
|
||||
|
||||
class C1: SFISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI1: SFISuper, () -> Unit {
|
||||
}
|
||||
|
||||
interface I1: SFISuper, () -> Unit {
|
||||
}
|
||||
|
||||
object O1: SFISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
class C2: SFISuper, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI2: SFISuper, FISuper {
|
||||
}
|
||||
|
||||
interface I2: SFISuper, FISuper {
|
||||
}
|
||||
|
||||
object O2: SFISuper, FISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
-57
@@ -1,57 +0,0 @@
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
import kotlin.coroutines.*
|
||||
|
||||
interface ISuper: () -> Unit
|
||||
|
||||
class C: SuspendFunction0<Unit>, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI: SuspendFunction0<Unit>, ISuper {
|
||||
}
|
||||
|
||||
interface I: SuspendFunction0<Unit>, ISuper {
|
||||
}
|
||||
|
||||
object O: SuspendFunction0<Unit>, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
interface SISuper: SuspendFunction0<Unit>
|
||||
|
||||
class C1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI1: SISuper, () -> Unit {
|
||||
}
|
||||
|
||||
interface I1: SISuper, () -> Unit {
|
||||
}
|
||||
|
||||
object O1: SISuper, () -> Unit {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
class C2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
|
||||
fun interface FI2: SISuper, ISuper {
|
||||
}
|
||||
|
||||
interface I2: SISuper, ISuper {
|
||||
}
|
||||
|
||||
object O2: SISuper, ISuper {
|
||||
override suspend fun invoke() {
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +SuspendFunctionAsSupertype
|
||||
// SKIP_TXT
|
||||
// DIAGNOSTICS: -CONFLICTING_INHERITED_MEMBERS, -CONFLICTING_OVERLOADS
|
||||
|
||||
Reference in New Issue
Block a user