From 3f4fa7eb9808d070f5ed0ad7d2a3dbc88a6eae80 Mon Sep 17 00:00:00 2001 From: Tianyu Geng Date: Tue, 30 Mar 2021 13:31:36 -0700 Subject: [PATCH] FIR checker: make FirFunctionNameChecker a subclass of FirSimpleFunctionChecker --- .../checkers/declaration/FirFunctionNameChecker.kt | 7 +++---- .../kotlin/fir/checkers/CommonDeclarationCheckers.kt | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirFunctionNameChecker.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirFunctionNameChecker.kt index 87d756fbd99..e9618274098 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirFunctionNameChecker.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirFunctionNameChecker.kt @@ -12,17 +12,16 @@ import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors import org.jetbrains.kotlin.fir.analysis.diagnostics.reportOn import org.jetbrains.kotlin.fir.declarations.FirClass import org.jetbrains.kotlin.fir.declarations.FirFile -import org.jetbrains.kotlin.fir.declarations.FirFunction import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction import org.jetbrains.kotlin.name.SpecialNames -object FirFunctionNameChecker : FirFunctionChecker() { - override fun check(declaration: FirFunction<*>, context: CheckerContext, reporter: DiagnosticReporter) { +object FirFunctionNameChecker : FirSimpleFunctionChecker() { + override fun check(declaration: FirSimpleFunction, context: CheckerContext, reporter: DiagnosticReporter) { val source = declaration.source if (source == null || source.kind is FirFakeSourceElementKind) return val containingDeclaration = context.containingDeclarations.lastOrNull() val isNonLocal = containingDeclaration is FirFile || containingDeclaration is FirClass<*> - if (declaration is FirSimpleFunction && declaration.name == SpecialNames.NO_NAME_PROVIDED && isNonLocal) { + if (declaration.name == SpecialNames.NO_NAME_PROVIDED && isNonLocal) { reporter.reportOn(source, FirErrors.FUNCTION_DECLARATION_WITH_NO_NAME, context) } } diff --git a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CommonDeclarationCheckers.kt b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CommonDeclarationCheckers.kt index b29a773450c..301d71e72cb 100644 --- a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CommonDeclarationCheckers.kt +++ b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CommonDeclarationCheckers.kt @@ -29,10 +29,13 @@ object CommonDeclarationCheckers : DeclarationCheckers() { override val functionCheckers: Set = setOf( FirContractChecker, - FirFunctionNameChecker, FirFunctionParameterChecker, ) + override val simpleFunctionCheckers: Set = setOf( + FirFunctionNameChecker + ) + override val propertyCheckers: Set = setOf( FirInapplicableLateinitChecker, FirDestructuringDeclarationChecker,