FIR: forbid top-level destructuring declarations #KT-50468 Fixed

This commit is contained in:
Mikhail Glukhikh
2022-03-10 16:11:49 +03:00
committed by Space
parent 6ecc97575d
commit 6b53ac8367
10 changed files with 59 additions and 19 deletions
@@ -64,7 +64,7 @@ internal class LLFirDesignatedAnnotationsResolveTransformed(
when (declaration) {
is FirClass, is FirTypeAlias ->
declaration.ensurePhase(FirResolvePhase.COMPILER_REQUIRED_ANNOTATIONS)
is FirFunction, is FirProperty, is FirEnumEntry, is FirField, is FirAnonymousInitializer ->
is FirFunction, is FirProperty, is FirEnumEntry, is FirField, is FirAnonymousInitializer, is FirErrorProperty ->
Unit
else ->
error("Unexpected type: ${declaration::class.simpleName}")
@@ -512,6 +512,12 @@ public class DiagnosisCompilerFirTestdataTestGenerated extends AbstractDiagnosis
runTest("compiler/fir/analysis-tests/testData/resolve/throwableSubclass.kt");
}
@Test
@TestMetadata("topLevelDestruction.kt")
public void testTopLevelDestruction() throws Exception {
runTest("compiler/fir/analysis-tests/testData/resolve/topLevelDestruction.kt");
}
@Test
@TestMetadata("treeSet.kt")
public void testTreeSet() throws Exception {