From 44bb12480b3a9194bf8e56f385d189ae07a978cf Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Tue, 20 Oct 2020 11:08:32 +0300 Subject: [PATCH] [FIR2IR] Forbid private fake overrides in generator --- .../kotlin/fir/backend/generators/FakeOverrideGenerator.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/FakeOverrideGenerator.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/FakeOverrideGenerator.kt index 48a7faf6033..1187a7a5820 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/FakeOverrideGenerator.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/generators/FakeOverrideGenerator.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.fir.backend.generators +import org.jetbrains.kotlin.descriptors.Visibilities import org.jetbrains.kotlin.fir.FirSession import org.jetbrains.kotlin.fir.FirSymbolOwner import org.jetbrains.kotlin.fir.backend.* @@ -147,6 +148,7 @@ class FakeOverrideGenerator( val classId = klass.symbol.classId val originalDeclaration = originalSymbol.fir if (originalSymbol.callableId.classId == classId && !originalDeclaration.origin.fromSupertypes) return + if (originalDeclaration.visibility == Visibilities.Private) return val origin = IrDeclarationOrigin.FAKE_OVERRIDE val baseSymbol = originalSymbol.deepestOverriddenSymbol() as S