diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestWithJvmIrBackendGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestWithJvmIrBackendGenerated.java new file mode 100644 index 00000000000..a9259ce24b6 --- /dev/null +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestWithJvmIrBackendGenerated.java @@ -0,0 +1,750 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.test.runners; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.test.generators.GenerateCompilerTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend") +@TestDataPath("$PROJECT_ROOT") +public class FirLightTreeDiagnosticsTestWithJvmIrBackendGenerated extends AbstractFirLightTreeDiagnosticsTestWithJvmIrBackend { + @Test + public void testAllFilesPresentInTestsWithJvmBackend() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("indirectInlineCycle.kt") + public void testIndirectInlineCycle() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/indirectInlineCycle.kt"); + } + + @Test + @TestMetadata("inlineCycle.kt") + public void testInlineCycle() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/inlineCycle.kt"); + } + + @Test + @TestMetadata("kt57104.kt") + public void testKt57104() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/kt57104.kt"); + } + + @Test + @TestMetadata("kt57104_2.kt") + public void testKt57104_2() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/kt57104_2.kt"); + } + + @Test + @TestMetadata("multipleBigArityFunsImplemented.kt") + public void testMultipleBigArityFunsImplemented() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.kt"); + } + + @Test + @TestMetadata("noWarningInLV1_5.kt") + public void testNoWarningInLV1_5() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/noWarningInLV1_5.kt"); + } + + @Test + @TestMetadata("propertyInlineCycle.kt") + public void testPropertyInlineCycle() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/propertyInlineCycle.kt"); + } + + @Test + @TestMetadata("suspendInlineCycle.kt") + public void testSuspendInlineCycle() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/suspendInlineCycle.kt"); + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature") + @TestDataPath("$PROJECT_ROOT") + public class DuplicateJvmSignature { + @Test + public void testAllFilesPresentInDuplicateJvmSignature() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("caseInProperties.kt") + public void testCaseInProperties() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.kt"); + } + + @Test + @TestMetadata("changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt") + public void testChangingNullabilityOfOrdinaryClassIsBinaryCompatibleChange() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt"); + } + + @Test + @TestMetadata("vararg.kt") + public void testVararg() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.kt"); + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides") + @TestDataPath("$PROJECT_ROOT") + public class AccidentalOverrides { + @Test + @TestMetadata("accidentalOverrideFromGrandparent.kt") + public void testAccidentalOverrideFromGrandparent() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.kt"); + } + + @Test + public void testAllFilesPresentInAccidentalOverrides() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("classFunctionOverriddenByProperty.kt") + public void testClassFunctionOverriddenByProperty() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.kt"); + } + + @Test + @TestMetadata("classFunctionOverriddenByPropertyInConstructor.kt") + public void testClassFunctionOverriddenByPropertyInConstructor() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyInConstructor.kt"); + } + + @Test + @TestMetadata("classFunctionOverriddenByPropertyNoGetter.kt") + public void testClassFunctionOverriddenByPropertyNoGetter() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.kt"); + } + + @Test + @TestMetadata("classPropertyOverriddenByFunction.kt") + public void testClassPropertyOverriddenByFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt"); + } + + @Test + @TestMetadata("defaultFunction.kt") + public void testDefaultFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt"); + } + + @Test + @TestMetadata("delegatedFunctionOverriddenByProperty.kt") + public void testDelegatedFunctionOverriddenByProperty() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/delegatedFunctionOverriddenByProperty.kt"); + } + + @Test + @TestMetadata("genericClassFunction.kt") + public void testGenericClassFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.kt"); + } + + @Test + @TestMetadata("overridesNothing.kt") + public void testOverridesNothing() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.kt"); + } + + @Test + @TestMetadata("privateClassFunctionOverriddenByProperty.kt") + public void testPrivateClassFunctionOverriddenByProperty() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/privateClassFunctionOverriddenByProperty.kt"); + } + + @Test + @TestMetadata("traitFunctionOverriddenByProperty.kt") + public void testTraitFunctionOverriddenByProperty() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.kt"); + } + + @Test + @TestMetadata("traitFunctionOverriddenByPropertyNoImpl.kt") + public void testTraitFunctionOverriddenByPropertyNoImpl() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.kt"); + } + + @Test + @TestMetadata("traitPropertyOverriddenByFunction.kt") + public void testTraitPropertyOverriddenByFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.kt"); + } + + @Test + @TestMetadata("traitPropertyOverriddenByFunctionNoImpl.kt") + public void testTraitPropertyOverriddenByFunctionNoImpl() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges") + @TestDataPath("$PROJECT_ROOT") + public class Bridges { + @Test + public void testAllFilesPresentInBridges() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("class.kt") + public void testClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.kt"); + } + + @Test + @TestMetadata("fakeOverrideTrait.kt") + public void testFakeOverrideTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.kt"); + } + + @Test + @TestMetadata("trait.kt") + public void testTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure") + @TestDataPath("$PROJECT_ROOT") + public class Erasure { + @Test + public void testAllFilesPresentInErasure() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("clashFromInterfaceAndSuperClass.kt") + public void testClashFromInterfaceAndSuperClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.kt"); + } + + @Test + @TestMetadata("collections.kt") + public void testCollections() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.kt"); + } + + @Test + @TestMetadata("delegateToTwoTraits.kt") + public void testDelegateToTwoTraits() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.kt"); + } + + @Test + @TestMetadata("delegationAndOwnMethod.kt") + public void testDelegationAndOwnMethod() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.kt"); + } + + @Test + @TestMetadata("delegationToTraitImplAndOwnMethod.kt") + public void testDelegationToTraitImplAndOwnMethod() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.kt"); + } + + @Test + @TestMetadata("extensionProperties.kt") + public void testExtensionProperties() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.kt"); + } + + @Test + @TestMetadata("genericType.kt") + public void testGenericType() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.kt"); + } + + @Test + @TestMetadata("inheritFromTwoTraits.kt") + public void testInheritFromTwoTraits() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.kt"); + } + + @Test + @TestMetadata("kotlinAndJavaCollections.kt") + public void testKotlinAndJavaCollections() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.kt"); + } + + @Test + @TestMetadata("nullableType.kt") + public void testNullableType() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.kt"); + } + + @Test + @TestMetadata("superTraitAndDelegationToTraitImpl.kt") + public void testSuperTraitAndDelegationToTraitImpl() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.kt"); + } + + @Test + @TestMetadata("twoTraitsAndOwnFunction.kt") + public void testTwoTraitsAndOwnFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.kt"); + } + + @Test + @TestMetadata("typeMappedToJava.kt") + public void testTypeMappedToJava() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.kt"); + } + + @Test + @TestMetadata("typeParameter.kt") + public void testTypeParameter() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.kt"); + } + + @Test + @TestMetadata("typeParameterWithBound.kt") + public void testTypeParameterWithBound() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.kt"); + } + + @Test + @TestMetadata("typeParameterWithTwoBounds.kt") + public void testTypeParameterWithTwoBounds() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.kt"); + } + + @Test + @TestMetadata("typeParameterWithTwoBoundsInWhere.kt") + public void testTypeParameterWithTwoBoundsInWhere() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns") + @TestDataPath("$PROJECT_ROOT") + public class FinalMembersFromBuiltIns { + @Test + public void testAllFilesPresentInFinalMembersFromBuiltIns() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("enumMembers.kt") + public void testEnumMembers() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.kt"); + } + + @Test + @TestMetadata("waitNotifyGetClass.kt") + public void testWaitNotifyGetClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty") + @TestDataPath("$PROJECT_ROOT") + public class FunctionAndProperty { + @Test + public void testAllFilesPresentInFunctionAndProperty() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("class.kt") + public void testClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.kt"); + } + + @Test + @TestMetadata("classObject.kt") + public void testClassObject() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.kt"); + } + + @Test + @TestMetadata("classPropertyInConstructor.kt") + public void testClassPropertyInConstructor() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.kt"); + } + + @Test + @TestMetadata("extensionFunctionAndNormalFunction.kt") + public void testExtensionFunctionAndNormalFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.kt"); + } + + @Test + @TestMetadata("extensionPropertyAndFunction.kt") + public void testExtensionPropertyAndFunction() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.kt"); + } + + @Test + @TestMetadata("functionAndSetter.kt") + public void testFunctionAndSetter() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.kt"); + } + + @Test + @TestMetadata("functionAndVar.kt") + public void testFunctionAndVar() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.kt"); + } + + @Test + @TestMetadata("localClass.kt") + public void testLocalClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.kt"); + } + + @Test + @TestMetadata("localClassInClass.kt") + public void testLocalClassInClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.kt"); + } + + @Test + @TestMetadata("nestedClass.kt") + public void testNestedClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.kt"); + } + + @Test + @TestMetadata("object.kt") + public void testObject() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.kt"); + } + + @Test + @TestMetadata("objectExpression.kt") + public void testObjectExpression() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.kt"); + } + + @Test + @TestMetadata("objectExpressionInConstructor.kt") + public void testObjectExpressionInConstructor() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.kt"); + } + + @Test + @TestMetadata("privateClassPropertyNoClash.kt") + public void testPrivateClassPropertyNoClash() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/privateClassPropertyNoClash.kt"); + } + + @Test + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.kt"); + } + + @Test + @TestMetadata("topLevelDifferentFiles.kt") + public void testTopLevelDifferentFiles() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelDifferentFiles.kt"); + } + + @Test + @TestMetadata("topLevelGetter.kt") + public void testTopLevelGetter() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.kt"); + } + + @Test + @TestMetadata("trait.kt") + public void testTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses") + @TestDataPath("$PROJECT_ROOT") + public class InlineClasses { + @Test + public void testAllFilesPresentInInlineClasses() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("declarationClash.kt") + public void testDeclarationClash() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames") + @TestDataPath("$PROJECT_ROOT") + public class SpecialNames { + @Test + public void testAllFilesPresentInSpecialNames() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("classObject.kt") + public void testClassObject() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObject.kt"); + } + + @Test + @TestMetadata("classObjectCopiedField.kt") + public void testClassObjectCopiedField() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.kt"); + } + + @Test + @TestMetadata("classObjectCopiedFieldObject.kt") + public void testClassObjectCopiedFieldObject() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.kt"); + } + + @Test + @TestMetadata("dataClassCopy.kt") + public void testDataClassCopy() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt"); + } + + @Test + @TestMetadata("defaults.kt") + public void testDefaults() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt"); + } + + @Test + @TestMetadata("delegationBy.kt") + public void testDelegationBy() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/delegationBy.kt"); + } + + @Test + @TestMetadata("enum.kt") + public void testEnum() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.kt"); + } + + @Test + @TestMetadata("innerClassField.kt") + public void testInnerClassField() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/innerClassField.kt"); + } + + @Test + @TestMetadata("instance.kt") + public void testInstance() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.kt"); + } + + @Test + @TestMetadata("propertyMetadataCache.kt") + public void testPropertyMetadataCache() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/propertyMetadataCache.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics") + @TestDataPath("$PROJECT_ROOT") + public class Statics { + @Test + public void testAllFilesPresentInStatics() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("jkjk.kt") + public void testJkjk() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/jkjk.kt"); + } + + @Test + @TestMetadata("kotlinClassExtendsJavaClass.kt") + public void testKotlinClassExtendsJavaClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/kotlinClassExtendsJavaClass.kt"); + } + + @Test + @TestMetadata("kotlinClassExtendsJavaClassExtendsJavaClass.kt") + public void testKotlinClassExtendsJavaClassExtendsJavaClass() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/kotlinClassExtendsJavaClassExtendsJavaClass.kt"); + } + + @Test + @TestMetadata("kotlinClassImplementsJavaInterface.kt") + public void testKotlinClassImplementsJavaInterface() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/kotlinClassImplementsJavaInterface.kt"); + } + + @Test + @TestMetadata("kotlinClassImplementsJavaInterfaceExtendsJavaInteface.kt") + public void testKotlinClassImplementsJavaInterfaceExtendsJavaInteface() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/kotlinClassImplementsJavaInterfaceExtendsJavaInteface.kt"); + } + + @Test + @TestMetadata("kotlinMembersVsJavaNonVisibleStatics.kt") + public void testKotlinMembersVsJavaNonVisibleStatics() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/statics/kotlinMembersVsJavaNonVisibleStatics.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized") + @TestDataPath("$PROJECT_ROOT") + public class Synthesized { + @Test + public void testAllFilesPresentInSynthesized() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("enumValuesValueOf.kt") + public void testEnumValuesValueOf() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl") + @TestDataPath("$PROJECT_ROOT") + public class TraitImpl { + @Test + public void testAllFilesPresentInTraitImpl() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("defaultVsNonDefault.kt") + public void testDefaultVsNonDefault() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.kt"); + } + + @Test + @TestMetadata("kt43611.kt") + public void testKt43611() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.kt"); + } + + @Test + @TestMetadata("oneTrait.kt") + public void testOneTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.kt"); + } + + @Test + @TestMetadata("traitFunctionOverriddenByPropertyInTrait.kt") + public void testTraitFunctionOverriddenByPropertyInTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.kt"); + } + + @Test + @TestMetadata("traitPropertyOverriddenByFunctionInTrait.kt") + public void testTraitPropertyOverriddenByFunctionInTrait() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.kt"); + } + + @Test + @TestMetadata("twoTraits.kt") + public void testTwoTraits() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses") + @TestDataPath("$PROJECT_ROOT") + public class ValueClasses { + @Test + public void testAllFilesPresentInValueClasses() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("declarationClash.kt") + public void testDeclarationClash() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.kt"); + } + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/multifileClasses") + @TestDataPath("$PROJECT_ROOT") + public class MultifileClasses { + @Test + public void testAllFilesPresentInMultifileClasses() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/multifileClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("jvmSynthetic.kt") + public void testJvmSynthetic() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/multifileClasses/jvmSynthetic.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/scripts") + @TestDataPath("$PROJECT_ROOT") + public class Scripts { + @Test + public void testAllFilesPresentInScripts() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/scripts"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/typeOf") + @TestDataPath("$PROJECT_ROOT") + public class TypeOf { + @Test + public void testAllFilesPresentInTypeOf() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/typeOf"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("nonReifiedTypeParameterWithRecursiveBound.kt") + public void testNonReifiedTypeParameterWithRecursiveBound() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/typeOf/nonReifiedTypeParameterWithRecursiveBound.kt"); + } + + @Test + @TestMetadata("suspendType.kt") + public void testSuspendType() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/typeOf/suspendType.kt"); + } + } + + @Nested + @TestMetadata("compiler/testData/diagnostics/testsWithJvmBackend/valueClasses") + @TestDataPath("$PROJECT_ROOT") + public class ValueClasses { + @Test + public void testAllFilesPresentInValueClasses() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJvmBackend/valueClasses"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true); + } + + @Test + @TestMetadata("cloneable.kt") + public void testCloneable() throws Exception { + runTest("compiler/testData/diagnostics/testsWithJvmBackend/valueClasses/cloneable.kt"); + } + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.fir.kt new file mode 100644 index 00000000000..52f59b0e95c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.fir.kt @@ -0,0 +1,15 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER +interface Foo { + fun foo(x: X) +} + +open class FooImpl : Foo { + override fun foo(x: String) { + } +} + +open class FooImpl2 : FooImpl() { + fun foo(x: Any) { + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.kt index 4d5a3fc834a..9bb1905aaf8 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/accidentalOverrideFromGrandparent.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { fun foo(x: X) diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.fir.kt index 7f101fb02cb..7cdafa1fa9c 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.fir.kt @@ -1,8 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + open class B { fun getX() = 1 } class C : B() { - val x: Int - get() = 1 + val x: Int + get() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.kt index cb114398459..39dc1b639e7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByProperty.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + open class B { fun getX() = 1 } @@ -5,4 +7,4 @@ open class B { class C : B() { val x: Int get() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.fir.kt new file mode 100644 index 00000000000..676068a71af --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + +open class B { + fun getX() = 1 +} + +class C : B() { + val x: Int = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.kt index edde17be14d..ccc4648cb72 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classFunctionOverriddenByPropertyNoGetter.kt @@ -1,8 +1,9 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + open class B { fun getX() = 1 } class C : B() { val x: Int = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.fir.kt new file mode 100644 index 00000000000..035dff7dd8a --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + +open class B { + val x: Int + get() = 1 +} + +class C : B() { + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt index 96c253a80bf..ff50f157394 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/classPropertyOverriddenByFunction.kt @@ -1,4 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + open class B { val x: Int get() = 1 @@ -6,4 +7,4 @@ open class B { class C : B() { fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.fir.kt new file mode 100644 index 00000000000..ce8ca162012 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE +// !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.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt index dcdaab42ff3..64609a7c1e7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/defaultFunction.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER open class Base { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.fir.kt new file mode 100644 index 00000000000..8f0c5740d9a --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +open class B { + fun foo(l: List) {} +} + +class C : B() { + fun foo(l: List) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.kt index 2a89e2e191e..e91c5a67d3b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/genericClassFunction.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER open class B { @@ -7,4 +7,4 @@ open class B { class C : B() { fun foo(l: List) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.fir.kt new file mode 100644 index 00000000000..245f99992a9 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + +interface B { + fun getX() = 1 +} + +class C : B { + override val x = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.kt index ca96c2a46d8..cea703420aa 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/overridesNothing.kt @@ -1,8 +1,9 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + interface B { fun getX() = 1 } class C : B { override val x = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.fir.kt index b9e4cf5f057..5250e70ff87 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.fir.kt @@ -1,8 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX() = 1 } class C : T { - val x: Int - get() = 1 + val x: Int + get() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.kt index f8f3d413c83..102ca654346 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByProperty.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX() = 1 } @@ -5,4 +7,4 @@ interface T { class C : T { val x: Int get() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.fir.kt index 8f2f51dec5b..7d31a0368c7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.fir.kt @@ -1,8 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX(): Int } abstract class C : T { - val x: Int - get() = 1 + val x: Int + get() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.kt index 428eaedd188..e9a8e2b11d5 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitFunctionOverriddenByPropertyNoImpl.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX(): Int } @@ -5,4 +7,4 @@ interface T { abstract class C : T { val x: Int get() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.fir.kt new file mode 100644 index 00000000000..dd5e5b6b279 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + +interface T { + val x: Int + get() = 1 +} + +class C : T { + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.kt index 2b6641460fa..aad952e94e7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunction.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE interface T { val x: Int diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.fir.kt new file mode 100644 index 00000000000..43f4eb6c2ea --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + +interface T { + val x: Int +} + +abstract class C : T { + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.kt index 646a33d55f7..25344c80389 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/accidentalOverrides/traitPropertyOverriddenByFunctionNoImpl.kt @@ -1,8 +1,9 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + interface T { val x: Int } abstract class C : T { fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.fir.kt new file mode 100644 index 00000000000..4a1f1c5e886 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.fir.kt @@ -0,0 +1,12 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +open class B { + open fun foo(t: T) {} +} + +class C : B() { + override fun foo(t: String) {} + + fun foo(o: Any) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.kt index b2cfcf398c8..563307708fb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/class.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER open class B { @@ -9,4 +9,4 @@ class C : B() { override fun foo(t: String) {} fun foo(o: Any) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.fir.kt new file mode 100644 index 00000000000..c350a2f6345 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface B { + fun foo(t: T) {} +} + +class C : B { + fun foo(o: Any) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.kt index 111ee53b25f..4cbfe2af193 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/fakeOverrideTrait.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface B { @@ -7,4 +7,4 @@ interface B { class C : B { fun foo(o: Any) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.fir.kt new file mode 100644 index 00000000000..2ae3cbfe7b1 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.fir.kt @@ -0,0 +1,12 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface B { + fun foo(t: T) {} +} + +class C : B { + override fun foo(t: String) {} + + fun foo(o: Any) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.kt index 8332516c771..c03b5bce7b7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/bridges/trait.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface B { @@ -9,4 +9,4 @@ class C : B { override fun foo(t: String) {} fun foo(o: Any) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.fir.kt new file mode 100644 index 00000000000..e757c4c0641 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.fir.kt @@ -0,0 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE + +val aa = 1 +val Aa = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.kt index c4342350441..7ad53983c84 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/caseInProperties.kt @@ -1,3 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + val aa = 1 -val Aa = 1 \ No newline at end of file +val Aa = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.fir.kt new file mode 100644 index 00000000000..f5dab32febd --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE +// !LANGUAGE: +InlineClasses, -JvmInlineValueClasses +// !DIAGNOSTICS: -UNUSED_PARAMETER + +inline class IC(val i: Int) + +fun foo(a: Any, ic: IC) {} +fun foo(a: Any?, ic: IC) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt index f142d9f2547..3cd82d2ab9b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/changingNullabilityOfOrdinaryClassIsBinaryCompatibleChange.kt @@ -1,8 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !LANGUAGE: +InlineClasses, -JvmInlineValueClasses // !DIAGNOSTICS: -UNUSED_PARAMETER inline class IC(val i: Int) fun foo(a: Any, ic: IC) {} -fun foo(a: Any?, ic: IC) {} \ No newline at end of file +fun foo(a: Any?, ic: IC) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.fir.kt new file mode 100644 index 00000000000..20af4e6b487 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.fir.kt @@ -0,0 +1,20 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +public open class A { + fun foo(x: T) = "O" + fun foo(x: A) = "K" +} + +interface C { + fun foo(x: E): String + fun foo(x: A): String +} + +interface D { + fun foo(x: A): String +} + +class B1 : A>(), D + +interface B2 : C>, D diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.kt index 3b66fcc0924..e045da5e2d7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/clashFromInterfaceAndSuperClass.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER public open class A { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.fir.kt new file mode 100644 index 00000000000..ee69af4329c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +fun foo(s: List) {} +fun foo(s: MutableList) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.kt index 6abcfe88fe0..bc9c2457461 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/collections.kt @@ -1,5 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER fun foo(s: List) {} -fun foo(s: MutableList) {} \ No newline at end of file +fun foo(s: MutableList) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.fir.kt new file mode 100644 index 00000000000..dca72f74897 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.fir.kt @@ -0,0 +1,15 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo { + fun foo(l: List) +} + +interface Bar { + fun foo(l: List) +} + +class Baz(f: Foo, b: Bar) : + Foo by f, + Bar by b { +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.kt index 3b835eb44ce..a1a64d4bfa1 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegateToTwoTraits.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.fir.kt new file mode 100644 index 00000000000..e977b88326b --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo { + fun foo(l: List) +} + +class Bar(f: Foo): Foo by f { + fun foo(l: List) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.kt index 27738d26a2c..7d8d245e6d2 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationAndOwnMethod.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.fir.kt new file mode 100644 index 00000000000..6e6ca4dcbf4 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.fir.kt @@ -0,0 +1,16 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo { + fun foo(l: List) { + + } +} + +class Bar(f: Foo): Foo by f { + fun foo(l: List) {} +} + +class BarOther(f: Foo): Foo by f { + override fun foo(l: List) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.kt index 9b608a382c0..e614ea4d334 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/delegationToTraitImplAndOwnMethod.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.fir.kt index 0fe46a7851a..81a5d0ff7da 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.fir.kt @@ -1,7 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + class G -val G.foo: Int - get() = 1 +val G.foo: Int + get() = 1 -val G.foo: Int - get() = 1 +val G.foo: Int + get() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.kt index fa4f8a0a017..0c0855d555f 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/extensionProperties.kt @@ -1,7 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + class G val G.foo: Int get() = 1 val G.foo: Int - get() = 1 \ No newline at end of file + get() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.fir.kt new file mode 100644 index 00000000000..13ff5b8a89c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.fir.kt @@ -0,0 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +class G + +fun foo(x: G): G {null!!} +fun foo(x: G): G {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.kt index 89aab75b675..02f0ca6ced2 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/genericType.kt @@ -1,7 +1,7 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class G fun foo(x: G): G {null!!} -fun foo(x: G): G {null!!} \ No newline at end of file +fun foo(x: G): G {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.fir.kt new file mode 100644 index 00000000000..2866e1d52f0 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.fir.kt @@ -0,0 +1,13 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo { + fun foo(l: List) {} +} + +interface Bar { + fun foo(l: List) {} +} + +class Baz(): Foo, Bar { +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.kt index 132b5ace90c..8e8ad40a0f8 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/inheritFromTwoTraits.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { @@ -10,4 +10,4 @@ interface Bar { } class Baz(): Foo, Bar { -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.fir.kt new file mode 100644 index 00000000000..4ce45644d4e --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER -PLATFORM_CLASS_MAPPED_TO_KOTLIN + +fun foo(s: List) {} +fun foo(s: java.util.List) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.kt index 0705b9e5e0c..cf4528d8232 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/kotlinAndJavaCollections.kt @@ -1,5 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER -PLATFORM_CLASS_MAPPED_TO_KOTLIN fun foo(s: List) {} -fun foo(s: java.util.List) {} \ No newline at end of file +fun foo(s: java.util.List) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.fir.kt new file mode 100644 index 00000000000..d0c372cdf24 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +fun foo(x: String) {} +fun foo(x: String?) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.kt index cd9ca636bfc..f031e6de924 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/nullableType.kt @@ -1,5 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER fun foo(x: String) {} -fun foo(x: String?) {} \ No newline at end of file +fun foo(x: String?) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.fir.kt new file mode 100644 index 00000000000..09d50bb6039 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.fir.kt @@ -0,0 +1,14 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface A { + fun foo(l: List) +} + +interface B { + fun foo(l: List) {} +} + +class C(f: A): A by f, B + +class D(f: A): A by f, B diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.kt index b1dc2c2191a..9feb89aa717 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/superTraitAndDelegationToTraitImpl.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface A { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.fir.kt new file mode 100644 index 00000000000..56b1fdc38d4 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.fir.kt @@ -0,0 +1,14 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo { + fun foo(l: List) {} +} + +interface Bar { + fun foo(l: List) {} +} + +class Baz(): Foo, Bar { + fun foo(l: List) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.kt index 13d4ddcbf99..7eb777a90cd 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/twoTraitsAndOwnFunction.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo { @@ -11,4 +11,4 @@ interface Bar { class Baz(): Foo, Bar { fun foo(l: List) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.fir.kt new file mode 100644 index 00000000000..c358e0f1d0d --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER -PLATFORM_CLASS_MAPPED_TO_KOTLIN + +fun foo(s: java.lang.String) {} +fun foo(s: String) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.kt index 0010af0d461..71898e33cc1 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeMappedToJava.kt @@ -1,5 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER -PLATFORM_CLASS_MAPPED_TO_KOTLIN fun foo(s: java.lang.String) {} -fun foo(s: String) {} \ No newline at end of file +fun foo(s: String) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.fir.kt new file mode 100644 index 00000000000..b8a73370ae8 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +fun foo(x: T): T {null!!} +fun foo(x: Any): Any {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.kt index 32c037936ee..7714caacae0 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameter.kt @@ -1,5 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER fun foo(x: T): T {null!!} -fun foo(x: Any): Any {null!!} \ No newline at end of file +fun foo(x: Any): Any {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.fir.kt new file mode 100644 index 00000000000..22c3a4dff84 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.fir.kt @@ -0,0 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo + +fun foo(x: T): T {null!!} +fun foo(x: Foo): Foo {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.kt index b57481b63a0..a227b18c0f7 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithBound.kt @@ -1,7 +1,7 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo fun foo(x: T): T {null!!} -fun foo(x: Foo): Foo {null!!} \ No newline at end of file +fun foo(x: Foo): Foo {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.fir.kt new file mode 100644 index 00000000000..c8419174236 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo +interface Bar + +fun foo(x: T): T where T: Foo, T: Bar {null!!} +fun foo(x: Foo): Foo {null!!} +fun foo(x: Bar): Bar {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.kt index 9c7f3088057..84875b046fb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBounds.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo @@ -6,4 +6,4 @@ interface Bar fun foo(x: T): T where T: Foo, T: Bar {null!!} fun foo(x: Foo): Foo {null!!} -fun foo(x: Bar): Bar {null!!} \ No newline at end of file +fun foo(x: Bar): Bar {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.fir.kt new file mode 100644 index 00000000000..c8419174236 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface Foo +interface Bar + +fun foo(x: T): T where T: Foo, T: Bar {null!!} +fun foo(x: Foo): Foo {null!!} +fun foo(x: Bar): Bar {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.kt index 9c7f3088057..84875b046fb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/erasure/typeParameterWithTwoBoundsInWhere.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface Foo @@ -6,4 +6,4 @@ interface Bar fun foo(x: T): T where T: Foo, T: Bar {null!!} fun foo(x: Foo): Foo {null!!} -fun foo(x: Bar): Bar {null!!} \ No newline at end of file +fun foo(x: Bar): Bar {null!!} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.fir.kt index ac2fc315d6e..1bf8a848b25 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.fir.kt @@ -1,6 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE + enum class E { ENTRY; fun getDeclaringClass() {} - fun finalize() {} + fun finalize() {} } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.kt index d333d24e91d..b821dfd0402 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/enumMembers.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + enum class E { ENTRY; diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.fir.kt new file mode 100644 index 00000000000..97d0a8fe932 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.fir.kt @@ -0,0 +1,20 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +// KT-7174 Report error on members with the same signature as non-overridable methods from mapped Java types (like Object.wait/notify) + +class A { + fun notify() {} + fun notifyAll() {} + fun wait() {} + fun wait(l: Long) {} + fun wait(l: Long, i: Int) {} + fun getClass(): Class = null!! +} + +fun notify() {} +fun notifyAll() {} +fun wait() {} +fun wait(l: Long) {} +fun wait(l: Long, i: Int) {} +fun getClass(): Class = null!! diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.kt index f549f797d1c..618f6a49c9b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/finalMembersFromBuiltIns/waitNotifyGetClass.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER // KT-7174 Report error on members with the same signature as non-overridable methods from mapped Java types (like Object.wait/notify) diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.fir.kt new file mode 100644 index 00000000000..f910fc8015d --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.fir.kt @@ -0,0 +1,6 @@ +// COMPARE_WITH_LIGHT_TREE + +class C { + val x = 1 + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.kt index 570f547b47a..b7851a5a29b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/class.kt @@ -1,5 +1,6 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class C { val x = 1 fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.fir.kt new file mode 100644 index 00000000000..b4ae1deb083 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE + +class C { + companion object { + val x = 1 + fun getX() = 1 + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.kt index 6dbb1669ef1..12a0346cfcb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classObject.kt @@ -1,7 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class C { companion object { val x = 1 fun getX() = 1 } -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.fir.kt new file mode 100644 index 00000000000..12a067f4e6c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.fir.kt @@ -0,0 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + +class C(val x: Int) { + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.kt index adeb6f954a0..5e42e2de0de 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/classPropertyInConstructor.kt @@ -1,4 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class C(val x: Int) { fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.fir.kt new file mode 100644 index 00000000000..300163f7d62 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.fir.kt @@ -0,0 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +class C { + fun foo(x: Any) {} + fun Any.foo() {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.kt index 08b0987c338..fdde1e754c3 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionFunctionAndNormalFunction.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.fir.kt index 400e96dd267..43d3493efd2 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.fir.kt @@ -1,7 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { - fun getX(t: Any) = 1 - val Any.x: Int - get() = 1 + fun getX(t: Any) = 1 + val Any.x: Int + get() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.kt index eec16d6f66a..d5b677e97ce 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/extensionPropertyAndFunction.kt @@ -1,3 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.fir.kt new file mode 100644 index 00000000000..c48c59f5342 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +class C { + fun setX(x: Int) {} + + var x: Int = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.kt index a97a645e0fa..dfdf7828781 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndSetter.kt @@ -1,8 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { fun setX(x: Int) {} var x: Int = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.fir.kt index afec6ea9e00..fc236e55c5b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.fir.kt @@ -1,8 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { - fun setX(x: Int) {} + fun setX(x: Int) {} - var x: Int = 1 - set(v) {} + var x: Int = 1 + set(v) {} } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.kt index 16c335a3207..9ba7b1364cb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/functionAndVar.kt @@ -1,3 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER class C { @@ -5,4 +6,4 @@ class C { var x: Int = 1 set(v) {} -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.fir.kt new file mode 100644 index 00000000000..dfeef0e6df2 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE + +fun foo() { + class C { + val x = 1 + fun getX() = 1 + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.kt index 051bd45b3f1..86446a92eb5 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClass.kt @@ -1,7 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + fun foo() { class C { val x = 1 fun getX() = 1 } -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.fir.kt new file mode 100644 index 00000000000..0481b75a5c9 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + +class Outer { + fun foo() { + class C { + val x = 1 + fun getX() = 1 + } + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.kt index 0e14eb1237c..1da3f3e405e 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/localClassInClass.kt @@ -1,4 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class Outer { fun foo() { class C { @@ -6,4 +7,4 @@ class Outer { fun getX() = 1 } } -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.fir.kt new file mode 100644 index 00000000000..628ee11bbdc --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE + +class B { + class C { + val x = 1 + fun getX() = 1 + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.kt index be5f4eb476b..5c40331bd80 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/nestedClass.kt @@ -1,7 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class B { class C { val x = 1 fun getX() = 1 } -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.fir.kt new file mode 100644 index 00000000000..518f64c69c9 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.fir.kt @@ -0,0 +1,6 @@ +// COMPARE_WITH_LIGHT_TREE + +object C { + val x = 1 + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.kt index 771f8953c06..f8cd431bd28 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/object.kt @@ -1,5 +1,6 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + object C { val x = 1 fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.fir.kt new file mode 100644 index 00000000000..0f23dd0221f --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.fir.kt @@ -0,0 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE + +fun foo() = + object { + val x = 1 + fun getX() = 1 + } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.kt index 566257b7900..0297d13d633 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpression.kt @@ -1,6 +1,7 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + fun foo() = object { val x = 1 fun getX() = 1 - } \ No newline at end of file + } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.fir.kt new file mode 100644 index 00000000000..2b236d99474 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.fir.kt @@ -0,0 +1,8 @@ +// COMPARE_WITH_LIGHT_TREE + +class Outer { + val x = object { + val x = 1 + fun getX() = 1 + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.kt index ea9059864b2..69133f37b33 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/objectExpressionInConstructor.kt @@ -1,7 +1,8 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class Outer { val x = object { val x = 1 fun getX() = 1 } -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.fir.kt new file mode 100644 index 00000000000..886fecb73a0 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.fir.kt @@ -0,0 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE + +val x = 1 +fun getX() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.kt index eef957606a2..78102ff892b 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevel.kt @@ -1,3 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + val x = 1 -fun getX() = 1 \ No newline at end of file +fun getX() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.fir.kt index a9a6d8067f9..1b1a26e0242 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.fir.kt @@ -1,3 +1,5 @@ -val x: Int - get() = 1 -fun getX() = 1 +// COMPARE_WITH_LIGHT_TREE + +val x: Int + get() = 1 +fun getX() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.kt index 8a2aced6a29..28951b52af4 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/topLevelGetter.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + val x: Int get() = 1 -fun getX() = 1 \ No newline at end of file +fun getX() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.fir.kt index 377cef7e93e..aae05ab0fdc 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.fir.kt @@ -1,5 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { - val x: Int - get() = 1 - fun getX() = 1 + val x: Int + get() = 1 + fun getX() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.kt index 81fca7ab9c5..45e2438586e 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/functionAndProperty/trait.kt @@ -1,5 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { val x: Int get() = 1 fun getX() = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.fir.kt index f47c76b2fb9..848d48d8029 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.fir.kt @@ -1,10 +1,11 @@ +// COMPARE_WITH_LIGHT_TREE // WITH_STDLIB @JvmInline value class A(val x: Int) { - constructor(x: UInt): this(x.toInt()) + constructor(x: UInt): this(x.toInt()) } data class B(val x: UInt) { - constructor(x: Int) : this(x.toUInt()) + constructor(x: Int) : this(x.toUInt()) } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.kt index d6518c301c5..d4e21455b72 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/inlineClasses/declarationClash.kt @@ -1,3 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE // WITH_STDLIB @JvmInline diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.fir.kt new file mode 100644 index 00000000000..0fda7cf5760 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + +class C { + companion object { + val X = 1 + val `X$1` = 1 + } + + val X = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.kt index a5487d35da7..2122b3ab827 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedField.kt @@ -1,4 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + class C { companion object { val X = 1 @@ -6,4 +7,4 @@ class C { } val X = 1 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.fir.kt new file mode 100644 index 00000000000..36a8cf89607 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.fir.kt @@ -0,0 +1,20 @@ +// COMPARE_WITH_LIGHT_TREE + +class B { + companion object A { + } + + val A: A = B.A +} + +class C { + companion object A { + val A: A = C.A + } +} + +class D { + companion object A { + lateinit var A: A + } +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.kt index f4bdc63a3dc..3c3035ff35a 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/classObjectCopiedFieldObject.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE class B { companion object A { diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.fir.kt new file mode 100644 index 00000000000..0640a60e87c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.fir.kt @@ -0,0 +1,6 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +data class C(val c: Int) { + fun `copy$default`(c: C, x: Int, m: Int, mh: Any) = C(this.c) +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt index 2b276437ceb..9f1b3881494 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/dataClassCopy.kt @@ -1,6 +1,6 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER data class C(val c: Int) { fun `copy$default`(c: C, x: Int, m: Int, mh: Any) = C(this.c) -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.fir.kt new file mode 100644 index 00000000000..3c61934974e --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.fir.kt @@ -0,0 +1,7 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +class C { + fun `a$default`(c: C, x: Int, m: Int, mh: Any) {} + fun a(x: Int = 1) {} +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt index 814ced9cf29..22b02c02240 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/defaults.kt @@ -1,7 +1,7 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !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/specialNames/enum.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.fir.kt new file mode 100644 index 00000000000..2690c61e08b --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +enum class E { + A; + + fun values(): Array = null!! + fun valueOf(s: String): E = null!! +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.kt index 226d81bd119..1d5a85e95af 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/enum.kt @@ -1,8 +1,9 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER + enum class E { A; fun values(): Array = null!! fun valueOf(s: String): E = null!! -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.fir.kt new file mode 100644 index 00000000000..e8ddc0dd38b --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + +object O { + val INSTANCE: O = null!! +} + +object O2 { + lateinit var INSTANCE: O2 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.kt index 49ecbcf6568..395b2b835e0 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/specialNames/instance.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE object O { val INSTANCE: O = null!! @@ -6,4 +6,4 @@ object O { object O2 { lateinit var INSTANCE: O2 -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.fir.kt new file mode 100644 index 00000000000..8812d76b1ab --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.fir.kt @@ -0,0 +1,14 @@ +// COMPARE_WITH_LIGHT_TREE + +enum class A { + A1, + A2; + + fun valueOf(s: String): A = valueOf(s) + + fun valueOf() = "OK" + + fun values(): Array = null!! + + fun values(x: String) = x +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.kt index 2e928695092..7eb5204cc94 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/synthesized/enumValuesValueOf.kt @@ -1,4 +1,5 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE + enum class A { A1, A2; diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.fir.kt new file mode 100644 index 00000000000..7d2db136306 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.fir.kt @@ -0,0 +1,12 @@ +// COMPARE_WITH_LIGHT_TREE + +interface Base1 { + fun getX(): Int +} + +interface Base2 { + val x: Int + get() = 1 +} + +interface Test : Base1, Base2 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.kt index c769a8fccc1..94dd0bd2dc9 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/defaultVsNonDefault.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE interface Base1 { fun getX(): Int diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.fir.kt new file mode 100644 index 00000000000..60cd47f30b6 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +interface A { + fun f(a: List): String = TODO() + private fun f(a: List): String = TODO() +} + +class B : A diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.kt index 74ac3b4cce4..cf32cb23a1c 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/kt43611.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER interface A { @@ -6,4 +6,4 @@ interface A { private fun f(a: List): String = TODO() } -class B : A \ No newline at end of file +class B : A diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.fir.kt new file mode 100644 index 00000000000..436d7a2bf7e --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.fir.kt @@ -0,0 +1,9 @@ +// COMPARE_WITH_LIGHT_TREE + +interface T { + fun getX() = 1 +} + +class C : T { + val x = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.kt index 06f0e31bffd..ec09db62f51 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/oneTrait.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE interface T { fun getX() = 1 diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.fir.kt index 32381a3c31c..36be921e368 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.fir.kt @@ -1,8 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX() = 1 } interface C : T { - val x: Int - get() = 1 + val x: Int + get() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.kt index 77b0641286e..87bbee44bc1 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitFunctionOverriddenByPropertyInTrait.kt @@ -1,3 +1,5 @@ +// COMPARE_WITH_LIGHT_TREE + interface T { fun getX() = 1 } diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.fir.kt new file mode 100644 index 00000000000..652e53fe999 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.fir.kt @@ -0,0 +1,10 @@ +// COMPARE_WITH_LIGHT_TREE + +interface T { + val x: Int + get() = 1 +} + +interface C : T { + fun getX() = 1 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.kt index f87f32f2483..bf530b14477 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/traitPropertyOverriddenByFunctionInTrait.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE interface T { val x: Int diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.fir.kt new file mode 100644 index 00000000000..bcf87c2668a --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.fir.kt @@ -0,0 +1,13 @@ +// COMPARE_WITH_LIGHT_TREE + +interface T1 { + fun getX() = 1 +} + +interface T2 { + val x: Int + get() = 1 +} + +class C : T1, T2 { +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.kt index a205e63ee4e..6494de3df1f 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/traitImpl/twoTraits.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE interface T1 { fun getX() = 1 @@ -10,4 +10,4 @@ interface T2 { } class C : T1, T2 { -} \ No newline at end of file +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.fir.kt index f2ce85eab0f..b00e9cd8efb 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.fir.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.fir.kt @@ -1,13 +1,14 @@ +// COMPARE_WITH_LIGHT_TREE // !LANGUAGE: +ValueClasses // WITH_STDLIB @JvmInline value class A(val x: Int, val y: Int) { - constructor(other: A): this(other.x, other.y) - constructor(x: UInt, y: UInt): this(x.toInt(), y.toInt()) + constructor(other: A): this(other.x, other.y) + constructor(x: UInt, y: UInt): this(x.toInt(), y.toInt()) } -data class B(val x: UInt, val y: UInt) { - constructor(other: A) : this(other.x, other.y) - constructor(x: Int, y: Int) : this(x.toUInt(), y.toUInt()) -} +data class B(val x: UInt, val y: UInt) { + constructor(other: A) : this(other.x, other.y) + constructor(x: Int, y: Int) : this(x.toUInt(), y.toUInt()) +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.kt index 9d024d14dae..925fb351423 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/valueClasses/declarationClash.kt @@ -1,3 +1,4 @@ +// COMPARE_WITH_LIGHT_TREE // !LANGUAGE: +ValueClasses // WITH_STDLIB diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.fir.kt new file mode 100644 index 00000000000..bd313ab9e71 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.fir.kt @@ -0,0 +1,11 @@ +// COMPARE_WITH_LIGHT_TREE +// !DIAGNOSTICS: -UNUSED_PARAMETER + +fun foo(vararg x: Int) {} +fun foo(x: IntArray) {} + +fun foo(vararg x: Int?) {} +fun foo(x: Array) {} + +fun foo(vararg nn: Number) {} +fun foo(nn: Array) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.kt b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.kt index 018bf68eeee..5d5c15025f8 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/duplicateJvmSignature/vararg.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE // !DIAGNOSTICS: -UNUSED_PARAMETER fun foo(vararg x: Int) {} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.fir.kt b/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.fir.kt new file mode 100644 index 00000000000..9b5b3cd572d --- /dev/null +++ b/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.fir.kt @@ -0,0 +1,21 @@ +// COMPARE_WITH_LIGHT_TREE + +class Fun : + (Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, + Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int) -> Int, + (Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, + Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int) -> Int +{ + override fun invoke( + p00: Int, p01: Int, p02: Int, p03: Int, p04: Int, p05: Int, p06: Int, p07: Int, p08: Int, p09: Int, + p10: Int, p11: Int, p12: Int, p13: Int, p14: Int, p15: Int, p16: Int, p17: Int, p18: Int, p19: Int, + p20: Int, p21: Int, p22: Int, p23: Int, p24: Int, p25: Int, p26: Int, p27: Int, p28: Int, p29: Int + ): Int = 330 + + override fun invoke( + p00: Int, p01: Int, p02: Int, p03: Int, p04: Int, p05: Int, p06: Int, p07: Int, p08: Int, p09: Int, + p10: Int, p11: Int, p12: Int, p13: Int, p14: Int, p15: Int, p16: Int, p17: Int, p18: Int, p19: Int, + p20: Int, p21: Int, p22: Int, p23: Int, p24: Int, p25: Int, p26: Int, p27: Int, p28: Int, p29: Int, + p30: Int, p31: Int, p32: Int + ): Int = 333 +} diff --git a/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.kt b/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.kt index 2c2564c4eee..7b4bb559b4f 100644 --- a/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.kt +++ b/compiler/testData/diagnostics/testsWithJvmBackend/multipleBigArityFunsImplemented.kt @@ -1,4 +1,4 @@ -// FIR_IDENTICAL +// COMPARE_WITH_LIGHT_TREE class Fun : (Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, Int, diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/JvmBackendDiagnosticsHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/JvmBackendDiagnosticsHandler.kt index a22d85431e9..52774fc7871 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/JvmBackendDiagnosticsHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/JvmBackendDiagnosticsHandler.kt @@ -15,7 +15,10 @@ import org.jetbrains.kotlin.diagnostics.impl.BaseDiagnosticsCollector import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.resolve.jvm.diagnostics.KtDefaultJvmErrorMessages +import org.jetbrains.kotlin.test.FirParser import org.jetbrains.kotlin.test.directives.DiagnosticsDirectives +import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives +import org.jetbrains.kotlin.test.directives.model.singleOrZeroValue import org.jetbrains.kotlin.test.frontend.classic.handlers.ClassicDiagnosticReporter import org.jetbrains.kotlin.test.frontend.classic.handlers.withNewInferenceModeEnabled import org.jetbrains.kotlin.test.frontend.fir.handlers.FirDiagnosticCodeMetaInfo @@ -57,11 +60,13 @@ class JvmBackendDiagnosticsHandler(testServices: TestServices) : JvmBinaryArtifa private fun reportKtDiagnostics(module: TestModule, info: BinaryArtifacts.Jvm) { val ktDiagnosticReporter = info.classFileFactory.generationState.diagnosticReporter as BaseDiagnosticsCollector val globalMetadataInfoHandler = testServices.globalMetadataInfoHandler + val firParser = module.directives.singleOrZeroValue(FirDiagnosticsDirectives.FIR_PARSER) + val lightTreeComparingModeEnabled = firParser != null && FirDiagnosticsDirectives.COMPARE_WITH_LIGHT_TREE in module.directives + val lightTreeEnabled = firParser == FirParser.LightTree for (testFile in module.files) { val ktDiagnostics = ktDiagnosticReporter.diagnosticsByFilePath["/${testFile.name}"] ?: continue ktDiagnostics.forEach { - val metaInfos = - it.toMetaInfos(module, testFile, globalMetadataInfoHandler, false, false) + val metaInfos = it.toMetaInfos(module, testFile, globalMetadataInfoHandler, lightTreeEnabled, lightTreeComparingModeEnabled) globalMetadataInfoHandler.addMetadataInfosForFile(testFile, metaInfos) } } diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractDiagnosticsTestWithJvmBackend.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractDiagnosticsTestWithJvmBackend.kt index c9d61fe8c77..54fea49b7bb 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractDiagnosticsTestWithJvmBackend.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractDiagnosticsTestWithJvmBackend.kt @@ -29,6 +29,7 @@ import org.jetbrains.kotlin.test.frontend.fir.Fir2IrJvmResultsConverter import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact import org.jetbrains.kotlin.test.frontend.fir.handlers.FirDiagnosticsHandler +import org.jetbrains.kotlin.test.frontend.fir.handlers.PsiLightTreeMetaInfoProcessor import org.jetbrains.kotlin.test.model.* import org.jetbrains.kotlin.test.services.configuration.CommonEnvironmentConfigurator import org.jetbrains.kotlin.test.services.configuration.JvmEnvironmentConfigurator @@ -63,6 +64,7 @@ abstract class AbstractDiagnosticsTestWithJvmBackend) { model("diagnostics/testsWithJvmBackend", excludedPattern = excludedCustomTestdataPattern) } + testClass { + model("diagnostics/testsWithJvmBackend", excludedPattern = excludedCustomTestdataPattern) + } + testClass { model("codegen/boxInline") }