diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/classes/ultraLightMembersCreator.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/classes/ultraLightMembersCreator.kt index 627b34883ea..ec2e2260d40 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/classes/ultraLightMembersCreator.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/classes/ultraLightMembersCreator.kt @@ -20,6 +20,7 @@ import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.descriptors.annotations.Annotated import org.jetbrains.kotlin.extensions.DeclarationAttributeAltererExtension import org.jetbrains.kotlin.lexer.KtTokens +import org.jetbrains.kotlin.lexer.KtTokens.EXTERNAL_KEYWORD import org.jetbrains.kotlin.lexer.KtTokens.REIFIED_KEYWORD import org.jetbrains.kotlin.load.java.JvmAbi import org.jetbrains.kotlin.load.kotlin.TypeMappingMode @@ -283,6 +284,7 @@ internal class UltraLightMembersCreator( PsiModifier.STATIC -> forceStatic || containingClassIsNamedObject && (outerDeclaration.isJvmStatic(support) || declaration.isJvmStatic(support)) PsiModifier.STRICTFP -> declaration is KtFunction && declaration.hasAnnotation(STRICTFP_ANNOTATION_FQ_NAME) PsiModifier.SYNCHRONIZED -> declaration is KtFunction && declaration.hasAnnotation(SYNCHRONIZED_ANNOTATION_FQ_NAME) + PsiModifier.NATIVE -> declaration is KtFunction && declaration.hasModifier(EXTERNAL_KEYWORD) else -> false } } diff --git a/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt index 959d4821e19..a5817bf6c6f 100644 --- a/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt +++ b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt @@ -9,5 +9,7 @@ class Foo { operator fun plus(increment: Int): Foo {} fun String.onString(a: (Int) -> Any?): Foo {} + external fun externalFun(a: Int): String { return "" } + class Inner {} } diff --git a/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt index f49d6bd279c..b4e7885b726 100644 --- a/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt +++ b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt @@ -7,3 +7,5 @@ public fun nullableVararg(vararg o: Any?): Unit operator fun plus(increment: Int): Foo {} fun String.onString(a: (Int) -> Any?): Foo {} + +external fun externalFun(a: Int): String { return "" } \ No newline at end of file