diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt index 166dae0f149..4dbe30e1ee8 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt @@ -146,6 +146,8 @@ object ModifierCheckerCore { // private is compatible with open / abstract only for classes result += compatibilityForClassesRegister(PRIVATE_KEYWORD, OPEN_KEYWORD) result += compatibilityForClassesRegister(PRIVATE_KEYWORD, ABSTRACT_KEYWORD) + + result += incompatibilityRegister(CROSSINLINE_KEYWORD, NOINLINE_KEYWORD) return result } diff --git a/compiler/testData/diagnostics/tests/modifiers/inlineParameters.kt b/compiler/testData/diagnostics/tests/modifiers/inlineParameters.kt index 7195b64ef53..2c167f2aeba 100644 --- a/compiler/testData/diagnostics/tests/modifiers/inlineParameters.kt +++ b/compiler/testData/diagnostics/tests/modifiers/inlineParameters.kt @@ -8,3 +8,4 @@ fun gav(noinline x: (Int) -> Unit, Unit, crossinline y: (String) -> Int) {} +inline fun incompatible(noinline crossinline x: () -> String) {} diff --git a/compiler/testData/diagnostics/tests/modifiers/inlineParameters.txt b/compiler/testData/diagnostics/tests/modifiers/inlineParameters.txt index ecb194d5805..60a9ce4ee33 100644 --- a/compiler/testData/diagnostics/tests/modifiers/inlineParameters.txt +++ b/compiler/testData/diagnostics/tests/modifiers/inlineParameters.txt @@ -4,3 +4,4 @@ public inline fun bar(/*0*/ y: kotlin.Int, /*1*/ crossinline x: kotlin.String): public inline fun correct(/*0*/ noinline x: (kotlin.Int) -> kotlin.Unit, /*1*/ crossinline y: (kotlin.String) -> kotlin.Int): kotlin.Unit public inline fun foo(/*0*/ noinline x: kotlin.Int): kotlin.Unit public fun gav(/*0*/ noinline x: (kotlin.Int) -> kotlin.Unit, /*1*/ crossinline y: (kotlin.String) -> kotlin.Int): kotlin.Unit +public inline fun incompatible(/*0*/ crossinline noinline x: () -> kotlin.String): kotlin.Unit