[FIR] Use lazy constructor delegate even if there's no KtConstructor

Twelfth step for ^KT-52615

Merge-request: KT-MR-8895
Merged-by: Egor Kulikov <Egor.Kulikov@jetbrains.com>
This commit is contained in:
Egor Kulikov
2023-02-20 10:50:09 +00:00
committed by Space Team
parent 477072b3e7
commit 6bb71b44f6
46 changed files with 324 additions and 321 deletions
@@ -96,14 +96,13 @@ internal object FirLazyBodiesCalculator {
fun calculateLazyBodyForConstructor(designation: FirDesignation) {
val constructor = designation.target as FirConstructor
require(constructor.psi is KtConstructor<*>)
require(needCalculatingLazyBodyForConstructor(constructor))
val newConstructor = RawFirNonLocalDeclarationBuilder.buildWithFunctionSymbolRebind(
session = constructor.moduleData.session,
scopeProvider = constructor.moduleData.session.kotlinScopeProvider,
designation = designation,
rootNonLocalDeclaration = constructor.psi as KtConstructor<*>,
rootNonLocalDeclaration = constructor.psi as KtDeclaration,
) as FirConstructor
constructor.apply {
@@ -24,8 +24,10 @@ import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.psi
import org.jetbrains.kotlin.psi.*
import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject
import org.jetbrains.kotlin.psi.psiUtil.hasExpectModifier
import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull
import org.jetbrains.kotlin.utils.addToStdlib.lastIsInstanceOrNull
internal class RawFirNonLocalDeclarationBuilder private constructor(
session: FirSession,
@@ -136,7 +138,7 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
private fun extractContructorConversionParams(
classOrObject: KtClassOrObject,
constructor: KtConstructor<*>
constructor: KtConstructor<*>?
): ConstructorConversionParams {
val typeParameters = mutableListOf<FirTypeParameterRef>()
context.appendOuterTypeParameters(ignoreLastLevel = false, typeParameters)
@@ -144,7 +146,7 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
withPsiEntry("constructor", constructor)
}
val selfType = classOrObject.toDelegatedSelfType(typeParameters, containingClass.symbol)
val superTypeCallEntry = classOrObject.superTypeListEntries.firstIsInstanceOrNull<KtSuperTypeCallEntry>()
val superTypeCallEntry = classOrObject.superTypeListEntries.lastIsInstanceOrNull<KtSuperTypeCallEntry>()
return ConstructorConversionParams(superTypeCallEntry, selfType, typeParameters)
}
@@ -163,8 +165,7 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
)
}
override fun visitPrimaryConstructor(constructor: KtPrimaryConstructor, data: Unit?): FirElement {
val classOrObject = constructor.getContainingClassOrObject()
fun processPrimaryConstructor(classOrObject: KtClassOrObject, constructor: KtPrimaryConstructor?): FirElement {
val params = extractContructorConversionParams(classOrObject, constructor)
val firConstructor = originalDeclaration as FirConstructor
val calleeReference = firConstructor.delegatedConstructor?.calleeReference as FirSuperReference?
@@ -183,6 +184,9 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
return newConstructor
}
override fun visitPrimaryConstructor(constructor: KtPrimaryConstructor, data: Unit?): FirElement =
processPrimaryConstructor(constructor.getContainingClassOrObject(), constructor)
override fun visitEnumEntry(enumEntry: KtEnumEntry, data: Unit?): FirElement {
val owner = containingClass ?: buildErrorWithAttachment("Enum entry outside of class") {
withPsiEntry("enumEntry", enumEntry)
@@ -217,6 +221,13 @@ internal class RawFirNonLocalDeclarationBuilder private constructor(
visitor.convertElement(declarationToBuild)
}
}
is KtClassOrObject -> {
if (originalDeclaration is FirConstructor) {
visitor.processPrimaryConstructor(declarationToBuild, null)
} else {
visitor.convertElement(declarationToBuild)
}
}
else -> visitor.convertElement(declarationToBuild)
} as FirDeclaration
}
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -28,7 +28,7 @@ FILE: annotationParameters.kt
}
public? final? [RAW_FIR] class B : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@Anno(LAZY_EXPRESSION) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -41,7 +41,7 @@ IMPORTS:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -66,7 +66,7 @@ FILE: annotationParameters.kt
}
public? final? [RAW_FIR] class B : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@Anno(LAZY_EXPRESSION) public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -79,7 +79,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -104,7 +104,7 @@ FILE: annotationParameters.kt
}
public? final? [RAW_FIR] class B : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@Anno(LAZY_EXPRESSION) public? final? [COMPILER_REQUIRED_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -117,7 +117,7 @@ COMPANION_GENERATION:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -142,7 +142,7 @@ FILE: annotationParameters.kt
}
public? final? [RAW_FIR] class B : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@Anno(LAZY_EXPRESSION) public? final? [COMPANION_GENERATION] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -155,7 +155,7 @@ SUPER_TYPES:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -180,7 +180,7 @@ FILE: annotationParameters.kt
}
public? final? [RAW_FIR] class B : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@Anno(LAZY_EXPRESSION) public? final? [SUPER_TYPES] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -193,7 +193,7 @@ TYPES:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -218,7 +218,7 @@ FILE: annotationParameters.kt
}
public? final? [SUPER_TYPES] class B : R|kotlin/Any| {
public? [SUPER_TYPES] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(LAZY_EXPRESSION) public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -231,7 +231,7 @@ STATUS:
FILE: annotationParameters.kt
public? final? [RAW_FIR] enum class X : R|kotlin/Enum<X>| {
private [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [RAW_FIR] [ContainingClassKey=X] enum entry A: R|X|
@@ -256,7 +256,7 @@ FILE: annotationParameters.kt
}
public final [SUPER_TYPES] class B : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(LAZY_EXPRESSION) public final [STATUS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -269,7 +269,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -294,7 +294,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(Q|X|.R|/X.A|) public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -307,7 +307,7 @@ CONTRACTS:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -332,7 +332,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(Q|X|.R|/X.A|) public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
@@ -346,7 +346,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -371,7 +371,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(Q|X|.R|/X.A|) public final [IMPLICIT_TYPES_BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
@@ -385,7 +385,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -410,7 +410,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(args = Q|X|.R|/X.A|) public final [ANNOTATIONS_ARGUMENTS_MAPPING] fun resolveMe(): R|kotlin/Unit| {
@@ -424,7 +424,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -449,7 +449,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(args = Q|X|.R|/X.A|) public final [EXPECT_ACTUAL_MATCHING] fun resolveMe(): R|kotlin/Unit| {
@@ -463,7 +463,7 @@ BODY_RESOLVE:
FILE: annotationParameters.kt
public final [STATUS] enum class X : R|kotlin/Enum<X>| {
private [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Enum<X>|>()
LAZY_super<R|kotlin/Enum<X>|>
}
public final static [STATUS] [ContainingClassKey=X] enum entry A: R|X|
@@ -488,7 +488,7 @@ FILE: annotationParameters.kt
}
public final [STATUS] class B : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=B] constructor(): R|B| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
@R|Anno|(args = Q|X|.R|/X.A|) public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: classMembers.kt
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -21,7 +21,7 @@ IMPORTS:
FILE: classMembers.kt
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -39,7 +39,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: classMembers.kt
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -57,7 +57,7 @@ COMPANION_GENERATION:
FILE: classMembers.kt
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPANION_GENERATION] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -75,7 +75,7 @@ SUPER_TYPES:
FILE: classMembers.kt
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [SUPER_TYPES] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -93,7 +93,7 @@ TYPES:
FILE: classMembers.kt
public? final? [SUPER_TYPES] class A : R|kotlin/Any| {
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [TYPES] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -111,7 +111,7 @@ STATUS:
FILE: classMembers.kt
public final [SUPER_TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [STATUS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -129,7 +129,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ARGUMENTS_OF_ANNOTATIONS] fun resolveMe(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -147,7 +147,7 @@ CONTRACTS:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
@@ -167,7 +167,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [IMPLICIT_TYPES_BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
@@ -187,7 +187,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ANNOTATIONS_ARGUMENTS_MAPPING] fun resolveMe(): R|kotlin/Unit| {
@@ -207,7 +207,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [EXPECT_ACTUAL_MATCHING] fun resolveMe(): R|kotlin/Unit| {
@@ -227,7 +227,7 @@ BODY_RESOLVE:
FILE: classMembers.kt
public final [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
@@ -7,7 +7,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [RAW_FIR] class ResolveMe : OV {
public? [RAW_FIR] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [RAW_FIR] val originalExpressions: A
@@ -18,7 +18,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -31,7 +31,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [RAW_FIR] class ResolveMe : OV {
public? [RAW_FIR] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [RAW_FIR] val originalExpressions: A
@@ -42,7 +42,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -55,7 +55,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class ResolveMe : OV {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [COMPILER_REQUIRED_ANNOTATIONS] val originalExpressions: A
@@ -66,7 +66,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -79,7 +79,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [COMPANION_GENERATION] class ResolveMe : OV {
public? [COMPANION_GENERATION] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [COMPANION_GENERATION] val originalExpressions: A
@@ -90,7 +90,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -103,7 +103,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [SUPER_TYPES] class ResolveMe : R|OV| {
public? [SUPER_TYPES] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [SUPER_TYPES] val originalExpressions: A
@@ -114,7 +114,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -127,7 +127,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public? final? [TYPES] class ResolveMe : R|OV| {
public? [TYPES] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public? open? override [TYPES] val originalExpressions: R|A|
@@ -138,7 +138,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -151,7 +151,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public final [STATUS] class ResolveMe : R|OV| {
public [STATUS] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public open override [STATUS] val originalExpressions: R|A|
@@ -162,7 +162,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -175,7 +175,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
public final [ARGUMENTS_OF_ANNOTATIONS] class ResolveMe : R|OV| {
public [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=ResolveMe] constructor(): R|OV.ResolveMe| {
super<<implicit>>()
LAZY_super<<implicit>>
}
public open override [ARGUMENTS_OF_ANNOTATIONS] val originalExpressions: R|A|
@@ -186,7 +186,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -210,7 +210,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -234,7 +234,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -258,7 +258,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -282,7 +282,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -306,7 +306,7 @@ FILE: nestedClassWithPropertiesOverrides.kt
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
+26 -26
View File
@@ -3,13 +3,13 @@ RAW_FIR:
FILE: enumEntry.kt
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@Anno() public final static [RAW_FIR] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -28,13 +28,13 @@ IMPORTS:
FILE: enumEntry.kt
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@Anno() public final static [RAW_FIR] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -53,13 +53,13 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: enumEntry.kt
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@Anno() public final static [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -78,13 +78,13 @@ COMPANION_GENERATION:
FILE: enumEntry.kt
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@Anno() public final static [COMPANION_GENERATION] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -103,13 +103,13 @@ SUPER_TYPES:
FILE: enumEntry.kt
public? final? [RAW_FIR] annotation class Anno : R|kotlin/Annotation| {
public? [RAW_FIR] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] enum class Foo : R|kotlin/Enum<Foo>| {
private [RAW_FIR] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@Anno() public final static [SUPER_TYPES] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -128,13 +128,13 @@ TYPES:
FILE: enumEntry.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [SUPER_TYPES] enum class Foo : R|kotlin/Enum<Foo>| {
private [SUPER_TYPES] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [TYPES] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -153,13 +153,13 @@ STATUS:
FILE: enumEntry.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [SUPER_TYPES] enum class Foo : R|kotlin/Enum<Foo>| {
private [TYPES] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [STATUS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -178,13 +178,13 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: enumEntry.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = LAZY_EXPRESSION
@@ -203,13 +203,13 @@ CONTRACTS:
FILE: enumEntry.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [CONTRACTS] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
@@ -234,13 +234,13 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: enumEntry.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] annotation class Anno : R|kotlin/Annotation| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [IMPLICIT_TYPES_BODY_RESOLVE] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
@@ -265,13 +265,13 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: enumEntry.kt
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [ANNOTATIONS_ARGUMENTS_MAPPING] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
@@ -296,13 +296,13 @@ EXPECT_ACTUAL_MATCHING:
FILE: enumEntry.kt
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [EXPECT_ACTUAL_MATCHING] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
@@ -327,13 +327,13 @@ BODY_RESOLVE:
FILE: enumEntry.kt
public final [SUPER_TYPES] annotation class Anno : R|kotlin/Annotation| {
public [STATUS] [ContainingClassKey=Anno] constructor(): R|Anno| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [STATUS] enum class Foo : R|kotlin/Enum<Foo>| {
private [STATUS] [ContainingClassKey=Foo] constructor(): R|Foo| {
super<R|kotlin/Enum<Foo>|>()
LAZY_super<R|kotlin/Enum<Foo>|>
}
@R|Anno|() public final static [BODY_RESOLVE] [ContainingClassKey=Foo] enum entry ResolveMe: R|Foo| = object : R|Foo| {
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -14,7 +14,7 @@ IMPORTS:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -25,7 +25,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -36,7 +36,7 @@ COMPANION_GENERATION:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -47,7 +47,7 @@ SUPER_TYPES:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -58,7 +58,7 @@ TYPES:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -69,7 +69,7 @@ STATUS:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -80,7 +80,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -91,7 +91,7 @@ CONTRACTS:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -104,7 +104,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -117,7 +117,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -130,7 +130,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: functionCallWithGenericResult.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -143,7 +143,7 @@ BODY_RESOLVE:
FILE: functionCallWithGenericResult.kt
public? open [COMPILER_REQUIRED_ANNOTATIONS] class Foo<[COMPILER_REQUIRED_ANNOTATIONS] T : CharSequence> : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Foo] constructor<[COMPILER_REQUIRED_ANNOTATIONS] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -1,14 +1,15 @@
RAW_FIR:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -19,13 +20,13 @@ IMPORTS:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -36,13 +37,13 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -53,13 +54,13 @@ COMPANION_GENERATION:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -70,13 +71,13 @@ SUPER_TYPES:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -87,13 +88,13 @@ TYPES:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -104,13 +105,13 @@ STATUS:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -121,13 +122,13 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -138,13 +139,13 @@ CONTRACTS:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -157,13 +158,13 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -176,13 +177,13 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -195,13 +196,13 @@ EXPECT_ACTUAL_MATCHING:
FILE: functionWithGenericExpectedTypeInside.kt
public? open [RAW_FIR] class Foo<[RAW_FIR] T : CharSequence> : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Foo] constructor<[RAW_FIR] T : CharSequence>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? final? [RAW_FIR] class Bar : Foo<String> {
public? [RAW_FIR] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -214,13 +215,13 @@ BODY_RESOLVE:
FILE: functionWithGenericExpectedTypeInside.kt
public open [TYPES] class Foo<[TYPES] T : R|kotlin/CharSequence|> : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=Foo] constructor<[TYPES] T : R|kotlin/CharSequence|>(): R|Foo<T>| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public final [TYPES] class Bar : R|Foo<kotlin/String>| {
public [STATUS] [ContainingClassKey=Bar] constructor(): R|Bar| {
super<<implicit>>()
LAZY_super<<implicit>>
}
}
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -18,7 +18,7 @@ IMPORTS:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -33,7 +33,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -48,7 +48,7 @@ COMPANION_GENERATION:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -63,7 +63,7 @@ SUPER_TYPES:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -78,7 +78,7 @@ TYPES:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -93,7 +93,7 @@ STATUS:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -108,7 +108,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -123,7 +123,7 @@ CONTRACTS:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -143,7 +143,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -163,7 +163,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -183,7 +183,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: lambdaAsSAMInterface.kt
public? final? [RAW_FIR] class Arg : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -203,7 +203,7 @@ BODY_RESOLVE:
FILE: lambdaAsSAMInterface.kt
public? final? [COMPILER_REQUIRED_ANNOTATIONS] class Arg : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=Arg] constructor(): R|foo/Arg| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: parameterOfNonLocalSetter.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] var x: Int = LAZY_EXPRESSION
@@ -16,7 +16,7 @@ IMPORTS:
FILE: parameterOfNonLocalSetter.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] var x: Int = LAZY_EXPRESSION
@@ -29,7 +29,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: parameterOfNonLocalSetter.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] var x: Int = LAZY_EXPRESSION
@@ -42,7 +42,7 @@ COMPANION_GENERATION:
FILE: parameterOfNonLocalSetter.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPANION_GENERATION] var x: Int = LAZY_EXPRESSION
@@ -55,7 +55,7 @@ SUPER_TYPES:
FILE: parameterOfNonLocalSetter.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [SUPER_TYPES] var x: Int = LAZY_EXPRESSION
@@ -68,7 +68,7 @@ TYPES:
FILE: parameterOfNonLocalSetter.kt
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [TYPES] var x: R|kotlin/Int| = LAZY_EXPRESSION
@@ -81,7 +81,7 @@ STATUS:
FILE: parameterOfNonLocalSetter.kt
public final [SUPER_TYPES] class X : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [STATUS] var x: R|kotlin/Int| = LAZY_EXPRESSION
@@ -94,7 +94,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ARGUMENTS_OF_ANNOTATIONS] var x: R|kotlin/Int| = LAZY_EXPRESSION
@@ -107,7 +107,7 @@ CONTRACTS:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [CONTRACTS] var x: R|kotlin/Int| = IntegerLiteral(2)
@@ -122,7 +122,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [IMPLICIT_TYPES_BODY_RESOLVE] var x: R|kotlin/Int| = IntegerLiteral(2)
@@ -137,7 +137,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ANNOTATIONS_ARGUMENTS_MAPPING] var x: R|kotlin/Int| = IntegerLiteral(2)
@@ -152,7 +152,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [EXPECT_ACTUAL_MATCHING] var x: R|kotlin/Int| = IntegerLiteral(2)
@@ -167,7 +167,7 @@ BODY_RESOLVE:
FILE: parameterOfNonLocalSetter.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [BODY_RESOLVE] var x: R|kotlin/Int| = Int(2)
@@ -3,19 +3,19 @@ RAW_FIR:
FILE: superTypes.kt
public? open [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [RAW_FIR] class resolveMe : A {
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<A>()
LAZY_super<A>
}
}
@@ -24,19 +24,19 @@ IMPORTS:
FILE: superTypes.kt
public? open [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [RAW_FIR] class resolveMe : A {
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<A>()
LAZY_super<A>
}
}
@@ -45,19 +45,19 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: superTypes.kt
public? open [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class resolveMe : A {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<A>()
LAZY_super<A>
}
}
@@ -66,19 +66,19 @@ COMPANION_GENERATION:
FILE: superTypes.kt
public? open [RAW_FIR] class A : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [COMPANION_GENERATION] class resolveMe : A {
public? [COMPANION_GENERATION] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<A>()
LAZY_super<A>
}
}
@@ -87,19 +87,19 @@ SUPER_TYPES:
FILE: superTypes.kt
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : R|kotlin/Any| {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [SUPER_TYPES] class resolveMe : R|A| {
public? [SUPER_TYPES] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<A>()
LAZY_super<A>
}
}
@@ -108,19 +108,19 @@ TYPES:
FILE: superTypes.kt
public? open [SUPER_TYPES] class A : R|kotlin/Any| {
public? [SUPER_TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public? open [TYPES] class resolveMe : R|A| {
public? [TYPES] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -129,19 +129,19 @@ STATUS:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public open [STATUS] class resolveMe : R|A| {
public [STATUS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -150,19 +150,19 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
public open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|A| {
public [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -171,13 +171,13 @@ CONTRACTS:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
@@ -192,13 +192,13 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
@@ -213,13 +213,13 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
@@ -234,13 +234,13 @@ EXPECT_ACTUAL_MATCHING:
FILE: superTypes.kt
public open [TYPES] class A : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
@@ -255,13 +255,13 @@ BODY_RESOLVE:
FILE: superTypes.kt
public open [STATUS] class A : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=A] constructor(): R|A| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
}
public? open [RAW_FIR] class B : A {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<A>()
LAZY_super<A>
}
}
@@ -3,25 +3,25 @@ RAW_FIR:
FILE: superTypesLoop.kt
public? open [RAW_FIR] class resolveMe : C {
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class A : B {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [RAW_FIR] class B : C {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class C : A {
public? [RAW_FIR] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -30,25 +30,25 @@ IMPORTS:
FILE: superTypesLoop.kt
public? open [RAW_FIR] class resolveMe : C {
public? [RAW_FIR] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class A : B {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [RAW_FIR] class B : C {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class C : A {
public? [RAW_FIR] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -57,25 +57,25 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: superTypesLoop.kt
public? open [COMPILER_REQUIRED_ANNOTATIONS] class resolveMe : C {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class A : B {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [RAW_FIR] class B : C {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class C : A {
public? [RAW_FIR] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -84,25 +84,25 @@ COMPANION_GENERATION:
FILE: superTypesLoop.kt
public? open [COMPANION_GENERATION] class resolveMe : C {
public? [COMPANION_GENERATION] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class A : B {
public? [RAW_FIR] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [RAW_FIR] class B : C {
public? [RAW_FIR] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [RAW_FIR] class C : A {
public? [RAW_FIR] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -111,25 +111,25 @@ SUPER_TYPES:
FILE: superTypesLoop.kt
public? open [SUPER_TYPES] class resolveMe : R|C| {
public? [SUPER_TYPES] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<C>()
LAZY_super<C>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -138,25 +138,25 @@ TYPES:
FILE: superTypesLoop.kt
public? open [TYPES] class resolveMe : R|C| {
public? [TYPES] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|C|>()
LAZY_super<R|C|>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public? open [SUPER_TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public? [SUPER_TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<A>()
LAZY_super<A>
}
}
@@ -165,25 +165,25 @@ STATUS:
FILE: superTypesLoop.kt
public open [STATUS] class resolveMe : R|C| {
public [STATUS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|C|>()
LAZY_super<R|C|>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -192,25 +192,25 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: superTypesLoop.kt
public open [ARGUMENTS_OF_ANNOTATIONS] class resolveMe : R|C| {
public [ARGUMENTS_OF_ANNOTATIONS] [ContainingClassKey=resolveMe] constructor(): R|resolveMe| {
super<R|C|>()
LAZY_super<R|C|>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -225,19 +225,19 @@ FILE: superTypesLoop.kt
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -252,19 +252,19 @@ FILE: superTypesLoop.kt
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -279,19 +279,19 @@ FILE: superTypesLoop.kt
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -306,19 +306,19 @@ FILE: superTypesLoop.kt
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [TYPES] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [TYPES] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -333,19 +333,19 @@ FILE: superTypesLoop.kt
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class A : <ERROR TYPE REF: Loop in supertype: /A -> /B> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=A] constructor(): R|A| {
super<B>()
LAZY_super<B>
}
}
public? open [COMPILER_REQUIRED_ANNOTATIONS] class B : <ERROR TYPE REF: Loop in supertype: /B -> /C> {
public? [COMPILER_REQUIRED_ANNOTATIONS] [ContainingClassKey=B] constructor(): R|B| {
super<C>()
LAZY_super<C>
}
}
public open [STATUS] class C : <ERROR TYPE REF: Loop in supertype: /C -> /A> {
public [STATUS] [ContainingClassKey=C] constructor(): R|C| {
super<R|A|>()
LAZY_super<R|A|>
}
}
@@ -3,7 +3,7 @@ RAW_FIR:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] fun <[RAW_FIR] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -14,7 +14,7 @@ IMPORTS:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [RAW_FIR] fun <[RAW_FIR] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -25,7 +25,7 @@ COMPILER_REQUIRED_ANNOTATIONS:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPILER_REQUIRED_ANNOTATIONS] fun <[COMPILER_REQUIRED_ANNOTATIONS] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -36,7 +36,7 @@ COMPANION_GENERATION:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [COMPANION_GENERATION] fun <[COMPANION_GENERATION] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -47,7 +47,7 @@ SUPER_TYPES:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [RAW_FIR] class X : R|kotlin/Any| {
public? [RAW_FIR] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [SUPER_TYPES] fun <[SUPER_TYPES] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -58,7 +58,7 @@ TYPES:
FILE: typeParameterOfNonLocalFunction.kt
public? final? [SUPER_TYPES] class X : R|kotlin/Any| {
public? [SUPER_TYPES] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public? final? [TYPES] fun <[TYPES] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -69,7 +69,7 @@ STATUS:
FILE: typeParameterOfNonLocalFunction.kt
public final [SUPER_TYPES] class X : R|kotlin/Any| {
public [TYPES] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [STATUS] fun <[STATUS] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -80,7 +80,7 @@ ARGUMENTS_OF_ANNOTATIONS:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ARGUMENTS_OF_ANNOTATIONS] fun <[ARGUMENTS_OF_ANNOTATIONS] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK }
@@ -91,7 +91,7 @@ CONTRACTS:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [CONTRACTS] fun <[CONTRACTS] resolveMe> ddd(): R|kotlin/Unit| {
@@ -103,7 +103,7 @@ IMPLICIT_TYPES_BODY_RESOLVE:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [IMPLICIT_TYPES_BODY_RESOLVE] fun <[IMPLICIT_TYPES_BODY_RESOLVE] resolveMe> ddd(): R|kotlin/Unit| {
@@ -115,7 +115,7 @@ ANNOTATIONS_ARGUMENTS_MAPPING:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [ANNOTATIONS_ARGUMENTS_MAPPING] fun <[ANNOTATIONS_ARGUMENTS_MAPPING] resolveMe> ddd(): R|kotlin/Unit| {
@@ -127,7 +127,7 @@ EXPECT_ACTUAL_MATCHING:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [EXPECT_ACTUAL_MATCHING] fun <[EXPECT_ACTUAL_MATCHING] resolveMe> ddd(): R|kotlin/Unit| {
@@ -139,7 +139,7 @@ BODY_RESOLVE:
FILE: typeParameterOfNonLocalFunction.kt
public final [STATUS] class X : R|kotlin/Any| {
public [STATUS] [ContainingClassKey=X] constructor(): R|X| {
super<R|kotlin/Any|>()
LAZY_super<R|kotlin/Any|>
}
public final [BODY_RESOLVE] fun <[BODY_RESOLVE] resolveMe> ddd(): R|kotlin/Unit| {