diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterByUnresolvedRefActionFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterByUnresolvedRefActionFactory.kt index 6d92ecf589e..7a1c6eb144f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterByUnresolvedRefActionFactory.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterByUnresolvedRefActionFactory.kt @@ -90,6 +90,7 @@ object CreateTypeParameterByUnresolvedRefActionFactory : KotlinIntentionActionFa QuickFixWithDelegateFactory factory@{ val originalElement = originalElementPointer.element ?: return@factory null val data = quickFixDataFactory()?.copy(declaration = it) ?: return@factory null + if (!data.declaration.isWritable) return@factory null CreateTypeParameterFromUsageFix(originalElement, data, presentTypeParameterNames = true) } } diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterFromUsageFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterFromUsageFix.kt index da70a0cce4b..8310ed86e93 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterFromUsageFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterFromUsageFix.kt @@ -64,6 +64,7 @@ class CreateTypeParameterFromUsageFix( fun doInvoke(): List { val declaration = data.declaration + if (!declaration.isWritable) return emptyList() val project = declaration.project val usages = project.runSynchronouslyWithProgress("Searching ${declaration.name}...", true) { runReadAction { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt index 64d62b0661e..55ec90be953 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt @@ -79,6 +79,7 @@ object CreateTypeParameterUnmatchedTypeArgumentActionFactory : KotlinIntentionAc return QuickFixWithDelegateFactory factory@ { val originalElement = originalElementPointer.element ?: return@factory null val data = quickFixDataFactory() ?: return@factory null + if (!data.declaration.isWritable) return@factory null CreateTypeParameterFromUsageFix(originalElement, data, false) }.let(::listOf) }