From b3b184f00d607742b79a71677a38cc5fd0caa7be Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Thu, 16 Nov 2023 15:48:11 +0100 Subject: [PATCH] [FIR] add more tests diagnostic tests on data and delegated classes ^KT-63522 ^KT-63512 ^KT-63042 --- .../dataClass/component1TypeCollision.kt | 8 + .../dataClass/component1TypeCollision.txt | 376 +++++++++ .../component1TypeCollisionAndAnnotations.kt | 17 + .../component1TypeCollisionAndAnnotations.txt | 649 +++++++++++++++ ...nent1TypeCollisionAndAnnotationsScript.kts | 17 + ...nent1TypeCollisionAndAnnotationsScript.txt | 752 ++++++++++++++++++ .../component1TypeCollisionScript.kts | 8 + .../component1TypeCollisionScript.txt | 453 +++++++++++ .../classes/dataClass/copyTypeCollision.kt | 8 + .../classes/dataClass/copyTypeCollision.txt | 376 +++++++++ .../copyTypeCollisionAndAnnotations.kt | 17 + .../copyTypeCollisionAndAnnotations.txt | 649 +++++++++++++++ .../copyTypeCollisionAndAnnotationsScript.kts | 17 + .../copyTypeCollisionAndAnnotationsScript.txt | 752 ++++++++++++++++++ .../dataClass/copyTypeCollisionScript.kts | 8 + .../dataClass/copyTypeCollisionScript.txt | 453 +++++++++++ .../dataClass/parameterTypeCollision.kt | 7 + .../dataClass/parameterTypeCollision.txt | 376 +++++++++ .../parameterTypeCollisionAndAnnotations.kt | 16 + .../parameterTypeCollisionAndAnnotations.txt | 649 +++++++++++++++ ...meterTypeCollisionAndAnnotationsScript.kts | 16 + ...meterTypeCollisionAndAnnotationsScript.txt | 752 ++++++++++++++++++ .../parameterTypeCollisionScript.kts | 7 + .../parameterTypeCollisionScript.txt | 453 +++++++++++ .../dataClass/propertyTypeCollision.kt | 8 + .../dataClass/propertyTypeCollision.txt | 376 +++++++++ .../propertyTypeCollisionAndAnnotations.kt | 17 + .../propertyTypeCollisionAndAnnotations.txt | 649 +++++++++++++++ ...pertyTypeCollisionAndAnnotationsScript.kts | 17 + ...pertyTypeCollisionAndAnnotationsScript.txt | 752 ++++++++++++++++++ .../dataClass/propertyTypeCollisionScript.kts | 8 + .../dataClass/propertyTypeCollisionScript.txt | 453 +++++++++++ .../delegateFieldWithAnnotationClash.kt | 14 + .../delegateFieldWithAnnotationClash.txt | 456 +++++++++++ ...delegateFieldWithAnnotationClashScript.kts | 14 + ...delegateFieldWithAnnotationClashScript.txt | 572 +++++++++++++ ...gatedFieldNestedNameClashAndAnnotations.kt | 19 + ...atedFieldNestedNameClashAndAnnotations.txt | 611 ++++++++++++++ ...eldNestedNameClashAndAnnotationsScript.kts | 19 + ...eldNestedNameClashAndAnnotationsScript.txt | 727 +++++++++++++++++ ...dNameClashWithNestedTypesAndAnnotations.kt | 18 + ...NameClashWithNestedTypesAndAnnotations.txt | 611 ++++++++++++++ ...ashWithNestedTypesAndAnnotationsScript.kts | 18 + ...ashWithNestedTypesAndAnnotationsScript.txt | 727 +++++++++++++++++ .../delegateFieldWithAnnotationClash.kt | 15 + .../delegateFieldWithAnnotationClash.txt | 456 +++++++++++ ...delegateFieldWithAnnotationClashScript.kts | 15 + ...delegateFieldWithAnnotationClashScript.txt | 572 +++++++++++++ .../delegatedFieldNestedNameClash.kt | 10 + .../delegatedFieldNestedNameClash.txt | 273 +++++++ ...gatedFieldNestedNameClashAndAnnotations.kt | 20 + ...atedFieldNestedNameClashAndAnnotations.txt | 611 ++++++++++++++ ...eldNestedNameClashAndAnnotationsScript.kts | 20 + ...eldNestedNameClashAndAnnotationsScript.txt | 727 +++++++++++++++++ .../delegatedFieldNestedNameClashScript.kts | 10 + .../delegatedFieldNestedNameClashScript.txt | 350 ++++++++ ...atedFieldNestedNameClashWithNestedTypes.kt | 10 + ...tedFieldNestedNameClashWithNestedTypes.txt | 273 +++++++ ...dNameClashWithNestedTypesAndAnnotations.kt | 19 + ...NameClashWithNestedTypesAndAnnotations.txt | 611 ++++++++++++++ ...ashWithNestedTypesAndAnnotationsScript.kts | 19 + ...ashWithNestedTypesAndAnnotationsScript.txt | 727 +++++++++++++++++ ...ldNestedNameClashWithNestedTypesScript.kts | 10 + ...ldNestedNameClashWithNestedTypesScript.txt | 350 ++++++++ ...tedNameClashAndAnnotationsAsConstructor.kt | 20 + ...edNameClashAndAnnotationsAsConstructor.txt | 611 ++++++++++++++ ...ClashAndAnnotationsAsConstructorScript.kts | 20 + ...ClashAndAnnotationsAsConstructorScript.txt | 727 +++++++++++++++++ ...hNestedTypesAndAnnotationsAsConstructor.kt | 19 + ...NestedTypesAndAnnotationsAsConstructor.txt | 611 ++++++++++++++ ...TypesAndAnnotationsAsConstructorScript.kts | 19 + ...TypesAndAnnotationsAsConstructorScript.txt | 727 +++++++++++++++++ ...otLazyDeclarationResolveTestGenerated.java | 118 +++ ...ptLazyDeclarationResolveTestGenerated.java | 118 +++ ...ceLazyDeclarationResolveTestGenerated.java | 118 +++ ...CompilerTestFE10TestdataTestGenerated.java | 42 + ...LFirBlackBoxCodegenBasedTestGenerated.java | 12 + ...sticCompilerFE10TestDataTestGenerated.java | 42 + ...rsedBlackBoxCodegenBasedTestGenerated.java | 12 + ...eeOldFrontendDiagnosticsTestGenerated.java | 42 + ...siOldFrontendDiagnosticsTestGenerated.java | 42 + ...LightTreeBlackBoxCodegenTestGenerated.java | 12 + ...hIrFakeOverrideGeneratorTestGenerated.java | 12 + .../FirPsiBlackBoxCodegenTestGenerated.java | 12 + .../box/delegation/nestedNameClash.ir.txt | 109 +++ .../codegen/box/delegation/nestedNameClash.kt | 16 + .../delegation/nestedNameClash2.fir.ir.txt | 103 +++ .../box/delegation/nestedNameClash2.ir.txt | 108 +++ .../box/delegation/nestedNameClash2.kt | 16 + .../dataClasses/propertyTypeCollision.fir.txt | 38 + .../dataClasses/propertyTypeCollision.kt | 20 + ...ropertyTypeCollisionAndAnnotations.fir.txt | 59 ++ .../propertyTypeCollisionAndAnnotations.kt | 28 + .../delegateFieldWithAnnotationClash.fir.txt | 43 + .../delegateFieldWithAnnotationClash.kt | 16 + .../clashes/nestedNameClash.fir.txt | 32 + .../delegation/clashes/nestedNameClash.kt | 16 + .../clashes/nestedNameClash2.fir.txt | 32 + .../delegation/clashes/nestedNameClash2.kt | 16 + .../clashes/nestedNameClash3.fir.kt | 15 + .../clashes/nestedNameClash3.fir.txt | 32 + .../delegation/clashes/nestedNameClash3.kt | 15 + .../nestedNameClashAndAnnotations.fir.txt | 48 ++ .../clashes/nestedNameClashAndAnnotations.kt | 22 + ...edNameClashAndAnnotations.reversed.fir.txt | 48 ++ .../nestedNameClashAndAnnotations.reversed.kt | 22 + .../test/runners/DiagnosticTestGenerated.java | 42 + .../codegen/BlackBoxCodegenTestGenerated.java | 12 + .../IrBlackBoxCodegenTestGenerated.java | 12 + ...kBoxCodegenWithIrInlinerTestGenerated.java | 12 + .../LightAnalysisModeTestGenerated.java | 10 + .../fir/FirJsCodegenBoxTestGenerated.java | 12 + .../fir/FirJsES6CodegenBoxTestGenerated.java | 12 + .../test/ir/IrJsCodegenBoxTestGenerated.java | 12 + .../ir/IrJsES6CodegenBoxTestGenerated.java | 12 + .../FirNativeCodegenBoxTestGenerated.java | 12 + .../FirNativeCodegenBoxTestNoPLGenerated.java | 12 + .../NativeCodegenBoxTestGenerated.java | 12 + .../NativeCodegenBoxTestNoPLGenerated.java | 12 + .../test/FirWasmCodegenBoxTestGenerated.java | 12 + .../test/K1WasmCodegenBoxTestGenerated.java | 12 + 121 files changed, 22418 insertions(+) create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollision.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollision.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/copyTypeCollisionScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollision.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollision.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/parameterTypeCollisionScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollision.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollision.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/propertyTypeCollisionScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegateFieldWithAnnotationClash.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegateFieldWithAnnotationClash.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegateFieldWithAnnotationClashScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegateFieldWithAnnotationClashScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashWithNestedTypesAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashWithNestedTypesAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/classes/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegateFieldWithAnnotationClash.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegateFieldWithAnnotationClash.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegateFieldWithAnnotationClashScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegateFieldWithAnnotationClashScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClash.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClash.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypes.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypes.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesAndAnnotations.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesAndAnnotations.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/delegatedFieldNestedNameClashWithNestedTypesScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashAndAnnotationsAsConstructor.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashAndAnnotationsAsConstructor.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashAndAnnotationsAsConstructorScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashAndAnnotationsAsConstructorScript.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsAsConstructor.kt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsAsConstructor.txt create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsAsConstructorScript.kts create mode 100644 analysis/low-level-api-fir/testData/lazyResolve/functions/delegatedFieldNestedNameClashWithNestedTypesAndAnnotationsAsConstructorScript.txt create mode 100644 compiler/testData/codegen/box/delegation/nestedNameClash.ir.txt create mode 100644 compiler/testData/codegen/box/delegation/nestedNameClash.kt create mode 100644 compiler/testData/codegen/box/delegation/nestedNameClash2.fir.ir.txt create mode 100644 compiler/testData/codegen/box/delegation/nestedNameClash2.ir.txt create mode 100644 compiler/testData/codegen/box/delegation/nestedNameClash2.kt create mode 100644 compiler/testData/diagnostics/tests/dataClasses/propertyTypeCollision.fir.txt create mode 100644 compiler/testData/diagnostics/tests/dataClasses/propertyTypeCollision.kt create mode 100644 compiler/testData/diagnostics/tests/dataClasses/propertyTypeCollisionAndAnnotations.fir.txt create mode 100644 compiler/testData/diagnostics/tests/dataClasses/propertyTypeCollisionAndAnnotations.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/delegateFieldWithAnnotationClash.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/delegateFieldWithAnnotationClash.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash2.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash2.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash3.fir.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash3.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClash3.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClashAndAnnotations.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClashAndAnnotations.kt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClashAndAnnotations.reversed.fir.txt create mode 100644 compiler/testData/diagnostics/tests/delegation/clashes/nestedNameClashAndAnnotations.reversed.kt diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.kt b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.kt new file mode 100644 index 00000000000..65274c56a1e --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.kt @@ -0,0 +1,8 @@ +// MEMBER_NAME_FILTER: component1 +package one.two + +class MyClass + +data class MyDataClass(val prop: MyClass) { + class MyClass +} diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.txt b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.txt new file mode 100644 index 00000000000..8dd920c6e68 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollision.txt @@ -0,0 +1,376 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(RAW_FIR)] fun component1(): MyClass + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(RAW_FIR)] fun component1(): MyClass + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] fun component1(): MyClass + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(COMPANION_GENERATION)] fun component1(): MyClass + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(SUPER_TYPES)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(SUPER_TYPES)] fun component1(): MyClass + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(TYPES)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: MyClass): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: MyClass = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): MyClass + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final operator [ResolvedTo(TYPES)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: MyClass = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(STATUS)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(CONTRACTS)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(ANNOTATION_ARGUMENTS)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollision.kt + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final operator [ResolvedTo(BODY_RESOLVE)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] component1TypeCollision.kt + public final [ResolvedTo(BODY_RESOLVE)] class MyClass : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyClass| { + super() + } + + } + public final data [ResolvedTo(BODY_RESOLVE)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|one/two/MyDataClass.MyClass|): R|one/two/MyDataClass| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|one/two/MyDataClass.MyClass| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyDataClass] get(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(BODY_RESOLVE)] class MyClass : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] constructor(): R|one/two/MyDataClass.MyClass| { + super() + } + + } + + public final operator [ResolvedTo(BODY_RESOLVE)] fun component1(): R|one/two/MyDataClass.MyClass| + + public final [ResolvedTo(BODY_RESOLVE)] fun copy([ResolvedTo(BODY_RESOLVE)] prop: R|one/two/MyDataClass.MyClass| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.kt b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.kt new file mode 100644 index 00000000000..9b243fd18ae --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.kt @@ -0,0 +1,17 @@ +// MEMBER_NAME_FILTER: component1 +package one.two + +@Target(AnnotationTarget.TYPE) +annotation class Anno(val i: Int) + +const val constant = "" + +class MyClass + +data class MyDataClass(val prop: @Anno(0 + constant) MyClass<@Anno(1 + constant) MyClass<@Anno(2 + constant) Int>>) { + class MyClass + + companion object { + const val constant = 0 + } +} diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.txt b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.txt new file mode 100644 index 00000000000..e40879874b5 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotations.txt @@ -0,0 +1,649 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] component1TypeCollisionAndAnnotations.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(RAW_FIR)] fun component1(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(RAW_FIR)] fun component1(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] fun component1(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(RAW_FIR)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(COMPANION_GENERATION)] fun component1(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(SUPER_TYPES)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(SUPER_TYPES)] fun component1(): @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public? final? data [ResolvedTo(TYPES)] class MyDataClass : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>>): R|one/two/MyDataClass| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: @R|one/two/Anno|[Unresolved](IntegerLiteral(0).plus#(constant#)) MyClass|> = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyDataClass] get(): @R|one/two/Anno|[Unresolved](IntegerLiteral(0).plus#(constant#)) MyClass|> + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public? final operator [ResolvedTo(TYPES)] fun component1(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public final [ResolvedTo(RAW_FIR)] fun copy([ResolvedTo(RAW_FIR)] prop: @Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) MyClass<@Anno[Unresolved](LAZY_EXPRESSION) Int>> = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public final operator [ResolvedTo(STATUS)] fun component1(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { + private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + + } + + public final operator [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun component1(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public final const [ResolvedTo(STATUS)] val constant: = LAZY_EXPRESSION + public [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): + + } + + public final operator [ResolvedTo(CONTRACTS)] fun component1(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=one/two/Anno.i] i: Int): R|one/two/Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): Int + + } + public? final? const [ResolvedTo(RAW_FIR)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public final const [ResolvedTo(STATUS)] val constant: = LAZY_EXPRESSION + public [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): + + } + + public final operator [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun component1(): R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/Anno.i] i: R|kotlin/Int|): R|one/two/Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/Int| + + } + public? final? const [ResolvedTo(TYPES)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(TYPES)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Companion] get(): R|kotlin/Int| + + } + + public final operator [ResolvedTo(ANNOTATION_ARGUMENTS)] fun component1(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/Anno.i] i: R|kotlin/Int|): R|one/two/Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/Int| + + } + public? final? const [ResolvedTo(TYPES)] val constant: = LAZY_EXPRESSION + public? [ResolvedTo(TYPES)] get(): + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] A> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] A>(): R|one/two/MyClass| { + LAZY_super + } + + } + public final data [ResolvedTo(STATUS)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>|): R|one/two/MyDataClass| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public? final? [ResolvedTo(RAW_FIR)] class MyClass<[ResolvedTo(RAW_FIR)] B> : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(RAW_FIR)] B>(): R|one/two/MyDataClass.MyClass| { + LAZY_super + } + + } + + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + LAZY_super + } + + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Companion] get(): R|kotlin/Int| + + } + + public final operator [ResolvedTo(BODY_RESOLVE)] fun component1(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public final [ResolvedTo(STATUS)] fun copy([ResolvedTo(STATUS)] prop: R|@R|one/two/Anno|(IntegerLiteral(0).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(1).plus#(constant#)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(IntegerLiteral(2).plus#(constant#)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] component1TypeCollisionAndAnnotations.kt + @R|kotlin/annotation/Target|[Types](allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|)) public final [ResolvedTo(BODY_RESOLVE)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=one/two/Anno.i] i: R|kotlin/Int|): R|one/two/Anno| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] get(): R|kotlin/Int| + + } + public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/String| = String() + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String| + public final [ResolvedTo(BODY_RESOLVE)] class MyClass<[ResolvedTo(BODY_RESOLVE)] A> : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(BODY_RESOLVE)] A>(): R|one/two/MyClass| { + super() + } + + } + public final data [ResolvedTo(BODY_RESOLVE)] class MyDataClass : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyDataClass] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=one/two/MyDataClass.prop] prop: R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>|): R|one/two/MyDataClass| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [ComponentFunctionSymbolKey=one/two/MyDataClass.component1, IsFromPrimaryConstructor=true] val prop: R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyDataClass] get(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public final [ResolvedTo(BODY_RESOLVE)] class MyClass<[ResolvedTo(BODY_RESOLVE)] B> : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] constructor<[ResolvedTo(BODY_RESOLVE)] B>(): R|one/two/MyDataClass.MyClass| { + super() + } + + } + + public final companion [ResolvedTo(BODY_RESOLVE)] object Companion : R|kotlin/Any| { + private [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Companion] constructor(): R|one/two/MyDataClass.Companion| { + super() + } + + public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Companion] get(): R|kotlin/Int| + + } + + public final operator [ResolvedTo(BODY_RESOLVE)] fun component1(): R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| + + public final [ResolvedTo(BODY_RESOLVE)] fun copy([ResolvedTo(BODY_RESOLVE)] prop: R|@R|one/two/Anno|(i = Int(0).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(1).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) one/two/MyDataClass.MyClass<@R|one/two/Anno|(i = Int(2).R|kotlin/Int.plus|(this@R|one/two/MyDataClass.Companion|.R|one/two/MyDataClass.Companion.constant|)) kotlin/Int>>| = this@R|one/two/MyDataClass|.R|one/two/MyDataClass.prop|): R|one/two/MyDataClass| + + } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.kts b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.kts new file mode 100644 index 00000000000..9b243fd18ae --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.kts @@ -0,0 +1,17 @@ +// MEMBER_NAME_FILTER: component1 +package one.two + +@Target(AnnotationTarget.TYPE) +annotation class Anno(val i: Int) + +const val constant = "" + +class MyClass + +data class MyDataClass(val prop: @Anno(0 + constant) MyClass<@Anno(1 + constant) MyClass<@Anno(2 + constant) Int>>) { + class MyClass + + companion object { + const val constant = 0 + } +} diff --git a/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.txt new file mode 100644 index 00000000000..6ca28ea66d6 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/classes/dataClass/component1TypeCollisionAndAnnotationsScript.txt @@ -0,0 +1,752 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] component1TypeCollisionAndAnnotationsScript.kts + context(