diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/deserialization/FirMemberDeserializer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/deserialization/FirMemberDeserializer.kt index f739bb23fa6..ad97cbe5f77 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/deserialization/FirMemberDeserializer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/deserialization/FirMemberDeserializer.kt @@ -126,6 +126,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) { fun loadTypeAlias(proto: ProtoBuf.TypeAlias): FirTypeAlias { val flags = proto.flags val name = c.nameResolver.getName(proto.name) + val local = c.childContext(proto.typeParameterList) return FirTypeAliasImpl( c.session, null, @@ -137,11 +138,13 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) { FirResolvedTypeRefImpl( c.session, null, - c.typeDeserializer.type(proto.underlyingType(c.typeTable)), + local.typeDeserializer.type(proto.underlyingType(c.typeTable)), false, emptyList() /* TODO */ ) - ) + ).apply { + typeParameters += local.typeDeserializer.ownTypeParameters.map { it.firUnsafe() } + } } fun loadProperty(proto: ProtoBuf.Property): FirProperty { diff --git a/compiler/fir/resolve/testData/resolve/stdlib/typeAliasDeserialization.txt b/compiler/fir/resolve/testData/resolve/stdlib/typeAliasDeserialization.txt index 195fac70c05..045e9a11769 100644 --- a/compiler/fir/resolve/testData/resolve/stdlib/typeAliasDeserialization.txt +++ b/compiler/fir/resolve/testData/resolve/stdlib/typeAliasDeserialization.txt @@ -1,5 +1,5 @@ FILE: typeAliasDeserialization.kt public final fun main(): R|kotlin/Unit| { - lval a: R|java/util/LinkedHashSet| = R|java/util/LinkedHashSet.LinkedHashSet|() + lval a: R|java/util/LinkedHashSet| = R|java/util/LinkedHashSet.LinkedHashSet|() R|/a|.#(String()) } diff --git a/compiler/fir/resolve/testData/resolve/treeSet.txt b/compiler/fir/resolve/testData/resolve/treeSet.txt index 098edde6785..adcd95dd630 100644 --- a/compiler/fir/resolve/testData/resolve/treeSet.txt +++ b/compiler/fir/resolve/testData/resolve/treeSet.txt @@ -1,3 +1,3 @@ FILE: treeSet.kt - public final val x: R|java/util/SortedSet| = R|java/util/TreeSet.TreeSet|() + public final val x: R|java/util/SortedSet| = R|java/util/TreeSet.TreeSet|() public get(): R|java/util/SortedSet|