Suppress K2 specific warnings in the codebase

^KT-62472
This commit is contained in:
Dmitriy Novozhilov
2023-10-10 14:32:35 +03:00
committed by Space Team
parent 9e66a7b999
commit 704e2ef5c5
43 changed files with 58 additions and 8 deletions
@@ -21,6 +21,7 @@ interface VariableInitReadOnlyControlFlowInfo :
fun checkDefiniteInitializationInWhen(merge: VariableInitReadOnlyControlFlowInfo): Boolean
}
@Suppress("DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE") // K2 warning suppression, TODO: KT-62472
class VariableInitControlFlowInfo(map: ImmutableMap<VariableDescriptor, VariableControlFlowState> = ImmutableHashMap.empty()) :
VariableUsageControlFlowInfo<VariableInitControlFlowInfo, VariableControlFlowState>(map),
VariableInitReadOnlyControlFlowInfo {
@@ -42,6 +43,7 @@ class VariableInitControlFlowInfo(map: ImmutableMap<VariableDescriptor, Variable
}
}
@Suppress("DELEGATED_MEMBER_HIDES_SUPERTYPE_OVERRIDE") // K2 warning suppression, TODO: KT-62472
class UsageVariableControlFlowInfo(map: ImmutableMap<VariableDescriptor, VariableUseState> = ImmutableHashMap.empty()) :
VariableUsageControlFlowInfo<UsageVariableControlFlowInfo, VariableUseState>(map),
VariableUsageReadOnlyControlInfo {
@@ -128,4 +130,4 @@ enum class VariableUseState(private val priority: Int) {
@JvmStatic
fun isUsed(variableUseState: VariableUseState?): Boolean = variableUseState != null && variableUseState != UNUSED
}
}
}
@@ -825,6 +825,7 @@ class DiagnosticReporterByTrackingStrategy(
KtPsiUtil.deparenthesize(it) ?: it
}
if (expression != null) {
@Suppress("USELESS_IS_CHECK") // K2 warning suppression, TODO: KT-62472
if (expression.isNull() && expression is KtConstantExpression) {
val factory = when (diagnostic) {
is ArgumentNullabilityErrorDiagnostic -> NULL_FOR_NONNULL_TYPE
@@ -107,6 +107,7 @@ class KotlinToResolvedCallTransformer(
}
is CompletedCallResolutionResult, is ErrorCallResolutionResult -> {
@Suppress("USELESS_CAST") // K2 warning suppression, TODO: KT-62472
val candidate = (baseResolvedCall as SingleCallResolutionResult).resultCallAtom
val resultSubstitutor =
@@ -29,7 +29,9 @@ object ActualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker :
val (actual, expect) = matchActualWithNonFinalExpect(declaration, descriptor, context) ?: return
// The explicit casts won't be necessary when we start compiling kotlin with K2. K1 doesn't build CFG properly
@Suppress("USELESS_CAST") // K2 warning suppression, TODO: KT-62472
declaration as KtClassLikeDeclaration
@Suppress("USELESS_CAST") // K2 warning suppression, TODO: KT-62472
descriptor as ClassifierDescriptorWithTypeParameters
checkSupertypes(expect, actual, context, declaration, descriptor)
@@ -105,7 +107,9 @@ internal fun matchActualWithNonFinalExpect(
// Common supertype of KtTypeAlias and KtClassOrObject is KtClassLikeDeclaration.
// Common supertype of TypeAliasDescriptor and ClassDescriptor is ClassifierDescriptorWithTypeParameters.
// The explicit casts won't be necessary when we start compiling kotlin with K2.
@Suppress("USELESS_CAST") // K2 warning suppression, TODO: KT-62472
declaration as KtClassLikeDeclaration
@Suppress("USELESS_CAST") // K2 warning suppression, TODO: KT-62472
descriptor as ClassifierDescriptorWithTypeParameters
if (!descriptor.isActual) return null
@@ -27,7 +27,9 @@ object ExpectActualClassifiersAreInBetaChecker : DeclarationChecker {
// Common supertype of KtTypeAlias and KtClassOrObject is KtClassLikeDeclaration.
// Common supertype of TypeAliasDescriptor and ClassDescriptor is ClassifierDescriptorWithTypeParameters.
// The explicit casts won't be necessary when we start compiling kotlin with K2.
@Suppress("USELESS_IS_CHECK") // K2 warning suppression, TODO: KT-62472
check(declaration is KtClassLikeDeclaration)
@Suppress("USELESS_IS_CHECK") // K2 warning suppression, TODO: KT-62472
check(descriptor is ClassifierDescriptorWithTypeParameters)
if (descriptor.isExpect || descriptor.isActual) {