diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/InlineCodegen.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/InlineCodegen.kt index a68057b3eb1..b9779f1c20b 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/InlineCodegen.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/InlineCodegen.kt @@ -8,7 +8,6 @@ package org.jetbrains.kotlin.codegen.inline import com.intellij.psi.PsiElement import com.intellij.util.ArrayUtil import org.jetbrains.kotlin.builtins.KotlinBuiltIns -import org.jetbrains.kotlin.builtins.isSuspendFunctionTypeOrSubtype import org.jetbrains.kotlin.codegen.* import org.jetbrains.kotlin.codegen.AsmUtil.isPrimitive import org.jetbrains.kotlin.codegen.context.ClosureContext @@ -133,14 +132,15 @@ abstract class InlineCodegen( inlineDefaultLambdas: Boolean, mapDefaultSignature: Boolean, typeSystem: TypeSystemCommonBackendContext, - registerLineNumberAfterwards: Boolean + registerLineNumberAfterwards: Boolean, + isCallOfFunctionInCorrespondingDefaultDispatch: Boolean ) { var nodeAndSmap: SMAPAndMethodNode? = null try { nodeAndSmap = createInlineMethodNode( functionDescriptor, methodOwner, jvmSignature, mapDefaultSignature, typeArguments, typeSystem, state, sourceCompiler ) - endCall(inlineCall(nodeAndSmap, inlineDefaultLambdas), registerLineNumberAfterwards) + endCall(inlineCall(nodeAndSmap, inlineDefaultLambdas, isCallOfFunctionInCorrespondingDefaultDispatch), registerLineNumberAfterwards) } catch (e: CompilationException) { throw e } catch (e: InlineException) { @@ -206,9 +206,9 @@ abstract class InlineCodegen( ?: error("No stack value for continuation parameter of suspend function") } - protected fun inlineCall(nodeAndSmap: SMAPAndMethodNode, inlineDefaultLambda: Boolean): InlineResult { + protected fun inlineCall(nodeAndSmap: SMAPAndMethodNode, inlineDefaultLambda: Boolean, isCallOfFunctionInCorrespondingDefaultDispatch: Boolean): InlineResult { assert(delayedHiddenWriting == null) { "'putHiddenParamsIntoLocals' should be called after 'processAndPutHiddenParameters(true)'" } - defaultSourceMapper.callSiteMarker = CallSiteMarker(codegen.lastLineNumber) + if (!isCallOfFunctionInCorrespondingDefaultDispatch) defaultSourceMapper.callSiteMarker = CallSiteMarker(codegen.lastLineNumber) val node = nodeAndSmap.node if (inlineDefaultLambda) { for (lambda in extractDefaultLambdas(node)) { @@ -270,7 +270,7 @@ abstract class InlineCodegen( addInlineMarker(codegen.v, false) } - defaultSourceMapper.callSiteMarker = null + if (!isCallOfFunctionInCorrespondingDefaultDispatch) defaultSourceMapper.callSiteMarker = null return result } diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/PsiInlineCodegen.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/PsiInlineCodegen.kt index 87babfa3607..85ff9f013bf 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/PsiInlineCodegen.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/PsiInlineCodegen.kt @@ -69,7 +69,7 @@ class PsiInlineCodegen( } try { val registerLineNumber = registerLineNumberAfterwards(resolvedCall) - performInline(resolvedCall?.typeArguments?.keys?.toList(), callDefault, callDefault, codegen.typeSystem, registerLineNumber) + performInline(resolvedCall?.typeArguments?.keys?.toList(), callDefault, callDefault, codegen.typeSystem, registerLineNumber, false) } finally { state.globalInlineContext.exitFromInlining() } diff --git a/compiler/fir/analysis-tests/tests/org/jetbrains/kotlin/fir/FirOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests/org/jetbrains/kotlin/fir/FirOldFrontendDiagnosticsTestGenerated.java index c7ea74e900b..301d6482c92 100644 --- a/compiler/fir/analysis-tests/tests/org/jetbrains/kotlin/fir/FirOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests/org/jetbrains/kotlin/fir/FirOldFrontendDiagnosticsTestGenerated.java @@ -6975,11 +6975,6 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirOldFronte runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.kt"); } - @TestMetadata("defaults.kt") - public void testDefaults() throws Exception { - runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt"); - } - @TestMetadata("delegationBy.kt") public void testDelegationBy() throws Exception { runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/delegationBy.kt"); diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/IrInlineCodegen.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/IrInlineCodegen.kt index 795fcf15682..4db3ac82717 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/IrInlineCodegen.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/IrInlineCodegen.kt @@ -14,7 +14,10 @@ import org.jetbrains.kotlin.codegen.inline.* import org.jetbrains.kotlin.codegen.state.GenerationState import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor -import org.jetbrains.kotlin.ir.declarations.* +import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin +import org.jetbrains.kotlin.ir.declarations.IrFunction +import org.jetbrains.kotlin.ir.declarations.IrValueParameter +import org.jetbrains.kotlin.ir.declarations.IrVariable import org.jetbrains.kotlin.ir.descriptors.WrappedSimpleFunctionDescriptor import org.jetbrains.kotlin.ir.expressions.* import org.jetbrains.kotlin.ir.types.IrType @@ -162,7 +165,8 @@ class IrInlineCodegen( function.origin == IrDeclarationOrigin.FUNCTION_FOR_DEFAULT_PARAMETER, false, codegen.typeMapper.typeSystem, - false + registerLineNumberAfterwards = false, + isCallOfFunctionInCorrespondingDefaultDispatch = codegen.irFunction == codegen.context.mapping.defaultArgumentsDispatchFunction[function] ) } finally { state.globalInlineContext.exitFromInlining() diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/FunctionReferenceLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/FunctionReferenceLowering.kt index a87b5459ce5..41ad4b7b80e 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/FunctionReferenceLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/FunctionReferenceLowering.kt @@ -161,7 +161,7 @@ internal class FunctionReferenceLowering(private val context: JvmBackendContext) } fun build(): IrExpression = context.createJvmIrBuilder(currentScope!!.scope.scopeOwnerSymbol).run { - irBlock { + irBlock(irFunctionReference.startOffset, irFunctionReference.endOffset) { val constructor = createConstructor() createInvokeMethod( if (samSuperType != null && boundReceiver != null) { diff --git a/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/genericLambda.kt b/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/genericLambda.kt index 9886812a50b..f425be21738 100644 --- a/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/genericLambda.kt +++ b/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/genericLambda.kt @@ -1,3 +1,6 @@ +// Enable for dexing once we have a D8 version with a fix for +// https://issuetracker.google.com/148661132 +// IGNORE_DEXING // NO_CHECK_LAMBDA_INLINING // FILE: 1.kt package test diff --git a/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleGeneric.kt b/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleGeneric.kt index 8a5c76bffdb..a12b033da38 100644 --- a/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleGeneric.kt +++ b/compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleGeneric.kt @@ -1,3 +1,6 @@ +// Enable for dexing once we have a D8 version with a fix for +// https://issuetracker.google.com/148661132 +// IGNORE_DEXING // FILE: 1.kt // SKIP_INLINE_CHECK_IN: inlineFun$default package test diff --git a/compiler/testData/codegen/boxInline/smap/assertion.kt b/compiler/testData/codegen/boxInline/smap/assertion.kt index d5cf6efbaed..0c681b914e8 100644 --- a/compiler/testData/codegen/boxInline/smap/assertion.kt +++ b/compiler/testData/codegen/boxInline/smap/assertion.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt package test diff --git a/compiler/testData/codegen/boxInline/smap/defaultFunction.kt b/compiler/testData/codegen/boxInline/smap/defaultFunction.kt index d6444c2590f..453ce2687a2 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultFunction.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultFunction.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt package test diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/defaultLambdaInAnonymous.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/defaultLambdaInAnonymous.kt index 1635407260a..4b0e9394dd4 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/defaultLambdaInAnonymous.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/defaultLambdaInAnonymous.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlinInDefault.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlinInDefault.kt index dbe9cbdeb6e..26daf557393 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlinInDefault.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlinInDefault.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault.kt index af4eda768f5..b7058acf289 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault.kt @@ -1,5 +1,5 @@ // IGNORE_BACKEND: JS -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault2.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault2.kt index 044bb93cbad..18a5f8a734b 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault2.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/inlineAnonymousInDefault2.kt @@ -1,5 +1,5 @@ // IGNORE_BACKEND: JS -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/kt21827.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/kt21827.kt index 3f99955313d..704d2e817bd 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/kt21827.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/kt21827.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/nested.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/nested.kt index b15e5c97fbb..e6fdda62385 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/nested.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/nested.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: inlineFun$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/simple.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/simple.kt index c8376e8a64b..5251252824c 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/simple.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/simple.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: inlineFun$default diff --git a/compiler/testData/codegen/boxInline/smap/defaultLambda/simple2.kt b/compiler/testData/codegen/boxInline/smap/defaultLambda/simple2.kt index 78709e798aa..9566eb2541d 100644 --- a/compiler/testData/codegen/boxInline/smap/defaultLambda/simple2.kt +++ b/compiler/testData/codegen/boxInline/smap/defaultLambda/simple2.kt @@ -1,4 +1,4 @@ -// IGNORE_BACKEND_MULTI_MODULE: JVM_IR + // FILE: 1.kt // SKIP_INLINE_CHECK_IN: lParams$default diff --git a/compiler/testData/debug/stepping/assertion.kt b/compiler/testData/debug/stepping/assertion.kt new file mode 100644 index 00000000000..baf90a80c2c --- /dev/null +++ b/compiler/testData/debug/stepping/assertion.kt @@ -0,0 +1,46 @@ +// IGNORE_BACKEND: JVM_IR +// FILE: test.kt +public val MASSERTIONS_ENABLED: Boolean = true + +public inline fun massert(value: Boolean, lazyMessage: () -> String) { + if (MASSERTIONS_ENABLED) { + if (!value) { + val message = lazyMessage() + throw AssertionError(message) + } + } +} + + +public inline fun massert(value: Boolean, message: Any = "Assertion failed") { + if (MASSERTIONS_ENABLED) { + if (!value) { + throw AssertionError(message) + } + } +} + +fun box(): String { + massert(true) + massert(true) { + "test" + } + + return "OK" +} + +// LINENUMBERS +// test.kt:24 +// test.kt:15 +// test.kt:16 +// test.kt:3 +// test.kt:16 +// test.kt:17 +// test.kt:21 +// test.kt:25 +// test.kt:6 +// test.kt:3 +// test.kt:6 +// test.kt:7 +// test.kt:12 +// test.kt:29 \ No newline at end of file diff --git a/compiler/testData/debug/stepping/simpleDefaultArg.kt b/compiler/testData/debug/stepping/simpleDefaultArg.kt new file mode 100644 index 00000000000..9c61c3b31e0 --- /dev/null +++ b/compiler/testData/debug/stepping/simpleDefaultArg.kt @@ -0,0 +1,16 @@ + +// FILE: test.kt +fun ifoo(ok: String = "OK"): String { + return ok +} + +fun box(): String { + return ifoo() +} + +// LINENUMBERS +// test.kt:8 +// test.kt:3 +// test.kt:4 +// test.kt:3 +// test.kt:8 \ No newline at end of file diff --git a/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt b/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt new file mode 100644 index 00000000000..6b2f4b1059f --- /dev/null +++ b/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt @@ -0,0 +1,15 @@ +// IGNORE_BACKEND: JVM_IR +// FILE: test.kt +inline fun ifoo(ok: String = "OK"): String { + return ok +} + +fun box(): String { + return ifoo() +} +// TODO: IR Backend behaves like simpleDefaultArg: 8,3,4, _3_ ,8 +// LINENUMBERS +// test.kt:8 +// test.kt:3 +// test.kt:4 +// test.kt:8 \ No newline at end of file diff --git a/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt b/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt new file mode 100644 index 00000000000..24eb6bc8d10 --- /dev/null +++ b/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt @@ -0,0 +1,18 @@ +// IGNORE_BACKEND: JVM_IR +// FILE: test.kt +inline fun alsoInline() = "OK" + +inline fun ifoo(s: String = alsoInline()): String { + return s +} + +fun box(): String { + return ifoo() +} + +// LINENUMBERS +// test.kt:10 +// test.kt:5 +// test.kt:3 +// test.kt:6 +// test.kt:10 \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.fir.kt b/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.fir.kt deleted file mode 100644 index 2b1ff02393e..00000000000 --- a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.fir.kt +++ /dev/null @@ -1,6 +0,0 @@ -// !DIAGNOSTICS: -UNUSED_PARAMETER - -class C { - fun `a$default`(c: C, x: Int, m: Int, mh: Any) {} - fun a(x: Int = 1) {} -} \ No newline at end of file diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.kt similarity index 88% rename from compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.kt index ed43af21a90..f6d574e9eac 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.kt @@ -1,3 +1,4 @@ +// TARGET_BACKEND: JVM_IR // !DIAGNOSTICS: -UNUSED_PARAMETER open class Base { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.txt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.txt similarity index 100% rename from compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.txt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.txt diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.kt new file mode 100644 index 00000000000..ffb2e2ba8db --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.kt @@ -0,0 +1,10 @@ +// TARGET_BACKEND: JVM_OLD +// !DIAGNOSTICS: -UNUSED_PARAMETER + +open class Base { + open fun `foo$default`(d: Derived, i: Int, mask: Int, mh: Any) {} +} + +class Derived : Base() { + fun foo(i: Int = 0) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.txt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.txt new file mode 100644 index 00000000000..9d23e55ff9f --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.txt @@ -0,0 +1,18 @@ +package + +public open class Base { + public constructor Base() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open fun `foo$default`(/*0*/ d: Derived, /*1*/ i: kotlin.Int, /*2*/ mask: kotlin.Int, /*3*/ mh: kotlin.Any): kotlin.Unit + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} + +public final class Derived : Base { + public constructor Derived() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public final fun foo(/*0*/ i: kotlin.Int = ...): kotlin.Unit + public open override /*1*/ /*fake_override*/ fun `foo$default`(/*0*/ d: Derived, /*1*/ i: kotlin.Int, /*2*/ mask: kotlin.Int, /*3*/ mh: kotlin.Any): kotlin.Unit + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} diff --git a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.kt similarity index 88% rename from compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.kt index 44ba8193349..1552db1d183 100644 --- a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.kt @@ -1,3 +1,4 @@ +// TARGET_BACKEND: JVM_IR // !DIAGNOSTICS: -UNUSED_PARAMETER class C { diff --git a/compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.txt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.txt similarity index 100% rename from compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.txt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.txt diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.kt similarity index 87% rename from compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.kt index 44ba8193349..cbbb3c27826 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.kt @@ -1,3 +1,4 @@ +// TARGET_BACKEND: JVM_OLD // !DIAGNOSTICS: -UNUSED_PARAMETER class C { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.txt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.txt similarity index 100% rename from compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.txt rename to compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.txt diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java index f6c08d136e4..c3c801688c1 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java @@ -6982,11 +6982,6 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTestWithFirVali runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.kt"); } - @TestMetadata("defaults.kt") - public void testDefaults() throws Exception { - runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt"); - } - @TestMetadata("delegationBy.kt") public void testDelegationBy() throws Exception { runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/delegationBy.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithJvmIrBackendGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithJvmIrBackendGenerated.java index 362f516a1ca..f4fd5284928 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithJvmIrBackendGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithJvmIrBackendGenerated.java @@ -98,9 +98,9 @@ public class DiagnosticsTestWithJvmIrBackendGenerated extends AbstractDiagnostic runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt"); } - @TestMetadata("defaultFunction.kt") - public void testDefaultFunction() throws Exception { - runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt"); + @TestMetadata("defaultFunction_ir.kt") + public void testDefaultFunction_ir() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_ir.kt"); } @TestMetadata("delegatedFunctionOverriddenByProperty_ir.kt") @@ -433,9 +433,9 @@ public class DiagnosticsTestWithJvmIrBackendGenerated extends AbstractDiagnostic runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt"); } - @TestMetadata("defaults.kt") - public void testDefaults() throws Exception { - runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt"); + @TestMetadata("defaults_ir.kt") + public void testDefaults_ir() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_ir.kt"); } @TestMetadata("delegationBy_ir.kt") diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithOldJvmBackendGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithOldJvmBackendGenerated.java index 692f89efeca..ef4a69e370c 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithOldJvmBackendGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithOldJvmBackendGenerated.java @@ -103,9 +103,9 @@ public class DiagnosticsTestWithOldJvmBackendGenerated extends AbstractDiagnosti runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt"); } - @TestMetadata("defaultFunction.kt") - public void testDefaultFunction() throws Exception { - runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt"); + @TestMetadata("defaultFunction_old.kt") + public void testDefaultFunction_old() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction_old.kt"); } @TestMetadata("delegatedFunctionOverriddenByProperty_old.kt") @@ -428,9 +428,9 @@ public class DiagnosticsTestWithOldJvmBackendGenerated extends AbstractDiagnosti runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt"); } - @TestMetadata("defaults.kt") - public void testDefaults() throws Exception { - runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt"); + @TestMetadata("defaults_old.kt") + public void testDefaults_old() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults_old.kt"); } @TestMetadata("delegationBy_old.kt") diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsUsingJavacTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsUsingJavacTestGenerated.java index f0073384104..8db5b07f886 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsUsingJavacTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsUsingJavacTestGenerated.java @@ -6977,11 +6977,6 @@ public class DiagnosticsUsingJavacTestGenerated extends AbstractDiagnosticsUsing runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/dataClassCopy.kt"); } - @TestMetadata("defaults.kt") - public void testDefaults() throws Exception { - runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/defaults.kt"); - } - @TestMetadata("delegationBy.kt") public void testDelegationBy() throws Exception { runTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/delegationBy.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/IrSteppingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/IrSteppingTestGenerated.java index ca2ba98ced9..27578690b49 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/IrSteppingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/IrSteppingTestGenerated.java @@ -31,6 +31,12 @@ public class IrSteppingTestGenerated extends AbstractIrSteppingTest { KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/debug/stepping"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true); } + @Test + @TestMetadata("assertion.kt") + public void testAssertion() throws Exception { + runTest("compiler/testData/debug/stepping/assertion.kt"); + } + @Test @TestMetadata("callableReference.kt") public void testCallableReference() throws Exception { @@ -103,6 +109,24 @@ public class IrSteppingTestGenerated extends AbstractIrSteppingTest { runTest("compiler/testData/debug/stepping/recursion.kt"); } + @Test + @TestMetadata("simpleDefaultArg.kt") + public void testSimpleDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleDefaultArgWithInline.kt") + public void testSimpleDefaultArgWithInline() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt"); + } + + @Test + @TestMetadata("simpleInlineDefaultArg.kt") + public void testSimpleInlineDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleInlineDefaultArg.kt"); + } + @Test @TestMetadata("throwException.kt") public void testThrowException() throws Exception { diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/SteppingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/SteppingTestGenerated.java index 33416e44881..5ada2b10831 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/SteppingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/debugInformation/SteppingTestGenerated.java @@ -31,6 +31,12 @@ public class SteppingTestGenerated extends AbstractSteppingTest { KotlinTestUtils.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/debug/stepping"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM, true); } + @Test + @TestMetadata("assertion.kt") + public void testAssertion() throws Exception { + runTest("compiler/testData/debug/stepping/assertion.kt"); + } + @Test @TestMetadata("callableReference.kt") public void testCallableReference() throws Exception { @@ -103,6 +109,24 @@ public class SteppingTestGenerated extends AbstractSteppingTest { runTest("compiler/testData/debug/stepping/recursion.kt"); } + @Test + @TestMetadata("simpleDefaultArg.kt") + public void testSimpleDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleDefaultArgWithInline.kt") + public void testSimpleDefaultArgWithInline() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt"); + } + + @Test + @TestMetadata("simpleInlineDefaultArg.kt") + public void testSimpleInlineDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleInlineDefaultArg.kt"); + } + @Test @TestMetadata("throwException.kt") public void testThrowException() throws Exception {