Run classifier usage checkers after all imports are resolved
Otherwise the diagnostic was not reported on an unused import of a deprecated class in diagnostic tests, see the test case
This commit is contained in:
@@ -209,10 +209,10 @@ class LazyTopDownAnalyzer(
|
|||||||
|
|
||||||
bodyResolver.resolveBodies(c)
|
bodyResolver.resolveBodies(c)
|
||||||
|
|
||||||
ClassifierUsageChecker.check(declarations, trace, classifierUsageCheckers)
|
|
||||||
|
|
||||||
resolveImportsInAllFiles(c)
|
resolveImportsInAllFiles(c)
|
||||||
|
|
||||||
|
ClassifierUsageChecker.check(declarations, trace, classifierUsageCheckers)
|
||||||
|
|
||||||
return c
|
return c
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
// FILE: A.kt
|
||||||
|
|
||||||
|
package test
|
||||||
|
|
||||||
|
@Deprecated("A")
|
||||||
|
interface A
|
||||||
|
|
||||||
|
// FILE: B.kt
|
||||||
|
|
||||||
|
import test.<!DEPRECATION!>A<!>
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package
|
||||||
|
|
||||||
|
package test {
|
||||||
|
|
||||||
|
@kotlin.Deprecated(message = "A") public interface A {
|
||||||
|
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||||
|
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||||
|
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -6005,6 +6005,12 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
|
|||||||
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/deprecated/typeUsage.kt");
|
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/deprecated/typeUsage.kt");
|
||||||
doTest(fileName);
|
doTest(fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("unusedImport.kt")
|
||||||
|
public void testUnusedImport() throws Exception {
|
||||||
|
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/deprecated/unusedImport.kt");
|
||||||
|
doTest(fileName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@TestMetadata("compiler/testData/diagnostics/tests/duplicateJvmSignature")
|
@TestMetadata("compiler/testData/diagnostics/tests/duplicateJvmSignature")
|
||||||
|
|||||||
Reference in New Issue
Block a user