Don't report TYPE_INFERENCE_POSTPONED_VARIABLE_IN_RECEIVER_TYPE if unrestricted build inference was enabled
This commit is contained in:
+4
-1
@@ -415,7 +415,10 @@ class ResolvedAtomCompleter(
|
|||||||
|
|
||||||
val rawExtensionReceiver = callableCandidate.extensionReceiver
|
val rawExtensionReceiver = callableCandidate.extensionReceiver
|
||||||
|
|
||||||
if (rawExtensionReceiver != null && rawExtensionReceiver.receiver.receiverValue.type.contains { it is StubTypeForBuilderInference }) {
|
val unrestrictedBuilderInferenceSupported =
|
||||||
|
topLevelCallContext.languageVersionSettings.supportsFeature(LanguageFeature.UnrestrictedBuilderInference)
|
||||||
|
|
||||||
|
if (rawExtensionReceiver != null && !unrestrictedBuilderInferenceSupported && rawExtensionReceiver.receiver.receiverValue.type.contains { it is StubTypeForBuilderInference }) {
|
||||||
topLevelTrace.reportDiagnosticOnce(Errors.TYPE_INFERENCE_POSTPONED_VARIABLE_IN_RECEIVER_TYPE.on(callableReferenceExpression))
|
topLevelTrace.reportDiagnosticOnce(Errors.TYPE_INFERENCE_POSTPONED_VARIABLE_IN_RECEIVER_TYPE.on(callableReferenceExpression))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -551,7 +551,9 @@ class DoubleColonExpressionResolver(
|
|||||||
resolvedCall.extensionReceiver?.type?.contains { it is StubTypeForBuilderInference } == true
|
resolvedCall.extensionReceiver?.type?.contains { it is StubTypeForBuilderInference } == true
|
||||||
}
|
}
|
||||||
|
|
||||||
if (doesSomeExtensionReceiverContainsStubType) {
|
val unrestrictedBuilderInferenceSupported = languageVersionSettings.supportsFeature(LanguageFeature.UnrestrictedBuilderInference)
|
||||||
|
|
||||||
|
if (doesSomeExtensionReceiverContainsStubType && !unrestrictedBuilderInferenceSupported) {
|
||||||
c.trace.reportDiagnosticOnce(TYPE_INFERENCE_POSTPONED_VARIABLE_IN_RECEIVER_TYPE.on(expression))
|
c.trace.reportDiagnosticOnce(TYPE_INFERENCE_POSTPONED_VARIABLE_IN_RECEIVER_TYPE.on(expression))
|
||||||
return noTypeInfo(c)
|
return noTypeInfo(c)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user