diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index 9c51ae30156..b2b9b7efc28 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -16,13 +16,8 @@ import org.jetbrains.kotlin.fir.descriptors.FirModuleDescriptor import org.jetbrains.kotlin.fir.descriptors.FirPackageFragmentDescriptor import org.jetbrains.kotlin.fir.psi import org.jetbrains.kotlin.fir.render -import org.jetbrains.kotlin.fir.resolve.firProvider -import org.jetbrains.kotlin.fir.resolve.firSymbolProvider -import org.jetbrains.kotlin.fir.resolve.getOrPut -import org.jetbrains.kotlin.fir.symbols.impl.FirClassSymbol -import org.jetbrains.kotlin.fir.symbols.impl.FirFunctionSymbol -import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol -import org.jetbrains.kotlin.fir.symbols.impl.FirVariableSymbol +import org.jetbrains.kotlin.fir.resolve.* +import org.jetbrains.kotlin.fir.symbols.impl.* import org.jetbrains.kotlin.fir.types.ConeKotlinType import org.jetbrains.kotlin.fir.types.FirTypeRef import org.jetbrains.kotlin.fir.types.arrayElementType @@ -421,11 +416,12 @@ class Fir2IrDeclarationStorage( fun create(): IrSimpleFunction { val containerSource = function.containerSource val descriptor = containerSource?.let { WrappedFunctionDescriptorWithContainerSource(it) } ?: WrappedSimpleFunctionDescriptor() + val updatedOrigin = if (function.symbol.callableId.isKFunctionInvoke()) IrDeclarationOrigin.FAKE_OVERRIDE else origin return function.convertWithOffsets { startOffset, endOffset -> enterScope(descriptor) val result = irSymbolTable.declareSimpleFunction(startOffset, endOffset, origin, descriptor) { symbol -> IrFunctionImpl( - startOffset, endOffset, origin, symbol, + startOffset, endOffset, updatedOrigin, symbol, function.name, function.visibility, function.modality!!, function.returnTypeRef.toIrType(session, this), isInline = function.isInline, @@ -433,7 +429,7 @@ class Fir2IrDeclarationStorage( isTailrec = function.isTailRec, isSuspend = function.isSuspend, isExpect = function.isExpect, - isFakeOverride = origin == IrDeclarationOrigin.FAKE_OVERRIDE, + isFakeOverride = updatedOrigin == IrDeclarationOrigin.FAKE_OVERRIDE, isOperator = function.isOperator ) } @@ -775,6 +771,11 @@ class Fir2IrDeclarationStorage( is FirSimpleFunction -> { val irDeclaration = getIrFunction(firDeclaration, irParent, shouldLeaveScope = true).apply { setAndModifyParent(irParent) + } as IrSimpleFunction + if (firFunctionSymbol.callableId.isKFunctionInvoke()) { + (firFunctionSymbol.overriddenSymbol as? FirNamedFunctionSymbol)?.let { + irDeclaration.overriddenSymbols += (it.toFunctionSymbol(this) as IrSimpleFunctionSymbol) + } } irSymbolTable.referenceSimpleFunction(irDeclaration.descriptor) } diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/ResolveUtils.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/ResolveUtils.kt index 1561b042787..a4d090421cd 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/ResolveUtils.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/ResolveUtils.kt @@ -13,7 +13,6 @@ import org.jetbrains.kotlin.fir.diagnostics.DiagnosticKind import org.jetbrains.kotlin.fir.diagnostics.FirSimpleDiagnostic import org.jetbrains.kotlin.fir.diagnostics.FirStubDiagnostic import org.jetbrains.kotlin.fir.expressions.* -import org.jetbrains.kotlin.fir.expressions.builder.FirResolvedQualifierBuilder import org.jetbrains.kotlin.fir.expressions.builder.FirResolvedReifiedParameterReferenceBuilder import org.jetbrains.kotlin.fir.expressions.impl.FirExpressionWithSmartcastImpl import org.jetbrains.kotlin.fir.references.FirErrorNamedReference @@ -463,6 +462,12 @@ fun BodyResolveComponents.transformQualifiedAccessUsingSmartcastInfo(qualifiedAc } fun CallableId.isInvoke() = - packageName == KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME + isKFunctionInvoke() + || callableName.asString() == "invoke" && className?.asString()?.startsWith("Function") == true - && callableName.asString() == "invoke" + && packageName == KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME + +fun CallableId.isKFunctionInvoke() = + callableName.asString() == "invoke" + && className?.asString()?.startsWith("KFunction") == true + && packageName.asString() == "kotlin.reflect" \ No newline at end of file diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/impl/FirBuiltinSymbolProvider.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/impl/FirBuiltinSymbolProvider.kt index 657f6765758..e2d07e9a6ed 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/impl/FirBuiltinSymbolProvider.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/impl/FirBuiltinSymbolProvider.kt @@ -7,10 +7,7 @@ package org.jetbrains.kotlin.fir.resolve.impl import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.builtins.functions.FunctionClassDescriptor -import org.jetbrains.kotlin.descriptors.ClassKind -import org.jetbrains.kotlin.descriptors.Modality -import org.jetbrains.kotlin.descriptors.SourceElement -import org.jetbrains.kotlin.descriptors.Visibilities +import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.fir.FirSession import org.jetbrains.kotlin.fir.declarations.* import org.jetbrains.kotlin.fir.declarations.builder.buildClassImpl @@ -209,30 +206,11 @@ class FirBuiltinSymbolProvider(val session: FirSession, val kotlinScopeProvider: type = ConeTypeParameterTypeImpl(it.symbol.toLookupTag(), false) } } - - addDeclaration( - buildSimpleFunction { - session = this@FirBuiltinSymbolProvider.session - returnTypeRef = typeArguments.last() - this.name = name - status = functionStatus - symbol = FirNamedFunctionSymbol(CallableId(packageFqName, relativeClassName, name)) - resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES - valueParameters += typeArguments.dropLast(1).mapIndexed { index, typeArgument -> - val parameterName = Name.identifier("p${index + 1}") - buildValueParameter { - session = this@FirBuiltinSymbolProvider.session - returnTypeRef = typeArgument - this.name = parameterName - symbol = FirVariableSymbol(parameterName) - defaultValue = null - isCrossinline = false - isNoinline = false - isVararg = false - } - } - }, - ) + val superKind: FunctionClassDescriptor.Kind? = when (kind) { + FunctionClassDescriptor.Kind.KFunction -> FunctionClassDescriptor.Kind.Function + FunctionClassDescriptor.Kind.KSuspendFunction -> FunctionClassDescriptor.Kind.SuspendFunction + else -> null + } fun createSuperType( kind: FunctionClassDescriptor.Kind, @@ -259,12 +237,46 @@ class FirBuiltinSymbolProvider(val session: FirSession, val kotlinScopeProvider: FunctionClassDescriptor.Kind.KSuspendFunction -> createSuperType(FunctionClassDescriptor.Kind.SuspendFunction) } + addDeclaration( + buildSimpleFunction { + session = this@FirBuiltinSymbolProvider.session + returnTypeRef = typeArguments.last() + this.name = name + status = functionStatus + symbol = FirNamedFunctionSymbol( + CallableId(packageFqName, relativeClassName, name), + // set overriddenSymbol for "invoke" of KFunction/KSuspendFunction + superKind != null, superKind?.getInvoke(arity) + ) + resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES + valueParameters += typeArguments.dropLast(1).mapIndexed { index, typeArgument -> + val parameterName = Name.identifier("p${index + 1}") + buildValueParameter { + session = this@FirBuiltinSymbolProvider.session + returnTypeRef = typeArgument + this.name = parameterName + symbol = FirVariableSymbol(parameterName) + defaultValue = null + isCrossinline = false + isNoinline = false + isVararg = false + } + } + } + ) } } } } } + // Find the symbol for "invoke" in the function class + private fun FunctionClassDescriptor.Kind.getInvoke(arity: Int): FirNamedFunctionSymbol? { + val functionClass = getClassLikeSymbolByFqName(classId(arity)) ?: return null + val invoke = + functionClass.fir.declarations.find { it is FirSimpleFunction && it.name == OperatorNameConventions.INVOKE } ?: return null + return (invoke as FirSimpleFunction).symbol as? FirNamedFunctionSymbol + } override fun getClassLikeSymbolByFqName(classId: ClassId): FirRegularClassSymbol? { return allPackageFragments[classId.packageFqName]?.firstNotNullResult { diff --git a/compiler/testData/codegen/box/callableReference/function/abstractClassMember.kt b/compiler/testData/codegen/box/callableReference/function/abstractClassMember.kt index bf67374877f..515b25914d0 100644 --- a/compiler/testData/codegen/box/callableReference/function/abstractClassMember.kt +++ b/compiler/testData/codegen/box/callableReference/function/abstractClassMember.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR abstract class A { abstract fun foo(): String } diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromClass.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromClass.kt index 0ef884ce484..3ed816ee504 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromClass.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromClass.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { fun foo(k: Int) = k diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromExtension.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromExtension.kt index 5f3309f9d46..9619233c943 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromExtension.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromExtension.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { fun o() = 111 fun k(k: Int) = k diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringNoArgs.kt index 7a78e416055..4ea10740594 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { fun foo() = "OK" } diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringOneStringArg.kt index a1195d0d94e..acdf2f897d5 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { fun foo(result: String) = result } diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitNoArgs.kt index ff94b3cbaea..37ebbdb72eb 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { var result = "Fail" diff --git a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitOneStringArg.kt index 789b12c8ea2..3b280c28f34 100644 --- a/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { var result = "Fail" diff --git a/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelNoArgs.kt index c17305ffbd7..db7b7fd01ef 100644 --- a/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { var result = "OK" } diff --git a/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelOneStringArg.kt index 6e64c0e4b04..63a861dbcf4 100644 --- a/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A(val result: String) fun box() = (::A)("OK").result diff --git a/compiler/testData/codegen/box/callableReference/function/equalsIntrinsic.kt b/compiler/testData/codegen/box/callableReference/function/equalsIntrinsic.kt index 595ce9bb7ae..c83a188802d 100644 --- a/compiler/testData/codegen/box/callableReference/function/equalsIntrinsic.kt +++ b/compiler/testData/codegen/box/callableReference/function/equalsIntrinsic.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A fun box() = if ((A::equals)(A(), A())) "Fail" else "OK" diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromClass.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromClass.kt index 817a2638f65..0248c2f9f2c 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromClass.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromClass.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { fun result() = (A::foo)(this, "OK") } diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromExtension.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromExtension.kt index 99e55639d26..103ceee5cbc 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromExtension.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromExtension.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A fun A.foo() = (A::bar)(this, "OK") diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringNoArgs.kt index 45341fb70ce..0276c11528f 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun run(arg1: A, funRef:A.() -> String): String { return arg1.funRef() } diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringOneStringArg.kt index 2be0bf729c6..b664d0338ff 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun run(arg1: A, arg2: String, funRef:A.(String) -> String): String { return arg1.funRef(arg2) } diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitNoArgs.kt index 46a2c636293..b590ad2ec91 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { var result = "Fail" } diff --git a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitOneStringArg.kt index 84a3a2f7a94..3c2e270f486 100644 --- a/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun run(arg1: A, arg2: String, funRef:A.(String) -> Unit): Unit { return arg1.funRef(arg2) } diff --git a/compiler/testData/codegen/box/callableReference/function/local/constructor.kt b/compiler/testData/codegen/box/callableReference/function/local/constructor.kt index b61ef844ea1..291af016082 100644 --- a/compiler/testData/codegen/box/callableReference/function/local/constructor.kt +++ b/compiler/testData/codegen/box/callableReference/function/local/constructor.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun box(): String { class A { val result = "OK" diff --git a/compiler/testData/codegen/box/callableReference/function/local/constructorWithInitializer.kt b/compiler/testData/codegen/box/callableReference/function/local/constructorWithInitializer.kt index a2504890ba6..0e8c0a25839 100644 --- a/compiler/testData/codegen/box/callableReference/function/local/constructorWithInitializer.kt +++ b/compiler/testData/codegen/box/callableReference/function/local/constructorWithInitializer.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun box(): String { class A { var result: String = "Fail"; diff --git a/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelNoArgs.kt index 6bb9258b6e1..f99dd41ae86 100644 --- a/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { class Nested { val result = "OK" diff --git a/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelOneStringArg.kt index e6dcda9cf92..3f0c03c67f3 100644 --- a/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { class Nested(val result: String) } diff --git a/compiler/testData/codegen/box/callableReference/function/privateClassMember.kt b/compiler/testData/codegen/box/callableReference/function/privateClassMember.kt index c4dbf947d57..f99ac7e3ad6 100644 --- a/compiler/testData/codegen/box/callableReference/function/privateClassMember.kt +++ b/compiler/testData/codegen/box/callableReference/function/privateClassMember.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR class A { private fun foo() = "OK" diff --git a/compiler/testData/codegen/box/callableReference/function/topLevelFromClass.kt b/compiler/testData/codegen/box/callableReference/function/topLevelFromClass.kt index be2e435e7e7..48f8b3698e6 100644 --- a/compiler/testData/codegen/box/callableReference/function/topLevelFromClass.kt +++ b/compiler/testData/codegen/box/callableReference/function/topLevelFromClass.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun run(arg1: T, arg2: T, funRef:(T,T) -> T): T { return funRef(arg1, arg2) } diff --git a/compiler/testData/codegen/box/callableReference/function/topLevelFromExtension.kt b/compiler/testData/codegen/box/callableReference/function/topLevelFromExtension.kt index 799ae9513a1..cd8cf660a11 100644 --- a/compiler/testData/codegen/box/callableReference/function/topLevelFromExtension.kt +++ b/compiler/testData/codegen/box/callableReference/function/topLevelFromExtension.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun run(arg1: T, arg2: T, funRef:(T,T) -> T): T { return funRef(arg1, arg2) } diff --git a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringOneStringArg.kt index 05a1a73ca65..78cb93f0873 100644 --- a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR fun foo(x: String) = x fun box(): String { diff --git a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitNoArgs.kt b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitNoArgs.kt index 84df68873c6..a388ed73d4e 100644 --- a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitNoArgs.kt +++ b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitNoArgs.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR var result = "Fail" fun foo() { diff --git a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitOneStringArg.kt b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitOneStringArg.kt index 296f729b290..a15697e48b4 100644 --- a/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitOneStringArg.kt +++ b/compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitOneStringArg.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR var result = "Fail" fun foo(newResult: String) { diff --git a/compiler/testData/codegen/box/callableReference/function/traitMember.kt b/compiler/testData/codegen/box/callableReference/function/traitMember.kt index f36f7f46732..88cf738eaa7 100644 --- a/compiler/testData/codegen/box/callableReference/function/traitMember.kt +++ b/compiler/testData/codegen/box/callableReference/function/traitMember.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR interface A { fun foo(): String } diff --git a/compiler/testData/codegen/box/jvmName/callableReference.kt b/compiler/testData/codegen/box/jvmName/callableReference.kt index c857458d0f1..e7d1e3c20ff 100644 --- a/compiler/testData/codegen/box/jvmName/callableReference.kt +++ b/compiler/testData/codegen/box/jvmName/callableReference.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR // TARGET_BACKEND: JVM // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/multifileClasses/optimized/callableRefToFun.kt b/compiler/testData/codegen/box/multifileClasses/optimized/callableRefToFun.kt index 8a77ed5547b..26471b5a732 100644 --- a/compiler/testData/codegen/box/multifileClasses/optimized/callableRefToFun.kt +++ b/compiler/testData/codegen/box/multifileClasses/optimized/callableRefToFun.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR // TARGET_BACKEND: JVM // IGNORE_LIGHT_ANALYSIS // WITH_RUNTIME