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 7a1c6eb144f..acce3915e20 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 @@ -85,12 +85,12 @@ object CreateTypeParameterByUnresolvedRefActionFactory : KotlinIntentionActionFa val name = ktUserType.referencedName ?: return emptyList() return getPossibleTypeParameterContainers(ktUserType) .asSequence() - .filter { it.typeParameters.all { it.name != name } } - .map { + .filter { declaration -> + declaration.isWritable && declaration.typeParameters.all { it.name != name } + }.map { 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/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/createTypeParameter/CreateTypeParameterUnmatchedTypeArgumentActionFactory.kt index 71fdee798c8..0bb94d44a1d 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,7 +79,6 @@ object CreateTypeParameterUnmatchedTypeArgumentActionFactory : 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) }