[LL FIR] fix type annotations resolution for fake override declarations

Fake overrides have annotations from a class from which type parameters
were substituted, so we have to resolve them before the declaration.
It worked before in most cases as an original containing class is a part
of the designation path, so we considered annotations from such classes
as our and just resolved them in the wrong scope without right locks

^KT-64243
This commit is contained in:
Dmitrii Gridin
2023-12-14 15:17:38 +01:00
committed by Space Team
parent b6f0571f0b
commit 4a87ae9e04
30 changed files with 395 additions and 128 deletions
@@ -0,0 +1,59 @@
public open override [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile !=(R|<local>/name|, String(str))
}
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean| {
^isSchemeFile Boolean(true)
}
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /IntermediateClass.anotherFunction, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean| {
^anotherFunction Boolean(true)
}
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.propertyWithAnnotations, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] var propertyWithAnnotations: R|SCHEME| = R|/genericCall|<R|SCHEME|>()
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) value: R|SCHEME|): R|kotlin/Unit|
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.property, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.property] var property: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
public abstract [ResolvedTo(BODY_RESOLVE)] var property: R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] value: R|SCHEME|): R|kotlin/Unit|
public open operator [ResolvedTo(BODY_RESOLVE)] fun equals([ResolvedTo(BODY_RESOLVE)] other: R|kotlin/Any?|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun hashCode(): R|kotlin/Int|
public open [ResolvedTo(BODY_RESOLVE)] fun toString(): R|kotlin/String|
@@ -1,5 +1,3 @@
// IGNORE_FIR
annotation class Anno(val str: String)
val constant = "const"
@@ -0,0 +1,59 @@
public open override [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile !=(R|<local>/name|, String(str))
}
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean| {
^isSchemeFile Boolean(true)
}
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /IntermediateClass.anotherFunction, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence| = R|/genericCall|<R|kotlin/CharSequence|>()): R|kotlin/Boolean| {
^anotherFunction Boolean(true)
}
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.propertyWithAnnotations, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] var propertyWithAnnotations: R|SCHEME| = R|/genericCall|<R|SCHEME|>()
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) value: R|SCHEME|): R|kotlin/Unit|
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.property, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.property] var property: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
public abstract [ResolvedTo(BODY_RESOLVE)] var property: R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] value: R|SCHEME|): R|kotlin/Unit|
public open operator [ResolvedTo(BODY_RESOLVE)] fun equals([ResolvedTo(BODY_RESOLVE)] other: R|kotlin/Any?|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun hashCode(): R|kotlin/Int|
public open [ResolvedTo(BODY_RESOLVE)] fun toString(): R|kotlin/String|
@@ -1,5 +1,3 @@
// IGNORE_FIR
annotation class Anno(val str: String)
val constant = "const"
@@ -0,0 +1,59 @@
public open override [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile !=(R|<local>/name|, String(str))
}
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile Boolean(true)
}
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /IntermediateClass.anotherFunction, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int| = R|/genericCall<Inapplicable(INAPPLICABLE): /genericCall>#|<<ERROR TYPE REF: Symbol not found for SCHEME>>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int| = R|/genericCall<Inapplicable(INAPPLICABLE): /genericCall>#|<<ERROR TYPE REF: Symbol not found for SCHEME>>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME| = R|/genericCall|<R|SCHEME|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] name: R|SCHEME| = R|/genericCall|<R|SCHEME|>()): R|kotlin/Boolean| {
^anotherFunction Boolean(true)
}
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.propertyWithAnnotations, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] var propertyWithAnnotations: R|SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) value: R|SCHEME|): R|kotlin/Unit|
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.property, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.property] var property: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
public abstract [ResolvedTo(BODY_RESOLVE)] var property: R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] value: R|SCHEME|): R|kotlin/Unit|
public open operator [ResolvedTo(BODY_RESOLVE)] fun equals([ResolvedTo(BODY_RESOLVE)] other: R|kotlin/Any?|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun hashCode(): R|kotlin/Int|
public open [ResolvedTo(BODY_RESOLVE)] fun toString(): R|kotlin/String|
@@ -1,5 +1,3 @@
// IGNORE_FIR
annotation class Anno(val str: String)
val constant = "const"
@@ -0,0 +1,59 @@
public open override [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile !=(R|<local>/name|, String(str))
}
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.isSchemeFile] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|kotlin/CharSequence|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun isSchemeFile([ResolvedTo(BODY_RESOLVE)] name: R|kotlin/CharSequence|): R|kotlin/Boolean| {
^isSchemeFile Boolean(true)
}
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /IntermediateClass.anotherFunction, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int| = R|/genericCall<Inapplicable(INAPPLICABLE): /genericCall>#|<<ERROR TYPE REF: Symbol not found for SCHEME>>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int| = R|/genericCall<Inapplicable(INAPPLICABLE): /genericCall>#|<<ERROR TYPE REF: Symbol not found for SCHEME>>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.anotherFunction] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=<local>/name] name: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME| = R|/genericCall|<R|SCHEME|>()): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun anotherFunction([ResolvedTo(BODY_RESOLVE)] name: R|SCHEME| = R|/genericCall|<R|SCHEME|>()): R|kotlin/Boolean| {
^anotherFunction Boolean(true)
}
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.propertyWithAnnotations, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=MyClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.propertyWithAnnotations] var propertyWithAnnotations: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] get(): R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IntermediateClass, SubstitutedOverrideOriginalKey=special/accessor] set([ResolvedTo(BODY_RESOLVE)] value: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|): R|kotlin/Unit|
@R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public abstract [ResolvedTo(BODY_RESOLVE)] var propertyWithAnnotations: R|SCHEME|
@PROPERTY_GETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
@PROPERTY_SETTER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](str = <strcat>(String(property ), R|/constant|)) value: R|SCHEME|): R|kotlin/Unit|
public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirPropertySymbol /IntermediateClass.property, containingClass=MyClass, delegateField=FirFieldSymbol /MyClass.$$delegate_0, SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/IntermediateClass.property] var property: R|@R|Anno|(str = <strcat>(String(class ), R|/constant|)) @R|Anno|(str = <strcat>(String(super ), R|/constant|)) kotlin/Int|
public abstract [ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/BaseClass.property] var property: R|@R|Anno|(str = <strcat>(String(super ), R|/constant|)) SCHEME|
public abstract [ResolvedTo(BODY_RESOLVE)] var property: R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] get(): R|SCHEME|
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=BaseClass] set([ResolvedTo(BODY_RESOLVE)] value: R|SCHEME|): R|kotlin/Unit|
public open operator [ResolvedTo(BODY_RESOLVE)] fun equals([ResolvedTo(BODY_RESOLVE)] other: R|kotlin/Any?|): R|kotlin/Boolean|
public open [ResolvedTo(BODY_RESOLVE)] fun hashCode(): R|kotlin/Int|
public open [ResolvedTo(BODY_RESOLVE)] fun toString(): R|kotlin/String|
@@ -1,5 +1,3 @@
// IGNORE_FIR
annotation class Anno(val str: String)
val constant = "const"