diff --git a/compiler/frontend/src/org/jetbrains/kotlin/psi/addRemoveModifier.kt b/compiler/frontend/src/org/jetbrains/kotlin/psi/addRemoveModifier.kt index 8cec1539d33..78f655f8f65 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/psi/addRemoveModifier.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/psi/addRemoveModifier.kt @@ -55,6 +55,8 @@ internal fun addAnnotationEntry(owner: JetModifierListOwner, annotationEntry: Je } internal fun addModifier(modifierList: JetModifierList, modifier: JetModifierKeywordToken, defaultVisibilityModifier: JetModifierKeywordToken) { + if (modifierList.hasModifier(modifier)) return + val newModifier = JetPsiFactory(modifierList).createModifier(modifier) val modifierToReplace = MODIFIERS_TO_REPLACE[modifier] ?.map { modifierList.getModifier(it) } diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHelper.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHelper.kt index dc7999af90e..a3fe38a4abd 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHelper.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHelper.kt @@ -540,7 +540,7 @@ class KotlinPullUpHelper( if (member.hasModifier(JetTokens.ABSTRACT_KEYWORD)) { member.delete() } - else if (!member.hasModifier(JetTokens.OVERRIDE_KEYWORD)) { + else { member.addModifierWithSpace(JetTokens.OVERRIDE_KEYWORD) } } diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/pullUpUtils.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/pullUpUtils.kt index a2ea11de072..4d7e99a570d 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/pullUpUtils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/pullUpUtils.kt @@ -71,6 +71,7 @@ fun JetNamedDeclaration.addAnnotationWithSpace(annotationEntry: JetAnnotationEnt } fun JetClass.makeAbstract() { - if (isInterface() || hasModifier(JetTokens.ABSTRACT_KEYWORD)) return - addModifierWithSpace(JetTokens.ABSTRACT_KEYWORD) + if (!isInterface()) { + addModifierWithSpace(JetTokens.ABSTRACT_KEYWORD) + } } \ No newline at end of file