[FIR] FirAnnotationArgumentsTransformer: fix scope problem with type parameters
We should wrap outer declaration to avoid FirTowerDataMode.CLASS_HEADER_ANNOTATIONS ^KT-63396 Fixed
This commit is contained in:
committed by
Space Team
parent
2ee9fcab9b
commit
28895a2613
+3
-3
@@ -274,7 +274,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), <Unresolved name: prop>#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
^explicitType IntegerLiteral(0)
|
||||
}
|
||||
|
||||
@@ -302,7 +302,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(BODY_RESOLVE)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), <Unresolved name: prop>#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(BODY_RESOLVE)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
^explicitType Int(0)
|
||||
}
|
||||
|
||||
@@ -330,7 +330,7 @@ FILE: [ResolvedTo(BODY_RESOLVE)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(BODY_RESOLVE)] interface OriginalInterface : R|kotlin/Any| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(BODY_RESOLVE)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), <Unresolved name: prop>#)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), <Unresolved name: prop>#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
@R|Anno|[Types](position = <strcat>(String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(BODY_RESOLVE)] fun <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = <strcat>(String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = <strcat>(String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = <strcat>(String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] @R|Anno|[Types](position = <strcat>(String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = <strcat>(String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = <strcat>(String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = <strcat>(String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = <strcat>(String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| {
|
||||
^explicitType Int(0)
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -284,7 +284,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| {
|
||||
public open [ResolvedTo(ANNOTATION_ARGUMENTS)] val <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public open [ResolvedTo(ANNOTATION_ARGUMENTS)] val <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=OriginalInterface] get(): R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int| {
|
||||
^ IntegerLiteral(1)
|
||||
}
|
||||
@@ -313,7 +313,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| {
|
||||
public open [ResolvedTo(BODY_RESOLVE)] val <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public open [ResolvedTo(BODY_RESOLVE)] val <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=OriginalInterface] get(): R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int| {
|
||||
^ Int(1)
|
||||
}
|
||||
@@ -342,7 +342,7 @@ FILE: [ResolvedTo(BODY_RESOLVE)] typeParameterAnnotations.kt
|
||||
|
||||
}
|
||||
public abstract [ResolvedTo(BODY_RESOLVE)] interface OriginalInterface : R|kotlin/Any| {
|
||||
public open [ResolvedTo(BODY_RESOLVE)] val <@R|Anno|[Types](position = <strcat>(String(type param ), <Unresolved name: prop>#)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), <Unresolved name: prop>#)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public open [ResolvedTo(BODY_RESOLVE)] val <@R|Anno|[Types](position = <strcat>(String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Number|> explicitType: R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int|
|
||||
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=OriginalInterface] get(): R|@R|Anno|(position = <strcat>(String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int| {
|
||||
^ Int(1)
|
||||
}
|
||||
|
||||
+3
-5
@@ -214,10 +214,9 @@ private class FirDeclarationsResolveTransformerForAnnotationArguments(
|
||||
simpleFunction: FirSimpleFunction,
|
||||
data: ResolutionMode
|
||||
): FirSimpleFunction {
|
||||
doTransformTypeParameters(simpleFunction)
|
||||
|
||||
context.withSimpleFunction(simpleFunction, session) {
|
||||
simpleFunction
|
||||
.transformTypeParameters(transformer, data)
|
||||
.transformReturnTypeRef(transformer, data)
|
||||
.transformReceiverParameter(transformer, data)
|
||||
.transformValueParameters(transformer, data)
|
||||
@@ -229,10 +228,9 @@ private class FirDeclarationsResolveTransformerForAnnotationArguments(
|
||||
|
||||
override fun transformConstructor(constructor: FirConstructor, data: ResolutionMode): FirConstructor {
|
||||
val containingClass = context.containerIfAny as? FirRegularClass
|
||||
doTransformTypeParameters(constructor)
|
||||
|
||||
context.withConstructor(constructor) {
|
||||
constructor
|
||||
.transformTypeParameters(transformer, data)
|
||||
.transformAnnotations(transformer, data)
|
||||
.transformReceiverParameter(transformer, data)
|
||||
.transformReturnTypeRef(transformer, data)
|
||||
@@ -262,10 +260,10 @@ private class FirDeclarationsResolveTransformerForAnnotationArguments(
|
||||
|
||||
override fun transformProperty(property: FirProperty, data: ResolutionMode): FirProperty {
|
||||
property.transformReceiverParameter(transformer, ResolutionMode.ContextIndependent)
|
||||
doTransformTypeParameters(property)
|
||||
|
||||
context.withProperty(property) {
|
||||
property
|
||||
.transformTypeParameters(transformer, data)
|
||||
.transformAnnotations(transformer, data)
|
||||
.transformReceiverParameter(transformer, data)
|
||||
.transformReturnTypeRef(transformer, data)
|
||||
|
||||
+2
-2
@@ -6,8 +6,8 @@ annotation class Anno(val position: String)
|
||||
|
||||
interface OriginalInterface {
|
||||
@Anno("explicitType $prop")
|
||||
fun <@Anno("type param $<!UNRESOLVED_REFERENCE!>prop<!>") F : @Anno("bound $<!UNRESOLVED_REFERENCE!>prop<!>") List<@Anno("nested bound $<!UNRESOLVED_REFERENCE!>prop<!>") List<@Anno("nested nested bound $<!UNRESOLVED_REFERENCE!>prop<!>") String>>> @receiver:Anno("receiver annotation: $prop") @Anno("receiver type $prop") Collection<@Anno("nested receiver type $prop") List<@Anno("nested nested receiver type $prop")String>>.explicitType(@Anno("parameter annotation $prop") param: @Anno("parameter type $prop") ListIterator<@Anno("nested parameter type $prop") List<@Anno("nested nested parameter type $prop")String>>): @Anno("explicitType return type $prop") List<@Anno("explicitType nested return type $prop") List<@Anno("explicitType nested nested return type $prop") Int>> = emptyList()
|
||||
val <@Anno("type param $<!UNRESOLVED_REFERENCE!>prop<!>") F : @Anno("bound $<!UNRESOLVED_REFERENCE!>prop<!>") Number> F.explicitType: @Anno("bound $prop") Int get() = 1
|
||||
fun <@Anno("type param $prop") F : @Anno("bound $prop") List<@Anno("nested bound $prop") List<@Anno("nested nested bound $prop") String>>> @receiver:Anno("receiver annotation: $prop") @Anno("receiver type $prop") Collection<@Anno("nested receiver type $prop") List<@Anno("nested nested receiver type $prop")String>>.explicitType(@Anno("parameter annotation $prop") param: @Anno("parameter type $prop") ListIterator<@Anno("nested parameter type $prop") List<@Anno("nested nested parameter type $prop")String>>): @Anno("explicitType return type $prop") List<@Anno("explicitType nested return type $prop") List<@Anno("explicitType nested nested return type $prop") Int>> = emptyList()
|
||||
val <@Anno("type param $prop") F : @Anno("bound $prop") Number> F.explicitType: @Anno("bound $prop") Int get() = 1
|
||||
|
||||
companion object {
|
||||
private const val prop = 0
|
||||
|
||||
Reference in New Issue
Block a user