[FIR] Don't set source of inferred type from expected type
This commit is contained in:
committed by
teamcity
parent
e1fd184d14
commit
40b13898bd
+4
-2
@@ -64,10 +64,12 @@ object FirClassVarianceChecker : FirClassChecker() {
|
|||||||
if (member is FirProperty && member.isVar) Variance.INVARIANT else Variance.OUT_VARIANCE
|
if (member is FirProperty && member.isVar) Variance.INVARIANT else Variance.OUT_VARIANCE
|
||||||
|
|
||||||
var returnSource = member.returnTypeRef.source
|
var returnSource = member.returnTypeRef.source
|
||||||
if (returnSource != null && memberSource != null) {
|
if (returnSource != null) {
|
||||||
if (returnSource.kind is KtFakeSourceElementKind && memberSource.kind !is KtFakeSourceElementKind) {
|
if (memberSource != null && returnSource.kind is KtFakeSourceElementKind && memberSource.kind !is KtFakeSourceElementKind) {
|
||||||
returnSource = memberSource
|
returnSource = memberSource
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
returnSource = memberSource
|
||||||
}
|
}
|
||||||
|
|
||||||
checkVarianceConflict(member.returnTypeRef, returnTypeVariance, context, reporter, returnSource)
|
checkVarianceConflict(member.returnTypeRef, returnTypeVariance, context, reporter, returnSource)
|
||||||
|
|||||||
-3
@@ -1068,9 +1068,6 @@ open class FirDeclarationsResolveTransformer(transformer: FirBodyResolveTransfor
|
|||||||
buildResolvedTypeRef {
|
buildResolvedTypeRef {
|
||||||
type = this@toExpectedTypeRef.coneType
|
type = this@toExpectedTypeRef.coneType
|
||||||
annotations.addAll(this@toExpectedTypeRef.annotations)
|
annotations.addAll(this@toExpectedTypeRef.annotations)
|
||||||
this@toExpectedTypeRef.source?.fakeElement(KtFakeSourceElementKind.PropertyFromParameter)?.let {
|
|
||||||
source = it
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user